Просмотр исходного кода

//legionActivity

release_toaliyun_real
xiaohu 1 год назад
Родитель
Сommit
443b1f53b5
8 измененных файлов: 312 добавлений и 16 удалений
  1. +124
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxLegionActivityUserController.java
  2. +14
    -0
      mallinkBApi/src/main/java/com/iformall/controller/WxLegionActivityUserController.java
  3. +7
    -4
      mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivityOrder.java
  4. +17
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivityUser.java
  5. +7
    -0
      mallinkService/src/main/java/com/iformall/service/WxLegionActivityUserService.java
  6. +18
    -2
      mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityOrderServiceImpl.java
  7. +122
    -10
      mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityUserServiceImpl.java
  8. +3
    -0
      mallinkService/src/main/resources/mapper/WxLegionActivityOrderMapper.xml

+ 124
- 0
mallinkAdmin/src/main/java/com/iformall/controller/market/WxLegionActivityUserController.java Просмотреть файл

@@ -0,0 +1,124 @@
package com.iformall.controller.market;

import com.github.pagehelper.PageInfo;
import com.iformall.annotation.ApiVersion;
import com.iformall.common.ErrorCode;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.constant.SwaggerConstant;
import com.iformall.controller.base.BaseController;
import com.iformall.domain.po.WxLegionActivityOrder;
import com.iformall.domain.po.WxLegionActivityUser;
import com.iformall.domain.po.base.BaseEntity.SortField;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.enums.EnumLegionActivityOrderStatus;
import com.iformall.enums.EnumLegionActivityUserStatus;
import com.iformall.exception.MallinkException;
import com.iformall.service.WxLegionActivityUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import jodd.util.StringUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author alascor
*
*/
@RestController
@RequestMapping("/legionUser")
@Api(tags = "军团活动用户相关接口")
public class WxLegionActivityUserController extends BaseController {
private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
private WxLegionActivityUserService wxLegionActivityUserService;

@ApiVersion(group = SwaggerConstant.V_2_0_0)
@ApiOperation("分页列表接口")
@GetMapping("list")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
public ResultData list(@ModelAttribute WxLegionActivityUser wxLegionActivityUser, Integer pageNum, Integer pageSize) {
if (null == wxLegionActivityUser) wxLegionActivityUser = new WxLegionActivityUser();
if(wxLegionActivityUser.getActivityId() == null){
return new ResultData(Result.ERROR,"活动ID不能为空");
}
TenantEntity tenantInfo = getTenantInfo();
wxLegionActivityUser.updateTenantInfo(tenantInfo);
wxLegionActivityUser.setSortColumns(SortField.CreateDate_DESC);
final PageInfo<WxLegionActivityUser> page = wxLegionActivityUserService.listAsPage(wxLegionActivityUser, pageNum, pageSize);

return new ResultData(page);
}

@ApiVersion(group = SwaggerConstant.V_2_0_0)
@ApiOperation("导出")
@GetMapping("/export")
public void export(@ModelAttribute WxLegionActivityUser wxLegionActivityUser, HttpServletRequest request, HttpServletResponse response) {
if (null == wxLegionActivityUser) wxLegionActivityUser = new WxLegionActivityUser();
if(wxLegionActivityUser.getActivityId() == null){
throw new MallinkException(Result.ERROR,"活动ID不能为空");
}
TenantEntity tenantInfo = getTenantInfo();
wxLegionActivityUser.updateTenantInfo(tenantInfo);
wxLegionActivityUser.setSortColumns(SortField.CreateDate_DESC);
wxLegionActivityUserService.exportData(request,response,wxLegionActivityUser);
}

@ApiVersion(group = SwaggerConstant.V_2_0_0)
@ApiOperation("修改接口")
@PostMapping("saveOrUpdate")
public ResultData saveOrUpdate(@RequestBody WxLegionActivityUser wxLegionActivityUser) {
if(wxLegionActivityUser.getId() == null){
return new ResultData(Result.ERROR,"ID不能为空");
}

TenantEntity tenantEntity = getTenantInfo();
wxLegionActivityUser.updateTenantInfo(tenantEntity);
try{
wxLegionActivityUserService.saveOrUpdate(wxLegionActivityUser);
return new ResultData();
}catch(MallinkException e){
logger.error(e.getMessage());
return new ResultData(e.getErrorCode(), e.getMessage());
}catch(Exception e){
logger.error("异常:" + e);
return new ResultData(ErrorCode.SYS_SERVER_ERROR);
}
}

@ApiVersion(group = SwaggerConstant.V_2_0_0)
@ApiOperation("查询当前信息详情")
@GetMapping("getInfoById")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", paramType = "query", required = true)})
public ResultData getInfoById(Long id) {
TenantEntity tenantInfo = getTenantInfo();
WxLegionActivityUser user = wxLegionActivityUserService.getById(id, tenantInfo.getTenantId());
return new ResultData(user);
}

@ApiVersion(group = SwaggerConstant.V_2_0_0)
@ApiOperation("失效")
@PostMapping("invalid")
public ResultData invalid(@RequestBody WxLegionActivityUser wxLegionActivityUser) {
if(wxLegionActivityUser.getId() == null){
return new ResultData(Result.ERROR,"ID不能为空");
}
TenantEntity tenantEntity = getTenantInfo();
wxLegionActivityUser.updateTenantInfo(tenantEntity);
wxLegionActivityUser.setStatus(EnumLegionActivityUserStatus.INVALID.getCode());
wxLegionActivityUserService.updateStatus(wxLegionActivityUser);
return new ResultData();
}
}

