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