God 9 months ago
parent
commit
83d6f4c408
  1. 76
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/AppOldpartreturnApplyDetailsVo.java
  2. 64
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/AppOldpartreturnApplyFeign.java
  3. 81
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/AppOldpartreturnDetailsVo.java
  4. 25
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppDelegateQuery.java
  5. 37
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppFlowDto.java
  6. 28
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppFlowQuery.java
  7. 47
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppFlowTaskQuery.java
  8. 109
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/AppInventoryAllocateBillDetailsVoNew.java
  9. 103
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/AppInventoryAllocatebillDetailDetailsVoNew.java
  10. 58
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/AppInventoryAllocatebillFeign.java
  11. 25
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppDelegateQuery.java
  12. 37
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppFlowDto.java
  13. 28
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppFlowQuery.java
  14. 47
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppFlowTaskQuery.java
  15. 2
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/TerminalApplication.java
  16. 85
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/oldpartreturnapply/AppOldpartreturnApplyRest.java
  17. 186
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/oldpartreturnapply/AppOldpartreturnApplyService.java
  18. 85
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryallocatebill/AppInventoryAllocatebillRest.java
  19. 172
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryallocatebill/AppInventoryAllocatebillService.java
  20. 94
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/AsOldpartreturnApplyDetailsVo.java
  21. 59
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/AsOldpartreturnApplyFegin.java
  22. 89
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/AsOldpartreturnDetailsVo.java
  23. 37
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyCompleteDto.java
  24. 26
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyDelegateQuery.java
  25. 25
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyNodeQuery.java
  26. 26
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyNodeVo.java
  27. 48
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyTaskQuery.java
  28. 109
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/WmsInventoryAllocateBillDetailsVoNew.java
  29. 103
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/WmsInventoryAllocatebillDetailDetailsVoNew.java
  30. 58
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/WmsInventoryAllocatebillFeign.java
  31. 35
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/CompleteFlowDto.java
  32. 23
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowDelegateQuery.java
  33. 18
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowNodeQuery.java
  34. 24
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowNodeVo.java
  35. 43
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowTaskQuery.java
  36. 60
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryAllocateBillLogisticsRest.java
  37. 85
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryAllocatebillRest.java
  38. 8
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryAlloSelectList.java
  39. 20
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryAlloSelectQuery.java
  40. 10
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml
  41. 77
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java
  42. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillDetailsVoNew.java
  43. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillMapper.java
  44. 29
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillMapper.xml
  45. 6
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillQueryNew.java
  46. 413
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillService.java
  47. 7
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillVoNew.java
  48. 35
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/CompleteFlowDto.java
  49. 23
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowDelegateQuery.java
  50. 18
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowNodeQuery.java
  51. 24
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowNodeVo.java
  52. 43
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowTaskQuery.java
  53. 20
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/SubmitFlowDto.java
  54. 13
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocateBillDetail.java
  55. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocateBillDetailDtoNew.java
  56. 16
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocateBillDetailMapper.xml
  57. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocatebillDetailDetailsVoNew.java
  58. 72
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogistics.java
  59. 71
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsDetailsVo.java
  60. 75
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsDto.java
  61. 42
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsMapper.java
  62. 6
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsMapper.xml
  63. 60
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsService.java

76
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/AppOldpartreturnApplyDetailsVo.java

@ -0,0 +1,76 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.as.oldpartreturnapply;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* Project: anrui-as(旧件返厂) <br/>
* File: AsOldpartreturnApplyVo.java <br/>
* Class: com.yxt.anrui.as.api.asoldpartreturnapply.AsOldpartreturnApplyVo <br/>
* Description: 旧件返厂申请 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-04-17 10:29:50 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "旧件返厂申请 视图数据详情", description = "旧件返厂申请 视图数据详情")
public class AppOldpartreturnApplyDetailsVo implements Vo {
private String sid;
@ApiModelProperty("制单人姓名")
private String createByName;
@ApiModelProperty("发起部门名称")
private String createDeptName;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("申请日期")
private Date createTime;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("附件路径")
private List<String> files = new ArrayList<>();
@ApiModelProperty("流程实例的sid")
private String procInsId;
@ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("返厂旧件列表")
private List<AppOldpartreturnDetailsVo> asOldpartreturnList;
@ApiModelProperty("合计")
private String total;
}

64
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/AppOldpartreturnApplyFeign.java

@ -0,0 +1,64 @@
package com.yxt.anrui.terminal.api.as.oldpartreturnapply;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowDto;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowQuery;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowTaskQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
/**
* @Author
* @Date
* @Description
*/
@FeignClient(
contextId = "terminal-AppOldpartreturnApply",
name = "anrui-terminal",
path = "v1/oldpartreturnapply")
public interface AppOldpartreturnApplyFeign {
@ApiOperation("详情")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<AppOldpartreturnApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
/**********************************************流程********************************************/
@ApiOperation("办理")
@PutMapping("/agreeCreditInfo")
@ResponseBody
ResultBean agreeCreditInfo(@RequestBody AppFlowDto dto);
@ApiOperation("驳回")
@PutMapping("/rejectCreditInfo")
@ResponseBody
ResultBean rejectCreditInfo(@RequestBody AppFlowTaskQuery query);
@ApiOperation("撤回")
@PutMapping("/recallCreditInfo")
@ResponseBody
ResultBean recallCreditInfo(@RequestBody AppFlowTaskQuery query);
@ApiOperation("终止")
@PutMapping("/stopCreditInfo")
@ResponseBody
ResultBean stopCreditInfo(@RequestBody AppFlowTaskQuery query);
@ApiOperation("获取流程操作标题")
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap AppFlowQuery query);
@ApiOperation(value = "加签")
@PutMapping(value = "/delegate")
@ResponseBody
public ResultBean delegate(@RequestBody AppDelegateQuery delegateQuery);
@ApiOperation(value = "转办")
@PutMapping(value = "/assignTask")
@ResponseBody
public ResultBean assignTask(@RequestBody AppDelegateQuery delegateQuery);
}

81
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/AppOldpartreturnDetailsVo.java

@ -0,0 +1,81 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.as.oldpartreturnapply;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: anrui-as(旧件返厂) <br/>
* File: AsOldpartreturnVo.java <br/>
* Class: com.yxt.anrui.as.api.asoldpartreturn.AsOldpartreturnVo <br/>
* Description: 返厂旧件列表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-04-17 10:29:50 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "返厂旧件列表 视图数据详情", description = "返厂旧件列表 视图数据详情")
public class AppOldpartreturnDetailsVo implements Vo {
@ApiModelProperty("商品sku名称")
private String goodsSkuTitle;
@ApiModelProperty("商品sku名称")
private String goodsSkuName;
@ApiModelProperty("图号")
private String goodsSkuCode;
@ApiModelProperty("厂家名称")
private String manufacturerName;
@ApiModelProperty("规格")
private String goodsSkuOwnSpec;
@ApiModelProperty("单位")
private String unit;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("维修单号")
private String sourceBillNo;
@ApiModelProperty("索赔单号")
private String claimBillNo;
@ApiModelProperty("需返厂数量")
private BigDecimal needReturnCount;
@ApiModelProperty("实际返厂数量")
private BigDecimal actualReturnCount;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("是否迟返(1是0否)")
private String isCf;
@ApiModelProperty("是否迟返(1是0否)")
private String isCf2;
}

25
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppDelegateQuery.java

@ -0,0 +1,25 @@
package com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/9/28 10:16
*/
@Data
public class AppDelegateQuery {
@ApiModelProperty
private String userSid;
@ApiModelProperty("流程实例id")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("审批人sid")
private String assignee;
@ApiModelProperty("填写意见")
private String views;
}

37
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppFlowDto.java

@ -0,0 +1,37 @@
package com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/8/9 14:09
* @Description
*/
@Data
public class AppFlowDto implements Dto {
private static final long serialVersionUID = 3626473483180150495L;
@ApiModelProperty(value = "任务id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
@ApiModelProperty(value = "流程id")
@NotBlank(message = "参数错误:procInsId")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty(value = "意见")
private String comment;
@ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
@ApiModelProperty(value = "用户sid")
@NotBlank(message = "参数错误:userSid")
private String userSid;
@ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
}

28
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppFlowQuery.java

@ -0,0 +1,28 @@
package com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @Author dimengzhe
* @Date 2022/8/9 14:15
* @Description
*/
@Data
public class AppFlowQuery implements Query {
private static final long serialVersionUID = 5514095179438249641L;
@ApiModelProperty(value = "节点key")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "0 上一环节 1下一环节")
@NotNull(message = "参数错误:next")
private Integer next;
@ApiModelProperty("组织机构全路径")
private String orgPath;
}

47
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/as/oldpartreturnapply/flowable/AppFlowTaskQuery.java

@ -0,0 +1,47 @@
package com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/8/9 14:11
* @Description
*/
@Data
public class AppFlowTaskQuery implements Query {
private static final long serialVersionUID = -7082170710942810289L;
/**
* 终止驳回撤回
*/
@ApiModelProperty("任务Id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
/**
* 终止驳回撤回
*/
@ApiModelProperty("业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
/**
* 终止驳回
*/
@ApiModelProperty("任务意见")
private String comment;
/**
* 终止撤回驳回
*/
@ApiModelProperty("用户Sid")
private String userSid;
/**
* 终止
*/
@ApiModelProperty("流程实例Id")
@JsonProperty("procInsId")
private String instanceId;
}

109
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/AppInventoryAllocateBillDetailsVoNew.java

@ -0,0 +1,109 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.wms.inventoryallocatebill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* Project: yxt-wms(调拨单) <br/>
* File: WmsInventoryAllocatebillVo.java <br/>
* Class: com.yxt.wms.api.wmsinventoryallocatebill.WmsInventoryAllocatebillVo <br/>
* Description: (调拨单)-调出方操作 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-25 16:04:08 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "(调拨单)-调出方操作 视图数据详情", description = "(调拨单)-调出方操作 视图数据详情")
public class AppInventoryAllocateBillDetailsVoNew implements Vo {
private String sid;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("申请日期")
private Date createTime;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("申请部门sid")
private String deptSid;
@ApiModelProperty("申请部门名称")
private String deptName;
@ApiModelProperty("调出站sid")
private String outPlatSid;
@ApiModelProperty("调出站名称")
private String outPlatName;
@ApiModelProperty("调入站sid")
private String inPlatSid;
@ApiModelProperty("调入站名称")
private String inPlatName;
@ApiModelProperty("调入分公司sid")
private String inOrgSid;
@ApiModelProperty("调入分公司sid")
private String inOrgName;
@ApiModelProperty("确认人sid")
private String confirmSid;
@ApiModelProperty("确认人姓名")
private String confirmName;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("完成时间")
private Date finishTime;
@ApiModelProperty("创建组织")
private String createOrgName;
@ApiModelProperty("创建组织sid")
private String createOrgSid;
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeId; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInsId; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@ApiModelProperty("调拨等级(1一级站内,2分公司内,3集团内)")
private Integer grade;
@ApiModelProperty("调拨单商品明细")
private List<AppInventoryAllocatebillDetailDetailsVoNew> wmsInventoryAllocateBillDetailNewList;
}

103
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/AppInventoryAllocatebillDetailDetailsVoNew.java

@ -0,0 +1,103 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.wms.inventoryallocatebill;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-wms(调拨单) <br/>
* File: WmsInventoryAllocatebillDetailVo.java <br/>
* Class: com.yxt.wms.api.wmsinventoryallocatebilldetail.WmsInventoryAllocatebillDetailVo <br/>
* Description: (调拨单-明细) 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-25 16:04:08 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "(调拨单-明细) 视图数据详情", description = "(调拨单-明细) 视图数据详情")
public class AppInventoryAllocatebillDetailDetailsVoNew implements Vo {
private String sid;
@ApiModelProperty("主表sid")
private String billSid;
@ApiModelProperty("商品库存sid")
private String inventorySid;
@ApiModelProperty("商品ID")
private String goodsID;
@ApiModelProperty("商品spuSid")
private String goodsSpuSid;
@ApiModelProperty("商品spu名称")
private String goodsSpuName;
@ApiModelProperty("商品Skusid")
private String goodsSkuSid;
@ApiModelProperty("商品sku名称")
private String goodsSkuTitle;
@ApiModelProperty("图号")
private String goodsSkuCode;
@ApiModelProperty("规格")
private String goodsSkuOwnSpec;
@ApiModelProperty("厂家sid")
private String manufacturerSid;
@ApiModelProperty("厂家名称")
private String manufacturerName;
@ApiModelProperty("单位")
private String unit;
@ApiModelProperty("仓库sid")
private String warehouseSid;
@ApiModelProperty("仓库名称")
private String warehouseName;
@ApiModelProperty("库区sid")
private String warehouseAreaSid;
@ApiModelProperty("库区名称")
private String warehouseArea;
@ApiModelProperty("库位sid")
private String warehouseRackSid;
@ApiModelProperty("库位编码")
private String warehouseRackCode;
@ApiModelProperty("库存数量")
private BigDecimal stockCount;
@ApiModelProperty("成本价")
private BigDecimal taxPrice;
@ApiModelProperty("加价比例(%)")
private BigDecimal markUpRatio;
@ApiModelProperty("调拔单价")
private BigDecimal requAmount;
@ApiModelProperty("调拨数量")
private BigDecimal count;
@ApiModelProperty("调拨金额(调拨数量*含税价)")
private BigDecimal amount;
}