+ 14
- 0
mallinkBApi/src/main/java/com/iformall/controller/WxLegionActivityUserController.java Просмотреть файл

@@ -87,6 +87,20 @@ public class WxLegionActivityUserController extends BaseController {
} }
} }


@ApiVersion(group = SwaggerConstant.V_2_0_0)
@ApiOperation("失效")
@PostMapping("invalid")
public ResultData invalid(@RequestBody WxLegionActivityUser wxLegionActivityUser) {
if(wxLegionActivityUser.getId() == null){
return new ResultData(Result.ERROR,"ID不能为空");
}
TenantEntity tenantEntity = getTenantInfo();
wxLegionActivityUser.updateTenantInfo(tenantEntity);
wxLegionActivityUser.setStatus(EnumLegionActivityUserStatus.INVALID.getCode());
wxLegionActivityUserService.updateStatus(wxLegionActivityUser);
return new ResultData();
}

@ApiVersion(group = SwaggerConstant.V_2_0_0) @ApiVersion(group = SwaggerConstant.V_2_0_0)
@ApiOperation("查询当前信息详情") @ApiOperation("查询当前信息详情")
@GetMapping("getInfoById") @GetMapping("getInfoById")


+ 7
- 4
mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivityOrder.java Просмотреть файл

@@ -52,7 +52,7 @@ public class WxLegionActivityOrder extends TenantEntity {
* 订单金额 * 订单金额
*/ */
@io.swagger.annotations.ApiModelProperty(value="订单金额",name="orderMoney") @io.swagger.annotations.ApiModelProperty(value="订单金额",name="orderMoney")
@Excel(name = "订单金额", width = 20, orderNum = "10")
@Excel(name = "订单金额", width = 20, orderNum = "12")
@TableField(value = "order_money") @TableField(value = "order_money")
private BigDecimal orderMoney; private BigDecimal orderMoney;


@@ -123,11 +123,14 @@ public class WxLegionActivityOrder extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value="联盟id",name="unionId") @io.swagger.annotations.ApiModelProperty(value="联盟id",name="unionId")
@TableField(value = "union_id") @TableField(value = "union_id")
private Long unionId; private Long unionId;
@Excel(name = "所属联盟", width = 20, orderNum = "9")
@TableField(exist = false)
private String unionName;


// /** // /**
// * 卡属派系 // * 卡属派系
// */ // */
// @Excel(name = "所属派系", width = 20, orderNum = "9", replace = {"原联盟_1", "非联盟_2"})
// @Excel(name = "所属派系", width = 20, orderNum = "10", replace = {"原联盟_1", "非联盟_2"})
// @TableField(exist = false) // @TableField(exist = false)
// private Integer unionType; // private Integer unionType;


