src/main/java/zy/cloud/wms/manager/controller/OrderController.java
@@ -64,11 +64,13 @@ excludeTrash(param); convert(param, wrapper); hostEq(wrapper); // if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} // else { // wrapper.orderBy("update_time", false); // } wrapper.orderBy("create_time",false); if (!Cools.isEmpty(orderByField)){ wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType)); } else { wrapper.orderBy("create_time",false); } Page<Order> orderPage = orderService.selectPage(new Page<>(curr, limit), wrapper); return R.ok(orderPage); } @@ -205,6 +207,7 @@ */ @RequestMapping("/orders/wave/auth") @ManagerAuth @Transactional public R createWave(@RequestBody List<Order> orders){ /** * 控管与初始化 @@ -216,11 +219,9 @@ } } /** * 生成波次表头 */ Wave wave = new Wave(); wave.setHostId(getHostId()); String s = UUID.randomUUID().toString().replace("-",""); @@ -229,12 +230,13 @@ String currNum = waveService.getCurrNum(waveNo); if (!Cools.isEmpty(currNum)) { String[] split = currNum.split("-"); if (split.length < 2){ if (split.length < 3){ wave.setWaveNo(waveNo + "0001"); } else { Integer newNum = Integer.parseInt(split[2]) + 1; String format = AddZero.addZeroForNum(newNum + "", 4); wave.setWaveNo(waveNo + format); } Integer newNum = Integer.parseInt(split[2]) +1; String format = AddZero.addZeroForNum(newNum + "", 4); wave.setWaveNo(waveNo + format); }else { wave.setWaveNo(waveNo + "0001"); } src/main/java/zy/cloud/wms/manager/controller/QualityController.java
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.plugins.Page; import com.core.common.*; 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; @@ -52,7 +53,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)); } @@ -71,22 +76,52 @@ @RequestMapping(value = "/quality/add/auth") @ManagerAuth @Transactional public R add(Quality quality) { qualityService.insert(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"; } } 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.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()); qualityDetlService.insert(qualityDetl); seq++; } } else { return R.error("入库单号不存在"); } } quality.setBillNo(qcNo); quality.setAuditStatus((short)0); qualityService.insert(quality); return R.ok(); } src/main/java/zy/cloud/wms/manager/controller/ReceiveController.java
@@ -53,9 +53,11 @@ excludeTrash(param); convert(param, wrapper); hostEq(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("update_time", false); wrapper.orderBy("create_time", false); } return R.ok(receiveService.selectPage(new Page<>(curr, limit), wrapper)); } src/main/java/zy/cloud/wms/manager/mapper/ReceiveMapper.java
@@ -20,4 +20,5 @@ Integer getPageCount(Map<String, Object> map); String getCurrNum(@Param("orderNo") String orderNo); } src/main/java/zy/cloud/wms/manager/service/ReceiveService.java
@@ -20,6 +20,10 @@ Page<Receive> getPage(Page<Receive> page); /** * 得到当前日期最大单号 * @param orderNo * @return */ String getCurrNum(String orderNo); } src/main/java/zy/cloud/wms/manager/service/impl/QualityServiceImpl.java
@@ -8,8 +8,10 @@ @Service("qualityService") public class QualityServiceImpl extends ServiceImpl<QualityMapper, Quality> implements QualityService { @Override public String getCurrNum(String billNo) { return this.baseMapper.getCurrNum(billNo); } } src/main/java/zy/cloud/wms/manager/service/impl/ReceiveServiceImpl.java
@@ -51,8 +51,10 @@ page.setTotal(baseMapper.getPageCount(page.getCondition())); return page; } @Override public String getCurrNum(String orderNo) { return this.baseMapper.getCurrNum(orderNo); } } src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
@@ -21,7 +21,9 @@ import zy.cloud.wms.manager.entity.param.*; import zy.cloud.wms.manager.entity.result.StoPrintVo; import zy.cloud.wms.manager.service.*; import zy.cloud.wms.manager.utils.AddZero; import java.text.SimpleDateFormat; import java.util.*; /** @@ -588,22 +590,44 @@ } return R.ok("拣货单已取消"); } @Override @Transactional public R initReceive(InitOrderParam param, Long userId, Long hostId){ Receive order_no = receiveService.selectOne(new EntityWrapper<Receive>() .eq("order_no", param.getOrderNo())); if (order_no != null) { return R.error("抱歉单号已存在,请修改单号"); String orderNo = ""; if(!Cools.isEmpty(param.getOrderNo())) { Receive receive = receiveService.selectOne(new EntityWrapper<Receive>() .eq("order_no", param.getOrderNo())); if (receive != null) { return R.error("抱歉单号已存在,请修改单号"); } orderNo = param.getOrderNo(); } else { String sheetNo = "STO-" + new SimpleDateFormat("yyyyMMdd").format(new Date()) + "-"; String currNum = receiveService.getCurrNum(sheetNo); if (!Cools.isEmpty(currNum)) { String[] split = currNum.split("-"); if (split.length < 3) { orderNo = sheetNo + "0001"; } else { Integer newNum = Integer.parseInt(split[2]) + 1; String format = AddZero.addZeroForNum(newNum + "", 4); orderNo = sheetNo + format; } } else { orderNo = sheetNo + "0001"; } } Date now = new Date(); Item item = itemService.selectByName(param.getItem()); Cstmr cstmr = cstmrService.selectByName(param.getCstmr()); // 新增订单表头 order_no = new Receive( Receive order_no = new Receive( hostId, String.valueOf(snowflakeIdWorker.nextId()), // 编号[非空] param.getOrderNo(), // 订单编号 orderNo, // 订单编号 // param.getOrderNo(), // 订单编号 param.getOrderTime(), // 单据日期 param.getDocType(), // 单据类型 item==null?null:item.getId(), // 项目编号 @@ -651,7 +675,8 @@ ReceiveDetl receiveDetl = new ReceiveDetl(); receiveDetl.setHostId(hostId); receiveDetl.setOrderId(order_no.getId()); receiveDetl.setOrderNo(param.getOrderNo()); receiveDetl.setOrderNo(orderNo); // receiveDetl.setOrderNo(param.getOrderNo()); receiveDetl.setAnfme(dto.getCount()); receiveDetl.setCreateTime(now); receiveDetl.setCreateBy(userId); @@ -680,12 +705,30 @@ @Override @Transactional public R initOrder(InitOrderParam param, Long userId, Long hostId) { // Receive order_no = receiveService.selectOne(new EntityWrapper<Receive>() // .eq("order_no", param.getOrderNo())); Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId); if (order != null) { return R.error("抱歉单号已存在,请修改单号"); String orderNo = ""; if(!Cools.isEmpty(param.getOrderNo())) { Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId); if (order != null) { return R.error("抱歉单号已存在,请修改单号"); } orderNo = param.getOrderNo(); } else { String sheetNo = "ORD-" + new SimpleDateFormat("yyyyMMdd").format(new Date()) + "-"; String currNum = receiveService.getCurrNum(sheetNo); if (!Cools.isEmpty(currNum)) { String[] split = currNum.split("-"); if (split.length < 3) { orderNo = sheetNo + "0001"; } else { Integer newNum = Integer.parseInt(split[2]) + 1; String format = AddZero.addZeroForNum(newNum + "", 4); orderNo = sheetNo + format; } } else { orderNo = sheetNo + "0001"; } } Date now = new Date(); Item item = itemService.selectByName(param.getItem()); Cstmr cstmr = cstmrService.selectByName(param.getCstmr()); @@ -693,7 +736,7 @@ Order order1 = new Order(); order1.setUuid(String.valueOf(snowflakeIdWorker.nextId())); order1.setHostId(hostId); order1.setOrderNo(param.getOrderNo()); order1.setOrderNo(orderNo); order1.setOrderTime(param.getOrderTime()); order1.setDocType(param.getDocType()); order1.setItemId(item == null? null : item.getId()); src/main/resources/mapper/QualityMapper.xml
@@ -16,7 +16,9 @@ <result column="create_time" property="createTime" /> </resultMap> <select id="getCurrNum" resultType="java.lang.String"> SELECT top 1 bill_no FROM man_quality WHERE 1=1 AND bill_no like concat(#{billNo},'%') ORDER BY bill_no DESC </select> </mapper> src/main/webapp/static/js/quality/quality.js
@@ -234,12 +234,13 @@ layer.close(dIndex); layer.msg(res.msg, {icon: 1}); tableReload(); location.reload(); } else if (res.code === 403){ top.location.href = baseUrl+"/"; }else { layer.msg(res.msg, {icon: 2}); } location.reload(); // location.reload(); } }) return false; src/main/webapp/views/quality/quality.html
@@ -33,7 +33,7 @@ </div> <script type="text/html" id="toolbar"> <div class="layui-btn-container"> <button class="layui-btn layui-btn-sm" id="btn-add" layui-anim-down lay-event="addData">新增</button> <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button> <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">删除</button> <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button> </div> @@ -66,27 +66,27 @@ <div class="layui-row"> <div class="layui-col-md12"> <div class="layui-form-item"> <label class="layui-form-label layui-form-required">编号: </label> <label class="layui-form-label layui-form-required">入库单号: </label> <div class="layui-input-block"> <input class="layui-input" name="uuid" placeholder="请输入编号" lay-vertype="tips" lay-verify="required"> <input class="layui-input" name="uuid" placeholder="请输入入库单号" lay-vertype="tips" lay-verify="required"> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">检验单号: </label> <div class="layui-input-block"> <input class="layui-input layui-disabled" readonly name="billNo" id="billNo" placeholder="请输入检验单号" lay-verify="required"> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">审核状态: </label> <div class="layui-input-block"> <select name="auditStatus"> <option value="">请选择审核状态</option> <option value="1">已审</option> <option value="0">待审</option> </select> </div> </div> <!-- <div class="layui-form-item">--> <!-- <label class="layui-form-label">检验单号: </label>--> <!-- <div class="layui-input-block">--> <!-- <input class="layui-input" name="billNo" id="billNo" placeholder="请输入检验单号" >--> <!-- </div>--> <!-- </div>--> <!-- <div class="layui-form-item">--> <!-- <label class="layui-form-label">审核状态: </label>--> <!-- <div class="layui-input-block">--> <!-- <select name="auditStatus">--> <!-- <option value="">请选择审核状态</option>--> <!-- <option value="1">已审</option>--> <!-- <option value="0">待审</option>--> <!-- </select>--> <!-- </div>--> <!-- </div>--> <div class="layui-form-item"> <label class="layui-form-label">备注: </label> <div class="layui-input-block"> src/main/webapp/views/receive/matQuery.html
@@ -159,10 +159,10 @@ </select> </div> </div> <div class="layui-form-item"> <label class="layui-form-label layui-form-required">单据编号:</label> <div class="layui-form-item" style="display: none"> <label class="layui-form-label">单据编号:</label> <div class="layui-input-block"> <input id="orderNo" name="orderNo" placeholder="请输入单据编号" readonly class="layui-input layui-disabled" lay-verType="tips" lay-verify="required" autocomplete="off"> <input id="orderNo" name="orderNo" placeholder="请输入单据编号" class="layui-input" lay-verType="tips" autocomplete="off"> </div> </div> <div class="layui-form-item">