From d17c089f1d7ff3be848b05161917346e7f664a1d Mon Sep 17 00:00:00 2001 From: mrzhssss <pro6@qq.com> Date: 星期二, 26 四月 2022 15:17:53 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/manager/controller/QualityController.java | 88 ++++++++++++++++++++++++++++++++++++++----- 1 files changed, 77 insertions(+), 11 deletions(-) diff --git a/src/main/java/zy/cloud/wms/manager/controller/QualityController.java b/src/main/java/zy/cloud/wms/manager/controller/QualityController.java index 0a974ff..1c382eb 100644 --- a/src/main/java/zy/cloud/wms/manager/controller/QualityController.java +++ b/src/main/java/zy/cloud/wms/manager/controller/QualityController.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; import com.core.common.*; +import net.sf.jsqlparser.expression.DateTimeLiteralExpression; import org.apache.poi.ss.formula.functions.Now; +import org.springframework.transaction.annotation.Transactional; import zy.cloud.wms.manager.entity.Quality; import zy.cloud.wms.manager.entity.QualityDetl; import zy.cloud.wms.manager.entity.Receive; @@ -18,7 +20,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import zy.cloud.wms.manager.service.ReceiveDetlService; +import zy.cloud.wms.manager.utils.AddZero; +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; import java.util.*; @RestController @@ -49,7 +54,11 @@ EntityWrapper<Quality> wrapper = new EntityWrapper<>(); excludeTrash(param); convert(param, wrapper); - if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} + if (!Cools.isEmpty(orderByField)){ + wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType)); + } else { + wrapper.orderBy("create_time",false); + } return R.ok(qualityService.selectPage(new Page<>(curr, limit), wrapper)); } @@ -68,23 +77,79 @@ @RequestMapping(value = "/quality/add/auth") @ManagerAuth + @Transactional public R add(Quality quality) { + String qcNo = ""; + if(!Cools.isEmpty(quality.getBillNo())) { + qcNo = quality.getBillNo(); + } else { + String sheetNo = "QUA-" + new SimpleDateFormat("yyyyMMdd").format(new Date()) + "-"; + String currNum = qualityService.getCurrNum(sheetNo); + if (!Cools.isEmpty(currNum)) { + String[] split = currNum.split("-"); + if (split.length < 3) { + qcNo = sheetNo + "0001"; + } else { + Integer newNum = Integer.parseInt(split[2]) + 1; + String format = AddZero.addZeroForNum(newNum + "", 4); + qcNo = sheetNo + format; + } + } else { + qcNo = sheetNo + "0001"; + } + } + + quality.setBillNo(qcNo); + quality.setHostId(getHostId()); + quality.setAuditStatus((short)0); + quality.setUpdateBy(getUserId()); + quality.setUpdateTime(new Date()); + quality.setCreateBy(getUserId()); qualityService.insert(quality); + Wrapper<ReceiveDetl> wrapper = new EntityWrapper<ReceiveDetl>(); List<ReceiveDetl> list = receiveDetlService.selectList(wrapper.eq("order_no",quality.getUuid() )); + int seq = 1; if(list.size()>0){ - for(ReceiveDetl detl:list){ - QualityDetl qualityDetl = new QualityDetl(); - qualityDetl.setAnfme(detl.getAnfme()); - qualityDetl.setBillNo(quality.getBillNo()); - qualityDetl.setOrderNo(detl.getOrderNo()); - qualityDetl.setMatnr(detl.getMatnr()); - qualityDetl.setMaktx(detl.getMaktx()); - qualityDetl.setProdDate(new Date()); - qualityDetlService.insert(qualityDetl); + for(ReceiveDetl detl:list){ + QualityDetl qualityDetl = new QualityDetl(); + qualityDetl.setQualityId(quality.getId()); + qualityDetl.setAnfme(detl.getAnfme()); + qualityDetl.setBillNo(qcNo); + qualityDetl.setSeqNo(seq); + qualityDetl.setOrderNo(detl.getOrderNo()); + qualityDetl.setMatnr(detl.getMatnr()); + qualityDetl.setMaktx(detl.getMaktx()); + qualityDetl.setProdDate(new Date()); + qualityDetl.setHostId(getHostId()); + qualityDetlService.insert(qualityDetl); + seq++; + } + } else { + return R.error("鍏ュ簱鍗曞彿涓嶅瓨鍦�"); } - } + return R.ok(); + } + + @RequestMapping("/quality/orderNo/init1") + @ManagerAuth(memo = "鐢熸垚鍗曟嵁缂栧彿") + public R initOrderNo() { + String billNo = "QC-" + new SimpleDateFormat("yyyyMMdd").format(new Date())+"-"; + String currNum = qualityService.getCurrNum(billNo); + String orderNo=null; + if (!Cools.isEmpty(currNum)) { + String[] split = currNum.split("-"); + if (split.length < 2){ + orderNo= billNo + "0001"; + } + Integer newNum = Integer.parseInt(split[2]) +1; + String format = AddZero.addZeroForNum(newNum + "", 4); + orderNo = billNo + format; + }else { + orderNo = billNo + "0001"; + } + return R.ok().add(orderNo); } @RequestMapping(value = "/quality/update/auth") @@ -93,6 +158,7 @@ if (Cools.isEmpty(quality) || null==quality.getId()){ return R.error(); } + quality.setUpdateTime(new Date()); qualityService.updateById(quality); return R.ok(); } -- Gitblit v1.9.1