jiazx0107@163.com
2023-05-31 7a7ccfd74dbdff086d2aabe5117ec1dc6f804d91
出入库优化-称重
已删除1个文件
已修改20个文件
666 ■■■■ 文件已修改
igds-basic/src/main/java/com/ld/igds/basic/controller/CommonController.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/common/CoreDicService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/common/impl/CoreDicDataServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/common/manager/CommonManager.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/common/mapper/DicDataMapper.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/models/DicFoodOrigin.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/sys/DicTriggerPR.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/sys/service/DicTriggerService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/sys/service/DicTriggerServiceImpl.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/java/com/ld/igds/view/service/HDicAreaService.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-core/src/main/resources/mapper/DicDataMapper.xml 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-inout/src/main/java/com/ld/igds/inout/controller/InoutApiController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-inout/src/main/java/com/ld/igds/inout/controller/InoutController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-inout/src/main/java/com/ld/igds/inout/manager/InoutCommonManager.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-inout/src/main/java/com/ld/igds/inout/service/impl/InoutServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-inout/src/main/resources/mapper/InoutRecordMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-web/src/main/resources/static/admin/inout/in-weight.js 217 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-web/src/main/resources/static/admin/inout/inout-common.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-web/src/main/resources/static/admin/inout/weight.js 65 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-web/src/main/resources/templates/admin/inout/in-weight.html 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-basic/src/main/java/com/ld/igds/basic/controller/CommonController.java
@@ -11,7 +11,6 @@
import com.ld.igds.grain.dto.GrainData;
import com.ld.igds.inout.dto.InoutParam;
import com.ld.igds.models.Depot;
import com.ld.igds.models.DicFoodOrigin;
import com.ld.igds.models.DicSysConf;
import com.ld.igds.util.ContextUtil;
import com.ld.igds.util.FilesUtil;
@@ -129,20 +128,6 @@
        return new PageResponse<>(RespCodeEnum.CODE_0000, listDepot);
    }
    /**
     * å‡ºå…¥åº“中-粮食产地
     *
     * @param param æŸ¥è¯¢å…³é”®å­—可以是ID也可能是名称
     * @return
     */
    @RequestMapping("/page-food-location")
    public PageResponse<Page<DicFoodOrigin>> pageFoodLocation(
            @RequestBody InoutParam param) {
        return commonManager.pageFoodLocation(param);
    }
    /**
     * å¸®åŠ©é¡µé¢è·³è½¬
     *
igds-core/src/main/java/com/ld/igds/common/CoreDicService.java
@@ -7,7 +7,6 @@
import com.ld.igds.common.dto.PosDto;
import com.ld.igds.data.BaseParam;
import com.ld.igds.data.Page;
import com.ld.igds.models.DicFoodOrigin;
import com.ld.igds.models.DicSlogan;
/**
@@ -57,13 +56,5 @@
     * @param posDto
     */
    void delPosByBizId(PosDto posDto);
    /**
     * åˆ†é¡µæŸ¥è¯¢ç²®é£Ÿäº§åœ°ä¿¡æ¯
     *
     * @param param
     * @return
     */
    Page<DicFoodOrigin> pageFoodLocation(BaseParam param);
}
igds-core/src/main/java/com/ld/igds/common/impl/CoreDicDataServiceImpl.java
@@ -5,7 +5,6 @@
import com.ld.igds.common.mapper.DicDataMapper;
import com.ld.igds.data.BaseParam;
import com.ld.igds.data.Page;
import com.ld.igds.models.DicFoodOrigin;
import com.ld.igds.models.DicSlogan;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -53,24 +52,6 @@
        if (StringUtils.isEmpty(bizTag)) return null;
        return dicDataMapper.getPosByBizTag(companyId, bizTag);
    }
    @Override
    public Page<DicFoodOrigin> pageFoodLocation(BaseParam param) {
        Page<DicFoodOrigin> page = new Page<DicFoodOrigin>(param.getPage(),
                param.getLimit());
        page.setSearchCount(false);
        if (StringUtils.isNoneEmpty(param.getKey())) {
            param.setKey("%" + param.getKey().toUpperCase() + "%");
        }
        List<DicFoodOrigin> records = dicDataMapper.pageFoodLocataion(page, param);
        page.setRecords(records);
        return page;
    }
}
igds-core/src/main/java/com/ld/igds/common/manager/CommonManager.java
@@ -481,18 +481,6 @@
        return new PageResponse<>(RespCodeEnum.CODE_0000, data);
    }
    public PageResponse<Page<DicFoodOrigin>> pageFoodLocation(InoutParam param) {
        Page<DicFoodOrigin> result = coreDicService.pageFoodLocation(param);
        if (null == result.getRecords() || result.getRecords().isEmpty()) {
            return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(),
                    "获取到数据信息为空");
        }
        return new PageResponse<Page<DicFoodOrigin>>(RespCodeEnum.CODE_0000,
                result);
    }
    public DepotConf getDepotConf(String companyId, String depotId) {
        return coreCommonService.getCacheDepotConf(companyId, depotId);
igds-core/src/main/java/com/ld/igds/common/mapper/DicDataMapper.java
@@ -1,9 +1,6 @@
package com.ld.igds.common.mapper;
import com.ld.igds.common.dto.PosDto;
import com.ld.igds.data.BaseParam;
import com.ld.igds.data.Page;
import com.ld.igds.models.DicFoodOrigin;
import com.ld.igds.models.DicSlogan;
import org.apache.ibatis.annotations.Param;
@@ -41,15 +38,6 @@
    DicSlogan getDicSlogan(@Param("param")Map<String,Object> parameter);
    void delPosByBizId(@Param("dto")  PosDto posDto);
    /**
     * åˆ†é¡µèŽ·å–ç²®é£Ÿäº§åœ°ä¿¡æ¯
     * @param page
     * @param param
     * @return
     */
    List<DicFoodOrigin> pageFoodLocataion(@Param("page") Page<DicFoodOrigin> page,
            @Param("param") BaseParam param);
    /**
igds-core/src/main/java/com/ld/igds/models/DicFoodOrigin.java
ÎļþÒÑɾ³ý
igds-core/src/main/java/com/ld/igds/sys/DicTriggerPR.java
@@ -8,7 +8,6 @@
import com.ld.igds.constant.BizType;
import com.ld.igds.constant.Constant;
import com.ld.igds.constant.ControlModel;
import com.ld.igds.models.DicFoodOrigin;
import com.ld.igds.models.DicTrigger;
import com.ld.igds.sys.service.DicTriggerService;
import com.ld.igds.util.ContextUtil;
@@ -211,22 +210,4 @@
    public List<DicTrigger> queryDicByKey(Map<String, Object> param) {
        return dicTriggerService.queryDicByKey(param);
    }
    /**
     * dicTriggerPR#pagFoodLocationData
     *
     * @param page
     * @param param
     * @throws Exception
     */
    @DataProvider
    public void pagFoodLocationData(Page<DicFoodOrigin> page,
                                    Map<String, Object> param) throws Exception {
        if (null == param)
            param = new HashMap<String, Object>();
        param.put("disabledTag", Constant.YN_N);
        dicTriggerService.pagFoodLocationData(page, param);
    }
    ;
}
igds-core/src/main/java/com/ld/igds/sys/service/DicTriggerService.java
@@ -1,7 +1,6 @@
package com.ld.igds.sys.service;
import com.bstek.dorado.data.provider.Page;
import com.ld.igds.models.DicFoodOrigin;
import com.ld.igds.models.DicTrigger;
import java.util.List;
@@ -96,9 +95,6 @@
     * @return
     */
    List<DicTrigger> queryDicByKey(Map<String, Object> parameter);
    void pagFoodLocationData(Page<DicFoodOrigin> page, Map<String, Object> param)  throws Exception;
    /**
     * å¤åˆ¶å­—典数据
igds-core/src/main/java/com/ld/igds/sys/service/DicTriggerServiceImpl.java
@@ -5,7 +5,6 @@
import com.bstek.dorado.util.Assert;
import com.ld.igds.constant.Constant;
import com.ld.igds.constant.RedisConst;
import com.ld.igds.models.DicFoodOrigin;
import com.ld.igds.models.DicTrigger;
import com.ld.igds.util.ContextUtil;
import com.ld.igds.util.RedisUtil;
@@ -206,53 +205,6 @@
        hql += " order by code ";
        return this.query(hql, args);
    }
    @Override
    public void pagFoodLocationData(Page<DicFoodOrigin> page, Map<String, Object> param)
            throws Exception {
        String hql = " from " + DicFoodOrigin.class.getName() + " where 1=1";
        Map<String, Object> args = new HashMap<String, Object>();
        if (null != param) {
            String str = (String) param.get("code");
            if (StringUtils.isNotEmpty(str)) {
                hql += " and code like :code";
                args.put("code", "%" + str + "%");
            }
            str = (String) param.get("name");
            if (StringUtils.isNotEmpty(str)) {
                hql += " and name like :name";
                args.put("name", "%" + str + "%");
            }
            str = (String) param.get("disabledTag");
            if (StringUtils.isNotEmpty(str)) {
                hql += " and disabledTag = :disabledTag";
                args.put("disabledTag", str);
            }
            str = (String) param.get("key");
            if (StringUtils.isNoneEmpty(str)) {
                hql += " and (name like :name or code like:code or simple like:simple) ";
                args.put("name", "%" + str + "%");
                args.put("code", "%" + str + "%");
                args.put("simple", "%" + str.toUpperCase() + "%");
            }
        }
        String coutHql = "select count(*) " + hql;
        hql += " order by sort";
        if (args.isEmpty()) {
            this.pagingQuery(page, hql, coutHql);
        } else {
            this.pagingQuery(page, hql, coutHql, args);
        }
    }
    @Override
    public String copy2Target(String sourceId, String targetId) {
igds-core/src/main/java/com/ld/igds/view/service/HDicAreaService.java
@@ -1,9 +1,7 @@
package com.ld.igds.view.service;
import com.bstek.bdf2.core.orm.hibernate.HibernateDao;
import com.bstek.dorado.data.provider.Page;
import com.ld.igds.models.DicArea;
import com.ld.igds.models.DicFoodOrigin;
import org.apache.commons.lang3.StringUtils;
import org.hibernate.Session;
import org.springframework.stereotype.Component;
@@ -82,48 +80,5 @@
            return null;
        }
        return list.get(0);
    }
    public void getDicArea(Page<DicFoodOrigin> page, Map<String,Object> param) throws Exception {
        String hql = " from " + DicArea.class.getName() + " where 1=1";
        Map<String, Object> args = new HashMap<String, Object>();
        if (null != param) {
            String str = (String) param.get("code");
            if (StringUtils.isNotEmpty(str)) {
                hql += " and code like :code";
                args.put("code", "%" + str + "%");
            }
            str = (String) param.get("name");
            if (StringUtils.isNotEmpty(str)) {
                hql += " and name like :name";
                args.put("name", "%" + str + "%");
            }
            str = (String) param.get("disabledTag");
            if (StringUtils.isNotEmpty(str)) {
                hql += " and disabledTag = :disabledTag";
                args.put("disabledTag", str);
            }
            str = (String) param.get("key");
            if (StringUtils.isNoneEmpty(str)) {
                hql += " and (name like :name or code like:code or simple like:simple) ";
                args.put("name", "%" + str + "%");
                args.put("code", "%" + str + "%");
                args.put("simple", "%" + str.toUpperCase() + "%");
            }
        }
        String coutHql = "select count(*) " + hql;
        hql += " order by code";
        if (args.isEmpty()) {
            this.pagingQuery(page, hql, coutHql);
        } else {
            this.pagingQuery(page, hql, coutHql, args);
        }
    }
}
igds-core/src/main/resources/mapper/DicDataMapper.xml
@@ -84,23 +84,4 @@
        </where>
    </select>
    <select id="pageFoodLocataion" resultType="com.ld.igds.models.DicFoodOrigin" parameterType="com.ld.igds.data.BaseParam">
    select
    ID_ as id,
    CODE_ as code,
    NAME_ as name,
    SIMPLE_ as simple,
    SORT_ as SORT_,
    DISABLED_TAG_ as disabledTag
    from
    D_DIC_FOOD_ORIGIN
    <where>
         DISABLED_TAG_ ='N'
         <if test="param.key != null and ''!= param.key">AND (CODE_ like #{param.key} OR NAME_ like #{param.key} OR SIMPLE_ like #{param.key} )</if>
    </where>
    order by SORT_
    </select>
</mapper>
igds-inout/src/main/java/com/ld/igds/inout/controller/InoutApiController.java
@@ -61,8 +61,8 @@
     * @return
     */
    @ResponseBody
    @RequestMapping("/ic-card-num")
    public PageResponse<ApiInoutData> getIcCardNum(@RequestBody ApiInoutData param) {
    @RequestMapping("/get-icCard")
    public PageResponse<ApiInoutData> getIcCard(@RequestBody ApiInoutData param) {
        if (StringUtils.isEmpty(param.getProtocol())) {
            return new PageResponse<>(RespCodeEnum.CODE_1007.getCode(), "当前智慧卡未配置通讯协议,无法执行");
igds-inout/src/main/java/com/ld/igds/inout/controller/InoutController.java
@@ -1,5 +1,6 @@
package com.ld.igds.inout.controller;
import ch.qos.logback.classic.pattern.ClassNameOnlyAbbreviator;
import com.bstek.bdf2.core.business.IUser;
import com.ld.igds.check.dto.CheckItemData;
import com.ld.igds.common.manager.CommonManager;
@@ -527,6 +528,7 @@
     */
    @RequestMapping("/inout-query")
    public PageResponse<InoutData> inoutQuery(@RequestBody InoutParam param) {
        if(null == param.getCompanyId()) param.setCompanyId(ContextUtil.getCompanyId());
        return inoutManager.inoutQuery(param);
    }
igds-inout/src/main/java/com/ld/igds/inout/manager/InoutCommonManager.java
@@ -1,5 +1,6 @@
package com.ld.igds.inout.manager;
import com.ld.igds.constant.Constant;
import com.ld.igds.inout.InoutConstant;
import com.ld.igds.inout.dto.InoutData;
import com.ld.igds.inout.service.InoutService;
@@ -105,7 +106,7 @@
        return result;
    }
    public InoutConf getInoutConf(List<InoutConf> listInoutConf, String sort,String type) {
    public InoutConf getInoutConf(List<InoutConf> listInoutConf, String sort, String type) {
        if (null == listInoutConf) return new InoutConf(sort);
        if (StringUtils.isEmpty(sort)) sort = "1";
@@ -143,13 +144,14 @@
    public String getWeightEditTag(String companyId, String deptId) {
        // ä»Žç¼“存中获取出入库系统配置信息
        InoutSysConf inoutSysConf = inoutCommonService.getCacheInoutSysConf(companyId, deptId);
        String weightEditTag = null;
        String weightEditTag = Constant.YN_N;
        if (inoutSysConf != null) {
            weightEditTag = inoutSysConf.getWeightEditTag();
        }
        if (null == weightEditTag) weightEditTag = Constant.YN_N;
        return weightEditTag;
    }
    /**
igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java
@@ -56,7 +56,7 @@
    private InoutDeviceManager inoutDeviceManager;
    /**
     * å½“前先从当日缓存中获取数据,如果缓存中没有再从数据库获取
     * é¦–先从缓存中获取,缓存中,从数据库中获取
     *
     * @param param
     * @return
@@ -67,22 +67,17 @@
                && StringUtils.isEmpty(param.getUserId())) {
            return new PageResponse<>(RespCodeEnum.CODE_1007.getCode(),
                    "参数不完整,无法获取信息!");
        }
        if (StringUtils.isEmpty(param.getCompanyId())) {
            param.setCompanyId(ContextUtil.getCompanyId());
                    "查询参数不完整,查询失败!");
        }
        InoutData result;
        String progress = param.getProgress();
        try {
            param.setProgress(null);
            result = inoutService.inoutProgressQuery(param);
            if (null == result) {
                return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(),
                        "未找到流程中的车辆!", null);
                        "系统为查询到执行中的车辆信息", null);
            }
            // å¦‚果没有流程条件说明不需要做判断,直接返回
@@ -90,17 +85,16 @@
                return new PageResponse<>(RespCodeEnum.CODE_0000, result);
            }
            //流程类型验证
            if (!result.getType().equals(param.getType())) {
                if (InoutConstant.TYPE_IN.equals(result.getType())) {
                    return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(),
                            "系统:当前车辆业务为【入库】", result);
                } else {
                    return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(),
                            "系统:当前车辆业务为【出库】", result);
                }
                String msg = "流程错误:当前车辆流程为【入库】";
                if (InoutConstant.TYPE_OUT.equals(result.getType())) msg = "流程错误:当前车辆流程为【出库】";
                return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(), msg, result);
            }
            // å½“前标签标示既可以是空车称重也可以是满车
            //流程环节验证
            if (progress.equals(InoutConstant.PROGRESS_WEIGHT_TAG)) {
                if (result.getProgress().equals(
                        InoutConstant.PROGRESS_WEIGHT_EMPTY)
@@ -109,7 +103,7 @@
                    // è¡¨ç¤ºå½“前流程正常
                } else {
                    return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(),
                            "非当前流程,请到"
                            "提示:非当前环节,请到"
                                    + InoutConstant.getProcessName(
                                    param.getType(),
                                    result.getProgress()), result);
@@ -117,33 +111,10 @@
            } else {
                if (!result.getProgress().equals(progress)) {
                    return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(),
                            "非当前流程,请到"
                            "提示:非当前环节,请到"
                                    + InoutConstant.getProcessName(
                                    param.getType(),
                                    result.getProgress()), result);
                }
            }
            // æ ¹æ®å½“前数据判断是否推送
            inoutService.notifyWeb(result);
            //为当前数据添加化验项目和水分和杂质的化验结果,用于出入库增扣重计算
            if (InoutConstant.TYPE_IN.equals(result.getType())) {
                List<CheckItemData> checkItemDataList = inoutService.getCheckCache(result.getCompanyId(), result.getCheckId());
                result.setCheckItems(checkItemDataList);
                if (null != checkItemDataList && checkItemDataList.size() > 0) {
                    for (CheckItemData checkItem : checkItemDataList) {
                        if (StringUtils.isEmpty(checkItem.getValue())) {
                            continue;
                        }
//                        if (InoutConstant.CHECK_ITEM_C01.equals(checkItem.getStandardId())) {
//                            result.setWet(Double.valueOf(checkItem.getValue()));
//                        }
//                        if (InoutConstant.CHECK_ITEM_C02.equals(checkItem.getStandardId())) {
//                            result.setImpurity(Double.valueOf(checkItem.getValue()));
//                        }
                    }
                }
            }
@@ -1106,6 +1077,7 @@
    /**
     * æ ¹æ®æ¡ä»¶èŽ·å–æ‰¦æ ·æ•°æ®
     *
     * @param param
     * @return
     */
igds-inout/src/main/java/com/ld/igds/inout/service/impl/InoutServiceImpl.java
@@ -53,11 +53,14 @@
        if (StringUtils.isEmpty(param.getCompanyId())) {
            param.setCompanyId(ContextUtil.getCompanyId());
        }
        // é¦–先从缓存中获取,如果没有则从数据库获取
        InoutData result = this.getFromInoutCache(param);
        if (null != result) {
            return result;
        }
        List<InoutData> list = inoutMapper.inoutProgressQuery(param);
        if (null == list || list.size() == 0)
            return null;
@@ -457,6 +460,7 @@
        if (StringUtils.isEmpty(param.getDeptId())) {
            param.setDeptId(ContextUtil.subDeptId(null));
        }
        List<InoutData> list = getListInoutCache(param.getDeptId());
        if (null == list || list.isEmpty())
            return null;
igds-inout/src/main/resources/mapper/InoutRecordMapper.xml
@@ -82,7 +82,6 @@
            <if test="param.intelCard != null and param.intelCard != '' ">AND INTEL_CARD_ = #{param.intelCard}</if>
            <if test="param.id != null and param.id != '' ">AND ID_ = #{param.id}</if>
            <if test="param.progress != null and param.progress != '' ">AND PROGRESS_ = #{param.progress}</if>
            AND PROGRESS_ != 'RECORD'
            AND RECORD_STATUS_ != 'ERROR'
            AND RECORD_STATUS_ != 'DEL'
igds-web/src/main/resources/static/admin/inout/in-weight.js
@@ -5,8 +5,8 @@
var recordData = null;// ä¸šåŠ¡æ•°æ®ä¿¡æ¯
var snapData;//系统抓拍对象信息
var timerWeight;
var textParam;//设备识别结果
var curProgress;//当前详细流程
var paramIntelCard;//设备识别结果
var paramIdCard;//设备识别结果
$(function () {
    layui.use(['layer', 'laydate', 'form', 'table', 'util'], function () {
@@ -85,76 +85,38 @@
    //暂无
}
// æ ¹æ®å½“前操作的按钮ID更新其他按钮状态
function flushBtn(btnId) {
    if ("btn-weight" == btnId) {// ç§°é‡åŽå¯ä»¥ç‚¹å‡»å®Œæˆç§°é‡
        $("#btn-submit").removeClass("layui-btn-disabled");
        $("#btn-submit").attr("disabled", false);
    }
    if ("btn-submit" == btnId) {
        $("#btn-submit").addClass("layui-btn-disabled");
        $("#btn-submit").attr("disabled", true);
        if (InoutProgress.WEIGHT_FULL == recordData.progress) {// å¦‚果是满车称重,则直接当前节点完成
            resetForm();
        } else {
            // å®Œæˆç§°é‡åŽæŽ§åˆ¶æŒ‰é’®
            $("#btn-weight").addClass("layui-btn-disabled");
            $("#btn-weight").attr("disabled", true);
            $("#btn-printBill").removeClass("layui-btn-disabled");
            $("#btn-printBill").attr("disabled", false);
        }
    }
    if ("btn-printBill" == btnId) {// æ‰“印过磅单,说明业务完成
        $("#btn-weight").removeClass("layui-btn-disabled");
        $("#btn-weight").attr("disabled", false);
        $("#btn-submit").addClass("layui-btn-disabled");
        $("#btn-submit").attr("disabled", true);
        $("#btn-printBill").addClass("layui-btn-disabled");
        $("#btn-printBill").attr("disabled", true);
        resetForm();
    }
}
//点击称重
function weight() {
    // æ²¡æœ‰ä¸šåŠ¡æ•°æ®ä¸å¯æ‰§è¡Œ
    if (!recordData) {
        alertError("没有查询到业务数据,执行被拒绝!!");
        alertError("没有查询到业务数据,执行被拒绝!");
        return;
    }
    // å¦‚果是空车称重
    if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
        form.val("form-data", {
            emptyWeight: weightDto.weight
        });
        form.render();
    }
    // å¦‚果是满车称重
    if (InoutProgress.WEIGHT_FULL == recordData.progress) {
        form.val("form-data", {
            fullWeight: weightDto.weight
        });
        form.render();
    }
    form.render();
    // ç‚¹å‡»ç§°é‡æ—¶å€™è‡ªåŠ¨æŠ“æ‹æ•°æ®--增加通知信息
    layer.msg("系统自动抓拍保留记录……");
    // ç‚¹å‡»ç§°é‡è‡ªåŠ¨è°ƒç”¨æŠ“æ‹
    snapData = {
        companyId: companyId,
        deptId: deptId,
        progress: recordData.progress,
        bizType: bizType,
        plateNum: recordData.plateNum,
        id1: (null != snapDto1) ? snapDto1.id : null,
        id2: (null != snapDto2) ? snapDto2.id : null,
        id3: (null != snapDto3) ? snapDto3.id : null,
        id1: snapDto1.id,
        id2: snapDto2.id,
        id3: snapDto3.id,
        sort: $("#scaleName").val(),
        weight: weightDto.weight
    };
@@ -171,62 +133,57 @@
        success: function (result) {
            layer.close(index);
            if (result.code != "0000") {
                layer.alert(result.msg);
                alertError(result.msg);
            } else {
                snapData = result.data;
            }
        },
        error: function () {
            layer.close(index);
            layer.msg("后台调用截图失败,请重新尝试!!");
            alertError("后台调用截图失败,请重新尝试");
        }
    });
    //入库第二次称重时调用计算方法
    //如果是第二次称重,默认执行自动计算
    if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
        deAutoByIn("emptyWeight");
    }
    flushBtn("btn-weight");
}
//新的读卡方式
//读智慧卡
function flushICCard() {
    flushICCard1();
    if (!cardDto.protocol) {
        flushICCard1();
    } else {
        flushICCard2();
    }
}
/**
 * åè®®è¯»å–智慧卡
 */
function flushICCard2() {
    var param = JSON.stringify(cardDto);
    var index = layer.load();
    var param = JSON.stringify(cardDto);
    $.ajax({
        type: "POST",
        url: "../../inout/api/ic-card-num",
        url: "../../inout/api/get-icCard",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: param,
        success: function (result) {
            if (result.code != "0000") {
                layer.alert(result.msg, {
                    offset: ['300px', '300px']
                });
            } else {
                if (result.data.errorMsg) {
                    layer.alert(result.data.errorMsg, {
                        offset: ['300px', '300px']
                    });
                } else {
                    $("#intelCard").val(result.data.icCardNo);
                }
            }
            layer.close(index);
            if (result.code != "0000") {
                alertError(result.msg);
            } else {
                paramIntelCard = data;
                $("#text-param").text("识别卡号:" + paramIntelCard);
                flushData(paramIntelCard, null);
            }
        },
        error: function () {
            layer.close(index);
            layer.alert("IC卡读取失败!", {
                offset: ['300px', '300px']
            });
            alertError("IC卡读取失败");
        }
    });
}
@@ -235,6 +192,7 @@
 * æœ¬åœ°è¯»å–智慧卡
 */
function flushICCard1() {
    var index = layer.load();
    $("#text-param").val(null);
    $("#form-data")[0].reset();
    form.render();
@@ -249,21 +207,23 @@
        jsonpCallback: "jsonpCallback",
        success: function (json) {
            var data = json.no;
            layer.close(index);
            if (data === "not found") {
                alertError("请重新读卡!");
            } else {
                textParam = data;
                $("#text-param").text("识别卡号:" + textParam);
                flushData();
                paramIntelCard = data;
                $("#text-param").text("识别卡号:" + paramIntelCard);
                flushData(paramIntelCard, null);
            }
        },
        error: function () {
            layer.close(index);
            alertError("IC卡读取出错!");
        }
    });
}
// ä½¿ç”¨æ’件获取省份证
// ä½¿ç”¨æ’件获取身份证
function flushIdCard() {
    var index = layer.load();
    $.ajax({
@@ -278,21 +238,22 @@
            layer.close(index);
            var data = json.content;
            if (data === "not found") {
                layer.alert("没有读取到身份证信息,请手动录入!", {
                    offset: ['300px', '300px']
                });
                alertError("没有读取到身份证信息!");
                return;
            }
            $("#userId").val(data.idNum);
            flushData();
            paramIdCard = data;
            $("#text-param").text("识别身份证:" + paramIdCard);
            flushData(null, paramIdCard);
        },
        error: function () {
            layer.alert("身份证读取失败,请手动录入!", {
                offset: ['300px', '300px']
            });
            alertError("没有读取到身份证信息!");
            layer.close(index);
        }
    });
}
function flushByHand() {
    flushData(null, null);
}
function flushWeight() {
@@ -352,12 +313,9 @@
                layer.msg("开始渲染打印单……");
                if (companyId && companyId == "5016") {
                    print5016Weight(result.data);
                    console.log("5016");
                } else {
                    printWeight(result.data);
                }
                // åˆ·æ–°æŒ‰é’®
                flushBtn("btn-printBill");
            }
        },
        error: function () {
@@ -380,12 +338,6 @@
    //称重可以复用
    $("#btn-weight").removeClass("layui-btn-disabled");
    $("#btn-weight").attr("disabled", false);
    //空车和满车被重置
    updateEditAndProgress();
    //扣重信息框恢复为可编辑
    delDisabled();
}
function flushPage() {
@@ -397,19 +349,18 @@
}
// --查询方法,获取身份证号、卡号、车牌号,进行查询
function flushData() {
function flushData(intelCard, userIdCard) {
    var index = layer.load();
    var userId2 = $("#userId").val();
    var intelCard = $("#intelCard").val();
    var userIdCard = userIdCard;
    var intelCard = intelCard;
    var plateNum = $("#plateNum").val();
    var param = {
        type: type,
        progress: progress,
        intelCard: intelCard,
        userId: userId2,
        userId: userIdCard,
        plateNum: plateNum
    };
    $.ajax({
        type: "POST",
        url: "../../basic/inout/inout-query",
@@ -417,66 +368,57 @@
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(param),
        success: function (result) {
            layer.close(index);
            if (result.code != "0000") {
                notify(result.msg, result.data);
                notifyProgress(result.msg, result.data);
            } else {
                recordData = result.data;
                // è¿”回的数据进行赋值
                form.val("form-data", recordData);
                form.render();
                updateEditAndProgress();
            }
            layer.close(index);
        },
        error: function () {
            layer.close(index);
            layer.alert("查询失败,请重新尝试!!");
            alertError("查询失败,请重新尝试");
        }
    });
}
/**
 * è·Ÿæ–°æµç¨‹è¯´æ˜Žæå¿ƒä¿¡æ¯
 * æ ¹æ®ä¸šåŠ¡æ•°æ®æ›´æ–°é¡µé¢ä¸­çš„çŠ¶æ€
 */
function updateEditAndProgress() {
    if (recordData) {
        if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
            $("#emptyWeight").removeClass("rkbk-search-input");
            $("#emptyWeight").attr("disabled", false);
    if (!recordData) return true;
    var curProgress = recordData.progress;
            $("#progress-hand").addClass("active");
            $("#progress-emptyWeight").addClass("active");
    //空车称重
    if (InoutProgress.WEIGHT_EMPTY == curProgress) {
        $("#progress-hand").addClass("active");
        $("#progress-emptyWeight").addClass("active");
            $("#fullWeight").addClass("rkbk-search-input");
            $("#fullWeight").attr("disabled", true);
        }
        if (InoutProgress.WEIGHT_FULL == recordData.progress) {
            $("#fullWeight").removeClass("rkbk-search-input");
            $("#fullWeight").attr("disabled", false);
        $("#depotIdLabel").removeClass("color-red");
    }
            $("#progress-hand").removeClass("active");
            $("#progress-emptyWeight").removeClass("active");
            $("#emptyWeight").addClass("rkbk-search-input");
            $("#emptyWeight").attr("disabled", true);
        }
    } else {
        $("#fullWeight").addClass("rkbk-search-input");
        $("#fullWeight").attr("disabled", true);
        $("#emptyWeight").addClass("rkbk-search-input");
        $("#emptyWeight").attr("disabled", true);
    //满车称重
    if (InoutProgress.WEIGHT_FULL == curProgress) {
        $("#progress-hand").removeClass("active");
        $("#progress-emptyWeight").removeClass("active");
    }
    //根据配置信息设置地磅是否可编辑
    if (weightEditTag && weightEditTag == 'N') {
        $("#fullWeight").addClass("rkbk-search-input");
        $("#fullWeight").attr("disabled", true);
        $("#emptyWeight").addClass("rkbk-search-input");
        $("#emptyWeight").attr("disabled", true);
        //装卸仓库必填
        $("#depotIdLabel").addClass("color-red");
    }
    //设置可编辑
    if (weightEditTag == 'Y') {
        $("#fullWeight").removeClass("rkbk-search-input");
        $("#fullWeight").attr("disabled", false);
        $("#emptyWeight").removeClass("rkbk-search-input");
        $("#emptyWeight").attr("disabled", false);
    }
}
@@ -541,8 +483,6 @@
                notify(result.msg, result.data);
            } else {
                notify("数据提交成功", result.data);
                // æ›´æ–°æŒ‰é’®æ˜¾ç¤º
                flushBtn("btn-submit");
            }
            layer.close(index);
        },
