Browse Source

移动端盘亏出库

master
God 10 months ago
parent
commit
30788a805c
  1. 6
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitin/AppInventoryProfitinFeign.java
  2. 86
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/AppInventoryProfitoutDetailDetailsVo.java
  3. 83
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/AppInventoryProfitoutDetailsVo.java
  4. 67
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/AppInventoryProfitoutFeign.java
  5. 25
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/flowable/AppDelegateQuery.java
  6. 37
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/flowable/InventOutDto.java
  7. 28
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/flowable/InventOutQuery.java
  8. 47
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/flowable/InventOutTaskQuery.java
  9. 2
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/TerminalApplication.java
  10. 87
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryprofitout/WmsInventoryProfitoutRest.java
  11. 170
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryprofitout/WmsInventoryProfitoutService.java
  12. 79
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/WmsInventoryProfitoutDetailDetailsVo.java
  13. 83
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/WmsInventoryProfitoutDetailsVo.java
  14. 63
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/WmsInventoryProfitoutFeign.java
  15. 35
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/flowable/CompleteInventoryProfitoutDto.java
  16. 23
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/flowable/InventoryProfitoutDelegateQuery.java
  17. 18
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/flowable/InventoryProfitoutNodeQuery.java
  18. 24
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/flowable/InventoryProfitoutNodeVo.java
  19. 43
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/flowable/InventoryProfitoutTaskQuery.java

6
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitin/AppInventoryProfitinFeign.java

@ -1,23 +1,17 @@
package com.yxt.anrui.terminal.api.wms.inventoryprofitin;
import com.yxt.anrui.terminal.api.autoservice.saleOrders.flowable.*;
import com.yxt.anrui.terminal.api.wms.inventorycheckbill.*;
import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.InventInDto;
import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.InventInQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.InventInTaskQuery;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Author
* @Date

86
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/AppInventoryProfitoutDetailDetailsVo.java

@ -0,0 +1,86 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.wms.inventoryprofitout;
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: WmsInventoryProfitinDetailVo.java <br/>
* Class: com.yxt.wms.api.wmsinventoryprofitindetail.WmsInventoryProfitinDetailVo <br/>
* Description: 盘盈入库-明细 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2024-08-07 16:58:17 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "盘盈入库-明细 视图数据详情", description = "盘盈入库-明细 视图数据详情")
public class AppInventoryProfitoutDetailDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("主表sid")
private String mainSid;
@ApiModelProperty("图号")
private String goodsCode;
@ApiModelProperty("商品spuSid")
private String goodsSid;
@ApiModelProperty("商品spu名称")
private String goodsSpuName;
@ApiModelProperty("商品Skusid")
private String goodsSkuSid;
@ApiModelProperty("商品sku名称")
private String goodsName;
@ApiModelProperty("规格")
private String goodsSpec;
@ApiModelProperty("入库数量(默认盘盈数量)")
private String inStorageNum;
@ApiModelProperty("入库单价")
private String inStoragePrice;
@ApiModelProperty("盘盈数量")
private String pyNum;
@ApiModelProperty("厂家sid")
private String manufacturerSid;
@ApiModelProperty("厂家名称")
private String manufacturerName;
@ApiModelProperty("单位")
private String unit; // 单位
@ApiModelProperty("供应商sid")
private String supplierSid; // 供应商sid
@ApiModelProperty("供应商名称")
private String supplierName; // 供应商名称
private String money;
}

83
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/AppInventoryProfitoutDetailsVo.java

