## 加购升级处理;
This commit is contained in:
		
							parent
							
								
									3c78541b6d
								
							
						
					
					
						commit
						83cca07ed1
					
				|  | @ -33,15 +33,7 @@ public interface AcAddUpgradeConfigMapper extends BaseMapper<AcAddUpgradeConfig> | |||
|     /** | ||||
|      * 查询符合条件的规则 | ||||
|      */ | ||||
|     AcAddUpgradeConfigExt getUpgradeConfig(@Param("orderType") Integer orderType, | ||||
|                                            @Param("waresCodeList") List<String> waresCodeList, | ||||
|                                            @Param("pkGrade") Integer pkGrade); | ||||
| 
 | ||||
|     /** | ||||
|      * 查询符合条件的规则 | ||||
|      */ | ||||
|     AcAddUpgradeConfigExt getUpgradeConfigByPkWares(@Param("orderType") Integer orderType, | ||||
|                                                     @Param("pkWaresList") List<Integer> pkWaresList, | ||||
|                                                     @Param("pkGrade") Integer pkGrade); | ||||
|     List<AcAddUpgradeConfigExt> getUpgradeConfig(@Param("orderType") Integer orderType, | ||||
|                                                  @Param("pkGrade") Integer pkGrade); | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -193,11 +193,18 @@ public class AcAddUpgradeConfigServiceImpl extends ServiceImpl<AcAddUpgradeConfi | |||
|         if (CollectionUtil.isEmpty(orderItemsParams)) { | ||||
|             return; | ||||
|         } | ||||
|         List<String> waresCodeList = orderItemsParams.stream().map(OrderItemsParam::getWaresCode).collect(Collectors.toList()); | ||||
| 
 | ||||