@@ -572,6 +512,11 @@
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(param)
    });
}
//显示质检信息
function showCheck() {
    alertError("调整");
}
@@ -709,5 +654,3 @@
        layer.msg("没有获取到设备!");
    }
}
//-------------------------道闸操作--------------------------//
igds-web/src/main/resources/static/admin/inout/inout-common.js
@@ -61,6 +61,6 @@
            }
        });
    } else {
        layer.alert(msg, {offset: ['300px', '300px']});
        alertError(msg);
    }
}
igds-web/src/main/resources/static/admin/inout/weight.js
@@ -1,9 +1,5 @@
/**
 * å…¥åº“-称重自动计算
 * 1、净重 = æ¯›é‡ - çš®é‡ ï¼› æ€»æ‰£é‡ = æ‰£æ°´æ‚ + çŽ°åœºæ‰£é‡ + å…¶ä»–扣重
 * 2、水分扣重根据化验水分信息自动计算,正数=扣重,负数=增重
 * 3、结算重量 = å‡€é‡ - æ€»æ‰£é‡ ï¼ˆå«æ°´æ‚增重); å…¥åº“重量 = å‡€é‡ - æ€»æ‰£é‡ ï¼ˆä¸å«æ°´æ‚增重)
 * æ³¨æ„ï¼šå¦‚果是手动修改了水分和杂质的扣重,则不按照配置规则进行增扣重计算
 * @param name è§¦å‘事件的属性名称
 */
