Commit 508996c963074b8de988b87adf83fa06e8d6a93f

Authored by yeqianyong
1 parent 48936b95

楚江ERP-1、订货单增加规格变更状态;2、规格变更取消接口开发

@@ -216,6 +216,12 @@ public class GetPurchaseOrderInfoBo extends BaseBo<PurchaseOrderInfo> { @@ -216,6 +216,12 @@ public class GetPurchaseOrderInfoBo extends BaseBo<PurchaseOrderInfo> {
216 @ApiModelProperty("订货单表物料行") 216 @ApiModelProperty("订货单表物料行")
217 private List<PurchaseOrderLine> purchaseOrderLineList; 217 private List<PurchaseOrderLine> purchaseOrderLineList;
218 218
  219 + /**
  220 + * 规格变更状态
  221 + */
  222 + @ApiModelProperty("规格变更状态")
  223 + private String specChangeStatus;
  224 +
219 225
220 226
221 public GetPurchaseOrderInfoBo() { 227 public GetPurchaseOrderInfoBo() {
@@ -3,6 +3,7 @@ package com.lframework.xingyun.sc.controller.order; @@ -3,6 +3,7 @@ package com.lframework.xingyun.sc.controller.order;
3 import com.lframework.starter.web.core.annotations.security.HasPermission; 3 import com.lframework.starter.web.core.annotations.security.HasPermission;
4 import com.lframework.starter.web.core.controller.DefaultBaseController; 4 import com.lframework.starter.web.core.controller.DefaultBaseController;
5 import com.lframework.xingyun.sc.bo.order.change.OrderSpecificationChangeRecordBo; 5 import com.lframework.xingyun.sc.bo.order.change.OrderSpecificationChangeRecordBo;
  6 +import com.lframework.xingyun.sc.enums.OrderSpecChangeStatus;
6 import com.lframework.xingyun.sc.vo.order.change.QueryOrderSpecificationChangeRecordVo; 7 import com.lframework.xingyun.sc.vo.order.change.QueryOrderSpecificationChangeRecordVo;
7 import com.lframework.xingyun.sc.service.order.OrderSpecificationChangeRecordService; 8 import com.lframework.xingyun.sc.service.order.OrderSpecificationChangeRecordService;
8 import com.lframework.xingyun.sc.vo.order.change.CreateOrderSpecificationChangeRecordVo; 9 import com.lframework.xingyun.sc.vo.order.change.CreateOrderSpecificationChangeRecordVo;
@@ -107,4 +108,16 @@ public class OrderSpecificationChangeRecordController extends DefaultBaseControl @@ -107,4 +108,16 @@ public class OrderSpecificationChangeRecordController extends DefaultBaseControl
107 orderSpecificationChangeRecordService.deleteById(id); 108 orderSpecificationChangeRecordService.deleteById(id);
108 return InvokeResultBuilder.success(); 109 return InvokeResultBuilder.success();
109 } 110 }
  111 +
  112 + /**
  113 + * 取消变更
  114 + */
  115 + @ApiOperation("取消变更")
  116 + @ApiImplicitParam(value = "id", name = "id", paramType = "query", required = true)
  117 + @HasPermission({"order:change:cancel"})
  118 + @GetMapping("/cancel")
  119 + public InvokeResult<Void> cancelById(@NotBlank(message = "id不能为空!") String id) {
  120 + orderSpecificationChangeRecordService.updateStatus(id, OrderSpecChangeStatus.CANCEL.getCode());
  121 + return InvokeResultBuilder.success();
  122 + }
110 } 123 }
@@ -175,6 +175,11 @@ public class PurchaseOrderInfo extends BaseEntity implements BaseDto { @@ -175,6 +175,11 @@ public class PurchaseOrderInfo extends BaseEntity implements BaseDto {
175 private String customerTier; 175 private String customerTier;
176 176
177 /** 177 /**
  178 + * 规格变更状态
  179 + */
  180 + private String specChangeStatus;
  181 +
  182 + /**
178 * 创建人ID 183 * 创建人ID
179 */ 184 */
180 @TableField(fill = FieldFill.INSERT) 185 @TableField(fill = FieldFill.INSERT)
  1 +package com.lframework.xingyun.sc.enums;
  2 +
  3 +import com.baomidou.mybatisplus.annotation.EnumValue;
  4 +import com.lframework.starter.web.core.enums.BaseEnum;
  5 +
  6 +public enum OrderSpecChangeStatus implements BaseEnum<String> {
  7 +
  8 +
  9 + IN_PROGRESS("IN_PROGRESS", "变更中"),
  10 + COMPLETED("COMPLETED", "已完成"),
  11 + CANCEL("CANCEL", "已取消"),
  12 + ;
  13 +
  14 +
  15 + @EnumValue
  16 + private final String code;
  17 +
  18 + private final String desc;
  19 +
  20 + OrderSpecChangeStatus(String code, String desc) {
  21 + this.code = code;
  22 + this.desc = desc;
  23 + }
  24 +
  25 + @Override
  26 + public String getCode() {
  27 + return this.code;
  28 + }
  29 +
  30 + @Override
  31 + public String getDesc() {
  32 + return this.desc;
  33 + }
  34 +
  35 +
  36 + /**
  37 + * 通过code获取desc
  38 + *
  39 + * @param code 状态码
  40 + * @return 描述信息
  41 + */
  42 + public static String getDescByCode(String code) {
  43 + for (OrderSpecChangeStatus status : OrderSpecChangeStatus.values()) {
  44 + if (status.getCode().equals(code)) {
  45 + return status.getDesc();
  46 + }
  47 + }
  48 + return null;
  49 + }
  50 +}
@@ -16,9 +16,12 @@ import com.lframework.starter.web.core.annotations.oplog.OpLog; @@ -16,9 +16,12 @@ import com.lframework.starter.web.core.annotations.oplog.OpLog;
16 import com.lframework.starter.common.utils.Assert; 16 import com.lframework.starter.common.utils.Assert;
17 import com.lframework.starter.web.inner.components.oplog.OtherOpLogType; 17 import com.lframework.starter.web.inner.components.oplog.OtherOpLogType;
18 import com.lframework.xingyun.sc.entity.PurchaseOrderLine; 18 import com.lframework.xingyun.sc.entity.PurchaseOrderLine;
  19 +import com.lframework.xingyun.sc.enums.OrderSpecChangeStatus;
  20 +import com.lframework.xingyun.sc.service.order.PurchaseOrderInfoService;
19 import com.lframework.xingyun.sc.service.order.PurchaseOrderLineService; 21 import com.lframework.xingyun.sc.service.order.PurchaseOrderLineService;
20 import com.lframework.xingyun.sc.vo.order.change.*; 22 import com.lframework.xingyun.sc.vo.order.change.*;
21 import org.apache.commons.collections4.CollectionUtils; 23 import org.apache.commons.collections4.CollectionUtils;
  24 +import org.apache.commons.lang3.StringUtils;
22 import org.springframework.transaction.annotation.Transactional; 25 import org.springframework.transaction.annotation.Transactional;
23 import com.lframework.xingyun.sc.mappers.OrderSpecificationChangeRecordMapper; 26 import com.lframework.xingyun.sc.mappers.OrderSpecificationChangeRecordMapper;
24 import com.lframework.xingyun.sc.service.order.OrderSpecificationChangeRecordService; 27 import com.lframework.xingyun.sc.service.order.OrderSpecificationChangeRecordService;
@@ -36,6 +39,8 @@ public class OrderSpecificationChangeRecordServiceImpl extends BaseMpServiceImpl @@ -36,6 +39,8 @@ public class OrderSpecificationChangeRecordServiceImpl extends BaseMpServiceImpl
36 private PurchaseOrderLineService purchaseOrderLineService; 39 private PurchaseOrderLineService purchaseOrderLineService;
37 @Resource 40 @Resource
38 private SysUserService sysUserService; 41 private SysUserService sysUserService;
  42 + @Resource
  43 + private PurchaseOrderInfoService purchaseOrderInfoService;
39 44
40 45
41 @Override 46 @Override
@@ -153,6 +158,8 @@ public class OrderSpecificationChangeRecordServiceImpl extends BaseMpServiceImpl @@ -153,6 +158,8 @@ public class OrderSpecificationChangeRecordServiceImpl extends BaseMpServiceImpl
153 } 158 }
154 getBaseMapper().insert(data); 159 getBaseMapper().insert(data);
155 purchaseOrderLineService.batchAdd(orderLineList); 160 purchaseOrderLineService.batchAdd(orderLineList);
  161 + // 更新订货单规格变更状态
  162 + purchaseOrderInfoService.updateSpecChangeStatus(vo.getOrderId(), OrderSpecChangeStatus.IN_PROGRESS.getCode());
