自动化立体仓库 - WMS系统
#
LSH
2022-08-13 30eec1f6c7424fa5864b7f04abc55683071133e7
#
1个文件已添加
14个文件已修改
489 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/MobileController.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OpenController.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/LocMast.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/param/Review.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/MobileService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/OpenService.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java 124 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/LocMastMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/common.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/locMast/locMast.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/stoMan/stoQue.js 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/locMast/locMast_detail.html 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -1,11 +1,13 @@
package com.zy.asrs.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.BaseRes;
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.common.R;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
@@ -13,12 +15,16 @@
import com.zy.asrs.entity.param.MobileAdjustParam;
import com.zy.asrs.entity.result.MobileAdjustResult;
import com.zy.asrs.service.*;
import com.zy.asrs.task.handler.WorkLogHandler;
import com.zy.common.constant.MesConstant;
import com.zy.common.model.LocDto;
import com.zy.common.model.TaskDto;
import com.zy.common.model.WrkDto;
import com.zy.common.utils.HttpHandler;
import com.zy.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import org.springframework.web.bind.annotation.*;
import java.util.*;
@@ -318,4 +324,26 @@
        return R.ok("出库成功");
    }
    /*...........................赣州新增..............以下.............赣州新增...........................*/
    @PostMapping("/test/startUp/auth")
//    @ManagerAuth(memo = "申请PACK测试")
    public synchronized R startUpTestPACK(@RequestBody TestMast testMast) {
        if (Cools.isEmpty(testMast)) {
            return R.parse(BaseRes.PARAM);
        }
        //提交测试系统
        mobileService.startUpTestPACK(testMast);
        return R.ok();
    }
    @PostMapping("/test/suspend/auth")
    @ManagerAuth(memo = "暂停测试")
    public synchronized R suspendTestPACK() {
        mobileService.suspendTestPACK();
        return R.ok();
    }
    /*...........................赣州新增..............以上.............赣州新增...........................*/
}
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -4,6 +4,7 @@
import com.core.annotations.AppAuth;
import com.core.common.*;
import com.core.exception.CoolException;
import com.zy.asrs.entity.TestMast;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.service.OpenService;
import com.zy.common.model.DetlDto;
@@ -44,40 +45,6 @@
        return R.ok();
    }
    @PostMapping("/rpc/watchDog/auth/v1")
    @AppAuth(memo = "心跳接口调用")
    public synchronized R hostName(@RequestHeader(required = false) String appkey,
                               @RequestBody(required = false) HeartBeat param,
                               HttpServletRequest request){
        auth(appkey, param, request);
        if (Cools.isEmpty(param)) {
            return R.parse(BaseRes.PARAM);
        }
        //........
        System.out.println(String.format("id:%s,hostName:%s,requestTime:%s",
                param.getId(),param.getHostName(),param.getRequestTime()));
        return R.ok();
    }
    @PostMapping("/rcp/pakIn/auth/v1")
    @AppAuth(memo = "入库通知单接口调用")
    public synchronized R combPack(@RequestHeader(required = false) String appkey,
                                   @RequestBody(required = false) CombParam param,
                                   HttpServletRequest request){
        auth(appkey, param, request);
        if (Cools.isEmpty(param)) {
            return R.parse(BaseRes.PARAM);
        }
        //生成入库通知档
        openService.combPACK(param);
        Map<String,Boolean> map=new HashMap<>();
        map.put("isComplete",true);
        System.out.println(map);
        return R.ok(map);
    }
    /****************************************************************************/
    /********************************* 打包上线 **********************************/
    /****************************************************************************/