function deAutoByIn(name) {
@@ -11,66 +7,24 @@
    if (curData.fullWeight == 0 || curData.emptyWeight == 0) {
        return;
    }
    //汇总结果
    var deSum = 0, addSum = 0, settleWeight = 0, recordWeight = 0;
    // å‡€é‡
    var netWeight = curData.fullWeight - curData.emptyWeight;
    //扣水杂
    var deWet = curData.deWet, deImpurity = curData.deImpurity;
    if (netWeight <= 0) {
        layer.alert("净重小于0,当前称重存在逻辑问题");
        alertError("净重<=0,当前环节存在逻辑错误,请核对");
        return;
    }
    //其他信息
    var deHandle = curData.deHandle, dePackage = curData.dePackage, deOther = curData.deOther, settleWeight = 0,
        recordWeight = 0, deCheck = curData.deCheck, addCheck = curData.addCheck;
    recordWeight = Number(netWeight) - Number(deHandle) - Number(dePackage) - Number(deOther) - Number(deCheck);
    settleWeight = Number(recordWeight) + Number(addCheck);
    var deBase = 0, multiple = 0;
    //水分杂质,更改比例并且水分扣重还没计算情况下
    if ("emptyWeight" == name || null == deWet) {
        var checkItem = this.getCheckItem(recordData.checkItems, CHECK_ST.C01, CHECK_ST.C020101);
        if (checkItem) {
            deBase = Number(curData.wet) - Number(checkItem.upperLimit);
            if (deBase == 0) return;
            multiple = parseInt(deBase / checkItem.ruleNum);//倍数
            deWet = (netWeight * multiple * checkItem.ruleReduce / 100.00).toFixed(0);
        }
    }
    //杂质
    if ("emptyWeight" == name || null == deImpurity) {
        checkItem = this.getCheckItem(recordData.checkItems, CHECK_ST.C02, CHECK_ST.C01010301);
        if (checkItem) {
            deBase = Number(curData.impurity) - Number(checkItem.upperLimit);
            if (deBase == 0) return;
            multiple = parseInt(deBase / checkItem.ruleNum);
            deImpurity = (netWeight * multiple * checkItem.ruleReduce / 100.00).toFixed(0);
        }
    }
    /** æ€»æ‰£é‡ï¼Œä¸å«å¢žé‡*/
    deSum = Number(curData.deOther) + Number(curData.deHandle);
    if (Number(deWet) > 0) {//扣重
        deSum = deSum + Number(deWet);
    } else {
        addSum = addSum + Number(deWet);
    }
    if (Number(deImpurity) > 0) {//扣重
        deSum = deSum + Number(deImpurity);
    } else {
        addSum = addSum + Number(deImpurity);
    }
    deSum = deSum.toFixed(0);
    /** å¢žé‡è½¬æ­£æ•°ï¼Œä¾¿äºŽè®¡ç®—  */
    addSum = Math.abs(addSum).toFixed(0);
    /** å…¥åº“重量 = å‡€é‡ - æ€»æ‰£é‡  */
    recordWeight = Number(netWeight) - Number(deSum);
    /** ç»“算重量 = å‡€é‡ - æ€»æ‰£é‡ + å¢žé‡ */
    settleWeight = Number(netWeight) - Number(deSum) + Number(addSum);
    netWeight = netWeight.toFixed(0);
    recordWeight = recordWeight.toFixed(0);
    settleWeight = recordWeight.toFixed(0);
    form.val("form-data", {
        netWeight: netWeight,
        deImpurity: deImpurity,
        deWet: deWet,
        deSum: deSum,
        settleWeight: settleWeight,
        recordWeight: recordWeight
    });
@@ -336,4 +290,5 @@
        }
    });
}
// ---------------------------粮食产地 -结束 -------------------//
igds-web/src/main/resources/templates/admin/inout/in-weight.html
@@ -146,17 +146,14 @@
                    <i><img th:src="@{../../static/images/icon-chengzhong.png}"/></i>称重确认
                </button>
                <button id="btn-submit"
                        class="rkbk-quick-btn layui-btn btn-green layui-btn-disabled"
                        class="rkbk-quick-btn layui-btn btn-green"
                        disabled=true onclick="submit()">
                    <i><img th:src="@{../../static/images/icon-ok.png}"/></i>完成称重
                </button>
                <button id="btn-printBill"
                        class="rkbk-quick-btn layui-btn btn-blue layui-btn-disabled"
                        class="rkbk-quick-btn layui-btn btn-blue"
                        disabled=true onclick="printBill()">
                    <i><img th:src="@{../../static/images/icon-dayin.png}"/></i>打印过磅单
                </button>
                <button class="rkbk-quick-btn layui-btn" onclick="gateCtrl()">
                    <i><img th:src="@{../../static/images/icon-hyd.png}"/></i>道闸操作
                </button>
                <button class="rkbk-quick-btn layui-btn btn-violet"
                        onclick="flushPage()">
