65 changed files with 9973 additions and 97 deletions
@ -0,0 +1,16 @@ |
|||||
|
package com.yxt.anrui.riskcenter.api.loansettleapply; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* @author Fan |
||||
|
* @description |
||||
|
* @date 2024/8/28 10:29 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class PlanNoReturnMoney { |
||||
|
private String sid; |
||||
|
private String mSid; |
||||
|
private String money; |
||||
|
private String jrSid; |
||||
|
} |
@ -0,0 +1,218 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.apiadmin.inventroy; |
||||
|
|
||||
|
import cn.hutool.core.bean.BeanUtil; |
||||
|
import com.yxt.common.core.query.PagerQuery; |
||||
|
import com.yxt.common.core.result.ResultBean; |
||||
|
import com.yxt.common.core.vo.PagerVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbill.WmsOldCheckbillDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbill.WmsOldCheckbillQuery; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbill.WmsOldCheckbillService; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbill.WmsOldCheckbillVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable.*; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.*; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.*; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbillreport.WmsOldCheckbillReportDetailsVo; |
||||
|
import com.yxt.wms.feign.flowable.flow.BusinessVariables; |
||||
|
import io.swagger.annotations.Api; |
||||
|
import io.swagger.annotations.ApiOperation; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.cloud.openfeign.SpringQueryMap; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import javax.validation.Valid; |
||||
|
import java.util.List; |
||||
|
|
||||
|
@Api(tags = "旧件盘点") |
||||
|
@RestController |
||||
|
@RequestMapping("v1/oldpPartStocktaking") |
||||
|
public class WmsOldCheckbillRest { |
||||
|
|
||||
|
@Autowired |
||||
|
private WmsOldCheckbillService wmsOldCheckbillService; |
||||
|
|
||||
|
@ApiOperation("根据条件分页查询数据的列表") |
||||
|
@PostMapping("/listPage") |
||||
|
public ResultBean<PagerVo<WmsOldCheckbillVo>> listPage(@RequestBody PagerQuery<WmsOldCheckbillQuery> pq) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
PagerVo<WmsOldCheckbillVo> pv = wmsOldCheckbillService.listPageVo(pq); |
||||
|
return rb.success().setData(pv); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("新建盘点单") |
||||
|
@PostMapping("/save") |
||||
|
public ResultBean save(@RequestBody WmsOldCheckbillDto dto) { |
||||
|
return wmsOldCheckbillService.saveOrUpdateDto(dto); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("生成盘点报告") |
||||
|
@PostMapping("/createReport") |
||||
|
public ResultBean createReport(@RequestParam("sid") String sid) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
wmsOldCheckbillService.createReport(sid); |
||||
|
return rb.success(); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("查看盘点报告") |
||||
|
@PostMapping("/viewReport") |
||||
|
public ResultBean<WmsOldCheckbillReportDetailsVo> viewReport(@RequestParam("sid") String sid) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
WmsOldCheckbillReportDetailsVo wmsOldCheckbillReportDetailsVo = wmsOldCheckbillService.viewReport(sid); |
||||
|
return rb.success().success().setData(wmsOldCheckbillReportDetailsVo); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("保存办理盘点报告") |
||||
|
@PostMapping("/saveReport") |
||||
|
public ResultBean saveReport(@RequestParam("sid") String sid,@RequestParam("remarks") String remarks) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
wmsOldCheckbillService.saveReport(sid,remarks); |
||||
|
return rb.success().success(); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("生成盘点报告PDF") |
||||
|
@PostMapping("/createPdf") |
||||
|
public ResultBean<String> createPdf(@RequestParam("sid") String sid) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
String url = wmsOldCheckbillService.createPdf(sid); |
||||
|
return rb.success().success().setData(url); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("根据sid批量删除") |
||||
|
@DeleteMapping("/delBySids") |
||||
|
public ResultBean delBySids(@RequestBody String[] sids) { |
||||
|
return wmsOldCheckbillService.delAll(sids); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("盘点-查看库位盘点列表") |
||||
|
@PostMapping("/detailRackPageList") |
||||
|
public ResultBean<PagerVo<WmsOldCheckbillDetailRackPageListVo>> detailRackPageList(@RequestBody PagerQuery<WmsOldCheckbillDetailRackPageListQuery> pq) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
PagerVo<WmsOldCheckbillDetailRackPageListVo> pv = wmsOldCheckbillService.detailRackPageList(pq); |
||||
|
return rb.success().setData(pv); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("盘点-查看商品盘点列表") |
||||
|
@PostMapping("/detailGoodPageList") |
||||
|
public ResultBean<PagerVo<WmsOldCheckbillDetailGoodPageListVo>> detailGoodPageList(@RequestBody PagerQuery<WmsOldCheckbillDetailGoodPageListQuery> pq) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
PagerVo<WmsOldCheckbillDetailGoodPageListVo> pv = wmsOldCheckbillService.detailGoodPageList(pq); |
||||
|
return rb.success().setData(pv); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("查看库位商品盘点列表") |
||||
|
@PostMapping("/detailRackGoodPageList") |
||||
|
public ResultBean<PagerVo<WmsOldCheckbillDetailRackGoodPageListVo>> detailRackGoodPageList(@RequestBody PagerQuery<WmsOldCheckbillDetailRackGoodPageListQuery> pq) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
PagerVo<WmsOldCheckbillDetailRackGoodPageListVo> pv = wmsOldCheckbillService.detailRackGoodPageList(pq); |
||||
|
return rb.success().setData(pv); |
||||
|
} |
||||
|
|
||||
|
/*********************************************************移动端************************************************************/ |
||||
|
|
||||
|
@ApiOperation("app-盘点-查看库位盘点列表") |
||||
|
@PostMapping("/appDetailRackPageList") |
||||
|
public ResultBean<PagerVo<WmsOldCheckbillPageVo>> appDetailRackPageList(@RequestBody PagerQuery<WmsOldCheckbillPageQuery> pq) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
PagerVo<WmsOldCheckbillPageVo> pv = wmsOldCheckbillService.appDetailRackPageList(pq); |
||||
|
return rb.success().setData(pv); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("办理/扫码保存") |
||||
|
@PostMapping("/saveInventoryInfo") |
||||
|
@ResponseBody |
||||
|
ResultBean saveInventoryInfo(@RequestBody WmsOldCheckbillGoodsDto dto) { |
||||
|
return wmsOldCheckbillService.saveInventoryInfo(dto); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("盘盈保存") |
||||
|
@PostMapping("/saveInventoryInfo2") |
||||
|
@ResponseBody |
||||
|
ResultBean saveInventoryInfo2(@RequestBody WmsOldCheckbillGoodsPyDto dto){ |
||||
|
return wmsOldCheckbillService.saveInventoryInfo2(dto); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("扫描商品码") |
||||
|
@GetMapping("/scan") |
||||
|
@ResponseBody |
||||
|
public ResultBean<HandleBean> scan(@RequestParam("sid") String sid, @RequestParam("content") String content, @RequestParam("houseSid") String houseSid) { |
||||
|
return wmsOldCheckbillService.scan(sid, content, houseSid); |
||||
|
} |
||||
|
|
||||
|
/*********************************************************流程************************************************************/ |
||||
|
|
||||
|
@ApiOperation("提交") |
||||
|
@PostMapping("/submitApply") |
||||
|
public ResultBean submitApply(@Valid @RequestBody SubmitOldCheckDto dto) { |
||||
|
return wmsOldCheckbillService.submitApply(dto); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation(value = "办理(同意)") |
||||
|
@PostMapping("/complete") |
||||
|
public ResultBean complete(@Valid @RequestBody CompleteOldCheckDto query) { |
||||
|
BusinessVariables bv = new BusinessVariables(); |
||||
|
BeanUtil.copyProperties(query, bv); |
||||
|
bv.setModelId(""); |
||||
|
return wmsOldCheckbillService.complete(bv); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation(value = "获取上一个环节") |
||||
|
@GetMapping(value = "/getPreviousNodesForReject") |
||||
|
ResultBean<List<OldCheckNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap OldCheckNodeQuery query) { |
||||
|
return wmsOldCheckbillService.getPreviousNodesForReject(query); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation(value = "获取下一个环节") |
||||
|
@GetMapping(value = "/getNextNodesForSubmit") |
||||
|
ResultBean<List<OldCheckNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap OldCheckNodeQuery query) { |
||||
|
return wmsOldCheckbillService.getNextNodesForSubmit(query); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation(value = "驳回任务") |
||||
|
@PostMapping(value = "/reject") |
||||
|
public ResultBean taskReject(@Valid @RequestBody OldCheckTaskQuery query) { |
||||
|
return wmsOldCheckbillService.taskReject(query); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation(value = "撤回流程") |
||||
|
@PostMapping(value = "/revokeProcess") |
||||
|
public ResultBean revokeProcess(@Valid @RequestBody OldCheckTaskQuery query) { |
||||
|
return wmsOldCheckbillService.revokeProcess(query); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation(value = "终止任务") |
||||
|
@PostMapping(value = "/breakProcess") |
||||
|
public ResultBean breakProcess(@Valid @RequestBody OldCheckTaskQuery query) { |
||||
|
return wmsOldCheckbillService.breakProcess(query); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation(value = "加签") |
||||
|
@PostMapping(value = "/delegate") |
||||
|
@ResponseBody |
||||
|
public ResultBean delegate(@RequestBody OldCheckDelegateQuery query) { |
||||
|
return wmsOldCheckbillService.delegate(query); |
||||
|
} |
||||
|
} |
@ -0,0 +1,78 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import com.yxt.common.core.domain.BaseEntity; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
@Data |
||||
|
@TableName("wms_old_checkbill") |
||||
|
public class WmsOldCheckbill extends BaseEntity { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
@ApiModelProperty("单据编号") |
||||
|
private String billNo; // 单据编号
|
||||
|
@ApiModelProperty("制单人姓名") |
||||
|
private String createByName; // 制单人姓名
|
||||
|
@ApiModelProperty("申请部门sid") |
||||
|
private String deptSid; // 申请部门sid
|
||||
|
@ApiModelProperty("申请部门名称") |
||||
|
private String deptName; // 申请部门名称
|
||||
|
@ApiModelProperty("盘点类型key") |
||||
|
private String checkTypeKey; |
||||
|
@ApiModelProperty("盘点类型value") |
||||
|
private String checkTypeValue; |
||||
|
@ApiModelProperty("监盘人sid") |
||||
|
private String superviseSid; // 监盘人sid
|
||||
|
@ApiModelProperty("监盘人姓名") |
||||
|
private String superviseName; // 监盘人姓名
|
||||
|
@ApiModelProperty("盘点状态(盘点中1,盘点完成2)") |
||||
|
private Integer checkState; // 盘点状态(盘点中1,盘点完成2)
|
||||
|
@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
|
||||
|
|
||||
|
} |
@ -0,0 +1,84 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailDetailsVo; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailsVo implements Vo { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@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("盘点类型key") |
||||
|
private String checkTypeKey; |
||||
|
@ApiModelProperty("盘点类型value") |
||||
|
private String checkTypeValue; |
||||
|
@ApiModelProperty("监盘人sid") |
||||
|
private String superviseSid; // 监盘人sid
|
||||
|
@ApiModelProperty("监盘人姓名") |
||||
|
private String superviseName; // 监盘人姓名
|
||||
|
@ApiModelProperty("盘点状态(盘点中1,盘点完成2)") |
||||
|
private Integer checkState; // 盘点状态(盘点中1,盘点完成2)
|
||||
|
@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<WmsOldCheckbillDetailDetailsVo> wmsOldCheckbillDetailList; |
||||
|
} |
@ -0,0 +1,91 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import com.yxt.common.core.dto.Dto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailDto; |
||||
|
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; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillDto implements Dto { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@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("盘点类型key") |
||||
|
private String checkTypeKey; |
||||
|
@ApiModelProperty("盘点类型value") |
||||
|
private String checkTypeValue; |
||||
|
@ApiModelProperty("监盘人sid") |
||||
|
private String superviseSid; // 监盘人sid
|
||||
|
@ApiModelProperty("监盘人姓名") |
||||
|
private String superviseName; // 监盘人姓名
|
||||
|
@ApiModelProperty("盘点状态(盘点中1,盘点完成2)") |
||||
|
private Integer checkState; // 盘点状态(盘点中1,盘点完成2)
|
||||
|
@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<WmsOldCheckbillDetailDto> wmsOldCheckbillDetailList; |
||||
|
|
||||
|
/* |
||||
|
* 月度抽盘 |
||||
|
* */ |
||||
|
@ApiModelProperty("库位sid") |
||||
|
private List<String> rackSids = new ArrayList<>(); |
||||
|
} |
@ -0,0 +1,73 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.baomidou.mybatisplus.core.toolkit.Constants; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventoryprofitin.InventoryBillVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailGoodPageListVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailRackGoodPageListVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailRackPageListVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillPageVo; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
import org.apache.ibatis.annotations.Select; |
||||
|
import org.apache.ibatis.annotations.Update; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
@Mapper |
||||
|
public interface WmsOldCheckbillMapper extends BaseMapper<WmsOldCheckbill> { |
||||
|
|
||||
|
IPage<WmsOldCheckbillVo> selectPageVo(IPage<WmsOldCheckbill> page, @Param(Constants.WRAPPER) Wrapper<WmsOldCheckbill> qw); |
||||
|
|
||||
|
IPage<WmsOldCheckbillDetailRackPageListVo> detailRackPageList(IPage<WmsOldCheckbill> page, @Param(Constants.WRAPPER) Wrapper<WmsOldCheckbill> qw); |
||||
|
|
||||
|
IPage<WmsOldCheckbillDetailGoodPageListVo> detailGoodPageList(IPage<WmsOldCheckbill> page, @Param(Constants.WRAPPER) Wrapper<WmsOldCheckbill> qw); |
||||
|
|
||||
|
IPage<WmsOldCheckbillDetailRackGoodPageListVo> detailRackGoodPageList(IPage<WmsOldCheckbill> page, @Param(Constants.WRAPPER) QueryWrapper<WmsOldCheckbill> qw); |
||||
|
|
||||
|
String selectNum(String billNo); |
||||
|
|
||||
|
int selectBySid(String join); |
||||
|
|
||||
|
@Update("update wms_old_checkbill set state = 0,checkState = 2 where sid = #{sid}") |
||||
|
void createReport(String sid); |
||||
|
|
||||
|
String checkState(String deptSid); |
||||
|
|
||||
|
int updateFlowFiled(Map<String, Object> beanToMap); |
||||
|
|
||||
|
IPage<WmsOldCheckbillPageVo> appDetailRackPageList(IPage<WmsOldCheckbill> page, @Param(Constants.WRAPPER) QueryWrapper<WmsOldCheckbill> qw); |
||||
|
|
||||
|
List<InventoryBillVo> selPyByDeptSid(String deptSid); |
||||
|
|
||||
|
List<InventoryBillVo> selPkByDeptSid(String deptSid); |
||||
|
} |
@ -0,0 +1,278 @@ |
|||||
|
<?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.wmsoldcheckbill.WmsOldCheckbillMapper"> |
||||
|
<!-- <where> ${ew.sqlSegment} </where>--> |
||||
|
<!-- ${ew.customSqlSegment} --> |
||||
|
<select id="selectPageVo" resultType="com.yxt.wms.biz.inventory.wmsoldcheckbill.WmsOldCheckbillVo"> |
||||
|
SELECT |
||||
|
wic.sid, |
||||
|
wic.state, |
||||
|
wic.`remarks`, |
||||
|
wic.`nodeState`, |
||||
|
wic.`deptName`, |
||||
|
wic.`billNo`, |
||||
|
wic.`createTime`, |
||||
|
wic.`createByName`, |
||||
|
wic.`superviseName`, |
||||
|
IF( |
||||
|
wic.`checkState` = '1', |
||||
|
'盘点中', |
||||
|
'盘点完成' |
||||
|
) AS checkState, |
||||
|
wic.`procDefId`, |
||||
|
wic.`procInstId`, |
||||
|
SUM(wicd.bookCount) AS bookCount, |
||||
|
SUM(wicd.bookCount * cost) AS bookAmount, |
||||
|
SUM(wicd.realCount) AS realCount, |
||||
|
SUM(wicd.realCount * cost) AS realAmount, |
||||
|
SUM(wicd.bookCount) - SUM(wicd.realCount) AS notCount, |
||||
|
( |
||||
|
SUM(wicd.bookCount * cost) - SUM(wicd.realCount * cost) |
||||
|
) AS notAmount, |
||||
|
SUM(wicd.profitCount) AS profitCount, |
||||
|
SUM(wicd.profitCount * cost) AS profitAmount, |
||||
|
SUM(wicd.loseCount) AS loseCount, |
||||
|
SUM(wicd.loseCount * cost) AS loseAmount, |
||||
|
SUM(wicd.lossCount) AS lossCount, |
||||
|
SUM(wicd.lossCount * cost) AS lossAmount |
||||
|
FROM |
||||
|
wms_old_checkbill wic |
||||
|
LEFT JOIN wms_old_checkbill_detail wicd |
||||
|
ON wic.sid = wicd.`billSid` |
||||
|
LEFT JOIN anrui_portal.sys_organization AS s |
||||
|
ON wic.deptSid = s.sid |
||||
|
<where> ${ew.sqlSegment} </where> |
||||
|
</select> |
||||
|
|
||||
|
<select id="detailRackPageList" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailRackPageListVo"> |
||||
|
SELECT |
||||
|
billSid, |
||||
|
warehouseName, |
||||
|
warehouseArea, |
||||
|
warehouseRackSid, |
||||
|
warehouseRackName, |
||||
|
SUM(bookCount) AS bookCount, |
||||
|
SUM(bookCount * cost) AS bookAmount, |
||||
|
SUM(realCount) AS realCount, |
||||
|
SUM(realCount * cost) AS realAmount, |
||||
|
SUM(bookCount) - SUM(realCount) AS notCount, |
||||
|
(SUM(bookCount * cost) - SUM(realCount * cost)) AS notAmount, |
||||
|
SUM(profitCount) AS profitCount, |
||||
|
SUM(profitCount * cost) AS profitAmount, |
||||
|
SUM(loseCount) AS loseCount, |
||||
|
SUM(loseCount * cost) AS loseAmount, |
||||
|
SUM(lossCount) AS lossCount, |
||||
|
SUM(lossCount * cost) AS lossAmount |
||||
|
FROM |
||||
|
wms_old_checkbill_detail |
||||
|
<where> ${ew.sqlSegment} </where> |
||||
|
</select> |
||||
|
|
||||
|
<select id="detailGoodPageList" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailGoodPageListVo"> |
||||
|
SELECT |
||||
|
goodsID, |
||||
|
goodsSkuTitle, |
||||
|
goodsSkuCode, |
||||
|
warehouseName, |
||||
|
warehouseArea, |
||||
|
warehouseRackName, |
||||
|
unit, |
||||
|
cost, |
||||
|
bookCount, |
||||
|
bookCount * cost AS bookAmount, |
||||
|
realCount, |
||||
|
realCount * cost AS realAmount, |
||||
|
CASE |
||||
|
state |
||||
|
WHEN 2 |
||||
|
THEN '正常' |
||||
|
WHEN 3 |
||||
|
THEN '盘盈' |
||||
|
WHEN 4 |
||||
|
THEN '盘亏' |
||||
|
END AS state, |
||||
|
CASE |
||||
|
state |
||||
|
WHEN 2 |
||||
|
THEN 0 |
||||
|
WHEN 3 |
||||
|
THEN profitCount |
||||
|
WHEN 4 |
||||
|
THEN loseCount |
||||
|
END AS profitAndLoseCount, |
||||
|
CASE |
||||
|
state |
||||
|
WHEN 2 |
||||
|
THEN 0 |
||||
|
WHEN 3 |
||||
|
THEN profitCount * cost |
||||
|
WHEN 4 |
||||
|
THEN loseCount * cost |
||||
|
END AS profitAndLoseAmount, |
||||
|
lossCount, |
||||
|
lossCount * cost AS lossAmount, |
||||
|
remarks |
||||
|
FROM |
||||
|
wms_old_checkbill_detail |
||||
|
<where> ${ew.sqlSegment} </where> |
||||
|
</select> |
||||
|
|
||||
|
<select id="detailRackGoodPageList" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailRackGoodPageListVo"> |
||||
|
SELECT |
||||
|
sid, |
||||
|
goodsID, |
||||
|
goodsSkuTitle, |
||||
|
goodsSkuCode, |
||||
|
warehouseName, |
||||
|
warehouseArea, |
||||
|
warehouseRackName, |
||||
|
unit, |
||||
|
cost, |
||||
|
bookCount, |
||||
|
bookCount * cost AS bookAmount, |
||||
|
realCount, |
||||
|
realCount * cost AS realAmount, |
||||
|
CASE |
||||
|
state |
||||
|
WHEN 2 |
||||
|
THEN '正常' |
||||
|
WHEN 3 |
||||
|
THEN '盘盈' |
||||
|
WHEN 4 |
||||
|
THEN '盘亏' |
||||
|
END AS state, |
||||
|
CASE |
||||
|
state |
||||
|
WHEN 2 |
||||
|
THEN 0 |
||||
|
WHEN 3 |
||||
|
THEN profitCount |
||||
|
WHEN 4 |
||||
|
THEN loseCount |
||||
|
END AS profitAndLoseCount, |
||||
|
CASE |
||||
|
state |
||||
|
WHEN 2 |
||||
|
THEN 0 |
||||
|
WHEN 3 |
||||
|
THEN profitCount * cost |
||||
|
WHEN 4 |
||||
|
THEN loseCount * cost |
||||
|
END AS profitAndLoseAmount, |
||||
|
lossCount, |
||||
|
lossCount * cost AS lossAmount, |
||||
|
remarks |
||||
|
FROM |
||||
|
wms_old_checkbill_detail |
||||
|
<where> ${ew.sqlSegment} </where> |
||||
|
</select> |
||||
|
|
||||
|
<select id="selectNum" resultType="java.lang.String"> |
||||
|
select RIGHT (billNo, 4) |
||||
|
from wms_old_checkbill |
||||
|
where billNo LIKE concat(#{billNo}, '%') |
||||
|
order by billNo desc |
||||
|
limit 1 |
||||
|
</select> |
||||
|
|
||||
|
<select id="selectBySid" resultType="int"> |
||||
|
SELECT COUNT(*) |
||||
|
FROM wms_old_checkbill |
||||
|
WHERE nodeState != '待提交' |
||||
|
and find_in_set(sid, #{list}) |
||||
|
</select> |
||||
|
|
||||
|
<select id="checkState" resultType="java.lang.String"> |
||||
|
SELECT |
||||
|
checkState |
||||
|
FROM |
||||
|
wms_old_checkbill |
||||
|
WHERE deptSid = #{deptSid} |
||||
|
ORDER BY createTime DESC |
||||
|
LIMIT 1 |
||||
|
</select> |
||||
|
|
||||
|
<update id="updateFlowFiled"> |
||||
|
UPDATE wms_old_checkbill |
||||
|
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> |
||||
|
|
||||
|
<select id="appDetailRackPageList" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillPageVo"> |
||||
|
SELECT |
||||
|
c.sid, |
||||
|
d.warehouseRackSid AS houseSid, |
||||
|
CONCAT( |
||||
|
d.warehouseName, |
||||
|
'-', |
||||
|
d.warehouseArea, |
||||
|
'-', |
||||
|
d.warehouseRackName |
||||
|
) AS title, |
||||
|
SUM(bookCount) - SUM(realCount) AS surplusNumber, |
||||
|
SUM(bookCount) AS totalNumber, |
||||
|
SUM(loseCount) AS lossNumber, |
||||
|
SUM(lossCount) AS damageNumber, |
||||
|
SUM(profitCount) AS profitNumber, |
||||
|
SUM(realCount) AS actualNumber |
||||
|
FROM |
||||
|
wms_old_checkbill_detail d |
||||
|
LEFT JOIN wms_old_checkbill c |
||||
|
ON d.billSid = c.sid |
||||
|
<where> ${ew.sqlSegment} </where> |
||||
|
</select> |
||||
|
|
||||
|
<select id="selPyByDeptSid" resultType="com.yxt.wms.biz.inventory.wmsinventoryprofitin.InventoryBillVo"> |
||||
|
SELECT |
||||
|
wc.sid AS billSid, |
||||
|
wc.billNo |
||||
|
FROM |
||||
|
wms_old_checkbill wc |
||||
|
JOIN |
||||
|
(SELECT |
||||
|
SUM(wd.profitCount) AS total, |
||||
|
wd.billSid AS billSid |
||||
|
FROM |
||||
|
wms_old_checkbill_detail wd |
||||
|
GROUP BY wd.billSid) AS total_goods |
||||
|
WHERE wc.deptSid = #{deptSid} |
||||
|
AND total_goods.billSid = wc.sid |
||||
|
AND total_goods.total > 0 |
||||
|
AND wc.checkState = 2 |
||||
|
</select> |
||||
|
|
||||
|
<select id="selPkByDeptSid" resultType="com.yxt.wms.biz.inventory.wmsinventoryprofitin.InventoryBillVo"> |
||||
|
SELECT |
||||
|
wc.sid AS billSid, |
||||
|
wc.billNo |
||||
|
FROM |
||||
|
wms_old_checkbill wc |
||||
|
JOIN |
||||
|
(SELECT |
||||
|
SUM(wd.loseCount) AS total, |
||||
|
wd.billSid AS billSid |
||||
|
FROM |
||||
|
wms_old_checkbill_detail wd |
||||
|
GROUP BY wd.billSid) AS total_goods |
||||
|
WHERE wc.deptSid = #{deptSid} |
||||
|
AND total_goods.billSid = wc.sid |
||||
|
AND total_goods.total > 0 |
||||
|
AND wc.checkState = 2 |
||||
|
</select> |
||||
|
</mapper> |
@ -0,0 +1,69 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.query.Query; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillQuery.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbill.WmsInventoryCheckbillQuery <br/> |
||||
|
* Description: 库存盘点 查询条件. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:01 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillQuery implements Query { |
||||
|
|
||||
|
@ApiModelProperty("申请部门名称") |
||||
|
private String deptName; |
||||
|
@ApiModelProperty("单据编号") |
||||
|
private String billNo; |
||||
|
@ApiModelProperty("生成开始日期") |
||||
|
private String createStartTime; |
||||
|
@ApiModelProperty("生成结束日期") |
||||
|
private String createEndTime; |
||||
|
@ApiModelProperty("盘点状态(盘点中1,盘点完成2)") |
||||
|
private String checkState; |
||||
|
@ApiModelProperty("盘点人姓名") |
||||
|
private String createByName; |
||||
|
@ApiModelProperty("监盘人姓名") |
||||
|
private String superviseName; |
||||
|
|
||||
|
private String userSid; |
||||
|
private String orgPath; |
||||
|
private String menuUrl; |
||||
|
private String menuSid; |
||||
|
} |
@ -0,0 +1,898 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill; |
||||
|
|
||||
|
import cn.hutool.core.bean.BeanUtil; |
||||
|
import cn.hutool.core.date.DateUtil; |
||||
|
import com.alibaba.fastjson.JSON; |
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.google.common.util.concurrent.ThreadFactoryBuilder; |
||||
|
import com.yxt.common.base.config.component.DocPdfComponent; |
||||
|
import com.yxt.common.base.config.component.FileUploadComponent; |
||||
|
import com.yxt.common.base.service.MybatisBaseService; |
||||
|
import com.yxt.common.base.utils.PagerUtil; |
||||
|
import com.yxt.common.base.utils.WordConvertUtils; |
||||
|
import com.yxt.common.core.query.PagerQuery; |
||||
|
import com.yxt.common.core.result.ResultBean; |
||||
|
import com.yxt.common.core.vo.PagerVo; |
||||
|
import com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseArea; |
||||
|
import com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseAreaService; |
||||
|
import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRack; |
||||
|
import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackService; |
||||
|
import com.yxt.wms.biz.inventory.wmsappendix.WmsAppendix; |
||||
|
import com.yxt.wms.biz.inventory.wmsappendix.WmsAppendixService; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventory.WmsInventory; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryService; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventoryprofitin.InventoryBillVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventoryrecord.WmsInventoryRecordService; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable.*; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.*; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillGoodsDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillGoodsPyDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillPageQuery; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillPageVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.HandleBean; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbillreport.*; |
||||
|
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.FlowDelegateQuery; |
||||
|
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.SysOrganizationVo; |
||||
|
import com.yxt.wms.feign.portal.sysstafforg.SysStaffOrgFeign; |
||||
|
import com.yxt.wms.feign.portal.sysuser.SysUserFeign; |
||||
|
import com.yxt.wms.utils.Rule; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
import org.apache.tomcat.util.threads.ThreadPoolExecutor; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.io.File; |
||||
|
import java.io.InputStream; |
||||
|
import java.util.*; |
||||
|
import java.util.concurrent.*; |
||||
|
import java.util.stream.Collectors; |
||||
|
|
||||
|
@Service |
||||
|
public class WmsOldCheckbillService extends MybatisBaseService<WmsOldCheckbillMapper, WmsOldCheckbill> { |
||||
|
|
||||
|
@Autowired |
||||
|
private WmsOldCheckbillDetailService wmsOldCheckbillDetailService; |
||||
|
@Autowired |
||||
|
private WmsOldCheckbillReportService wmsOldCheckbillReportService; |
||||
|
@Autowired |
||||
|
private WmsAppendixService wmsAppendixService; |
||||
|
@Autowired |
||||
|
private WmsInventoryService wmsInventoryService; |
||||
|
@Autowired |
||||
|
private WmsInventoryRecordService wmsInventoryRecordService; |
||||
|
@Autowired |
||||
|
private WmsWarehouseRackService wmsWarehouseRackService; |
||||
|
@Autowired |
||||
|
private WmsWarehouseAreaService wmsWarehouseAreaService; |
||||
|
@Autowired |
||||
|
private SysOrganizationFeign sysOrganizationFeign; |
||||
|
@Autowired |
||||
|
private SysUserFeign sysUserFeign; |
||||
|
@Autowired |
||||
|
private SysStaffOrgFeign sysStaffOrgFeign; |
||||
|
@Autowired |
||||
|
private DocPdfComponent docPdfComponent; |
||||
|
@Autowired |
||||
|
private FlowableFeign flowableFeign; |
||||
|
@Autowired |
||||
|
private FlowTaskFeign flowTaskFeign; |
||||
|
@Autowired |
||||
|
private FlowFeign flowFeign; |
||||
|
@Autowired |
||||
|
private MessageFeign messageFeign; |
||||
|
@Autowired |
||||
|
private FileUploadComponent fileUploadComponent; |
||||
|
|
||||
|
public PagerVo<WmsOldCheckbillVo> listPageVo(PagerQuery<WmsOldCheckbillQuery> pq) { |
||||
|
WmsOldCheckbillQuery query = pq.getParams(); |
||||
|
QueryWrapper<WmsOldCheckbill> qw = new QueryWrapper<>(); |
||||
|
//========================================数据授权开始
|
||||
|
if (StringUtils.isNotBlank(query.getMenuUrl()) || StringUtils.isNotBlank(query.getMenuSid())) { |
||||
|
PrivilegeQuery privilegeQuery = new PrivilegeQuery(); |
||||
|
privilegeQuery.setOrgPath(query.getOrgPath()); |
||||
|
privilegeQuery.setMenuUrl(query.getMenuUrl()); |
||||
|
privilegeQuery.setMenuSid(query.getMenuSid()); |
||||
|
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("wic.createBySid", query.getUserSid()); |
||||
|
} else { |
||||
|
PagerVo<WmsOldCheckbillVo> p = new PagerVo<>(); |
||||
|
return p; |
||||
|
} |
||||
|
} else { |
||||
|
PagerVo<WmsOldCheckbillVo> p = new PagerVo<>(); |
||||
|
return p; |
||||
|
} |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getDeptName())) { |
||||
|
qw.like("wic.deptName", query.getDeptName()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getBillNo())) { |
||||
|
qw.like("wic.billNo", query.getBillNo()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getCheckState())) { |
||||
|
qw.eq("wic.checkState", query.getCheckState()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getCreateByName())) { |
||||
|
qw.like("wic.createByName", query.getCreateByName()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getSuperviseName())) { |
||||
|
qw.like("wic.superviseName", query.getSuperviseName()); |
||||
|
} |
||||
|
String createStartTime = query.getCreateStartTime(); |
||||
|
String createEndTime = query.getCreateEndTime(); |
||||
|
qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (wic.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). |
||||
|
apply(StringUtils.isNotEmpty(createEndTime), "date_format (wic.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" |
||||
|
); |
||||
|
qw.groupBy("wic.sid"); |
||||
|
IPage<WmsOldCheckbill> page = PagerUtil.queryToPage(pq); |
||||
|
IPage<WmsOldCheckbillVo> pagging = baseMapper.selectPageVo(page, qw); |
||||
|
PagerVo<WmsOldCheckbillVo> p = PagerUtil.pageToVo(pagging, null); |
||||
|
return p; |
||||
|
} |
||||
|
|
||||
|
public PagerVo<WmsOldCheckbillDetailRackPageListVo> detailRackPageList(PagerQuery<WmsOldCheckbillDetailRackPageListQuery> pq) { |
||||
|
WmsOldCheckbillDetailRackPageListQuery query = pq.getParams(); |
||||
|
QueryWrapper<WmsOldCheckbill> qw = new QueryWrapper<>(); |
||||
|
qw.eq("billSid", query.getBillSid()); |
||||
|
if (StringUtils.isNotBlank(query.getWarehouseSid())) { |
||||
|
qw.eq("warehouseSid", query.getWarehouseSid()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getWarehouseAreaSid())) { |
||||
|
qw.eq("warehouseAreaSid", query.getWarehouseAreaSid()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getWarehouseRackSid())) { |
||||
|
qw.eq("warehouseRackSid", query.getWarehouseRackSid()); |
||||
|
} |
||||
|
qw.groupBy("warehouseRackSid"); |
||||
|
IPage<WmsOldCheckbill> page = PagerUtil.queryToPage(pq); |
||||
|
IPage<WmsOldCheckbillDetailRackPageListVo> pagging = baseMapper.detailRackPageList(page, qw); |
||||
|
PagerVo<WmsOldCheckbillDetailRackPageListVo> p = PagerUtil.pageToVo(pagging, null); |
||||
|
return p; |
||||
|
} |
||||
|
|
||||
|
public PagerVo<WmsOldCheckbillDetailGoodPageListVo> detailGoodPageList(PagerQuery<WmsOldCheckbillDetailGoodPageListQuery> pq) { |
||||
|
WmsOldCheckbillDetailGoodPageListQuery query = pq.getParams(); |
||||
|
QueryWrapper<WmsOldCheckbill> qw = new QueryWrapper<>(); |
||||
|
qw.eq("billSid", query.getBillSid()); |
||||
|
if (StringUtils.isNotBlank(query.getWarehouseSid())) { |
||||
|
qw.eq("warehouseSid", query.getWarehouseSid()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getWarehouseAreaSid())) { |
||||
|
qw.eq("warehouseAreaSid", query.getWarehouseAreaSid()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getWarehouseRackSid())) { |
||||
|
qw.eq("warehouseRackSid", query.getWarehouseRackSid()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getGoodsID())) { |
||||
|
qw.like("goodsID", query.getGoodsID()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getGoodsSkuTitle())) { |
||||
|
qw.like("goodsSkuTitle", query.getGoodsSkuTitle()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getGoodsSkuCode())) { |
||||
|
qw.like("goodsSkuCode", query.getGoodsSkuCode()); |
||||
|
} |
||||
|
IPage<WmsOldCheckbill> page = PagerUtil.queryToPage(pq); |
||||
|
IPage<WmsOldCheckbillDetailGoodPageListVo> pagging = baseMapper.detailGoodPageList(page, qw); |
||||
|
PagerVo<WmsOldCheckbillDetailGoodPageListVo> p = PagerUtil.pageToVo(pagging, null); |
||||
|
return p; |
||||
|
} |
||||
|
|
||||
|
public PagerVo<WmsOldCheckbillDetailRackGoodPageListVo> detailRackGoodPageList(PagerQuery<WmsOldCheckbillDetailRackGoodPageListQuery> pq) { |
||||
|
WmsOldCheckbillDetailRackGoodPageListQuery query = pq.getParams(); |
||||
|
QueryWrapper<WmsOldCheckbill> qw = new QueryWrapper<>(); |
||||
|
qw.eq("billSid", query.getBillSid()); |
||||
|
qw.eq("warehouseRackSid", query.getWarehouseRackSid()); |
||||
|
if (StringUtils.isNotBlank(query.getGoodsID())) { |
||||
|
qw.like("goodsID", query.getGoodsID()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getGoodsSkuTitle())) { |
||||
|
qw.like("goodsSkuTitle", query.getGoodsSkuTitle()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getGoodsSkuCode())) { |
||||
|
qw.like("goodsSkuCode", query.getGoodsSkuCode()); |
||||
|
} |
||||
|
//移动端查询条件
|
||||
|
if (StringUtils.isNotBlank(query.getName())) { |
||||
|
qw.and(wrapper -> wrapper.like("goodsID", query.getName()).or().like("goodsSkuTitle", query.getName()).or().like("goodsSkuCode", query.getName())); |
||||
|
} |
||||
|
IPage<WmsOldCheckbill> page = PagerUtil.queryToPage(pq); |
||||
|
IPage<WmsOldCheckbillDetailRackGoodPageListVo> pagging = baseMapper.detailRackGoodPageList(page, qw); |
||||
|
for (WmsOldCheckbillDetailRackGoodPageListVo record : pagging.getRecords()) { |
||||
|
List<WmsAppendix> wmsAppendices = wmsAppendixService.fetchByLinkSid(record.getSid()); |
||||
|
List<WmsOldCheckbillDetailFile> wmsOldCheckbillDetailFiles = new ArrayList<>(); |
||||
|
for (WmsAppendix wmsAppendix : wmsAppendices) { |
||||
|
WmsOldCheckbillDetailFile wmsOldCheckbillDetailFile = new WmsOldCheckbillDetailFile(); |
||||
|
String url = fileUploadComponent.getUrlPrefix() + wmsAppendix.getFilePath(); |
||||
|
wmsOldCheckbillDetailFile.setUrl(url); |
||||
|
wmsOldCheckbillDetailFiles.add(wmsOldCheckbillDetailFile); |
||||
|
} |
||||
|
record.setFileList(wmsOldCheckbillDetailFiles); |
||||
|
} |
||||
|
PagerVo<WmsOldCheckbillDetailRackGoodPageListVo> p = PagerUtil.pageToVo(pagging, null); |
||||
|
return p; |
||||
|
} |
||||
|
|
||||
|
public ResultBean<String> saveOrUpdateDto(WmsOldCheckbillDto dto) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
String checkState = baseMapper.checkState(dto.getDeptSid()); |
||||
|
if (!"2".equals(checkState) && StringUtils.isNotBlank(checkState)) { |
||||
|
return rb.setMsg("存在盘点中数据,无法生成新的盘点单"); |
||||
|
} |
||||
|
SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(dto.getDeptSid()).getData(); |
||||
|
String createOrgSid = sysStaffOrgFeign.getOrgSidByPath(deptVo.getOrgSidPath()).getData(); |
||||
|
SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(createOrgSid).getData(); |
||||
|
dto.setCreateOrgSid(createOrgSid); |
||||
|
dto.setCreateOrgName(organizationVo.getName()); |
||||
|
//生成单据编号
|
||||
|
String billNo = ""; |
||||
|
String date = DateUtil.format(DateUtil.date(), "yyyyMM"); |
||||
|
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(createOrgSid).getData(); |
||||
|
billNo = "JJPD" + sysOrganizationVo.getOrgCode() + date; |
||||
|
String i = baseMapper.selectNum(billNo); |
||||
|
if (StringUtils.isNotBlank(i)) { |
||||
|
billNo = Rule.getBillNo(billNo, Integer.valueOf(i).intValue()); |
||||
|
} else { |
||||
|
billNo = Rule.getBillNo(billNo, 0); |
||||
|
} |
||||
|
dto.setBillNo(billNo); |
||||
|
List<WmsInventory> wmsInventories = null; |
||||
|
if ("1".equals(dto.getCheckTypeKey())) { |
||||
|
//查询本部门指定库位下,库存数量大0并且旧件的库存
|
||||
|
wmsInventories = wmsInventoryService.selJJByDeptSidAndRackSid(dto.getDeptSid(), dto.getRackSids()); |
||||
|
} else if ("2".equals(dto.getCheckTypeKey())) { |
||||
|
//查询本部门下,库存数量大0并且是旧件的库存
|
||||
|
wmsInventories = wmsInventoryService.selJJByDeptSid(dto.getDeptSid()); |
||||
|
} |
||||
|
if (wmsInventories.size() == 0) { |
||||
|
return rb.setMsg("该库位下没有商品库存信息"); |
||||
|
} |
||||
|
String sid = this.insertByDto(dto); |
||||
|
for (WmsInventory wmsInventory : wmsInventories) { |
||||
|
WmsOldCheckbillDetailDto wmsOldCheckbillDetailDto = new WmsOldCheckbillDetailDto(); |
||||
|
wmsOldCheckbillDetailDto.setBillSid(sid); |
||||
|
wmsOldCheckbillDetailDto.setGoodsID(wmsInventory.getGoodsID()); |
||||
|
wmsOldCheckbillDetailDto.setGoodsSpuSid(wmsInventory.getGoodsSpuSid()); |
||||
|
wmsOldCheckbillDetailDto.setGoodsSpuName(wmsInventory.getGoodsSpuName()); |
||||
|
wmsOldCheckbillDetailDto.setGoodsSkuSid(wmsInventory.getGoodsSkuSid()); |
||||
|
wmsOldCheckbillDetailDto.setGoodsSkuTitle(wmsInventory.getGoodsSkuTitle()); |
||||
|
wmsOldCheckbillDetailDto.setGoodsSkuCode(wmsInventory.getGoodsSkuCode()); |
||||
|
wmsOldCheckbillDetailDto.setGoodsSkuOwnSpec(wmsInventory.getGoodsSkuOwnSpec()); |
||||
|
wmsOldCheckbillDetailDto.setManufacturerSid(wmsInventory.getManufacturerSid()); |
||||
|
wmsOldCheckbillDetailDto.setManufacturerName(wmsInventory.getManufacturerName()); |
||||
|
wmsOldCheckbillDetailDto.setCost(wmsInventory.getCost()); |
||||
|
wmsOldCheckbillDetailDto.setUnit(wmsInventory.getUnit()); |
||||
|
wmsOldCheckbillDetailDto.setWarehouseSid(wmsInventory.getWarehouseSid()); |
||||
|
wmsOldCheckbillDetailDto.setWarehouseName(wmsInventory.getWarehouseName()); |
||||
|
WmsWarehouseRack wmsWarehouseRack = wmsWarehouseRackService.fetchBySid(wmsInventory.getWarehouseRackSid()); |
||||
|
WmsWarehouseArea wmsWarehouseArea = wmsWarehouseAreaService.fetchBySid(wmsWarehouseRack.getLocationSid()); |
||||
|
wmsOldCheckbillDetailDto.setWarehouseAreaSid(wmsWarehouseArea.getSid()); |
||||
|
wmsOldCheckbillDetailDto.setWarehouseArea(wmsWarehouseArea.getAreaName()); |
||||
|
wmsOldCheckbillDetailDto.setWarehouseRackSid(wmsInventory.getWarehouseRackSid()); |
||||
|
wmsOldCheckbillDetailDto.setWarehouseRackName(wmsWarehouseRack.getRackName()); |
||||
|
wmsOldCheckbillDetailDto.setBookCount(wmsInventory.getCount()); |
||||
|
wmsOldCheckbillDetailService.insertByDto(wmsOldCheckbillDetailDto); |
||||
|
} |
||||
|
return rb.success().setData(sid); |
||||
|
} |
||||
|
|
||||
|
public String insertByDto(WmsOldCheckbillDto dto) { |
||||
|
WmsOldCheckbill entity = new WmsOldCheckbill(); |
||||
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
||||
|
entity.setNodeState("待提交"); |
||||
|
baseMapper.insert(entity); |
||||
|
return entity.getSid(); |
||||
|
} |
||||
|
|
||||
|
public WmsOldCheckbillDetailsVo fetchDetailsVoBySid(String sid) { |
||||
|
WmsOldCheckbill entity = fetchBySid(sid); |
||||
|
WmsOldCheckbillDetailsVo vo = new WmsOldCheckbillDetailsVo(); |
||||
|
BeanUtil.copyProperties(entity, vo); |
||||
|
List<WmsOldCheckbillDetailDetailsVo> wmsOldCheckbillDetailDetailsVos = wmsOldCheckbillDetailService.selByMainSid(sid); |
||||
|
vo.setWmsOldCheckbillDetailList(wmsOldCheckbillDetailDetailsVos); |
||||
|
return vo; |
||||
|
} |
||||
|
|
||||
|
public ResultBean delAll(String[] sids) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
//查询该sid中是否有流程不是待提交的
|
||||
|
int count = baseMapper.selectBySid(StringUtils.join(sids, ",")); |
||||
|
if (count > 0) { |
||||
|
return rb.setMsg("删除的数据中包含已提交或已办结审批的数据,删除失败"); |
||||
|
} |
||||
|
delBySids(sids); |
||||
|
for (String sid : sids) { |
||||
|
wmsOldCheckbillDetailService.delByMainSid(sid); |
||||
|
wmsOldCheckbillReportService.delByMainSid(sid); |
||||
|
wmsAppendixService.delByLinkSid(sid); |
||||
|
} |
||||
|
return rb.success(); |
||||
|
} |
||||
|
|
||||
|
public void createReport(String sid) { |
||||
|
baseMapper.createReport(sid); |
||||
|
WmsOldCheckbillReportDto wmsOldCheckbillReportDto = new WmsOldCheckbillReportDto(); |
||||
|
wmsOldCheckbillReportDto.setBillSid(sid); |
||||
|
wmsOldCheckbillReportService.insertByDto(wmsOldCheckbillReportDto); |
||||
|
} |
||||
|
|
||||
|
public WmsOldCheckbillReportDetailsVo viewReport(String sid) { |
||||
|
WmsOldCheckbillReportDetailsVo wmsOldCheckbillReportDetailsVo = new WmsOldCheckbillReportDetailsVo(); |
||||
|
//表头
|
||||
|
WmsOldCheckbill wmsOldCheckbill = fetchBySid(sid); |
||||
|
wmsOldCheckbillReportDetailsVo.setSid(sid); |
||||
|
wmsOldCheckbillReportDetailsVo.setCreateByName(wmsOldCheckbill.getCreateByName()); |
||||
|
wmsOldCheckbillReportDetailsVo.setCreateName(wmsOldCheckbill.getCreateByName()); |
||||
|
wmsOldCheckbillReportDetailsVo.setDeptName(wmsOldCheckbill.getDeptName()); |
||||
|
wmsOldCheckbillReportDetailsVo.setCreateTime(wmsOldCheckbill.getCreateTime()); |
||||
|
wmsOldCheckbillReportDetailsVo.setFinances(wmsOldCheckbill.getSuperviseName()); |
||||
|
//盘点报告备注
|
||||
|
WmsOldCheckbillReport wmsOldCheckbillReport = wmsOldCheckbillReportService.selByBillSid(sid); |
||||
|
wmsOldCheckbillReportDetailsVo.setRemarks(wmsOldCheckbillReport.getRemarks()); |
||||
|
//盘点报告PDF路径
|
||||
|
wmsOldCheckbillReportDetailsVo.setPdfUrl(wmsOldCheckbillReport.getPdfUrl()); |
||||
|
//总体盘点情况
|
||||
|
List<WmsOldCheckbillReportSumVo> total = wmsOldCheckbillDetailService.reportSum(sid, "total"); |
||||
|
for (WmsOldCheckbillReportSumVo totalSum : total) { |
||||
|
wmsOldCheckbillReportDetailsVo.setYpNum(totalSum.getYpNum()); |
||||
|
wmsOldCheckbillReportDetailsVo.setYpMoney(totalSum.getYpMoney()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPyNum(totalSum.getPyNum()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPyMoney(totalSum.getPyMoney()); |
||||
|
wmsOldCheckbillReportDetailsVo.setSpNum(totalSum.getSpNum()); |
||||
|
wmsOldCheckbillReportDetailsVo.setSpMoney(totalSum.getSpMoney()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPyNum(totalSum.getPyNum()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPyMoney(totalSum.getPyMoney()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPkNum(totalSum.getPkNum()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPkMoney(totalSum.getPkMoney()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPsNum(totalSum.getPsNum()); |
||||
|
wmsOldCheckbillReportDetailsVo.setPsMoney(totalSum.getPsMoney()); |
||||
|
wmsOldCheckbillReportDetailsVo.setVirtualNum(totalSum.getVirtualNum()); |
||||
|
wmsOldCheckbillReportDetailsVo.setUnInStorageNum(totalSum.getUnInStorageNum()); |
||||
|
} |
||||
|
//仓库盘点情况
|
||||
|
List<WmsOldCheckbillReportSumVo> ware = wmsOldCheckbillDetailService.reportSum(sid, "ware"); |
||||
|
wmsOldCheckbillReportDetailsVo.setWarehouseStocktakList(ware); |
||||
|
//库区盘点情况
|
||||
|
List<WmsOldCheckbillReportSumVo> area = wmsOldCheckbillDetailService.reportSum(sid, "area"); |
||||
|
wmsOldCheckbillReportDetailsVo.setArehouseAreaeStocktakList(area); |
||||
|
return wmsOldCheckbillReportDetailsVo; |
||||
|
} |
||||
|
|
||||
|
public String createPdf(String sid) { |
||||
|
WmsOldCheckbillReportDetailsVo wmsOldCheckbillReportDetailsVo = viewReport(sid); |
||||
|
Map<String, Object> map = new HashMap<>(); |
||||
|
//发起人
|
||||
|
map.put("createName", wmsOldCheckbillReportDetailsVo.getCreateByName()); |
||||
|
//发起部门
|
||||
|
map.put("deptName", wmsOldCheckbillReportDetailsVo.getDeptName()); |
||||
|
//发起日期
|
||||
|
map.put("createTime", DateUtil.formatDate(wmsOldCheckbillReportDetailsVo.getCreateTime())); |
||||
|
//盘点人
|
||||
|
map.put("pdrName", wmsOldCheckbillReportDetailsVo.getCreateByName()); |
||||
|
//监盘人
|
||||
|
map.put("jprName", wmsOldCheckbillReportDetailsVo.getFinances()); |
||||
|
//备注
|
||||
|
map.put("remarks", wmsOldCheckbillReportDetailsVo.getRemarks()); |
||||
|
//总体应盘数量
|
||||
|
map.put("ypsl", wmsOldCheckbillReportDetailsVo.getYpNum()); |
||||
|
//总体应盘金额
|
||||
|
map.put("ypje", wmsOldCheckbillReportDetailsVo.getYpMoney()); |
||||
|
//总体实盘数量
|
||||
|
map.put("spsl", wmsOldCheckbillReportDetailsVo.getSpNum()); |
||||
|
//总体实盘金额
|
||||
|
map.put("spje", wmsOldCheckbillReportDetailsVo.getSpMoney()); |
||||
|
//总体盘盈数量
|
||||
|
map.put("pysl", wmsOldCheckbillReportDetailsVo.getPyNum()); |
||||
|
//总体盘盈金额
|
||||
|
map.put("pyje", wmsOldCheckbillReportDetailsVo.getPyMoney()); |
||||
|
//总体盘亏数量
|
||||
|
map.put("pksl", wmsOldCheckbillReportDetailsVo.getPkNum()); |
||||
|
//总体盘亏金额
|
||||
|
map.put("pkje", wmsOldCheckbillReportDetailsVo.getPkMoney()); |
||||
|
//总体盘损数量
|
||||
|
map.put("pssl", wmsOldCheckbillReportDetailsVo.getPsNum()); |
||||
|
//总体盘损金额
|
||||
|
map.put("psje", wmsOldCheckbillReportDetailsVo.getPsMoney()); |
||||
|
//总体虚拟件数量
|
||||
|
map.put("xnsl", wmsOldCheckbillReportDetailsVo.getVirtualNum()); |
||||
|
//总体未入库数量
|
||||
|
map.put("wrksl", wmsOldCheckbillReportDetailsVo.getUnInStorageNum()); |
||||
|
List<WmsOldCheckbillReportSumVo> ware = wmsOldCheckbillReportDetailsVo.getWarehouseStocktakList(); |
||||
|
for (int i = 0; i < ware.size(); i++) { |
||||
|
WmsOldCheckbillReportSumVo wmsOldCheckbillReportSumVo = ware.get(i); |
||||
|
wmsOldCheckbillReportSumVo.setId(i + 1); |
||||
|
} |
||||
|
map.put("ware", ware); |
||||
|
List<WmsOldCheckbillReportSumVo> area = wmsOldCheckbillReportDetailsVo.getArehouseAreaeStocktakList(); |
||||
|
for (int i = 0; i < area.size(); i++) { |
||||
|
WmsOldCheckbillReportSumVo wmsOldCheckbillReportSumVo = area.get(i); |
||||
|
wmsOldCheckbillReportSumVo.setId(i + 1); |
||||
|
} |
||||
|
map.put("area", area); |
||||
|
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("ftl/" + "jjpdbg" + ".ftl"); |
||||
|
//生成word文件名
|
||||
|
String targetPath = docPdfComponent.getUploadTemplateUrl(); |
||||
|
String dateStr = DateUtil.format(new Date(), "yyyyMMdd"); |
||||
|
long seconds = System.currentTimeMillis(); |
||||
|
String typeName = dateStr + seconds + ".doc"; |
||||
|
File file = new File(targetPath + "pdbg" + seconds + ".ftl"); |
||||
|
File dir = new File(targetPath); |
||||
|
WordConvertUtils.inputStreamToFile(inputStream, file); |
||||
|
WordConvertUtils.creatWord1(map, file, targetPath, typeName, dir); |
||||
|
//新生成的word路径
|
||||
|
String wordPath = targetPath + typeName; |
||||
|
//生成出门证文件名
|
||||
|
String pdfName = "旧件盘点报告_" + dateStr + seconds + ".pdf"; |
||||
|
WordConvertUtils.doc2pdf(wordPath, targetPath, pdfName); |
||||
|
wmsOldCheckbillReportService.updatePdf(sid,pdfName); |
||||
|
return "/template/" + pdfName; |
||||
|
} |
||||
|
|
||||
|
public ResultBean submitApply(SubmitOldCheckDto dto) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
WmsOldCheckbill wmsOldCheckbill = fetchBySid(dto.getSid()); |
||||
|
int r = submitBusinessData(dto, wmsOldCheckbill); |
||||
|
if (r == 3) { |
||||
|
return rb.setMsg("该申请不存在"); |
||||
|
} |
||||
|
if (r == 0) { |
||||
|
return rb.setMsg("操作失败!提交的数据不一致"); |
||||
|
} |
||||
|
String businessSid = saveOrUpdateDto(dto).getData(); |
||||
|
wmsOldCheckbill = 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(wmsOldCheckbill.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)); |
||||
|
wmsOldCheckbill = 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()); |
||||
|
WmsOldCheckbill finalWmsOldCheckbill = wmsOldCheckbill; |
||||
|
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(finalWmsOldCheckbill.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
||||
|
messageFlowableQuery.setMsgTitle("盘点报告审批"); |
||||
|
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); |
||||
|
}); |
||||
|
} catch (Exception e) { |
||||
|
e.printStackTrace(); |
||||
|
} |
||||
|
//==================================添加线程
|
||||
|
return voResultBean; |
||||
|
} |
||||
|
if (r == 2) { |
||||
|
// ToDo:驳回到发起人后再次提交
|
||||
|
if (StringUtils.isBlank(dto.getInstanceId())) { |
||||
|
return rb.setMsg("参数错误:instanceId"); |
||||
|
} |
||||
|
bv.setTaskId(wmsOldCheckbill.getTaskId()); |
||||
|
bv.setTaskDefKey(wmsOldCheckbill.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(SubmitOldCheckDto dto, WmsOldCheckbill wmsOldCheckbill) { |
||||
|
int r = 0; |
||||
|
if (StringUtils.isBlank(dto.getSid())) { |
||||
|
r = 1; |
||||
|
} else { |
||||
|
if (wmsOldCheckbill != null) { |
||||
|
String businessTaskId = wmsOldCheckbill.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(); |
||||
|
WmsOldCheckbill wmsOldCheckbill = 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(wmsOldCheckbill.getDeptSid()).getData(); |
||||
|
if (sysOrganization != null) { |
||||
|
bv.setOrgSidPath(sysOrganization.getOrgSidPath()); |
||||
|
} |
||||
|
bv.setModelId(wmsOldCheckbill.getProcDefId()); |
||||
|
if (bv.getTaskId().equals(wmsOldCheckbill.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 { |
||||
|
//极光推送
|
||||
|
wmsOldCheckbill = fetchBySid(businessSid); |
||||
|
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
||||
|
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
||||
|
BeanUtil.copyProperties(ufVo, messageFlowVo); |
||||
|
messageFlowVo.setProcDefId(wmsOldCheckbill.getProcDefId()); |
||||
|
messageFlowVo.setProcInsId(wmsOldCheckbill.getProcInstId()); |
||||
|
messageFlowableQuery.setUfVo(messageFlowVo); |
||||
|
messageFlowableQuery.setAppMap(appMap); |
||||
|
messageFlowableQuery.setBusinessSid(businessSid); |
||||
|
messageFlowableQuery.setModuleName("盘点报告审批"); |
||||
|
messageFlowableQuery.setMsgContent(wmsOldCheckbill.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
||||
|
messageFlowableQuery.setMsgTitle("盘点报告审批"); |
||||
|
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); |
||||
|
} |
||||
|
return rb.success().setData(resultBean.getData()); |
||||
|
} else { |
||||
|
return rb.setMsg("操作失败!提交的数据不一致"); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public ResultBean<List<OldCheckNodeVo>> getPreviousNodesForReject(OldCheckNodeQuery query) { |
||||
|
ResultBean<List<OldCheckNodeVo>> rb = ResultBean.fireFail(); |
||||
|
BusinessVariables bv = new BusinessVariables(); |
||||
|
BeanUtil.copyProperties(query, bv); |
||||
|
WmsOldCheckbill wmsOldCheckbill = fetchBySid(query.getBusinessSid()); |
||||
|
bv.setModelId(wmsOldCheckbill.getProcDefId()); |
||||
|
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); |
||||
|
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo
|
||||
|
List<OldCheckNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), OldCheckNodeVo.class)).collect(Collectors.toList()); |
||||
|
return rb.success().setData(voList); |
||||
|
} |
||||
|
|
||||
|
public ResultBean<List<OldCheckNodeVo>> getNextNodesForSubmit(OldCheckNodeQuery query) { |
||||
|
ResultBean<List<OldCheckNodeVo>> rb = ResultBean.fireFail(); |
||||
|
BusinessVariables bv = new BusinessVariables(); |
||||
|
BeanUtil.copyProperties(query, bv); |
||||
|
WmsOldCheckbill wmsOldCheckbill = fetchBySid(query.getBusinessSid()); |
||||
|
bv.setModelId(wmsOldCheckbill.getProcDefId()); |
||||
|
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); |
||||
|
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo
|
||||
|
List<OldCheckNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), OldCheckNodeVo.class)).collect(Collectors.toList()); |
||||
|
return rb.success().setData(voList); |
||||
|
} |
||||
|
|
||||
|
public ResultBean taskReject(OldCheckTaskQuery query) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
String businessSid = query.getBusinessSid(); |
||||
|
WmsOldCheckbill wmsOldCheckbill = fetchBySid(businessSid); |
||||
|
if (wmsOldCheckbill == null) { |
||||
|
return rb.setMsg("该申请不存在"); |
||||
|
} |
||||
|
String businessTaskId = wmsOldCheckbill.getTaskId(); |
||||
|
if (StringUtils.isNotBlank(businessTaskId)) { |
||||
|
if (businessTaskId.equals(query.getTaskId())) { |
||||
|
if (StringUtils.isBlank(query.getComment())) { |
||||
|
return rb.setMsg("请填写意见"); |
||||
|
} |
||||
|
if (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); |
||||
|
//极光推送
|
||||
|
wmsOldCheckbill = fetchBySid(businessSid); |
||||
|
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
||||
|
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
||||
|
BeanUtil.copyProperties(ufVo, messageFlowVo); |
||||
|
String procId = wmsOldCheckbill.getProcInstId(); |
||||
|
messageFlowVo.setProcInsId(procId); |
||||
|
messageFlowVo.setProcDefId(wmsOldCheckbill.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(wmsOldCheckbill.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
||||
|
} |
||||
|
|
||||
|
messageFlowableQuery.setMsgTitle("盘点报告审批"); |
||||
|
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery); |
||||
|
return rb.success(); |
||||
|
} |
||||
|
} |
||||
|
return rb.setMsg("操作失败!提交的数据不一致!"); |
||||
|
} |
||||
|
|
||||
|
public ResultBean revokeProcess(OldCheckTaskQuery query) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
if (StringUtils.isBlank(query.getUserSid())) { |
||||
|
return rb.setMsg("参数错误:userSid"); |
||||
|
} |
||||
|
WmsOldCheckbill wmsOldCheckbill = fetchBySid(query.getBusinessSid()); |
||||
|
String businessTaskId = wmsOldCheckbill.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(OldCheckTaskQuery query) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
if (StringUtils.isBlank(query.getInstanceId())) { |
||||
|
return rb.setMsg("参数错误:instanceId"); |
||||
|
} |
||||
|
if (StringUtils.isBlank(query.getUserSid())) { |
||||
|
return rb.setMsg("参数错误:userSid"); |
||||
|
} |
||||
|
if (StringUtils.isBlank(query.getComment())) { |
||||
|
return rb.setMsg("请填写意见"); |
||||
|
} |
||||
|
WmsOldCheckbill wmsOldCheckbill = fetchBySid(query.getBusinessSid()); |
||||
|
String businessTaskId = wmsOldCheckbill.getTaskId(); |
||||
|
if (StringUtils.isNotBlank(businessTaskId)) { |
||||
|
if (query.getUserSid().equals(wmsOldCheckbill.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(OldCheckDelegateQuery query) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
FlowDelegateQuery delegateQuery = new FlowDelegateQuery(); |
||||
|
BeanUtil.copyProperties(query, delegateQuery); |
||||
|
flowFeign.delegate(delegateQuery); |
||||
|
return rb.success(); |
||||
|
} |
||||
|
|
||||
|
public PagerVo<WmsOldCheckbillPageVo> appDetailRackPageList(PagerQuery<WmsOldCheckbillPageQuery> pq) { |
||||
|
WmsOldCheckbillPageQuery query = pq.getParams(); |
||||
|
QueryWrapper<WmsOldCheckbill> qw = new QueryWrapper<>(); |
||||
|
//========================================数据授权开始
|
||||
|
if (StringUtils.isNotBlank(query.getMenuSid())) { |
||||
|
PrivilegeQuery privilegeQuery = new PrivilegeQuery(); |
||||
|
privilegeQuery.setOrgPath(query.getOrgPath()); |
||||
|
privilegeQuery.setMenuSid(query.getMenuSid()); |
||||
|
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("c.createBySid", query.getUserSid()); |
||||
|
} else { |
||||
|
PagerVo<WmsOldCheckbillPageVo> p = new PagerVo<>(); |
||||
|
return p; |
||||
|
} |
||||
|
} else { |
||||
|
PagerVo<WmsOldCheckbillPageVo> p = new PagerVo<>(); |
||||
|
return p; |
||||
|
} |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(query.getName())) { |
||||
|
qw.and(wrapper -> wrapper.like("d.warehouseName", query.getName()).or().like("d.warehouseArea", query.getName()).or().like("d.warehouseRackName", query.getName())); |
||||
|
} |
||||
|
qw.eq("c.checkState", '1'); |
||||
|
qw.groupBy("d.warehouseRackSid"); |
||||
|
IPage<WmsOldCheckbill> page = PagerUtil.queryToPage(pq); |
||||
|
IPage<WmsOldCheckbillPageVo> pagging = baseMapper.appDetailRackPageList(page, qw); |
||||
|
PagerVo<WmsOldCheckbillPageVo> p = PagerUtil.pageToVo(pagging, null); |
||||
|
return p; |
||||
|
} |
||||
|
|
||||
|
public ResultBean saveInventoryInfo(WmsOldCheckbillGoodsDto dto) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
wmsOldCheckbillDetailService.saveInventoryInfo(dto); |
||||
|
return rb.success(); |
||||
|
} |
||||
|
|
||||
|
public ResultBean<HandleBean> scan(String sid, String content, String houseSid) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
if (content.contains("#")) { |
||||
|
return rb.setMsg("请扫描商品码"); |
||||
|
} |
||||
|
HandleBean handleBean = wmsOldCheckbillDetailService.scan(sid, content, houseSid); |
||||
|
if (handleBean == null) { |
||||
|
List<WmsInventory> wmsInventories = wmsInventoryService.getListByGoodsID(content).getData(); |
||||
|
if (!wmsInventories.isEmpty()) { |
||||
|
for (WmsInventory wmsInventory : wmsInventories) { |
||||
|
WmsWarehouseRack wmsWarehouseRack = wmsWarehouseRackService.fetchBySid(wmsInventory.getWarehouseRackSid()); |
||||
|
WmsWarehouseArea wmsWarehouseArea = wmsWarehouseAreaService.fetchBySid(wmsWarehouseRack.getLocationSid()); |
||||
|
return rb.setMsg("本商品不属于本库位,属于" + wmsWarehouseArea.getAreaName() + "库区" + wmsWarehouseRack.getRackName() + "库位。"); |
||||
|
} |
||||
|
} else { |
||||
|
String billNo = wmsInventoryRecordService.selByGoodsID(content); |
||||
|
if (StringUtils.isBlank(billNo)) { |
||||
|
return rb.setMsg("商品码不正确"); |
||||
|
} else { |
||||
|
return rb.setMsg("本商品已在" + billNo + "单据编号中出库。"); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
return rb.success().setData(handleBean); |
||||
|
} |
||||
|
|
||||
|
public ResultBean saveInventoryInfo2(WmsOldCheckbillGoodsPyDto dto) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
wmsOldCheckbillDetailService.saveInventoryInfo2(dto); |
||||
|
return rb.success(); |
||||
|
} |
||||
|
|
||||
|
public void saveReport(String billSid, String remarks) { |
||||
|
wmsOldCheckbillReportService.saveReport(billSid, remarks); |
||||
|
} |
||||
|
|
||||
|
public List<InventoryBillVo> selPyByDeptSid(String deptSid) { |
||||
|
return baseMapper.selPyByDeptSid(deptSid); |
||||
|
} |
||||
|
|
||||
|
public List<InventoryBillVo> selPkByDeptSid(String deptSid) { |
||||
|
return baseMapper.selPkByDeptSid(deptSid); |
||||
|
} |
||||
|
} |
@ -0,0 +1,92 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill; |
||||
|
|
||||
|
|
||||
|
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.math.BigDecimal; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillVo implements Vo { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@ApiModelProperty("是否生成盘库报告") |
||||
|
private String state; |
||||
|
@ApiModelProperty("备注") |
||||
|
private String remarks; |
||||
|
@ApiModelProperty("流程状态") |
||||
|
private String nodeState; |
||||
|
@ApiModelProperty("申请部门名称") |
||||
|
private String deptName; |
||||
|
@ApiModelProperty("单据编号") |
||||
|
private String billNo; |
||||
|
@ApiModelProperty("生成日期") |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
||||
|
private Date createTime; |
||||
|
@ApiModelProperty("盘点人") |
||||
|
private String createByName; |
||||
|
@ApiModelProperty("监盘人姓名") |
||||
|
private String superviseName; |
||||
|
@ApiModelProperty("盘点状态(盘点中1,盘点完成2)") |
||||
|
private String checkState; |
||||
|
|
||||
|
@ApiModelProperty("应盘数量") |
||||
|
private BigDecimal bookCount; |
||||
|
@ApiModelProperty("应盘金额") |
||||
|
private BigDecimal bookAmount; |
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal realCount; |
||||
|
@ApiModelProperty("实盘金额") |
||||
|
private BigDecimal realAmount; |
||||
|
@ApiModelProperty("未盘数量") |
||||
|
private BigDecimal notCount; |
||||
|
@ApiModelProperty("未盘金额") |
||||
|
private BigDecimal notAmount; |
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private BigDecimal profitCount; |
||||
|
@ApiModelProperty("盘盈金额") |
||||
|
private BigDecimal profitAmount; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private BigDecimal loseCount; |
||||
|
@ApiModelProperty("盘亏金额") |
||||
|
private BigDecimal loseAmount; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal lossCount; |
||||
|
@ApiModelProperty("盘损金额") |
||||
|
private BigDecimal lossAmount; |
||||
|
|
||||
|
@ApiModelProperty("流程定义的id") |
||||
|
private String procDefId; // 流程定义的id
|
||||
|
@ApiModelProperty("流程实例的sid") |
||||
|
private String procInstId; // 流程实例的sid
|
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable; |
||||
|
|
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
|
||||
|
/** |
||||
|
* @description: |
||||
|
* @author: dimengzhe |
||||
|
* @date: 2024/5/11 |
||||
|
**/ |
||||
|
@Data |
||||
|
public class CompleteOldCheckDto { |
||||
|
|
||||
|
@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; |
||||
|
} |
@ -0,0 +1,23 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable; |
||||
|
|
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* @description: |
||||
|
* @author: dimengzhe |
||||
|
* @date: 2024/5/11 |
||||
|
**/ |
||||
|
@Data |
||||
|
public class OldCheckDelegateQuery { |
||||
|
|
||||
|
private String userSid; |
||||
|
@ApiModelProperty("流程实例id") |
||||
|
private String instanceId; |
||||
|
@ApiModelProperty("任务Id") |
||||
|
private String taskId; |
||||
|
@ApiModelProperty("审批人sid") |
||||
|
private String assignee; |
||||
|
@ApiModelProperty("填写意见") |
||||
|
private String views; |
||||
|
} |
@ -0,0 +1,18 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable; |
||||
|
|
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* @description: |
||||
|
* @author: dimengzhe |
||||
|
* @date: 2024/5/11 |
||||
|
**/ |
||||
|
@Data |
||||
|
public class OldCheckNodeQuery { |
||||
|
|
||||
|
@ApiModelProperty(value = "环节定义id") |
||||
|
private String taskDefKey; |
||||
|
@ApiModelProperty(value = "业务sid") |
||||
|
private String businessSid; |
||||
|
} |
@ -0,0 +1,24 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable; |
||||
|
|
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @description: |
||||
|
* @author: dimengzhe |
||||
|
* @date: 2024/5/11 |
||||
|
**/ |
||||
|
@Data |
||||
|
public class OldCheckNodeVo { |
||||
|
|
||||
|
@ApiModelProperty(value = "节点名称") |
||||
|
private String name; |
||||
|
@ApiModelProperty(value = "节点id") |
||||
|
private String id; |
||||
|
@ApiModelProperty(value = "审批组") |
||||
|
private List<String> candidateGroups; |
||||
|
@ApiModelProperty(value = "是否是最后环节") |
||||
|
private String endTask; |
||||
|
} |
@ -0,0 +1,43 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable; |
||||
|
|
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
|
||||
|
/** |
||||
|
* @description: |
||||
|
* @author: dimengzhe |
||||
|
* @date: 2024/5/11 |
||||
|
**/ |
||||
|
@Data |
||||
|
public class OldCheckTaskQuery { |
||||
|
|
||||
|
/** |
||||
|
* 终止、驳回、撤回 |
||||
|
*/ |
||||
|
@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; |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbill.flowable; |
||||
|
|
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbill.WmsOldCheckbillDto; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* @description: |
||||
|
* @author: dimengzhe |
||||
|
* @date: 2024/5/11 |
||||
|
**/ |
||||
|
@Data |
||||
|
public class SubmitOldCheckDto extends WmsOldCheckbillDto { |
||||
|
|
||||
|
@ApiModelProperty("流程实例id") |
||||
|
private String instanceId; |
||||
|
@ApiModelProperty("任务id") |
||||
|
private String taskId; |
||||
|
} |
@ -0,0 +1,109 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
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; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetail.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetail <br/> |
||||
|
* Description: 库存盘点-明细. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
@TableName("wms_old_checkbill_detail") |
||||
|
public class WmsOldCheckbillDetail extends BaseEntity { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
@ApiModelProperty("盘点单sid") |
||||
|
private String billSid; // 盘点单sid
|
||||
|
@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 BigDecimal cost; // 成本单价
|
||||
|
@ApiModelProperty("单位") |
||||
|
private String unit; // 单位
|
||||
|
@ApiModelProperty("仓库sid") |
||||
|
private String warehouseSid; // 仓库sid
|
||||
|
@ApiModelProperty("仓库名称") |
||||
|
private String warehouseName; // 仓库名称
|
||||
|
@ApiModelProperty("库区sid") |
||||
|
private String warehouseAreaSid; // 库区sid
|
||||
|
@ApiModelProperty("库区名称") |
||||
|
private String warehouseArea; // 库区名称
|
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String warehouseRackSid; // 库位sid
|
||||
|
@ApiModelProperty("库位名称") |
||||
|
private String warehouseRackName; // 库位名称
|
||||
|
@ApiModelProperty("库存数量") |
||||
|
private BigDecimal bookCount; // 库存数量
|
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal realCount; // 实盘数量
|
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private BigDecimal profitCount; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private BigDecimal loseCount; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal lossCount; // 盘损数量
|
||||
|
@ApiModelProperty("虚拟件数量") |
||||
|
private BigDecimal vrCount; |
||||
|
@ApiModelProperty("未入库数量") |
||||
|
private BigDecimal notInCount; |
||||
|
@ApiModelProperty("供应商sid") |
||||
|
private String supplierSid; |
||||
|
@ApiModelProperty("供应商名称") |
||||
|
private String supplierName; |
||||
|
|
||||
|
} |
@ -0,0 +1,108 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
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: WmsInventoryCheckbillDetailVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailVo <br/> |
||||
|
* Description: 库存盘点-明细 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailDetailsVo implements Vo { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@ApiModelProperty("盘点单sid") |
||||
|
private String billSid; // 盘点单sid
|
||||
|
@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 BigDecimal cost; // 成本单价
|
||||
|
@ApiModelProperty("单位") |
||||
|
private String unit; // 单位
|
||||
|
@ApiModelProperty("仓库sid") |
||||
|
private String warehouseSid; // 仓库sid
|
||||
|
@ApiModelProperty("仓库名称") |
||||
|
private String warehouseName; // 仓库名称
|
||||
|
@ApiModelProperty("库区sid") |
||||
|
private String warehouseAreaSid; // 库区sid
|
||||
|
@ApiModelProperty("库区名称") |
||||
|
private String warehouseArea; // 库区名称
|
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String warehouseRackSid; // 库位sid
|
||||
|
@ApiModelProperty("库位名称") |
||||
|
private String warehouseRackName; // 库位名称
|
||||
|
@ApiModelProperty("库存数量") |
||||
|
private BigDecimal bookCount; // 库存数量
|
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal realCount; // 实盘数量
|
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private BigDecimal profitCount; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private BigDecimal loseCount; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal lossCount; // 盘损数量
|
||||
|
@ApiModelProperty("虚拟件数量") |
||||
|
private BigDecimal vrCount; |
||||
|
@ApiModelProperty("未入库数量") |
||||
|
private BigDecimal notInCount; |
||||
|
@ApiModelProperty("供应商sid") |
||||
|
private String supplierSid; |
||||
|
@ApiModelProperty("供应商名称") |
||||
|
private String supplierName; |
||||
|
} |
@ -0,0 +1,108 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.dto.Dto; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetailDto.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailDto <br/> |
||||
|
* Description: 库存盘点-明细 数据传输对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailDto implements Dto { |
||||
|
|
||||
|
private String sid; |
||||
|
|
||||
|
@ApiModelProperty("盘点单sid") |
||||
|
private String billSid; // 盘点单sid
|
||||
|
@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 BigDecimal cost; // 成本单价
|
||||
|
@ApiModelProperty("单位") |
||||
|
private String unit; // 单位
|
||||
|
@ApiModelProperty("仓库sid") |
||||
|
private String warehouseSid; // 仓库sid
|
||||
|
@ApiModelProperty("仓库名称") |
||||
|
private String warehouseName; // 仓库名称
|
||||
|
@ApiModelProperty("库区sid") |
||||
|
private String warehouseAreaSid; // 库区sid
|
||||
|
@ApiModelProperty("库区名称") |
||||
|
private String warehouseArea; // 库区名称
|
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String warehouseRackSid; // 库位sid
|
||||
|
@ApiModelProperty("库位名称") |
||||
|
private String warehouseRackName; // 库位名称
|
||||
|
@ApiModelProperty("库存数量") |
||||
|
private BigDecimal bookCount; // 库存数量
|
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal realCount; // 实盘数量
|
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private BigDecimal profitCount; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private BigDecimal loseCount; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal lossCount; // 盘损数量
|
||||
|
@ApiModelProperty("虚拟件数量") |
||||
|
private BigDecimal vrCount; |
||||
|
@ApiModelProperty("未入库数量") |
||||
|
private BigDecimal notInCount; |
||||
|
@ApiModelProperty("供应商sid") |
||||
|
private String supplierSid; |
||||
|
@ApiModelProperty("供应商名称") |
||||
|
private String supplierName; |
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailFile implements Vo { |
||||
|
|
||||
|
private String url; |
||||
|
} |
@ -0,0 +1,64 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.query.Query; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetailVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailVo <br/> |
||||
|
* Description: 库存盘点-明细 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailGoodPageListQuery implements Query { |
||||
|
|
||||
|
@ApiModelProperty("盘点sid") |
||||
|
private String billSid; |
||||
|
@ApiModelProperty("仓库sid") |
||||
|
private String warehouseSid; // 仓库sid
|
||||
|
@ApiModelProperty("库区sid") |
||||
|
private String warehouseAreaSid; // 库区sid
|
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String warehouseRackSid; // 库位sid
|
||||
|
@ApiModelProperty("商品ID") |
||||
|
private String goodsID; // 商品ID
|
||||
|
@ApiModelProperty("商品名称") |
||||
|
private String goodsSkuTitle; // 商品名称
|
||||
|
@ApiModelProperty("图号") |
||||
|
private String goodsSkuCode; // 图号
|
||||
|
} |
@ -0,0 +1,94 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetailVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailVo <br/> |
||||
|
* Description: 库存盘点-明细 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailGoodPageListVo implements Vo { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@ApiModelProperty("商品ID") |
||||
|
private String goodsID; // 商品ID
|
||||
|
@ApiModelProperty("商品名称") |
||||
|
private String goodsSkuTitle; // 商品名称
|
||||
|
@ApiModelProperty("图号") |
||||
|
private String goodsSkuCode; // 图号
|
||||
|
@ApiModelProperty("仓库名称") |
||||
|
private String warehouseName; |
||||
|
@ApiModelProperty("库区名称") |
||||
|
private String warehouseArea; |
||||
|
@ApiModelProperty("库位名称") |
||||
|
private String warehouseRackName; |
||||
|
@ApiModelProperty("单位") |
||||
|
private String unit; |
||||
|
@ApiModelProperty("成本单价") |
||||
|
private BigDecimal cost; |
||||
|
@ApiModelProperty("应盘数量") |
||||
|
private BigDecimal bookCount; |
||||
|
@ApiModelProperty("应盘金额") |
||||
|
private BigDecimal bookAmount; |
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal realCount; |
||||
|
@ApiModelProperty("实盘金额") |
||||
|
private BigDecimal realAmount; |
||||
|
@ApiModelProperty("状态") |
||||
|
private String state; |
||||
|
@ApiModelProperty("盈亏数量") |
||||
|
private BigDecimal profitAndLoseCount; |
||||
|
@ApiModelProperty("盈亏金额") |
||||
|
private BigDecimal profitAndLoseAmount; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal lossCount; |
||||
|
@ApiModelProperty("盘损金额") |
||||
|
private BigDecimal lossAmount; |
||||
|
@ApiModelProperty("备注") |
||||
|
private String remarks; |
||||
|
@ApiModelProperty("附件") |
||||
|
private List<WmsOldCheckbillDetailFile> fileList = new ArrayList<>(); |
||||
|
} |
@ -0,0 +1,66 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventoryprofitindetail.WmsInventoryProfitinDetailDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventoryprofitoutdetail.WmsInventoryProfitoutDetailDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.HandleBean; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillGoodsDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbillreport.WmsOldCheckbillReportSumVo; |
||||
|
import org.apache.ibatis.annotations.Delete; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
import java.util.List; |
||||
|
|
||||
|
@Mapper |
||||
|
public interface WmsOldCheckbillDetailMapper extends BaseMapper<WmsOldCheckbillDetail> { |
||||
|
|
||||
|
@Delete("delete from wms_old_checkbill_detail where billSid = #{dtoSid}") |
||||
|
void delByMainSid(String dtoSid); |
||||
|
|
||||
|
List<WmsOldCheckbillDetailDetailsVo> selByMainSid(String billSid); |
||||
|
|
||||
|
WmsOldCheckbillReportSumVo reportSumTotal(String billSid); |
||||
|
|
||||
|
List<WmsOldCheckbillReportSumVo> reportSumWare(String billSid); |
||||
|
|
||||
|
List<WmsOldCheckbillReportSumVo> reportSumArea(String billSid); |
||||
|
|
||||
|
void saveInventoryInfoZC(@Param("dto") WmsOldCheckbillGoodsDto dto, @Param("num") String num); |
||||
|
|
||||
|
void saveInventoryInfoPY(@Param("dto") WmsOldCheckbillGoodsDto dto, @Param("pyCount") BigDecimal pyCount); |
||||
|
|
||||
|
void saveInventoryInfoPK(@Param("dto") WmsOldCheckbillGoodsDto dto, @Param("pkCount") BigDecimal pkCount); |
||||
|
|
||||
|
HandleBean scan(@Param("sid") String sid, @Param("content") String content, @Param("houseSid") String houseSid); |
||||
|
|
||||
|
List<WmsInventoryProfitinDetailDto> sourceBillBySid(String sid); |
||||
|
|
||||
|
List<WmsInventoryProfitoutDetailDto> sourceBillPkBySid(String sid); |
||||
|
} |
@ -0,0 +1,172 @@ |
|||||
|
<?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.wmsoldcheckbilldetail.WmsOldCheckbillDetailMapper"> |
||||
|
<!-- <where> ${ew.sqlSegment} </where>--> |
||||
|
<!-- ${ew.customSqlSegment} --> |
||||
|
<select id="selByMainSid" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.WmsOldCheckbillDetailDetailsVo"> |
||||
|
SELECT |
||||
|
wicd.*, |
||||
|
wicd.goodsModel as carModel, |
||||
|
wicd.goodsSid as goodsSpuSid, |
||||
|
wicd.goodsName as goodsSpuName, |
||||
|
wicd.goodsCode as goodsSkuCode |
||||
|
FROM |
||||
|
wms_old_checkbill_detail wicd |
||||
|
LEFT JOIN wms_inventory wi |
||||
|
ON wicd.inventorySid = wi.`sid` |
||||
|
WHERE billSid = #{billSid} |
||||
|
</select> |
||||
|
|
||||
|
<select id="reportSumTotal" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbillreport.WmsOldCheckbillReportSumVo"> |
||||
|
SELECT |
||||
|
SUM(wicd.bookCount) AS ypNum, |
||||
|
SUM(wicd.bookCount * cost) AS ypMoney, |
||||
|
SUM(wicd.realCount) AS spNum, |
||||
|
SUM(wicd.realCount * cost) AS spMoney, |
||||
|
SUM(wicd.profitCount) AS pyNum, |
||||
|
SUM(wicd.profitCount * cost) AS pyMoney, |
||||
|
SUM(wicd.loseCount) AS pkNum, |
||||
|
SUM(wicd.loseCount * cost) AS pkMoney, |
||||
|
SUM(lossCount) AS psNum, |
||||
|
SUM(lossCount * cost) AS psMoney, |
||||
|
SUM(vrCount) AS virtualNum, |
||||
|
SUM(notInCount) AS unInStorageNum |
||||
|
FROM |
||||
|
wms_old_checkbill_detail AS wicd |
||||
|
WHERE wicd.billSid = #{billSid} |
||||
|
GROUP BY wicd.billSid |
||||
|
</select> |
||||
|
|
||||
|
<select id="reportSumWare" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbillreport.WmsOldCheckbillReportSumVo"> |
||||
|
SELECT |
||||
|
wicd.warehouseName, |
||||
|
SUM(wicd.bookCount) AS ypNum, |
||||
|
SUM(wicd.bookCount * cost) AS ypMoney, |
||||
|
SUM(wicd.realCount) AS spNum, |
||||
|
SUM(wicd.realCount * cost) AS spMoney, |
||||
|
SUM(wicd.profitCount) AS pyNum, |
||||
|
SUM(wicd.profitCount * cost) AS pyMoney, |
||||
|
SUM(wicd.loseCount) AS pkNum, |
||||
|
SUM(wicd.loseCount * cost) AS pkMoney, |
||||
|
SUM(lossCount) AS psNum, |
||||
|
SUM(lossCount * cost) AS psMoney, |
||||
|
SUM(vrCount) AS virtualNum, |
||||
|
SUM(vrCount * cost) AS virtualMoney, |
||||
|
SUM(notInCount) AS unInStorageNum, |
||||
|
SUM(notInCount * cost) AS unInStorageMoney |
||||
|
FROM |
||||
|
wms_old_checkbill_detail AS wicd |
||||
|
WHERE wicd.billSid = #{billSid} |
||||
|
GROUP BY wicd.warehouseSid |
||||
|
</select> |
||||
|
|
||||
|
<select id="reportSumArea" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsoldcheckbillreport.WmsOldCheckbillReportSumVo"> |
||||
|
SELECT |
||||
|
CONCAT( |
||||
|
wicd.warehouseName, |
||||
|
'-', |
||||
|
wicd.warehouseArea |
||||
|
) AS warehouseAreaeName, |
||||
|
SUM(wicd.bookCount) AS ypNum, |
||||
|
SUM(wicd.bookCount * cost) AS ypMoney, |
||||
|
SUM(wicd.realCount) AS spNum, |
||||
|
SUM(wicd.realCount * cost) AS spMoney, |
||||
|
SUM(wicd.profitCount) AS pyNum, |
||||
|
SUM(wicd.profitCount * cost) AS pyMoney, |
||||
|
SUM(wicd.loseCount) AS pkNum, |
||||
|
SUM(wicd.loseCount * cost) AS pkMoney, |
||||
|
SUM(lossCount) AS psNum, |
||||
|
SUM(lossCount * cost) AS psMoney, |
||||
|
SUM(vrCount) AS virtualNum, |
||||
|
SUM(vrCount * cost) AS virtualMoney, |
||||
|
SUM(notInCount) AS unInStorageNum, |
||||
|
SUM(notInCount * cost) AS unInStorageMoney |
||||
|
FROM |
||||
|
wms_old_checkbill_detail AS wicd |
||||
|
WHERE wicd.billSid = #{billSid} |
||||
|
GROUP BY wicd.warehouseAreaSid |
||||
|
</select> |
||||
|
|
||||
|
<update id="saveInventoryInfoZC"> |
||||
|
update wms_old_checkbill_detail set lossCount = #{dto.badNum},realCount = #{dto.num},profitCount = 0,loseCount = 0,remarks = #{dto.remarks},state = 2 where sid = #{dto.sid} |
||||
|
</update> |
||||
|
|
||||
|
<update id="saveInventoryInfoPY"> |
||||
|
update wms_old_checkbill_detail set lossCount = #{dto.badNum},realCount = #{dto.num},profitCount = #{pyCount},loseCount = 0,remarks = #{dto.remarks},state = 3 where sid = #{dto.sid} |
||||
|
</update> |
||||
|
|
||||
|
<update id="saveInventoryInfoPK"> |
||||
|
update wms_old_checkbill_detail set lossCount = #{dto.badNum},realCount = #{dto.num},profitCount = 0,loseCount = #{pkCount},remarks = #{dto.remarks},state = 4 where sid = #{dto.sid} |
||||
|
</update> |
||||
|
|
||||
|
<select id="scan" resultType="com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.HandleBean"> |
||||
|
SELECT |
||||
|
lossCount AS badNum, |
||||
|
goodsID, |
||||
|
goodsSkuTitle AS goodsName, |
||||
|
goodsSkuCode, |
||||
|
bookCount AS lockNum, |
||||
|
realCount AS num, |
||||
|
remarks, |
||||
|
sid, |
||||
|
unit |
||||
|
FROM |
||||
|
wms_old_checkbill_detail |
||||
|
WHERE billSid = #{sid} |
||||
|
AND goodsID = #{content} |
||||
|
AND warehouseRackSid = #{houseSid} |
||||
|
</select> |
||||
|
|
||||
|
<select id="sourceBillBySid" resultType="com.yxt.wms.biz.inventory.wmsinventoryprofitindetail.WmsInventoryProfitinDetailDto"> |
||||
|
SELECT |
||||
|
goodsSpuSid AS goodsSid, |
||||
|
goodsSpuName, |
||||
|
goodsSkuSid, |
||||
|
goodsSkuTitle AS goodsName, |
||||
|
goodsSkuCode AS goodsCode, |
||||
|
goodsSkuOwnSpec AS goodsSpec, |
||||
|
manufacturerSid, |
||||
|
manufacturerName, |
||||
|
unit, |
||||
|
profitCount AS pyNum, |
||||
|
supplierSid, |
||||
|
supplierName, |
||||
|
profitCount AS inStorageNum |
||||
|
FROM |
||||
|
wms_old_checkbill_detail |
||||
|
WHERE billSid = #{sid} |
||||
|
AND profitCount > 0 |
||||
|
</select> |
||||
|
|
||||
|
<select id="sourceBillPkBySid" |
||||
|
resultType="com.yxt.wms.biz.inventory.wmsinventoryprofitoutdetail.WmsInventoryProfitoutDetailDto"> |
||||
|
SELECT |
||||
|
d.goodsID, |
||||
|
d.goodsSpuSid AS goodsSid, |
||||
|
d.goodsSpuName, |
||||
|
d.goodsSkuSid, |
||||
|
d.goodsSkuTitle AS goodsName, |
||||
|
d.goodsSkuCode AS goodsCode, |
||||
|
d.goodsSkuOwnSpec AS goodsSpec, |
||||
|
d.manufacturerSid, |
||||
|
d.manufacturerName, |
||||
|
d.unit, |
||||
|
d.loseCount AS pKNum, |
||||
|
d.warehouseSid, |
||||
|
d.warehouseName, |
||||
|
d.warehouseRackSid, |
||||
|
d.warehouseRackName, |
||||
|
d.loseCount AS outStorageNum, |
||||
|
w.cost AS inStoragePrice |
||||
|
FROM |
||||
|
wms_old_checkbill_detail d |
||||
|
LEFT JOIN wms_inventory w |
||||
|
ON d.goodsID = w.goodsID |
||||
|
WHERE billSid = #{sid} |
||||
|
AND loseCount > 0 |
||||
|
</select> |
||||
|
</mapper> |
@ -0,0 +1,65 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.query.Query; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetailVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailVo <br/> |
||||
|
* Description: 库存盘点-明细 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailRackGoodPageListQuery implements Query { |
||||
|
|
||||
|
@ApiModelProperty("盘点sid") |
||||
|
private String billSid; |
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String warehouseRackSid; // 库位sid
|
||||
|
@ApiModelProperty("商品ID") |
||||
|
private String goodsID; // 商品ID
|
||||
|
@ApiModelProperty("商品名称") |
||||
|
private String goodsSkuTitle; // 商品名称
|
||||
|
@ApiModelProperty("图号") |
||||
|
private String goodsSkuCode; // 图号
|
||||
|
|
||||
|
/* |
||||
|
* 移动端查询条件 |
||||
|
* */ |
||||
|
private String name; |
||||
|
} |
@ -0,0 +1,94 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetailVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailVo <br/> |
||||
|
* Description: 库存盘点-明细 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailRackGoodPageListVo implements Vo { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@ApiModelProperty("商品ID") |
||||
|
private String goodsID; // 商品ID
|
||||
|
@ApiModelProperty("商品名称") |
||||
|
private String goodsSkuTitle; // 商品名称
|
||||
|
@ApiModelProperty("图号") |
||||
|
private String goodsSkuCode; // 图号
|
||||
|
@ApiModelProperty("仓库名称") |
||||
|
private String warehouseName; |
||||
|
@ApiModelProperty("库区名称") |
||||
|
private String warehouseArea; |
||||
|
@ApiModelProperty("库位名称") |
||||
|
private String warehouseRackName; |
||||
|
@ApiModelProperty("单位") |
||||
|
private String unit; |
||||
|
@ApiModelProperty("成本单价") |
||||
|
private BigDecimal cost; |
||||
|
@ApiModelProperty("应盘数量") |
||||
|
private BigDecimal bookCount; |
||||
|
@ApiModelProperty("应盘金额") |
||||
|
private BigDecimal bookAmount; |
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal realCount; |
||||
|
@ApiModelProperty("实盘金额") |
||||
|
private BigDecimal realAmount; |
||||
|
@ApiModelProperty("状态") |
||||
|
private String state; |
||||
|
@ApiModelProperty("盈亏数量") |
||||
|
private BigDecimal profitAndLoseCount; |
||||
|
@ApiModelProperty("盈亏金额") |
||||
|
private BigDecimal profitAndLoseAmount; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal lossCount; |
||||
|
@ApiModelProperty("盘损金额") |
||||
|
private BigDecimal lossAmount; |
||||
|
@ApiModelProperty("备注") |
||||
|
private String remarks; |
||||
|
@ApiModelProperty("附件") |
||||
|
private List<WmsOldCheckbillDetailFile> fileList = new ArrayList<>(); |
||||
|
} |
@ -0,0 +1,66 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.query.Query; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetailVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailVo <br/> |
||||
|
* Description: 库存盘点-明细 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailRackPageListQuery implements Query { |
||||
|
|
||||
|
@ApiModelProperty("盘点sid") |
||||
|
private String billSid; |
||||
|
@ApiModelProperty("仓库sid") |
||||
|
private String warehouseSid; // 仓库sid
|
||||
|
@ApiModelProperty("库区sid") |
||||
|
private String warehouseAreaSid; // 库区sid
|
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String warehouseRackSid; // 库位sid
|
||||
|
|
||||
|
/* |
||||
|
* 移动端查询条件 |
||||
|
* */ |
||||
|
private String userSid; |
||||
|
private String orgPath; |
||||
|
private String menuSid; |
||||
|
private String names; |
||||
|
} |
@ -0,0 +1,86 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
|
||||
|
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: WmsInventoryCheckbillDetailVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailVo <br/> |
||||
|
* Description: 库存盘点-明细 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillDetailRackPageListVo implements Vo { |
||||
|
|
||||
|
private String billSid; |
||||
|
|
||||
|
@ApiModelProperty("仓库名称") |
||||
|
private String warehouseName; |
||||
|
@ApiModelProperty("库区名称") |
||||
|
private String warehouseArea; |
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String warehouseRackSid; |
||||
|
@ApiModelProperty("库位名称") |
||||
|
private String warehouseRackName; |
||||
|
@ApiModelProperty("应盘数量") |
||||
|
private BigDecimal bookCount; |
||||
|
@ApiModelProperty("应盘金额") |
||||
|
private BigDecimal bookAmount; |
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal realCount; |
||||
|
@ApiModelProperty("实盘金额") |
||||
|
private BigDecimal realAmount; |
||||
|
@ApiModelProperty("未盘数量") |
||||
|
private BigDecimal notCount; |
||||
|
@ApiModelProperty("未盘金额") |
||||
|
private BigDecimal notAmount; |
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private BigDecimal profitCount; |
||||
|
@ApiModelProperty("盘盈金额") |
||||
|
private BigDecimal profitAmount; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private BigDecimal loseCount; |
||||
|
@ApiModelProperty("盘亏金额") |
||||
|
private BigDecimal loseAmount; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal lossCount; |
||||
|
@ApiModelProperty("盘损金额") |
||||
|
private BigDecimal lossAmount; |
||||
|
} |
@ -0,0 +1,191 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail; |
||||
|
|
||||
|
import cn.hutool.core.bean.BeanUtil; |
||||
|
import com.yxt.common.base.config.component.FileUploadComponent; |
||||
|
import com.yxt.common.base.service.MybatisBaseService; |
||||
|
import com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseArea; |
||||
|
import com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseAreaService; |
||||
|
import com.yxt.wms.biz.base.wmswarehouseinfo.WmsWarehouseInfo; |
||||
|
import com.yxt.wms.biz.base.wmswarehouseinfo.WmsWarehouseInfoService; |
||||
|
import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRack; |
||||
|
import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackService; |
||||
|
import com.yxt.wms.biz.inventory.wmsappendix.WmsAppendix; |
||||
|
import com.yxt.wms.biz.inventory.wmsappendix.WmsAppendixService; |
||||
|
import com.yxt.wms.biz.inventory.wmsappendix.WmsFileEnum; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventorycheckbillreport.WmsInventoryCheckbillReportSumVo; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventoryprofitindetail.WmsInventoryProfitinDetailDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsinventoryprofitoutdetail.WmsInventoryProfitoutDetailDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.HandleBean; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillGoodsDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app.WmsOldCheckbillGoodsPyDto; |
||||
|
import com.yxt.wms.biz.inventory.wmsoldcheckbillreport.WmsOldCheckbillReportSumVo; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(仓储) <br/> |
||||
|
* File: WmsInventoryCheckbillDetailService.java <br/> |
||||
|
* Class: com.yxt.wms.biz.wmsinventorycheckbilldetail.WmsInventoryCheckbillDetailService <br/> |
||||
|
* Description: 库存盘点-明细 业务逻辑. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-03-22 09:25:02 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class WmsOldCheckbillDetailService extends MybatisBaseService<WmsOldCheckbillDetailMapper, WmsOldCheckbillDetail> { |
||||
|
|
||||
|
@Autowired |
||||
|
private WmsAppendixService wmsAppendixService; |
||||
|
@Autowired |
||||
|
private FileUploadComponent fileUploadComponent; |
||||
|
@Autowired |
||||
|
private WmsWarehouseRackService wmsWarehouseRackService; |
||||
|
@Autowired |
||||
|
private WmsWarehouseAreaService wmsWarehouseAreaService; |
||||
|
@Autowired |
||||
|
private WmsWarehouseInfoService wmsWarehouseInfoService; |
||||
|
|
||||
|
public void insertByDto(WmsOldCheckbillDetailDto dto) { |
||||
|
WmsOldCheckbillDetail entity = new WmsOldCheckbillDetail(); |
||||
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
||||
|
baseMapper.insert(entity); |
||||
|
} |
||||
|
|
||||
|
public WmsOldCheckbillDetailDetailsVo fetchDetailsVoBySid(String sid) { |
||||
|
WmsOldCheckbillDetail entity = fetchBySid(sid); |
||||
|
WmsOldCheckbillDetailDetailsVo vo = new WmsOldCheckbillDetailDetailsVo(); |
||||
|
BeanUtil.copyProperties(entity, vo); |
||||
|
return vo; |
||||
|
} |
||||
|
|
||||
|
public void delByMainSid(String dtoSid) { |
||||
|
baseMapper.delByMainSid(dtoSid); |
||||
|
} |
||||
|
|
||||
|
public List<WmsOldCheckbillDetailDetailsVo> selByMainSid(String billSid) { |
||||
|
return baseMapper.selByMainSid(billSid); |
||||
|
} |
||||
|
|
||||
|
public List<WmsOldCheckbillReportSumVo> reportSum(String sid, String sumType) { |
||||
|
List<WmsOldCheckbillReportSumVo> wmsOldCheckbillReportSumVos = new ArrayList<>(); |
||||
|
if ("total".equals(sumType)) { |
||||
|
WmsOldCheckbillReportSumVo wmsOldCheckbillReportSumVo = baseMapper.reportSumTotal(sid); |
||||
|
wmsOldCheckbillReportSumVos.add(wmsOldCheckbillReportSumVo); |
||||
|
} else if ("ware".equals(sumType)) { |
||||
|
wmsOldCheckbillReportSumVos = baseMapper.reportSumWare(sid); |
||||
|
} else if ("area".equals(sumType)) { |
||||
|
wmsOldCheckbillReportSumVos = baseMapper.reportSumArea(sid); |
||||
|
} |
||||
|
return wmsOldCheckbillReportSumVos; |
||||
|
} |
||||
|
|
||||
|
public void saveInventoryInfo(WmsOldCheckbillGoodsDto dto) { |
||||
|
int i = new BigDecimal(dto.getLockNum()).compareTo(new BigDecimal(dto.getNum())); |
||||
|
if (i < 0) {//盘盈
|
||||
|
BigDecimal pyCount = new BigDecimal(dto.getNum()).subtract(new BigDecimal(dto.getLockNum())); |
||||
|
baseMapper.saveInventoryInfoPY(dto, pyCount); |
||||
|
} else if (i > 0) {//盘亏
|
||||
|
BigDecimal pkCount = new BigDecimal(dto.getLockNum()).subtract(new BigDecimal(dto.getNum())); |
||||
|
baseMapper.saveInventoryInfoPK(dto, pkCount); |
||||
|
} else { |
||||
|
baseMapper.saveInventoryInfoZC(dto, dto.getNum()); |
||||
|
} |
||||
|
List<String> files = dto.getFiles(); |
||||
|
wmsAppendixService.delByLinkSid(dto.getSid()); |
||||
|
for (String file : files) { |
||||
|
String filePath = file.replace(fileUploadComponent.getUrlPrefix(), ""); |
||||
|
WmsAppendix wmsAppendix = new WmsAppendix(); |
||||
|
wmsAppendix.setLinkSid(dto.getSid()); |
||||
|
wmsAppendix.setAttachType(WmsFileEnum.WMSINVENTORYCHECKBILLDETAIL.getAttachType()); |
||||
|
wmsAppendix.setFilePath(filePath); |
||||
|
wmsAppendixService.save(wmsAppendix); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public HandleBean scan(String sid, String content, String houseSid) { |
||||
|
return baseMapper.scan(sid, content, houseSid); |
||||
|
} |
||||
|
|
||||
|
public void saveInventoryInfo2(WmsOldCheckbillGoodsPyDto dto) { |
||||
|
WmsOldCheckbillDetail wmsOldCheckbillDetail = new WmsOldCheckbillDetail(); |
||||
|
wmsOldCheckbillDetail.setState(3); |
||||
|
wmsOldCheckbillDetail.setBillSid(dto.getPanDianSid()); |
||||
|
wmsOldCheckbillDetail.setGoodsSpuSid(dto.getGoodsSid()); |
||||
|
wmsOldCheckbillDetail.setGoodsSpuName(dto.getGoodsSpuName()); |
||||
|
wmsOldCheckbillDetail.setGoodsSkuSid(dto.getGoodsSkuSid()); |
||||
|
wmsOldCheckbillDetail.setGoodsSkuTitle(dto.getGoodsName()); |
||||
|
wmsOldCheckbillDetail.setGoodsSkuCode(dto.getGoodsSkuCode()); |
||||
|
wmsOldCheckbillDetail.setGoodsSkuOwnSpec(dto.getGoodsSkuOwnSpec()); |
||||
|
wmsOldCheckbillDetail.setManufacturerSid(dto.getManufacturerSid()); |
||||
|
wmsOldCheckbillDetail.setManufacturerName(dto.getManufacturerName()); |
||||
|
wmsOldCheckbillDetail.setUnit(dto.getUnit()); |
||||
|
WmsWarehouseRack wmsWarehouseRack = wmsWarehouseRackService.fetchBySid(dto.getHouseSid()); |
||||
|
WmsWarehouseArea wmsWarehouseArea = wmsWarehouseAreaService.fetchBySid(wmsWarehouseRack.getLocationSid()); |
||||
|
WmsWarehouseInfo wmsWarehouseInfo = wmsWarehouseInfoService.fetchBySid(wmsWarehouseArea.getWarehouseSid()); |
||||
|
wmsOldCheckbillDetail.setWarehouseSid(wmsWarehouseInfo.getSid()); |
||||
|
wmsOldCheckbillDetail.setWarehouseName(wmsWarehouseInfo.getWarehouseName()); |
||||
|
wmsOldCheckbillDetail.setWarehouseAreaSid(wmsWarehouseArea.getSid()); |
||||
|
wmsOldCheckbillDetail.setWarehouseArea(wmsWarehouseArea.getAreaName()); |
||||
|
wmsOldCheckbillDetail.setWarehouseRackSid(wmsWarehouseRack.getSid()); |
||||
|
wmsOldCheckbillDetail.setWarehouseRackName(wmsWarehouseRack.getRackName()); |
||||
|
wmsOldCheckbillDetail.setSupplierSid(dto.getProviderSid()); |
||||
|
wmsOldCheckbillDetail.setSupplierName(dto.getProvider()); |
||||
|
wmsOldCheckbillDetail.setBookCount(new BigDecimal("0")); |
||||
|
wmsOldCheckbillDetail.setRealCount(new BigDecimal(dto.getNum())); |
||||
|
wmsOldCheckbillDetail.setLossCount(new BigDecimal(dto.getBadNum())); |
||||
|
wmsOldCheckbillDetail.setProfitCount(new BigDecimal(dto.getNum())); |
||||
|
wmsOldCheckbillDetail.setLoseCount(new BigDecimal("0")); |
||||
|
wmsOldCheckbillDetail.setRemarks(dto.getRemarks()); |
||||
|
baseMapper.insert(wmsOldCheckbillDetail); |
||||
|
List<String> files = dto.getFiles(); |
||||
|
for (String file : files) { |
||||
|
String filePath = file.replace(fileUploadComponent.getUrlPrefix(), ""); |
||||
|
WmsAppendix wmsAppendix = new WmsAppendix(); |
||||
|
wmsAppendix.setLinkSid(wmsOldCheckbillDetail.getSid()); |
||||
|
wmsAppendix.setAttachType(WmsFileEnum.WMSINVENTORYCHECKBILLDETAIL.getAttachType()); |
||||
|
wmsAppendix.setFilePath(filePath); |
||||
|
wmsAppendixService.save(wmsAppendix); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public List<WmsInventoryProfitinDetailDto> sourceBillBySid(String sid) { |
||||
|
return baseMapper.sourceBillBySid(sid); |
||||
|
} |
||||
|
|
||||
|
public List<WmsInventoryProfitoutDetailDto> sourceBillPkBySid(String sid) { |
||||
|
return baseMapper.sourceBillPkBySid(sid); |
||||
|
} |
||||
|
} |
@ -0,0 +1,44 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Data |
||||
|
public class HandleBean { |
||||
|
|
||||
|
/** |
||||
|
* 损坏数量,默认 0 |
||||
|
*/ |
||||
|
private String badNum; |
||||
|
private List<String> files; |
||||
|
/** |
||||
|
* 商品ID |
||||
|
*/ |
||||
|
private String goodsID; |
||||
|
/** |
||||
|
* 商品名称 |
||||
|
*/ |
||||
|
private String goodsName; |
||||
|
/** |
||||
|
* 图号 |
||||
|
*/ |
||||
|
private String goodsSkuCode; |
||||
|
/** |
||||
|
* 本库位库存 |
||||
|
*/ |
||||
|
private String lockNum; |
||||
|
/** |
||||
|
* 确认数量/数量,赋值为库存数量 |
||||
|
*/ |
||||
|
private String num; |
||||
|
private String remarks; |
||||
|
/** |
||||
|
* 商品记录sid |
||||
|
*/ |
||||
|
private String sid; |
||||
|
/** |
||||
|
* 单位 |
||||
|
*/ |
||||
|
private String unit; |
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app; |
||||
|
|
||||
|
import com.yxt.common.core.dto.Dto; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillGoodsDto implements Dto { |
||||
|
|
||||
|
/** |
||||
|
* 损坏数量 |
||||
|
*/ |
||||
|
private String badNum; |
||||
|
/** |
||||
|
* 附件 |
||||
|
*/ |
||||
|
private List<String> files; |
||||
|
/** |
||||
|
* 确认数量/数量 |
||||
|
*/ |
||||
|
private String num; |
||||
|
/** |
||||
|
* 库存数量 |
||||
|
*/ |
||||
|
private String lockNum; |
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remarks; |
||||
|
/** |
||||
|
* 商品记录sid |
||||
|
*/ |
||||
|
private String sid; |
||||
|
} |
@ -0,0 +1,66 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app; |
||||
|
|
||||
|
import com.yxt.common.core.dto.Dto; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillGoodsPyDto implements Dto { |
||||
|
|
||||
|
/** |
||||
|
* 损坏数量 |
||||
|
*/ |
||||
|
private String badNum; |
||||
|
/** |
||||
|
* 附件 |
||||
|
*/ |
||||
|
private List<String> files; |
||||
|
/** |
||||
|
* 确认数量/数量 |
||||
|
*/ |
||||
|
private String num; |
||||
|
/** |
||||
|
* 库存数量 |
||||
|
*/ |
||||
|
private String lockNum; |
||||
|
/** |
||||
|
* 备注 |
||||
|
*/ |
||||
|
private String remarks; |
||||
|
/** |
||||
|
* 商品名称 |
||||
|
*/ |
||||
|
private String goodsName; |
||||
|
/** |
||||
|
* 商品sid |
||||
|
*/ |
||||
|
private String goodsSid; |
||||
|
/** |
||||
|
* 图号 |
||||
|
*/ |
||||
|
private String goodsSkuCode; |
||||
|
/** |
||||
|
* 库位sid |
||||
|
*/ |
||||
|
private String houseSid; |
||||
|
/** |
||||
|
* 盘点单sid |
||||
|
*/ |
||||
|
private String panDianSid; |
||||
|
/** |
||||
|
* 供应商 |
||||
|
*/ |
||||
|
private String provider; |
||||
|
private String providerSid; |
||||
|
/** |
||||
|
* 单位 |
||||
|
*/ |
||||
|
private String unit; |
||||
|
|
||||
|
private String goodsSkuSid; |
||||
|
private String goodsSpuName; |
||||
|
private String goodsSkuOwnSpec; |
||||
|
private String manufacturerSid; |
||||
|
private String manufacturerName; |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app; |
||||
|
|
||||
|
import com.yxt.common.core.query.Query; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillPageQuery implements Query { |
||||
|
|
||||
|
private String menuSid; |
||||
|
/** |
||||
|
* 仓库/库区/库位 |
||||
|
*/ |
||||
|
private String name; |
||||
|
/** |
||||
|
* 组织机构sid |
||||
|
*/ |
||||
|
private String orgPath; |
||||
|
private String userSid; |
||||
|
} |
@ -0,0 +1,30 @@ |
|||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbilldetail.app; |
||||
|
|
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
@Data |
||||
|
public class WmsOldCheckbillPageVo implements Vo { |
||||
|
|
||||
|
@ApiModelProperty("盘点单sid") |
||||
|
private String sid; |
||||
|
@ApiModelProperty("库位sid") |
||||
|
private String houseSid; |
||||
|
@ApiModelProperty("仓库-库区-库位") |
||||
|
private String title; |
||||
|
@ApiModelProperty("应盘数量") |
||||
|
private String totalNumber; |
||||
|
@ApiModelProperty("未盘数量") |
||||
|
private String surplusNumber; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private String lossNumber; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private String damageNumber; |
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private String profitNumber; |
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private String actualNumber; |
||||
|
@ApiModelProperty("是否显示按钮") |
||||
|
private Boolean showBtn = true; |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbillreport; |
||||
|
|
||||
|
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: WmsInventoryCheckbillReport.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbillreport.WmsInventoryCheckbillReport <br/> |
||||
|
* Description: 盘点报告. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-07-19 09:52:51 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
@TableName("wms_old_checkbill_report") |
||||
|
public class WmsOldCheckbillReport extends BaseEntity { |
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
@ApiModelProperty("盘点单sid") |
||||
|
private String billSid; // 盘点单sid
|
||||
|
@ApiModelProperty("pdf路径") |
||||
|
private String pdfUrl; // pdf路径
|
||||
|
|
||||
|
} |
@ -0,0 +1,105 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbillreport; |
||||
|
|
||||
|
|
||||
|
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.math.BigDecimal; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(盘点报告) <br/> |
||||
|
* File: WmsInventoryCheckbillReportVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbillreport.WmsInventoryCheckbillReportVo <br/> |
||||
|
* Description: 盘点报告 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-07-19 09:52:51 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillReportDetailsVo implements Vo { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@ApiModelProperty("制单人姓名") |
||||
|
private String createByName; |
||||
|
@ApiModelProperty("申请部门名称") |
||||
|
private String deptName; |
||||
|
@ApiModelProperty("生成日期") |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
||||
|
private Date createTime; |
||||
|
@ApiModelProperty("盘点人") |
||||
|
private String createName; |
||||
|
@ApiModelProperty("监盘人姓名") |
||||
|
private String finances; |
||||
|
@ApiModelProperty("备注") |
||||
|
private String remarks; |
||||
|
@ApiModelProperty("pdf路径") |
||||
|
private String pdfUrl; |
||||
|
|
||||
|
//总体盘点情况
|
||||
|
@ApiModelProperty("应盘数量") |
||||
|
private BigDecimal ypNum; |
||||
|
@ApiModelProperty("应盘金额") |
||||
|
private BigDecimal ypMoney; |
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal spNum; |
||||
|
@ApiModelProperty("实盘金额") |
||||
|
private BigDecimal spMoney; |
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private BigDecimal pyNum; |
||||
|
@ApiModelProperty("盘盈金额") |
||||
|
private BigDecimal pyMoney; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private BigDecimal pkNum; |
||||
|
@ApiModelProperty("盘亏金额") |
||||
|
private BigDecimal pkMoney; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal psNum; |
||||
|
@ApiModelProperty("盘损金额") |
||||
|
private BigDecimal psMoney; |
||||
|
@ApiModelProperty("虚拟件数量") |
||||
|
private BigDecimal virtualNum; |
||||
|
@ApiModelProperty("未入库数量") |
||||
|
private BigDecimal unInStorageNum; |
||||
|
|
||||
|
//仓库盘点情况
|
||||
|
List<WmsOldCheckbillReportSumVo> warehouseStocktakList = new ArrayList<>(); |
||||
|
|
||||
|
//库区盘点情况
|
||||
|
List<WmsOldCheckbillReportSumVo> arehouseAreaeStocktakList = new ArrayList<>(); |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbillreport; |
||||
|
|
||||
|
|
||||
|
import com.yxt.common.core.dto.Dto; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* Project: yxt-wms(盘点报告) <br/> |
||||
|
* File: WmsInventoryCheckbillReportDto.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbillreport.WmsInventoryCheckbillReportDto <br/> |
||||
|
* Description: 盘点报告 数据传输对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-07-19 09:52:51 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillReportDto implements Dto { |
||||
|
|
||||
|
private String sid; // sid
|
||||
|
|
||||
|
@ApiModelProperty("盘点单sid") |
||||
|
private String billSid; // 盘点单sid
|
||||
|
@ApiModelProperty("pdf路径") |
||||
|
private String pdfUrl; // pdf路径
|
||||
|
|
||||
|
} |
@ -0,0 +1,45 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbillreport; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import org.apache.ibatis.annotations.*; |
||||
|
|
||||
|
@Mapper |
||||
|
public interface WmsOldCheckbillReportMapper extends BaseMapper<WmsOldCheckbillReport> { |
||||
|
|
||||
|
@Delete("delete from wms_old_checkbill_report where billSid = #{billSid}") |
||||
|
void delByMainSid(String billSid); |
||||
|
|
||||
|
@Select("select * from wms_old_checkbill_report where billSid = #{billSid}") |
||||
|
WmsOldCheckbillReport selByBillSid(String billSid); |
||||
|
|
||||
|
@Update("update wms_old_checkbill_report set remarks = #{remarks} where billSid = #{billSid}") |
||||
|
void saveReport(@Param("billSid") String billSid,@Param("remarks") String remarks); |
||||
|
|
||||
|
@Update("update wms_old_checkbill_report set pdfUrl = #{pdfUrl} where billSid = #{billSid}") |
||||
|
void updatePdf(@Param("billSid") String billSid,@Param("pdfUrl") String pdfUrl); |
||||
|
} |
@ -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.wmsoldcheckbillreport.WmsOldCheckbillReportMapper"> |
||||
|
<!-- <where> ${ew.sqlSegment} </where>--> |
||||
|
<!-- ${ew.customSqlSegment} --> |
||||
|
</mapper> |
@ -0,0 +1,63 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbillreport; |
||||
|
|
||||
|
import cn.hutool.core.bean.BeanUtil; |
||||
|
import com.yxt.common.base.service.MybatisBaseService; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
@Service |
||||
|
public class WmsOldCheckbillReportService extends MybatisBaseService<WmsOldCheckbillReportMapper, WmsOldCheckbillReport> { |
||||
|
|
||||
|
public void insertByDto(WmsOldCheckbillReportDto dto){ |
||||
|
WmsOldCheckbillReport entity = new WmsOldCheckbillReport(); |
||||
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
||||
|
baseMapper.insert(entity); |
||||
|
} |
||||
|
|
||||
|
public WmsOldCheckbillReportDetailsVo fetchDetailsVoBySid(String sid){ |
||||
|
WmsOldCheckbillReport entity = fetchBySid(sid); |
||||
|
WmsOldCheckbillReportDetailsVo vo = new WmsOldCheckbillReportDetailsVo(); |
||||
|
BeanUtil.copyProperties(entity, vo); |
||||
|
return vo; |
||||
|
} |
||||
|
|
||||
|
public void delByMainSid(String billSid) { |
||||
|
baseMapper.delByMainSid(billSid); |
||||
|
} |
||||
|
|
||||
|
public WmsOldCheckbillReport selByBillSid(String billSid) { |
||||
|
return baseMapper.selByBillSid(billSid); |
||||
|
} |
||||
|
|
||||
|
public void saveReport(String billSid, String remarks) { |
||||
|
baseMapper.saveReport(billSid,remarks); |
||||
|
} |
||||
|
|
||||
|
public void updatePdf(String billSid, String pdfUrl) { |
||||
|
baseMapper.updatePdf(billSid,pdfUrl); |
||||
|
} |
||||
|
} |
@ -0,0 +1,90 @@ |
|||||
|
/********************************************************* |
||||
|
********************************************************* |
||||
|
******************** ******************* |
||||
|
************* ************ |
||||
|
******* _oo0oo_ ******* |
||||
|
*** o8888888o *** |
||||
|
* 88" . "88 * |
||||
|
* (| -_- |) * |
||||
|
* 0\ = /0 * |
||||
|
* ___/`---'\___ * |
||||
|
* .' \\| |// '. *
|
||||
|
* / \\||| : |||// \ *
|
||||
|
* / _||||| -:- |||||- \ * |
||||
|
* | | \\\ - /// | | *
|
||||
|
* | \_| ''\---/'' |_/ | * |
||||
|
* \ .-\__ '-' ___/-. / * |
||||
|
* ___'. .' /--.--\ `. .'___ * |
||||
|
* ."" '< `.___\_<|>_/___.' >' "". * |
||||
|
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
||||
|
* \ \ `_. \_ __\ /__ _/ .-` / / * |
||||
|
* =====`-.____`.___ \_____/___.-`___.-'===== * |
||||
|
* `=---=' * |
||||
|
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
||||
|
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
||||
|
*********************************************************/ |
||||
|
package com.yxt.wms.biz.inventory.wmsoldcheckbillreport; |
||||
|
|
||||
|
|
||||
|
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: WmsInventoryCheckbillReportVo.java <br/> |
||||
|
* Class: com.yxt.wms.api.wmsinventorycheckbillreport.WmsInventoryCheckbillReportVo <br/> |
||||
|
* Description: 盘点报告 视图数据对象. <br/> |
||||
|
* Copyright: Copyright (c) 2011 <br/> |
||||
|
* Company: https://gitee.com/liuzp315 <br/>
|
||||
|
* Makedate: 2024-07-19 09:52:51 <br/> |
||||
|
* |
||||
|
* @author liupopo |
||||
|
* @version 1.0 |
||||
|
* @since 1.0 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class WmsOldCheckbillReportSumVo implements Vo { |
||||
|
|
||||
|
/* |
||||
|
* 盘点报告序号 |
||||
|
* */ |
||||
|
@ApiModelProperty("序号") |
||||
|
private Integer id; |
||||
|
|
||||
|
@ApiModelProperty("仓库名称") |
||||
|
private String warehouseName; |
||||
|
@ApiModelProperty("仓库-库区") |
||||
|
private String warehouseAreaeName; |
||||
|
@ApiModelProperty("应盘数量") |
||||
|
private BigDecimal ypNum; |
||||
|
@ApiModelProperty("应盘金额") |
||||
|
private BigDecimal ypMoney; |
||||
|
@ApiModelProperty("实盘数量") |
||||
|
private BigDecimal spNum; |
||||
|
@ApiModelProperty("实盘金额") |
||||
|
private BigDecimal spMoney; |
||||
|
@ApiModelProperty("盘盈数量") |
||||
|
private BigDecimal pyNum; |
||||
|
@ApiModelProperty("盘盈金额") |
||||
|
private BigDecimal pyMoney; |
||||
|
@ApiModelProperty("盘亏数量") |
||||
|
private BigDecimal pkNum; |
||||
|
@ApiModelProperty("盘亏金额") |
||||
|
private BigDecimal pkMoney; |
||||
|
@ApiModelProperty("盘损数量") |
||||
|
private BigDecimal psNum; |
||||
|
@ApiModelProperty("盘损金额") |
||||
|
private BigDecimal psMoney; |
||||
|
@ApiModelProperty("虚拟件数量") |
||||
|
private BigDecimal virtualNum; |
||||
|
@ApiModelProperty("虚拟件金额") |
||||
|
private BigDecimal virtualMoney; |
||||
|
@ApiModelProperty("未入库数量") |
||||
|
private BigDecimal unInStorageNum; |
||||
|
@ApiModelProperty("未入库金额") |
||||
|
private BigDecimal unInStorageMoney; |
||||
|
} |
File diff suppressed because it is too large
Loading…
Reference in new issue