提交 2a5ed7ca authored 作者: 000516's avatar 000516

AP中添加档期陈列、零食陈列分页查询;档期计划添加促销口味是否执行

上级 c9d4d5d9
...@@ -17,8 +17,12 @@ import java.util.Set; ...@@ -17,8 +17,12 @@ import java.util.Set;
/** /**
* @author : liqiulin * @author : liqiulin
* @date : 2025-09-08 13 * @date : 2025-09-08 13
* @describe :营销中心-活动计划-陈列查询 * @describe :营销中心-活动计划
* 常规陈列
* 档期陈列
* 零食陈列
*/ */
@RequiresPermissions("promotion:display_schedule:list")
@RestController @RestController
@RequestMapping("/sales/ap_display/query") @RequestMapping("/sales/ap_display/query")
public class ApDisplayQueryController { public class ApDisplayQueryController {
...@@ -26,12 +30,39 @@ public class ApDisplayQueryController { ...@@ -26,12 +30,39 @@ public class ApDisplayQueryController {
private IApDisplayQueryService apDisplayQueryService; private IApDisplayQueryService apDisplayQueryService;
/** /**
* 查询条件:经销商dealer_code、计划月份sales_month、城市经理city_manager、 * 常规陈列
* @return
*/ */
@RequiresPermissions("promotion:display_schedule:list") // @RequiresPermissions("promotion:display_schedule:list")
@GetMapping("/page") @GetMapping("/page")
public PageInfo page(SalesApRequest salesApRequest){ public PageInfo page(SalesApRequest salesApRequest){
checkPermission(salesApRequest);
return apDisplayQueryService.page(salesApRequest);
}
/**
* 档期陈列
*/
// @RequiresPermissions("promotion:display_schedule:list")
@GetMapping("/pro_page")
public PageInfo proPage(SalesApRequest salesApRequest){
checkPermission(salesApRequest);
return apDisplayQueryService.proPage(salesApRequest);
}
/**
* 零食陈列
*/
// @RequiresPermissions("promotion:display_schedule:list")
@GetMapping("/snack_page")
public PageInfo snackPage(SalesApRequest salesApRequest){
checkPermission(salesApRequest);
return apDisplayQueryService.snackPage(salesApRequest);
}
/**
* 判断登录人权限
*/
private void checkPermission(SalesApRequest salesApRequest){
// 判断登录人权限 // 判断登录人权限
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
Set<String> roles = loginUser.getRoles(); Set<String> roles = loginUser.getRoles();
...@@ -43,6 +74,5 @@ public class ApDisplayQueryController { ...@@ -43,6 +74,5 @@ public class ApDisplayQueryController {
salesApRequest.setDeptName(deptName) salesApRequest.setDeptName(deptName)
.setNickName(nickname); .setNickName(nickname);
} }
return apDisplayQueryService.page(salesApRequest);
} }
} }
package com.sfa.operation.domain.sales.dao;
import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.operation.domain.sales.wq.SalesApWq;
/**
* @author : liqiulin
* @date : 2025-09-26 13
* @describe :
*/
public interface ISalesApPromotionDisplayDao {
PageInfo page(SalesApWq salesApWq);
}
package com.sfa.operation.domain.sales.dao;
import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.operation.domain.sales.wq.SalesApWq;
/**
* @author : liqiulin
* @date : 2025-09-26 13
* @describe :
*/
public interface ISalesApSnacksDisplayDao {
PageInfo page(SalesApWq salesApWq);
}
package com.sfa.operation.domain.sales.dao.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sfa.common.core.utils.StringUtils;
import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.common.core.web.page.TableSupport;
import com.sfa.operation.domain.sales.dao.ISalesApPromotionDisplayDao;
import com.sfa.operation.domain.sales.entity.SalesApPromotionDisplay;
import com.sfa.operation.domain.sales.mapper.SalesApPromotionDisplayMapper;
import com.sfa.operation.domain.sales.wq.SalesApWq;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* @author : liqiulin
* @date : 2025-09-26 13
* @describe :
*/
@DS("bi")
@Service
public class SalesApPromotionDisplayDaoImpl implements ISalesApPromotionDisplayDao {
@Autowired
private SalesApPromotionDisplayMapper salesApPromotionDisplayMapper;
@Override
public PageInfo page(SalesApWq salesApWq) {
LambdaQueryWrapper<SalesApPromotionDisplay> qw = buildWq(salesApWq);
Page<SalesApPromotionDisplay> page = salesApPromotionDisplayMapper.selectPage(TableSupport.pageI(), qw);
return new PageInfo<>(page);
}
private LambdaQueryWrapper<SalesApPromotionDisplay> buildWq(SalesApWq salesApWq) {
LambdaQueryWrapper<SalesApPromotionDisplay> qw = new LambdaQueryWrapper<>();
if (Objects.nonNull(salesApWq.getSalesMonth())){
qw.eq(SalesApPromotionDisplay::getSalesMonth, salesApWq.getSalesMonth());
}
if (StringUtils.isNotBlank(salesApWq.getDeptName())){
qw.and(
wrapper -> wrapper.eq(SalesApPromotionDisplay::getRegionName, salesApWq.getDeptName())
.or()
.eq(SalesApPromotionDisplay::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and(
wrapper -> wrapper.eq(SalesApPromotionDisplay::getRegionManager, salesApWq.getNickName())
.or()
.eq(SalesApPromotionDisplay::getDistrictManager, salesApWq.getNickName())
.or()
.eq(SalesApPromotionDisplay::getCityManager, salesApWq.getNickName())
);
}
return qw;
}
}
...@@ -10,7 +10,6 @@ import com.sfa.common.core.utils.StringUtils; ...@@ -10,7 +10,6 @@ import com.sfa.common.core.utils.StringUtils;
import com.sfa.common.core.web.domain.PageInfo; import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.common.core.web.page.TableSupport; import com.sfa.common.core.web.page.TableSupport;
import com.sfa.operation.domain.sales.dao.ISalesApPromotionDao; import com.sfa.operation.domain.sales.dao.ISalesApPromotionDao;
import com.sfa.operation.domain.sales.entity.SalesApDisplay;
import com.sfa.operation.domain.sales.entity.SalesApPromotion; import com.sfa.operation.domain.sales.entity.SalesApPromotion;
import com.sfa.operation.domain.sales.mapper.SalesApPromotionMapper; import com.sfa.operation.domain.sales.mapper.SalesApPromotionMapper;
import com.sfa.operation.domain.sales.wq.SalesApWq; import com.sfa.operation.domain.sales.wq.SalesApWq;
...@@ -37,8 +36,7 @@ public class SalesApPromotionImplDao implements ISalesApPromotionDao { ...@@ -37,8 +36,7 @@ public class SalesApPromotionImplDao implements ISalesApPromotionDao {
public PageInfo page(SalesApWq salesApWq) { public PageInfo page(SalesApWq salesApWq) {
LambdaQueryWrapper<SalesApPromotion> qw = buildWq(salesApWq); LambdaQueryWrapper<SalesApPromotion> qw = buildWq(salesApWq);
Page<SalesApPromotion> salesApDisplayPage = salesApPromotionMapper.selectPage(TableSupport.pageI(), qw); Page<SalesApPromotion> salesApDisplayPage = salesApPromotionMapper.selectPage(TableSupport.pageI(), qw);
PageInfo pageInfo = new PageInfo(salesApDisplayPage); return new PageInfo(salesApDisplayPage);
return pageInfo;
} }
@Override @Override
......
package com.sfa.operation.domain.sales.dao.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sfa.common.core.utils.StringUtils;
import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.common.core.web.page.TableSupport;
import com.sfa.operation.domain.sales.dao.ISalesApSnacksDisplayDao;
import com.sfa.operation.domain.sales.entity.SalesApSnacksDisplay;
import com.sfa.operation.domain.sales.mapper.SalesApSnacksDisplayMapper;
import com.sfa.operation.domain.sales.wq.SalesApWq;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* @author : liqiulin
* @date : 2025-09-26 13
* @describe :
*/
@DS("bi")
@Service
public class SalesApSnacksDisplayDaoImpl implements ISalesApSnacksDisplayDao {
@Autowired
private SalesApSnacksDisplayMapper salesapsnackdsDisplayMapper;
@Override
public PageInfo page(SalesApWq salesApWq) {
LambdaQueryWrapper<SalesApSnacksDisplay> qw = buildWq(salesApWq);
Page<SalesApSnacksDisplay> page = salesapsnackdsDisplayMapper.selectPage(TableSupport.pageI(), qw);
return new PageInfo(page);
}
private LambdaQueryWrapper<SalesApSnacksDisplay> buildWq(SalesApWq salesApWq) {
LambdaQueryWrapper<SalesApSnacksDisplay> qw = new LambdaQueryWrapper<>();
if (Objects.nonNull(salesApWq.getSalesMonth())){
qw.eq(SalesApSnacksDisplay::getSalesMonth, salesApWq.getSalesMonth());
}
if (StringUtils.isNotBlank(salesApWq.getDeptName())){
qw.and(
wrapper -> wrapper.eq(SalesApSnacksDisplay::getRegionName, salesApWq.getDeptName())
.or()
.eq(SalesApSnacksDisplay::getDistrictName, salesApWq.getDeptName())
);
}
if (StringUtils.isNotBlank(salesApWq.getNickName())){
qw.and(
wrapper -> wrapper.eq(SalesApSnacksDisplay::getRegionManager, salesApWq.getNickName())
.or()
.eq(SalesApSnacksDisplay::getDistrictManager, salesApWq.getNickName())
.or()
.eq(SalesApSnacksDisplay::getCityManager, salesApWq.getNickName())
);
}
return qw;
}
}
...@@ -302,11 +302,6 @@ public class SalesApDisplay implements Serializable { ...@@ -302,11 +302,6 @@ public class SalesApDisplay implements Serializable {
*/ */
private String regularDisplayExecuted; private String regularDisplayExecuted;
/**
* 综合标签-拜访辅助列
*/
private String visitAssistTag;
/** /**
* 付费陈列- 是否 * 付费陈列- 是否
*/ */
......
...@@ -142,6 +142,11 @@ public class SalesApPromotion implements Serializable { ...@@ -142,6 +142,11 @@ public class SalesApPromotion implements Serializable {
*/ */
private String specExecutionStatus; private String specExecutionStatus;
/**
* 促销口味是否执行
*/
private String flavorExecutionStatus;
/** /**
* 合计费用 * 合计费用
*/ */
......
package com.sfa.operation.domain.sales.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
/**
* 营销中心-活动计划-档期陈列(计划+执行)
* @TableName sales_ap_promotion_display
*/
@TableName(value ="sales_ap_promotion_display")
@Data
public class SalesApPromotionDisplay implements Serializable {
/**
* 主键ID
*/
@TableId(type = IdType.AUTO)
private Long sapdId;
private Date salesMonth;
/**
* 销售大区
*/
private String regionName;
/**
* 销售战区
*/
private String districtName;
/**
* 经销商-省份
*/
private String dealerProvince;
/**
* 经销商-城市
*/
private String dealerCity;
/**
* 经销商-代码
*/
private String dealerCode;
/**
* 经销商名称
*/
private String dealerName;
/**
* 经销商类型
*/
private String dealerType;
/**
* 开户日期
*/
private Date openingDate;
/**
* 闭户日期
*/
private Date closingDate;
/**
* 大区总监
*/
private String regionManager;
/**
* 战区经理
*/
private String districtManager;
/**
* 城市经理
*/
private String cityManager;
/**
* 系统名称
*/
private String lineName;
/**
* 系统类型
*/
private String lineType;
/**
* 渠道大类
*/
private String channelDl;
/**
* 渠道小类
*/
private String channelXl;
/**
* 系统业态
*/
private String lineLf;
/**
* 门店数
*/
private String storeCount;
/**
* 档期执行月份
*/
private String promotionExecutionMonth;
/**
* 档期计划-促销规格
*/
private String plannedPromotionSpec;
/**
* 档期计划-促销口味
*/
private String plannedPromotionFlavor;
/**
* 计划-档期规则
*/
private String plannedPromotionRules;
/**
* 计划-档期前补差天数
*/
private Integer plannedPrePromotionAdjustDays;
/**
* 计划-档期后补差天数
*/
private Integer plannedPostPromotionAdjustDays;
/**
* 计划-档期开始时间
*/
private Date plannedPromotionStartDate;
/**
* 计划-补差开始时间
*/
private Date plannedAdjustmentStartDate;
/**
* 计划-档期结束时间
*/
private Date plannedPromotionEndDate;
/**
* 计划-补差结束时间
*/
private Date plannedAdjustmentEndDate;
/**
* 计划-档期陈列开始时间
*/
private Date plannedPromotionDisplayStartDate;
/**
* 计划-档期陈列结束时间
*/
private Date plannedPromotionDisplayEndDate;
/**
* 门店编码
*/
private String storeCode;
/**
* 门店名称
*/
private String storeName;
/**
* 门店类型
*/
private String storeType;
/**
* 门店计数
*/
private String storeCountNum;
/**
* 门店地址
*/
private String storeAddress;
/**
* 计划端架-数量
*/
private Double plannedEndCapQty;
/**
* 计划端架-费用
*/
private BigDecimal plannedEndCapTotalCost;
/**
* 实际端架-数量
*/
private Double actualEndCapQty;
/**
* 实际端架-是否执行
*/
private String actualEndCapExecuted;
/**
* 计划地堆-平米数(㎡)
*/
private Double plannedFloorStackArea;
/**
* 计划地堆-数量
*/
private Integer plannedFloorStackQty;
/**
* 计划地堆-费用
*/
private BigDecimal plannedFloorStackTotalCost;
/**
* 实际地堆-平米数(㎡)
*/
private Double actualFloorStackArea;
/**
* 实际地堆-数量
*/
private Integer actualFloorStackQty;
/**
* 实际地堆是否执行
*/
private String actualFloorStackExecuted;
/**
* 计划其他陈列数量+形式
*/
private String plannedOtherDisplay;
/**
* 计划其他陈列-总费用
*/
private BigDecimal plannedOtherDisplayTotalCost;
/**
* 实际其他陈列-数量+形式
*/
private String actualOtherDisplay;
/**
* 实际其他陈列-是否执行
*/
private String actualOtherDisplayExecuted;
/**
* 合计费用-费用
*/
private BigDecimal totalCost;
/**
* 档期陈列是否执行
*/
private String promotionDisplayExecuted;
/**
* 付费陈列- 是否
*/
private String paidDisplay;
/**
* 当月拜访目标-是否
*/
private String monthlyVisitTarget;
/**
* 实际是否拜访
*/
private String monthlyVisited;
private Date createTime;
private String updateBy;
private Date updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.sfa.operation.domain.sales.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
/**
* 营销中心-活动计划-零食陈列(计划+执行)
* @TableName sales_ap_snacks_display
*/
@TableName(value ="sales_ap_snacks_display")
@Data
public class SalesApSnacksDisplay implements Serializable {
/**
* 主键ID
*/
@TableId(type = IdType.AUTO)
private Long sasdId;
private Date salesMonth;
/**
* 销售大区
*/
private String regionName;
/**
* 销售战区
*/
private String districtName;
/**
* 经销商-省份
*/
private String dealerProvince;
/**
* 经销商-城市
*/
private String dealerCity;
/**
* 经销商-代码
*/
private String dealerCode;
/**
* 经销商名称
*/
private String dealerName;
/**
* 经销商类型
*/
private String dealerType;
/**
* 开户日期
*/
private Date openingDate;
/**
* 闭户日期
*/
private Date closingDate;
/**
* 大区总监
*/
private String regionManager;
/**
* 战区经理
*/
private String districtManager;
/**
* 城市经理
*/
private String cityManager;
/**
* 系统名称
*/
private String lineName;
/**
* 系统类型
*/
private String lineType;
/**
* 渠道大类
*/
private String channelDl;
/**
* 渠道小类
*/
private String channelXl;
/**
* 系统业态
*/
private String lineLf;
/**
* 是否直营
*/
private String isDirect;
/**
* 门店编码
*/
private String storeCode;
/**
* 门店名称
*/
private String storeName;
/**
* 门店计数
*/
private String storeCount;
/**
* 门店地址
*/
private String storeAddress;
/**
* 计划-陈列形式
*/
private String plannedDisplay;
/**
* 实际-陈列形式
*/
private String actualDisplay;
/**
* 计划-端架数量(组)
*/
private Double plannedEndCapQty;
/**
* 实际-端架数量(组)
*/
private Double actualEndCapQty;
/**
* 计划-陈列费用
*/
private BigDecimal totalCost;
/**
* 付费陈列- 是否
*/
private String paidDisplay;
/**
* 当月拜访目标-是否
*/
private String monthlyVisitTarget;
/**
* 实际是否拜访
*/
private String monthlyVisited;
private Date createTime;
private String updateBy;
private Date updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.sfa.operation.domain.sales.mapper;
import com.sfa.operation.domain.sales.entity.SalesApPromotionDisplay;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* @author a02200059
* @description 针对表【sales_ap_promotion_display(营销中心-活动计划-档期陈列(计划+执行))】的数据库操作Mapper
* @createDate 2025-09-25 20:10:55
* @Entity com.sfa.operation.domain.sales.entity.SalesApPromotionDisplay
*/
@Repository
public interface SalesApPromotionDisplayMapper extends BaseMapper<SalesApPromotionDisplay> {
}
package com.sfa.operation.domain.sales.mapper;
import com.sfa.operation.domain.sales.entity.SalesApSnacksDisplay;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* @author a02200059
* @description 针对表【sales_ap_snacks_display(营销中心-活动计划-零食陈列(计划+执行))】的数据库操作Mapper
* @createDate 2025-09-25 20:10:55
* @Entity com.sfa.operation.domain.sales.entity.SalesApSnacksDisplay
*/
@Repository
public interface SalesApSnacksDisplayMapper extends BaseMapper<SalesApSnacksDisplay> {
}
...@@ -109,6 +109,12 @@ public class SalesApRequest { ...@@ -109,6 +109,12 @@ public class SalesApRequest {
* 档期规格是否执行 * 档期规格是否执行
*/ */
private String specExecutionStatus; private String specExecutionStatus;
/**
* 促销口味是否执行
*/
private String flavorExecutionStatus;
/** /**
* 实际-档期开始时间 * 实际-档期开始时间
*/ */
......
...@@ -25,6 +25,11 @@ public class SalesApPromotionDto { ...@@ -25,6 +25,11 @@ public class SalesApPromotionDto {
* 档期规格是否执行 * 档期规格是否执行
*/ */
private String specExecutionStatus; private String specExecutionStatus;
/**
* 促销口味是否执行
*/
private String flavorExecutionStatus;
/** /**
* 实际-档期开始时间 * 实际-档期开始时间
*/ */
......
...@@ -11,4 +11,7 @@ import com.sfa.operation.pojo.sales.request.SalesApRequest; ...@@ -11,4 +11,7 @@ import com.sfa.operation.pojo.sales.request.SalesApRequest;
public interface IApDisplayQueryService { public interface IApDisplayQueryService {
PageInfo page(SalesApRequest salesApRequest); PageInfo page(SalesApRequest salesApRequest);
PageInfo proPage(SalesApRequest salesApRequest);
PageInfo snackPage(SalesApRequest salesApRequest);
} }
...@@ -5,6 +5,8 @@ import cn.hutool.core.date.DateUtil; ...@@ -5,6 +5,8 @@ import cn.hutool.core.date.DateUtil;
import com.sfa.common.core.utils.bean.BeanUtils; import com.sfa.common.core.utils.bean.BeanUtils;
import com.sfa.common.core.web.domain.PageInfo; import com.sfa.common.core.web.domain.PageInfo;
import com.sfa.operation.domain.sales.dao.ISalesApDisplayDao; import com.sfa.operation.domain.sales.dao.ISalesApDisplayDao;
import com.sfa.operation.domain.sales.dao.ISalesApPromotionDisplayDao;
import com.sfa.operation.domain.sales.dao.ISalesApSnacksDisplayDao;
import com.sfa.operation.domain.sales.wq.SalesApWq; import com.sfa.operation.domain.sales.wq.SalesApWq;
import com.sfa.operation.pojo.sales.request.SalesApRequest; import com.sfa.operation.pojo.sales.request.SalesApRequest;
import com.sfa.operation.service.sales.IApDisplayQueryService; import com.sfa.operation.service.sales.IApDisplayQueryService;
...@@ -20,6 +22,10 @@ import org.springframework.stereotype.Service; ...@@ -20,6 +22,10 @@ import org.springframework.stereotype.Service;
public class ApDisplayQueryServiceImpl implements IApDisplayQueryService { public class ApDisplayQueryServiceImpl implements IApDisplayQueryService {
@Autowired @Autowired
private ISalesApDisplayDao salesApDisplayDao; private ISalesApDisplayDao salesApDisplayDao;
@Autowired
private ISalesApPromotionDisplayDao salesApPromotionDisplayDao;
@Autowired
private ISalesApSnacksDisplayDao salesapsnackdsDisplayDao;
@Override @Override
public PageInfo page(SalesApRequest salesApRequest) { public PageInfo page(SalesApRequest salesApRequest) {
SalesApWq salesApWq = new SalesApWq(); SalesApWq salesApWq = new SalesApWq();
...@@ -27,4 +33,20 @@ public class ApDisplayQueryServiceImpl implements IApDisplayQueryService { ...@@ -27,4 +33,20 @@ public class ApDisplayQueryServiceImpl implements IApDisplayQueryService {
salesApWq.setSalesMonth(salesApRequest.getSalesMonth() != null ? DateUtil.parse(salesApRequest.getSalesMonth() + "-01", DatePattern.NORM_DATE_PATTERN) : null); salesApWq.setSalesMonth(salesApRequest.getSalesMonth() != null ? DateUtil.parse(salesApRequest.getSalesMonth() + "-01", DatePattern.NORM_DATE_PATTERN) : null);
return salesApDisplayDao.page(salesApWq); return salesApDisplayDao.page(salesApWq);
} }
@Override
public PageInfo proPage(SalesApRequest salesApRequest) {
SalesApWq salesApWq = new SalesApWq();
BeanUtils.copyProperties(salesApRequest,salesApWq);
salesApWq.setSalesMonth(salesApRequest.getSalesMonth() != null ? DateUtil.parse(salesApRequest.getSalesMonth() + "-01", DatePattern.NORM_DATE_PATTERN) : null);
return salesApPromotionDisplayDao.page(salesApWq);
}
@Override
public PageInfo snackPage(SalesApRequest salesApRequest) {
SalesApWq salesApWq = new SalesApWq();
BeanUtils.copyProperties(salesApRequest,salesApWq);
salesApWq.setSalesMonth(salesApRequest.getSalesMonth() != null ? DateUtil.parse(salesApRequest.getSalesMonth() + "-01", DatePattern.NORM_DATE_PATTERN) : null);
return salesapsnackdsDisplayDao.page(salesApWq);
}
} }
<?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.sfa.operation.domain.sales.mapper.SalesApPromotionDisplayMapper">
<resultMap id="SalesApPromotionDisplayBase" type="com.sfa.operation.domain.sales.entity.SalesApPromotionDisplay">
<id property="sapdId" column="sapd_id" jdbcType="BIGINT"/>
<result property="regionName" column="region_name" jdbcType="VARCHAR"/>
<result property="districtName" column="district_name" jdbcType="VARCHAR"/>
<result property="dealerProvince" column="dealer_province" jdbcType="VARCHAR"/>
<result property="dealerCity" column="dealer_city" jdbcType="VARCHAR"/>
<result property="dealerCode" column="dealer_code" jdbcType="VARCHAR"/>
<result property="dealerName" column="dealer_name" jdbcType="VARCHAR"/>
<result property="dealerType" column="dealer_type" jdbcType="VARCHAR"/>
<result property="openingDate" column="opening_date" jdbcType="DATE"/>
<result property="closingDate" column="closing_date" jdbcType="DATE"/>
<result property="regionManager" column="region_manager" jdbcType="VARCHAR"/>
<result property="districtManager" column="district_manager" jdbcType="VARCHAR"/>
<result property="cityManager" column="city_manager" jdbcType="VARCHAR"/>
<result property="lineName" column="line_name" jdbcType="VARCHAR"/>
<result property="lineType" column="line_type" jdbcType="VARCHAR"/>
<result property="channelDl" column="channel_dl" jdbcType="VARCHAR"/>
<result property="channelXl" column="channel_xl" jdbcType="VARCHAR"/>
<result property="lineLf" column="line_lf" jdbcType="VARCHAR"/>
<result property="storeCount" column="store_count" jdbcType="VARCHAR"/>
<result property="promotionExecutionMonth" column="promotion_execution_month" jdbcType="VARCHAR"/>
<result property="plannedPromotionSpec" column="planned_promotion_spec" jdbcType="VARCHAR"/>
<result property="plannedPromotionFlavor" column="planned_promotion_flavor" jdbcType="VARCHAR"/>
<result property="plannedPromotionRules" column="planned_promotion_rules" jdbcType="VARCHAR"/>
<result property="plannedPrePromotionAdjustDays" column="planned_pre_promotion_adjust_days" jdbcType="INTEGER"/>
<result property="plannedPostPromotionAdjustDays" column="planned_post_promotion_adjust_days" jdbcType="INTEGER"/>
<result property="plannedPromotionStartDate" column="planned_promotion_start_date" jdbcType="DATE"/>
<result property="plannedAdjustmentStartDate" column="planned_adjustment_start_date" jdbcType="DATE"/>
<result property="plannedPromotionEndDate" column="planned_promotion_end_date" jdbcType="DATE"/>
<result property="plannedAdjustmentEndDate" column="planned_adjustment_end_date" jdbcType="DATE"/>
<result property="plannedPromotionDisplayStartDate" column="planned_promotion_display_start_date" jdbcType="DATE"/>
<result property="plannedPromotionDisplayEndDate" column="planned_promotion_display_end_date" jdbcType="DATE"/>
<result property="storeCode" column="store_code" jdbcType="VARCHAR"/>
<result property="storeName" column="store_name" jdbcType="VARCHAR"/>
<result property="storeType" column="store_type" jdbcType="VARCHAR"/>
<result property="storeCountNum" column="store_count_num" jdbcType="VARCHAR"/>
<result property="storeAddress" column="store_address" jdbcType="VARCHAR"/>
<result property="plannedEndCapQty" column="planned_end_cap_qty" jdbcType="FLOAT"/>
<result property="plannedEndCapTotalCost" column="planned_end_cap_total_cost" jdbcType="DECIMAL"/>
<result property="actualEndCapQty" column="actual_end_cap_qty" jdbcType="FLOAT"/>
<result property="actualEndCapExecuted" column="actual_end_cap_executed" jdbcType="VARCHAR"/>
<result property="plannedFloorStackArea" column="planned_floor_stack_area" jdbcType="FLOAT"/>
<result property="plannedFloorStackQty" column="planned_floor_stack_qty" jdbcType="INTEGER"/>
<result property="plannedFloorStackTotalCost" column="planned_floor_stack_total_cost" jdbcType="DECIMAL"/>
<result property="actualFloorStackArea" column="actual_floor_stack_area" jdbcType="FLOAT"/>
<result property="actualFloorStackQty" column="actual_floor_stack_qty" jdbcType="INTEGER"/>
<result property="actualFloorStackExecuted" column="actual_floor_stack_executed" jdbcType="VARCHAR"/>
<result property="plannedOtherDisplay" column="planned_other_display" jdbcType="VARCHAR"/>
<result property="plannedOtherDisplayTotalCost" column="planned_other_display_total_cost" jdbcType="DECIMAL"/>
<result property="actualOtherDisplay" column="actual_other_display" jdbcType="VARCHAR"/>
<result property="actualOtherDisplayExecuted" column="actual_other_display_executed" jdbcType="VARCHAR"/>
<result property="totalCost" column="total_cost" jdbcType="DECIMAL"/>
<result property="promotionDisplayExecuted" column="promotion_display_executed" jdbcType="VARCHAR"/>
<result property="paidDisplay" column="paid_display" jdbcType="VARCHAR"/>
<result property="monthlyVisitTarget" column="monthly_visit_target" jdbcType="VARCHAR"/>
<result property="monthlyVisited" column="monthly_visited" jdbcType="VARCHAR"/>
</resultMap>
</mapper>
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
<result property="actualPromotionSpec" column="actual_promotion_spec" jdbcType="VARCHAR"/> <result property="actualPromotionSpec" column="actual_promotion_spec" jdbcType="VARCHAR"/>
<result property="actualPromotionFlavor" column="actual_promotion_flavor" jdbcType="VARCHAR"/> <result property="actualPromotionFlavor" column="actual_promotion_flavor" jdbcType="VARCHAR"/>
<result property="specExecutionStatus" column="spec_execution_status" jdbcType="VARCHAR"/> <result property="specExecutionStatus" column="spec_execution_status" jdbcType="VARCHAR"/>
<result property="flavorExecutionStatus" column="flavor_execution_status" jdbcType="VARCHAR"/>
<result property="totalCost" column="total_cost" jdbcType="DECIMAL"/> <result property="totalCost" column="total_cost" jdbcType="DECIMAL"/>
<result property="totalCostRate" column="total_cost_rate" jdbcType="FLOAT"/> <result property="totalCostRate" column="total_cost_rate" jdbcType="FLOAT"/>
<result property="plannedPromotionFormat" column="planned_promotion_format" jdbcType="VARCHAR"/> <result property="plannedPromotionFormat" column="planned_promotion_format" jdbcType="VARCHAR"/>
...@@ -91,6 +92,9 @@ ...@@ -91,6 +92,9 @@
<if test="actualPromotionFlavor != null"> <if test="actualPromotionFlavor != null">
actual_promotion_flavor = #{actualPromotionFlavor}, actual_promotion_flavor = #{actualPromotionFlavor},
</if> </if>
<if test="flavorExecutionStatus != null">
flavor_execution_status = #{flavorExecutionStatus},
</if>
<if test="specExecutionStatus != null"> <if test="specExecutionStatus != null">
spec_execution_status = #{specExecutionStatus}, spec_execution_status = #{specExecutionStatus},
</if> </if>
......
<?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.sfa.operation.domain.sales.mapper.SalesApSnacksDisplayMapper">
<resultMap id="SalesApSnacksDisplayBase" type="com.sfa.operation.domain.sales.entity.SalesApSnacksDisplay">
<id property="sasdId" column="sasd_id" jdbcType="BIGINT"/>
<result property="regionName" column="region_name" jdbcType="VARCHAR"/>
<result property="districtName" column="district_name" jdbcType="VARCHAR"/>
<result property="dealerProvince" column="dealer_province" jdbcType="VARCHAR"/>
<result property="dealerCity" column="dealer_city" jdbcType="VARCHAR"/>
<result property="dealerCode" column="dealer_code" jdbcType="VARCHAR"/>
<result property="dealerName" column="dealer_name" jdbcType="VARCHAR"/>
<result property="dealerType" column="dealer_type" jdbcType="VARCHAR"/>
<result property="openingDate" column="opening_date" jdbcType="DATE"/>
<result property="closingDate" column="closing_date" jdbcType="DATE"/>
<result property="regionManager" column="region_manager" jdbcType="VARCHAR"/>
<result property="districtManager" column="district_manager" jdbcType="VARCHAR"/>
<result property="cityManager" column="city_manager" jdbcType="VARCHAR"/>
<result property="lineName" column="line_name" jdbcType="VARCHAR"/>
<result property="lineType" column="line_type" jdbcType="VARCHAR"/>
<result property="channelDl" column="channel_dl" jdbcType="VARCHAR"/>
<result property="channelXl" column="channel_xl" jdbcType="VARCHAR"/>
<result property="lineLf" column="line_lf" jdbcType="VARCHAR"/>
<result property="isDirect" column="is_direct" jdbcType="VARCHAR"/>
<result property="storeCode" column="store_code" jdbcType="VARCHAR"/>
<result property="storeName" column="store_name" jdbcType="VARCHAR"/>
<result property="storeCount" column="store_count" jdbcType="VARCHAR"/>
<result property="storeAddress" column="store_address" jdbcType="VARCHAR"/>
<result property="plannedDisplay" column="planned_display" jdbcType="VARCHAR"/>
<result property="actualDisplay" column="actual_display" jdbcType="VARCHAR"/>
<result property="plannedEndCapQty" column="planned_end_cap_qty" jdbcType="FLOAT"/>
<result property="actualEndCapQty" column="actual_end_cap_qty" jdbcType="FLOAT"/>
<result property="totalCost" column="total_cost" jdbcType="DECIMAL"/>
<result property="paidDisplay" column="paid_display" jdbcType="VARCHAR"/>
<result property="monthlyVisitTarget" column="monthly_visit_target" jdbcType="VARCHAR"/>
<result property="monthlyVisited" column="monthly_visited" jdbcType="VARCHAR"/>
</resultMap>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论