## 提货记录定时任务
This commit is contained in:
		
							parent
							
								
									43e7bf4bf0
								
							
						
					
					
						commit
						d87967d30c
					
				|  | @ -16,4 +16,11 @@ public interface IAcTourismServiceApi { | ||||||
|      */ |      */ | ||||||
|     R<?> handleTourismData(); |     R<?> handleTourismData(); | ||||||
| 
 | 
 | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * 报单赠送更新提货列表 | ||||||
|  |      * @return | ||||||
|  |      */ | ||||||
|  |     R<?> handleDeclarationData(); | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -2,6 +2,10 @@ package com.hzs.activity.declaration.mapper; | ||||||
| 
 | 
 | ||||||
| import com.baomidou.mybatisplus.core.mapper.BaseMapper; | import com.baomidou.mybatisplus.core.mapper.BaseMapper; | ||||||
| import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; | import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; | ||||||
|  | import com.hzs.common.domain.activity.pick.AcPick; | ||||||
|  | import org.apache.ibatis.annotations.Param; | ||||||
|  | 
 | ||||||
|  | import java.util.List; | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * <p> |  * <p> | ||||||
|  | @ -13,4 +17,7 @@ import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; | ||||||
|  */ |  */ | ||||||
| public interface AcDeclarationGiftConfigMapper extends BaseMapper<AcDeclarationGiftConfig> { | public interface AcDeclarationGiftConfigMapper extends BaseMapper<AcDeclarationGiftConfig> { | ||||||
| 
 | 
 | ||||||
|  |     List<AcPick> selectAcPickSevenDay(); | ||||||
|  | 
 | ||||||
|  |     void updateOrInsertPick(@Param("pkCountry") Integer pkCountry); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -24,4 +24,7 @@ public interface IAcDeclarationGiftConfigService extends IService<AcDeclarationG | ||||||
|     String updateConfig(AcDeclarationParam acDeclarationParam); |     String updateConfig(AcDeclarationParam acDeclarationParam); | ||||||
| 
 | 
 | ||||||
|     String deleteConfig(Long pkId); |     String deleteConfig(Long pkId); | ||||||
|  | 
 | ||||||
|  |     void handleDeclarationData(); | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -18,12 +18,14 @@ import com.hzs.activity.declaration.param.AcDeclarationParam; | ||||||
| import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; | import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; | ||||||
| import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | ||||||
| import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; | import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; | ||||||
|  | import com.hzs.common.core.constant.CountryConstants; | ||||||
| import com.hzs.common.core.enums.EActType; | import com.hzs.common.core.enums.EActType; | ||||||
| import com.hzs.common.core.enums.EApprovalBusiness; | import com.hzs.common.core.enums.EApprovalBusiness; | ||||||
| import com.hzs.common.core.enums.EControlType; | import com.hzs.common.core.enums.EControlType; | ||||||
| import com.hzs.common.core.web.domain.AjaxResult; | import com.hzs.common.core.web.domain.AjaxResult; | ||||||
| import com.hzs.common.domain.activity.base.AcBaseConfig; | import com.hzs.common.domain.activity.base.AcBaseConfig; | ||||||
| import com.hzs.common.domain.activity.base.AcGoalMemberConfig; | import com.hzs.common.domain.activity.base.AcGoalMemberConfig; | ||||||
|  | import com.hzs.common.domain.activity.pick.AcPick; | ||||||
| import com.hzs.common.security.utils.SecurityUtils; | import com.hzs.common.security.utils.SecurityUtils; | ||||||
| import com.hzs.system.sys.dto.LoginUser; | import com.hzs.system.sys.dto.LoginUser; | ||||||
| import lombok.extern.slf4j.Slf4j; | import lombok.extern.slf4j.Slf4j; | ||||||
|  | @ -128,6 +130,8 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl<AcDeclaratio | ||||||
|         return null; |         return null; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|     private void removeDeclarationConfig(Long pkId) { |     private void removeDeclarationConfig(Long pkId) { | ||||||
|         // 删除活动基本配置 |         // 删除活动基本配置 | ||||||
|         baseConfigService.removeById(pkId); |         baseConfigService.removeById(pkId); | ||||||
|  | @ -172,4 +176,13 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl<AcDeclaratio | ||||||
|             } |             } | ||||||
|         }); |         }); | ||||||
|     } |     } | ||||||
|  |     @Override | ||||||
|  |     public void handleDeclarationData() { | ||||||
|  |         // 所属国家 | ||||||
|  |         Integer pkCountry = CountryConstants.CHINA_COUNTRY; | ||||||
|  |         // 更新提货列表 | ||||||
|  |         baseMapper.updateOrInsertPick(pkCountry); | ||||||
|  | 
 | ||||||
|  |     } | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,5 +1,6 @@ | ||||||
| package com.hzs.activity.tourism.provider; | package com.hzs.activity.tourism.provider; | ||||||
| 
 | 
 | ||||||