58
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/AppInventoryAllocatebillFeign.java

@ -0,0 +1,58 @@
package com.yxt.anrui.terminal.api.wms.inventoryallocatebill;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowDto;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowTaskQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
@FeignClient(
contextId = "terminal-AppInventoryAllocatebill",
name = "anrui-terminal",
path = "v1/inventoryallocatebill")
public interface AppInventoryAllocatebillFeign {
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<AppInventoryAllocateBillDetailsVoNew> fetchDetailsBySid(@PathVariable("sid") String sid);
/**********************************************流程********************************************/
@ApiOperation("办理")
@PutMapping("/agreeCreditInfo")
@ResponseBody
ResultBean agreeCreditInfo(@RequestBody AppFlowDto dto);
@ApiOperation("驳回")
@PutMapping("/rejectCreditInfo")
@ResponseBody
ResultBean rejectCreditInfo(@RequestBody AppFlowTaskQuery query);
@ApiOperation("撤回")
@PutMapping("/recallCreditInfo")
@ResponseBody
ResultBean recallCreditInfo(@RequestBody AppFlowTaskQuery query);
@ApiOperation("终止")
@PutMapping("/stopCreditInfo")
@ResponseBody
ResultBean stopCreditInfo(@RequestBody AppFlowTaskQuery query);
@ApiOperation("获取流程操作标题")
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap AppFlowQuery query);
@ApiOperation(value = "加签")
@PutMapping(value = "/delegate")
@ResponseBody
public ResultBean delegate(@RequestBody AppDelegateQuery delegateQuery);
@ApiOperation(value = "转办")
@PutMapping(value = "/assignTask")
@ResponseBody
public ResultBean assignTask(@RequestBody AppDelegateQuery delegateQuery);
}

25
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppDelegateQuery.java

@ -0,0 +1,25 @@
package com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/9/28 10:16
*/
@Data
public class AppDelegateQuery {
@ApiModelProperty
private String userSid;
@ApiModelProperty("流程实例id")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("审批人sid")
private String assignee;
@ApiModelProperty("填写意见")
private String views;
}

37
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppFlowDto.java

@ -0,0 +1,37 @@
package com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/8/9 14:09
* @Description
*/
@Data
public class AppFlowDto implements Dto {
private static final long serialVersionUID = 3626473483180150495L;
@ApiModelProperty(value = "任务id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
@ApiModelProperty(value = "流程id")
@NotBlank(message = "参数错误:procInsId")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty(value = "意见")
private String comment;
@ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
@ApiModelProperty(value = "用户sid")
@NotBlank(message = "参数错误:userSid")
private String userSid;
@ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
}

28
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppFlowQuery.java

@ -0,0 +1,28 @@
package com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @Author dimengzhe
* @Date 2022/8/9 14:15
* @Description
*/
@Data
public class AppFlowQuery implements Query {
private static final long serialVersionUID = 5514095179438249641L;
@ApiModelProperty(value = "节点key")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "0 上一环节 1下一环节")
@NotNull(message = "参数错误:next")
private Integer next;
@ApiModelProperty("组织机构全路径")
private String orgPath;
}

47
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryallocatebill/flowable/AppFlowTaskQuery.java

