ZY
2024-09-23 82e3d32282cd6bc07e36564306fe5c35fdfb89da
bug修改,初步完成
39个文件已修改
2个文件已添加
591 ■■■■ 已修改文件
zy-asrs-common/src/main/java/com/zy/asrs/common/domain/entity/SafeStoExcel.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/java/com/zy/asrs/common/utils/SafeStoExcelListener.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/LocDetl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/Mat.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/WaitPakin.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/resources/mapper/wms/ViewInOutMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/resources/mapper/wms/ViewWorkInMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/AdjDetlController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocMastController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MatController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/PriorController.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WaitPakinController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WaitPakinLogController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkDetlController.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkDetlLogController.java 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkMastController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkMastLogController.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/common.js 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/errorWrkMast/errorWrkMast.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/locDetl/locDetl.js 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/matCode/matCode.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/node/node.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/safeSto/safeSto.js 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/waitPakin/waitPakin.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/wrkMast/wrkMast.js 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/static/js/wrkMastLog/wrkMastLog.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/locDetl/locDetl.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/locDetlStatis/locDetlStatis.html 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/matCode/matCode.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/orderDetl/orderDetl.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/pakStore/matQuery.html 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/prior/prior.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/safeSto/safeSto.html 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/waitPakin/waitPakin.html 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/waitPakinLog/waitPakinLog.html 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/wrkDetl/wrkDetl.html 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/wrkMast/wrkMast.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wms/src/main/webapp/views/wrkMastLog/wrkMastLog.html 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-common/src/main/java/com/zy/asrs/common/domain/entity/SafeStoExcel.java
New file
@@ -0,0 +1,30 @@
package com.zy.asrs.common.domain.entity;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.zy.asrs.common.wms.entity.Mat;
import lombok.Data;
/**
 * 0.A 1.B 2.C 3.D 4.E 5.F 6.G 7.H 8.I
 * 9.J 10.K 11.L 12.M 13.N 14.O 15.P 16.Q 17.R 18.S
 * 19.T 20.U 21.V 22.W 23.X 24.Y 25.Z
 */
@Data
@ExcelIgnoreUnannotated
public class SafeStoExcel extends Mat {
    @ExcelProperty(index = 0, value = "商品编号")
    private String matnr;
    @ExcelProperty(index = 1, value = "库位号")
    private String locNo;
    @ExcelProperty(index = 2, value = "安全库存")
    private Double safeQua;
    @ExcelProperty(index = 3, value = "备注")
    private String memo;
}
zy-asrs-common/src/main/java/com/zy/asrs/common/utils/SafeStoExcelListener.java
New file
@@ -0,0 +1,97 @@
package com.zy.asrs.common.utils;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.asrs.common.domain.entity.SafeStoExcel;
import com.zy.asrs.common.wms.entity.Mat;
import com.zy.asrs.common.wms.entity.Prior;
import com.zy.asrs.common.wms.service.MatService;
import com.zy.asrs.common.wms.service.PriorService;
import com.zy.asrs.framework.common.SnowflakeIdWorker;
import com.zy.asrs.framework.common.SpringUtils;
import com.zy.asrs.framework.exception.CoolException;
import lombok.extern.slf4j.Slf4j;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
 * Created by vincent on 2019-11-25
 */
