| | |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.R; |
| | | import com.zy.asrs.entity.InventoryCheckOrder; |
| | | import com.zy.asrs.entity.InventoryCheckOrderDetl; |
| | | import com.zy.asrs.entity.WrkDetl; |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.service.InventoryCheckOrderDetlService; |
| | | import com.zy.asrs.service.InventoryCheckOrderService; |
| | | import com.zy.asrs.service.WrkDetlService; |
| | | import com.zy.asrs.service.WrkMastService; |
| | | import com.zy.common.web.BaseController; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | |
| | | |
| | | @Autowired |
| | | private InventoryCheckOrderService inventoryCheckOrderService; |
| | | @Autowired |
| | | private InventoryCheckOrderDetlService inventoryCheckOrderDetlService; |
| | | @Autowired |
| | | private WrkMastService wrkMastService; |
| | | @Autowired |
| | | private WrkDetlService wrkDetlService; |
| | | |
| | | @RequestMapping("/inventoryCheckOrder/StockCheck/select/barcode") |
| | | @ManagerAuth() |
| | | public R StockCheckSelectBarcode(@RequestParam String barcode) { |
| | | if (Cools.isEmpty(barcode)) { |
| | | return R.ok(); |
| | | } |
| | | WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode)); |
| | | if (Cools.isEmpty(wrkMast)) { |
| | | return R.error("该条码未查询到盘点任务"); |
| | | } |
| | | ArrayList<InventoryCheckOrderDetl> checkOrderDetls = new ArrayList<>(); |
| | | List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo()); |
| | | for (WrkDetl wrkDetl : wrkDetls) { |
| | | InventoryCheckOrderDetl checkDetl = inventoryCheckOrderDetlService.selectOne(new EntityWrapper<InventoryCheckOrderDetl>() |
| | | .eq("order_no", wrkMast.getSheetNo()) |
| | | .eq("matnr", wrkDetl.getMatnr()) |
| | | .eq("batch", wrkDetl.getBatch())); |
| | | if (Cools.isEmpty(checkDetl)) { |
| | | continue; |
| | | } |
| | | checkOrderDetls.add(checkDetl); |
| | | |
| | | } |
| | | return R.ok(checkOrderDetls); |
| | | } |
| | | |
| | | @RequestMapping("/inventoryCheckOrder/select/status/1") |
| | | @ManagerAuth() |
| | |
| | | param.remove("modi_time"); |
| | | } |
| | | } |
| | | param.remove("curr"); |
| | | param.remove("limit"); |
| | | EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); |
| | | if (!Cools.isEmpty(param.get("crnNo"))) { |
| | | switch ((String) param.get("crnNo")) { |
| | | case "1": wrapper.le("SUBSTRING(loc_no, 1, 2)",4); |
| | | break; |
| | | case "2":wrapper.ge("SUBSTRING(loc_no, 1, 2)",5).le("SUBSTRING(loc_no, 1, 2)",8); |
| | | break; |
| | | case "3":wrapper.ge("SUBSTRING(loc_no, 1, 2)",9).le("SUBSTRING(loc_no, 1, 2)",12); |
| | | break; |
| | | case "4":wrapper.ge("SUBSTRING(loc_no, 1, 2)",13).le("SUBSTRING(loc_no, 1, 2)",16); |
| | | break; |
| | | case "5": |
| | | break; |
| | | case "6": |
| | | break; |
| | | case "7":wrapper.ge("SUBSTRING(loc_no, 1, 2)",17).le("SUBSTRING(loc_no, 1, 2)",37); |
| | | break; |
| | | case "8":wrapper.ge("SUBSTRING(loc_no, 1, 2)",38).le("SUBSTRING(loc_no, 1, 2)",45); |
| | | break; |
| | | case "9":wrapper.ge("SUBSTRING(loc_no, 1, 2)",46).le("SUBSTRING(loc_no, 1, 2)",53); |
| | | break; |
| | | default: |
| | | } |
| | | param.remove("crnNo"); |
| | | Page<LocDetl> stockOut = locDetlService.getStockOut(toPage(curr, limit, param, LocDetl.class)); |
| | | if (stockOut.getRecords().size()==0){ |
| | | stockOut = locDetlService.getStockOut(toPage(1, limit, param, LocDetl.class)); |
| | | } |
| | | convert(param, wrapper); |
| | | // 不同继承角色显示不同库信息 |
| | | RoleUtils.addRoleWrapperByLocNo(getUserId(),wrapper); |
| | | Page<LocDetl> locDetlPage = locDetlService.selectPage(new Page<>(curr, limit), wrapper); |
| | | if (locDetlPage.getRecords().size()==0){ |
| | | locDetlPage = locDetlService.selectPage(new Page<>(1, limit), wrapper); |
| | | } |
| | | return R.ok(locDetlPage); |
| | | return R.ok(stockOut); |
| | | } |
| | | |
| | | @RequestMapping(value = "/stock/out/crn/list/auth") |
| | |
| | | @Autowired |
| | | private CommonService commonService; |
| | | |
| | | |
| | | // @PostMapping("/agv/start") |
| | | // @ManagerAuth |
| | | // public R pdaStockCheck(@RequestBody StockCheckParam param){ |
| | | // |
| | | // |
| | | // |
| | | // } |
| | | |
| | | |
| | | @PostMapping("/agv/start") |
| | | @ManagerAuth |
| | | public R pdaAgvStart(@RequestBody Map<String,Object> map){ |
New file |
| | |
| | | package com.zy.asrs.entity.param; |
| | | |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | |
| | | @Data |
| | | public class StockCheckParam { |
| | | |
| | | // 托盘条码 |
| | | private String barcode; |
| | | |
| | | private List<CombMat> combMats; |
| | | |
| | | @Data |
| | | public static class CombMat { |
| | | |
| | | // 物料编号 |
| | | private String matnr; |
| | | |
| | | // 序列码 |
| | | private String batch; |
| | | |
| | | // 物料数量 |
| | | private Double anfme; |
| | | |
| | | // 商品名称 |
| | | private String maktx; |
| | | |
| | | // 规格 |
| | | private String specs; |
| | | |
| | | private Double checkAnfme; |
| | | |
| | | } |
| | | } |
| | |
| | | orderDetl.setSuppCode(detlDto.getFromOrderNo()); |
| | | orderDetl.setMemo(detlDto.getMemo()); |
| | | orderDetl.setManu(detlDto.getMark()); |
| | | orderDetl.setSupp(detlDto.getCustomer()); |
| | | if (!orderDetlService.insert(orderDetl)) { |
| | | throw new CoolException("生成单据明细失败,请联系管理员"); |
| | | } |
| | |
| | | orderDetl.setSuppCode(detlDto.getFromOrderNo()); |
| | | orderDetl.setMemo(detlDto.getMemo()); |
| | | orderDetl.setManu(detlDto.getMark()); |
| | | orderDetl.setSupp(detlDto.getCustomer()); |
| | | if (!orderDetlService.insert(orderDetl)) { |
| | | throw new CoolException("生成单据明细失败,请联系管理员"); |
| | | } |
| | |
| | | private String fromOrderNo; //来源单号 |
| | | private String memo; //备注 |
| | | private String mark; |
| | | private String customer; |
| | | |
| | | public DetlDto() { |
| | | } |
| | |
| | | cellMinWidth: 100, |
| | | cols: [[ |
| | | {type: 'numbers'}, |
| | | {field: 'orderNo', title: '单据编号', templet: '#orderNoTpl'}, |
| | | {field: 'docType$', align: 'center', title: '类型', minWidth: 160, width: 160}, |
| | | {align: 'center', title: '明细', toolbar: '#tbLook', minWidth: 160, width: 160}, |
| | | {field: 'createTime$', title: '创建时间', minWidth: 200, width: 200}, |
| | | {field: 'orderNo', title: '单据编号', templet: '#orderNoTpl',minWidth: 200}, |
| | | {field: 'docType$', align: 'center', title: '类型'}, |
| | | {align: 'center', title: '明细', toolbar: '#tbLook'}, |
| | | {field: 'createTime$', title: '创建时间'}, |
| | | {field: 'settle$', align: 'center', title: '状态', templet: '#settleTpl', minWidth: 160, width: 160}, |
| | | {field: 'shipName', align: 'center',title: '制单人'}, |
| | | {field: 'itemName', align: 'center',title: '仓库'}, |
| | | {field: 'memo', align: 'center',title: '备注', hide: true}, |
| | | {align: 'center', title: '操作', toolbar: '#operate', width: 180} |
| | | {align: 'center', title: '操作', toolbar: '#operate'} |
| | | ]], |
| | | request: { |
| | | pageName: 'curr', |
| | |
| | | var templateDom = $("#templatePreview1"); |
| | | var className = templateDom.attr("class"); |
| | | var param = "编码:"+data.matnr+";名称:"+data.maktx+";批次:"+data.batch+";规格:"+data.specs |
| | | +";单位:"+data.unit+";数量:"+data.anfme+";客户名称:"+data.cstmrName; |
| | | +";单位:"+data.unit+";数量:"+data.anfme+";销售单号:"+data.suppCode+";客户名称:"+data.supp; |
| | | var encodeUrl = encodeURIComponent(param); |
| | | data["barcodeUrl"]=baseUrl+"/mac/code/auth?type=2¶m="+encodeUrl; |
| | | console.log(data["barcodeUrl"]); |
| | |
| | | var locDetlData = []; |
| | | function getCol() { |
| | | var cols = [ |
| | | {field: 'locNo', align: 'center',title: '库位号', merge: true, style: 'font-weight: bold'} |
| | | {field: 'locNo', align: 'center',title: '库位号', style: 'font-weight: bold'} |
| | | ]; |
| | | cols.push.apply(cols, detlCols); |
| | | return cols; |
| | |
| | | 数量:{{anfme}} |
| | | </div> |
| | | <div style="font-size: 12px;"> |
| | | 客户名称:{{cstmrName}} |
| | | 销售单号:{{suppCode}} |
| | | </div> |
| | | <div style="font-size: 12px;"> |
| | | 客户名称:{{supp}} |
| | | </div> |
| | | </div> |
| | | {{/each}} |
| | |
| | | |
| | | function getCol() { |
| | | var cols = [ |
| | | {type: 'checkbox', merge: ['locNo']} |
| | | {type: 'checkbox'} |
| | | ,{field: 'locNo', align: 'center',title: '库位号', merge: true, style: 'font-weight: bold'} |
| | | // ,{field: 'locNo$', align: 'center',title: '库位号'} |
| | | ]; |