diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOfflineActivityGrantController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOfflineActivityGrantController.java index adf27a1c5..a42ff8b06 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOfflineActivityGrantController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxOfflineActivityGrantController.java @@ -121,9 +121,9 @@ public class WxOfflineActivityGrantController extends BaseController { if(wxOfflineActivityGrantAward.getActivityId() == null){ return new ResultData(Result.ERROR,"活动ID为空"); } -// if(wxOfflineActivityGrantAward.getRecordIds() == null || wxOfflineActivityGrantAward.getRecordIds().isEmpty()){ -// return new ResultData(Result.ERROR,"请选择订单"); -// } + if(wxOfflineActivityGrantAward.getRecordIds() == null || wxOfflineActivityGrantAward.getRecordIds().isEmpty()){ + return new ResultData(Result.ERROR,"请选择订单"); + } if(StringUtil.isBlank(wxOfflineActivityGrantAward.getCusPhone())){ throw new MallinkException(Result.ERROR,"用户手机号为空"); } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxOfflineActivityGrantAwardMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxOfflineActivityGrantAwardMapper.java index 3d0827604..f35cfbddd 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxOfflineActivityGrantAwardMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxOfflineActivityGrantAwardMapper.java @@ -31,6 +31,8 @@ public interface WxOfflineActivityGrantAwardMapper extends CommonMapper activityItemStatisticsChart(OfflineActivityItemStatisticsBVo activityItemStatisticsBo); + + List findGrantHistoryList(WxOfflineActivityGrantAward grantAwardQ); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java index dfb3c4904..28369d111 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java @@ -619,17 +619,23 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity private void handlerGrantData(WxOfflineActivity activity,WxOfflineActivityGrantAward wxOfflineActivityGrantAward,boolean isForPage){ -// List wxOfflineActivityRecords = wxOfflineActivityRecordMapper.selectBatchIds(wxOfflineActivityGrantAward.getRecordIds()); - WxOfflineActivityRecord recordQ = new WxOfflineActivityRecord(); - recordQ.updateTenantInfo(wxOfflineActivityGrantAward); - recordQ.setActivityId(activity.getId()); - recordQ.setCusPhone(wxOfflineActivityGrantAward.getCusPhone()); - recordQ.setAuditStatus(EnumOfflineActivityRecordStatus.AUDI_SUCCESS.getCode()); - handlerRecordQuery(activity,recordQ); - List wxOfflineActivityRecords = wxOfflineActivityRecordMapper.findList(recordQ); + List wxOfflineActivityRecords = null; + if (null != wxOfflineActivityGrantAward.getRecordIds() && wxOfflineActivityGrantAward.getRecordIds().size() > 0 ) { + wxOfflineActivityRecords = wxOfflineActivityRecordMapper.selectBatchIds(wxOfflineActivityGrantAward.getRecordIds()); + }else { + WxOfflineActivityRecord recordQ = new WxOfflineActivityRecord(); + recordQ.updateTenantInfo(wxOfflineActivityGrantAward); + recordQ.setActivityId(activity.getId()); + recordQ.setCusPhone(wxOfflineActivityGrantAward.getCusPhone()); + recordQ.setAuditStatus(EnumOfflineActivityRecordStatus.AUDI_SUCCESS.getCode()); + handlerRecordQuery(activity,recordQ); + wxOfflineActivityRecords = wxOfflineActivityRecordMapper.findList(recordQ); + } if (wxOfflineActivityRecords == null || wxOfflineActivityRecords.isEmpty()) { throw new MallinkException(Result.ERROR, "未查询到活动订单"); } + + if(wxOfflineActivityRecords.stream().map(WxOfflineActivityRecord::getCusPhone).distinct().count() != 1){ throw new MallinkException(Result.ERROR, "请检查活动订单用户是否为同一人"); } @@ -974,8 +980,30 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity activityGrantObject.put("orderMoneySum",grantAward.getOrderMoneySum()); activityGrantObject.put("realName",grantAward.getRealName()); activityGrantObject.put("realCard",grantAward.getRealCard()); - activityGrantObject.put("createByName",grantAward.getCreateBy()!=null?userMap.get(grantAward.getCreateBy()).getName():""); - activityGrantObject.put("createDate",DateUtils.date2String(grantAward.getCreateDate())); + //activityGrantObject.put("createByName",grantAward.getCreateBy()!=null?userMap.get(grantAward.getCreateBy()).getName():""); + //activityGrantObject.put("createDate",DateUtils.date2String(grantAward.getCreateDate())); + WxOfflineActivityGrantAward grantAwardHistoryQ = new WxOfflineActivityGrantAward(); + grantAwardHistoryQ.updateTenantInfo(wxOfflineActivity); + grantAwardHistoryQ.setActivityId(wxOfflineActivity.getId()); + grantAwardHistoryQ.setCusPhone(grantAward.getCusPhone()); + List historyList = wxOfflineActivityGrantAwardMapper.findGrantHistoryList(grantAwardHistoryQ); + StringBuffer createByNameSb = new StringBuffer(); + StringBuffer createDateSb = new StringBuffer(); + if (null != historyList && historyList.size() > 0 ) { + for (int i = 0 ; i < historyList.size(); i ++ ) { + WxOfflineActivityGrantAward gah = historyList.get(i); + Long cu = gah.getCreateBy(); + MallUserInfo mui = userMap.get(cu); + if (null != mui) { + createByNameSb.append(mui.getName()).append(","); + }else { + createByNameSb.append("").append(","); + } + createDateSb.append(DateUtils.date2String(grantAward.getCreateDate())).append(","); + } + } + + if(grantAward.getLotteryNumList() != null && !grantAward.getLotteryNumList().isEmpty()){ activityGrantObject.put("lotteryNum",String.join(";", grantAward.getLotteryNumList())); } diff --git a/mallinkService/src/main/resources/mapper/WxOfflineActivityGrantAwardMapper.xml b/mallinkService/src/main/resources/mapper/WxOfflineActivityGrantAwardMapper.xml index cee264718..93d76e8b9 100644 --- a/mallinkService/src/main/resources/mapper/WxOfflineActivityGrantAwardMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOfflineActivityGrantAwardMapper.xml @@ -76,8 +76,7 @@ select from wx_offline_activity_grant_award - - + + select createBy,createDate from wx_offline_activity_grant_award where `activity_id` = #{activityId} and `cus_phone` = #{cusPhone} order by createDate asc +