@Slf4j
public class SafeStoExcelListener extends AnalysisEventListener<SafeStoExcel> {
    private int total = 0;
    private Long userId;
    private Long hostId;
    public SafeStoExcelListener() {
    }
    public SafeStoExcelListener(Long userId, Long hostId) {
        this.userId = userId;
        this.hostId = hostId;
    }
    /**
     * 每隔5条存储数据库,实际使用中可以3000条,然后清理list ,方便内存回收
     */
    private static final int BATCH_COUNT = 50;
    private final List<SafeStoExcel> list = new ArrayList<>();
    /**
     * 这里会一行行的返回头
     */
    @Override
    public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
    }
    /**
     * 这个每一条数据解析都会来调用
     */
    @Override
    public void invoke(SafeStoExcel excel, AnalysisContext ctx) {
        MatService matService = SpringUtils.getBean(MatService.class);
        PriorService priorService = SpringUtils.getBean(PriorService.class);
        SnowflakeIdWorker snowflakeIdWorker = SpringUtils.getBean(SnowflakeIdWorker.class);
        Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, excel.getMatnr()).eq(Mat::getHostId, hostId));
        if (mat != null) {
            Prior prior = new Prior();
            prior.setHostId(hostId);
            prior.setUuid("SP" + snowflakeIdWorker.nextId());
            prior.setMatId(mat.getId());
            prior.setMatnr(mat.getMatnr());
            prior.setMaktx(mat.getMaktx());
            prior.setLocNo(excel.getLocNo());
            prior.setSafeQua(excel.getSafeQua());
            prior.setCreateBy(userId);
            prior.setCreateTime(new Date());
            prior.setUpdateBy(userId);
            prior.setUpdateTime(new Date());
            prior.setStatus(1);
            prior.setMemo(excel.getMemo());
            if (!priorService.save(prior)) {
                throw new CoolException("数据保存失败");
            } else {
                total++;
            }
        }
    }
    /**
     * 所有数据解析完成了调用
     * 适合事务
     */
    @Override
    public void doAfterAllAnalysed(AnalysisContext ctx) {
        log.info("新增{}条安全库存信息!", total);
    }
    public int getTotal() {
        return total;
    }
}
zy-asrs-common/src/main/java/com/zy/asrs/common/web/BaseController.java
@@ -1,7 +1,6 @@
package com.zy.asrs.common.web;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -82,6 +81,7 @@
    /**
     * 分页组装
     *
     * @param pageNumber
     * @param pageSize
     * @param map
@@ -101,9 +101,7 @@
        if (!Cools.isEmpty(map.get("condition"))) {
            Set<String> columns = new HashSet<>();
            for (Field field : Cools.getAllFields(cls)){
                if (Modifier.isFinal(field.getModifiers())
                        || Modifier.isStatic(field.getModifiers())
                        || Modifier.isTransient(field.getModifiers())){
                if (Modifier.isFinal(field.getModifiers()) || Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())) {
                    continue;
                }
                String column = null;
@@ -129,6 +127,7 @@
    /**
     * 全字段模糊搜索
     *
     * @param cls 模型类
     * @param set 排除字段集合
     * @param condition 搜索内容
@@ -139,21 +138,19 @@
        }
        final List<String> columns = new ArrayList<>();
        for (Field field :Cools.getAllFields(cls)){
            if (Modifier.isFinal(field.getModifiers())
                    || Modifier.isStatic(field.getModifiers())
                    || Modifier.isTransient(field.getModifiers())){
            if (Modifier.isFinal(field.getModifiers()) || Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())) {
                continue;
            }
            String column = null;
            if (field.isAnnotationPresent(TableField.class)) {
                column = field.getAnnotation(TableField.class).value();
                column = camelToUnderscore(field.getAnnotation(TableField.class).value());
            }
            if (Cools.isEmpty(column)) {
                column = field.getName();
                column = camelToUnderscore(field.getName());
            }
            if (!set.contains(column)) {
            //if (!set.contains(column)) {
                columns.add(column);
            }
            //}
        }
        if (columns.isEmpty()) {
            return;
@@ -181,4 +178,55 @@
//        }
    }
    private static String camelToUnderscore(String camelCase) {
        return camelCase.replaceAll("([a-z])([A-Z])", "$1_$2").toLowerCase();
    }
//    /**
//     * 全字段模糊搜索
//     *
//     * @param cls       模型类
//     * @param set       排除字段集合
//     * @param condition 搜索内容
//     */
//    protected <T> void allLike(Class<T> cls, Set<String> set, LambdaQueryWrapper<T> wrapper, String condition) {
//        if (Cools.isEmpty(condition)) {
//            return;
//        }
//        final List<String> columns = new ArrayList<>();
//        for (Field field : Cools.getAllFields(cls)) {
//            if (Modifier.isFinal(field.getModifiers()) || Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())) {
//                continue;
//            }
//            String column = null;
//            if (field.isAnnotationPresent(TableField.class)) {
//                column = camelToUnderscore(field.getAnnotation(TableField.class).value());
//            }
//            if (Cools.isEmpty(column)) {
//                column = camelToUnderscore(field.getName());
//            }
//            //if (!set.contains(column)) {
//            columns.add(column);
//            //}
//        }
//        if (columns.isEmpty()) {
//            return;
//        }
//
//        SFunction<cls, String> columnFunc = Entity::columnName;
//        wrapper.and(w -> {
//            for (int i = 0; i < columns.size(); i++) {
//                String colums = columns.get(i);
//                if (i == 0) {
//                    w.like(colums, condition);
//                } else {
//                    w.or().like(colums, condition);
//                }
//            }
//        });
//
//
//    }
}
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/LocDetl.java
@@ -48,6 +48,7 @@
     * 托盘条码
     */
    @ApiModelProperty(value= "托盘条码")
    @TableField("zpallet")
    private String zpallet;
    /**
@@ -214,6 +215,7 @@
    private Long hostId;
    @ApiModelProperty(value= "货主")
    @TableField("owner")
    private String owner;
    public LocDetl() {}
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/Mat.java
@@ -256,9 +256,11 @@
    private String locationStock;
    //材质
    @TableField("material")
    private String material;
    //制令
    @TableField("decrees")
    private String decrees;
    //图号
zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/WaitPakin.java
@@ -3,15 +3,12 @@
import java.text.SimpleDateFormat;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.*;
import com.zy.asrs.common.utils.Synchro;
import org.springframework.format.annotation.DateTimeFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
zy-asrs-common/src/main/resources/mapper/wms/ViewInOutMapper.xml
@@ -15,6 +15,7 @@
    select * from asr_sta_inout_view
    where 1=1
    <include refid="viewInOutConditionSql"></include>
    order by ymd desc
</select>
</mapper>
zy-asrs-common/src/main/resources/mapper/wms/ViewWorkInMapper.xml
@@ -78,6 +78,7 @@
        select * from asr_wrkin_view
        where 1=1
        <include refid="viewWorkInConditionSql"></include>
        order by io_time desc
    </select>
    <!-- 不分页查询所有信息,用于excel导出 -->
@@ -85,6 +86,7 @@
        select * from asr_wrkin_view
        where 1=1
        <include refid="viewWorkInConditionMapSql"></include>
        order by io_time desc
    </select>
    <!-- 出库统计 -->
@@ -94,6 +96,7 @@
        from asr_wrkout_view
        where 1=1
        <include refid="viewWorkInConditionSql"></include>
        order by io_time desc
    </select>
    <!-- 不分页查询所有信息,用于excel导出 -->
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/AdjDetlController.java
@@ -54,6 +54,7 @@
        if (!Cools.isEmpty(param.get("matnr"))) {
            wrapper.like(AdjDetl::getMatnr, param.get("matnr"));
        }
        wrapper.orderByDesc(AdjDetl::getModiTime);
        return R.ok(adjDetlService.page(new Page<>(curr, limit), wrapper));
    }
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java
@@ -150,12 +150,6 @@
                  @RequestParam(required = false) String timeRange,
                  @RequestParam Map<String, Object> param) {
        QueryWrapper<LocDetl> wrapper = new QueryWrapper<>();
        Object barcode = null;
        if (!Cools.isEmpty(param.get("barcode"))) {
            barcode = param.get("barcode");
        }
        param.remove("zpallet");
        param.remove("barcode");
        if (!Cools.isEmpty(param.get("decrees"))) {
            ArrayList<String> mats = new ArrayList<>();
@@ -167,7 +161,6 @@
                    mats.add(mat.getMatnr());
                }
            }
            wrapper.in("matnr", mats);
            param.remove("decrees");
        }
@@ -183,18 +176,16 @@
            wrapper.le("appe_time", DateUtils.convert(range[1]));
        }
        if (!Cools.isEmpty(param.get("locNo"))) {
            wrapper.eq("loc_no", param.get("locNo"));
            wrapper.like("loc_no", param.get("locNo"));
        }
        if (!Cools.isEmpty(barcode)) {
            wrapper.eq("zpallet", barcode);
        if (!Cools.isEmpty(param.get("zpallet"))) {
            wrapper.like("zpallet", param.get("zpallet"));
        }
        if (!Cools.isEmpty(orderByField)){
            wrapper.orderBy(true, "asc".equals(orderByType), humpToLine(orderByField));
        }
        param.remove("locNo");
        param.remove("owner");
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocMastController.java
@@ -3,12 +3,14 @@
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.domain.entity.Parameter;
import com.zy.asrs.common.domain.entity.Shelves;
import com.zy.asrs.common.domain.param.LocMastInitParam;
import com.zy.asrs.common.wms.entity.LocDetl;
import com.zy.asrs.common.wms.entity.LocMast;
import com.zy.asrs.common.wms.entity.Mat;
import com.zy.asrs.common.wms.service.LocDetlService;
import com.zy.asrs.common.wms.service.LocMastService;
import com.zy.asrs.framework.annotations.ManagerAuth;
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MatController.java
@@ -72,13 +72,13 @@
        treeUtils.getTagIdList(Long.parseLong(tagId.toString()), nodes);
        wrapper.in("tag_id", nodes);
        if (!Cools.isEmpty(param.get("matnr"))) {
            wrapper.eq("matnr", param.get("matnr"));
            wrapper.like("matnr", param.get("matnr"));
        }
        if (!Cools.isEmpty(param.get("maktx"))) {
            wrapper.eq("maktx", param.get("maktx"));
            wrapper.like("maktx", param.get("maktx"));
        }
        if (!Cools.isEmpty(param.get("decrees"))) {
            wrapper.eq("decrees", param.get("decrees"));
            wrapper.like("decrees", param.get("decrees"));
        }
//        if (!Cools.isEmpty(param.get("owner$"))) {
//            wrapper.eq("owner", param.get("owner$"));
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/PriorController.java
@@ -1,5 +1,7 @@
package com.zy.asrs.wms.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -7,6 +9,11 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.domain.dto.SafeStoDo;
import com.zy.asrs.common.domain.dto.SafeStoDto;
import com.zy.asrs.common.domain.entity.LocInPrintMatExcel;
import com.zy.asrs.common.domain.entity.MatExcel;
import com.zy.asrs.common.domain.entity.SafeStoExcel;
import com.zy.asrs.common.utils.MatExcelListener;
import com.zy.asrs.common.utils.SafeStoExcelListener;
import com.zy.asrs.common.wms.entity.Mat;
import com.zy.asrs.common.wms.entity.Prior;
import com.zy.asrs.common.wms.service.MatService;
@@ -19,7 +26,11 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.*;
@RestController
@@ -177,4 +188,30 @@
        return R.ok();
    }
    @PostMapping(value = "/safeSto/excel/import/auth")
    @ManagerAuth(memo = "安全库存数据导入")
    @Transactional
    public R matExcelImport(MultipartFile file) throws IOException {
        SafeStoExcelListener listener = new SafeStoExcelListener(getUserId(), getHostId());
        EasyExcel.read(file.getInputStream(), SafeStoExcel.class, listener).sheet().doRead();
        return R.ok("成功同步"+listener.getTotal()+"条安全库存数据");
    }
    /**
     * excel导入模板下载
     */
    @RequestMapping(value = "/safeSto/excel/import/mould")
    public void matExcelImportMould(HttpServletResponse response) throws IOException {
        List<SafeStoExcel> excels = new ArrayList<>();
        response.setContentType("application/vnd.ms-excel");
        response.setCharacterEncoding("utf-8");
        String fileName = URLEncoder.encode("安全库存Excel导入模板", "UTF-8");
        response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
        EasyExcel.write(response.getOutputStream(), SafeStoExcel.class)
                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
                .sheet("sheet1")
                .doWrite(excels);
    }
}
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WaitPakinController.java
@@ -67,9 +67,6 @@
                  @RequestParam Map<String, Object> param) {
        QueryWrapper<WaitPakin> wrapper = new QueryWrapper<>();
        wrapper.eq("host_id", getHostId());
        if (!Cools.isEmpty(condition)) {
            wrapper.like("id", condition);
        }
        convert(param,wrapper);
        if (!Cools.isEmpty(timeRange)) {
            String[] range = timeRange.split(RANGE_TIME_LINK);
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WaitPakinLogController.java
@@ -39,14 +39,17 @@
                  @RequestParam Map<String, Object> param) {
        LambdaQueryWrapper<WaitPakinLog> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(WaitPakinLog::getHostId, getHostId());
        if (!Cools.isEmpty(condition)) {
            wrapper.like(WaitPakinLog::getId, condition);
        }
        if (!Cools.isEmpty(timeRange)) {
            String[] range = timeRange.split(RANGE_TIME_LINK);
            wrapper.ge(WaitPakinLog::getAppeTime, DateUtils.convert(range[0]));
            wrapper.le(WaitPakinLog::getAppeTime, DateUtils.convert(range[1]));
        }
        if (!Cools.isEmpty(param.get("zpallet"))) {
            wrapper.like(WaitPakinLog::getZpallet, param.get("zpallet"));
        }
        if (!Cools.isEmpty(param.get("matnr"))) {
            wrapper.like(WaitPakinLog::getMatnr, param.get("matnr"));
        }
        return R.ok(waitPakinLogService.page(new Page<>(curr, limit), wrapper));
    }
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkDetlController.java
@@ -1,21 +1,26 @@
package com.zy.asrs.wms.controller;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.web.BaseController;
import com.zy.asrs.common.wms.entity.WrkDetl;
import com.zy.asrs.common.wms.service.WrkDetlService;
import com.zy.asrs.framework.annotations.ManagerAuth;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.DateUtils;
import com.zy.asrs.framework.common.R;
import com.zy.asrs.framework.domain.KeyValueVo;
import com.zy.asrs.framework.common.DateUtils;
import com.zy.asrs.common.web.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
public class WrkDetlController extends BaseController {
@@ -36,25 +41,33 @@
                  @RequestParam(required = false) String condition,
                  @RequestParam(required = false) String timeRange,
                  @RequestParam Map<String, Object> param) {
        LambdaQueryWrapper<WrkDetl> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(WrkDetl::getHostId, getHostId());
        if (!Cools.isEmpty(condition)) {
            wrapper.like(WrkDetl::getId, condition);
        }
        QueryWrapper<WrkDetl> wrapper = new QueryWrapper<>();
        wrapper.eq("host_id", getHostId());
//        if (!Cools.isEmpty(condition)) {
//            wrapper.like(WrkDetl::getId, condition);
//        }
        if (!Cools.isEmpty(timeRange)) {
            String[] range = timeRange.split(RANGE_TIME_LINK);
            wrapper.ge(WrkDetl::getAppeTime, DateUtils.convert(range[0]));
            wrapper.le(WrkDetl::getAppeTime, DateUtils.convert(range[1]));
            wrapper.ge("io_time", DateUtils.convert(range[0]));
            wrapper.le("io_time", DateUtils.convert(range[1]));
        }
        if (!Cools.isEmpty(param.get("wrk_mast_id"))) {
            wrapper.eq(WrkDetl::getWrkMastId, param.get("wrk_mast_id"));
            wrapper.eq("wrk_mast_id", param.get("wrk_mast_id"));
        }
        if (!Cools.isEmpty(param.get("matnr"))) {
            wrapper.like(WrkDetl::getMatnr, param.get("matnr"));
            wrapper.like("matnr", param.get("matnr"));
        }
        if (!Cools.isEmpty(param.get("maktx"))) {
            wrapper.like(WrkDetl::getMaktx, param.get("maktx"));
            wrapper.like("maktx", param.get("maktx"));
        }
        if (!Cools.isEmpty(param.get("zpallet"))) {
            wrapper.like("zpallet", param.get("zpallet"));
        }
        if (!Cools.isEmpty(param.get("orderNo"))) {
            wrapper.like("order_no", param.get("orderNo"));
        }
        allLike(WrkDetl.class, param.keySet(), wrapper, condition);
        wrapper.orderByDesc("io_time");
        return R.ok(wrkDetlService.page(new Page<>(curr, limit), wrapper));
    }
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkDetlLogController.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.wms.entity.WrkDetl;
import com.zy.asrs.common.wms.entity.WrkDetlLog;
@@ -37,20 +38,33 @@
                  @RequestParam(required = false) String condition,
                  @RequestParam(required = false) String timeRange,
                  @RequestParam Map<String, Object> param) {
        LambdaQueryWrapper<WrkDetlLog> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(WrkDetlLog::getHostId, getHostId());
        if (!Cools.isEmpty(condition)) {
            wrapper.like(WrkDetlLog::getId, condition);
        }
        QueryWrapper<WrkDetlLog> wrapper = new QueryWrapper<>();
        wrapper.eq("host_id", getHostId());
//        if (!Cools.isEmpty(condition)) {
//            wrapper.like(WrkDetl::getId, condition);
//        }
        if (!Cools.isEmpty(timeRange)) {
            String[] range = timeRange.split(RANGE_TIME_LINK);
            wrapper.ge(WrkDetlLog::getAppeTime, DateUtils.convert(range[0]));
            wrapper.le(WrkDetlLog::getAppeTime, DateUtils.convert(range[1]));
            wrapper.ge("io_time", DateUtils.convert(range[0]));
            wrapper.le("io_time", DateUtils.convert(range[1]));
        }
        if (!Cools.isEmpty(param.get("wrk_mast_id"))) {
            wrapper.eq(WrkDetlLog::getWrkMastId, param.get("wrk_mast_id"));
            wrapper.eq("wrk_mast_id", param.get("wrk_mast_id"));
        }
        wrapper.orderByDesc(WrkDetlLog::getId);
        if (!Cools.isEmpty(param.get("matnr"))) {
            wrapper.like("matnr", param.get("matnr"));
        }
        if (!Cools.isEmpty(param.get("maktx"))) {
            wrapper.like("maktx", param.get("maktx"));
        }
        if (!Cools.isEmpty(param.get("zpallet"))) {
            wrapper.like("zpallet", param.get("zpallet"));
        }
        if (!Cools.isEmpty(param.get("orderNo"))) {
            wrapper.like("order_no", param.get("orderNo"));
        }
        allLike(WrkDetlLog.class, param.keySet(), wrapper, condition);
        wrapper.orderByDesc("io_time");
        return R.ok(wrkDetlLogService.page(new Page<>(curr, limit), wrapper));
    }
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkMastController.java
@@ -40,6 +40,7 @@
        excludeTrash(param);
        QueryWrapper<WrkMast> wrapper = new QueryWrapper<>();
        wrapper.eq("host_id",getHostId());
        System.out.println(param);
        convert(param, wrapper);
        return R.ok(wrkMastService.page(new Page<>(curr, limit), wrapper));
    }
zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/WrkMastLogController.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zy.asrs.common.wms.entity.WrkMastLog;
import com.zy.asrs.common.wms.service.WrkMastLogService;
@@ -36,29 +37,30 @@
                  @RequestParam(required = false) String condition,
                  @RequestParam(required = false) String timeRange,
                  @RequestParam Map<String, Object> param) {
        LambdaQueryWrapper<WrkMastLog> wrapper = new LambdaQueryWrapper<>();
        QueryWrapper<WrkMastLog> wrapper = new QueryWrapper<>();
//        wrapper.eq(WrkMastLog::getHostId, getHostId());
        if (!Cools.isEmpty(condition)) {
            wrapper.like(WrkMastLog::getWrkNo, condition);
        }
        if (!Cools.isEmpty(timeRange)) {
            String[] range = timeRange.split(RANGE_TIME_LINK);
            wrapper.ge(WrkMastLog::getAppeTime, DateUtils.convert(range[0]));
            wrapper.le(WrkMastLog::getAppeTime, DateUtils.convert(range[1]));
            wrapper.ge("appe_time", DateUtils.convert(range[0]));
            wrapper.le("appe_time", DateUtils.convert(range[1]));
        }
        if (!Cools.isEmpty(param.get("barcode"))) {
            wrapper.eq("barcode", param.get("barcode"));
        }
        if (!Cools.isEmpty(param.get("wrkNo"))) {
            wrapper.eq(WrkMastLog::getWrkNo, param.get("wrkNo"));
            wrapper.eq("wrk_no", param.get("wrkNo"));
        }
        if (!Cools.isEmpty(param.get("wrkSts"))) {
            wrapper.eq(WrkMastLog::getWrkSts, param.get("wrkSts"));
            wrapper.eq("wrk_sts", param.get("wrkSts"));
        }
        if (!Cools.isEmpty(param.get("ioType"))) {
            wrapper.eq(WrkMastLog::getIoType, param.get("ioType"));
            wrapper.eq("iotype", param.get("ioType"));
        }
        if (!Cools.isEmpty(param.get("manuType"))) {
            wrapper.like(WrkMastLog::getManuType, param.get("manuType"));
            wrapper.like("manu_type", param.get("manuType"));
        }
        wrapper.orderByDesc(WrkMastLog::getId);
        allLike(WrkMastLog.class, param.keySet(), wrapper, condition);
        wrapper.orderByDesc("id");
        return R.ok(wrkMastLogService.page(new Page<>(curr, limit), wrapper));
    }