|  | import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; | ||||||
| import com.hzs.activity.tourism.IAcTourismServiceApi; | import com.hzs.activity.tourism.IAcTourismServiceApi; | ||||||
| import com.hzs.activity.tourism.service.IAcTourismDataService; | import com.hzs.activity.tourism.service.IAcTourismDataService; | ||||||
| import com.hzs.common.core.domain.R; | import com.hzs.common.core.domain.R; | ||||||
|  | @ -21,6 +22,9 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { | ||||||
|     @Autowired |     @Autowired | ||||||
|     private IAcTourismDataService iAcTourismDataService; |     private IAcTourismDataService iAcTourismDataService; | ||||||
| 
 | 
 | ||||||
|  |     @Autowired | ||||||
|  |     private IAcDeclarationGiftConfigService  iAcDeclarationGiftConfigService; | ||||||
|  | 
 | ||||||
|     @Override |     @Override | ||||||
|     public R<?> handleTourismData() { |     public R<?> handleTourismData() { | ||||||
|         try { |         try { | ||||||
|  | @ -32,4 +36,15 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { | ||||||
|         return R.fail(); |         return R.fail(); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     @Override | ||||||
|  |     public R<?> handleDeclarationData() { | ||||||
|  |         try { | ||||||
|  |             iAcDeclarationGiftConfigService.handleDeclarationData(); | ||||||
|  |             return R.ok(); | ||||||
|  |         } catch (Exception e) { | ||||||
|  |             log.error("旅游活动更新积分异常", e); | ||||||
|  |         } | ||||||
|  |         return R.fail(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -4,25 +4,26 @@ | ||||||
| 
 | 
 | ||||||
|     <!-- 通用查询映射结果 --> |     <!-- 通用查询映射结果 --> | ||||||
|     <resultMap id="BaseResultMap" type="com.hzs.activity.declaration.vo.AcDeclarationGiftConfig"> |     <resultMap id="BaseResultMap" type="com.hzs.activity.declaration.vo.AcDeclarationGiftConfig"> | ||||||
|         <id column="PK_ID" property="pkId" /> |         <id column="PK_ID" property="pkId"/> | ||||||
|     <result column="DEL_FLAG" property="delFlag" /> |         <result column="DEL_FLAG" property="delFlag"/> | ||||||
|     <result column="CREATION_TIME" property="creationTime" /> |         <result column="CREATION_TIME" property="creationTime"/> | ||||||
|     <result column="PK_CREATOR" property="pkCreator" /> |         <result column="PK_CREATOR" property="pkCreator"/> | ||||||
|     <result column="MODIFIED_TIME" property="modifiedTime" /> |         <result column="MODIFIED_TIME" property="modifiedTime"/> | ||||||
|     <result column="PK_MODIFIED" property="pkModified" /> |         <result column="PK_MODIFIED" property="pkModified"/> | ||||||
|     <result column="PK_COUNTRY" property="pkCountry" /> |         <result column="PK_COUNTRY" property="pkCountry"/> | ||||||
|         <result column="PK_BASE_ID" property="pkBaseId" /> |         <result column="PK_BASE_ID" property="pkBaseId"/> | ||||||
|         <result column="REGISTER_AUTHORITY" property="registerAuthority" /> |         <result column="REGISTER_AUTHORITY" property="registerAuthority"/> | ||||||
|         <result column="PK_PRODUCT" property="pkProduct" /> |         <result column="PK_PRODUCT" property="pkProduct"/> | ||||||
|         <result column="SPECS_NAME" property="specsName" /> |         <result column="SPECS_NAME" property="specsName"/> | ||||||
|         <result column="SPECS_NAME_ID" property="specsNameId" /> |         <result column="SPECS_NAME_ID" property="specsNameId"/> | ||||||
|         <result column="QUANTITY" property="quantity" /> |         <result column="QUANTITY" property="quantity"/> | ||||||
|         <result column="LEVEL" property="level" /> |         <result column="LEVEL" property="level"/> | ||||||
|     </resultMap> |     </resultMap> | ||||||
| 
 | 
 | ||||||
|     <!-- 通用查询结果列 --> |     <!-- 通用查询结果列 --> | ||||||
|     <sql id="Base_Column_List"> |     <sql id="Base_Column_List"> | ||||||
|         DEL_FLAG, |         DEL_FLAG | ||||||
|  |         , | ||||||
|         CREATION_TIME, |         CREATION_TIME, | ||||||
|         PK_CREATOR, |         PK_CREATOR, | ||||||
|         MODIFIED_TIME, |         MODIFIED_TIME, | ||||||
|  | @ -30,5 +31,120 @@ | ||||||
|         PK_COUNTRY, |         PK_COUNTRY, | ||||||
|         PK_ID, PK_BASE_ID, REGISTER_AUTHORITY, PK_PRODUCT, SPECS_NAME, SPECS_NAME_ID, QUANTITY, LEVEL |         PK_ID, PK_BASE_ID, REGISTER_AUTHORITY, PK_PRODUCT, SPECS_NAME, SPECS_NAME_ID, QUANTITY, LEVEL | ||||||
|     </sql> |     </sql> | ||||||
|  |     <update id="updateOrInsertPick"> | ||||||
|  |         DECLARE | ||||||
|  |         v_error_count NUMBER := 0; | ||||||
|  |         BEGIN | ||||||
|  |         BEGIN | ||||||
|  |         MERGE INTO AC_PICK tgt USING (SELECT adgr.PK_ID         AS SRC_ID, | ||||||
|  |                                              adgr.PK_MEMBER, | ||||||
|  |                                              32                 AS PICK_TYPE, | ||||||
|  |                                              adgc.PK_ID         AS PK_BASE_CONFIG, | ||||||
|  |                                              adgr.PK_PRODUCT    AS PK_DATA_ID, | ||||||
|  |                                              adgc.SPECS_NAME    AS SPECS_NAME, | ||||||
|  |                                              adgc.SPECS_NAME_ID AS SPECS_NAME_ID, | ||||||
|  |                                              adgr.QUANTITY      AS USABLE_QUANTITY, | ||||||
|  |                                              bp.COVER           AS PICK_COVER, | ||||||
|  |                                              0                  AS IS_FREE_MAIL, | ||||||
|  |                                              0                  AS DEL_FLAG, | ||||||
|  |                                              adgr.QUANTITY      AS BASE_QUANTITY, | ||||||
|  |                                              adgr.PK_BASE_ID    AS PK_BASE_ID, | ||||||
|  |                                              SYSDATE            AS CREATION_TIME, | ||||||
|  |                                              adgr.PK_MEMBER     AS PK_CREATOR, | ||||||
|  |                                              #{pkCountry}       AS PK_COUNTRY | ||||||
|  |                                       FROM AC_DECLARATION_GIFT_RECORD adgr | ||||||
|  |                                                LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID | ||||||
|  |                                                LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID | ||||||
|  |                                                LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT | ||||||
|  |                                       WHERE TRUNC(adgr.CREATION_TIME) = TRUNC(SYSDATE) - 7 | ||||||
|  |                                          OR adgr.SYNC_STATUS = 2) src ON ( | ||||||
|  |             tgt.PICK_TYPE = src.PICK_TYPE | ||||||
|  |                 AND tgt.PK_BASE_CONFIG = src.PK_BASE_CONFIG | ||||||
|  |                 AND tgt.PK_DATA_ID = src.PK_DATA_ID | ||||||
|  |                 AND tgt.SPECS_NAME = src.SPECS_NAME | ||||||
|  |                 AND tgt.SPECS_NAME_ID = src.SPECS_NAME_ID | ||||||
|  |                 AND tgt.PK_BASE_ID = src.PK_BASE_ID | ||||||
|  |             ) | ||||||
|  |             WHEN MATCHED THEN | ||||||
|  |                 UPDATE | ||||||
|  |                     SET tgt.USABLE_QUANTITY = tgt.USABLE_QUANTITY + src.USABLE_QUANTITY, | ||||||
|  |                         tgt.MODIFIED_TIME = SYSDATE, | ||||||
|  |                         tgt.PK_MODIFIED = src.PK_CREATOR | ||||||
|  |             WHEN NOT MATCHED THEN | ||||||
|  |                 INSERT ( | ||||||
|  |                         PK_ID, | ||||||
|  |                         PK_MEMBER, | ||||||
|  |                         PICK_TYPE, | ||||||
|  |                         PK_BASE_CONFIG, | ||||||
|  |                         PK_DATA_ID, | ||||||
|  |                         SPECS_NAME, | ||||||
|  |                         SPECS_NAME_ID, | ||||||
|  |                         USABLE_QUANTITY, | ||||||
|  |                         PICK_COVER, | ||||||
|  |                         IS_FREE_MAIL, | ||||||
|  |                         DEL_FLAG, | ||||||
|  |                         BASE_QUANTITY, | ||||||
|  |                         PK_BASE_ID, | ||||||
|  |                         CREATION_TIME, | ||||||
|  |                         PK_CREATOR, | ||||||
|  |                         PK_COUNTRY | ||||||
|  |                     ) | ||||||
|  |                     VALUES (AC_PICK_SEQ.NEXTVAL, | ||||||
|  |                             src.PK_MEMBER, | ||||||
|  |                             src.PICK_TYPE, | ||||||
|  |                             src.PK_BASE_CONFIG, | ||||||
|  |                             src.PK_DATA_ID, | ||||||
|  |                             src.SPECS_NAME, | ||||||
|  |                             src.SPECS_NAME_ID, | ||||||
|  |                             src.USABLE_QUANTITY, | ||||||
|  |                             src.PICK_COVER, | ||||||
|  |                             src.IS_FREE_MAIL, | ||||||
|  |                             src.DEL_FLAG, | ||||||
|  |                             src.BASE_QUANTITY, | ||||||
|  |                             src.PK_BASE_ID, | ||||||
|  |                             src.CREATION_TIME, | ||||||
|  |                             src.PK_CREATOR, | ||||||
|  |                             src.PK_COUNTRY); | ||||||
|  |         UPDATE AC_DECLARATION_GIFT_RECORD | ||||||
|  |         SET SYNC_STATUS = 1 | ||||||
|  |         WHERE (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); | ||||||
|  |         EXCEPTION | ||||||
|  |     WHEN OTHERS THEN | ||||||
|  |       v_error_count := SQL % ROWCOUNT; | ||||||
|  |         UPDATE AC_DECLARATION_GIFT_RECORD | ||||||
|  |         SET SYNC_STATUS = 2 | ||||||
|  |         WHERE (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); | ||||||
|  |         END; | ||||||
|  |         INSERT INTO AC_PICK_LOG (PK_ID, PK_PICK, PK_USER, QUANTITY, PK_COUNTRY) | ||||||
|  |         SELECT AC_PICK_LOG_SEQ.NEXTVAL, | ||||||
|  |                p.PK_ID, | ||||||
|  |                p.PK_CREATOR, | ||||||
|  |                p.USABLE_QUANTITY, | ||||||
|  |                p.PK_COUNTRY | ||||||
|  |         FROM AC_PICK p | ||||||
|  |         WHERE TRUNC(p.CREATION_TIME) = TRUNC(SYSDATE) | ||||||
|  |            OR TRUNC(p.MODIFIED_TIME) = TRUNC(SYSDATE); | ||||||
|  |         COMMIT; | ||||||
|  |         END; | ||||||
|  |     </update> | ||||||
|  |     <select id="selectAcPickSevenDay" resultType="com.hzs.common.domain.activity.pick.AcPick"> | ||||||
|  |         SELECT adgr.PK_MEMBER, | ||||||
|  |                32                    AS PICK_TYPE, | ||||||
|  |                adgc.PK_ID            as PK_BASE_CONFIG, | ||||||
|  |                adgr.PK_PRODUCT       AS PK_DATA_ID, | ||||||
|  |                adgc.SPECS_NAME       AS SPECS_NAME, | ||||||
|  |                adgc.SPECS_NAME_ID    AS SPECS_NAME_ID, | ||||||
|  |                adgr.QUANTITY         AS USABLE_QUANTITY, | ||||||
|  |                bp.COVER              AS PICK_COVER, | ||||||
|  |                0                     AS IS_FREE_MAIL, | ||||||
|  |                0                     AS DEL_FLAG, | ||||||
|  |                bpe.DELIVERY_QUANTITY AS BASE_QUANTITY, | ||||||
|  |                adgr.PK_BASE_ID       AS PK_BASE_ID | ||||||
|  |         FROM AC_DECLARATION_GIFT_RECORD adgr | ||||||
|  |                  LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID | ||||||
|  |                  LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID | ||||||
|  |                  LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT | ||||||
|  |         WHERE TRUNC(adgr.CREATION_TIME) = TRUNC(SYSDATE) - 7; | ||||||
|  |     </select> | ||||||
| 
 | 
 | ||||||
| </mapper> | </mapper> | ||||||
|  |  | ||||||
|  | @ -35,6 +35,11 @@ public enum EPickType { | ||||||
|      */ |      */ | ||||||
|     LOTTERY_DRAW(17, "抽奖"), |     LOTTERY_DRAW(17, "抽奖"), | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * 关联 AC_DECLARATION_GIFT_CONFIG 表 | ||||||
|  |      */ | ||||||
|  |     DELCARATION_GIFT(32,"报单赠送") | ||||||
|  | 
 | ||||||
|     ; |     ; | ||||||
| 
 | 
 | ||||||
|     /** |     /** | ||||||
|  |  | ||||||
|  | @ -34,4 +34,19 @@ public class ActivityJob { | ||||||
|         log.info("旅游活动更新积分 结束执行"); |         log.info("旅游活动更新积分 结束执行"); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * 报单赠送更新提货列表 | ||||||
|  |      */ | ||||||
|  |     @XxlJob("handleDeclarationData") | ||||||
|  |     public void handleDeclarationData() { | ||||||
|  |         log.info("报单赠送更新提货列表 开始执行"); | ||||||
|  |         R<?> resultR = iAcTourismServiceApi.handleDeclarationData(); | ||||||
|  |         if (resultR.isSuccess()) { | ||||||
|  |             log.info("报单赠送更新提货列表 执行成功"); | ||||||
|  |         } else { | ||||||
|  |             log.error("报单赠送更新提货列表 执行失败"); | ||||||
|  |         } | ||||||
|  |         log.info("报单赠送更新提货列表 结束执行"); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue