Commit 6b322a199dfaac0efce105ed78ab04f644129aa5

Authored by 杨鸣坤
1 parent 68f592e6

楚江ERP:锁价接口开发,部分问题修复

@@ -152,8 +152,8 @@ create table if not exists `tbl_contract_distributor_line` @@ -152,8 +152,8 @@ create table if not exists `tbl_contract_distributor_line`
152 `length_tol_pos` DECIMAL(10, 4) COMMENT '长度公差正', 152 `length_tol_pos` DECIMAL(10, 4) COMMENT '长度公差正',
153 `length_tol_neg` DECIMAL(10, 4) COMMENT '长度公差负', 153 `length_tol_neg` DECIMAL(10, 4) COMMENT '长度公差负',
154 `status` VARCHAR(50) COMMENT '状态', 154 `status` VARCHAR(50) COMMENT '状态',
155 - `quantity` DECIMAL(15, 4) NOT NULL COMMENT '数量',  
156 - `unit_price` DECIMAL(15, 4) NOT NULL COMMENT '单价', 155 + `quantity` DECIMAL(15, 4) COMMENT '数量',
  156 + `unit_price` DECIMAL(15, 4) COMMENT '单价',
157 `amount_excluding_tax` DECIMAL(15, 2) COMMENT '不含税金额', 157 `amount_excluding_tax` DECIMAL(15, 2) COMMENT '不含税金额',
158 `total_amount` DECIMAL(15, 2) COMMENT '总金额', 158 `total_amount` DECIMAL(15, 2) COMMENT '总金额',
159 `delivery_date` DATE COMMENT '发货日期', 159 `delivery_date` DATE COMMENT '发货日期',
@@ -44,6 +44,7 @@ import com.lframework.xingyun.sc.vo.contract.queryVo.QueryContractDistributorSta @@ -44,6 +44,7 @@ import com.lframework.xingyun.sc.vo.contract.queryVo.QueryContractDistributorSta
44 import com.lframework.xingyun.sc.vo.contract.updateVo.UpdateContractDistributorStandardVo; 44 import com.lframework.xingyun.sc.vo.contract.updateVo.UpdateContractDistributorStandardVo;
45 import io.swagger.annotations.Api; 45 import io.swagger.annotations.Api;
46 import io.swagger.annotations.ApiImplicitParam; 46 import io.swagger.annotations.ApiImplicitParam;
  47 +import io.swagger.annotations.ApiModelProperty;
47 import io.swagger.annotations.ApiOperation; 48 import io.swagger.annotations.ApiOperation;
48 import lombok.extern.slf4j.Slf4j; 49 import lombok.extern.slf4j.Slf4j;
49 import org.apache.commons.collections4.CollectionUtils; 50 import org.apache.commons.collections4.CollectionUtils;
@@ -432,6 +433,18 @@ public class ContractDistributorStandardController extends DefaultBaseController @@ -432,6 +433,18 @@ public class ContractDistributorStandardController extends DefaultBaseController
432 return InvokeResultBuilder.success(new GetContractDistributorStandardBo(contractDistributorStandard)); 433 return InvokeResultBuilder.success(new GetContractDistributorStandardBo(contractDistributorStandard));
433 } 434 }
434 435
  436 + @ApiModelProperty("锁价")
  437 + @PostMapping("/priceLock")
  438 + public void priceLock(@RequestBody UpdateContractDistributorStandardVo vo) {
  439 + if (vo == null || StringUtils.isBlank(vo.getId())) {
  440 + throw new DefaultClientException("参数错误!");
  441 + }
  442 +
  443 + contractDistributorStandardService.stockContractPriceLock(vo);
  444 +
  445 + contractDistributorStandardService.cleanCacheByKey(vo.getId());
  446 + }
  447 +