@ -0,0 +1,47 @@
package com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/8/9 14:11
* @Description
*/
@Data
public class AppFlowTaskQuery implements Query {
private static final long serialVersionUID = -7082170710942810289L;
/**
* 终止驳回撤回
*/
@ApiModelProperty("任务Id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
/**
* 终止驳回撤回
*/
@ApiModelProperty("业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
/**
* 终止驳回
*/
@ApiModelProperty("任务意见")
private String comment;
/**
* 终止撤回驳回
*/
@ApiModelProperty("用户Sid")
private String userSid;
/**
* 终止
*/
@ApiModelProperty("流程实例Id")
@JsonProperty("procInsId")
private String instanceId;
}

2
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/TerminalApplication.java

@ -15,7 +15,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
"com.yxt.anrui.terminal", "com.yxt.anrui.terminal",
"com.yxt.common.base.config" "com.yxt.common.base.config"
},exclude = {DataSourceAutoConfiguration.class}) },exclude = {DataSourceAutoConfiguration.class})
@EnableFeignClients(basePackages = {"com.yxt.anrui.portal", "com.yxt.anrui.crm", "com.yxt.anrui.base", "com.yxt.anrui.riskcenter","com.yxt.anrui.flowable","com.yxt.anrui.buscenter","com.yxt.anrui.scm","com.yxt.anrui.fin", "com.yxt.anrui.terminal.fegin.wmsinventorycheckbill","com.yxt.anrui.terminal.fegin.wmsinventoryprofitin","com.yxt.anrui.terminal.fegin.wmsinventoryprofitout","com.yxt.anrui.terminal.fegin.basegoodssku","com.yxt.anrui.terminal.fegin.basesupplierinfo","com.yxt.anrui.terminal.fegin.wmsInventory","com.yxt.anrui.terminal.fegin.asbusrepairbill","com.yxt.anrui.terminal.fegin.pmspurchasebill","com.yxt.anrui.terminal.fegin.pmspurchasebackbill","com.yxt.anrui.terminal.fegin.smspricestrategybill","com.yxt.anrui.terminal.fegin.astechtitleapply","com.yxt.anrui.terminal.fegin.asserviceaccommapply","com.yxt.anrui.terminal.fegin.asbusclaiminvoicebill"}) @EnableFeignClients(basePackages = {"com.yxt.anrui.portal", "com.yxt.anrui.crm", "com.yxt.anrui.base", "com.yxt.anrui.riskcenter","com.yxt.anrui.flowable","com.yxt.anrui.buscenter","com.yxt.anrui.scm","com.yxt.anrui.fin", "com.yxt.anrui.terminal.fegin.wmsinventorycheckbill","com.yxt.anrui.terminal.fegin.wmsinventoryprofitin","com.yxt.anrui.terminal.fegin.wmsinventoryprofitout","com.yxt.anrui.terminal.fegin.basegoodssku","com.yxt.anrui.terminal.fegin.basesupplierinfo","com.yxt.anrui.terminal.fegin.wmsInventory","com.yxt.anrui.terminal.fegin.asbusrepairbill","com.yxt.anrui.terminal.fegin.pmspurchasebill","com.yxt.anrui.terminal.fegin.pmspurchasebackbill","com.yxt.anrui.terminal.fegin.smspricestrategybill","com.yxt.anrui.terminal.fegin.astechtitleapply","com.yxt.anrui.terminal.fegin.asserviceaccommapply","com.yxt.anrui.terminal.fegin.asbusclaiminvoicebill","com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill","com.yxt.anrui.terminal.fegin.asoldpartreturnapply"})
public class TerminalApplication { public class TerminalApplication {
public static void main(String[] args) { public static void main(String[] args) {

85
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/oldpartreturnapply/AppOldpartreturnApplyRest.java

@ -0,0 +1,85 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.as.oldpartreturnapply;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.AppOldpartreturnApplyDetailsVo;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.AppOldpartreturnApplyFeign;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowDto;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowQuery;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowTaskQuery;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("v1/oldpartreturnapply")
public class AppOldpartreturnApplyRest implements AppOldpartreturnApplyFeign {
@Autowired
private AppOldpartreturnApplyService appOldpartreturnApplyService;
@Override
public ResultBean<AppOldpartreturnApplyDetailsVo> fetchDetailsBySid(String sid) {
return appOldpartreturnApplyService.fetchDetailsBySid(sid);
}
@Override
public ResultBean agreeCreditInfo(AppFlowDto dto) {
return appOldpartreturnApplyService.agreeCreditInfo(dto);
}
@Override
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) {
return appOldpartreturnApplyService.rejectCreditInfo(query);
}
@Override
public ResultBean recallCreditInfo(AppFlowTaskQuery query) {
return appOldpartreturnApplyService.recallCreditInfo(query);
}
@Override
public ResultBean stopCreditInfo(AppFlowTaskQuery query) {
return appOldpartreturnApplyService.stopCreditInfo(query);
}
@Override
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) {
return appOldpartreturnApplyService.getFlowOperateTitle(query);
}
@Override
public ResultBean delegate(AppDelegateQuery delegateQuery) {
return appOldpartreturnApplyService.delegate(delegateQuery);
}
@Override
public ResultBean assignTask(AppDelegateQuery delegateQuery) {
return appOldpartreturnApplyService.assignTask(delegateQuery);
}
}

186
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/as/oldpartreturnapply/AppOldpartreturnApplyService.java

@ -0,0 +1,186 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.as.oldpartreturnapply;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.AppOldpartreturnApplyDetailsVo;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.AppOldpartreturnDetailsVo;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowDto;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowQuery;
import com.yxt.anrui.terminal.api.as.oldpartreturnapply.flowable.AppFlowTaskQuery;
import com.yxt.anrui.terminal.fegin.asoldpartreturnapply.AsOldpartreturnApplyDetailsVo;
import com.yxt.anrui.terminal.fegin.asoldpartreturnapply.AsOldpartreturnApplyFegin;
import com.yxt.anrui.terminal.fegin.asoldpartreturnapply.flowable.*;
import com.yxt.anrui.terminal.fegin.astechtitleapply.flowable.*;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@Service
public class AppOldpartreturnApplyService {
@Resource
private AsOldpartreturnApplyFegin asOldpartreturnApplyFegin;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysUserFeign sysUserFeign;
public ResultBean<AppOldpartreturnApplyDetailsVo> fetchDetailsBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
AsOldpartreturnApplyDetailsVo data = asOldpartreturnApplyFegin.fetchDetailsBySid(sid).getData();
AppOldpartreturnApplyDetailsVo appOldpartreturnApplyDetailsVo = new AppOldpartreturnApplyDetailsVo();
BeanUtil.copyProperties(data,appOldpartreturnApplyDetailsVo);
appOldpartreturnApplyDetailsVo.setProcInsId(data.getProcInstId());
appOldpartreturnApplyDetailsVo.setCreateDeptName(data.getDeptName());
List<String> filePaths = data.getFilePaths();
ArrayList<String> files = new ArrayList<>();
for (String path : filePaths) {
files.add(path);
}
appOldpartreturnApplyDetailsVo.setFiles(files);
List<AppOldpartreturnDetailsVo> asOldpartreturnList = appOldpartreturnApplyDetailsVo.getAsOldpartreturnList();
for (AppOldpartreturnDetailsVo appOldpartreturnDetailsVo : asOldpartreturnList) {
appOldpartreturnDetailsVo.setGoodsSkuName(appOldpartreturnDetailsVo.getGoodsSkuTitle());
appOldpartreturnDetailsVo.setIsCf2(appOldpartreturnDetailsVo.getIsCf().equals("1") ? "是" : "否");
}
return rb.success().setData(appOldpartreturnApplyDetailsVo);
}
public ResultBean agreeCreditInfo(AppFlowDto dto) {
ResultBean rb = ResultBean.fireFail();
//根据用户sid获取staffSid
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid());
if (!userVoResultBean.getSuccess()) {
return rb.setMsg(userVoResultBean.getMsg());
}
//根据staffSid获取用户的组织全路径
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid());
if (!staffOrgResultBean.getSuccess()) {
return rb.setMsg(staffOrgResultBean.getMsg());
}
//用户的组织全路径
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath();
AsOldpartreturnApplyCompleteDto asOldpartreturnApplyCompleteDto = new AsOldpartreturnApplyCompleteDto();
BeanUtil.copyProperties(dto, asOldpartreturnApplyCompleteDto);
asOldpartreturnApplyCompleteDto.setOrgPath(orgSidPath);
ResultBean resultBean = asOldpartreturnApplyFegin.complete(asOldpartreturnApplyCompleteDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
AsOldpartreturnApplyTaskQuery asOldpartreturnApplyTaskQuery = new AsOldpartreturnApplyTaskQuery();
BeanUtil.copyProperties(query, asOldpartreturnApplyTaskQuery);
ResultBean resultBean = asOldpartreturnApplyFegin.taskReject(asOldpartreturnApplyTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean recallCreditInfo(AppFlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
AsOldpartreturnApplyTaskQuery asOldpartreturnApplyTaskQuery = new AsOldpartreturnApplyTaskQuery();
BeanUtil.copyProperties(query, asOldpartreturnApplyTaskQuery);
ResultBean resultBean = asOldpartreturnApplyFegin.revokeProcess(asOldpartreturnApplyTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean stopCreditInfo(AppFlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
AsOldpartreturnApplyTaskQuery asOldpartreturnApplyTaskQuery = new AsOldpartreturnApplyTaskQuery();
BeanUtil.copyProperties(query, asOldpartreturnApplyTaskQuery);
ResultBean resultBean = asOldpartreturnApplyFegin.breakProcess(asOldpartreturnApplyTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) {
ResultBean<String> rb = ResultBean.fireFail();
//0 上一环节 1下一环节
int next = query.getNext();
AsOldpartreturnApplyNodeQuery getNodeQuery = new AsOldpartreturnApplyNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<AsOldpartreturnApplyNodeVo>> getPreviousNodesForReject = asOldpartreturnApplyFegin.getPreviousNodesForReject(getNodeQuery);
if (getPreviousNodesForReject.getSuccess()) {
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null));
data = getPreviousNodesForReject.getData().get(0).getName();
} else {
return rb.setMsg(getPreviousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<AsOldpartreturnApplyNodeVo>> getNextNodesForSubmit = asOldpartreturnApplyFegin.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg(getNextNodesForSubmit.getMsg());
}
} else {
return rb.setMsg("参数错误:next");
}
return rb.success().setData(data);
}
public ResultBean delegate(AppDelegateQuery delegateQuery) {
ResultBean rb = ResultBean.fireFail();
AsOldpartreturnApplyDelegateQuery delegateQuery1 = new
AsOldpartreturnApplyDelegateQuery();
BeanUtil.copyProperties(delegateQuery, delegateQuery1);
asOldpartreturnApplyFegin.delegate(delegateQuery1);
return rb.success();
}
public ResultBean assignTask(AppDelegateQuery delegateQuery) {
ResultBean rb = ResultBean.fireFail();
AsOldpartreturnApplyDelegateQuery delegateQuery1 = new
AsOldpartreturnApplyDelegateQuery();
BeanUtil.copyProperties(delegateQuery, delegateQuery1);
asOldpartreturnApplyFegin.assignTask(delegateQuery1);
return rb.success();
}
}

85
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryallocatebill/AppInventoryAllocatebillRest.java

@ -0,0 +1,85 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.wms.inventoryallocatebill;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.AppInventoryAllocateBillDetailsVoNew;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowDto;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowTaskQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.AppInventoryAllocatebillFeign;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("v1/inventoryallocatebill")
public class AppInventoryAllocatebillRest implements AppInventoryAllocatebillFeign {
@Autowired
private AppInventoryAllocatebillService appInventoryAllocatebillService;
@Override
public ResultBean<AppInventoryAllocateBillDetailsVoNew> fetchDetailsBySid(String sid) {
return appInventoryAllocatebillService.fetchDetailsBySid(sid);
}
@Override
public ResultBean agreeCreditInfo(AppFlowDto dto) {
return appInventoryAllocatebillService.agreeCreditInfo(dto);
}
@Override
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) {
return appInventoryAllocatebillService.rejectCreditInfo(query);
}
@Override
public ResultBean recallCreditInfo(AppFlowTaskQuery query) {
return appInventoryAllocatebillService.recallCreditInfo(query);
}
@Override
public ResultBean stopCreditInfo(AppFlowTaskQuery query) {
return appInventoryAllocatebillService.stopCreditInfo(query);
}
@Override
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) {
return appInventoryAllocatebillService.getFlowOperateTitle(query);
}
@Override
public ResultBean delegate(AppDelegateQuery delegateQuery) {
return appInventoryAllocatebillService.delegate(delegateQuery);
}
@Override
public ResultBean assignTask(AppDelegateQuery delegateQuery) {
return appInventoryAllocatebillService.assignTask(delegateQuery);
}
}

172
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryallocatebill/AppInventoryAllocatebillService.java

@ -0,0 +1,172 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.wms.inventoryallocatebill;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowDto;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.flowable.AppFlowTaskQuery;
import com.yxt.anrui.terminal.api.wms.inventoryallocatebill.AppInventoryAllocateBillDetailsVoNew;
import com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.WmsInventoryAllocateBillDetailsVoNew;
import com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.WmsInventoryAllocatebillFeign;
import com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.flowable.*;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@Service
public class AppInventoryAllocatebillService {
@Resource
private WmsInventoryAllocatebillFeign wmsInventoryAllocatebillFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysUserFeign sysUserFeign;
public ResultBean<AppInventoryAllocateBillDetailsVoNew> fetchDetailsBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
WmsInventoryAllocateBillDetailsVoNew data = wmsInventoryAllocatebillFeign.fetchDetailsBySid(sid).getData();
AppInventoryAllocateBillDetailsVoNew appInventoryAllocateBillDetailsVoNew = new AppInventoryAllocateBillDetailsVoNew();
BeanUtil.copyProperties(data,appInventoryAllocateBillDetailsVoNew);
appInventoryAllocateBillDetailsVoNew.setProcInsId(data.getProcInstId());
return rb.success().setData(appInventoryAllocateBillDetailsVoNew);
}
public ResultBean agreeCreditInfo(AppFlowDto dto) {
ResultBean rb = ResultBean.fireFail();
//根据用户sid获取staffSid
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid());
if (!userVoResultBean.getSuccess()) {
return rb.setMsg(userVoResultBean.getMsg());
}
//根据staffSid获取用户的组织全路径
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid());
if (!staffOrgResultBean.getSuccess()) {
return rb.setMsg(staffOrgResultBean.getMsg());
}
//用户的组织全路径
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath();
CompleteFlowDto completeFlowDto = new CompleteFlowDto();
BeanUtil.copyProperties(dto, completeFlowDto);
completeFlowDto.setOrgSidPath(orgSidPath);
ResultBean resultBean = wmsInventoryAllocatebillFeign.complete(completeFlowDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
FlowTaskQuery flowTaskQuery = new FlowTaskQuery();
BeanUtil.copyProperties(query, flowTaskQuery);
ResultBean resultBean = wmsInventoryAllocatebillFeign.taskReject(flowTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean recallCreditInfo(AppFlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
FlowTaskQuery flowTaskQuery = new FlowTaskQuery();
BeanUtil.copyProperties(query, flowTaskQuery);
ResultBean resultBean = wmsInventoryAllocatebillFeign.revokeProcess(flowTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean stopCreditInfo(AppFlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
FlowTaskQuery flowTaskQuery = new FlowTaskQuery();
BeanUtil.copyProperties(query, flowTaskQuery);
ResultBean resultBean = wmsInventoryAllocatebillFeign.breakProcess(flowTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) {
ResultBean<String> rb = ResultBean.fireFail();
//0 上一环节 1下一环节
int next = query.getNext();
FlowNodeQuery getNodeQuery = new FlowNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<FlowNodeVo>> getPreviousNodesForReject = wmsInventoryAllocatebillFeign.getPreviousNodesForReject(getNodeQuery);
if (getPreviousNodesForReject.getSuccess()) {
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null));
data = getPreviousNodesForReject.getData().get(0).getName();
} else {
return rb.setMsg(getPreviousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<FlowNodeVo>> getNextNodesForSubmit = wmsInventoryAllocatebillFeign.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg(getNextNodesForSubmit.getMsg());
}
} else {
return rb.setMsg("参数错误:next");
}
return rb.success().setData(data);
}
public ResultBean delegate(AppDelegateQuery delegateQuery) {
ResultBean rb = ResultBean.fireFail();
FlowDelegateQuery delegateQuery1 = new
FlowDelegateQuery();
BeanUtil.copyProperties(delegateQuery, delegateQuery1);
wmsInventoryAllocatebillFeign.delegate(delegateQuery1);
return rb.success();
}
public ResultBean assignTask(AppDelegateQuery delegateQuery) {
ResultBean rb = ResultBean.fireFail();
FlowDelegateQuery delegateQuery1 = new
FlowDelegateQuery();
BeanUtil.copyProperties(delegateQuery, delegateQuery1);
wmsInventoryAllocatebillFeign.assignTask(delegateQuery1);
return rb.success();
}
}

94
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/AsOldpartreturnApplyDetailsVo.java

@ -0,0 +1,94 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* Project: anrui-as(旧件返厂) <br/>
* File: AsOldpartreturnApplyVo.java <br/>
* Class: com.yxt.anrui.as.api.asoldpartreturnapply.AsOldpartreturnApplyVo <br/>
* Description: 旧件返厂申请 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-04-17 10:29:50 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "旧件返厂申请 视图数据详情", description = "旧件返厂申请 视图数据详情")
public class AsOldpartreturnApplyDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("发起部门sid")
private String deptSid; // 发起部门sid
@ApiModelProperty("发起部门名称")
private String deptName; // 发起部门名称
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("申请日期")
private Date createTime;
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("附件路径")
private List<String> filePaths = new ArrayList<>();
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("分公司名称")
private String useOrgName; // 分公司名称
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeId; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInstId; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("办结时间")
private Date finishTime; // 办结时间
@ApiModelProperty("返厂旧件列表")
private List<AsOldpartreturnDetailsVo> asOldpartreturnList;
}

59
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/AsOldpartreturnApplyFegin.java

@ -0,0 +1,59 @@
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply;
import com.yxt.anrui.terminal.fegin.asoldpartreturnapply.flowable.*;
import com.yxt.anrui.terminal.fegin.astechtitleapply.AsTechTitleApplyDetailsVo;
import com.yxt.anrui.terminal.fegin.astechtitleapply.flowable.*;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
@FeignClient(
contextId = "yxt-as-AsOldpartreturnApply",
name = "yxt-as",
path = "v1/asoldpartreturnapply"
)
public interface AsOldpartreturnApplyFegin {
@ApiOperation("详情")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<AsOldpartreturnApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation(value = "办理(同意)")
@PostMapping("/complete")
public ResultBean complete(@Valid @RequestBody AsOldpartreturnApplyCompleteDto query);
@ApiOperation(value = "获取上一个环节")
@GetMapping(value = "/getPreviousNodesForReject")
ResultBean<List<AsOldpartreturnApplyNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap AsOldpartreturnApplyNodeQuery query);
@ApiOperation(value = "获取下一个环节")
@GetMapping(value = "/getNextNodesForSubmit")
ResultBean<List<AsOldpartreturnApplyNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap AsOldpartreturnApplyNodeQuery query);
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public ResultBean taskReject(@Valid @RequestBody AsOldpartreturnApplyTaskQuery query);
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess")
public ResultBean revokeProcess(@Valid @RequestBody AsOldpartreturnApplyTaskQuery query);
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess")
public ResultBean breakProcess(@Valid @RequestBody AsOldpartreturnApplyTaskQuery query);
@ApiOperation(value = "加签")
@PostMapping(value = "/delegate")
@ResponseBody
public ResultBean delegate(@RequestBody AsOldpartreturnApplyDelegateQuery query);
@ApiOperation(value = "转办")
@PutMapping(value = "/assignTask")
@ResponseBody
public ResultBean assignTask(@RequestBody AsOldpartreturnApplyDelegateQuery query);
}