@@ -264,7 +261,7 @@
                                   class="rkbk-search-btn layui-btn r-120"
                                   onclick="flushIdCard()">
                            <input type="button" value="手动查询"
                                   class="rkbk-search-btn layui-btn" onclick="flushData()">
                                   class="rkbk-search-btn layui-btn" onclick="flushByHand()">
                        </div>
                    </div>
@@ -272,30 +269,23 @@
                        <form class="layui-form" action="" id="form-data"
                              lay-filter="form-data">
                            <div class="layui-form-item display-none">
                                <label class="layui-form-label">隐藏字段-ID</label>
                                <input type="text" name="id">
                            </div>
                            <div class="layui-form-item display-none">
                                <label class="layui-form-label">隐藏字段-流程节点</label>
                                <input type="text" name="progress">
                            </div>
                            <div class="layui-form-item display-none">
                                <label class="layui-form-label">隐藏字段-业务类型</label>
                                <input type="text" name="type">
                            </div>
                            <div class="layui-form-item display-none">
                                <label class="layui-form-label">隐藏字段-客户编码Id</label>
                                <input type="text" name="customerId">
                                <input type="text" name="foodLocationId">
                            </div>
                            <div class="layui-form-item display-none">
                                <label class="layui-form-label">隐藏字段-通知单ID</label>
                                <input type="text" name="noticeId">
                            </div>
                            <div class="layui-form-item display-none">
                                <label class="layui-form-label">隐藏字段-粮食性质</label>
                                <input type="text" name="foodType">
                            </div>
                            <div class="layui-col-xs4">
                                <div class="layui-form-item">