zy-asrs-wms/src/main/resources/application.yml
@@ -10,7 +10,7 @@
    enabled: false
  datasource:
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    url: jdbc:sqlserver://127.0.0.1:1433;databasename=ncasrs
    url: jdbc:sqlserver://192.168.4.34:1433;databasename=ncasrs
#    url: jdbc:sqlserver://localhost:1433;databasename=jmasrs
#    username: sa
#    password: sa@123
zy-asrs-wms/src/main/webapp/static/js/common.js
@@ -173,6 +173,7 @@
/*************************************************************************************************************/
/********************************************** 物料业务抽象 ***************************************************/
/*************************************************************************************************************/
function arrRemove(arr, key, val) {
@@ -205,7 +206,7 @@
    ,{field: 'price', align: 'center',title: '单价', hide: true}
    ,{field: 'sku', align: 'center',title: 'sku', hide: true}
    ,{field: 'units', align: 'center',title: '单位量', hide: true}
    ,{field: 'barcode', align: 'center',title: '条码', hide: true}
    , {field: 'barcode', align: 'center', title: '托盘码', hide: true}
    ,{field: 'origin', align: 'center',title: '产地', hide: true}
    ,{field: 'manu', align: 'center',title: '厂家', hide: true}
    ,{field: 'manuDate', align: 'center',title: '生产日期', hide: true}
@@ -235,20 +236,24 @@
    ,{field: 'orderNo', align: 'center',title: '单据编号', hide: false}
    ,{field: 'batch', align: 'center',title: '批号', width: 80, sort:true}
    ,{field: 'anfme', align: 'center',title: '数量'}
    ,{field: 'zpallet', align: 'center',title: '托盘条码'}
    , {field: 'zpallet', align: 'center', title: '托盘条码', sort: true}
    ,{field: 'owner', align: 'center',title: '货主'}
    ,{field: 'fullPlt$', align: 'center',title: '是否满板'}
    ,{field: 'specs', align: 'center',title: '规格'}
    ,{field: 'templet', align: 'center',title: '机型',templet:function(row){
    , {
        field: 'templet', align: 'center', title: '机型', templet: function (row) {
        if(row.mat$) {
            return row.mat$.model
        }
    }}
    ,{field: 'templet', align: 'center',title: '制令',templet:function(row){
        }
    }
    , {
        field: 'templet', align: 'center', title: '制令', templet: function (row) {
        if (row.mat$) {
            return row.mat$.decrees;
        }
    }}
        }
    }
    ,{field: 'color', align: 'center',title: '颜色', hide: true}
@@ -257,7 +262,7 @@
    ,{field: 'price', align: 'center',title: '单价', hide: true}
    ,{field: 'sku', align: 'center',title: 'sku', hide: true}
    ,{field: 'units', align: 'center',title: '单位量', hide: true}
    ,{field: 'barcode', align: 'center',title: '条码', hide: true}
    , {field: 'barcode', align: 'center', title: '托盘码', hide: true}
    ,{field: 'origin', align: 'center',title: '产地', hide: true}
    ,{field: 'manu', align: 'center',title: '厂家', hide: true}
    ,{field: 'manuDate', align: 'center',title: '生产日期', hide: true}
@@ -280,11 +285,11 @@
var detlColsWrkDetl = [
    {field: 'matnr', align: 'center',title: '品号', sort:true, width: 150}
    ,{field: 'maktx', align: 'center',title: '名称', sort:true, width: 150}
    ,{field: 'orderNo', align: 'center',title: '单据编号', hide: false}
    , {field: 'orderNo', align: 'center', title: '单据编号', sort: true, hide: false}
    ,{field: 'orderType', align: 'center',title: '单据类型', hide: false}
    ,{field: 'batch', align: 'center',title: '批号', width: 80, sort:true}
    ,{field: 'anfme', align: 'center',title: '数量', width: 70}
    ,{field: 'zpallet', align: 'center',title: '托盘条码', width: 100}
    , {field: 'zpallet', align: 'center', title: '托盘条码', sort: true, width: 100}
    ,{field: 'owner', align: 'center',title: '货主', width: 80}
    ,{field: 'fullPlt$', align: 'center',title: '是否满板', width: 100}
    ,{field: 'specs', align: 'center',title: '规格', width: 80}
@@ -295,7 +300,7 @@
    ,{field: 'price', align: 'center',title: '单价', hide: true}
    ,{field: 'sku', align: 'center',title: 'sku', hide: true}
    ,{field: 'units', align: 'center',title: '单位量', hide: true}
    ,{field: 'barcode', align: 'center',title: '条码', hide: true}
    , {field: 'barcode', align: 'center', title: '托盘码', hide: true}
    ,{field: 'origin', align: 'center',title: '产地', hide: true}
    ,{field: 'manu', align: 'center',title: '厂家', hide: true}
    ,{field: 'manuDate', align: 'center',title: '生产日期', hide: true}
@@ -315,13 +320,14 @@
    ,{field: 'danger$', align: 'center',title: '危险品', hide: true}
]
function getQueryVariable(variable)
{
function getQueryVariable(variable) {
    var query = window.location.search.substring(1);
    var vars = query.split("&");
    for (var i=0;i<vars.length;i++) {
        var pair = vars[i].split("=");
        if(pair[0] == variable){return pair[1];}
        if (pair[0] == variable) {
            return pair[1];
        }
    }
    return(false);
}
zy-asrs-wms/src/main/webapp/static/js/errorWrkMast/errorWrkMast.js
@@ -30,7 +30,7 @@
            ,{field: 'staNo$', align: 'center',title: '目标站', hide:true}
            ,{field: 'sourceLocNo$', align: 'center',title: '源库位', hide:true}
            ,{field: 'locNo$', align: 'center',title: '目标库位', hide:true}
            ,{field: 'barcode', align: 'center',title: '条码', hide:true}
            ,{field: 'barcode', align: 'center',title: '托盘码', hide:true}
            ,{field: 'updMk', align: 'center',title: '异常标记'}
            ,{field: 'errorTime$', align: 'center',title: '异常记录时间'}
            ,{field: 'errorMemo', align: 'center',title: '异常内容'}
zy-asrs-wms/src/main/webapp/static/js/locDetl/locDetl.js
@@ -1,4 +1,5 @@
var pageCurr;
function getCol() {
    var cols = [
        {field: 'locNo', align: 'center',title: '库位号'},
@@ -8,13 +9,18 @@
        ,{field: 'orderType', align: 'center',title: '单据类型', hide: false}
        ,{field: 'batch', align: 'center',title: '批号', width: 80, sort:true}
        ,{field: 'anfme', align: 'center',title: '数量', width: 100}
        ,{field: 'zpallet', align: 'center',title: '托盘码'}
        ,{field: 'templet', align: 'center',title: '机型',templet:function(row){
        , {field: 'zpallet', align: 'center', title: '托盘码', sort: true}
        , {
            field: 'templet', align: 'center', title: '机型', templet: function (row) {
            return row.mat$.model
        }}
        ,{field: 'templet', align: 'center',title: '制令',templet:function(row){
            }
        }
        , {
            field: 'templet', align: 'center', title: '制令', templet: function (row) {
                return row.mat$.decrees
        }}
            }
        }
        , {field: 'owner', align: 'center', title: '货主'}
        ,{field: 'memo', align: 'center',title: '备注'}
        // ,{field: 'owner$', align: 'center',title: '拥有者'}
@@ -146,7 +152,8 @@
                    success: function(layero, index){
                        layer.getChildFrame('#data-detail-submit-edit', index).hide();
                        clearFormVal(layer.getChildFrame('#detail', index));
                        layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
                        layer.iframeAuto(index);
                        layer.style(index, {top: (($(window).height() - layer.getChildFrame('#data-detail', index).height()) / 3) + "px"});
                    }
                });
                break;
@@ -312,7 +319,8 @@
                        setFormVal(layer.getChildFrame('#detail', index), data, true);
                        top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true);
                        layer.getChildFrame('#data-detail-submit-save,#data-detail-submit-edit,#prompt', index).hide();
                        layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
                        layer.iframeAuto(index);
                        layer.style(index, {top: (($(window).height() - layer.getChildFrame('#data-detail', index).height()) / 3) + "px"});
                        layero.find('iframe')[0].contentWindow.layui.form.render('select');
                        layero.find('iframe')[0].contentWindow.layui.form.render('checkbox');
                    }