89
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/AsOldpartreturnDetailsVo.java

@ -0,0 +1,89 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: anrui-as(旧件返厂) <br/>
* File: AsOldpartreturnVo.java <br/>
* Class: com.yxt.anrui.as.api.asoldpartreturn.AsOldpartreturnVo <br/>
* Description: 返厂旧件列表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-04-17 10:29:50 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "返厂旧件列表 视图数据详情", description = "返厂旧件列表 视图数据详情")
public class AsOldpartreturnDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("主表sid")
private String mainSid;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("商品spuSid")
private String goodsSpuSid;
@ApiModelProperty("商品spu名称")
private String goodsSpuName;
@ApiModelProperty("商品Skusid")
private String goodsSkuSid;
@ApiModelProperty("商品sku名称")
private String goodsSkuTitle;
@ApiModelProperty("图号")
private String goodsSkuCode;
@ApiModelProperty("规格")
private String goodsSkuOwnSpec;
@ApiModelProperty("厂家sid")
private String manufacturerSid;
@ApiModelProperty("厂家名称")
private String manufacturerName;
@ApiModelProperty("单位")
private String unit;
@ApiModelProperty("维修单号")
private String sourceBillNo;
@ApiModelProperty("索赔单号")
private String claimBillNo;
@ApiModelProperty("是否迟返(1是0否)")
private String isCf;
@ApiModelProperty("需返厂数量")
private BigDecimal needReturnCount; // 需返厂数量
@ApiModelProperty("实际返厂数量")
private BigDecimal actualReturnCount; // 实际返厂数量
}

37
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyCompleteDto.java