@@ -236,4 +203,56 @@
        System.out.println(JSON.toJSONString(param1));
    }
    /*...........................赣州新增..............以下.............赣州新增...........................*/
    @PostMapping("/rpc/watchDog/auth/v1")
    @AppAuth(memo = "心跳接口调用")
    public synchronized R hostName(@RequestHeader(required = false) String appkey,
                                   @RequestBody(required = false) HeartBeat param,
                                   HttpServletRequest request){
        auth(appkey, param, request);
        if (Cools.isEmpty(param)) {
            return R.parse(BaseRes.PARAM);
        }
        //........
        System.out.println(String.format("id:%s,hostName:%s,requestTime:%s",
                param.getId(),param.getHostName(),param.getRequestTime()));
        return R.ok();
    }
    @PostMapping("/rcp/pakIn/auth/v1")
    @AppAuth(memo = "入库通知单接口调用")
    public synchronized R combPack(@RequestHeader(required = false) String appkey,
                                   @RequestBody(required = false) CombParam param,
                                   HttpServletRequest request){
        auth(appkey, param, request);
        if (Cools.isEmpty(param)) {
            return R.parse(BaseRes.PARAM);
        }
        //生成入库通知档
        openService.combPACK(param);
        Map<String,Boolean> map=new HashMap<>();
        map.put("isComplete",true);
        return R.ok(map);
    }
    @PostMapping("/rpv/infoReview/auth/v1")
    @AppAuth(memo = "测试条码信息复核请求")
    public synchronized R infoReview(@RequestHeader(required = false) String appkey,
                                   @RequestBody(required = false) Review param,
                                   HttpServletRequest request){
        auth(appkey, param, request);
        if (Cools.isEmpty(param)) {
            return R.parse(BaseRes.PARAM);
        }
        openService.infoReview(param);
        return R.ok();
    }
    /*...........................赣州新增..............以上.............赣州新增...........................*/
}
src/main/java/com/zy/asrs/entity/LocMast.java
@@ -176,6 +176,21 @@
    @TableField("ctn_no")
    private String ctnNo;
//    消防点编号
    @ApiModelProperty(value= "")
    @TableField("fire_no")
    private String fireNo;
//    消防状态{0:正常,1:报警}
    @ApiModelProperty(value= "")
    @TableField("fire_status")
    private Integer fireStatus;
//    产品状态{0:无,1:待测,2:测试中;3.静置中;4:静置完成}
    @ApiModelProperty(value= "")
    @TableField("pack_status")
    private Integer packStatus;
    public String getWhsType$(){
        BasWhsService service = SpringUtils.getBean(BasWhsService.class);
@@ -290,4 +305,34 @@
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.errorTime);
    }
    public String getFireStatus$() {
        if (null == this.fireStatus){ return null; }
        switch (this.fireStatus){
            case 0:
                return "正常";
            case 1:
                return "报警";
            default:
                return String.valueOf(this.fireStatus);
        }
    }
    public String getPackStatus$() {
        if (null == this.packStatus){ return null; }
        switch (this.packStatus){
            case 0:
                return "无";
            case 1:
                return "待测";
            case 2:
                return "测试中";
            case 3:
                return "静置中";
            case 4:
                return "静置完成";
            default:
                return String.valueOf(this.packStatus);
        }
    }
}
src/main/java/com/zy/asrs/entity/param/Review.java
New file
@@ -0,0 +1,17 @@
package com.zy.asrs.entity.param;
import lombok.Data;
@Data
public class Review {
//    库位号
    private String locNo;
//    用户码
    private String userId;
//    PACK条码
    private String barcode;
//    请求时间, yyyy-MM-dd HH:mm:ss
    private String requestTime;
    private Boolean pause;
}
src/main/java/com/zy/asrs/service/MobileService.java
@@ -4,6 +4,7 @@
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.entity.TestMast;
import com.zy.asrs.entity.param.CombParam;
import com.zy.asrs.entity.param.MobileAdjustParam;
@@ -32,4 +33,9 @@
    void stockOut(OrderDetl orderDetl, BasDevp staNo, LocDetl locDetl,
                  Double curOutQty, Integer ioType, Long userId, Date now);
    //pda申请测试调用
    void startUpTestPACK(TestMast testMast);
    //暂停测试
    void suspendTestPACK();
}
src/main/java/com/zy/asrs/service/OpenService.java
@@ -1,17 +1,14 @@
package com.zy.asrs.service;
import com.zy.asrs.entity.TestMast;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.entity.result.OpenOrderCompeteResult;
import com.zy.asrs.entity.result.StockVo;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
public interface OpenService {
    /**
     * 添加入库通知档
     */
    void combPACK(CombParam param);
    /**
     * 添加入库单
@@ -48,4 +45,14 @@
     * @param param
     */
    void syncMat(MatSyncParam param);
    /**
     * 添加入库通知档
     */
    void combPACK(CombParam param);
    /**
     * pda测试复核调用接口
     */
    void infoReview(Review review);
}
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -4,6 +4,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.*;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
@@ -11,6 +12,8 @@
import com.zy.asrs.entity.param.MobileAdjustParam;
import com.zy.asrs.entity.param.OpenOrderPakinParam;
import com.zy.asrs.service.*;
import com.zy.asrs.task.core.ReturnT;
import com.zy.asrs.task.handler.WorkLogHandler;
import com.zy.asrs.utils.MatUtils;
import com.zy.common.CodeRes;
import com.zy.common.constant.MesConstant;
@@ -23,6 +26,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.ArrayList;
import java.util.Date;
@@ -73,6 +78,10 @@
    private NodeService nodeService;
    @Autowired
    private ManLocDetlService manLocDetlService;
    @Autowired
    private TestMastService testMastService;
    @Autowired
    private WorkLogHandler workLogHandler;
    @Override
