From 34e7b8a9850958285898de485c6a72db2dcdfa55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9F=A9=E5=AD=A6=E8=BE=BE?= Date: Tue, 2 Apr 2019 16:04:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=A7=AF=E5=88=86=E7=9B=B8?= =?UTF-8?q?=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxCreditHistoryController.java | 78 +++++++++ .../V201904021550__ADD_WX_CREDIT_HISTORY.sql | 18 +++ .../domain/dto/WxCreditHistoryDto.java | 4 + .../com/iformall/domain/po/MallUserInfo.java | 9 +- .../iformall/domain/po/WxCreditHistory.java | 150 ++++++++++++++++++ .../iformall/domain/vo/WxCreditHistoryVo.java | 55 +++++++ .../java/com/iformall/enums/EnumUserType.java | 35 ++++ .../mapper/WxCreditHistoryMapper.java | 15 ++ .../service/WxCreditHistoryService.java | 60 +++++++ .../impl/WxCreditHistoryServiceImpl.java | 139 ++++++++++++++++ .../mapper/WxCreditHistoryMapper.xml | 122 ++++++++++++++ 11 files changed, 677 insertions(+), 8 deletions(-) create mode 100644 mallinkAdmin/src/main/java/com/iformall/controller/WxCreditHistoryController.java create mode 100644 mallinkAdmin/src/main/resources/db/migration/V201904021550__ADD_WX_CREDIT_HISTORY.sql create mode 100644 mallinkService/src/main/java/com/iformall/domain/dto/WxCreditHistoryDto.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxCreditHistoryVo.java create mode 100644 mallinkService/src/main/java/com/iformall/enums/EnumUserType.java create mode 100644 mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java create mode 100644 mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java create mode 100644 mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java create mode 100644 mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxCreditHistoryController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxCreditHistoryController.java new file mode 100644 index 000000000..b8643ffa6 --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxCreditHistoryController.java @@ -0,0 +1,78 @@ +package com.iformall.controller; + +import com.iformall.domain.dto.WxCreditHistoryDto; +import com.iformall.domain.vo.WxCreditHistoryVo; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.Assert; +import org.springframework.web.bind.annotation.*; + +import com.github.pagehelper.PageInfo; +import com.iformall.common.Result; +import com.iformall.common.ResultData; + +import org.slf4j.Logger; +import com.iformall.domain.po.WxCreditHistory; +import com.iformall.service.WxCreditHistoryService; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@RestController +@RequestMapping("wxCreditHistory") +public class WxCreditHistoryController extends BaseController +{ + @Autowired + private WxCreditHistoryService wxCreditHistoryService; + + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @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 WxCreditHistory wxCreditHistory, Integer pageNum, Integer pageSize) { + if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory(); + final PageInfo page = wxCreditHistoryService.listAsPageMore(wxCreditHistory, pageNum, pageSize); + return new ResultData(page); + } + + @ApiOperation("新增接口") + @PostMapping("add") + public ResultData add(@RequestBody WxCreditHistory wxCreditHistory) { + //Assert.notNull(wxCreditHistory.getName(), "角色名不能为空"); + //Assert.isTrue(!checkUnique(sysRole.getName(), null), "重复的角色名"); + wxCreditHistoryService.saveOrUpdate(wxCreditHistory); + return new ResultData(); + } + + @ApiOperation("根据id更新接口") + @PostMapping("update") + public ResultData update(@RequestBody WxCreditHistory wxCreditHistory) { + wxCreditHistoryService.saveOrUpdate(wxCreditHistory); + return new ResultData(); + } + + @ApiOperation("根据id删除接口") + @GetMapping("/del") + @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true) + public ResultData delete(Long id) { + wxCreditHistoryService.deleteById(id); + return new ResultData(Result.SUCCESS, "删除成功", null); + } + + @ApiOperation("根据id查询接口") + @GetMapping("/findById") + @ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true) + public ResultData findById(Long id) { + return new ResultData(Result.SUCCESS,"查询成功",wxCreditHistoryService.getById(id)); + } + + + +} diff --git a/mallinkAdmin/src/main/resources/db/migration/V201904021550__ADD_WX_CREDIT_HISTORY.sql b/mallinkAdmin/src/main/resources/db/migration/V201904021550__ADD_WX_CREDIT_HISTORY.sql new file mode 100644 index 000000000..244d1e6db --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201904021550__ADD_WX_CREDIT_HISTORY.sql @@ -0,0 +1,18 @@ +DROP TABLE IF EXISTS `wx_credit_history`; +CREATE TABLE `wx_credit_history` ( + `id` bigint(64) NOT NULL COMMENT '主键ID', + `tenant_id` varchar(50) NOT NULL COMMENT '租户ID', + `c_user_id` bigint(64) NOT NULL COMMENT '用户ID', + `credit_amount` int(11) NOT NULL COMMENT '总积分', + `credit_num` int(11) NOT NULL COMMENT '每笔积分明细', + `credit_type` tinyint(2) NOT NULL COMMENT '积分类型(操作说明)', + `create_date` datetime(0) NOT NULL COMMENT '创建日期', + `receipt_url` varchar(256) NULL DEFAULT NULL COMMENT '小票URL', + `operator_type` tinyint(2) NOT NULL COMMENT '操作人类型', + `operator_id` bigint(64) NOT NULL COMMENT '操作人ID', + `merchant_id` bigint(11) NULL DEFAULT NULL COMMENT '商户ID', + `coupon_id` bigint(64) NULL DEFAULT NULL COMMENT '券ID(积分兑换券时生成)', + `business_id` bigint(64) NULL DEFAULT NULL COMMENT '业态ID(计算新增积分时使用)', + `spend` int(11) NULL DEFAULT NULL COMMENT '花费', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB ROW_FORMAT = Dynamic COMMENT='积分记录'; \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/dto/WxCreditHistoryDto.java b/mallinkService/src/main/java/com/iformall/domain/dto/WxCreditHistoryDto.java new file mode 100644 index 000000000..9a2c7746a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/dto/WxCreditHistoryDto.java @@ -0,0 +1,4 @@ +package com.iformall.domain.dto; + +public class WxCreditHistoryDto { +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java b/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java index 0c3b8a212..d48cf6bb5 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java @@ -21,7 +21,7 @@ public class MallUserInfo implements Serializable { protected Long id; @Transient - protected List ids; + protected List ids; @Transient protected String sortColumns; @@ -37,13 +37,6 @@ public class MallUserInfo implements Serializable { return sortColumns; } - public List getIds() { - return ids; - } - public void setIds(List ids) { - this.ids = ids; - } - /**租户ID**/ diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java new file mode 100644 index 000000000..09ac9f2cf --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCreditHistory.java @@ -0,0 +1,150 @@ +package com.iformall.domain.po; + +import lombok.Data; +import javax.persistence.*; +import java.util.*; +import java.math.*; +import javax.persistence.Transient; +import java.util.List; +import javax.persistence.Id; +import java.io.Serializable; + +@Table(name = "wx_credit_history") +@Data +public class WxCreditHistory implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + protected Long id; + + @Transient + protected List ids; + @Transient + protected String sortColumns; + + @Transient + @io.swagger.annotations.ApiModelProperty(value="开始时间",name="startTime") + private Date startTime; + + @Transient + @io.swagger.annotations.ApiModelProperty(value="结束时间",name="endTime") + private Date endTime; + + @Transient + @io.swagger.annotations.ApiModelProperty(value="手机号",name="phone") + private String phone; + + @Transient + @io.swagger.annotations.ApiModelProperty(value="姓名",name="name") + private String name; + + /**租户ID*/ + @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") + private String tenantId; + /**用户ID*/ + @io.swagger.annotations.ApiModelProperty(value="用户ID",name="cUserId") + private Long cUserId; + /**总积分*/ + @io.swagger.annotations.ApiModelProperty(value="总积分",name="creditAmount") + private Integer creditAmount; + /**每笔积分明细*/ + @io.swagger.annotations.ApiModelProperty(value="每笔积分明细",name="creditNum") + private Integer creditNum; + /**积分类型*/ + @io.swagger.annotations.ApiModelProperty(value="积分类型",name="creditType") + private Integer creditType; + /**创建日期*/ + @io.swagger.annotations.ApiModelProperty(value="创建日期",name="createDate") + private Date createDate; + /**小票URL*/ + @io.swagger.annotations.ApiModelProperty(value="小票URL",name="receiptUrl") + private String receiptUrl; + /**操作人类型*/ + @io.swagger.annotations.ApiModelProperty(value="操作人类型",name="operatorType") + private Integer operatorType; + /**操作人ID*/ + @io.swagger.annotations.ApiModelProperty(value="操作人ID",name="operatorId") + private Long operatorId; + /**商户ID*/ + @io.swagger.annotations.ApiModelProperty(value="商户ID",name="merchantId") + private Long merchantId; + /**券ID(积分兑换券时生成)*/ + @io.swagger.annotations.ApiModelProperty(value="券ID(积分兑换券时生成)",name="couponId") + private Long couponId; + /**业态ID(计算新增积分时使用)*/ + @io.swagger.annotations.ApiModelProperty(value="业态ID(计算新增积分时使用)",name="businessId") + private Long businessId; + /**花费*/ + @io.swagger.annotations.ApiModelProperty(value="花费",name="spend") + private Integer spend; + + + + public static enum Field + { + Id_ASC("`id` ASC"),Id_DESC("`id` DESC") + ,TenantId_ASC("`tenant_id` ASC"),TenantId_DESC("`tenant_id` DESC") + ,CUserId_ASC("`c_user_id` ASC"),CUserId_DESC("`c_user_id` DESC") + ,CreditAmount_ASC("`credit_amount` ASC"),CreditAmount_DESC("`credit_amount` DESC") + ,CreditNum_ASC("`credit_num` ASC"),CreditNum_DESC("`credit_num` DESC") + ,CreditType_ASC("`credit_type` ASC"),CreditType_DESC("`credit_type` DESC") + ,CreateDate_ASC("`create_date` ASC"),CreateDate_DESC("`create_date` DESC") + ,ReceiptUrl_ASC("`receipt_url` ASC"),ReceiptUrl_DESC("`receipt_url` DESC") + ,OperatorType_ASC("`operator_type` ASC"),OperatorType_DESC("`operator_type` DESC") + ,OperatorId_ASC("`operator_id` ASC"),OperatorId_DESC("`operator_id` DESC") + ,MerchantId_ASC("`merchant_id` ASC"),MerchantId_DESC("`merchant_id` DESC") + ,CouponId_ASC("`coupon_id` ASC"),CouponId_DESC("`coupon_id` DESC") + ,BusinessId_ASC("`business_id` ASC"),BusinessId_DESC("`business_id` DESC") + ,Spend_ASC("`spend` ASC"),Spend_DESC("`spend` DESC") + ; + private String value; + Field(String value){ + this.value = value; + } + public String getValue() { + return value; + } + public void setCol(String value) { + this.value = value; + } + @Override + public String toString() { + return this.getValue(); + } + } + + public void setSortColumns(Field... fields) + { + if (fields == null || fields.length == 0) { + return; + } + for (int k = 0; k < fields.length; k++) { + if (fields[k] == null) { + return; + } + } + StringBuilder sb = new StringBuilder(fields[0].toString()); + for (int k = 1; k < fields.length; k++) { + sb.append(","); + sb.append(fields[k].toString()); + } + this.sortColumns = sb.toString(); + } + + public void setSortColumns(String sortColumns) + { + if (sortColumns == null || "".equals(sortColumns.trim())) { + return; + } + if (sortColumns.contains(",")) { + String[] cols = sortColumns.split(","); + List fList = new ArrayList(); + for (int k = 0; k < cols.length; k++) { + fList.add(Field.valueOf(cols[k])); + } + this.setSortColumns(fList.toArray(new Field[fList.size()])); + } else { + this.setSortColumns(Field.valueOf(sortColumns)); + } + } +} diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxCreditHistoryVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxCreditHistoryVo.java new file mode 100644 index 000000000..b940bad1f --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxCreditHistoryVo.java @@ -0,0 +1,55 @@ +package com.iformall.domain.vo; + +import lombok.Data; + +import java.util.Date; + +@Data +public class WxCreditHistoryVo { + + @io.swagger.annotations.ApiModelProperty(value="手机号",name="phone") + private String phone; + + @io.swagger.annotations.ApiModelProperty(value="姓名",name="name") + private String name; + + @io.swagger.annotations.ApiModelProperty(value="性别",name="sex") + private String sex; + + @io.swagger.annotations.ApiModelProperty(value="积分ID",name="creditId") + private String creditId; + + @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") + private String tenantId; + + @io.swagger.annotations.ApiModelProperty(value="用户ID",name="cUserId") + private Long cUserId; + /**总积分*/ + @io.swagger.annotations.ApiModelProperty(value="总积分",name="creditAmount") + private Integer creditAmount; + /**每笔积分明细*/ + @io.swagger.annotations.ApiModelProperty(value="每笔积分明细",name="creditNum") + private Integer creditNum; + /**积分类型*/ + @io.swagger.annotations.ApiModelProperty(value="积分类型",name="creditType") + private Integer creditType; + /**创建日期*/ + @io.swagger.annotations.ApiModelProperty(value="创建日期",name="createDate") + private Date createDate; + /**小票URL*/ + @io.swagger.annotations.ApiModelProperty(value="小票URL",name="receiptUrl") + private String receiptUrl; + + @io.swagger.annotations.ApiModelProperty(value="商户",name="merchantName") + private String merchantName; + + @io.swagger.annotations.ApiModelProperty(value="操作人类型",name="operator") + private String operatorType; + + @io.swagger.annotations.ApiModelProperty(value="操作人ID",name="operatorId") + private Long operatorId; + + @io.swagger.annotations.ApiModelProperty(value="操作人",name="operator") + private String operator; + +} diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumUserType.java b/mallinkService/src/main/java/com/iformall/enums/EnumUserType.java new file mode 100644 index 000000000..a41dcd459 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/enums/EnumUserType.java @@ -0,0 +1,35 @@ +package com.iformall.enums; + +public enum EnumUserType { + + CUSER(1, "C端用户"), + CUSERBASIC(2, "C端用户(偏向A端)"), + BUSER(3, "B端用户"), + MALLUSER(4, "A端用户") + ; + + public static EnumUserType getEnum(Integer code) { + for (EnumUserType value : values()) { + if (value.getCode().equals(code)) { + return value; + } + } + return null; + } + + private Integer code; + private String message; + + EnumUserType(Integer code, String message) { + this.code = code; + this.message = message; + } + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } +} diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java new file mode 100644 index 000000000..b4c6ebe59 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java @@ -0,0 +1,15 @@ +package com.iformall.mapper; + +import java.util.*; +import com.iformall.common.CommonMapper; +import com.iformall.domain.vo.WxCreditHistoryVo; +import com.iformall.domain.po.WxCreditHistory; + +public interface WxCreditHistoryMapper extends CommonMapper { + + List findList(WxCreditHistory wxCreditHistory); + + List findListMore(WxCreditHistory wxCreditHistory); + + +} diff --git a/mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java b/mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java new file mode 100644 index 000000000..950597666 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java @@ -0,0 +1,60 @@ +package com.iformall.service; + +import java.util.*; +import com.github.pagehelper.PageInfo; +import com.iformall.domain.dto.WxCreditHistoryDto; +import com.iformall.domain.po.WxCreditHistory; +import com.iformall.domain.vo.WxCreditHistoryVo; + +public interface WxCreditHistoryService { + + /** + * 根据实体查询分页列表 + * + * @param record + * @param pageIndex + * @param pageSize + * @return + */ + PageInfo listAsPage(WxCreditHistory record, Integer pageIndex, Integer pageSize); + + /** + * 根据实体查询分页列表更多 + * + * @param record + * @param pageIndex + * @param pageSize + * @return + */ + PageInfo listAsPageMore(WxCreditHistory record, Integer pageIndex, Integer pageSize); + + /** + * 根据Id获得实体 + * + * @param id + * @return + */ + WxCreditHistory getById(Long id); + + /** + * 保存或更新实体 + * + * @param record + */ + void saveOrUpdate(WxCreditHistory record); + + /** + * 根据Id删除实体 + * + * @param id + */ + void deleteById(Long id); + + + + + + + + +} diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java new file mode 100644 index 000000000..e2e2aef59 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java @@ -0,0 +1,139 @@ +package com.iformall.service.impl; + +import java.util.*; +import java.util.stream.Collectors; + +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.google.common.collect.Lists; +import com.iformall.domain.dto.WxCreditHistoryDto; +import com.iformall.domain.po.*; +import com.iformall.domain.vo.WxCreditHistoryVo; +import com.iformall.enums.EnumUserType; +import com.iformall.mapper.*; +import com.iformall.service.WxCreditHistoryService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.iformall.common.IdWorker; + +@Service +public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { + + @Autowired + WxCreditHistoryMapper wxCreditHistoryMapper; + + @Autowired + WxCUserMapper wxCUserMapper; + + @Autowired + WxCUserBasicInfoMapper wxCUserBasicInfoMapper; + + @Autowired + WxMerchantBUserMapper wxMerchantBUserMapper; + + @Autowired + MallUserInfoMapper mallUserInfoMapper; + + @Override + public PageInfo listAsPage(WxCreditHistory record, Integer pageIndex, Integer pageSize) { + return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCreditHistoryMapper.findList(record)); + } + + @Override + public PageInfo listAsPageMore(WxCreditHistory record, Integer pageIndex, Integer pageSize) { + PageHelper.startPage(pageIndex, pageSize); + List wxCreditHistoryVoList = wxCreditHistoryMapper.findListMore(record); + if (wxCreditHistoryVoList == null || wxCreditHistoryVoList.size() == 0) { + return new PageInfo<>(wxCreditHistoryVoList); + } + List cUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); + List cUserBasicIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.CUSERBASIC.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); + List bUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.BUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); + List mallUserIds = wxCreditHistoryVoList.stream().filter(a -> a.getOperatorType().equals(EnumUserType.MALLUSER.getCode())).map(WxCreditHistoryVo::getOperatorId).collect(Collectors.toList()); + List wxCUserList = Lists.newArrayList(); + List wxCUserBasicInfoList = Lists.newArrayList(); + List wxMerchantBUserList = Lists.newArrayList(); + List mallUserInfoList = Lists.newArrayList(); + if (cUserIds != null && cUserIds.size() > 0) { + WxCUser wxUser = new WxCUser(); + wxUser.setIds(cUserIds); + wxCUserList = wxCUserMapper.findList(wxUser); + } + if (cUserBasicIds != null && cUserBasicIds.size() > 0) { + WxCUserBasicInfo wxCUserBasicInfo = new WxCUserBasicInfo(); + wxCUserBasicInfo.setIds(cUserBasicIds); + wxCUserBasicInfoList = wxCUserBasicInfoMapper.findList(wxCUserBasicInfo); + } + if (bUserIds != null && bUserIds.size() > 0) { + WxMerchantBUser wxMerchantBUser = new WxMerchantBUser(); + wxMerchantBUser.setIds(bUserIds); + wxMerchantBUserList = wxMerchantBUserMapper.findList(wxMerchantBUser); + } + if (mallUserIds != null && mallUserIds.size() > 0) { + MallUserInfo mallUserInfo = new MallUserInfo(); + mallUserInfo.setIds(mallUserIds); + mallUserInfoList = mallUserInfoMapper.findList(mallUserInfo); + } + for (WxCreditHistoryVo credit : wxCreditHistoryVoList) { + if (wxCUserList != null && wxCUserList.size() > 0) { + wxCUserList.stream().forEach(cUser->{ + if (cUser.getId().longValue() == credit.getOperatorId().longValue()) { + credit.setOperator(cUser.getNickName()); + } + }); + } + if (wxCUserBasicInfoList != null && wxCUserBasicInfoList.size() > 0) { + wxCUserBasicInfoList.stream().forEach(cUserBasicInfo->{ + if (cUserBasicInfo.getId().longValue() == credit.getOperatorId().longValue()) { + credit.setOperator(cUserBasicInfo.getNickName()); + } + }); + } + if (wxMerchantBUserList != null && wxMerchantBUserList.size() > 0) { + wxMerchantBUserList.stream().forEach(bUser->{ + if (bUser.getId().longValue() == credit.getOperatorId().longValue()) { + credit.setOperator(bUser.getName()); + } + }); + } + if (mallUserInfoList != null && mallUserInfoList.size() > 0) { + mallUserInfoList.stream().forEach(mallUser->{ + if (mallUser.getId().longValue() == credit.getOperatorId().longValue()) { + credit.setOperator(mallUser.getName()); + } + }); + } + } + return new PageInfo<>(wxCreditHistoryVoList); + } + + @Override + public WxCreditHistory getById(Long id) { + return wxCreditHistoryMapper.selectByPrimaryKey(id); + } + + @Override + public void saveOrUpdate(WxCreditHistory record) { + if (record.getId() == null) { + //record.setId(UUID.randomUUID().toString().replaceAll("-", "")); + final IdWorker idWorker = IdWorker.get(); + record.setId(idWorker.nextId()); + wxCreditHistoryMapper.insertSelective(record); + } else { + wxCreditHistoryMapper.updateByPrimaryKeySelective(record); + } + } + + @Override + public void deleteById(Long id) { + wxCreditHistoryMapper.deleteByPrimaryKey(id); + } + + + + + + + + +} diff --git a/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml b/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml new file mode 100644 index 000000000..ced792c95 --- /dev/null +++ b/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml @@ -0,0 +1,122 @@ + + + + + + + + + + + + + + + + + + + + + + `id`,`tenant_id`,`c_user_id`,`credit_amount`,`credit_num`,`credit_type`,`credate_date`,`receipt_url`,`operator_type`,`operator_id`,`merchant_id`,`coupon_id`,`business_id`,`spend` + + + + where 1 = 1 + + and `id` = #{id} + + + and `c_user_id` = #{cUserId} + + + and `credit_amount` = #{creditAmount} + + + and `credit_num` = #{creditNum} + + + and `credit_type` = #{creditType} + + + and `receipt_url` like concat('%', #{receiptUrl},'%') + + + and `operator_type` = #{operatorType} + + + and `operator_id` = #{operatorId} + + + and `merchant_id` = #{merchantId} + + + and `coupon_id` = #{couponId} + + + and `business_id` = #{businessId} + + + and `spend` = #{spend} + + + and id in + + #{idItem} + + + order by ${sortColumns} + + + + where 1 = 1 + + and basic.name like concat('%', #{name},'%') + + + and basic.phone like concat('%', #{phone},'%') + + + and credit.create_date >= #{startTime} + + + and credit.create_date < #{endTime} + + + and credit.tenant_id = #{tenantId} + + + + + + + + +