156 163
157 OpLogUtil.setVariable("id", data.getId()); 164 OpLogUtil.setVariable("id", data.getId());
158 OpLogUtil.setExtra(vo); 165 OpLogUtil.setExtra(vo);
@@ -207,4 +214,29 @@ public class OrderSpecificationChangeRecordServiceImpl extends BaseMpServiceImpl @@ -207,4 +214,29 @@ public class OrderSpecificationChangeRecordServiceImpl extends BaseMpServiceImpl
207 public void deleteById(String id) { 214 public void deleteById(String id) {
208 getBaseMapper().deleteById(id); 215 getBaseMapper().deleteById(id);
209 } 216 }
  217 +
  218 + /**
  219 + * 更新状态
  220 + *
  221 + * @param id 主键ID
  222 + * @param status 状态
  223 + */
  224 + @Override
  225 + public void updateStatus(String id, String status) {
  226 + if (StringUtils.isBlank(id) || StringUtils.isBlank(status)) {
  227 + return;
  228 + }
  229 + OrderSpecificationChangeRecord record = getById(id);
  230 + if (record == null) {
  231 + throw new DefaultClientException("规格变更记录不存在!");
  232 + }
  233 + LambdaUpdateWrapper<OrderSpecificationChangeRecord> updateWrapper = Wrappers.lambdaUpdate(OrderSpecificationChangeRecord.class);
  234 + updateWrapper.set(OrderSpecificationChangeRecord::getStatus, status)
  235 + .eq(OrderSpecificationChangeRecord::getId, id);
  236 + getBaseMapper().update(updateWrapper);
  237 + if (OrderSpecChangeStatus.CANCEL.getCode().equals(status)) {
  238 + // 更新订货单规格变更状态
  239 + purchaseOrderInfoService.updateSpecChangeStatus(record.getOrderId(), status);
  240 + }
  241 + }