@@ -592,4 +601,47 @@
            throw new CoolException(locDetl.getLocNo() + "库位不是在库状态");
        }
    }
    /*...........................赣州新增..............以下.............赣州新增...........................*/
    @Override
    @Transactional
    public void startUpTestPACK(TestMast testMast) {
        //启动测试请求
        ReturnT<String> result=workLogHandler.startUpTestPACK(testMast);
        if (!result.isSuccess()) {
            log.error("测试申请失败", testMast.getBarcode());
        }
        LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", testMast.getLocNo()));
        if (Cools.isEmpty(locMast)) {
            throw new CoolException(BaseRes.PARAM);
        }
        Date date1;
        try {
            date1 = new Date();
        }catch (Exception e){
            throw new CoolException("获取时间失败");
        }
        testMast.setChannel(1);
        testMast.setStatus(1);
        testMast.setModiTime(date1);
        testMast.setAppeTime(date1);
        if (!testMastService.insert(testMast)){
            throw new CoolException("添加testMast失败");
        }
        locMast.setPackStatus(2);
        locMast.setModiTime(date1);
        if (!locMastService.update(locMast,new EntityWrapper<LocMast>().eq("loc_no", testMast.getLocNo()))){
            throw new CoolException("申请测试失败");
        }
    }
    @Override
    @Transactional
    public void suspendTestPACK() {
        ReturnT<String> result=workLogHandler.suspendTestPACK();
        if (!result.isSuccess()) {
            log.error("测试申请失败");
        }
    }
    /*...........................赣州新增..............以上.............赣州新增...........................*/
}
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -1,6 +1,7 @@
package com.zy.asrs.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.core.common.BaseRes;
import com.core.common.Cools;
import com.core.common.DateUtils;
@@ -20,6 +21,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.tools.JavaCompiler;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
@@ -55,6 +57,10 @@
    private WaitPakinService waitPakinService;
    @Autowired
    private WrkDetlService wrkDetlService;
    @Autowired
    private TestMastService testMastService;
    @Autowired
    private LocMastService locMastService;
    @Override
    @Transactional
@@ -551,6 +557,7 @@
    }
    /*...........................赣州新增..............以下.............赣州新增...........................*/
    @Override
    @Transactional
    public void combPACK(CombParam param) {
@@ -570,13 +577,13 @@
        }
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        java.util.Date date=null;
        java.util.Date date1=null;
        try {
            date= sdf.parse(param.getRequestTime());
            date1= sdf.parse(param.getRequestTime());
        } catch (ParseException e) {
            e.printStackTrace();
        }
        java.sql.Date requestTime = new java.sql.Date(date.getTime());
        java.sql.Date requestTime = new java.sql.Date(date1.getTime());
        // 生成入库通知档
        Mat mat = matService.selectByMatnr(param.getPackName());
@@ -598,4 +605,32 @@
        }
    }
    @Override
    @Transactional
    public void infoReview(Review review) {
        Wrapper wrapper = new EntityWrapper<TestMast>()
                .eq("loc_no", review.getLocNo());
        LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", review.getLocNo()));
        if (locMast.getPackStatus()!=1){
            throw new CoolException("产品状态不是 1:待测试");
        }
        TestMast testMast = testMastService.selectOne(wrapper);
        if(null != testMast){
            if (testMast.getStatus()==1){
                testMast.setStatus(2);
                testMast.setModiTime(new Date());
                if (!testMastService.update(testMast,wrapper)){
                }
            }else if (Cools.isEmpty(testMast.getStatus())){
                throw new CoolException("状态异常");
            }else {
                throw new CoolException("状态不是 1:申请中");
            }
        } else {
            throw new CoolException("测试申请失败");
        }
    }
    /*...........................赣州新增..............以上.............赣州新增...........................*/
}
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -6,12 +6,11 @@
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.exception.CoolException;
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.WaitPakin;
import com.zy.asrs.entity.WrkDetl;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.CombParam;
import com.zy.asrs.entity.param.Review;
import com.zy.asrs.service.*;
import com.zy.asrs.service.impl.MobileServiceImpl;
import com.zy.asrs.task.AbstractHandler;
import com.zy.asrs.task.core.ReturnT;
import com.zy.common.constant.MesConstant;
@@ -52,6 +51,10 @@
    private OrderService orderService;
    @Autowired
    private ApiLogService apiLogService;
    @Autowired
    private LocMastService locMastService;
    private MobileServiceImpl mobileService;
    @Value("${mes.url}")
    private String mesUrl;
