Browse Source

//OfflineActivity

release_toaliyun_real
xiaohu 1 year ago
parent
commit
495cfe3dbe
4 changed files with 61 additions and 46 deletions
  1. +8
    -5
      mallinkService/src/main/java/com/iformall/domain/po/WxOfflineActivityRecord.java
  2. +3
    -0
      mallinkService/src/main/java/com/iformall/service/WxOfflineActivityRecordService.java
  3. +7
    -27
      mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java
  4. +43
    -14
      mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityRecordServiceImpl.java

+ 8
- 5
mallinkService/src/main/java/com/iformall/domain/po/WxOfflineActivityRecord.java View File

@@ -43,7 +43,7 @@ public class WxOfflineActivityRecord extends TenantEntity {
/**
* 订单金额
*/
@Excel(name = "订单金额(元)", width = 20, orderNum = "7")
@Excel(name = "订单金额(元)", width = 20, orderNum = "8")
@TableField(value = "order_money")
private BigDecimal orderMoney;

@@ -125,6 +125,9 @@ public class WxOfflineActivityRecord extends TenantEntity {
@Excel(name = "商户名称", width = 20, orderNum = "6")
@TableField(exist = false)
private String merchantName;
@Excel(name="商铺号",width = 20,orderNum = "7")
@TableField(exist = false)
private String shopNumber;

@TableField(exist = false)
private List<Long> merchantIdList;
@@ -155,14 +158,14 @@ public class WxOfflineActivityRecord extends TenantEntity {
/**
* 审批意见
*/
@Excel(name = "审核意见", width = 20, orderNum = "9")
@Excel(name = "审核意见", width = 20, orderNum = "10")
@TableField(value = "audit_remark")
private String auditRemark;

/**
* 审批状态
*/
@Excel(name = "审核状态", width = 20, orderNum = "8", replace = {"审核中_0", "已审批_1", "已驳回_2", "已发奖_10"})
@Excel(name = "审核状态", width = 20, orderNum = "9", replace = {"审核中_0", "已审批_1", "已驳回_2", "已发奖_10"})
@TableField(value = "audit_status")
private Integer auditStatus;

@@ -172,14 +175,14 @@ public class WxOfflineActivityRecord extends TenantEntity {
@TableField(value = "audit_by")
private Long auditBy;

@Excel(name = "审核人", width = 20, orderNum = "11")
@Excel(name = "审核人", width = 20, orderNum = "12")
@TableField(exist = false)
private String auditByName;

/**
* 审核时间
*/
@Excel(name = "审核时间", width = 20, format = "yyyy-MM-dd HH:mm:ss", orderNum = "10")
@Excel(name = "审核时间", width = 20, format = "yyyy-MM-dd HH:mm:ss", orderNum = "11")
@TableField(value = "audit_time")
private Date auditTime;



+ 3
- 0
mallinkService/src/main/java/com/iformall/service/WxOfflineActivityRecordService.java View File

@@ -8,6 +8,7 @@ import com.iformall.domain.po.base.TenantEntity;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

/**
@@ -19,6 +20,8 @@ public interface WxOfflineActivityRecordService {

PageInfo<WxOfflineActivityRecord> listAsPage(WxOfflineActivityRecord record, Integer pageNum, Integer pageSize);

void handlerRecordList(TenantEntity tenantEntity,Long activityId, List<WxOfflineActivityRecord> recordList);

void saveOrUpdate(WxOfflineActivityRecord wxOfflineActivityRecord);

WxOfflineActivityRecord getById(Long id, String tenantId);


+ 7
- 27
mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java View File

@@ -75,12 +75,17 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
@Autowired
WxOfflineActivityService wxOfflineActivityService;

@Autowired
WxOfflineActivityRecordService wxOfflineActivityRecordService;

@Autowired
WxOfflineActivityGrantSettlementService wxOfflineActivityGrantSettlementService;

@Autowired
WxMerchantService wxMerchantService;
@Autowired
WxShopService wxShopService;
@Autowired
MallUserInfoService mallUserInfoService;

@Autowired
@@ -127,7 +132,7 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
public List<WxOfflineActivityRecord> getRecordList(WxOfflineActivityRecord wxOfflineActivityRecord) {
handlerRecordQuery(wxOfflineActivityRecord);
List<WxOfflineActivityRecord> recordList = wxOfflineActivityRecordMapper.findList(wxOfflineActivityRecord);
handlerRecordList(wxOfflineActivityRecord,recordList);
wxOfflineActivityRecordService.handlerRecordList(wxOfflineActivityRecord,wxOfflineActivityRecord.getActivityId(),recordList);
return recordList;
}

@@ -149,31 +154,6 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
}
}

private void handlerRecordList(WxOfflineActivityRecord wxOfflineActivityRecord, List<WxOfflineActivityRecord> recordList) {
if (recordList == null || recordList.isEmpty()) {
return;
}
WxMerchant merchantQ = new WxMerchant();
merchantQ.updateTenantInfo(wxOfflineActivityRecord);
Map<Long, String> idAndNamesMap = wxMerchantService.getIdAndNamesMap(merchantQ);
MallUserInfo userInfoQ = new MallUserInfo();
userInfoQ.updateTenantInfo(wxOfflineActivityRecord);
Map<Long, MallUserInfo> userMap = mallUserInfoService.getUserMap(userInfoQ);

for (WxOfflineActivityRecord record : recordList) {
record.setMerchantName(idAndNamesMap.get(record.getMerchantId()));
if(record.getAuditBy() != null){
record.setAuditByName(userMap.get(record.getAuditBy()).getName());
}
//判断订单是否发奖
Integer grantCount = wxOfflineActivityRecordGrantMapper.selectGrantCount(wxOfflineActivityRecord.getTenantId(),wxOfflineActivityRecord.getActivityId(),record.getId());
if(grantCount >= 1){
record.setAuditStatus(EnumOfflineActivityRecordStatus.IS_GRANT.getCode());
}

}
}

@Override
public void handlerGrantAwardPage(WxOfflineActivityGrantAward wxOfflineActivityGrantAward) {
WxOfflineActivity activity = wxOfflineActivityMapper.selectById(wxOfflineActivityGrantAward.getActivityId(), wxOfflineActivityGrantAward.getTenantId());
@@ -560,7 +540,7 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity
public void recordExport(HttpServletRequest request, HttpServletResponse response, WxOfflineActivityRecord wxOfflineActivityRecord) {
handlerRecordQuery(wxOfflineActivityRecord);
List<WxOfflineActivityRecord> recordList = wxOfflineActivityRecordMapper.findList(wxOfflineActivityRecord);
handlerRecordList(wxOfflineActivityRecord,recordList);
wxOfflineActivityRecordService.handlerRecordList(wxOfflineActivityRecord,wxOfflineActivityRecord.getActivityId(),recordList);
excelService.exportExcel(recordList, null, "用户参加活动订单列表", WxOfflineActivityRecord.class, "用户参加活动订单列表.xlsx", response, false);
}



+ 43
- 14
mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityRecordServiceImpl.java View File

@@ -8,12 +8,11 @@ import com.iformall.domain.po.*;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.OfflineActivityRecordStatistics;
import com.iformall.enums.EnumOfflineActivityRecordStatus;
import com.iformall.enums.EnumYesOrNo;
import com.iformall.mapper.WxMerchantMapper;
import com.iformall.mapper.WxOfflineActivityGrantAwardMapper;
import com.iformall.service.ExcelService;
import com.iformall.service.MallUserInfoService;
import com.iformall.service.WxMerchantService;
import com.iformall.service.WxOfflineActivityRecordService;
import com.iformall.mapper.WxOfflineActivityRecordGrantMapper;
import com.iformall.service.*;
import com.iformall.mapper.WxOfflineActivityRecordMapper;
import com.iformall.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -23,6 +22,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.NumberFormat;
import java.util.*;
import java.util.stream.Collectors;

/**
* @author xiaohu
@@ -38,11 +38,16 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco
@Autowired
WxOfflineActivityGrantAwardMapper wxOfflineActivityGrantAwardMapper;

@Autowired
WxOfflineActivityRecordGrantMapper wxOfflineActivityRecordGrantMapper;

@Autowired
WxMerchantMapper wxMerchantMapper;
@Autowired
WxMerchantService wxMerchantService;
@Autowired
WxShopService wxShopService;
@Autowired
MallUserInfoService mallUserInfoService;

@Autowired
@@ -52,7 +57,7 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco
public PageInfo<WxOfflineActivityRecord> listAsPage(WxOfflineActivityRecord record, Integer pageNum, Integer pageSize) {
handlerQuery(record);
PageInfo<WxOfflineActivityRecord> recordPageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxOfflineActivityRecordMapper.findList(record));
handlerRecordList(record,recordPageInfo.getList());
handlerRecordList(record,null,recordPageInfo.getList());
return recordPageInfo;
}

@@ -102,23 +107,47 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco
}
}

private void handlerRecordList(TenantEntity tenantEntity,List<WxOfflineActivityRecord> recordList) {
@Override
public void handlerRecordList(TenantEntity tenantEntity,Long activityId,List<WxOfflineActivityRecord> recordList) {
if (recordList == null || recordList.size() <= 0) {
return;
}
WxMerchant merchantQ = new WxMerchant();
merchantQ.updateTenantInfo(tenantEntity);
Map<Long, String> idAndNamesMap = wxMerchantService.getIdAndNamesMap(merchantQ);
MallUserInfo userInfoQ = new MallUserInfo();
userInfoQ.updateTenantInfo(tenantEntity);
Map<Long, MallUserInfo> userMap = mallUserInfoService.getUserMap(userInfoQ);
List<Long> merchantIds = recordList.stream().map(WxOfflineActivityRecord::getMerchantId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
List<Long> userIds = recordList.stream().map(WxOfflineActivityRecord::getAuditBy).filter(Objects::nonNull).distinct().collect(Collectors.toList());
Map<Long, String> idAndNamesMap = new HashMap<>();
Map<Long,String> merchantShopNumberMap = new HashMap<>();
if(!merchantIds.isEmpty()){
WxMerchant merchantQ = new WxMerchant();
merchantQ.updateTenantInfo(tenantEntity);
merchantQ.setIds(merchantIds);
idAndNamesMap = wxMerchantService.getIdAndNamesMap(merchantQ);
merchantShopNumberMap = wxShopService.getMerchantShopNumberMap(tenantEntity, merchantIds, EnumYesOrNo.NO.getCode());
}
Map<Long, MallUserInfo> userMap = new HashMap<>();
if(!userIds.isEmpty()){
MallUserInfo userInfoQ = new MallUserInfo();
userInfoQ.updateTenantInfo(tenantEntity);
userMap = mallUserInfoService.getUserMap(userInfoQ);
}

for (WxOfflineActivityRecord record : recordList) {
record.setMerchantName(idAndNamesMap.get(record.getMerchantId()));
if(record.getMerchantId() != null){
record.setMerchantName(idAndNamesMap.get(record.getMerchantId()));
record.setShopNumber(merchantShopNumberMap.get(record.getMerchantId()));
}
if(record.getAuditBy() != null){
record.setAuditByName(userMap.get(record.getAuditBy()).getName());
}

if(activityId != null){
//判断订单是否发奖
Integer grantCount = wxOfflineActivityRecordGrantMapper.selectGrantCount(tenantEntity.getTenantId(),activityId,record.getId());
if(grantCount >= 1){
record.setAuditStatus(EnumOfflineActivityRecordStatus.IS_GRANT.getCode());
}
}
}

}

@Override
@@ -242,7 +271,7 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco
public void exportData(HttpServletRequest request, HttpServletResponse response, WxOfflineActivityRecord record) {
handlerQuery(record);
List<WxOfflineActivityRecord> list = wxOfflineActivityRecordMapper.findList(record);
handlerRecordList(record,list);
handlerRecordList(record,null,list);
excelService.exportExcel(list, null, "活动订单列表", WxOfflineActivityRecord.class, "活动订单列表.xlsx", response, false);
}



Loading…
Cancel
Save