@@ -141,7 +144,7 @@ public class WxLegionActivityOrder extends TenantEntity {
* 0:签单, 1:外部军团带单1, 2:内部军团不同联盟带单, 3:内部军团相同联盟带单, 4:内部军团无联盟带单 * 0:签单, 1:外部军团带单1, 2:内部军团不同联盟带单, 3:内部军团相同联盟带单, 4:内部军团无联盟带单
*/ */
@io.swagger.annotations.ApiModelProperty(value="带单类型 0:签单, 1:外部军团带单1, 2:内部军团不同联盟带单, 3:内部军团相同联盟带单, 4:内部军团无联盟带单",name="orderType") @io.swagger.annotations.ApiModelProperty(value="带单类型 0:签单, 1:外部军团带单1, 2:内部军团不同联盟带单, 3:内部军团相同联盟带单, 4:内部军团无联盟带单",name="orderType")
@Excel(name = "带单类型", width = 20, orderNum = "9", replace = {"签单_0", "外部军团带单_1", "内部军团不同联盟带单_2", "内部军团相同联盟带单_3", "内部军团无联盟带单_4"})
@Excel(name = "带单类型", width = 20, orderNum = "13", replace = {"签单_0", "外部军团带单_1", "内部军团不同联盟带单_2", "内部军团相同联盟带单_3", "内部军团无联盟带单_4"})
@TableField(value = "order_type") @TableField(value = "order_type")
private Integer orderType; private Integer orderType;
@TableField(exist = false) @TableField(exist = false)
@@ -198,7 +201,7 @@ public class WxLegionActivityOrder extends TenantEntity {
* 审核时间 * 审核时间
*/ */
@io.swagger.annotations.ApiModelProperty(value="审核时间",name="auditTime") @io.swagger.annotations.ApiModelProperty(value="审核时间",name="auditTime")
@Excel(name = "审核时间", format = "yyyy-MM-dd HH:mm:ss", width = 20, orderNum = "12")
@Excel(name = "审核时间", format = "yyyy-MM-dd HH:mm:ss", width = 20, orderNum = "14")
@TableField(value = "audit_time") @TableField(value = "audit_time")
private Date auditTime; private Date auditTime;




+ 17
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxLegionActivityUser.java Просмотреть файл

@@ -1,5 +1,6 @@
package com.iformall.domain.po; package com.iformall.domain.po;


import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
@@ -39,6 +40,7 @@ public class WxLegionActivityUser extends TenantEntity {
/** /**
* 用户手机号 * 用户手机号
*/ */
@Excel(name = "用户手机号", width = 20, orderNum = "1")
@io.swagger.annotations.ApiModelProperty(value="用户手机号",name="phone") @io.swagger.annotations.ApiModelProperty(value="用户手机号",name="phone")
@TableField(value = "phone") @TableField(value = "phone")
private String phone; private String phone;
@@ -46,6 +48,7 @@ public class WxLegionActivityUser extends TenantEntity {
/** /**
* 用户姓名 * 用户姓名
*/ */
@Excel(name = "用户姓名", width = 20, orderNum = "3")
@io.swagger.annotations.ApiModelProperty(value="用户姓名",name="phone") @io.swagger.annotations.ApiModelProperty(value="用户姓名",name="phone")
@TableField(value = "name") @TableField(value = "name")
private String name; private String name;
@@ -53,6 +56,7 @@ public class WxLegionActivityUser extends TenantEntity {
/** /**
* 用户地址 * 用户地址
*/ */
@Excel(name = "用户地址", width = 20, orderNum = "4")
@io.swagger.annotations.ApiModelProperty(value="用户地址",name="address") @io.swagger.annotations.ApiModelProperty(value="用户地址",name="address")
@TableField(value = "address") @TableField(value = "address")
private String address; private String address;
@@ -60,6 +64,7 @@ public class WxLegionActivityUser extends TenantEntity {
/** /**
* 会员卡号 * 会员卡号
*/ */
@Excel(name = "会员卡号", width = 20, orderNum = "2")
@io.swagger.annotations.ApiModelProperty(value="会员卡号",name="vipNum") @io.swagger.annotations.ApiModelProperty(value="会员卡号",name="vipNum")
@TableField(value = "vip_num") @TableField(value = "vip_num")
private String vipNum; private String vipNum;
@@ -70,6 +75,10 @@ public class WxLegionActivityUser extends TenantEntity {
@TableField(value = "merchant_id") @TableField(value = "merchant_id")
private Long merchantId; private Long merchantId;


@Excel(name = "商户名称", width = 20, orderNum = "5")
@TableField(exist = false)
private String merchantName;

@TableField(exist = false) @TableField(exist = false)
private List<Long> merchantIdList; private List<Long> merchantIdList;


@@ -78,16 +87,23 @@ public class WxLegionActivityUser extends TenantEntity {
*/ */
@TableField(value = "legion_id") @TableField(value = "legion_id")
private Long legionId; private Long legionId;
@Excel(name = "所属军团", width = 20, orderNum = "6")
@TableField(exist = false)
private String legionName;


/** /**
* 所属联盟 * 所属联盟
*/ */
@TableField(value = "union_id") @TableField(value = "union_id")
private Long unionId; private Long unionId;
@Excel(name = "所属联盟", width = 20, orderNum = "7")
@TableField(exist = false)
private String unionName;


/** /**
* 状态 * 状态
*/ */
@Excel(name = "状态", width = 20, orderNum = "8", replace = {"已绑定_0", "已失效_1"})
@TableField(value = "status") @TableField(value = "status")
private Integer status; private Integer status;


@@ -100,6 +116,7 @@ public class WxLegionActivityUser extends TenantEntity {
/** /**
* 创建时间 * 创建时间
*/ */
@Excel(name = "提交时间", format = "yyyy-MM-dd HH:mm:ss", width = 20, orderNum = "9")
@TableField(value = "create_date") @TableField(value = "create_date")
private Date createDate; private Date createDate;




+ 7
- 0
mallinkService/src/main/java/com/iformall/service/WxLegionActivityUserService.java Просмотреть файл

@@ -4,6 +4,8 @@ import com.github.pagehelper.PageInfo;
import com.iformall.domain.po.WxLegionActivityUser; import com.iformall.domain.po.WxLegionActivityUser;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;


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


/** /**
@@ -15,6 +17,8 @@ public interface WxLegionActivityUserService {


PageInfo<WxLegionActivityUser> listAsPage(WxLegionActivityUser wxLegionActivityUser, Integer pageNum, Integer pageSize); PageInfo<WxLegionActivityUser> listAsPage(WxLegionActivityUser wxLegionActivityUser, Integer pageNum, Integer pageSize);


void exportData(HttpServletRequest request, HttpServletResponse response, WxLegionActivityUser wxLegionActivityUser);

void saveOrUpdate(WxLegionActivityUser wxLegionActivityUser); void saveOrUpdate(WxLegionActivityUser wxLegionActivityUser);


WxLegionActivityUser getById(Long id, String tenantId); WxLegionActivityUser getById(Long id, String tenantId);
@@ -22,4 +26,7 @@ public interface WxLegionActivityUserService {
WxLegionActivityUser selectOne(WxLegionActivityUser wxLegionActivityUser); WxLegionActivityUser selectOne(WxLegionActivityUser wxLegionActivityUser);


Map<Long, WxLegionActivityUser> findUserMap(WxLegionActivityUser wxLegionActivityUser); Map<Long, WxLegionActivityUser> findUserMap(WxLegionActivityUser wxLegionActivityUser);

void updateStatus(WxLegionActivityUser wxLegionActivityUser);

} }

+ 18
- 2
mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityOrderServiceImpl.java Просмотреть файл

@@ -149,9 +149,16 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe
legionActivityOrder.setMerchantName(merchantMap.get(legionActivityOrder.getMerchantId())); legionActivityOrder.setMerchantName(merchantMap.get(legionActivityOrder.getMerchantId()));
if(legionActivityOrder.getLegionId().equals(0L)){ if(legionActivityOrder.getLegionId().equals(0L)){
legionActivityOrder.setLegionName("未参加活动"); legionActivityOrder.setLegionName("未参加活动");
legionActivityOrder.setUnionName("未参加活动");
}else{ }else{
legionActivityOrder.setLegionName(legionConfigMap.get(legionActivityOrder.getLegionId())); legionActivityOrder.setLegionName(legionConfigMap.get(legionActivityOrder.getLegionId()));
if(legionActivityOrder.getUnionId().equals(0L)){
legionActivityOrder.setUnionName("无联盟");
}else{
legionActivityOrder.setUnionName(legionConfigMap.get(legionActivityOrder.getUnionId()));
}
} }

// if(EnumLegionActivityOrderType.EQ_UNION.getCode().equals(wxLegionActivityOrder.getOrderType())){ // if(EnumLegionActivityOrderType.EQ_UNION.getCode().equals(wxLegionActivityOrder.getOrderType())){
// wxLegionActivityOrder.setUnionType(EnumLegionActivityOrderUnionType.EQ_UNION.getCode()); // wxLegionActivityOrder.setUnionType(EnumLegionActivityOrderUnionType.EQ_UNION.getCode());
// }else{ // }else{
@@ -245,11 +252,20 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe
WxMerchant merchant = wxMerchantMapper.selectById(wxLegionActivityOrder.getMerchantId()); WxMerchant merchant = wxMerchantMapper.selectById(wxLegionActivityOrder.getMerchantId());
wxLegionActivityOrder.setMerchantName(merchant.getName()); wxLegionActivityOrder.setMerchantName(merchant.getName());


WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig();
legionConfigQ.updateTenantInfo(wxLegionActivityOrder);
legionConfigQ.setActivityId(wxLegionActivityOrder.getActivityId());
Map<Long, String> legionConfigMap = wxLegionActivityConfigService.getLegionConfigMap(legionConfigQ);
if(wxLegionActivityOrder.getLegionId().equals(0L)){ if(wxLegionActivityOrder.getLegionId().equals(0L)){
wxLegionActivityOrder.setLegionName("未参加活动"); wxLegionActivityOrder.setLegionName("未参加活动");
wxLegionActivityOrder.setUnionName("未参加活动");
}else{ }else{
WxLegionActivityConfig legionActivityConfig = wxLegionActivityConfigMapper.selectById(wxLegionActivityOrder.getLegionId());
wxLegionActivityOrder.setLegionName(legionActivityConfig.getName());
wxLegionActivityOrder.setLegionName(legionConfigMap.get(wxLegionActivityOrder.getLegionId()));
if(wxLegionActivityOrder.getUnionId().equals(0L)){
wxLegionActivityOrder.setUnionName("无联盟");
}else{
wxLegionActivityOrder.setUnionName(legionConfigMap.get(wxLegionActivityOrder.getUnionId()));
}
} }


// if(EnumLegionActivityOrderType.EQ_UNION.getCode().equals(wxLegionActivityOrder.getOrderType())){ // if(EnumLegionActivityOrderType.EQ_UNION.getCode().equals(wxLegionActivityOrder.getOrderType())){


+ 122
- 10
mallinkService/src/main/java/com/iformall/service/impl/WxLegionActivityUserServiceImpl.java Просмотреть файл

@@ -7,20 +7,23 @@ import com.github.pagehelper.PageInfo;
import com.iformall.common.ErrorCode; import com.iformall.common.ErrorCode;
import com.iformall.common.IdWorker; import com.iformall.common.IdWorker;
import com.iformall.common.Result; import com.iformall.common.Result;
import com.iformall.domain.po.WxLegionActivityMerchantConfig;
import com.iformall.domain.po.WxLegionActivityOrder;
import com.iformall.domain.po.WxLegionActivityUser;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.*;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.enums.EnumLegionActivityOrderStatus; import com.iformall.enums.EnumLegionActivityOrderStatus;
import com.iformall.enums.EnumLegionActivityUserStatus; import com.iformall.enums.EnumLegionActivityUserStatus;
import com.iformall.exception.MallinkException; import com.iformall.exception.MallinkException;
import com.iformall.mapper.WxLegionActivityMerchantConfigMapper;
import com.iformall.mapper.*;
import com.iformall.service.ExcelService;
import com.iformall.service.WxLegionActivityConfigService;
import com.iformall.service.WxLegionActivityUserService; import com.iformall.service.WxLegionActivityUserService;
import com.iformall.mapper.WxLegionActivityUserMapper;
import com.iformall.service.WxMerchantService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;


import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*; import java.util.*;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -39,22 +42,86 @@ public class WxLegionActivityUserServiceImpl implements WxLegionActivityUserServ
@Autowired @Autowired
private WxLegionActivityMerchantConfigMapper wxLegionActivityMerchantConfigMapper; private WxLegionActivityMerchantConfigMapper wxLegionActivityMerchantConfigMapper;


@Autowired
private WxLegionActivityConfigService wxLegionActivityConfigService;

@Autowired
private WxLegionActivityConfigMapper wxLegionActivityConfigMapper;

@Autowired
private WxLegionActivityOrderMapper wxLegionActivityOrderMapper;

@Autowired
private WxMerchantMapper wxMerchantMapper;

@Autowired
private WxMerchantService wxMerchantService;

@Autowired
private ExcelService excelService;

@Override @Override
public PageInfo<WxLegionActivityUser> listAsPage(WxLegionActivityUser wxLegionActivityUser, Integer pageNum, Integer pageSize) { public PageInfo<WxLegionActivityUser> listAsPage(WxLegionActivityUser wxLegionActivityUser, Integer pageNum, Integer pageSize) {
handlerQuery(wxLegionActivityUser); handlerQuery(wxLegionActivityUser);
PageInfo<WxLegionActivityUser> recordPageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxLegionActivityUserMapper.findList(wxLegionActivityUser)); PageInfo<WxLegionActivityUser> recordPageInfo = PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxLegionActivityUserMapper.findList(wxLegionActivityUser));
handlerList(recordPageInfo.getList());
handlerList(wxLegionActivityUser,recordPageInfo.getList());
return recordPageInfo; return recordPageInfo;
} }


private void handlerQuery(WxLegionActivityUser wxLegionActivityUser) { private void handlerQuery(WxLegionActivityUser wxLegionActivityUser) {

//商户处理
if (StringUtils.isNotBlank(wxLegionActivityUser.getMerchantName())) {
WxMerchant merchant = new WxMerchant();
merchant.updateTenantInfo(wxLegionActivityUser);
merchant.setName(wxLegionActivityUser.getMerchantName());
List<Long> mids = wxMerchantMapper.findIdList(merchant);
if (null == mids || mids.size() <= 0 ) {
wxLegionActivityUser.setId(-1L);
}else {
wxLegionActivityUser.setMerchantIdList(mids);
}
}
} }


private void handlerList(List<WxLegionActivityUser> wxLegionActivityUsers) {
private void handlerList(WxLegionActivityUser wxLegionActivityUser,List<WxLegionActivityUser> wxLegionActivityUsers) {
if(wxLegionActivityUsers == null || wxLegionActivityUsers.isEmpty()) { if(wxLegionActivityUsers == null || wxLegionActivityUsers.isEmpty()) {
return; return;
} }

List<Long> merchantIds = wxLegionActivityUsers.stream().map(WxLegionActivityUser::getMerchantId).distinct().collect(Collectors.toList());
WxMerchant merchantQ = new WxMerchant();
merchantQ.updateTenantInfo(wxLegionActivityUser);
merchantQ.setIds(merchantIds);
Map<Long, String> idAndNamesMap = wxMerchantService.getIdAndNamesMap(merchantQ);

WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig();
legionConfigQ.updateTenantInfo(wxLegionActivityUser);
legionConfigQ.setActivityId(wxLegionActivityUser.getActivityId());
Map<Long, String> legionConfigMap = wxLegionActivityConfigService.getLegionConfigMap(legionConfigQ);

for (WxLegionActivityUser legionActivityUser : wxLegionActivityUsers) {
legionActivityUser.setMerchantName(idAndNamesMap.get(legionActivityUser.getMerchantId()));

if(legionActivityUser.getLegionId().equals(0L)){
legionActivityUser.setLegionName("未参加活动");
legionActivityUser.setUnionName("未参加活动");
}else{
legionActivityUser.setLegionName(legionConfigMap.get(legionActivityUser.getLegionId()));
if(legionActivityUser.getUnionId().equals(0L)){
legionActivityUser.setUnionName("无联盟");
}else{
legionActivityUser.setUnionName(legionConfigMap.get(legionActivityUser.getUnionId()));
}
}
}
}

@Override
public void exportData(HttpServletRequest request, HttpServletResponse response, WxLegionActivityUser wxLegionActivityUser) {
handlerQuery(wxLegionActivityUser);
List<WxLegionActivityUser> list = wxLegionActivityUserMapper.findList(wxLegionActivityUser);
handlerList(wxLegionActivityUser, list);
excelService.exportExcel(list, null, "军团活动用户列表", WxLegionActivityUser.class, "军团活动用户列表.xlsx", response, false);
} }


@Override @Override
@@ -137,7 +204,30 @@ public class WxLegionActivityUserServiceImpl implements WxLegionActivityUserServ


@Override @Override
public WxLegionActivityUser getById(Long id, String tenantId) { public WxLegionActivityUser getById(Long id, String tenantId) {
return wxLegionActivityUserMapper.selectById(id,tenantId);
WxLegionActivityUser wxLegionActivityUser = wxLegionActivityUserMapper.selectById(id, tenantId);
if(wxLegionActivityUser == null) {
return null;
}
WxMerchant merchant = wxMerchantMapper.selectById(wxLegionActivityUser.getMerchantId());
wxLegionActivityUser.setMerchantName(merchant.getName());

WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig();
legionConfigQ.updateTenantInfo(wxLegionActivityUser);
legionConfigQ.setActivityId(wxLegionActivityUser.getActivityId());
Map<Long, String> legionConfigMap = wxLegionActivityConfigService.getLegionConfigMap(legionConfigQ);

if(wxLegionActivityUser.getLegionId().equals(0L)){
wxLegionActivityUser.setLegionName("未参加活动");
wxLegionActivityUser.setUnionName("未参加活动");
}else{
wxLegionActivityUser.setLegionName(legionConfigMap.get(wxLegionActivityUser.getLegionId()));
if(wxLegionActivityUser.getUnionId().equals(0L)){
wxLegionActivityUser.setUnionName("无联盟");
}else{
wxLegionActivityUser.setUnionName(legionConfigMap.get(wxLegionActivityUser.getUnionId()));
}
}
return wxLegionActivityUser;
} }


@Override @Override
@@ -154,6 +244,28 @@ public class WxLegionActivityUserServiceImpl implements WxLegionActivityUserServ
} }
return userMap; return userMap;
} }

@Override
@Transactional(rollbackFor = Exception.class)
public void updateStatus(WxLegionActivityUser wxLegionActivityUser) {
Date now = new Date();
wxLegionActivityUser.setUpdateDate(now);
wxLegionActivityUserMapper.updateStatus(wxLegionActivityUser);

if(EnumLegionActivityUserStatus.INVALID.getCode().equals(wxLegionActivityUser.getStatus())){
//作废用户下所有订单

WxLegionActivityOrder activityOrder = new WxLegionActivityOrder();
activityOrder.updateTenantInfo(wxLegionActivityUser);
activityOrder.setActivityId(wxLegionActivityUser.getId());
activityOrder.setCusId(wxLegionActivityUser.getId());
activityOrder.setAuditStatus(EnumLegionActivityOrderStatus.INVALID.getCode());
activityOrder.setUpdateDate(now);
wxLegionActivityOrderMapper.updateAuditStatus(activityOrder);

}
}

} }






+ 3
- 0
mallinkService/src/main/resources/mapper/WxLegionActivityOrderMapper.xml Просмотреть файл

@@ -161,6 +161,9 @@
<if test=" null != activityId "> <if test=" null != activityId ">
and `activity_id` = #{activityId} and `activity_id` = #{activityId}
</if> </if>
<if test=" null != cusId">
and `cus_id` = #{cusId}
</if>
<if test=" null != merchantIdList "> <if test=" null != merchantIdList ">
and merchant_id in and merchant_id in
<foreach collection="merchantIdList" index="index" item="midItem" open="(" separator="," close=")"> <foreach collection="merchantIdList" index="index" item="midItem" open="(" separator="," close=")">


Загрузка…
Отмена
Сохранить