@@ -62,18 +65,55 @@
    @Value("${mes.outPath}")
    private String outPath;
    @Value("${mes.startUpTestPACK}")
    private String startUpTestPACK;
    @Transactional
    public ReturnT<String> start(WrkMast wrkMast) {
        try {
//            ReturnT<String> result = null;
//            if (wrkMast.getWrkSts() == 5 && wrkMast.getIoType() == 1) {
//                result = postMesData(wrkMast,inpath,1);
//            } else if (wrkMast.getWrkSts() == 15 && wrkMast.getIoType() == 101){
//                result = postMesData(wrkMast,outPath,2);
//            }
//            if(null != result && !result.isSuccess()){
//                return result;
//            }
            /*...........................赣州新增..............以下.............赣州新增...........................*/
            ReturnT<String> result = null;
            if (wrkMast.getWrkSts() == 5 && wrkMast.getIoType() == 1) {
                LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo()));
                locMast.setFireStatus(0);
                locMast.setPackStatus(1);
                if (!locMastService.update(locMast,new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getLocNo()))){
                    throw new CoolException("消防状态/产品状态更新失败");
                }
                WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
                if(wrkDetl != null){
                    CombParam combParam = new CombParam();
                    combParam.setPackNo(wrkDetl.getZpallet());
                    combParam.setPackName(wrkDetl.getMatnr());
                    combParam.setLocno(wrkMast.getLocNo());
                    combParam.setPackSts(1);
                    combParam.setRequestTime(DateUtils.convert(new Date()));
                    result = postMesData(inpath,1,combParam);
                }
            } else if (wrkMast.getWrkSts() == 15 && wrkMast.getIoType() == 101){
                LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo()));
                locMast.setFireStatus(0);
                locMast.setPackStatus(0);
                if (!locMastService.update(locMast,new EntityWrapper<LocMast>().eq("loc_no", wrkMast.getSourceLocNo()))){
                    throw new CoolException("消防状态/产品状态更新失败");
                }
                WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
                if(wrkDetl != null){
                    CombParam combParam = new CombParam();
                    combParam.setPackNo(wrkDetl.getZpallet());
                    combParam.setPackName(wrkDetl.getMatnr());
                    combParam.setLocno(wrkMast.getLocNo());
                    combParam.setPackSts(1);
                    combParam.setRequestTime(DateUtils.convert(new Date()));
                    result = postMesData(outPath,2,combParam);
                }
            }
            if(null != result && !result.isSuccess()){
                return result;
            }
            /*...........................赣州新增..............以上.............赣州新增...........................*/
            // 保存工作主档历史档
            if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