@ -0,0 +1,37 @@
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply.flowable;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/9/6 14:57
* @Description
*/
@Data
public class AsOldpartreturnApplyCompleteDto implements Dto {
private static final long serialVersionUID = 6378752532534735663L;
@ApiModelProperty(value = "用户sid")
private String userSid;
@ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
@ApiModelProperty(value = "任务id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
@ApiModelProperty(value = "流程id(PC)")
private String instanceId;
@ApiModelProperty(value = "流程id(移动)")
private String procInsId;
@ApiModelProperty(value = "意见")
private String comment;
@ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
private String orgPath;
}

26
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyDelegateQuery.java

@ -0,0 +1,26 @@
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/9/28 9:28
*/
@Data
public class AsOldpartreturnApplyDelegateQuery {
@ApiModelProperty
private String userSid;
@ApiModelProperty("流程实例id")
// @JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("审批人sid")
private String assignee;
@ApiModelProperty("填写意见")
private String views;
}

25
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyNodeQuery.java

@ -0,0 +1,25 @@
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply.flowable;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/9/6 15:04
* @Description
*/
@Data
public class AsOldpartreturnApplyNodeQuery implements Query {
private static final long serialVersionUID = 9117613683840483366L;
@ApiModelProperty(value = "环节定义id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "0 上一环节 1下一环节")
private Integer next;
}

26
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyNodeVo.java

@ -0,0 +1,26 @@
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply.flowable;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/9/6 15:03
* @Description
*/
@Data
public class AsOldpartreturnApplyNodeVo implements Vo {
private static final long serialVersionUID = -833419512294877848L;
@ApiModelProperty(value = "节点名称")
private String name;
@ApiModelProperty(value = "节点id")
private String id;
@ApiModelProperty(value = "审批组")
private List<String> candidateGroups;
@ApiModelProperty(value = "是否是最后环节")
private String endTask;
}

48
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/asoldpartreturnapply/flowable/AsOldpartreturnApplyTaskQuery.java

@ -0,0 +1,48 @@
package com.yxt.anrui.terminal.fegin.asoldpartreturnapply.flowable;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/9/6 15:06
* @Description
*/
@Data
public class AsOldpartreturnApplyTaskQuery implements Query {
private static final long serialVersionUID = 1288615499873178778L;
/**
* 终止驳回撤回
*/
@ApiModelProperty("任务Id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
/**
* 终止驳回撤回
*/
@ApiModelProperty("业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
/**
* 终止驳回
*/
@ApiModelProperty("任务意见")
private String comment;
/**
* 终止撤回驳回
*/
@ApiModelProperty("用户Sid")
private String userSid;
/**
* 终止
*/
@ApiModelProperty("流程实例Id(PC)")
private String instanceId;
@ApiModelProperty("流程实例Id(移动)")
private String procInsId;
}

109
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/WmsInventoryAllocateBillDetailsVoNew.java

@ -0,0 +1,109 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* Project: yxt-wms(调拨单) <br/>
* File: WmsInventoryAllocatebillVo.java <br/>
* Class: com.yxt.wms.api.wmsinventoryallocatebill.WmsInventoryAllocatebillVo <br/>
* Description: (调拨单)-调出方操作 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-25 16:04:08 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "(调拨单)-调出方操作 视图数据详情", description = "(调拨单)-调出方操作 视图数据详情")
public class WmsInventoryAllocateBillDetailsVoNew implements Vo {
private String sid;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("申请日期")
private Date createTime;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("制单人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("申请部门sid")
private String deptSid;
@ApiModelProperty("申请部门名称")
private String deptName;
@ApiModelProperty("调出站sid")
private String outPlatSid;
@ApiModelProperty("调出站名称")
private String outPlatName;
@ApiModelProperty("调入站sid")
private String inPlatSid;
@ApiModelProperty("调入站名称")
private String inPlatName;
@ApiModelProperty("调入分公司sid")
private String inOrgSid;
@ApiModelProperty("调入分公司sid")
private String inOrgName;
@ApiModelProperty("确认人sid")
private String confirmSid;
@ApiModelProperty("确认人姓名")
private String confirmName;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("完成时间")
private Date finishTime;
@ApiModelProperty("创建组织")
private String createOrgName;
@ApiModelProperty("创建组织sid")
private String createOrgSid;
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeId; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInstId; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@ApiModelProperty("调拨等级(1一级站内,2分公司内,3集团内)")
private Integer grade;
@ApiModelProperty("调拨单商品明细")
private List<WmsInventoryAllocatebillDetailDetailsVoNew> wmsInventoryAllocateBillDetailNewList;
}

103
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/WmsInventoryAllocatebillDetailDetailsVoNew.java

@ -0,0 +1,103 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: yxt-wms(调拨单) <br/>
* File: WmsInventoryAllocatebillDetailVo.java <br/>
* Class: com.yxt.wms.api.wmsinventoryallocatebilldetail.WmsInventoryAllocatebillDetailVo <br/>
* Description: (调拨单-明细) 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-25 16:04:08 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "(调拨单-明细) 视图数据详情", description = "(调拨单-明细) 视图数据详情")
public class WmsInventoryAllocatebillDetailDetailsVoNew implements Vo {
private String sid;
@ApiModelProperty("主表sid")
private String billSid;
@ApiModelProperty("商品库存sid")
private String inventorySid;
@ApiModelProperty("商品ID")
private String goodsID;
@ApiModelProperty("商品spuSid")
private String goodsSpuSid;
@ApiModelProperty("商品spu名称")
private String goodsSpuName;
@ApiModelProperty("商品Skusid")
private String goodsSkuSid;
@ApiModelProperty("商品sku名称")
private String goodsSkuTitle;
@ApiModelProperty("图号")
private String goodsSkuCode;
@ApiModelProperty("规格")
private String goodsSkuOwnSpec;
@ApiModelProperty("厂家sid")
private String manufacturerSid;
@ApiModelProperty("厂家名称")
private String manufacturerName;
@ApiModelProperty("单位")
private String unit;
@ApiModelProperty("仓库sid")
private String warehouseSid;
@ApiModelProperty("仓库名称")
private String warehouseName;
@ApiModelProperty("库区sid")
private String warehouseAreaSid;
@ApiModelProperty("库区名称")
private String warehouseArea;
@ApiModelProperty("库位sid")
private String warehouseRackSid;
@ApiModelProperty("库位编码")
private String warehouseRackCode;
@ApiModelProperty("库存数量")
private BigDecimal stockCount;
@ApiModelProperty("成本价")
private BigDecimal taxPrice;
@ApiModelProperty("加价比例(%)")
private BigDecimal markUpRatio;
@ApiModelProperty("调拔单价")
private BigDecimal requAmount;
@ApiModelProperty("调拨数量")
private BigDecimal count;
@ApiModelProperty("调拨金额(调拨数量*含税价)")
private BigDecimal amount;
}

58
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/WmsInventoryAllocatebillFeign.java

@ -0,0 +1,58 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill;
import com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.flowable.*;
import com.yxt.anrui.terminal.fegin.wmsinventoryprofitin.WmsInventoryProfitinDetailsVo;
import com.yxt.anrui.terminal.fegin.wmsinventoryprofitin.flowable.*;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
@FeignClient(
contextId = "yxt-wms-WmsInventoryAllocatebill",
name = "yxt-wms",
path = "apiadmin/inventory/wmsinventoryallocatebill")
public interface WmsInventoryAllocatebillFeign {
@ApiOperation("详情")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<WmsInventoryAllocateBillDetailsVoNew> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation(value = "办理(同意)")
@PostMapping("/complete")
public ResultBean complete(@Valid @RequestBody CompleteFlowDto query);
@ApiOperation(value = "获取上一个环节")
@GetMapping(value = "/getPreviousNodesForReject")
ResultBean<List<FlowNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap FlowNodeQuery query);
@ApiOperation(value = "获取下一个环节")
@GetMapping(value = "/getNextNodesForSubmit")
ResultBean<List<FlowNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap FlowNodeQuery query);
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public ResultBean taskReject(@Valid @RequestBody FlowTaskQuery query);
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess")
public ResultBean revokeProcess(@Valid @RequestBody FlowTaskQuery query);
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess")
public ResultBean breakProcess(@Valid @RequestBody FlowTaskQuery query);
@ApiOperation(value = "加签")
@PostMapping(value = "/delegate")
@ResponseBody
public ResultBean delegate(@RequestBody FlowDelegateQuery query);
@ApiOperation(value = "转办")
@PutMapping(value = "/assignTask")
@ResponseBody
public ResultBean assignTask(@RequestBody FlowDelegateQuery query);
}

35
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/CompleteFlowDto.java

@ -0,0 +1,35 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class CompleteFlowDto {
@ApiModelProperty(value = "用户sid")
@NotBlank(message = "参数错误:userSid")
private String userSid;
@ApiModelProperty(value = "用户全路径sid")
private String orgSidPath;
@ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
@ApiModelProperty(value = "任务id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
@ApiModelProperty(value = "流程id")
@NotBlank(message = "参数错误:instanceId")
private String instanceId;
@ApiModelProperty(value = "意见")
private String comment;
@ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
}

23
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowDelegateQuery.java

@ -0,0 +1,23 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowDelegateQuery {
private String userSid;
@ApiModelProperty("流程实例id")
private String instanceId;
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("审批人sid")
private String assignee;
@ApiModelProperty("填写意见")
private String views;
}

18
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowNodeQuery.java

@ -0,0 +1,18 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowNodeQuery {
@ApiModelProperty(value = "环节定义id")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
}

24
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowNodeVo.java

@ -0,0 +1,24 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowNodeVo {
@ApiModelProperty(value = "节点名称")
private String name;
@ApiModelProperty(value = "节点id")
private String id;
@ApiModelProperty(value = "审批组")
private List<String> candidateGroups;
@ApiModelProperty(value = "是否是最后环节")
private String endTask;
}

43
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryallocatebill/flowable/FlowTaskQuery.java

@ -0,0 +1,43 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowTaskQuery {
/**
* 终止驳回撤回
*/
@ApiModelProperty("任务Id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
/**
* 终止驳回撤回
*/
@ApiModelProperty("业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
/**
* 终止驳回
*/
@ApiModelProperty("任务意见")
private String comment;
/**
* 终止撤回驳回
*/
@ApiModelProperty("用户Sid")
private String userSid;
/**
* 终止
*/
@ApiModelProperty("流程实例Id")
private String instanceId;
}

60
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryAllocateBillLogisticsRest.java

@ -0,0 +1,60 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.wms.apiadmin.inventroy;
import com.yxt.common.core.result.ResultBean;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics.WmsInventoryAllocateBillLogisticsDetailsVo;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics.WmsInventoryAllocateBillLogisticsDto;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics.WmsInventoryAllocateBillLogisticsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = "(调拨单-物流信息)")
@RestController
@RequestMapping("v1/wmsinventoryallocatebilllogistics")
public class WmsInventoryAllocateBillLogisticsRest {
@Autowired
private WmsInventoryAllocateBillLogisticsService wmsInventoryAllocateBillLogisticsService;
@ApiOperation("新增或修改")
@PostMapping("/saveLogisticsInfo")
public ResultBean saveLogisticsInfo(@RequestBody WmsInventoryAllocateBillLogisticsDto dto){
ResultBean rb = ResultBean.fireFail();
wmsInventoryAllocateBillLogisticsService.saveLogisticsInfo(dto);
return rb.success();
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<WmsInventoryAllocateBillLogisticsDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
WmsInventoryAllocateBillLogisticsDetailsVo vo = wmsInventoryAllocateBillLogisticsService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

85
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryAllocatebillRest.java

@ -25,28 +25,22 @@
*********************************************************/ *********************************************************/
package com.yxt.wms.apiadmin.inventroy; package com.yxt.wms.apiadmin.inventroy;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebill.*; import com.yxt.wms.biz.inventory.wmsinventoryallocatebill.*;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable.*;
import com.yxt.wms.feign.flowable.flow.BusinessVariables;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
/** import javax.validation.Valid;
* Project: yxt-wms(调拨单) <br/> import java.util.List;
* File: WmsInventoryAllocatebillFeignFallback.java <br/>
* Class: com.yxt.wms.biz.wmsinventoryallocatebill.WmsInventoryAllocatebillRest <br/>
* Description: (调拨单)-调出方操作. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-03-25 16:04:08 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "(调拨单)-调出方操作") @Api(tags = "(调拨单)-调出方操作")
@RestController @RestController
@RequestMapping("/apiadmin/inventory/wmsinventoryallocatebill") @RequestMapping("/apiadmin/inventory/wmsinventoryallocatebill")
@ -87,11 +81,64 @@ public class WmsInventoryAllocatebillRest {
return rb.success().setData(vo); return rb.success().setData(vo);
} }
@ApiOperation("调拨") /*********************************************************流程************************************************************/
@PostMapping("/allocation")
public ResultBean allocation(@RequestBody WmsInventoryAllocateBillDtoNew dto){ @ApiOperation("提交")
ResultBean rb = ResultBean.fireFail(); @PostMapping("/submitApply")
wmsInventoryAllocateBillService.allocation(dto); public ResultBean submitApply(@Valid @RequestBody SubmitFlowDto dto) {
return rb.success(); return wmsInventoryAllocateBillService.submitApply(dto);
}
@ApiOperation(value = "办理(同意)")
@PostMapping("/complete")
public ResultBean complete(@Valid @RequestBody CompleteFlowDto query) {
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(query, bv);
bv.setModelId("");
return wmsInventoryAllocateBillService.complete(bv);
}
@ApiOperation(value = "获取上一个环节")
@GetMapping(value = "/getPreviousNodesForReject")
ResultBean<List<FlowNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap FlowNodeQuery query) {
return wmsInventoryAllocateBillService.getPreviousNodesForReject(query);
}
@ApiOperation(value = "获取下一个环节")
@GetMapping(value = "/getNextNodesForSubmit")
ResultBean<List<FlowNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap FlowNodeQuery query) {
return wmsInventoryAllocateBillService.getNextNodesForSubmit(query);
}
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public ResultBean taskReject(@Valid @RequestBody FlowTaskQuery query) {
return wmsInventoryAllocateBillService.taskReject(query);
}
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess")
public ResultBean revokeProcess(@Valid @RequestBody FlowTaskQuery query) {
return wmsInventoryAllocateBillService.revokeProcess(query);
}
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess")
public ResultBean breakProcess(@Valid @RequestBody FlowTaskQuery query) {
return wmsInventoryAllocateBillService.breakProcess(query);
}
@ApiOperation(value = "加签")
@PostMapping(value = "/delegate")
@ResponseBody
public ResultBean delegate(@RequestBody FlowDelegateQuery query) {
return wmsInventoryAllocateBillService.delegate(query);
}
@ApiOperation(value = "转办")
@PostMapping(value = "/assignTask")
@ResponseBody
public ResultBean assignTask(@RequestBody FlowDelegateQuery query){
return wmsInventoryAllocateBillService.assignTask(query);
} }
} }

8
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryAlloSelectList.java

@ -11,7 +11,9 @@ import lombok.Data;
public class WmsInventoryAlloSelectList { public class WmsInventoryAlloSelectList {
//sid //sid
private String sid; private String inventorySid;
//商品ID
private String goodsID;
//商品spuSid //商品spuSid
private String goodsSpuSid; private String goodsSpuSid;
//商品spu名称 //商品spu名称
@ -35,7 +37,7 @@ public class WmsInventoryAlloSelectList {
//仓库名称 //仓库名称
private String warehouseName; private String warehouseName;
//库区sid //库区sid
private String warehouseAreasid; private String warehouseAreaSid;
//库区名称 //库区名称
private String warehouseArea; private String warehouseArea;
//库位sid //库位sid
@ -44,4 +46,6 @@ public class WmsInventoryAlloSelectList {
private String warehouseRackCode; private String warehouseRackCode;
//库存数量 //库存数量
private String count; private String count;
//入库单价
private String taxPrice;
} }

20
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryAlloSelectQuery.java

@ -11,20 +11,12 @@ import lombok.Data;
@Data @Data
public class WmsInventoryAlloSelectQuery implements Query { public class WmsInventoryAlloSelectQuery implements Query {
//组织sid //商品ID
private String orgSid; private String goodsID;
//商品名称 //商品名称
private String goodsName; private String goodsSkuTitle;
//商品类别sid //商品编码
private String goodsTypeSid;
//商品拼音
private String goodsPY;
//品牌sid
private String brandSid;
//零件号
private String goodsSkuCode; private String goodsSkuCode;
//规格 //部门sid
private String title; private String deptSid;
//其他查询条件
private String otherQuery;
} }

10
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml

@ -237,7 +237,8 @@
</select> </select>
<select id="alloGoodsListPage" resultType="com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryAlloSelectList"> <select id="alloGoodsListPage" resultType="com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryAlloSelectList">
SELECT wi.sid, SELECT wi.sid AS inventorySid,
wi.goodsID,
wi.goodsSpuSid, wi.goodsSpuSid,
wi.goodsSpuName, wi.goodsSpuName,
wi.goodsSkuSid, wi.goodsSkuSid,
@ -245,15 +246,16 @@
wi.goodsSkuCode, wi.goodsSkuCode,
wi.goodsSkuOwnSpec, wi.goodsSkuOwnSpec,
wi.manufacturerSid, wi.manufacturerSid,
wi.manufacturerName wi.manufacturerName,
wi.unit, wi.unit,
wi.warehouseSid, wi.warehouseSid,
wi.warehouseName, wi.warehouseName,
wa.sid AS warehouseAreasid, wa.sid AS warehouseAreaSid,
wa.areaName AS warehouseArea, wa.areaName AS warehouseArea,
wi.warehouseRackSid, wi.warehouseRackSid,
wi.warehouseRackCode, wi.warehouseRackCode,
wi.count wi.count,
wi.cost AS taxPrice
FROM wms_inventory wi FROM wms_inventory wi
LEFT JOIN wms_warehouse_rack wr LEFT JOIN wms_warehouse_rack wr
ON wi.warehouseRackSid = wr.sid ON wi.warehouseRackSid = wr.sid

77
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java

@ -58,6 +58,7 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
private WmsWarehouseRackService wmsWarehouseRackService; private WmsWarehouseRackService wmsWarehouseRackService;
@Autowired @Autowired
private SysUserFeign sysUserFeign; private SysUserFeign sysUserFeign;
public PagerVo<WmsInventoryVo> listPage(PagerQuery<WmsInventoryQuery> pq) { public PagerVo<WmsInventoryVo> listPage(PagerQuery<WmsInventoryQuery> pq) {
WmsInventoryQuery query = pq.getParams(); WmsInventoryQuery query = pq.getParams();
QueryWrapper<WmsInventory> qw = new QueryWrapper<>(); QueryWrapper<WmsInventory> qw = new QueryWrapper<>();
@ -450,6 +451,16 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
WmsInventoryAlloSelectQuery query = pq.getParams(); WmsInventoryAlloSelectQuery query = pq.getParams();
QueryWrapper<WmsInventory> qw = new QueryWrapper<>(); QueryWrapper<WmsInventory> qw = new QueryWrapper<>();
qw.eq("wi.useOrgSid", query.getDeptSid());
if (StringUtils.isNotBlank(query.getGoodsID())) {
qw.like("wi.goodsID", query.getGoodsID());
}
if (StringUtils.isNotBlank(query.getGoodsSkuCode())) {
qw.like("wi.goodsSkuCode", query.getGoodsSkuCode());
}
if (StringUtils.isNotBlank(query.getGoodsSkuTitle())) {
qw.like("wi.goodsSkuTitle", query.getGoodsSkuTitle());
}
IPage<WmsInventory> page = PagerUtil.queryToPage(pq); IPage<WmsInventory> page = PagerUtil.queryToPage(pq);
IPage<WmsInventoryAlloSelectList> pagging = baseMapper.alloGoodsListPage(page, qw); IPage<WmsInventoryAlloSelectList> pagging = baseMapper.alloGoodsListPage(page, qw);
PagerVo<WmsInventoryAlloSelectList> p = PagerUtil.pageToVo(pagging, null); PagerVo<WmsInventoryAlloSelectList> p = PagerUtil.pageToVo(pagging, null);
@ -727,37 +738,37 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
privilegeQuery.setUserSid(query.getUserSid()); privilegeQuery.setUserSid(query.getUserSid());
privilegeQuery.setMenuSid(query.getMenuSid()); privilegeQuery.setMenuSid(query.getMenuSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人) //数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath(); String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/"; orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/"); int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1); int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1); int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1); int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData(); String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) { if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1); orgSidPath = orgSidPath.substring(0, i1);
qw.like("s.orgSidPath", orgSidPath); qw.like("s.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) { } else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2); orgSidPath = orgSidPath.substring(0, i2);
qw.like("s.orgSidPath", orgSidPath); qw.like("s.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) { } else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3); orgSidPath = orgSidPath.substring(0, i3);
qw.like("s.orgSidPath", orgSidPath); qw.like("s.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) { } else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4); orgSidPath = orgSidPath.substring(0, i4);
qw.like("s.orgSidPath", orgSidPath); qw.like("s.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) { } else if ("5".equals(orgLevelKey)) {
qw.eq("i.createBySid", query.getUserSid()); qw.eq("i.createBySid", query.getUserSid());
} else {
PagerVo<StorageVo> p = new PagerVo<>();
return p;
}
} else { } else {
PagerVo<StorageVo> p = new PagerVo<>(); PagerVo<StorageVo> p = new PagerVo<>();
return p; return p;
} }
} else {
PagerVo<StorageVo> p = new PagerVo<>();
return p;
}
//ToDo:添加查询条件 //ToDo:添加查询条件
if (StringUtils.isNotBlank(query.getName())) { if (StringUtils.isNotBlank(query.getName())) {
qw.and(wrapper -> wrapper.like("i.warehouseName", query.getName()) qw.and(wrapper -> wrapper.like("i.warehouseName", query.getName())
@ -770,10 +781,10 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
); );
} }
List<StorageListVo> listVos = baseMapper.appStorage(qw); List<StorageListVo> listVos = baseMapper.appStorage(qw);
Map<String,List<StorageListVo>> stringListMap = listVos.stream().collect(Collectors.groupingBy(StorageListVo::getTitle)); Map<String, List<StorageListVo>> stringListMap = listVos.stream().collect(Collectors.groupingBy(StorageListVo::getTitle));
List<StorageVo> records = new ArrayList<>(); List<StorageVo> records = new ArrayList<>();
if (!stringListMap.isEmpty()) { if (!stringListMap.isEmpty()) {
for (Map.Entry <String, List<StorageListVo>> entry : stringListMap.entrySet()) { for (Map.Entry<String, List<StorageListVo>> entry : stringListMap.entrySet()) {
StorageVo vo = new StorageVo(); StorageVo vo = new StorageVo();
vo.setTitle(entry.getKey()); vo.setTitle(entry.getKey());
vo.setList(entry.getValue()); vo.setList(entry.getValue());
@ -896,10 +907,10 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
); );
} }
List<OldStorageListVo> listVos = baseMapper.appOldStorage(qw); List<OldStorageListVo> listVos = baseMapper.appOldStorage(qw);
Map<String,List<OldStorageListVo>> stringListMap = listVos.stream().collect(Collectors.groupingBy(OldStorageListVo::getTitle)); Map<String, List<OldStorageListVo>> stringListMap = listVos.stream().collect(Collectors.groupingBy(OldStorageListVo::getTitle));
List<OldStorageVo> records = new ArrayList<>(); List<OldStorageVo> records = new ArrayList<>();
if (!stringListMap.isEmpty()) { if (!stringListMap.isEmpty()) {
for (Map.Entry <String, List<OldStorageListVo>> entry : stringListMap.entrySet()) { for (Map.Entry<String, List<OldStorageListVo>> entry : stringListMap.entrySet()) {
OldStorageVo vo = new OldStorageVo(); OldStorageVo vo = new OldStorageVo();
vo.setTitle(entry.getKey()); vo.setTitle(entry.getKey());
vo.setList(entry.getValue()); vo.setList(entry.getValue());
@ -954,14 +965,14 @@ public class WmsInventoryService extends MybatisBaseService<WmsInventoryMapper,
return rb.success().setData(p); return rb.success().setData(p);
} }
public ResultBean<List<WmsInventoryReturnFactSelectList>> selBillNoAndCode(String sourceBillNo, String goodsSkuCode,String deptSid) { public ResultBean<List<WmsInventoryReturnFactSelectList>> selBillNoAndCode(String sourceBillNo, String goodsSkuCode, String deptSid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
List<WmsInventoryReturnFactSelectList> wmsInventoryReturnFactSelectListList = baseMapper.selBillNoAndCode(sourceBillNo,goodsSkuCode,deptSid); List<WmsInventoryReturnFactSelectList> wmsInventoryReturnFactSelectListList = baseMapper.selBillNoAndCode(sourceBillNo, goodsSkuCode, deptSid);
return rb.success().setData(wmsInventoryReturnFactSelectListList); return rb.success().setData(wmsInventoryReturnFactSelectListList);
} }
public List<WmsInventory> selJJByDeptSidAndRackSid(String deptSid, List<String> rackSids) { public List<WmsInventory> selJJByDeptSidAndRackSid(String deptSid, List<String> rackSids) {
return baseMapper.selJJByDeptSidAndRackSid(deptSid,rackSids); return baseMapper.selJJByDeptSidAndRackSid(deptSid, rackSids);
} }
public List<WmsInventory> selJJByDeptSid(String deptSid) { public List<WmsInventory> selJJByDeptSid(String deptSid) {

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillDetailsVoNew.java

@ -59,6 +59,9 @@ public class WmsInventoryAllocateBillDetailsVoNew implements Vo {
private String sid; private String sid;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("申请日期")
private Date createTime;
@ApiModelProperty("备注") @ApiModelProperty("备注")
private String remarks; private String remarks;
@ApiModelProperty("制单人sid") @ApiModelProperty("制单人sid")

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillMapper.java

@ -8,6 +8,8 @@ import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update; import org.apache.ibatis.annotations.Update;
import java.util.Map;
/** /**
* @author wangpengfei * @author wangpengfei
* @date 2024/2/26 13:40 * @date 2024/2/26 13:40
@ -19,6 +21,5 @@ public interface WmsInventoryAllocateBillMapper extends BaseMapper<WmsInventoryA
String selectNum(String billNo); String selectNum(String billNo);
@Update("update wms_inventory_allocate_bill set state = '2',finishTime = NOW() where sid = #{sid}") int updateFlowFiled(Map<String, Object> beanToMap);
void updateState(String sid);
} }

29
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillMapper.xml

@ -5,7 +5,16 @@
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" <select id="selectPageVo"
resultType="com.yxt.wms.biz.inventory.wmsinventoryallocatebill.WmsInventoryAllocateBillVoNew"> resultType="com.yxt.wms.biz.inventory.wmsinventoryallocatebill.WmsInventoryAllocateBillVoNew">
select * from wms_inventory_allocate_bill SELECT
wb.*,
SUM(wd.count) AS count,
SUM(wd.amount) AS amount
FROM
wms_inventory_allocate_bill wb
LEFT JOIN wms_inventory_allocate_bill_detail wd
ON wb.sid = wd.billSid
LEFT JOIN anrui_portal.sys_organization AS s
ON wb.deptSid = s.sid
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment}
</where> </where>
@ -18,4 +27,22 @@
order by billNo desc order by billNo desc
limit 1 limit 1
</select> </select>
<update id="updateFlowFiled">
UPDATE wms_inventory_allocate_bill
SET nodeState=#{nodeState}, nodeId=#{taskDefKey}
<if test="nodeState == '已办结' or nodeState == '终止'">
, finishTime = NOW()
</if>
<if test="procDefId != null and procDefId != ''">
, procDefId=#{procDefId}
</if>
<if test="procInsId != null and procInsId != ''">
, procInstId=#{procInsId}
</if>
<if test="taskId != null and taskId != ''">
, taskId=#{taskId}
</if>
WHERE sid=#{sid}
</update>
</mapper> </mapper>

6
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillQueryNew.java

@ -39,4 +39,10 @@ public class WmsInventoryAllocateBillQueryNew implements Query {
private String inPlatName; private String inPlatName;
@ApiModelProperty("经办人") @ApiModelProperty("经办人")
private String confirmName; private String confirmName;
@ApiModelProperty("调拨等级")
private String grade;
private String userSid;
private String orgPath;
private String menuUrl;
} }

413
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillService.java

@ -1,27 +1,44 @@
package com.yxt.wms.biz.inventory.wmsinventoryallocatebill; package com.yxt.wms.biz.inventory.wmsinventoryallocatebill;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils; import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable.*;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocateBillDetailDtoNew; import com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocateBillDetailDtoNew;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocateBillDetailService; import com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocateBillDetailService;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocatebillDetailDetailsVoNew; import com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocatebillDetailDetailsVoNew;
import com.yxt.wms.feign.flowable.flow.BusinessVariables;
import com.yxt.wms.feign.flowable.flow.FlowableFeign;
import com.yxt.wms.feign.flowable.flow.ProcDefEnum;
import com.yxt.wms.feign.flowable.flow.UpdateFlowFieldVo;
import com.yxt.wms.feign.flowable.flow2.FlowFeign;
import com.yxt.wms.feign.flowable.flowtask.FlowTaskFeign;
import com.yxt.wms.feign.flowable.flowtask.FlowTaskVo;
import com.yxt.wms.feign.flowable.flowtask.LatestTaskVo;
import com.yxt.wms.feign.message.MessageFeign;
import com.yxt.wms.feign.message.MessageFlowVo;
import com.yxt.wms.feign.message.MessageFlowableQuery;
import com.yxt.wms.feign.portal.privilege.PrivilegeQuery;
import com.yxt.wms.feign.portal.sysorganization.SysOrganizationFeign; import com.yxt.wms.feign.portal.sysorganization.SysOrganizationFeign;
import com.yxt.wms.feign.portal.sysorganization.SysOrganizationVo; import com.yxt.wms.feign.portal.sysorganization.SysOrganizationVo;
import com.yxt.wms.feign.portal.sysuser.SysUserFeign;
import com.yxt.wms.utils.Rule; import com.yxt.wms.utils.Rule;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Date; import java.util.*;
import java.util.List; import java.util.concurrent.*;
import java.util.stream.Collectors;
/** /**
* @author wangpengfei * @author wangpengfei
@ -34,44 +51,95 @@ public class WmsInventoryAllocateBillService extends MybatisBaseService<WmsInven
private WmsInventoryAllocateBillDetailService wmsInventoryAllocateBillDetailService; private WmsInventoryAllocateBillDetailService wmsInventoryAllocateBillDetailService;
@Autowired @Autowired
private SysOrganizationFeign sysOrganizationFeign; private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private FlowableFeign flowableFeign;
@Autowired
private FlowTaskFeign flowTaskFeign;
@Autowired
private FlowFeign flowFeign;
@Autowired
private MessageFeign messageFeign;
public PagerVo<WmsInventoryAllocateBillVoNew> listPageVo(PagerQuery<WmsInventoryAllocateBillQueryNew> pq) { public PagerVo<WmsInventoryAllocateBillVoNew> listPageVo(PagerQuery<WmsInventoryAllocateBillQueryNew> pq) {
WmsInventoryAllocateBillQueryNew query = pq.getParams(); WmsInventoryAllocateBillQueryNew query = pq.getParams();
QueryWrapper<WmsInventoryAllocateBill> qw = new QueryWrapper<>(); QueryWrapper<WmsInventoryAllocateBill> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("s.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("s.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("s.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("s.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("wb.createBySid", query.getUserSid());
} else {
PagerVo<WmsInventoryAllocateBillVoNew> p = new PagerVo<>();
return p;
}
} else {
PagerVo<WmsInventoryAllocateBillVoNew> p = new PagerVo<>();
return p;
}
}
qw.eq("wb.grade",query.getGrade());
if (StringUtils.isNotBlank(query.getOutOrgName())){ if (StringUtils.isNotBlank(query.getOutOrgName())){
qw.like("createOrgName",query.getOutOrgName()); qw.like("wb.createOrgName",query.getOutOrgName());
} }
if (StringUtils.isNotBlank(query.getDeptName())){ if (StringUtils.isNotBlank(query.getDeptName())){
qw.like("deptName",query.getDeptName()); qw.like("wb.deptName",query.getDeptName());
} }
if (StringUtils.isNotBlank(query.getCreateByName())){ if (StringUtils.isNotBlank(query.getCreateByName())){
qw.like("createByName",query.getCreateByName()); qw.like("wb.createByName",query.getCreateByName());
} }
if (StringUtils.isNotBlank(query.getBillNo())){ if (StringUtils.isNotBlank(query.getBillNo())){
qw.like("billNo",query.getBillNo()); qw.like("wb.billNo",query.getBillNo());
} }
if (StringUtils.isNotBlank(query.getOutPlatName())){ if (StringUtils.isNotBlank(query.getOutPlatName())){
qw.like("outPlatName",query.getOutPlatName()); qw.like("wb.outPlatName",query.getOutPlatName());
} }
if (StringUtils.isNotBlank(query.getInOrgName())){ if (StringUtils.isNotBlank(query.getInOrgName())){
qw.like("inOrgName",query.getInOrgName()); qw.like("wb.inOrgName",query.getInOrgName());
} }
if (StringUtils.isNotBlank(query.getInPlatName())){ if (StringUtils.isNotBlank(query.getInPlatName())){
qw.like("inPlatName",query.getInPlatName()); qw.like("wb.inPlatName",query.getInPlatName());
} }
if (StringUtils.isNotBlank(query.getConfirmName())){ if (StringUtils.isNotBlank(query.getConfirmName())){
qw.like("confirmName",query.getConfirmName()); qw.like("wb.confirmName",query.getConfirmName());
} }
String createStartTime = query.getCreateStartTime(); String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime(); String createEndTime = query.getCreateEndTime();
qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createStartTime), "date_format (wb.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createEndTime), "date_format (wb.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
); );
String finishStartTime = query.getFinishStartTime(); String finishStartTime = query.getFinishStartTime();
String finishEndTime = query.getFinishEndTime(); String finishEndTime = query.getFinishEndTime();
qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(finishStartTime), "date_format (finishTime,'%Y-%m-%d') >= date_format('" + finishStartTime + "','%Y-%m-%d')"). qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(finishStartTime), "date_format (wb.finishTime,'%Y-%m-%d') >= date_format('" + finishStartTime + "','%Y-%m-%d')").
apply(org.apache.commons.lang3.StringUtils.isNotEmpty(finishEndTime), "date_format (finishTime,'%Y-%m-%d') <= date_format('" + finishEndTime + "','%Y-%m-%d')" apply(org.apache.commons.lang3.StringUtils.isNotEmpty(finishEndTime), "date_format (wb.finishTime,'%Y-%m-%d') <= date_format('" + finishEndTime + "','%Y-%m-%d')"
); );
qw.groupBy("wb.sid");
IPage<WmsInventoryAllocateBill> page = PagerUtil.queryToPage(pq); IPage<WmsInventoryAllocateBill> page = PagerUtil.queryToPage(pq);
IPage<WmsInventoryAllocateBillVoNew> pagging = baseMapper.selectPageVo(page, qw); IPage<WmsInventoryAllocateBillVoNew> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<WmsInventoryAllocateBillVoNew> p = PagerUtil.pageToVo(pagging, null); PagerVo<WmsInventoryAllocateBillVoNew> p = PagerUtil.pageToVo(pagging, null);
@ -130,6 +198,7 @@ public class WmsInventoryAllocateBillService extends MybatisBaseService<WmsInven
public String insertByDto(WmsInventoryAllocateBillDtoNew dto) { public String insertByDto(WmsInventoryAllocateBillDtoNew dto) {
WmsInventoryAllocateBill entity = new WmsInventoryAllocateBill(); WmsInventoryAllocateBill entity = new WmsInventoryAllocateBill();
BeanUtil.copyProperties(dto, entity, "id", "sid"); BeanUtil.copyProperties(dto, entity, "id", "sid");
entity.setNodeState("待提交");
baseMapper.insert(entity); baseMapper.insert(entity);
return entity.getSid(); return entity.getSid();
} }
@ -141,8 +210,316 @@ public class WmsInventoryAllocateBillService extends MybatisBaseService<WmsInven
} }
} }
public void allocation(WmsInventoryAllocateBillDtoNew dto) { /**********************************************流程**************************************************/
String sid = saveOrUpdateDto(dto);
baseMapper.updateState(sid); public ResultBean submitApply(SubmitFlowDto dto) {
ResultBean rb = ResultBean.fireFail();
WmsInventoryAllocateBill wmsInventoryAllocateBill = fetchBySid(dto.getSid());
int r = submitBusinessData(dto, wmsInventoryAllocateBill);
if (r == 3) {
return rb.setMsg("该申请不存在");
}
if (r == 0) {
return rb.setMsg("操作失败!提交的数据不一致");
}
String businessSid = saveOrUpdateDto(dto);
wmsInventoryAllocateBill = fetchBySid(businessSid);
//创建BusinessVariables实体对象
BusinessVariables bv = new BusinessVariables();
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。
Map<String, Object> variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
variables.put("app", appMap);
//用户的部门全路径sid
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(wmsInventoryAllocateBill.getDeptSid()).getData();
if (sysOrganization != null) {
bv.setOrgSidPath(sysOrganization.getOrgSidPath());
}
bv.setBusinessSid(businessSid);
bv.setUserSid(dto.getCreateBySid());
bv.setFormVariables(variables);
if (r == 1) {
//ToDo:流程定义id
bv.setModelId(ProcDefEnum.WMSINVENCHECKREPORT.getProDefId());
ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg());
}
UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo));
wmsInventoryAllocateBill = fetchBySid(businessSid);
//==================================添加线程
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
WmsInventoryAllocateBill finalWmsInventoryAllocateBill = wmsInventoryAllocateBill;
Future future1 = pool.submit(() -> {
//极光推送
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("调拨申请");
messageFlowableQuery.setMsgContent(finalWmsInventoryAllocateBill.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("调拨申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
//==================================添加线程
return voResultBean;
}
if (r == 2) {
// ToDo:驳回到发起人后再次提交
if (org.apache.commons.lang3.StringUtils.isBlank(dto.getInstanceId())) {
return rb.setMsg("参数错误:instanceId");
}
bv.setTaskId(wmsInventoryAllocateBill.getTaskId());
bv.setTaskDefKey(wmsInventoryAllocateBill.getNodeId());
bv.setComment("重新提交");
bv.setInstanceId(dto.getInstanceId());
return complete(bv);
}
return rb;
}
private int updateFlowFiled(Map<String, Object> beanToMap) {
return baseMapper.updateFlowFiled(beanToMap);
}
private int submitBusinessData(SubmitFlowDto dto, WmsInventoryAllocateBill wmsInventoryAllocateBill) {
int r = 0;
if (org.apache.commons.lang3.StringUtils.isBlank(dto.getSid())) {
r = 1;
} else {
if (wmsInventoryAllocateBill != null) {
String businessTaskId = wmsInventoryAllocateBill.getTaskId();
if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) {
//新提交
r = 1;
} else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) {
//二次提交//只有数据一致的时候才能进行下一步
r = 2;
}
} else {
r = 3;
}
}
return r;
}
public ResultBean complete(BusinessVariables bv) {
ResultBean rb = ResultBean.fireFail();
String businessSid = bv.getBusinessSid();
WmsInventoryAllocateBill wmsInventoryAllocateBill = fetchBySid(businessSid);
Map<String, Object> variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
variables.put("app", appMap);
bv.setFormVariables(variables);
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(wmsInventoryAllocateBill.getDeptSid()).getData();
if (sysOrganization != null) {
bv.setOrgSidPath(sysOrganization.getOrgSidPath());
}
bv.setModelId(wmsInventoryAllocateBill.getProcDefId());
if (bv.getTaskId().equals(wmsInventoryAllocateBill.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
UpdateFlowFieldVo ufVo = resultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
} else {
//极光推送
wmsInventoryAllocateBill = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowVo.setProcDefId(wmsInventoryAllocateBill.getProcDefId());
messageFlowVo.setProcInsId(wmsInventoryAllocateBill.getProcInstId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("调拨申请");
messageFlowableQuery.setMsgContent(wmsInventoryAllocateBill.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("调拨申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
}
return rb.success().setData(resultBean.getData());
} else {
return rb.setMsg("操作失败!提交的数据不一致");
}
}
public ResultBean<List<FlowNodeVo>> getPreviousNodesForReject(FlowNodeQuery query) {
ResultBean<List<FlowNodeVo>> rb = ResultBean.fireFail();
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(query, bv);
WmsInventoryAllocateBill wmsInventoryAllocateBill = fetchBySid(query.getBusinessSid());
bv.setModelId(wmsInventoryAllocateBill.getProcDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo
List<FlowNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FlowNodeVo.class)).collect(Collectors.toList());
return rb.success().setData(voList);
}
public ResultBean<List<FlowNodeVo>> getNextNodesForSubmit(FlowNodeQuery query) {
ResultBean<List<FlowNodeVo>> rb = ResultBean.fireFail();
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(query, bv);
WmsInventoryAllocateBill wmsInventoryAllocateBill = fetchBySid(query.getBusinessSid());
bv.setModelId(wmsInventoryAllocateBill.getProcDefId());
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo
List<FlowNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FlowNodeVo.class)).collect(Collectors.toList());
return rb.success().setData(voList);
}
public ResultBean taskReject(FlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
String businessSid = query.getBusinessSid();
WmsInventoryAllocateBill wmsInventoryAllocateBill = fetchBySid(businessSid);
if (wmsInventoryAllocateBill == null) {
return rb.setMsg("该申请不存在");
}
String businessTaskId = wmsInventoryAllocateBill.getTaskId();
if (org.apache.commons.lang3.StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
if (org.apache.commons.lang3.StringUtils.isBlank(query.getComment())) {
return rb.setMsg("请填写意见");
}
if (org.apache.commons.lang3.StringUtils.isBlank(query.getUserSid())) {
return rb.setMsg("参数错误:userSid");
}
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
Map<String, Object> variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
variables.put("app", appMap);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
UpdateFlowFieldVo ufVo = resultBean.getData();
Map<String, Object> map = BeanUtil.beanToMap(ufVo);
//更新业务中的流程相关的参数
updateFlowFiled(map);
//极光推送
wmsInventoryAllocateBill = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
String procId = wmsInventoryAllocateBill.getProcInstId();
messageFlowVo.setProcInsId(procId);
messageFlowVo.setProcDefId(wmsInventoryAllocateBill.getProcDefId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("调拨申请");
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId);
String nextName = listResultBean.getData().get(0).getName_();
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
if ("发起申请".equals(nextName)) {
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交");
} else {
messageFlowableQuery.setMsgContent(wmsInventoryAllocateBill.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
}
messageFlowableQuery.setMsgTitle("调拨申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
return rb.success();
}
}
return rb.setMsg("操作失败!提交的数据不一致!");
}
public ResultBean revokeProcess(FlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
if (org.apache.commons.lang3.StringUtils.isBlank(query.getUserSid())) {
return rb.setMsg("参数错误:userSid");
}
WmsInventoryAllocateBill wmsInventoryAllocateBill = fetchBySid(query.getBusinessSid());
String businessTaskId = wmsInventoryAllocateBill.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
return rb.success().setData(resultBean.getData());
}
}
return rb.setMsg("操作失败,提交的数据不一致!");
}
public ResultBean breakProcess(FlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
if (org.apache.commons.lang3.StringUtils.isBlank(query.getInstanceId())) {
return rb.setMsg("参数错误:instanceId");
}
if (org.apache.commons.lang3.StringUtils.isBlank(query.getUserSid())) {
return rb.setMsg("参数错误:userSid");
}
if (org.apache.commons.lang3.StringUtils.isBlank(query.getComment())) {
return rb.setMsg("请填写意见");
}
WmsInventoryAllocateBill wmsInventoryAllocateBill = fetchBySid(query.getBusinessSid());
String businessTaskId = wmsInventoryAllocateBill.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (query.getUserSid().equals(wmsInventoryAllocateBill.getCreateBySid())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
return rb.success().setData(resultBean.getData());
} else {
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
return rb.success().setData(resultBean.getData());
}
}
}
return rb.setMsg("操作失败!提交的数据不一致!");
}
public ResultBean delegate(FlowDelegateQuery query) {
ResultBean rb = ResultBean.fireFail();
com.yxt.wms.feign.flowable.flow2.FlowDelegateQuery delegateQuery = new com.yxt.wms.feign.flowable.flow2.FlowDelegateQuery();
BeanUtil.copyProperties(query, delegateQuery);
flowFeign.delegate(delegateQuery);
return rb.success();
}
public ResultBean assignTask(FlowDelegateQuery query) {
ResultBean rb = ResultBean.fireFail();
com.yxt.wms.feign.flowable.flow2.FlowDelegateQuery delegateQuery = new com.yxt.wms.feign.flowable.flow2.FlowDelegateQuery();
BeanUtil.copyProperties(query, delegateQuery);
flowFeign.assignTask(delegateQuery);
return rb.success();
} }
} }

7
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/WmsInventoryAllocateBillVoNew.java

@ -55,4 +55,11 @@ public class WmsInventoryAllocateBillVoNew implements Vo {
private BigDecimal count; private BigDecimal count;
@ApiModelProperty("调拨金额") @ApiModelProperty("调拨金额")
private BigDecimal amount; private BigDecimal amount;
@ApiModelProperty("流程状态")
private String nodeState;
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("流程实例的sid")
private String procInstId;
} }

35
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/CompleteFlowDto.java

@ -0,0 +1,35 @@
package com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class CompleteFlowDto {
@ApiModelProperty(value = "用户sid")
@NotBlank(message = "参数错误:userSid")
private String userSid;
@ApiModelProperty(value = "用户全路径sid")
private String orgSidPath;
@ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
@ApiModelProperty(value = "任务id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
@ApiModelProperty(value = "流程id")
@NotBlank(message = "参数错误:instanceId")
private String instanceId;
@ApiModelProperty(value = "意见")
private String comment;
@ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
}

23
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowDelegateQuery.java

@ -0,0 +1,23 @@
package com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowDelegateQuery {
private String userSid;
@ApiModelProperty("流程实例id")
private String instanceId;
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("审批人sid")
private String assignee;
@ApiModelProperty("填写意见")
private String views;
}

18
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowNodeQuery.java

@ -0,0 +1,18 @@
package com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowNodeQuery {
@ApiModelProperty(value = "环节定义id")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
}

24
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowNodeVo.java

@ -0,0 +1,24 @@
package com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowNodeVo {
@ApiModelProperty(value = "节点名称")
private String name;
@ApiModelProperty(value = "节点id")
private String id;
@ApiModelProperty(value = "审批组")
private List<String> candidateGroups;
@ApiModelProperty(value = "是否是最后环节")
private String endTask;
}

43
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/FlowTaskQuery.java

@ -0,0 +1,43 @@
package com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class FlowTaskQuery {
/**
* 终止驳回撤回
*/
@ApiModelProperty("任务Id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
/**
* 终止驳回撤回
*/
@ApiModelProperty("业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
/**
* 终止驳回
*/
@ApiModelProperty("任务意见")
private String comment;
/**
* 终止撤回驳回
*/
@ApiModelProperty("用户Sid")
private String userSid;
/**
* 终止
*/
@ApiModelProperty("流程实例Id")
private String instanceId;
}

20
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebill/flowable/SubmitFlowDto.java

@ -0,0 +1,20 @@
package com.yxt.wms.biz.inventory.wmsinventoryallocatebill.flowable;
import com.yxt.wms.biz.inventory.wmsinventoryallocatebill.WmsInventoryAllocateBillDtoNew;
import com.yxt.wms.biz.inventory.wmsinventorycheckbill.WmsInventoryCheckbillDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class SubmitFlowDto extends WmsInventoryAllocateBillDtoNew {
@ApiModelProperty("流程实例id")
private String instanceId;
@ApiModelProperty("任务id")
private String taskId;
}

13
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocateBillDetail.java

@ -2,8 +2,10 @@ package com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity; import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
/** /**
@ -27,15 +29,16 @@ public class WmsInventoryAllocateBillDetail extends BaseEntity {
private String unit;//单位 private String unit;//单位
private String warehouseSid;//仓库sid private String warehouseSid;//仓库sid
private String warehouseName;//仓库名称 private String warehouseName;//仓库名称
private String warehouseAreasid;//库区sid private String warehouseAreaSid;//库区sid
private String warehouseArea;//库区名称 private String warehouseArea;//库区名称
private String warehouseRackSid;//库位sid private String warehouseRackSid;//库位sid
private String warehouseRackCode;//库位编码 private String warehouseRackCode;//库位编码
private String stockCount;//库存数量 private String stockCount;//库存数量
private String markUpRatio;//加价比例(%) private BigDecimal taxPrice;
private String requAmount;//调拔单价 private BigDecimal markUpRatio;//加价比例(%)
private String count;//调拨数量 private BigDecimal requAmount;//调拔单价
private String amount;//调拨金额(调拨数量*含税价) private BigDecimal count;//调拨数量
private BigDecimal amount;//调拨金额(调拨数量*含税价)
} }

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocateBillDetailDtoNew.java

@ -55,6 +55,8 @@ public class WmsInventoryAllocateBillDetailDtoNew implements Dto {
private String warehouseRackCode; private String warehouseRackCode;
@ApiModelProperty("库存数量") @ApiModelProperty("库存数量")
private BigDecimal stockCount; private BigDecimal stockCount;
@ApiModelProperty("成本价")
private BigDecimal taxPrice;
@ApiModelProperty("加价比例(%)") @ApiModelProperty("加价比例(%)")
private BigDecimal markUpRatio; private BigDecimal markUpRatio;
@ApiModelProperty("调拔单价") @ApiModelProperty("调拔单价")

16
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocateBillDetailMapper.xml

@ -6,23 +6,9 @@
<select id="selByMainSid" <select id="selByMainSid"
resultType="com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocatebillDetailDetailsVoNew"> resultType="com.yxt.wms.biz.inventory.wmsinventoryallocatebilldetail.WmsInventoryAllocatebillDetailDetailsVoNew">
SELECT SELECT
wiad.*, wiad.*
wiad.outWarehouseSid as warehouseSid,
wiad.outWarehouseName as warehouseName,
wiad.warehouseAreasid as warehouseRackSid,
wiad.warehouseArea as warehouseRackCode,
wiad.inWarehouseSid as inWarehouseSid,
wiad.inWarehouseName as inWarehouseName,
wiad.warehouseRackSid as inWarehouseRackSid,
wiad.warehouseRackCode as inWarehouseRackCode,
wi.goodsSpuName,
wi.goodsSkuCode,
wi.goodsSkuOwnSpec,
wi.unit
FROM FROM
wms_inventory_allocate_bill_detail wiad wms_inventory_allocate_bill_detail wiad
LEFT JOIN wms_inventory wi
ON wiad.inventorySid = wi.`sid`
WHERE billSid = #{billSid} WHERE billSid = #{billSid}
</select> </select>
</mapper> </mapper>

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilldetail/WmsInventoryAllocatebillDetailDetailsVoNew.java

@ -91,6 +91,8 @@ public class WmsInventoryAllocatebillDetailDetailsVoNew implements Vo {
private String warehouseRackCode; private String warehouseRackCode;
@ApiModelProperty("库存数量") @ApiModelProperty("库存数量")
private BigDecimal stockCount; private BigDecimal stockCount;
@ApiModelProperty("成本价")
private BigDecimal taxPrice;
@ApiModelProperty("加价比例(%)") @ApiModelProperty("加价比例(%)")
private BigDecimal markUpRatio; private BigDecimal markUpRatio;
@ApiModelProperty("调拔单价") @ApiModelProperty("调拔单价")

72
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogistics.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: yxt-wms(调拨单物流信息) <br/>
* File: WmsInventoryAllocateBillLogistics.java <br/>
* Class: com.yxt.wms.api.wmsinventoryallocatebilllogistics.WmsInventoryAllocateBillLogistics <br/>
* Description: (调拨单-物流信息). <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-09-06 13:44:42 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "(调拨单-物流信息)", description = "(调拨单-物流信息)")
@TableName("wms_inventory_allocate_bill_logistics")
public class WmsInventoryAllocateBillLogistics extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("主表sid")
private String billSid; // 主表sid
@ApiModelProperty("送货方式key")
private String deliveryKey; // 送货方式key
@ApiModelProperty("送货方式Value")
private String deliveryName; // 送货方式Value
@ApiModelProperty("快递单号")
private String expressBillNo; // 快递单号
@ApiModelProperty("快递公司")
private String expressCompany; // 快递公司
@ApiModelProperty("取货人")
private String pickUpName; // 取货人
@ApiModelProperty("取货日期")
private String pickUpDate; // 取货日期
@ApiModelProperty("送货人")
private String deliveryPerson; // 送货人
@ApiModelProperty("送货日期")
private String deliveryDate; // 送货日期
}

71
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsDetailsVo.java

@ -0,0 +1,71 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: yxt-wms(调拨单物流信息) <br/>
* File: WmsInventoryAllocateBillLogisticsVo.java <br/>
* Class: com.yxt.wms.api.wmsinventoryallocatebilllogistics.WmsInventoryAllocateBillLogisticsVo <br/>
* Description: (调拨单-物流信息) 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-09-06 13:44:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "(调拨单-物流信息) 视图数据详情", description = "(调拨单-物流信息) 视图数据详情")
public class WmsInventoryAllocateBillLogisticsDetailsVo implements Vo {
private String remarks;
@ApiModelProperty("主表sid")
private String billSid; // 主表sid
@ApiModelProperty("送货方式key")
private String deliveryKey; // 送货方式key
@ApiModelProperty("送货方式Value")
private String deliveryName; // 送货方式Value
@ApiModelProperty("快递单号")
private String expressBillNo; // 快递单号
@ApiModelProperty("快递公司")
private String expressCompany; // 快递公司
@ApiModelProperty("取货人")
private String pickUpName; // 取货人
@ApiModelProperty("取货日期")
private String pickUpDate; // 取货日期
@ApiModelProperty("送货人")
private String deliveryPerson; // 送货人
@ApiModelProperty("送货日期")
private String deliveryDate; // 送货日期
}

75
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsDto.java

@ -0,0 +1,75 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* Project: yxt-wms(调拨单物流信息) <br/>
* File: WmsInventoryAllocateBillLogisticsDto.java <br/>
* Class: com.yxt.wms.api.wmsinventoryallocatebilllogistics.WmsInventoryAllocateBillLogisticsDto <br/>
* Description: (调拨单-物流信息) 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-09-06 13:44:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "(调拨单-物流信息) 数据传输对象", description = "(调拨单-物流信息) 数据传输对象")
public class WmsInventoryAllocateBillLogisticsDto implements Dto {
private String remarks;
@ApiModelProperty("主表sid")
private String billSid; // 主表sid
@ApiModelProperty("送货方式key")
private String deliveryKey; // 送货方式key
@ApiModelProperty("送货方式Value")
private String deliveryName; // 送货方式Value
@ApiModelProperty("快递单号")
private String expressBillNo; // 快递单号
@ApiModelProperty("快递公司")
private String expressCompany; // 快递公司
@ApiModelProperty("取货人")
private String pickUpName; // 取货人
@ApiModelProperty("取货日期")
private String pickUpDate; // 取货日期
@ApiModelProperty("送货人")
private String deliveryPerson; // 送货人
@ApiModelProperty("送货日期")
private String deliveryDate; // 送货日期
private List<String> sids;
}

42
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsMapper.java

@ -0,0 +1,42 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@Mapper
public interface WmsInventoryAllocateBillLogisticsMapper extends BaseMapper<WmsInventoryAllocateBillLogistics> {
@Delete("delete from wms_inventory_allocate_bill_logistics where billSid = #{sid}")
void delByBillSid(String sid);
}

6
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsMapper.xml

@ -0,0 +1,6 @@
<?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.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics.WmsInventoryAllocateBillLogisticsMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
</mapper>

60
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryallocatebilllogistics/WmsInventoryAllocateBillLogisticsService.java

@ -0,0 +1,60 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.wms.biz.inventory.wmsinventoryallocatebilllogistics;
import cn.hutool.core.bean.BeanUtil;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class WmsInventoryAllocateBillLogisticsService extends MybatisBaseService<WmsInventoryAllocateBillLogisticsMapper, WmsInventoryAllocateBillLogistics> {
public void insertByDto(WmsInventoryAllocateBillLogisticsDto dto){
WmsInventoryAllocateBillLogistics entity = new WmsInventoryAllocateBillLogistics();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public WmsInventoryAllocateBillLogisticsDetailsVo fetchDetailsVoBySid(String sid){
WmsInventoryAllocateBillLogistics entity = fetchBySid(sid);
WmsInventoryAllocateBillLogisticsDetailsVo vo = new WmsInventoryAllocateBillLogisticsDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
public void saveLogisticsInfo(WmsInventoryAllocateBillLogisticsDto dto) {
List<String> sids = dto.getSids();
for (String sid : sids) {
baseMapper.delByBillSid(sid);
dto.setBillSid(sid);
insertByDto(dto);
}
}
}
Loading…
Cancel
Save