@@ -333,7 +323,7 @@
                                    <label class="layui-form-label color-red">毛重(满车)</label>
                                    <div class="layui-input-block">
                                        <input type="text" name="fullWeight" id="fullWeight" autocomplete="off"
                                               placeholder="地磅自动带入" class="layui-input weight rkbk-search-input" disabled>
                                               placeholder="地磅自动带入" class="layui-input rkbk-search-input" disabled>
                                        <em
                                                class="kccz-data-dw">KG</em>
                                    </div>
@@ -377,7 +367,7 @@
                            <div class="layui-col-xs4">
                                <div class="layui-form-item">
                                    <label class="layui-form-label">装卸仓库</label>
                                    <label class="layui-form-label" id="depotIdLabel">装卸仓库</label>
                                    <div class="layui-input-block">
                                        <select name="depotId" id="depotId" lay-filter="select_depotId">
                                            <option value=""></option>
@@ -399,7 +389,7 @@
                                    <div class="layui-input-block">
                                        <div class="posi-r">
                                            <input id="deCheck" type="text" name="deCheck" placeholder="请输入"
                                                   autocomplete="off" class="layui-input"> <em
                                                   autocomplete="off" class="layui-input weight"> <em
                                                class="kccz-data-dw">KG</em>
                                        </div>
                                    </div>