@@ -100,15 +140,10 @@
        return SUCCESS;
    }
    private ReturnT<String> postMesData(WrkMast wrkMast, String mesPath,int a){
        WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
        if(wrkDetl != null){
            CombParam combParam = new CombParam();
            combParam.setPackNo(wrkDetl.getZpallet());
            combParam.setPackName(wrkDetl.getMatnr());
            combParam.setLocno(wrkMast.getLocNo());
            combParam.setPackSts(1);
            combParam.setRequestTime(DateUtils.convert(new Date()));
    /*...........................赣州新增..............以下.............赣州新增...........................*/
    private ReturnT<String> postMesData(String mesPath,int a,Object combParam){
        if(combParam != null){
            String response = "";
            boolean success = false;
            try {
@@ -120,7 +155,18 @@
                        .doPost();
                JSONObject jsonObject = JSON.parseObject(response);
                if (jsonObject.getInteger("code").equals(200)) {
                    success = true;
                    if (a==4 && a==3){
                        if (jsonObject.getDate("isComplete").equals(true)){
                            success = true;
                        }else if (jsonObject.getDate("isComplete").equals(false)){
                            success = false;
                        }else {
                            log.error("返回值出错!!!url:{};request:{};response:{}", MesConstant.URL+MesConstant.PAKIN_URL, JSON.toJSONString(combParam), response);
                            throw new CoolException("返回值出错");
                        }
                    }else {
                        success = true;
                    }
                } else {
                    log.error("请求接口失败!!!url:{};request:{};response:{}", MesConstant.URL+MesConstant.PAKIN_URL, JSON.toJSONString(combParam), response);
                    throw new CoolException("上报mes系统失败");
@@ -146,4 +192,36 @@
        }
        return SUCCESS;
    }
    @Transactional
    public ReturnT<String> startUpTestPACK(TestMast testMast){
        try {
            CombParam combParam = new CombParam();
            combParam.setPackNo(testMast.getLocNo());
            combParam.setPackName(testMast.getUserId());
            combParam.setLocno(testMast.getBarcode());
            combParam.setRequestTime(DateUtils.convert(new Date()));
            return postMesData(outPath,3,combParam);
        }catch (Exception e) {
            log.error("fail", e);
            e.printStackTrace();
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
            return FAIL.setMsg(e.getMessage());
        }
    }
    @Transactional
    public ReturnT<String> suspendTestPACK(){
        try {
            Review review=new Review();
            review.setPause(true);
            review.setRequestTime(DateUtils.convert(new Date()));
            return postMesData(outPath,4,review);
        }catch (Exception e) {
            log.error("fail", e);
            e.printStackTrace();
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
            return FAIL.setMsg(e.getMessage());
        }
    }
    /*...........................赣州新增..............以上.............赣州新增...........................*/
}
src/main/resources/application.yml
@@ -52,5 +52,11 @@
mes:
  url: 127.0.0.1:8080/test
  # 入库上报
  inPath: mesin/v1
  outPath: mesin/v1
  # 出库上报
  outPath: mesin/v1
  # 启动测试请求
  startUpTestPACK: mesin/v1
  #暂停测试
  suspendTestPACK: mesin/v1
src/main/resources/mapper/LocMastMapper.xml
@@ -34,6 +34,9 @@
        <result column="mk" property="mk" />
        <result column="barcode" property="barcode" />
        <result column="ctn_no" property="ctnNo" />
        <result column="fire_no" property="fireNo" />
        <result column="fire_status" property="fireStatus" />
        <result column="pack_status" property="packStatus" />
    </resultMap>
src/main/webapp/static/js/common.js
@@ -227,7 +227,7 @@
    ,{field: 'orderNo', align: 'center',title: '单据编号', hide: true}
    ,{field: 'batch', align: 'center',title: '批号', sort:true}
    ,{field: 'anfme', align: 'center',title: '数量'}
    ,{field: 'zpallet', align: 'center',title: '托盘条码'}
    ,{field: 'zpallet', align: 'center',title: 'PACK码'}
    ,{field: 'specs', align: 'center',title: '配置'}
    ,{field: 'model', align: 'center',title: '代码', hide: false}
src/main/webapp/static/js/locMast/locMast.js
@@ -23,6 +23,8 @@
//            ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80}
            ,{field: 'locNo', align: 'center',title: '库位号',sort:true}
            ,{field: 'locSts$', align: 'center',title: '库位状态',width:200}
            ,{field: 'fireStatus$', align: 'center',title: '消防状态', hide:false}
            ,{field: 'packStatus$', align: 'center',title: '产品状态', hide:false}
            // ,{field: 'whsType$', align: 'center',title: '库位类型'}
            // ,{field: 'pltType', align: 'center',title: ''}
            // ,{field: 'ctnType', align: 'center',title: ''}
@@ -32,12 +34,12 @@
            ,{field: 'row1', align: 'center',title: '排', sort:true}
            ,{field: 'bay1', align: 'center',title: '列', sort:true}
            ,{field: 'lev1', align: 'center',title: '层', sort:true}
            ,{field: 'fullPlt', align: 'center',title: '满板', templet:function(row){
                    var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' disabled table-index='"+row.LAY_TABLE_INDEX+"'";
                    if(row.fullPlt === 'Y'){html += " checked ";}
                    html += ">";
                    return html;
                },width:80}
            // ,{field: 'fullPlt', align: 'center',title: '满板', templet:function(row){
            //         var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' disabled table-index='"+row.LAY_TABLE_INDEX+"'";
            //         if(row.fullPlt === 'Y'){html += " checked ";}
            //         html += ">";
            //         return html;
            //     },width:80}
            // ,{field: 'outEnable', align: 'center',title: ''}
            // ,{field: 'ioTime$', align: 'center',title: ''}
            // ,{field: 'firstTime$', align: 'center',title: ''}
@@ -54,7 +56,7 @@
            // ,{field: 'barcode', align: 'center',title: ''}
            // ,{field: 'PdcType', align: 'center',title: ''}
            // ,{field: 'ctnNo', align: 'center',title: ''}
            ,{field: 'locType1$', align: 'center',title: '高低类型'}
            // ,{field: 'locType1$', align: 'center',title: '高低类型'}
            // ,{field: 'locType2$', align: 'center',title: '宽窄类型'}
            // ,{field: 'locType3$', align: 'center',title: '轻重类型'}
@@ -459,7 +461,9 @@
            barcode: $('#barcode').val(),
            PdcType: $('#PdcType').val(),
            ctnNo: $('#ctnNo').val(),
            fireNo: $('#fireNo').val(),
            fireStatus: $('#fireStatus').val(),
            packStatus: $('#packStatus').val(),
        };
        $.ajax({
            url: baseUrl+"/locMast/"+name+"/auth",
src/main/webapp/static/js/stoMan/stoQue.js
@@ -28,18 +28,20 @@
            {type: 'checkbox'}
            ,{field: 'locNo', align: 'center',title: '库位号'}
            ,{field: 'locSts$', align: 'center',title: '库位状态', width: 180, style: 'color: #8E2323'}
            ,{field: 'fireStatus$', align: 'center',title: '消防状态', width: 90, style: 'color: #8E2323'}
            ,{field: 'packStatus$', align: 'center',title: '产品状态', width: 90, style: 'color: #8E2323'}
            // ,{field: 'whsType$', align: 'center',title: '库位类型'}
            ,{field: 'crnNo', align: 'center',title: '堆垛机号'}
            ,{field: 'row1', align: 'center',title: '排'}
            ,{field: 'bay1', align: 'center',title: '列'}
            ,{field: 'lev1', align: 'center',title: '层'}
            ,{field: 'fullPlt', align: 'center',title: '满板', templet:function(row){
                    var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'";
                    if(row.fullPlt === 'Y'){html += " checked ";}
                    html += "disabled='disabled' >";
                    return html;
                },width:80}
            ,{field: 'barcode', align: 'center',title: '条码号'}
            // ,{field: 'fullPlt', align: 'center',title: '满板', templet:function(row){
            //         var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'";
            //         if(row.fullPlt === 'Y'){html += " checked ";}
            //         html += "disabled='disabled' >";
            //         return html;
            //     },width:80}
            ,{field: 'barcode', align: 'center',title: 'PACK码'}
            ,{field: 'modiUser$', align: 'center',title: '修改人员'}
            ,{field: 'modiTime$', align: 'center',title: '修改时间', width: 180}
            ,{ fixed: 'right', title:'操作', align: 'center', toolbar: '#operate'}
src/main/webapp/views/locMast/locMast_detail.html
@@ -71,6 +71,29 @@
                </div>
            </div>
        </div>
        <div class="layui-inline"  style="width:80%;">
            <label class="layui-form-label"><span class="not-null">*</span>消防报警状态:</label>
            <div class="layui-input-inline">
                <select id="fireStatus" class="layui-input" type="text">
<!--                    <option style="display: none"></option>-->
                    <option value="0">正常</option>
                    <option value="1">报警</option>
                </select>
            </div>
        </div>
        <div class="layui-inline"  style="width:80%;">
            <label class="layui-form-label"><span class="not-null">*</span>测试状态:</label>
            <div class="layui-input-inline">
                <select id="packStatus" class="layui-input" type="text">
<!--                    <option style="display: none"></option>-->
                    <option value="0">无</option>
                    <option value="1">待测</option>
                    <option value="2">测试中</option>
                    <option value="3">静置中</option>
                    <option value="4">静置完成</option>
                </select>
            </div>
        </div>
        <div class="layui-inline"  style="width:31%;display: none">
            <label class="layui-form-label">:</label>
            <div class="layui-input-inline">