210 } 242 }
@@ -321,6 +321,23 @@ public class PurchaseOrderInfoServiceImpl extends BaseMpServiceImpl<PurchaseOrde @@ -321,6 +321,23 @@ public class PurchaseOrderInfoServiceImpl extends BaseMpServiceImpl<PurchaseOrde
321 getBaseMapper().update(updateWrapper); 321 getBaseMapper().update(updateWrapper);
322 } 322 }
323 323
  324 + /**
  325 + * 更新规格变更状态
  326 + *
  327 + * @param id 主键ID
  328 + * @param status 状态
  329 + */
  330 + @Override
  331 + public void updateSpecChangeStatus(String id, String status) {
  332 + if (StringUtils.isBlank(id) || StringUtils.isBlank(status)) {
  333 + return;
  334 + }
  335 + LambdaUpdateWrapper<PurchaseOrderInfo> updateWrapper = Wrappers.lambdaUpdate(PurchaseOrderInfo.class)
  336 + .set(PurchaseOrderInfo::getSpecChangeStatus, status)
  337 + .eq(PurchaseOrderInfo::getId, id);
  338 + getBaseMapper().update(updateWrapper);
  339 + }
  340 +
324 @Override 341 @Override
325 public void cleanCacheByKey(Serializable key) { 342 public void cleanCacheByKey(Serializable key) {
326 343
@@ -57,4 +57,12 @@ public interface OrderSpecificationChangeRecordService extends BaseMpService<Ord @@ -57,4 +57,12 @@ public interface OrderSpecificationChangeRecordService extends BaseMpService<Ord
57 * @param id 主键ID 57 * @param id 主键ID
58 */ 58 */
59 void deleteById(String id); 59 void deleteById(String id);
  60 +
  61 + /**
  62 + * 更新状态
  63 + *
  64 + * @param id 主键ID
  65 + * @param status 状态
  66 + */
  67 + void updateStatus(String id, String status);
60 } 68 }
@@ -88,4 +88,12 @@ public interface PurchaseOrderInfoService extends BaseMpService<PurchaseOrderInf @@ -88,4 +88,12 @@ public interface PurchaseOrderInfoService extends BaseMpService<PurchaseOrderInf
88 * @param status 撤销状态 88 * @param status 撤销状态
89 */ 89 */
90 void updateRevokeStatus(String id, String status); 90 void updateRevokeStatus(String id, String status);
  91 +
  92 + /**
  93 + * 更新规格变更状态
  94 + *
  95 + * @param id 主键ID
  96 + * @param status 状态
  97 + */
  98 + void updateSpecChangeStatus(String id, String status);
91 } 99 }