435 /** 448 /**
436 * 标准合同模版打印 449 * 标准合同模版打印
437 */ 450 */
@@ -22,6 +22,7 @@ import com.lframework.xingyun.basedata.entity.Customer; @@ -22,6 +22,7 @@ import com.lframework.xingyun.basedata.entity.Customer;
22 import com.lframework.xingyun.basedata.entity.ProductVariety; 22 import com.lframework.xingyun.basedata.entity.ProductVariety;
23 import com.lframework.xingyun.basedata.service.customer.CustomerService; 23 import com.lframework.xingyun.basedata.service.customer.CustomerService;
24 import com.lframework.xingyun.basedata.service.product.ProductVarietyService; 24 import com.lframework.xingyun.basedata.service.product.ProductVarietyService;
  25 +import com.lframework.xingyun.basedata.vo.customer.QueryCustomerVo;
25 import com.lframework.xingyun.sc.bo.contract.QueryContractFrameworkBo; 26 import com.lframework.xingyun.sc.bo.contract.QueryContractFrameworkBo;
26 import com.lframework.xingyun.sc.components.code.GenerateCodeTypePool; 27 import com.lframework.xingyun.sc.components.code.GenerateCodeTypePool;
27 import com.lframework.xingyun.sc.entity.ContractFramework; 28 import com.lframework.xingyun.sc.entity.ContractFramework;
@@ -86,6 +87,17 @@ public class ContractFrameworkController extends DefaultBaseController { @@ -86,6 +87,17 @@ public class ContractFrameworkController extends DefaultBaseController {
86 @HasPermission({"contract:contractFramework:query"}) 87 @HasPermission({"contract:contractFramework:query"})
87 @GetMapping("/query") 88 @GetMapping("/query")
88 public InvokeResult<PageResult<QueryContractFrameworkBo>> query(@Valid QueryContractFrameworkVo vo) { 89 public InvokeResult<PageResult<QueryContractFrameworkBo>> query(@Valid QueryContractFrameworkVo vo) {
  90 + if(vo != null && StringUtils.isNotBlank(vo.getCustomerName())) {
  91 + QueryCustomerVo queryCustomerVo = new QueryCustomerVo();
  92 + queryCustomerVo.setName(vo.getCustomerName());
  93 + List<Customer> customerList = customerService.query(queryCustomerVo);
  94 + if(CollectionUtils.isEmpty(customerList)) {
  95 + PageResult<QueryContractFrameworkBo> boPageResult = new PageResult<>();
  96 + return InvokeResultBuilder.success(boPageResult);
  97 + }
  98 +
  99 + vo.setCustomerIdList(customerList.stream().map(Customer::getId).collect(Collectors.toList()));
  100 + }
89 101
90 PageResult<ContractFramework> pageResult = contractFrameworkService.query(getPageIndex(vo), getPageSize(vo), vo); 102 PageResult<ContractFramework> pageResult = contractFrameworkService.query(getPageIndex(vo), getPageSize(vo), vo);
91 103
1 package com.lframework.xingyun.sc.excel.contract; 1 package com.lframework.xingyun.sc.excel.contract;
2 2
3 import com.alibaba.excel.annotation.ExcelProperty; 3 import com.alibaba.excel.annotation.ExcelProperty;
  4 +import com.alibaba.excel.annotation.format.DateTimeFormat;
  5 +import com.lframework.starter.common.constants.StringPool;
4 import com.lframework.starter.common.utils.DateUtil; 6 import com.lframework.starter.common.utils.DateUtil;
5 import com.lframework.starter.web.core.bo.BaseBo; 7 import com.lframework.starter.web.core.bo.BaseBo;
6 import com.lframework.starter.web.core.components.excel.ExcelModel; 8 import com.lframework.starter.web.core.components.excel.ExcelModel;
@@ -58,6 +60,7 @@ public class ContractFrameworkExportModel extends BaseBo<ContractFramework> impl @@ -58,6 +60,7 @@ public class ContractFrameworkExportModel extends BaseBo<ContractFramework> impl
58 * 授信截止日期 60 * 授信截止日期
59 */ 61 */
60 @ExcelProperty("授信截止日期") 62 @ExcelProperty("授信截止日期")
  63 + @DateTimeFormat(StringPool.DATE_PATTERN)
61 private Date validityTime; 64 private Date validityTime;
62 65
63 public ContractFrameworkExportModel() { 66 public ContractFrameworkExportModel() {
@@ -2,12 +2,12 @@ package com.lframework.xingyun.sc.excel.contract; @@ -2,12 +2,12 @@ package com.lframework.xingyun.sc.excel.contract;
2 2
3 import com.alibaba.excel.annotation.ExcelIgnore; 3 import com.alibaba.excel.annotation.ExcelIgnore;
4 import com.alibaba.excel.annotation.ExcelProperty; 4 import com.alibaba.excel.annotation.ExcelProperty;
  5 +import com.alibaba.excel.annotation.format.DateTimeFormat;
  6 +import com.lframework.starter.common.constants.StringPool;
5 import com.lframework.starter.web.core.annotations.excel.ExcelRequired; 7 import com.lframework.starter.web.core.annotations.excel.ExcelRequired;
6 import com.lframework.starter.web.core.components.excel.ExcelModel; 8 import com.lframework.starter.web.core.components.excel.ExcelModel;
7 -import io.swagger.annotations.ApiModelProperty;  
8 import lombok.Data; 9 import lombok.Data;
9 10
10 -import java.time.LocalDateTime;  
11 import java.util.Date; 11 import java.util.Date;
12 12
13 @Data 13 @Data
@@ -63,6 +63,7 @@ public class ContractFrameworkImportModel implements ExcelModel { @@ -63,6 +63,7 @@ public class ContractFrameworkImportModel implements ExcelModel {
63 * 授信截止日期 63 * 授信截止日期
64 */ 64 */
65 @ExcelRequired 65 @ExcelRequired
  66 + @DateTimeFormat(StringPool.DATE_PATTERN)
66 @ExcelProperty("授信截止日期") 67 @ExcelProperty("授信截止日期")
67 private Date validityTime; 68 private Date validityTime;
68 69
@@ -57,7 +57,7 @@ public class ContractDistributorLineServiceImpl extends BaseMpServiceImpl<Contra @@ -57,7 +57,7 @@ public class ContractDistributorLineServiceImpl extends BaseMpServiceImpl<Contra
57 return getBaseMapper().selectById(id); 57 return getBaseMapper().selectById(id);
58 } 58 }
59 59
60 - @OpLog(type = OtherOpLogType.class, name = "新增经销标准合同物料行,ID:{}", params = {"#id"}) 60 + @OpLog(type = OtherOpLogType.class, name = "新增合同物料行,ID:{}", params = {"#id"})
61 @Transactional(rollbackFor = Exception.class) 61 @Transactional(rollbackFor = Exception.class)
62 @Override 62 @Override
63 public String create(CreateContractDistributorLineVo vo) { 63 public String create(CreateContractDistributorLineVo vo) {
@@ -94,14 +94,14 @@ public class ContractDistributorLineServiceImpl extends BaseMpServiceImpl<Contra @@ -94,14 +94,14 @@ public class ContractDistributorLineServiceImpl extends BaseMpServiceImpl<Contra
94 return data.getId(); 94 return data.getId();
95 } 95 }
96 96
97 - @OpLog(type = OtherOpLogType.class, name = "修改经销标准合同物料行,ID:{}", params = {"#id"}) 97 + @OpLog(type = OtherOpLogType.class, name = "修改合同物料行,ID:{}", params = {"#id"})
98 @Transactional(rollbackFor = Exception.class) 98 @Transactional(rollbackFor = Exception.class)
99 @Override 99 @Override
100 public void update(UpdateContractDistributorLineVo vo) { 100 public void update(UpdateContractDistributorLineVo vo) {
101 101
102 ContractDistributorLine data = getBaseMapper().selectById(vo.getId()); 102 ContractDistributorLine data = getBaseMapper().selectById(vo.getId());
103 if (ObjectUtil.isNull(data)) { 103 if (ObjectUtil.isNull(data)) {
104 - throw new DefaultClientException("经销标准合同物料行不存在!"); 104 + throw new DefaultClientException("合同物料行不存在!");
105 } 105 }
106 106
107 LambdaUpdateWrapper<ContractDistributorLine> updateWrapper = Wrappers.lambdaUpdate(ContractDistributorLine.class) 107 LambdaUpdateWrapper<ContractDistributorLine> updateWrapper = Wrappers.lambdaUpdate(ContractDistributorLine.class)
@@ -103,7 +103,7 @@ public class ContractDistributorStandardServiceImpl extends @@ -103,7 +103,7 @@ public class ContractDistributorStandardServiceImpl extends
103 return getBaseMapper().selectById(id); 103 return getBaseMapper().selectById(id);
104 } 104 }
105 105
106 - @OpLog(type = OtherOpLogType.class, name = "新增经销标准合同,ID:{}", params = {"#id"}) 106 + @OpLog(type = OtherOpLogType.class, name = "新增合同,ID:{}", params = {"#id"})
107 @Transactional(rollbackFor = Exception.class) 107 @Transactional(rollbackFor = Exception.class)
108 @Override 108 @Override
109 public String create(CreateContractDistributorStandardVo vo) { 109 public String create(CreateContractDistributorStandardVo vo) {
@@ -158,14 +158,14 @@ public class ContractDistributorStandardServiceImpl extends @@ -158,14 +158,14 @@ public class ContractDistributorStandardServiceImpl extends
158 return data.getId(); 158 return data.getId();
159 } 159 }
160 160
161 - @OpLog(type = OtherOpLogType.class, name = "修改经销标准合同,ID:{}", params = {"#id"}) 161 + @OpLog(type = OtherOpLogType.class, name = "修改合同,ID:{}", params = {"#id"})
162 @Transactional(rollbackFor = Exception.class) 162 @Transactional(rollbackFor = Exception.class)
163 @Override 163 @Override
164 public void update(UpdateContractDistributorStandardVo vo) { 164 public void update(UpdateContractDistributorStandardVo vo) {
165 165
166 ContractDistributorStandard data = getBaseMapper().selectById(vo.getId()); 166 ContractDistributorStandard data = getBaseMapper().selectById(vo.getId());
167 if (ObjectUtil.isNull(data)) { 167 if (ObjectUtil.isNull(data)) {
168 - throw new DefaultClientException("经销标准合同不存在!"); 168 + throw new DefaultClientException("合同不存在!");
169 } 169 }
170 170
171 LambdaUpdateWrapper<ContractDistributorStandard> updateWrapper = Wrappers.lambdaUpdate(ContractDistributorStandard.class) 171 LambdaUpdateWrapper<ContractDistributorStandard> updateWrapper = Wrappers.lambdaUpdate(ContractDistributorStandard.class)
@@ -305,7 +305,7 @@ public class ContractDistributorStandardServiceImpl extends @@ -305,7 +305,7 @@ public class ContractDistributorStandardServiceImpl extends
305 .set(ContractDistributorStandard::getStandardFileName, vo.getStandardFileName()) 305 .set(ContractDistributorStandard::getStandardFileName, vo.getStandardFileName())
306 .set(ContractDistributorStandard::getStandardStandardized, vo.getStandardStandardized()) 306 .set(ContractDistributorStandard::getStandardStandardized, vo.getStandardStandardized())
307 .set(ContractDistributorStandard::getStandardApproved, CustomerDevelopStatus.AUDIT.name()); 307 .set(ContractDistributorStandard::getStandardApproved, CustomerDevelopStatus.AUDIT.name());
308 - if (!data.getStatus().equals("STANDARD")) { 308 + if (!data.getStatus().equals("STANDARD") && "DISTRIB_STD".equals(data.getType())) { // 只有经销标准合同才修改状态
309 updateWrapper.set(ContractDistributorStandard::getStatus, "STANDARD"); 309 updateWrapper.set(ContractDistributorStandard::getStatus, "STANDARD");
310 310
311 } 311 }
@@ -371,6 +371,7 @@ public class ContractDistributorStandardServiceImpl extends @@ -371,6 +371,7 @@ public class ContractDistributorStandardServiceImpl extends
371 vo.setStandardApproved(standardApproved); 371 vo.setStandardApproved(standardApproved);
372 vo.setStandardTime(LocalDateTime.now()); 372 vo.setStandardTime(LocalDateTime.now());
373 vo.setStandardApproved(SecurityUtil.getCurrentUser().getId()); 373 vo.setStandardApproved(SecurityUtil.getCurrentUser().getId());
  374 +
374 OpLogUtil.setVariable("id", id); 375 OpLogUtil.setVariable("id", id);
375 OpLogUtil.setExtra(vo); 376 OpLogUtil.setExtra(vo);
376 } 377 }
@@ -455,6 +456,46 @@ public class ContractDistributorStandardServiceImpl extends @@ -455,6 +456,46 @@ public class ContractDistributorStandardServiceImpl extends
455 return contractDistributorStandard; 456 return contractDistributorStandard;
456 } 457 }
457 458
  459 + @Override
  460 + @OpLog(type = OtherOpLogType.class, name = "合同锁价,ID:{}", params = {"#vo.id"})
  461 + @Transactional(rollbackFor = Exception.class)
  462 + public void stockContractPriceLock(UpdateContractDistributorStandardVo vo) {
  463 + ContractDistributorStandard data = getBaseMapper().selectById(vo.getId());
  464 + if (ObjectUtil.isNull(data)) {
  465 + throw new DefaultClientException("合同不存在!");
  466 + }
  467 +
  468 + List<UpdateContractDistributorLineVo> lineVoList = vo.getContractDistributorLineList();
  469 + if (CollectionUtils.isEmpty(lineVoList)) {
  470 + throw new DefaultClientException("合同行数据为空!");
  471 + }
  472 +
  473 + Wrapper<ContractDistributorStandard> wrapper = Wrappers.lambdaUpdate(ContractDistributorStandard.class)
  474 + .set(ContractDistributorStandard::getTotalQuantity, vo.getTotalQuantity())
  475 + .set(ContractDistributorStandard::getTotalAmountExcludingTax, vo.getTotalAmountExcludingTax())
  476 + .set(ContractDistributorStandard::getTotalAmountIncludingTax, vo.getTotalAmountIncludingTax())
  477 + .set(ContractDistributorStandard::getTotalAmountCapital, vo.getTotalAmountCapital())
  478 + .set(ContractDistributorStandard::getStatus, "STANDARD")
  479 + .eq(ContractDistributorStandard::getId, vo.getId());
  480 +
  481 + getBaseMapper().update(wrapper);
  482 +
  483 + lineVoList.forEach(lineVo -> {
  484 + Wrapper<ContractDistributorLine> contractDistributorLineWrapper = Wrappers.lambdaUpdate(ContractDistributorLine.class)
  485 + .set(ContractDistributorLine::getQuantity, lineVo.getQuantity())
  486 + .set(ContractDistributorLine::getUnitPrice, lineVo.getUnitPrice())
  487 + .set(ContractDistributorLine::getAmountExcludingTax, lineVo.getAmountExcludingTax())
  488 + .set(ContractDistributorLine::getTotalAmount, lineVo.getTotalAmount())
  489 + .eq(ContractDistributorLine::getId, lineVo.getId());
  490 +
  491 + contractDistributorLineService.update(contractDistributorLineWrapper);
  492 + contractDistributorLineService.cleanCacheByKey(lineVo.getId());
  493 + });
  494 +
  495 + OpLogUtil.setVariable("id", data.getId());
  496 + OpLogUtil.setExtra(vo);
  497 + }
  498 +
458 @CacheEvict(value = ContractDistributorStandard.CACHE_NAME, key = "@cacheVariables.tenantId() + #key") 499 @CacheEvict(value = ContractDistributorStandard.CACHE_NAME, key = "@cacheVariables.tenantId() + #key")
459 @Override 500 @Override
460 public void cleanCacheByKey(Serializable key) { 501 public void cleanCacheByKey(Serializable key) {
@@ -79,6 +79,13 @@ public interface ContractDistributorStandardService extends BaseMpService<Contra @@ -79,6 +79,13 @@ public interface ContractDistributorStandardService extends BaseMpService<Contra
79 * @param productIdList 79 * @param productIdList
80 * @return 80 * @return
81 */ 81 */
82 - ContractDistributorStandard getCustomerSpecificQualityRequirements(String customerId,List<String> productIdList); 82 + ContractDistributorStandard getCustomerSpecificQualityRequirements(String customerId, List<String> productIdList);
  83 +
  84 + /**
  85 + * 锁价
  86 + *
  87 + * @param vo
  88 + */
  89 + void stockContractPriceLock(UpdateContractDistributorStandardVo vo);
83 90
84 } 91 }
@@ -218,31 +218,28 @@ public class CreateContractDistributorStandardVo implements BaseVo, Serializable @@ -218,31 +218,28 @@ public class CreateContractDistributorStandardVo implements BaseVo, Serializable
218 /** 218 /**
219 * 合计数量 219 * 合计数量
220 */ 220 */
221 - @ApiModelProperty(value = "合计数量", required = true)  
222 - @NotNull(message = "请输入合计数量!") 221 + @ApiModelProperty(value = "合计数量")
223 @TypeMismatch(message = "合计数量格式有误!") 222 @TypeMismatch(message = "合计数量格式有误!")
224 private BigDecimal totalQuantity; 223 private BigDecimal totalQuantity;
225 224
226 /** 225 /**
227 * 合计不含税金额 226 * 合计不含税金额
228 */ 227 */
229 - @ApiModelProperty(value = "合计不含税金额", required = true)  
230 - @NotNull(message = "请输入合计不含税金额!") 228 + @ApiModelProperty(value = "合计不含税金额")
231 @TypeMismatch(message = "合计不含税金额格式有误!") 229 @TypeMismatch(message = "合计不含税金额格式有误!")
232 private BigDecimal totalAmountExcludingTax; 230 private BigDecimal totalAmountExcludingTax;
233 231
234 /** 232 /**
235 * 合计总金额 233 * 合计总金额
236 */ 234 */
237 - @ApiModelProperty(value = "合计总金额", required = true)  
238 - @NotNull(message = "请输入合计总金额!") 235 + @ApiModelProperty(value = "合计总金额")
239 @TypeMismatch(message = "合计总金额格式有误!") 236 @TypeMismatch(message = "合计总金额格式有误!")
240 private BigDecimal totalAmountIncludingTax; 237 private BigDecimal totalAmountIncludingTax;
241 238
242 /** 239 /**
243 * 合同类型 240 * 合同类型
244 */ 241 */
245 - @ApiModelProperty(value = "合同类型", required = true) 242 + @ApiModelProperty(value = "合同类型")
246 @NotBlank(message = "请输入合同类型!") 243 @NotBlank(message = "请输入合同类型!")
247 private String type; 244 private String type;
248 245
@@ -253,10 +250,10 @@ public class CreateContractDistributorStandardVo implements BaseVo, Serializable @@ -253,10 +250,10 @@ public class CreateContractDistributorStandardVo implements BaseVo, Serializable
253 private String parentId; 250 private String parentId;
254 251
255 /** 252 /**
256 - * 经销标准合同物料行 253 + * 合同物料行
257 */ 254 */
258 - @ApiModelProperty(value = "经销标准合同物料行", required = true)  
259 - @NotNull(message = "经销标准合同物料行不可为空!") 255 + @ApiModelProperty(value = "合同物料行", required = true)
  256 + @NotNull(message = "合同物料行不可为空!")
260 private List<CreateContractDistributorLineVo> contractDistributorLineList; 257 private List<CreateContractDistributorLineVo> contractDistributorLineList;
261 258
262 /** 259 /**
@@ -12,6 +12,8 @@ import com.lframework.starter.web.core.components.validation.TypeMismatch; @@ -12,6 +12,8 @@ import com.lframework.starter.web.core.components.validation.TypeMismatch;
12 import io.swagger.annotations.ApiModelProperty; 12 import io.swagger.annotations.ApiModelProperty;
13 13
14 import java.io.Serializable; 14 import java.io.Serializable;
  15 +import java.time.LocalDateTime;
  16 +import java.util.List;
15 17
16 @Data 18 @Data
17 public class QueryContractFrameworkVo extends PageVo implements BaseVo, Serializable { 19 public class QueryContractFrameworkVo extends PageVo implements BaseVo, Serializable {
@@ -66,16 +68,28 @@ public class QueryContractFrameworkVo extends PageVo implements BaseVo, Serializ @@ -66,16 +68,28 @@ public class QueryContractFrameworkVo extends PageVo implements BaseVo, Serializ
66 * 期限(查询) 68 * 期限(查询)
67 */ 69 */
68 @ApiModelProperty("期限查询开始时间") 70 @ApiModelProperty("期限查询开始时间")
69 - @JsonFormat(pattern = StringPool.DATE_PATTERN)  
70 - private LocalDate validityTimeStart; 71 + @JsonFormat(pattern = StringPool.DATE_TIME_PATTERN)
  72 + private LocalDateTime validityTimeStart;
71 73
72 @ApiModelProperty("期限查询结束时间") 74 @ApiModelProperty("期限查询结束时间")
73 - @JsonFormat(pattern = StringPool.DATE_PATTERN)  
74 - private LocalDate validityTimeEnd; 75 + @JsonFormat(pattern = StringPool.DATE_TIME_PATTERN)
  76 + private LocalDateTime validityTimeEnd;
75 77
76 /** 78 /**
77 * 导出类型 79 * 导出类型
78 */ 80 */
79 @ApiModelProperty("导出类型") 81 @ApiModelProperty("导出类型")
80 private String exportType; 82 private String exportType;
  83 +
  84 + /**
  85 + * 客户名称
  86 + */
  87 + @ApiModelProperty("客户名称")
  88 + private String customerName;
  89 +
  90 + /**
  91 + * 客户Id集合
  92 + */
  93 + @ApiModelProperty("客户Id集合")
  94 + private List<String> customerIdList;
81 } 95 }
@@ -33,40 +33,35 @@ public class UpdateContractDistributorStandardVo implements BaseVo, Serializable @@ -33,40 +33,35 @@ public class UpdateContractDistributorStandardVo implements BaseVo, Serializable
33 /** 33 /**
34 * 编号 34 * 编号
35 */ 35 */
36 - @ApiModelProperty(value = "编号", required = true)  
37 - @NotBlank(message = "请输入编号!") 36 + @ApiModelProperty(value = "编号")
38 @Length(message = "编号最多允许20个字符!") 37 @Length(message = "编号最多允许20个字符!")
39 private String code; 38 private String code;
40 39
41 /** 40 /**
42 * 供方 41 * 供方
43 */ 42 */
44 - @ApiModelProperty(value = "供方", required = true)  
45 - @NotBlank(message = "请输入供方!") 43 + @ApiModelProperty(value = "供方")
46 @Length(message = "供方最多允许50个字符!") 44 @Length(message = "供方最多允许50个字符!")
47 private String supplier; 45 private String supplier;
48 46
49 /** 47 /**
50 * 需方 48 * 需方
51 */ 49 */
52 - @ApiModelProperty(value = "需方", required = true)  
53 - @NotBlank(message = "请输入需方!") 50 + @ApiModelProperty(value = "需方")
54 @Length(message = "需方最多允许200个字符!") 51 @Length(message = "需方最多允许200个字符!")
55 private String buyer; 52 private String buyer;
56 53
57 /** 54 /**
58 * 订货日期 55 * 订货日期
59 */ 56 */
60 - @ApiModelProperty(value = "订货日期", required = true) 57 + @ApiModelProperty(value = "订货日期")
61 @TypeMismatch(message = "订货日期格式有误!") 58 @TypeMismatch(message = "订货日期格式有误!")
62 - @NotNull(message = "请输入订货日期!")  
63 private LocalDate orderDate; 59 private LocalDate orderDate;
64 60
65 /** 61 /**
66 * 单位 62 * 单位
67 */ 63 */
68 - @ApiModelProperty(value = "单位", required = true)  
69 - @NotBlank(message = "请输入单位!") 64 + @ApiModelProperty(value = "单位")
70 @Length(message = "单位最多允许50个字符!") 65 @Length(message = "单位最多允许50个字符!")
71 private String unit; 66 private String unit;
72 67
@@ -80,8 +75,7 @@ public class UpdateContractDistributorStandardVo implements BaseVo, Serializable @@ -80,8 +75,7 @@ public class UpdateContractDistributorStandardVo implements BaseVo, Serializable
80 /** 75 /**
81 * 合计人民币金额(大写) 76 * 合计人民币金额(大写)
82 */ 77 */
83 - @ApiModelProperty(value = "合计人民币金额(大写)", required = true)  
84 - @NotBlank(message = "请输入合计人民币金额(大写)!") 78 + @ApiModelProperty(value = "合计人民币金额(大写)")
85 @Length(message = "合计人民币金额(大写)最多允许100个字符!") 79 @Length(message = "合计人民币金额(大写)最多允许100个字符!")
86 private String totalAmountCapital; 80 private String totalAmountCapital;
87 81
@@ -258,10 +252,10 @@ public class UpdateContractDistributorStandardVo implements BaseVo, Serializable @@ -258,10 +252,10 @@ public class UpdateContractDistributorStandardVo implements BaseVo, Serializable
258 private String parentId; 252 private String parentId;
259 253
260 /** 254 /**
261 - * 经销标准合同物料行 255 + * 合同物料行
262 */ 256 */
263 - @ApiModelProperty(value = "经销标准合同物料行", required = true)  
264 - @NotNull(message = "经销标准合同物料行不可为空!") 257 + @ApiModelProperty(value = "合同物料行")
  258 + @NotNull(message = "合同物料行不可为空!")
265 private List<UpdateContractDistributorLineVo> contractDistributorLineList; 259 private List<UpdateContractDistributorLineVo> contractDistributorLineList;
266 260
267 /** 261 /**
@@ -63,6 +63,12 @@ @@ -63,6 +63,12 @@
63 <if test="vo.validityTimeEnd != null"> 63 <if test="vo.validityTimeEnd != null">
64 AND tb.validity_time &lt;= #{vo.validityTimeEnd} 64 AND tb.validity_time &lt;= #{vo.validityTimeEnd}
65 </if> 65 </if>
  66 + <if test="vo.customerIdList != null and vo.customerIdList.size() > 0">
  67 + AND tb.customer_id IN
  68 + <foreach collection="vo.customerIdList" open="(" separator="," close=")" item="item">
  69 + #{item}
  70 + </foreach>
  71 + </if>
66 </where> 72 </where>
67 </select> 73 </select>
68 </mapper> 74 </mapper>