From e423d56d730db1baed24f3f7dbbc4141038776b6 Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Fri, 18 Jun 2021 22:12:03 +0800
Subject: [PATCH] 修复每日业绩bug和优化赠送业绩计算方式
---
zq-erp/src/main/java/com/matrix/system/activity/service/ActivitySignWriteoffService.java | 36 ++++++++++++++++++++++++++++++++++--
1 files changed, 34 insertions(+), 2 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/activity/service/ActivitySignWriteoffService.java b/zq-erp/src/main/java/com/matrix/system/activity/service/ActivitySignWriteoffService.java
index 835ed41..b6d7560 100644
--- a/zq-erp/src/main/java/com/matrix/system/activity/service/ActivitySignWriteoffService.java
+++ b/zq-erp/src/main/java/com/matrix/system/activity/service/ActivitySignWriteoffService.java
@@ -1,6 +1,7 @@
package com.matrix.system.activity.service;
import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -24,6 +25,7 @@
import com.matrix.system.activity.vo.ZjrVo;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.bean.SystemDictionary;
+import com.matrix.system.common.constance.AppConstance;
import com.matrix.system.common.dao.SystemDictionaryDao;
import com.matrix.system.hive.action.util.QueryUtil;
import com.matrix.system.hive.dao.SysVipInfoDao;
@@ -113,6 +115,8 @@
Integer logisticsId = activitySignWriteoffLogistics.getLogisticsId();
ShopDeliveryInfo shopDeliveryInfo = shopDeliveryInfoDao.selectById(logisticsId);
if(ObjectUtil.isNotEmpty(shopDeliveryInfo)){
+ signWriteoffVo.setLogisticsNum(shopDeliveryInfo.getWaybillNo());
+ signWriteoffVo.setLogisticsCompany(shopDeliveryInfo.getLogisticsCompany());
//查看物流信息
wxShopLogisticsQueryService.selectLogisticsInfo(shopDeliveryInfo);
List<ShopLogisticsInfo> shopLogisticsInfos = shopLogisticsInfoDao.selectByDelieryId(shopDeliveryInfo.getId());
@@ -142,18 +146,45 @@
String writeOffCode = writeoffCodeSubmitDto.getWriteOffCode();
/**
* 验证核销码是不是匹配
+ * 只能核销一次
* 更新核销记录
* 更新领取记录
*/
//验证核销码是不是匹配
ActivitySignWriteoff activitySignWriteoff = activitySignWriteoffDao.selectById(writeoffId);
+ if(ActivitySignWriteoff.STATE_ONE != activitySignWriteoff.getState()){
+ return new AjaxResult(AjaxResult.STATUS_FAIL, "兑奖码已失效");
+ }
if(ObjectUtil.isNotEmpty(activitySignWriteoff)) {
String writeoffCodeReal = activitySignWriteoff.getWriteoffCode();
if(!writeoffCodeReal.equals(writeOffCode)) {
return new AjaxResult(AjaxResult.STATUS_FAIL, "兑奖码无效");
}
}
- //更新核销记录
+ //线下兑换失效
+ Long awardId = activitySignWriteoff.getAwardId();
+ ActivitySignAwardSet activitySignAwardSet = activitySignAwardSetDao.selectById(awardId);
+ if(ActivitySignAwardSet.AWARDWAY_ONE == activitySignAwardSet.getAwardWay()
+ || ActivitySignAwardSet.AWARDWAY_THREE == activitySignAwardSet.getAwardWay()){
+ Date prizeStartTime = activitySignAwardSet.getPrizeStartTime();
+ if(DateUtil.date().getTime() < prizeStartTime.getTime()){
+ return new AjaxResult(AjaxResult.STATUS_FAIL, "兑奖还没开始呢!");
+ }
+ Date prizeEndTime = activitySignAwardSet.getPrizeEndTime();
+ if(DateUtil.date().getTime() > prizeEndTime.getTime()){
+ Long receiveId = activitySignWriteoff.getReceiveId();
+ ActivitySignReceiveRecord activitySignReceiveRecord = activitySignReceiveRecordDao.selectById(receiveId);
+ if(ObjectUtil.isNotEmpty(activitySignReceiveRecord)){
+ activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_FIVE);
+ }
+ activitySignReceiveRecordDao.updateById(activitySignReceiveRecord);
+
+ activitySignWriteoff.setState(ActivitySignWriteoff.STATE_FOUR);
+ activitySignWriteoffDao.updateById(activitySignWriteoff);
+ return new AjaxResult(AjaxResult.STATUS_FAIL, "已超出兑奖结束时间!");
+ }
+ }
+ //更新核销记录
activitySignWriteoff.setState(ActivitySignWriteoff.STATE_THREE);
activitySignWriteoff.setWriteoffTime(new Date());
activitySignWriteoff.setWriteoffUser(sysUsers.getSuName());
@@ -192,6 +223,7 @@
shopDeliveryInfo.setLogisticsCompany(systemDictionary.getName());
shopDeliveryInfo.setLogisticsCompanyCode(systemDictionary.getCode());
shopDeliveryInfo.setDeliveryWay("物流配送");
+ shopDeliveryInfo.setLogisticsStatus(AppConstance.LOGISTICS_STATUS_OF_RECEIVE);
shopDeliveryInfo.setWaybillNo(logisticsSubmitDto.getKddh());
shopDeliveryInfo.setUpdateBy(sysUsers.getSuName());
@@ -208,7 +240,7 @@
activitySignWriteoffDao.updateById(activitySignWriteoff);
//更新领取记录
ActivitySignReceiveRecord activitySignReceiveRecord = activitySignReceiveRecordDao.selectById(receiveId);
- activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_THREE);
+ activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_FOUR);
activitySignReceiveRecord.setConsignee(logisticsSubmitDto.getShr());
activitySignReceiveRecord.setConsigneeAddress(logisticsSubmitDto.getShdz());
activitySignReceiveRecord.setConsigneePhone(logisticsSubmitDto.getLxdh());
--
Gitblit v1.9.1