|         AcAddUpgradeConfigExt configExt = baseMapper.getUpgradeConfig(orderParam.getSpecialArea(), waresCodeList, orderReturn.getPkGradeTmp()); | ||||
|         if (null != configExt) { | ||||
|             orderReturn.setPkGradeVal(configExt.getGradeName()); | ||||
|         List<AcAddUpgradeConfigExt> configExtList = baseMapper.getUpgradeConfig(orderParam.getSpecialArea(), orderReturn.getPkGradeTmp()); | ||||
|         if (CollectionUtil.isNotEmpty(configExtList)) { | ||||
|             for (AcAddUpgradeConfigExt configExt : configExtList) { | ||||
|                 for (OrderItemsParam orderItemsParam : orderItemsParams) { | ||||
|                     if (orderItemsParam.getWaresCode().equals(configExt.getWaresCode()) | ||||
|                             && orderItemsParam.getQuantity() >= configExt.getQuantity()) { | ||||
|                         orderReturn.setPkGradeVal(configExt.getGradeName()); | ||||
|                         return; | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|  | @ -206,15 +213,22 @@ public class AcAddUpgradeConfigServiceImpl extends ServiceImpl<AcAddUpgradeConfi | |||
|         if (CollectionUtil.isEmpty(orderItemsList)) { | ||||
|             return null; | ||||
|         } | ||||
|         List<Integer> pkWaresList = orderItemsList.stream().map(SaOrderItems::getPkWares).collect(Collectors.toList()); | ||||
|         AcAddUpgradeConfigExt configExt = baseMapper.getUpgradeConfigByPkWares(specialArea, pkWaresList, pkGrade); | ||||
|         if (null != configExt) { | ||||
|             return GradeDTO.builder() | ||||
|                     .pkId(configExt.getUpgradeLevel()) | ||||
|                     .gradeName(configExt.getGradeName()) | ||||
|                     .pkAwards(configExt.getPkAwards()) | ||||
|                     .registerAuthority(configExt.getRegisterAuthority()) | ||||
|                     .build(); | ||||
| 
 | ||||
|         List<AcAddUpgradeConfigExt> configExtList = baseMapper.getUpgradeConfig(specialArea, pkGrade); | ||||
|         if (CollectionUtil.isNotEmpty(configExtList)) { | ||||
|             for (AcAddUpgradeConfigExt configExt : configExtList) { | ||||
|                 for (SaOrderItems orderItemsParam : orderItemsList) { | ||||
|                     if (orderItemsParam.getPkWares().equals(configExt.getPkWares()) | ||||
|                             && orderItemsParam.getWaresQuantity() >= configExt.getQuantity()) { | ||||
|                         return GradeDTO.builder() | ||||
|                                 .pkId(configExt.getUpgradeLevel()) | ||||
|                                 .gradeName(configExt.getGradeName()) | ||||
|                                 .pkAwards(configExt.getPkAwards()) | ||||
|                                 .registerAuthority(configExt.getRegisterAuthority()) | ||||
|                                 .build(); | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|         return null; | ||||
|     } | ||||
|  |  | |||
|  | @ -97,12 +97,19 @@ | |||
| 
 | ||||
|     <!-- 查询符合条件的规则 --> | ||||
|     <select id="getUpgradeConfig" resultType="com.hzs.common.domain.activity.add.ext.AcAddUpgradeConfigExt"> | ||||
|         select t.*, | ||||
|         bg.grade_name, bg.grade_value, bg.pk_awards, bg.register_authority | ||||
|         from (select aauc.* | ||||
|         select aauc.*, | ||||
|         bg.grade_name, | ||||
|         bg.grade_value, | ||||
|         bg.pk_awards, | ||||
|         bg.register_authority, | ||||
|         bw.wares_code | ||||
|         from ac_base_config abc | ||||
|         left join AC_ADD_UPGRADE_CONFIG aauc | ||||
|         on aauc.pk_base_id = abc.pk_id | ||||
|         left join bd_wares bw | ||||
|         on bw.pk_id = aauc.pk_wares | ||||
|         left join bd_grade bg | ||||
|         on bg.pk_id = aauc.upgrade_level | ||||
|         where abc.del_flag = 0 | ||||
|         and abc.act_type = 31 | ||||
|         and sysdate >= abc.act_start_date | ||||
|  | @ -110,41 +117,8 @@ | |||
|         and aauc.del_flag = 0 | ||||
|         and aauc.order_type = #{orderType} | ||||
|         and aauc.original_level = #{pkGrade} | ||||
|         and aauc.pk_wares in (select pk_id | ||||
|         from bd_wares bw | ||||
|         where bw.wares_code in | ||||
|         <foreach collection="waresCodeList" item="items" open="(" separator="," close=")"> | ||||
|             #{items} | ||||
|         </foreach> | ||||
|         and bw.del_flag = 0) | ||||
|         order by abc.act_start_date desc) t | ||||
|         left join bd_grade bg | ||||
|         on bg.pk_id = t.upgrade_level | ||||
|         where rownum = 1 | ||||
|     </select> | ||||
| 
 | ||||
|     <select id="getUpgradeConfigByPkWares" resultType="com.hzs.common.domain.activity.add.ext.AcAddUpgradeConfigExt"> | ||||
|         select t.*, | ||||
|         bg.grade_name, bg.grade_value, bg.pk_awards, bg.register_authority | ||||
|         from (select aauc.* | ||||
|         from ac_base_config abc | ||||
|         left join AC_ADD_UPGRADE_CONFIG aauc | ||||
|         on aauc.pk_base_id = abc.pk_id | ||||
|         where abc.del_flag = 0 | ||||
|         and abc.act_type = 31 | ||||
|         and sysdate >= abc.act_start_date | ||||
|         and abc.act_end_date >= sysdate | ||||
|         and aauc.del_flag = 0 | ||||
|         and aauc.order_type = #{orderType} | ||||
|         and aauc.original_level = #{pkGrade} | ||||
|         and aauc.pk_wares in | ||||
|         <foreach collection="pkWaresList" item="items" open="(" separator="," close=")"> | ||||
|             #{items} | ||||
|         </foreach> | ||||
|         order by abc.act_start_date desc) t | ||||
|         left join bd_grade bg | ||||
|         on bg.pk_id = t.upgrade_level | ||||
|         where rownum = 1 | ||||
|         and bw.del_flag = 0 | ||||
|         order by abc.act_start_date desc, aauc.creation_time desc | ||||
|     </select> | ||||
| 
 | ||||
| </mapper> | ||||
|  |  | |||
|  | @ -25,4 +25,9 @@ public class AcAddUpgradeConfigExt extends AcAddUpgradeConfig { | |||
|      */ | ||||
|     private Integer registerAuthority; | ||||
| 
 | ||||
|     /** | ||||
|      * 商品编号 | ||||
|      */ | ||||
|     private String waresCode; | ||||
| 
 | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue