#
Junjie
2026-01-14 664d9030efca22edd8e43b4db4b2c0700fff44af
#
7个文件已修改
113 ■■■■ 已修改文件
src/main/java/com/zy/core/utils/WmsOperateUtils.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/system/controller/ConfigController.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/system/entity/Config.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/ConfigMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/config/config.js 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/config/config.html 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/config/config_detail.html 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/core/utils/WmsOperateUtils.java
@@ -19,7 +19,9 @@
import com.zy.common.entity.FindCrnNoResult;
import com.zy.common.service.CommonService;
import com.zy.common.utils.HttpHandler;
import com.zy.common.utils.RedisUtil;
import com.zy.core.News;
import com.zy.core.enums.RedisKeyType;
import com.zy.core.enums.SlaveType;
import com.zy.system.entity.Config;
import com.zy.system.service.ConfigService;
@@ -49,28 +51,40 @@
    private BasDualCrnpService basDualCrnpService;
    @Autowired
    private BasStationService basStationService;
    @Autowired
    private StationOperateProcessUtils stationOperateProcessUtils;
    @Autowired
    private RedisUtil redisUtil;
    //申请入库任务
    public synchronized String applyInTask(String barcode, Integer sourceStaNo, Integer locType1) {
        String wmsUrl = null;
        Config wmsSystemUriConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "wmsSystemUri"));
        if (wmsSystemUriConfig != null) {
            wmsUrl = wmsSystemUriConfig.getValue();
        Object systemConfigMapObj = redisUtil.get(RedisKeyType.SYSTEM_CONFIG_MAP.key);
        if (systemConfigMapObj == null) {
            News.error("系统Config缓存失效");
            return null;
        }
        HashMap<String, String> systemConfigMap = (HashMap<String, String>) systemConfigMapObj;
        String wmsUrl = systemConfigMap.get("wmsSystemUri");
        if (wmsUrl == null) {
            News.error("未配置WMS系统URI,配置文件Code编码:wmsSystemUri");
            return null;
        }
        String wmsSystemInUrl = null;
        Config wmsSystemInUrlConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "wmsSystemInUrl"));
        if (wmsSystemInUrlConfig != null) {
            wmsSystemInUrl = wmsSystemInUrlConfig.getValue();
        String wmsSystemInUrl = systemConfigMap.get("wmsSystemInUrl");
        if(wmsSystemInUrl == null){
            News.error("未配置WMS入库接口地址,配置文件Code编码:wmsSystemInUrl");
            return null;
        }
        if(wmsSystemInUrlConfig == null){
            News.error("未配置WMS入库接口地址,配置文件Code编码:wmsSystemInUrl");
        int conveyorStationTaskLimit = 30;
        String conveyorStationTaskLimitStr = systemConfigMap.get("conveyorStationTaskLimit");
        if(conveyorStationTaskLimitStr != null){
            conveyorStationTaskLimit = Integer.parseInt(conveyorStationTaskLimitStr);
        }
        int currentStationTaskCount = stationOperateProcessUtils.getCurrentStationTaskCount();
        if (currentStationTaskCount > conveyorStationTaskLimit) {
            News.error("输送站点任务已达到上限,上限值:{},站点任务数:{}", conveyorStationTaskLimit, currentStationTaskCount);
            return null;
        }
src/main/java/com/zy/system/controller/ConfigController.java
@@ -201,6 +201,22 @@
        return R.ok();
    }
    @RequestMapping(value = "/config/getSelectTypes")
    @ManagerAuth
    public R getSelectTypes() {
        EntityWrapper<Config> wrapper = new EntityWrapper<>();
        wrapper.setSqlSelect("DISTINCT select_type as selectType");
        wrapper.isNotNull("select_type");
        List<Map<String, Object>> maps = configService.selectMaps(wrapper);
        List<String> types = new ArrayList<>();
        for (Map<String, Object> map : maps) {
            if (map != null && map.get("selectType") != null) {
                types.add(String.valueOf(map.get("selectType")));
            }
        }
        return R.ok(types);
    }
    private static boolean checkJson(String val){
        Object parse = null;
src/main/java/com/zy/system/entity/Config.java
@@ -42,6 +42,11 @@
     */
    private Short status;
    /**
     * 筛选类型
     */
    private String selectType;
    public Config() {}
    public Config(String name,String code,String value,Short type,Short status) {
@@ -132,5 +137,13 @@
        this.status = status;
    }
    public String getSelectType() {
        return selectType;
    }
    public void setSelectType(String selectType) {
        this.selectType = selectType;
    }
}
src/main/resources/mapper/ConfigMapper.xml
@@ -10,6 +10,7 @@
        <result column="value" property="value" />
        <result column="type" property="type" />
        <result column="status" property="status" />
        <result column="select_type" property="selectType" />
    </resultMap>
src/main/webapp/static/js/config/config.js
@@ -22,6 +22,7 @@
            ,{field: 'name', align: 'center',title: '名称'}
            ,{field: 'code', align: 'center',title: '编码'}
            ,{field: 'value', align: 'center',title: '对应值'}
            , { field: 'selectType', align: 'center', title: '筛选类型' }
            ,{field: 'type$', align: 'center',title: '类型'}
            ,{field: 'status$', align: 'center',title: '状态'}
@@ -353,6 +354,7 @@
            name: $('#name').val(),
            code: $('#code').val(),
            value: $('#value').val(),
            selectType: $('#selectType').val(),
            type: $('#type').val(),
            status: $('#status').val(),
@@ -394,6 +396,23 @@
    // 时间选择器
    // 初始化筛选类型下拉框
    $.ajax({
        url: baseUrl + "/config/getSelectTypes",
        headers: { 'token': localStorage.getItem('token') },
        method: 'POST',
        success: function (res) {
            if (res.code === 200) {
                var types = res.data;
                var select = $("#selectTypeSearch");
                for (var i = 0; i < types.length; i++) {
                    select.append("<option value='" + types[i] + "'>" + types[i] + "</option>");
                }
                form.render('select');
            }
        }
    });
});
// 关闭动作
src/main/webapp/views/config/config.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title></title>
@@ -10,6 +11,7 @@
    <link rel="stylesheet" href="../../static/css/cool.css" media="all">
    <link rel="stylesheet" href="../../static/css/common.css" media="all">
</head>
<body>
<!-- 搜索栏 -->
@@ -19,11 +21,20 @@
            <input class="layui-input" type="text" name="id" placeholder="编号" autocomplete="off">
        </div>
    </div>
        <div class="layui-inline">
            <div class="layui-input-inline">
                <select name="select_type" id="selectTypeSearch" lay-search="">
                    <option value="">筛选类型</option>
                </select>
            </div>
        </div>
    <!-- 待添加 -->
    <div id="data-search-btn" class="layui-btn-container layui-form-item">
        <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button>
        <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button>
            <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit
                lay-filter="search">搜索</button>
            <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit
                lay-filter="reset">重置</button>
    </div>
</div>
@@ -55,5 +66,5 @@
<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
</body>
</html>
</html>
src/main/webapp/views/config/config_detail.html
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title></title>
@@ -10,6 +11,7 @@
    <link rel="stylesheet" href="../../static/css/cool.css" media="all">
    <link rel="stylesheet" href="../../static/css/common.css" media="all">
</head>
<body>
<!-- 详情 -->
@@ -59,12 +61,19 @@
                </select>
            </div>
        </div>
            <div class="layui-inline" style="width:97%;">
                <label class="layui-form-label">筛选类型:</label>
                <div class="layui-input-inline">
                    <input id="selectType" class="layui-input" type="text" placeholder="筛选类型">
                </div>
            </div>
        <hr class="layui-bg-gray">
        <div id="data-detail-btn" class="layui-btn-container layui-form-item">
            <div id="data-detail-submit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">保存</div>
                <div id="data-detail-submit" type="button" class="layui-btn layui-btn-normal" lay-submit
                    lay-filter="edit">保存</div>
            <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div>
        </div>
@@ -79,5 +88,5 @@
<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/config/config.js" charset="utf-8"></script>
</html>
</html>