winter 2 лет назад
Родитель
Сommit
a642d95604
15 измененных файлов: 542 добавлений и 4 удалений
  1. +98
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxCashBackActivityController.java
  2. +35
    -0
      mallinkAdmin/src/main/resources/db/migration/V20240200001.sql
  3. +12
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxCashBackActivity.java
  4. +27
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxCashBackActivityMerchant.java
  5. +61
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxCashBackActivityRecord.java
  6. +4
    -4
      mallinkService/src/main/java/com/iformall/enums/EnumCashBackActivityRecordStatus.java
  7. +2
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxCashBackActivityItemMapper.java
  8. +20
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxCashBackActivityMerchantMapper.java
  9. +20
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxCashBackActivityRecordMapper.java
  10. +5
    -0
      mallinkService/src/main/java/com/iformall/service/WxCashBackActivityService.java
  11. +38
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java
  12. +4
    -0
      mallinkService/src/main/resources/mapper/WxCashBackActivityItemMapper.xml
  13. +8
    -0
      mallinkService/src/main/resources/mapper/WxCashBackActivityMapper.xml
  14. +71
    -0
      mallinkService/src/main/resources/mapper/WxCashBackActivityMerchantMapper.xml
  15. +137
    -0
      mallinkService/src/main/resources/mapper/WxCashBackActivityRecordMapper.xml

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

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

import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData;
import com.iformall.controller.base.BaseController;
import com.iformall.domain.po.WxCashBackActivity;
import com.iformall.domain.po.WxCashOut;
import com.iformall.domain.po.base.BaseEntity.SortField;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.enums.EnumCashBackActivityRecordStatus;
import com.iformall.enums.EnumCashBackActivityStatus;
import com.iformall.enums.EnumCashOutStatus;
import com.iformall.enums.EnumYesOrNo;
import com.iformall.service.WxCUserService;
import com.iformall.service.WxCashBackActivityService;
import com.iformall.service.WxCashOutService;
import com.iformall.service.WxMallService;
import com.iformall.service.WxMerchantService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;

/**
* @author alascor
*
*/
@RestController
@RequestMapping("/cashback")
@Api(description = "现金返现活动相关接口")
public class WxCashBackActivityController extends BaseController {
private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
private WxCashBackActivityService wxCashBackActivityService;
@Autowired
WxCUserService wxCUserService;
@Autowired
WxMerchantService wxMerchantService;
@Autowired
WxMallService wxMallService;
@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 WxCashBackActivity wxCashBackActivity, Integer pageNum, Integer pageSize) {
if (null == wxCashBackActivity) wxCashBackActivity = new WxCashBackActivity();
TenantEntity tenantInfo = getTenantInfo();
wxCashBackActivity.updateTenantInfo(tenantInfo);
if (null != wxCashBackActivity.getStatus() && wxCashBackActivity.getStatus().intValue()>0) {
//已上架
if (wxCashBackActivity.getStatus().intValue() == EnumCashBackActivityStatus.ON_LINE.getCode().intValue()) {
wxCashBackActivity.setValidTime(EnumYesOrNo.YES.getCode());
}
//已过期
if (wxCashBackActivity.getStatus().intValue() == 2) {
wxCashBackActivity.setStatus(null);
wxCashBackActivity.setValidTime(EnumYesOrNo.NO.getCode());
}
}
wxCashBackActivity.setSortColumns(SortField.CreateDate_DESC);
final PageInfo<WxCashBackActivity> page = wxCashBackActivityService.listActivityAsPage(wxCashBackActivity, pageNum, pageSize);
if (null != page && null != page.getList()) {
for (WxCashBackActivity a : page.getList()) {
a.setItemCount(wxCashBackActivityService.getItemCount(a));
int allRecordCount = wxCashBackActivityService.getRecordCount(a, null);
int successRecordCount = wxCashBackActivityService.getRecordCount(a, EnumCashBackActivityRecordStatus.AUDI_SUCCESS);
a.setRecordCount(allRecordCount);
a.setAuditSuccessRecordCount(successRecordCount);
a.setMerchantCount(wxCashBackActivityService.getMerchantCount(a));
}
}
return new ResultData(page);
}
@ApiOperation("查询当前提现信息")
@GetMapping("getInfo")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", paramType = "query", required = true)})
public ResultData getCurrentCashOutData(Long id) {
TenantEntity tenantInfo = getTenantInfo();
WxCashOut out = wxCashOutService.getById(id, tenantInfo.getTenantId());
return new ResultData(out);
}
}

