| @@ -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); | |||||
| } | |||||
| } | |||||
| @@ -28,3 +28,38 @@ CREATE TABLE `wx_cash_back_activity_item` ( | |||||
| PRIMARY KEY (`id`) | PRIMARY KEY (`id`) | ||||
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='卡券'; | ) 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='卡券'; | |||||
| @@ -39,4 +39,16 @@ public class WxCashBackActivity extends TenantEntity { | |||||
| @io.swagger.annotations.ApiModelProperty(value = "最低订单金额", name = "limitMoney") | @io.swagger.annotations.ApiModelProperty(value = "最低订单金额", name = "limitMoney") | ||||
| private Integer 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; | |||||
| } | } | ||||
| @@ -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; | |||||
| } | |||||
| @@ -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; | |||||
| } | |||||
| @@ -4,14 +4,14 @@ package com.iformall.enums; | |||||
| /** | /** | ||||
| * @author gongbiao | * @author gongbiao | ||||
| */ | */ | ||||
| public enum EnumCashBackActivityItemStatus { | |||||
| public enum EnumCashBackActivityRecordStatus { | |||||
| AUDTING(0, "审核中"), | AUDTING(0, "审核中"), | ||||
| AUDI_SUCCESS(1, "审批通过"), | AUDI_SUCCESS(1, "审批通过"), | ||||
| AUDT_FAIL(2, "审批拒绝"); | 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)) { | if (value.getCode().equals(code)) { | ||||
| return value; | return value; | ||||
| } | } | ||||
| @@ -22,7 +22,7 @@ public enum EnumCashBackActivityItemStatus { | |||||
| private Integer code; | private Integer code; | ||||
| private String message; | private String message; | ||||
| EnumCashBackActivityItemStatus(Integer code, String message) { | |||||
| EnumCashBackActivityRecordStatus(Integer code, String message) { | |||||
| this.code = code; | this.code = code; | ||||
| this.message = message; | this.message = message; | ||||
| } | } | ||||
| @@ -12,4 +12,6 @@ public interface WxCashBackActivityItemMapper extends CommonMapper<WxCashBackAct | |||||
| WxCashBackActivityItem selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | WxCashBackActivityItem selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | ||||
| List<WxCashBackActivityItem> findList(WxCashBackActivityItem wxCashBackActivity); | List<WxCashBackActivityItem> findList(WxCashBackActivityItem wxCashBackActivity); | ||||
| Integer itemCount(WxCashBackActivityItem wxCashBackActivity); | |||||
| } | } | ||||
| @@ -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); | |||||
| } | |||||
| @@ -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,6 +5,7 @@ import java.util.List; | |||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.WxCashBackActivity; | import com.iformall.domain.po.WxCashBackActivity; | ||||
| import com.iformall.domain.po.WxCashBackActivityItem; | import com.iformall.domain.po.WxCashBackActivityItem; | ||||
| import com.iformall.enums.EnumCashBackActivityRecordStatus; | |||||
| public interface WxCashBackActivityService { | public interface WxCashBackActivityService { | ||||
| @@ -20,6 +21,10 @@ public interface WxCashBackActivityService { | |||||
| PageInfo<WxCashBackActivityItem> listActivityItemAsPage(WxCashBackActivityItem record, Integer pageIndex, Integer pageSize); | PageInfo<WxCashBackActivityItem> listActivityItemAsPage(WxCashBackActivityItem record, Integer pageIndex, Integer pageSize); | ||||
| int getItemCount(WxCashBackActivity record); | |||||
| int getRecordCount(WxCashBackActivity record,EnumCashBackActivityRecordStatus status); | |||||
| int getMerchantCount(WxCashBackActivity record); | |||||
| /** | /** | ||||
| * 根据Id获得实体 | * 根据Id获得实体 | ||||
| * | * | ||||
| @@ -4,8 +4,13 @@ import com.github.pagehelper.PageHelper; | |||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.domain.po.WxCashBackActivity; | import com.iformall.domain.po.WxCashBackActivity; | ||||
| import com.iformall.domain.po.WxCashBackActivityItem; | 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.WxCashBackActivityItemMapper; | ||||
| import com.iformall.mapper.WxCashBackActivityMapper; | import com.iformall.mapper.WxCashBackActivityMapper; | ||||
| import com.iformall.mapper.WxCashBackActivityMerchantMapper; | |||||
| import com.iformall.mapper.WxCashBackActivityRecordMapper; | |||||
| import com.iformall.service.WxCashBackActivityService; | import com.iformall.service.WxCashBackActivityService; | ||||
| import org.slf4j.Logger; | import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | import org.slf4j.LoggerFactory; | ||||
| @@ -22,6 +27,10 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService | |||||
| WxCashBackActivityMapper wxCashBackActivityMapper; | WxCashBackActivityMapper wxCashBackActivityMapper; | ||||
| @Autowired | @Autowired | ||||
| WxCashBackActivityItemMapper wxCashBackActivityItemMapper; | WxCashBackActivityItemMapper wxCashBackActivityItemMapper; | ||||
| @Autowired | |||||
| WxCashBackActivityRecordMapper wxCashBackActivityRecordMapper; | |||||
| @Autowired | |||||
| WxCashBackActivityMerchantMapper wxCashBackActivityMerchantMapper; | |||||
| @Override | @Override | ||||
| public PageInfo<WxCashBackActivity> listActivityAsPage(WxCashBackActivity record, Integer pageIndex, Integer pageSize) { | 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) { | public PageInfo<WxCashBackActivityItem> listActivityItemAsPage(WxCashBackActivityItem record, Integer pageIndex, Integer pageSize) { | ||||
| return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCashBackActivityItemMapper.findList(record)); | 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 | @Override | ||||
| public WxCashBackActivity getActivityById(Long id,String tenantId) { | public WxCashBackActivity getActivityById(Long id,String tenantId) { | ||||
| @@ -56,5 +73,26 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService | |||||
| return wxCashBackActivityItemMapper.findList(ai); | 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); | |||||
| } | |||||
| } | } | ||||
| @@ -67,5 +67,9 @@ | |||||
| select <include refid="allColumns" /> from wx_cash_back_activity_item | select <include refid="allColumns" /> from wx_cash_back_activity_item | ||||
| <include refid="dynamicWhereConditions" /> | <include refid="dynamicWhereConditions" /> | ||||
| </select> | </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> | </mapper> | ||||
| @@ -39,6 +39,14 @@ | |||||
| <if test=" null != createDateEnd"> | <if test=" null != createDateEnd"> | ||||
| and `create_date` <= #{createDateEnd} | and `create_date` <= #{createDateEnd} | ||||
| </if> | </if> | ||||
| <if test=" 1 == validTime"> | |||||
| and end_time >= now() | |||||
| </if> | |||||
| <if test=" 0 == validTime"> | |||||
| and end_time <= now() | |||||
| </if> | |||||
| <if test=" null != name "> | <if test=" null != name "> | ||||
| and `name` like concat('%', #{name},'%') | and `name` like concat('%', #{name},'%') | ||||
| @@ -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> | |||||
| @@ -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` >= #{createDateBegin} | |||||
| </if> | |||||
| <if test=" null != createDateEnd"> | |||||
| and `create_date` <= #{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> | |||||