@@ -332,7 +340,8 @@
                        setFormVal(layer.getChildFrame('#detail', index), data, false);
                        top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false);
                        top.convertDisabled(layer.getChildFrame('#locNo,#matnr', index), true);
                        layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
                        layer.iframeAuto(index);
                        layer.style(index, {top: (($(window).height() - layer.getChildFrame('#data-detail', index).height()) / 3) + "px"});
                        layero.find('iframe')[0].contentWindow.layui.form.render('select');
                        layero.find('iframe')[0].contentWindow.layui.form.render('checkbox');
                    }
zy-asrs-wms/src/main/webapp/static/js/matCode/matCode.js
@@ -25,7 +25,7 @@
        cols: [[
            {type: 'checkbox'}
            ,{field: 'matNo', align: 'center',title: '物料编码'}
            ,{field: 'barcode', align: 'center',title: '条码'}
            ,{field: 'barcode', align: 'center',title: '托盘码'}
            ,{field: 'matName', align: 'center',title: '物料名称'}
            ,{field: 'str1', align: 'center',title: '物料单位'}
            ,{field: 'str2', align: 'center',title: '物料规格'}
zy-asrs-wms/src/main/webapp/static/js/node/node.js
@@ -35,7 +35,7 @@
            ,{field: 'level', align: 'center',title: '等级'}
            ,{field: 'leading', align: 'center',title: '负责人'}
            ,{field: 'sort', align: 'center',title: '排序'}
            ,{field: 'barcode', align: 'center',title: '条码'}
            ,{field: 'barcode', align: 'center',title: '托盘码'}
            ,{field: 'major', align: 'center',title: '推荐位'}
            ,{field: 'status$', align: 'center',title: '状态'}
            ,{field: 'createTime$', align: 'center',title: '添加时间'}
zy-asrs-wms/src/main/webapp/static/js/safeSto/safeSto.js
@@ -1,4 +1,5 @@
var pageCurr;
var admin;
layui.config({
    base: baseUrl + "/static/layui/lay/modules/"
}).use(['table','laydate', 'form', 'element', 'admin', 'xmSelect'], function(){
@@ -8,8 +9,9 @@
    var layDate = layui.laydate;
    var form = layui.form;
    var element = layui.element;
    var admin = layui.admin;
    admin = layui.admin;
    var xmSelect = layui.xmSelect;
    // 数据渲染
    tableIns = table.render({
@@ -305,9 +307,65 @@
}
$('body').keydown(function () {
    if (event.keyCode === 13) {
        $("#search").click();
    }
});
// excel导入模板下载
function downloadData() {
    layer.load(1, {shade: [0.1, '#fff']});
    location.href = baseUrl + "/safeSto/excel/import/mould";
    layer.closeAll('loading');
}
// excel导入
function importData() {
    $("#btn-import").trigger("click");
}
function upload(obj) {
    if (!obj.files) {
        return;
    }
    var file = obj.files[0];
    admin.confirm('确认同步 [' + file.name + '] 文件吗?', function (index) {
        layer.load(1, {shade: [0.1, '#fff']});
        var url = baseUrl + "/safeSto/excel/import/auth";
        var form = new FormData();
        form.append("file", file);
        xhr = new XMLHttpRequest();
        xhr.open("post", url, true); //post方式,url为服务器请求地址,true 该参数规定请求是否异步处理。
        xhr.setRequestHeader('token', localStorage.getItem('token'));
        xhr.onload = uploadComplete; //请求完成
        xhr.onerror = uploadFailed; //请求失败
        xhr.onloadend = function () { // // 上传完成重置文件流
            layer.closeAll('loading');
            $("#importExcel").val("");
        };
        // xhr.upload.onprogress = progressFunction;//【上传进度调用方法实现】
        xhr.upload.onloadstart = function () {//上传开始执行方法
            ot = new Date().getTime();   //设置上传开始时间
            oloaded = 0;//设置上传开始时,以上传的文件大小为0
        };
        xhr.send(form);
    }, function (index) {
        $("#btn-import").val("");
    });
}
function uploadComplete(evt) {
    var res = JSON.parse(evt.target.responseText);
    if(res.code === 200) {
        layer.msg(res.msg, {icon: 1});
        loadTree("");
    } else {
        layer.msg(res.msg, {icon: 2});
    }
}
function uploadFailed(evt) {
    var res = JSON.parse(evt.target.responseText);
    layer.msg(res.msg, {icon: 2});
}
zy-asrs-wms/src/main/webapp/static/js/waitPakin/waitPakin.js
@@ -9,14 +9,15 @@
                html += ">";
                return html;
            }, hide: true}
        ,{field: 'modiUser$', align: 'center',title: '修改人员', hide:true}
        ,{field: 'modiTime$', align: 'center',title: '修改时间'}
        ,{field: 'ioStatus', align: 'center',title: '入出状态', templet:function(row){
                var html = "<input value='ioStatus' type='checkbox' lay-skin='switch' lay-text='入库中|待入库' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'";
                if(row.ioStatus === 'Y'){html += " checked ";}
                html += ">";
                return html;
            }}
        ,{field: 'modiUser$', align: 'center',title: '修改人员', hide:true}
        ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true})
        )
    return cols;
}
zy-asrs-wms/src/main/webapp/static/js/wrkMast/wrkMast.js
@@ -25,12 +25,12 @@
            ,{field: 'ioTime$', align: 'center',title: '工作时间',sort: true, width: 160}
            ,{field: 'wrkSts$', align: 'center',title: '工作状态'}
            ,{field: 'ioType$', align: 'center',title: '入出库类型'}
            ,{field: 'ioPri', align: 'center',title: '优先级'}
            ,{field: 'ioPri', align: 'center',title: '优先级',sort: true}
            ,{field: 'sourceStaNo', align: 'center',title: '源站'}
            ,{field: 'staNo', align: 'center',title: '目标站'}
            ,{field: 'sourceLocNo', align: 'center',title: '源库位'}
            ,{field: 'locNo', align: 'center',title: '目标库位'}
            ,{field: 'barcode', align: 'center',title: '条码'}
            ,{field: 'barcode', align: 'center',title: '托盘码'}
            ,{field: 'preHave', align: 'center',title: '先入品', hide: true}
            ,{field: 'takeNone', align: 'center',title: '空操作', hide: true}
            // ,{field: 'picking', align: 'center',title: '拣料', templet:function(row){