@ -0,0 +1,83 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.api.wms.inventoryprofitout;
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;
@Data
@ApiModel(value = "盘盈入库申请 视图数据详情", description = "盘盈入库申请 视图数据详情")
public class AppInventoryProfitoutDetailsVo implements Vo {
private String sid; // sid
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("申请日期")
private Date createTime;
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("申请人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("申请部门sid")
private String deptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String deptName; // 申请部门名称
@ApiModelProperty("业务类型")
private String businessVaule; // 业务类型
@ApiModelProperty("盘点单sid")
private String sourceBillSid; // 盘点单sid
@ApiModelProperty("盘点单号")
private String sourceBillNo; // 盘点单号
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("办结时间")
private Date finishTime; // 办结时间
@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("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty
private List<AppInventoryProfitoutDetailDetailsVo> goodsList;
}

67
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventoryprofitout/AppInventoryProfitoutFeign.java

@ -0,0 +1,67 @@
package com.yxt.anrui.terminal.api.wms.inventoryprofitout;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutDto;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutTaskQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
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
*/
@Api(tags = "售后盘亏出库")
@FeignClient(
contextId = "terminal-AppInventoryProfitout",
name = "anrui-terminal",
path = "v1/inventoryloss")
public interface AppInventoryProfitoutFeign {
@ApiOperation("编辑回显盘盈入库")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<AppInventoryProfitoutDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
/**********************************************流程********************************************/
@ApiOperation("办理")
@PutMapping("/agreeCreditInfo")
@ResponseBody
ResultBean agreeCreditInfo(@RequestBody InventOutDto dto);
@ApiOperation("驳回")
@PutMapping("/rejectCreditInfo")
@ResponseBody
ResultBean rejectCreditInfo(@RequestBody InventOutTaskQuery query);
@ApiOperation("撤回")
@PutMapping("/recallCreditInfo")
@ResponseBody
ResultBean recallCreditInfo(@RequestBody InventOutTaskQuery query);
@ApiOperation("终止")
@PutMapping("/stopCreditInfo")
@ResponseBody
ResultBean stopCreditInfo(@RequestBody InventOutTaskQuery query);
@ApiOperation("获取流程操作标题")
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap InventOutQuery 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/inventoryprofitout/flowable/AppDelegateQuery.java

@ -0,0 +1,25 @@
package com.yxt.anrui.terminal.api.wms.inventoryprofitout.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/inventoryprofitout/flowable/InventOutDto.java

@ -0,0 +1,37 @@
package com.yxt.anrui.terminal.api.wms.inventoryprofitout.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 InventOutDto 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/inventoryprofitout/flowable/InventOutQuery.java

@ -0,0 +1,28 @@
package com.yxt.anrui.terminal.api.wms.inventoryprofitout.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 InventOutQuery 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/inventoryprofitout/flowable/InventOutTaskQuery.java

@ -0,0 +1,47 @@
package com.yxt.anrui.terminal.api.wms.inventoryprofitout.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 InventOutTaskQuery 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.common.base.config"
},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.basegoodssku","com.yxt.anrui.terminal.fegin.basesupplierinfo"})
@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"})
public class TerminalApplication {
public static void main(String[] args) {

87
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryprofitout/WmsInventoryProfitoutRest.java

@ -0,0 +1,87 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.wms.inventoryprofitout;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.AppInventoryProfitoutDetailsVo;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.AppInventoryProfitoutFeign;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutDto;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutTaskQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Api(tags = "售后亏出入库")
@RestController
@RequestMapping("v1/inventoryloss")
public class WmsInventoryProfitoutRest implements AppInventoryProfitoutFeign {
@Autowired
private WmsInventoryProfitoutService wmsInventoryProfitoutService;
@Override
public ResultBean<AppInventoryProfitoutDetailsVo> fetchDetailsBySid(String sid) {
return wmsInventoryProfitoutService.fetchDetailsBySid(sid);
}
@Override
public ResultBean agreeCreditInfo(InventOutDto dto) {
return wmsInventoryProfitoutService.agreeCreditInfo(dto);
}
@Override
public ResultBean rejectCreditInfo(InventOutTaskQuery query) {
return wmsInventoryProfitoutService.rejectCreditInfo(query);
}
@Override
public ResultBean recallCreditInfo(InventOutTaskQuery query) {
return wmsInventoryProfitoutService.recallCreditInfo(query);
}
@Override
public ResultBean stopCreditInfo(InventOutTaskQuery query) {
return wmsInventoryProfitoutService.stopCreditInfo(query);
}
@Override
public ResultBean<String> getFlowOperateTitle(InventOutQuery query) {
return wmsInventoryProfitoutService.getFlowOperateTitle(query);
}
@Override
public ResultBean delegate(AppDelegateQuery delegateQuery) {
return wmsInventoryProfitoutService.delegate(delegateQuery);
}
@Override
public ResultBean assignTask(AppDelegateQuery delegateQuery) {
return wmsInventoryProfitoutService.assignTask(delegateQuery);
}
}

170
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventoryprofitout/WmsInventoryProfitoutService.java

@ -0,0 +1,170 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.biz.wms.inventoryprofitout;
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.inventoryprofitout.flowable.AppDelegateQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.AppInventoryProfitoutDetailsVo;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutDto;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutQuery;
import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutTaskQuery;
import com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.WmsInventoryProfitoutDetailsVo;
import com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.WmsInventoryProfitoutFeign;
import com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.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.Collections;
import java.util.List;
@Service
public class WmsInventoryProfitoutService {
@Resource
private WmsInventoryProfitoutFeign wmsInventoryProfitoutFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysUserFeign sysUserFeign;
public ResultBean<AppInventoryProfitoutDetailsVo> fetchDetailsBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
WmsInventoryProfitoutDetailsVo data = wmsInventoryProfitoutFeign.fetchDetailsBySid(sid).getData();
AppInventoryProfitoutDetailsVo appInventoryProfitoutDetailsVo = new AppInventoryProfitoutDetailsVo();
BeanUtil.copyProperties(data,appInventoryProfitoutDetailsVo);
return rb.success().setData(appInventoryProfitoutDetailsVo);
}
public ResultBean agreeCreditInfo(InventOutDto 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();
CompleteInventoryProfitoutDto completeInventoryProfitoutDto = new CompleteInventoryProfitoutDto();
BeanUtil.copyProperties(dto, completeInventoryProfitoutDto);
completeInventoryProfitoutDto.setOrgSidPath(orgSidPath);
ResultBean resultBean = wmsInventoryProfitoutFeign.complete(completeInventoryProfitoutDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean rejectCreditInfo(InventOutTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
InventoryProfitoutTaskQuery inventoryProfitoutTaskQuery = new InventoryProfitoutTaskQuery();
BeanUtil.copyProperties(query, inventoryProfitoutTaskQuery);
ResultBean resultBean = wmsInventoryProfitoutFeign.taskReject(inventoryProfitoutTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean recallCreditInfo(InventOutTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
InventoryProfitoutTaskQuery inventoryProfitoutTaskQuery = new InventoryProfitoutTaskQuery();
BeanUtil.copyProperties(query, inventoryProfitoutTaskQuery);
ResultBean resultBean = wmsInventoryProfitoutFeign.revokeProcess(inventoryProfitoutTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean stopCreditInfo(InventOutTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
InventoryProfitoutTaskQuery inventoryProfitoutTaskQuery = new InventoryProfitoutTaskQuery();
BeanUtil.copyProperties(query, inventoryProfitoutTaskQuery);
ResultBean resultBean = wmsInventoryProfitoutFeign.breakProcess(inventoryProfitoutTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean<String> getFlowOperateTitle(InventOutQuery query) {
ResultBean<String> rb = ResultBean.fireFail();
//0 上一环节 1下一环节
int next = query.getNext();
InventoryProfitoutNodeQuery getNodeQuery = new InventoryProfitoutNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<InventoryProfitoutNodeVo>> getPreviousNodesForReject = wmsInventoryProfitoutFeign.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<InventoryProfitoutNodeVo>> getNextNodesForSubmit = wmsInventoryProfitoutFeign.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();
InventoryProfitoutDelegateQuery delegateQuery1 = new
InventoryProfitoutDelegateQuery();
BeanUtil.copyProperties(delegateQuery, delegateQuery1);
wmsInventoryProfitoutFeign.delegate(delegateQuery1);
return rb.success();
}
public ResultBean assignTask(AppDelegateQuery delegateQuery) {
ResultBean rb = ResultBean.fireFail();
InventoryProfitoutDelegateQuery delegateQuery1 = new
InventoryProfitoutDelegateQuery();
BeanUtil.copyProperties(delegateQuery, delegateQuery1);
wmsInventoryProfitoutFeign.assignTask(delegateQuery1);
return rb.success();
}
}

79
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/WmsInventoryProfitoutDetailDetailsVo.java

@ -0,0 +1,79 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
@ApiModel(value = "盘亏出库-明细 视图数据详情", description = "盘亏出库-明细 视图数据详情")
public class WmsInventoryProfitoutDetailDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("主表sid")
private String mainSid; // 主表sid
@ApiModelProperty("商品ID")
private String goodsID; // 商品ID
@ApiModelProperty("图号")
private String goodsCode;
@ApiModelProperty("商品spuSid")
private String goodsSid;
@ApiModelProperty("商品spu名称")
private String goodsSpuName;
@ApiModelProperty("商品Skusid")
private String goodsSkuSid;
@ApiModelProperty("商品sku名称")
private String goodsName;
@ApiModelProperty("规格")
private String goodsSpec;
@ApiModelProperty("入库单价")
private String inStoragePrice;
@ApiModelProperty("盘亏数量")
private String pkNum;
@ApiModelProperty("厂家sid")
private String manufacturerSid;
@ApiModelProperty("厂家名称")
private String manufacturerName;
@ApiModelProperty("单位")
private String unit; // 单位
@ApiModelProperty("仓库sid")
private String warehouseSid; // 仓库sid
@ApiModelProperty("仓库名称")
private String warehouseName; // 仓库名称
@ApiModelProperty("库位sid")
private String warehouseRackSid; // 库位sid
@ApiModelProperty("库位名称")
private String warehouseRackName; // 库位名称
@ApiModelProperty("出库数量")
private BigDecimal outStorageNum; // 出库数量
private String money;
}

83
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/WmsInventoryProfitoutDetailsVo.java

@ -0,0 +1,83 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout;
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;
@Data
@ApiModel(value = "盘亏出库申请 视图数据详情", description = "盘亏出库申请 视图数据详情")
public class WmsInventoryProfitoutDetailsVo implements Vo {
private String sid; // sid
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("申请日期")
private Date createTime;
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("申请人sid")
private String createBySid;
@ApiModelProperty("制单人姓名")
private String createByName; // 制单人姓名
@ApiModelProperty("申请部门sid")
private String deptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String deptName; // 申请部门名称
@ApiModelProperty("业务类型")
private String businessValue; // 业务类型
@ApiModelProperty("盘点单sid")
private String sourceBillSid; // 盘点单sid
@ApiModelProperty("盘点单号")
private String sourceBillNo; // 盘点单号
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("办结时间")
private Date finishTime; // 办结时间
@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("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty
private List<WmsInventoryProfitoutDetailDetailsVo> goodsList;
}

63
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/WmsInventoryProfitoutFeign.java

@ -0,0 +1,63 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout;
import com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.flowable.*;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
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;
/**
* @Author
* @Date
* @Description
*/
@Api(tags = "售后亏出入库")
@FeignClient(
contextId = "yxt-wms-WmsInventoryProfitout",
name = "yxt-wms",
path = "v1/wmsinventoryloss")
public interface WmsInventoryProfitoutFeign {
@ApiOperation("编辑回显盘亏出库")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<WmsInventoryProfitoutDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation(value = "办理(同意)")
@PostMapping("/complete")
public ResultBean complete(@Valid @RequestBody CompleteInventoryProfitoutDto query);
@ApiOperation(value = "获取上一个环节")
@GetMapping(value = "/getPreviousNodesForReject")
ResultBean<List<InventoryProfitoutNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap InventoryProfitoutNodeQuery query);
@ApiOperation(value = "获取下一个环节")
@GetMapping(value = "/getNextNodesForSubmit")
ResultBean<List<InventoryProfitoutNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap InventoryProfitoutNodeQuery query);
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public ResultBean taskReject(@Valid @RequestBody InventoryProfitoutTaskQuery query);
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess")
public ResultBean revokeProcess(@Valid @RequestBody InventoryProfitoutTaskQuery query);
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess")
public ResultBean breakProcess(@Valid @RequestBody InventoryProfitoutTaskQuery query);
@ApiOperation(value = "加签")
@PostMapping(value = "/delegate")
@ResponseBody
public ResultBean delegate(@RequestBody InventoryProfitoutDelegateQuery query);
@ApiOperation(value = "转办")
@PutMapping(value = "/assignTask")
@ResponseBody
public ResultBean assignTask(@RequestBody InventoryProfitoutDelegateQuery query);
}

35
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsinventoryprofitout/flowable/CompleteInventoryProfitoutDto.java

@ -0,0 +1,35 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class CompleteInventoryProfitoutDto {
@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/wmsinventoryprofitout/flowable/InventoryProfitoutDelegateQuery.java

@ -0,0 +1,23 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class InventoryProfitoutDelegateQuery {
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/wmsinventoryprofitout/flowable/InventoryProfitoutNodeQuery.java

@ -0,0 +1,18 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class InventoryProfitoutNodeQuery {
@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/wmsinventoryprofitout/flowable/InventoryProfitoutNodeVo.java

@ -0,0 +1,24 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class InventoryProfitoutNodeVo {
@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/wmsinventoryprofitout/flowable/InventoryProfitoutTaskQuery.java

@ -0,0 +1,43 @@
package com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.flowable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @description:
* @author: dimengzhe
* @date: 2024/5/11
**/
@Data
public class InventoryProfitoutTaskQuery {
/**
* 终止驳回撤回
*/
@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;
}
Loading…
Cancel
Save