From 5dedc84d55c8f4dc6e31f80ce9bcc69b8392c34c Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Thu, 18 Jul 2024 16:59:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=BB=B4=E4=BF=AE=E9=A2=86?= =?UTF-8?q?=E6=96=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/asbusrepairbill/AsBusrepairBill.java | 6 + .../AsBusrepairBillQuery.java | 36 +++++ .../AsBusrepairBillVo.java | 27 ++++ .../AsBusrepairInventoryBillInit.java | 3 +- .../asbusrepairinventorybill/ConfirmDto.java | 16 +++ .../AsBusrepairInventorybillDetail.java | 3 +- .../AsBusrepairInventorybillDetailSDto.java | 2 + .../AsBusrepairBillService.java | 2 + .../AsBusrepairInventorybillMapper.java | 4 + .../AsBusrepairInventorybillMapper.xml | 34 +++++ .../AsBusrepairInventorybillRest.java | 20 ++- .../AsBusrepairInventorybillService.java | 126 +++++++++++++++++- .../wmsoutbill/WmsOutBillService.java | 5 +- 13 files changed, 271 insertions(+), 13 deletions(-) create mode 100644 yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillQuery.java create mode 100644 yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillVo.java create mode 100644 yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/ConfirmDto.java diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java index 151f150f96..68af7ac0f9 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java @@ -127,4 +127,10 @@ public class AsBusrepairBill extends BaseEntity { private String outRemarks; @ApiModelProperty("商品登记备注") private String registerRemarks; + @ApiModelProperty("维修状态(0未维修,1维修中,2维修完成)") + private Integer repairState; + @ApiModelProperty("维修工作状态(0未完成,1已完成)") + private Integer completeState; + @ApiModelProperty("出库确认备注") + private String outboundRemarks; } diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillQuery.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillQuery.java new file mode 100644 index 0000000000..fd482e7ac0 --- /dev/null +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillQuery.java @@ -0,0 +1,36 @@ +package com.yxt.anrui.as.api.asbusrepairinventorybill; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/18 14:34 + */ +@Data +public class AsBusrepairBillQuery implements Query { + + + private String repairState; //维修状态 + private String billNo; //工单编号 + private String billType; //工单类型 + private String subject; //科目 + private String customerName; //是否外出 + private String vehMark; //车牌号 + private String vinNo; //车架号 + + private String createTimeEnd; //进厂结束日期 + private String createTimeStart; //进厂开始日期 + private String completeState; //0未完成 1已完成 + + @ApiModelProperty("使用组织sid") + private String orgPath; + private String userSid; + @ApiModelProperty("菜单url") + private String menuUrl; + + + +} diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillVo.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillVo.java new file mode 100644 index 0000000000..c6855e29ef --- /dev/null +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairBillVo.java @@ -0,0 +1,27 @@ +package com.yxt.anrui.as.api.asbusrepairinventorybill; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/18 14:26 + */ +@Data +public class AsBusrepairBillVo { + + + private String repairState; //维修状态 + private String billSid; //维修工单sid + private String billNo; //工单编号 + private String billTypeValue; //工单类型 + private String subjectValue; //科目 + private String customerName; //是否外出 + private String vehMark; //车牌号 + private String vinNo; //车架号 + private String isGoOut; //是否外出 + private String mobile; //联系电话 + private String entryTime; //进厂日期 + + +} diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairInventoryBillInit.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairInventoryBillInit.java index 7b86cabfa4..89ec534ed1 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairInventoryBillInit.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/AsBusrepairInventoryBillInit.java @@ -60,7 +60,8 @@ public class AsBusrepairInventoryBillInit { @ApiModelProperty("客户单位") private String customerOrg; private List sitemVoList = new ArrayList<>(); - + @ApiModelProperty("商品登记备注") + private String registerRemarks; private List detailList = new ArrayList<>(); } diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/ConfirmDto.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/ConfirmDto.java new file mode 100644 index 0000000000..5209bf4950 --- /dev/null +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybill/ConfirmDto.java @@ -0,0 +1,16 @@ +package com.yxt.anrui.as.api.asbusrepairinventorybill; + +import com.yxt.common.core.dto.Dto; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/7/18 16:48 + */ +@Data +public class ConfirmDto implements Dto { + + private String sid; + private String remarks; +} diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetail.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetail.java index b4a7350c38..8ddda8b671 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetail.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetail.java @@ -60,7 +60,8 @@ public class AsBusrepairInventorybillDetail extends BaseEntity { private BigDecimal discountAmount; @ApiModelProperty("金额(销售价-优惠金额)") private BigDecimal amount; - + @ApiModelProperty("库存数量") + private BigDecimal inventoryNum; // @ApiModelProperty("科目sid") private String subjectSid; diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java index 5683b43bf5..7a1f2b0e1f 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java @@ -71,4 +71,6 @@ public class AsBusrepairInventorybillDetailSDto { @ApiModelProperty("领料人姓名") private String operName; private String remarks; + private String inventoryNum; //库存数量 + } diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java index 34f4cfd262..2f3abe459e 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java @@ -1105,6 +1105,8 @@ public class AsBusrepairBillService extends MybatisBaseService exportExcel(@Param(Constants.WRAPPER)QueryWrapper qw); + + IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); } diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml index ac2d4c4d93..375b68e08b 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml @@ -66,4 +66,38 @@ order by a.id desc + diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java index 0c319f612d..890991aea4 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java @@ -36,13 +36,13 @@ public class AsBusrepairInventorybillRest { return rb.success().setData(pv); } -// @PostMapping("/listPage") -// @ApiOperation("维修领料列表") -// ResultBean> pageList(@RequestBody PagerQuery pagerQuery) { -// ResultBean> rb = ResultBean.fireFail(); -// PagerVo pv = asBusrepairInventorybillService.pageList(pagerQuery); -// return rb.success().setData(pv); -// } + @PostMapping("/listPage") + @ApiOperation("维修领料列表") + ResultBean> listPage(@RequestBody PagerQuery pagerQuery) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = asBusrepairInventorybillService.listPage(pagerQuery); + return rb.success().setData(pv); + } @PostMapping("/saveOrUpdate") @ApiOperation("保存或修改") @@ -62,6 +62,12 @@ public class AsBusrepairInventorybillRest { return asBusrepairInventorybillService.newQuitBill(dto); } + @PostMapping("/saveConfirm") + @ApiOperation("商品出库确认") + ResultBean saveConfirm(@RequestBody ConfirmDto dto) { + return asBusrepairInventorybillService.saveConfirm(dto); + } + @GetMapping("/details") @ApiOperation("详情") ResultBean details(@RequestParam("sid") String sid) { diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java index 528b362fc2..5b3cf7070e 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java @@ -1,12 +1,15 @@ package com.yxt.anrui.as.biz.asbusrepairinventorybill; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateTime; 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.yxt.anrui.as.api.asbusrepairbill.AsBusrepairBill; import com.yxt.anrui.as.api.asbusrepairbill.AsBusrepairBillDetailsVo; import com.yxt.anrui.as.api.asbusrepairbill.SitemVo; +import com.yxt.anrui.as.api.asbusrepairbillnode.AsBusrepairBillNode; import com.yxt.anrui.as.api.asbusrepairinventorybill.*; import com.yxt.anrui.as.api.asbusrepairinventorybilldetail.AsBusrepairInventorybillDetail; import com.yxt.anrui.as.api.asbusrepairinventorybilldetail.AsBusrepairInventorybillDetailSDto; @@ -16,6 +19,7 @@ import com.yxt.anrui.as.api.enums.AsBillTypeEnum; import com.yxt.anrui.as.api.utils.AsRule; import com.yxt.anrui.as.api.utils.domain.AsBillNo; import com.yxt.anrui.as.biz.asbusrepairbill.AsBusrepairBillService; +import com.yxt.anrui.as.biz.asbusrepairbillnode.AsBusrepairBillNodeService; import com.yxt.anrui.as.biz.asbusrepairinventorybilldetail.AsBusrepairInventorybillDetailService; import com.yxt.anrui.as.feign.portal.privilege.PrivilegeQuery; import com.yxt.anrui.as.feign.portal.sysorganization.SysOrganizationFeign; @@ -67,6 +71,9 @@ public class AsBusrepairInventorybillService extends MybatisBaseService sitemVos = data.getSitemVos(); List sitemsVos = new ArrayList<>(); if (!sitemVos.isEmpty()) { @@ -428,7 +438,7 @@ public class AsBusrepairInventorybillService extends MybatisBaseService selOutBoundCountBySitemSid(String sourceBillSid, String busTypeKey, String goodsID, String sitemSid) { ResultBean rb = ResultBean.fireFail(); - String count = baseMapper.selOutBoundCountBySitemSid(sourceBillSid, busTypeKey, goodsID,sitemSid); + String count = baseMapper.selOutBoundCountBySitemSid(sourceBillSid, busTypeKey, goodsID, sitemSid); return rb.success().setData(count); } @@ -518,4 +528,116 @@ public class AsBusrepairInventorybillService extends MybatisBaseService list = baseMapper.exportExcel(qw); return list; } + + public PagerVo listPage(PagerQuery pagerQuery) { + AsBusrepairBillQuery query = pagerQuery.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (query != null) { + if (StringUtils.isNotBlank(query.getMenuUrl())) { + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setMenuUrl(query.getMenuUrl()); + privilegeQuery.setUserSid(query.getUserSid()); + ResultBean 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("a.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("a.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("a.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("a.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("a.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } + //单据编号 + if (StringUtils.isNotBlank(query.getBillNo())) { + qw.like("a.billNo", query.getBillNo()); + } + + if (StringUtils.isNotBlank(query.getBillType())) { + qw.like("a.billType", query.getBillType()); + } + if (StringUtils.isNotBlank(query.getRepairState())) { + if (query.getRepairState().equals("维修中")) { + qw.eq("a.repairState", 1); + } else if (query.getRepairState().equals("维修完成")) { + qw.eq("a.repairState", 2); + } + } + //单据日期开始时间-单据日期结束时间 + qw.apply(StringUtils.isNotBlank(query.getCreateTimeStart()), "date_format (a.entryTime,'%Y-%m-%d') >= date_format('" + query.getCreateTimeStart() + "','%Y-%m-%d')"). + apply(StringUtils.isNotBlank(query.getCreateTimeEnd()), "date_format (a.entryTime,'%Y-%m-%d') <= date_format('" + query.getCreateTimeEnd() + "','%Y-%m-%d')" + ); + //维修工单编号 + if (StringUtils.isNotBlank(query.getSubject())) { + qw.eq("a.subject", query.getSubject()); + } + //业务类型 + if (StringUtils.isNotBlank(query.getCustomerName())) { + qw.like("a.customerName", query.getCustomerName()); + } + if (StringUtils.isNotBlank(query.getVehMark())) { + qw.like("v.vehMark", query.getVehMark()); + } + if (StringUtils.isNotBlank(query.getVinNo())) { + qw.like("v.vinNo", query.getVinNo()); + } + if (query.getCompleteState().equals("0")) { + qw.apply("a.completeState = 0 \n" + + "\t\tAND a.repairState > 0 \n" + + "\tAND (a.SUBJECT = '保外' OR ( a.SUBJECT = '保内' AND (a.oldIsReclaim = 1 OR a.isGoOut = 1)))"); + } else if (query.getCompleteState().equals("1")) { + qw.eq("a.completeState", 1); + } + } + IPage page = PagerUtil.queryToPage(pagerQuery); + IPage pagging = baseMapper.listPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + + public ResultBean saveConfirm(ConfirmDto dto) { + ResultBean rb = ResultBean.fireFail(); + String sid = dto.getSid(); + AsBusrepairBill asBusrepairBill = asBusrepairBillService.fetchBySid(dto.getSid()); + asBusrepairBill.setNodeCode(4); + asBusrepairBill.setNodeName("竣工"); + asBusrepairBill.setNodeTime(new DateTime()); + asBusrepairBill.setCompleteState(1); + if (StringUtils.isNotBlank(dto.getRemarks())) { + asBusrepairBill.setOutboundRemarks(dto.getRemarks()); + } + asBusrepairBillService.updateById(asBusrepairBill); + //新增工单环节信息 + AsBusrepairBillNode billNode = new AsBusrepairBillNode(); + billNode.setBillSid(sid); +// billNode.setCreateByName(dto.getOperator()); + billNode.setNodeName("竣工"); +// billNode.setCreateBySid(dto.getOperatorSid()); + billNode.setNodeCode("4"); + asBusrepairBillNodeService.insert(billNode); + return rb.success(); + } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java index c77f46d7c3..2aa791e106 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java @@ -48,6 +48,7 @@ public class WmsOutBillService extends MybatisBaseService listPage(PagerQuery pagerQuery) { WmsOutBillQuery query = pagerQuery.getParams(); QueryWrapper qw = new QueryWrapper<>(); @@ -129,7 +130,7 @@ public class WmsOutBillService extends MybatisBaseService wrapper.like("wi.goodsSpuName", query.getName()).or().like("wi.goodsSkuCode", query.getName())); } //商品编码 if (StringUtils.isNotBlank(query.getGoodsSkuCode())) { @@ -144,7 +145,7 @@ public class WmsOutBillService extends MybatisBaseService 0"); //ToDo:供应商