@@ -134,7 +134,8 @@
                    list.push({
                        wrkNo: track.wrkNo,
                        ioTime: track.ioTime,
                        ioPri: track.ioPri
                        ioPri: track.ioPri,
                        id: track.id
                    });
                });
                $.ajax({
zy-asrs-wms/src/main/webapp/static/js/wrkMastLog/wrkMastLog.js
@@ -59,7 +59,7 @@
            ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true}
            // ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'cursor:pointer'}
            // ,{field: 'appeTime$', align: 'center',title: '添加时间'}
            ,{field: 'barcode', align: 'center',title: '条码'}
            ,{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 ";}
zy-asrs-wms/src/main/webapp/views/locDetl/locDetl.html
@@ -83,7 +83,7 @@
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/locDetl/locDetl.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/locDetl/locDetl.js?v=1" charset="utf-8"></script>
<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
zy-asrs-wms/src/main/webapp/views/locDetlStatis/locDetlStatis.html
@@ -19,6 +19,11 @@
            <input class="layui-input" type="text" name="matnr" placeholder="商品编号" autocomplete="off">
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="maktx" placeholder="名称" autocomplete="off">
        </div>
    </div>
    <!-- 待添加 -->
    <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block">
        <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索
zy-asrs-wms/src/main/webapp/views/matCode/matCode.html
@@ -74,7 +74,7 @@
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">条码: </label>
                    <label class="layui-form-label">托盘码: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="barcode" placeholder="请输入条码">
                    </div>
zy-asrs-wms/src/main/webapp/views/orderDetl/orderDetl.html
@@ -164,7 +164,7 @@
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">条码: </label>
                    <label class="layui-form-label">托盘码: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="barcode" placeholder="请输入条码">
                    </div>
zy-asrs-wms/src/main/webapp/views/pakStore/matQuery.html
@@ -48,11 +48,11 @@
<!--                    <input class="layui-input" type="text" name="owner$" placeholder="拥有者" autocomplete="off">-->
<!--                </div>-->
<!--            </div>-->
            <div class="layui-inline">
                <div class="layui-input-inline">
                    <input class="layui-input" type="text" name="maktx" placeholder="名称" autocomplete="off">
                </div>
            </div>
<!--            <div class="layui-inline">-->
<!--                <div class="layui-input-inline">-->
<!--                    <input class="layui-input" type="text" name="maktx" placeholder="名称" autocomplete="off">-->
<!--                </div>-->
<!--            </div>-->
            <!-- 日期范围 -->
            <div class="layui-inline" style="width: 300px">
                <div class="layui-input-inline">
zy-asrs-wms/src/main/webapp/views/prior/prior.html
@@ -128,7 +128,7 @@
                    </div>
                </div>
                <div class="layui-form-item">
                    <label class="layui-form-label">条码: </label>
                    <label class="layui-form-label">托盘码: </label>
                    <div class="layui-input-block">
                        <input class="layui-input" name="barcode" placeholder="请输入条码">
                    </div>
zy-asrs-wms/src/main/webapp/views/safeSto/safeSto.html
@@ -54,6 +54,8 @@
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm" id="btn-add1" lay-event="add"><i class="layui-icon">&#xe654;</i>添加</button>
        <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">删除</button>
        <input class="layui-btn layui-btn-primary layui-btn-sm" id="btn-import" type="file" onchange="upload(this)" title="导入">
        <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-download" onclick="downloadData()" >模板下载</button>
        <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button>
    </div>
</script>
@@ -84,7 +86,7 @@
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/safeSto/safeSto.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/safeSto/safeSto.js?v=4" charset="utf-8"></script>
<!-- 表单弹窗 -->
<script type="text/html" id="editDialog">
zy-asrs-wms/src/main/webapp/views/waitPakin/waitPakin.html
@@ -25,6 +25,11 @@
            <input class="layui-input" type="text" name="matnr" placeholder="商品编号" autocomplete="off">
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="owner" placeholder="货主" autocomplete="off">
        </div>
    </div>
    <!-- 日期范围 -->
    <div class="layui-inline" style="width: 300px">
        <div class="layui-input-inline">
@@ -79,7 +84,7 @@
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/waitPakin/waitPakin.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/waitPakin/waitPakin.js?v=2" charset="utf-8"></script>
<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
zy-asrs-wms/src/main/webapp/views/waitPakinLog/waitPakinLog.html
@@ -19,6 +19,16 @@
            <input class="layui-input" type="text" name="pakin_id" placeholder="入库通知号" autocomplete="off">
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="zpallet" placeholder="托盘码" autocomplete="off">
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="matnr" placeholder="品号" autocomplete="off">
        </div>
    </div>
    <!-- 日期范围 -->
    <div class="layui-inline" style="width: 300px">
        <div class="layui-input-inline">
zy-asrs-wms/src/main/webapp/views/wrkDetl/wrkDetl.html
@@ -36,6 +36,16 @@
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="zpallet" placeholder="托盘码" autocomplete="off">
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="orderNo" placeholder="单据" autocomplete="off">
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="owner" placeholder="拥有者编号" autocomplete="off">
        </div>
    </div>
@@ -75,7 +85,7 @@
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/wrkDetl/wrkDetl.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/wrkDetl/wrkDetl.js?v=1" charset="utf-8"></script>
<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
zy-asrs-wms/src/main/webapp/views/wrkMast/wrkMast.html
@@ -132,7 +132,7 @@
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/wrkMast/wrkMast.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/wrkMast/wrkMast.js?v=1" charset="utf-8"></script>
<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
zy-asrs-wms/src/main/webapp/views/wrkMastLog/wrkMastLog.html
@@ -24,6 +24,11 @@
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline">
            <input class="layui-input" type="text" name="barcode" placeholder="托盘码" autocomplete="off">
        </div>
    </div>
    <div class="layui-inline">
        <div class="layui-input-inline cool-auto-complete">
            <input id="wrkSts" class="layui-input" name="wrk_sts" type="text" placeholder="请输入" autocomplete="off" style="display: none">
            <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="工作状态" onfocus=this.blur()>
@@ -94,7 +99,7 @@
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/wrkMastLog/wrkMastLog.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/wrkMastLog/wrkMastLog.js?v=1" charset="utf-8"></script>
<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>