+ 35
- 0
mallinkAdmin/src/main/resources/db/migration/V20240200001.sql Просмотреть файл

@@ -28,3 +28,38 @@ CREATE TABLE `wx_cash_back_activity_item` (
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='卡券';

CREATE TABLE `wx_cash_back_activity_record` (
`id` bigint(20) NOT NULL COMMENT '主键ID',
`tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID',
`parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID',
`activity_id` bigint(20) NOT NULL COMMENT '活动',
`item_id` bigint(20) DEFAULT NULL COMMENT '选项',
`order_no` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '订单号',
`order_money` decimal(10,3) DEFAULT NULL COMMENT '订单金额',
`cus_name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户姓名',
`create_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
`phone` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '客户电话',
`address` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '客户地址',
`audit_remark` varchar(300) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '审批意见',
`audit_status` int(1) DEFAULT NULL COMMENT '审批状态',
`cash_rate` decimal(10,3) DEFAULT NULL COMMENT '返现比率',
`cash_money` decimal(10,3) DEFAULT NULL COMMENT '返现金额',
`mall_cash_money` decimal(10,3) DEFAULT NULL COMMENT '商管承担返现金额',
`merchant_cash_money` decimal(10,3) DEFAULT NULL COMMENT '商户承担返现金额',
`merchant_id` bigint(20) NOT NULL COMMENT '商户编号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='卡券';


CREATE TABLE `wx_cash_back_activity_merchant` (
`id` bigint(20) NOT NULL COMMENT '主键ID',
`tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '租户ID',
`parent_tenant_id` varchar(5) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '父租户ID',
`activity_id` bigint(20) NOT NULL COMMENT '活动编号',
`merchant_id` bigint(20) NOT NULL COMMENT '商户编号',
`create_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_date` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='卡券';


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

@@ -39,4 +39,16 @@ public class WxCashBackActivity extends TenantEntity {
@io.swagger.annotations.ApiModelProperty(value = "最低订单金额", name = "limitMoney")
private Integer limitMoney;
@TableField(exist = false)
private Integer validTime;
@TableField(exist = false)
private Integer itemCount;
@TableField(exist = false)
private Integer recordCount;
@TableField(exist = false)
private Integer merchantCount;
@TableField(exist = false)
private Integer auditSuccessRecordCount;
}

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

@@ -0,0 +1,27 @@
package com.iformall.domain.po;

import com.baomidou.mybatisplus.annotation.TableName;
import com.iformall.domain.po.base.TenantEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.Date;

@TableName(value = "wx_cash_back_activity_merchant")
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class WxCashBackActivityMerchant extends TenantEntity {

private Long id;

@io.swagger.annotations.ApiModelProperty(value = "创建时间", name = "createDate")
private Date createDate;
@io.swagger.annotations.ApiModelProperty(value = "更新时间", name = "updateDate")
private Date updateDate;
@io.swagger.annotations.ApiModelProperty(value = "名称", name = "activityId")
private Long activityId;
@io.swagger.annotations.ApiModelProperty(value = "最低订单金额", name = "merchantId")
private Long merchantId;
}

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

@@ -0,0 +1,61 @@
package com.iformall.domain.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.iformall.domain.po.base.TenantEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@TableName(value = "wx_cash_back_activity_record")
@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class WxCashBackActivityRecord extends TenantEntity {

private Long id;

@io.swagger.annotations.ApiModelProperty(value = "创建时间", name = "createDate")
private Date createDate;
@TableField(exist = false)
private Date createDateBegin;
@TableField(exist = false)
private Date createDateEnd;
@io.swagger.annotations.ApiModelProperty(value = "更新时间", name = "updateDate")
private Date updateDate;
@io.swagger.annotations.ApiModelProperty(value = "活动", name = "activityId")
private Long activityId;
@io.swagger.annotations.ApiModelProperty(value = "选项", name = "itemId")
private Long itemId;
@io.swagger.annotations.ApiModelProperty(value = "订单号", name = "orderNo")
private String orderNo;
@io.swagger.annotations.ApiModelProperty(value = "订单金额", name = "orderMoney")
private BigDecimal orderMoney;
@io.swagger.annotations.ApiModelProperty(value = "客户姓名", name = "cusName")
private String cusName;
@io.swagger.annotations.ApiModelProperty(value = "客户电话", name = "phone")
private String phone;
@io.swagger.annotations.ApiModelProperty(value = "客户地址", name = "address")
private String address;
@io.swagger.annotations.ApiModelProperty(value = "EnumCashBackActivityRecordStatus", name = "auditStatus")
private Integer auditStatus;
@TableField(exist = false)
private List<Integer> auditStatusList;
@io.swagger.annotations.ApiModelProperty(value = "审核内容", name = "auditRemark")
private String auditRemark;
@io.swagger.annotations.ApiModelProperty(value = "返现比率", name = "cashRate")
private BigDecimal cashRate;
@io.swagger.annotations.ApiModelProperty(value = "返现金额", name = "cashMoney")
private BigDecimal cashMoney;
@io.swagger.annotations.ApiModelProperty(value = "商管承担返现金额", name = "mallCashMoney")
private BigDecimal mallCashMoney;
@io.swagger.annotations.ApiModelProperty(value = "商户承担返现金额", name = "merchantCashMoney")
private BigDecimal merchantCashMoney;
@io.swagger.annotations.ApiModelProperty(value = "商户id", name = "merchantId")
private Long merchantId;
}

mallinkService/src/main/java/com/iformall/enums/EnumCashBackActivityItemStatus.java → mallinkService/src/main/java/com/iformall/enums/EnumCashBackActivityRecordStatus.java Просмотреть файл

@@ -4,14 +4,14 @@ package com.iformall.enums;
/**
* @author gongbiao
*/
public enum EnumCashBackActivityItemStatus {
public enum EnumCashBackActivityRecordStatus {

AUDTING(0, "审核中"),
AUDI_SUCCESS(1, "审批通过"),
AUDT_FAIL(2, "审批拒绝");

public static EnumCashBackActivityItemStatus getEnum(Integer code) {
for (EnumCashBackActivityItemStatus value : values()) {
public static EnumCashBackActivityRecordStatus getEnum(Integer code) {
for (EnumCashBackActivityRecordStatus value : values()) {
if (value.getCode().equals(code)) {
return value;
}
@@ -22,7 +22,7 @@ public enum EnumCashBackActivityItemStatus {
private Integer code;
private String message;

EnumCashBackActivityItemStatus(Integer code, String message) {
EnumCashBackActivityRecordStatus(Integer code, String message) {
this.code = code;
this.message = message;
}

+ 2
- 0
mallinkService/src/main/java/com/iformall/mapper/WxCashBackActivityItemMapper.java Просмотреть файл

@@ -12,4 +12,6 @@ public interface WxCashBackActivityItemMapper extends CommonMapper<WxCashBackAct
WxCashBackActivityItem selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
List<WxCashBackActivityItem> findList(WxCashBackActivityItem wxCashBackActivity);
Integer itemCount(WxCashBackActivityItem wxCashBackActivity);
}

+ 20
- 0
mallinkService/src/main/java/com/iformall/mapper/WxCashBackActivityMerchantMapper.java Просмотреть файл

@@ -0,0 +1,20 @@
package com.iformall.mapper;

import com.iformall.common.CommonMapper;
import com.iformall.domain.po.WxCashBackActivityMerchant;

import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface WxCashBackActivityMerchantMapper extends CommonMapper<WxCashBackActivityMerchant, Long> {

WxCashBackActivityMerchant selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
List<WxCashBackActivityMerchant> findList(WxCashBackActivityMerchant wxCashBackActivity);
void delete(WxCashBackActivityMerchant wxCashBackActivity);
int merchantCount(WxCashBackActivityMerchant wxCashBackActivity);

}

+ 20
- 0
mallinkService/src/main/java/com/iformall/mapper/WxCashBackActivityRecordMapper.java Просмотреть файл

@@ -0,0 +1,20 @@
package com.iformall.mapper;

import com.iformall.common.CommonMapper;
import com.iformall.domain.po.WxCashBackActivityRecord;

import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface WxCashBackActivityRecordMapper extends CommonMapper<WxCashBackActivityRecord, Long> {

WxCashBackActivityRecord selectById(@Param("id")Long id,@Param("tenantId")String tenantId);
List<WxCashBackActivityRecord> findList(WxCashBackActivityRecord wxCashBackActivity);
void updateStatus(WxCashBackActivityRecord wxCashBackActivity);
Integer selectCount(WxCashBackActivityRecord wxCashBackActivity);

}

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

@@ -5,6 +5,7 @@ import java.util.List;
import com.github.pagehelper.PageInfo;
import com.iformall.domain.po.WxCashBackActivity;
import com.iformall.domain.po.WxCashBackActivityItem;
import com.iformall.enums.EnumCashBackActivityRecordStatus;

public interface WxCashBackActivityService {

@@ -20,6 +21,10 @@ public interface WxCashBackActivityService {
PageInfo<WxCashBackActivityItem> listActivityItemAsPage(WxCashBackActivityItem record, Integer pageIndex, Integer pageSize);
int getItemCount(WxCashBackActivity record);
int getRecordCount(WxCashBackActivity record,EnumCashBackActivityRecordStatus status);
int getMerchantCount(WxCashBackActivity record);
/**
* 根据Id获得实体
*


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

@@ -4,8 +4,13 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.iformall.domain.po.WxCashBackActivity;
import com.iformall.domain.po.WxCashBackActivityItem;
import com.iformall.domain.po.WxCashBackActivityMerchant;
import com.iformall.domain.po.WxCashBackActivityRecord;
import com.iformall.enums.EnumCashBackActivityRecordStatus;
import com.iformall.mapper.WxCashBackActivityItemMapper;
import com.iformall.mapper.WxCashBackActivityMapper;
import com.iformall.mapper.WxCashBackActivityMerchantMapper;
import com.iformall.mapper.WxCashBackActivityRecordMapper;
import com.iformall.service.WxCashBackActivityService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -22,6 +27,10 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService
WxCashBackActivityMapper wxCashBackActivityMapper;
@Autowired
WxCashBackActivityItemMapper wxCashBackActivityItemMapper;
@Autowired
WxCashBackActivityRecordMapper wxCashBackActivityRecordMapper;
@Autowired
WxCashBackActivityMerchantMapper wxCashBackActivityMerchantMapper;

@Override
public PageInfo<WxCashBackActivity> listActivityAsPage(WxCashBackActivity record, Integer pageIndex, Integer pageSize) {
@@ -32,6 +41,14 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService
public PageInfo<WxCashBackActivityItem> listActivityItemAsPage(WxCashBackActivityItem record, Integer pageIndex, Integer pageSize) {
return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCashBackActivityItemMapper.findList(record));
}
@Override
public int getItemCount(WxCashBackActivity record) {
WxCashBackActivityItem item = new WxCashBackActivityItem();
item.setActivityId(record.getId());
item.updateTenantInfo(record);
return wxCashBackActivityItemMapper.itemCount(item);
}

@Override
public WxCashBackActivity getActivityById(Long id,String tenantId) {
@@ -56,5 +73,26 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService
return wxCashBackActivityItemMapper.findList(ai);
}

@Override
public int getRecordCount(WxCashBackActivity record, EnumCashBackActivityRecordStatus status) {
WxCashBackActivityRecord r = new WxCashBackActivityRecord();
r.setActivityId(record.getId());
r.updateTenantInfo(record);
if (null != status) {
r.setAuditStatus(status.getCode());
}
return wxCashBackActivityRecordMapper.selectCount(r);
}

@Override
public int getMerchantCount(WxCashBackActivity record) {
WxCashBackActivityMerchant m = new WxCashBackActivityMerchant();
m.setActivityId(record.getId());
m.updateTenantInfo(record);
return wxCashBackActivityMerchantMapper.merchantCount(m);
}



}

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

@@ -67,5 +67,9 @@
select <include refid="allColumns" /> from wx_cash_back_activity_item
<include refid="dynamicWhereConditions" />
</select>
<select id="itemCount" parameterType="com.iformall.domain.po.WxCashBackActivityItem" resultType="Integer">
select count(1) from wx_cash_back_activity_item where `activity_id` = #{activityId} and tenant_id=#{tenantId}
</select>

</mapper>

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

@@ -39,6 +39,14 @@
<if test=" null != createDateEnd">
and `create_date` &lt;= #{createDateEnd}
</if>
<if test=" 1 == validTime">
and end_time &gt;= now()
</if>
<if test=" 0 == validTime">
and end_time &lt;= now()
</if>

<if test=" null != name ">
and `name` like concat('%', #{name},'%')


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

@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.iformall.mapper.WxCashBackActivityMerchantMapper">
<resultMap id="BaseResultMap" type="com.iformall.domain.po.WxCashBackActivityMerchant">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" />
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" />
<result column="activity_id" jdbcType="BIGINT" property="activityId" />
<result column="merchant_id" jdbcType="BIGINT" property="merchantId" />
<result column="create_date" jdbcType="TIMESTAMP" property="createDate" />
<result column="update_date" jdbcType="TIMESTAMP" property="updateDate" />
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`activity_id`,`merchant_id`,`create_date`,`update_date`
</sql>

<sql id="dynamicWhereConditions">
where 1 = 1

<if test=" null != id ">
and `id` = #{id}
</if>

<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != activityId ">
and `activity_id` = #{activityId}
</if>
<if test=" null != merchantId ">
and `merchant_id` = #{merchantId}
</if>
<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
#{idItem}
</foreach>
</if>
<if test=" null != sortColumns"> order by ${sortColumns} </if>
</sql>

<select id="selectById" parameterType="java.util.HashMap" resultMap="BaseResultMap">
select <include refid="allColumns" /> from wx_cash_back_activity_merchant where id = #{id} and tenant_id=#{tenantId}
</select>

<select id="findList" parameterType="com.iformall.domain.po.WxCashBackActivityMerchant" resultMap="BaseResultMap">
select <include refid="allColumns" /> from wx_cash_back_activity_merchant
<include refid="dynamicWhereConditions" />
</select>

<delete id="delete" parameterType="com.iformall.domain.po.WxCashBackActivityMerchant">
delete from wx_cash_back_activity_merchant
where `activity_id` = #{activityId}
<if test=" null != merchantId ">
and `merchant_id` = #{merchantId}
</if>
</delete>
<select id="merchantCount" parameterType="com.iformall.domain.po.WxCashBackActivityMerchant" resultType="Integer">
select count(1) from wx_cash_back_activity_merchant
<include refid="dynamicWhereConditions" />
</select>

</mapper>

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

@@ -0,0 +1,137 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.iformall.mapper.WxCashBackActivityRecordMapper">
<resultMap id="BaseResultMap" type="com.iformall.domain.po.WxCashBackActivityRecord">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId" />
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" />
<result column="activity_id" jdbcType="BIGINT" property="activityId" />
<result column="item_id" jdbcType="BIGINT" property="itemId" />
<result column="order_no" jdbcType="VARCHAR" property="orderNo" />
<result column="order_money" jdbcType="DECIMAL" property="orderMoney" />
<result column="cus_name" jdbcType="VARCHAR" property="cusName" />
<result column="create_date" jdbcType="TIMESTAMP" property="createDate" />
<result column="update_date" jdbcType="TIMESTAMP" property="updateDate" />
<result column="phone" jdbcType="VARCHAR" property="phone" />
<result column="address" jdbcType="VARCHAR" property="address" />
<result column="audit_remark" jdbcType="VARCHAR" property="auditRemark" />
<result column="audit_status" jdbcType="INTEGER" property="auditStatus" />
<result column="cash_rate" jdbcType="DECIMAL" property="cashRate" />
<result column="cash_money" jdbcType="DECIMAL" property="cashMoney" />
<result column="mall_cash_money" jdbcType="DECIMAL" property="mallCashMoney" />
<result column="merchant_cash_money" jdbcType="DECIMAL" property="merchantCashMoney" />
<result column="merchant_id" jdbcType="BIGINT" property="merchantId" />
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`activity_id`,`item_id`,`order_no`,`order_money`,`cus_name`,`create_date`,`update_date`,`phone`,
`address`,`audit_remark`,`audit_status`,`cash_rate`,`cash_money`,`mall_cash_money`,`merchant_cash_money`,`merchant_id`
</sql>

<sql id="dynamicWhereConditions">
where 1 = 1

<if test=" null != id ">
and `id` = #{id}
</if>
<if test=" null != merchantId ">
and `merchant_id` = #{merchantId}
</if>
<if test=" null != activityId ">
and `activity_id` = #{activityId}
</if>
<if test=" null != itemId ">
and `item_id` = #{itemId}
</if>

<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != createDateBegin">
and `create_date` &gt;= #{createDateBegin}
</if>
<if test=" null != createDateEnd">
and `create_date` &lt;= #{createDateEnd}
</if>

<if test=" null != cusName ">
and `cus_name` like concat('%', #{cusName},'%')
</if>
<if test=" null != phone ">
and `phone` like concat('%', #{phone},'%')
</if>
<if test=" null != orderNo ">
and `order_no` like concat('%', #{orderNo},'%')
</if>
<if test=" null != auditStatus ">
and `audit_status` = #{auditStatus}
</if>
<if test=" null != auditStatusList ">
and audit_status in
<foreach collection="auditStatusList" index="index" item="statusItem" open="(" separator="," close=")">
#{statusItem}
</foreach>
</if>

<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
#{idItem}
</foreach>
</if>
<if test=" null != sortColumns"> order by ${sortColumns} </if>
</sql>

<select id="selectById" parameterType="java.util.HashMap" resultMap="BaseResultMap">
select <include refid="allColumns" /> from wx_cash_back_activity_record where id = #{id} and tenant_id=#{tenantId}
</select>

<select id="findList" parameterType="com.iformall.domain.po.WxCashBackActivityRecord" resultMap="BaseResultMap">
select <include refid="allColumns" /> from wx_cash_back_activity_record
<include refid="dynamicWhereConditions" />
</select>

<update id="updateStatus" parameterType="com.iformall.domain.po.WxCashBackActivityRecord">
update wx_cash_back_activity_record
set `audit_status` = #{auditStatus},
<if test=" null != auditRemark and '' != auditRemark">
`audit_remark` = #{auditRemark},
</if>
<if test=" null != cashRate">
`cash_rate` = #{cashRate},
</if>
<if test=" null != cashMoney">
`cash_money` = #{cashMoney},
</if>
<if test=" null != mallCashMoney">
`mall_cash_money` = #{mallCashMoney},
</if>
<if test=" null != merchantCashMoney">
`merchant_cash_money` = #{merchantCashMoney},
</if>
`update_date` = #{updateDate}
where id=#{id}
<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
</update>

<select id="selectCount" parameterType="com.iformall.domain.po.WxCashBackActivityRecord" resultType="Integer">
select count(1) from wx_cash_back_activity_record
<include refid="dynamicWhereConditions" />
</select>

</mapper>

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