@@ -442,7 +432,7 @@
                                    <div class="layui-input-block">
                                        <div class="posi-r">
                                            <input id="addCheck" type="text" name="addCheck" placeholder="请输入"
                                                   autocomplete="off" class="layui-input"> <em
                                                   autocomplete="off" class="layui-input weight"> <em
                                                class="kccz-data-dw">KG</em>
                                        </div>
                                    </div>
@@ -554,6 +544,17 @@
                                    <label class="layui-form-label">包装扣重</label>
                                    <div class="layui-input-block">
                                        <input type="text" name="dePackage" autocomplete="off"
                                               placeholder="请输入" class="layui-input weight"> <em
                                            class="kccz-data-dw">KG</em>
                                    </div>
                                </div>
                            </div>
                            <div class="layui-col-xs4">
                                <div class="layui-form-item">
                                    <label class="layui-form-label">标准包重</label>
                                    <div class="layui-input-block">
                                        <input type="text" name="dbz" autocomplete="off"
                                               placeholder="请输入" class="layui-input"> <em
                                            class="kccz-data-dw">KG</em>
                                    </div>
@@ -562,21 +563,10 @@
                            <div class="layui-col-xs4">
                                <div class="layui-form-item">
                                    <label class="layui-form-label">单包重</label>
                                    <div class="layui-input-block">
                                        <input type="text" name="dbz" autocomplete="off"
                                               placeholder="请输入" class="layui-input weight"> <em
                                            class="kccz-data-dw">KG</em>
                                    </div>
                                </div>
                            </div>
                            <div class="layui-col-xs4">
                                <div class="layui-form-item">
                                    <label class="layui-form-label">包件数</label>
                                    <label class="layui-form-label">包件总数</label>
                                    <div class="layui-input-block">
                                        <input type="text" name="bzbjs" autocomplete="off"
                                               placeholder="请输入" class="layui-input weight"> <em
                                               placeholder="请输入" class="layui-input"> <em
                                            class="kccz-data-dw">ä»¶</em>
                                    </div>
                                </div>