fd6fcdc232165afa24d89ff4e77eaa1098d2637d..cc9d69e980b73aae333ab72d370aff82594afbf4
2025-05-23 czt
调整细节
cc9d69 对比 | 目录
2025-05-23 czt
电子货位卡-嵌入气体检测和虫害检测
bb1b45 对比 | 目录
已重命名7个文件
已修改8个文件
已添加28个文件
4851 ■■■■■ 文件已修改
igds-dzhwk-web/src/main/java/com/fzzy/igds/dzhwk/controller/WebController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/application-pro.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/logback-spring.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/common.js 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/common/constant.js 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/common/igds-common.js 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/gas/PrintBuilder.js 209 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/gas/gas-check.js 758 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/gas/gas.css 674 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/PrintBuilder-lay.js 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/grain-check1.js 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/grain-export.js 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/grainPoint1.js 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/lqStyle.css 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/pest/PrintBuilder.js 140 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/pest/pest-check.js 737 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/dzhwk/pest/pest.css 642 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/gasImg_5.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/i-body.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-c-bg2.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-c-bg3.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-r-icon2.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-r-icon4.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-r-icon5.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg1.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg2.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg3.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg4.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon1-h.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon1.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon2-h.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon2.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon3-h.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon3.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-pic.png 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/card.html 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/gas-check.html 497 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/gas.html 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/grain-check1.html 326 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/grain.html 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/pest-check.html 444 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/pest.html 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/resources/templates/dzhwk/verb.html 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
igds-dzhwk-web/src/main/java/com/fzzy/igds/dzhwk/controller/WebController.java
@@ -82,6 +82,16 @@
    }
    /**
     * ä»“储保管作业-粮温检测
     * @param view
     * @return
     */
    @RequestMapping("/gas-check")
    public String gasCheck(ModelMap view) {
        return prefix + "gas-check";
    }
    /**
     * ä»“储保管作业-虫害检测
     * @param view
     * @return
@@ -93,6 +103,16 @@
    }
    /**
     * ä»“储保管作业-粮温检测
     * @param view
     * @return
     */
    @RequestMapping("/pest-check")
    public String pestCheck(ModelMap view) {
        return prefix + "pest-check";
    }
    /**
     * ä»“储保管作业-通风作业
     * @param view
     * @return
igds-dzhwk-web/src/main/resources/application-pro.yml
@@ -1,6 +1,6 @@
# å¼€å‘环境配置
server:
  port: 8110
  port: 8111
  servlet:
    context-path: /
  tomcat:
@@ -22,7 +22,7 @@
    druid:
      # ä¸»åº“数据源
      master:
        url: jdbc:mysql://127.0.0.1:3306/fzzy_ms?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        url: jdbc:mysql://127.0.0.1:3306/igds_dzhwk?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: root
        password: Abc123..
      # ä»Žåº“数据源
@@ -78,7 +78,7 @@
  # Redis相关配置
  redis:
    database: 1
    database: 5
    host: 127.0.0.1
    port: 6379
    password: Abc123..
@@ -97,7 +97,7 @@
    generate-ddl: false
    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
    hibernate:
      ddl-auto: none
      ddl-auto: update
    properties:
      hibernate:
        jdbc:
igds-dzhwk-web/src/main/resources/logback-spring.xml
@@ -2,9 +2,9 @@
<configuration>
    <!-- é¡¹ç›®é¡¹ç›® -->
    <property name="app.name" value="fzzy-ms"/>
    <property name="app.name" value="fzzy-dzhwk"/>
    <!-- æ–‡ä»¶è·¯å¾„ -->
    <property name="log.path" value="D:/fzzy/app/fzzy-ms/logs"/>
    <property name="log.path" value="D:/fzzy/app/fzzy-dzhwk/logs"/>
    <!-- å½©è‰²æ—¥å¿—插件 -->
igds-dzhwk-web/src/main/resources/static/dzhwk/common.js
@@ -54,5 +54,25 @@
 * @param tag
 */
function toPage(tag) {
    if(tag == "recir"){
        layer.msg("暂未开放!");
        return;
    }
    if(tag == "n2"){
        layer.msg("暂未开放!");
        return;
    }
    if(tag == "security"){
        layer.msg("暂未开放!");
        return;
    }
    if(tag == "grain-check"){
        layer.msg("暂未开放!");
        return;
    }
    if(tag == "grain-handle"){
        layer.msg("暂未开放!");
        return;
    }
    window.location.href = "../dzhwk/" + tag;
}
igds-dzhwk-web/src/main/resources/static/dzhwk/common/constant.js
igds-dzhwk-web/src/main/resources/static/dzhwk/common/igds-common.js
igds-dzhwk-web/src/main/resources/static/dzhwk/gas/PrintBuilder.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,209 @@
/**
 * æ ¹æ®æ°”体信息生成打印模版
 *
 * @param depotData
 *            ä»“库基本信息
 * @param grainData
 *            ç²®æƒ…数据信息
 */
builderModel = function(curData,dept) {
    var depotData = curData.depotData;
    var listPoint = curData.listPoint;
    var model = "<!DOCTYPE html><html lang=\"zh-cn\">\n"
            + "<head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=UTF-8\"><title>气体报表模版</title>"
            + "    <style>\n"
            + "        table,table tr th,table tr td{border:1px solid #0d1021}table{width:100%;line-height:23px;text-align:center;font-size:14px}.table-2{border-top:0px solid #0d1021 !important}.table-2 tr{border-top:0px solid #0d1021 !important}.table-2 td{border-top:0px solid #0d1021 !important}.table-row-tr{border-left:0px !important;border-right:0px !important;border-top:0px !important}.table-row-fz{border:0px !important}.link-top{width:100%;border-top:solid #0d1021 1px}</style>\n"
            + "</head><body>";
    model += "<div style=\"text-align: center\">\n"
            + "<span style=\"font-size: 26px; font-weight: bold;\">\n";
    if(dept){
        model += dept.name;
    }else{
        model += "--XXX--粮库"
    }
    model += "</span><div class=\"link-top\"></div><div class=\"link-top\"></div>\n";
    model += "<span style=\"font-size: 18px; \">";
    model += depotData.name;
    model += "&nbsp;&nbsp;&nbsp;&nbsp;气体报表</span>\n";
    model += "</div><div style=\"margin-top: 5px;\"><span style=\"float: left;\">";
    model += "&nbsp;&nbsp;方向:东</span><span style=\"float: right;\">检测时间:";
    model += curData.receiveDate;
    model += "</span></div>";
    // åŠ¨æ€é…ç½®
    model += "<table cellspacing=\"0\" cellpadding=\"0\">";
    model += "<tr><td>采集位</td><td>CO2</td><td>O2</td><td>PH3</td><td>N2</td><td>采集位</td><td>CO2</td><td>O2</td><td>PH3</td><td>N2</td></tr>";
    var num = Math.ceil(listPoint.length / 2);
    var index = 1;
    var point;
    for (var i = 0; i < num; i++) {
        point = listPoint[index - 1];
        model += "<tr>";
        model += "<td class=\"table-row-fz\">采集位 " + point.passCode + "</td>";
        model += "<td class=\"table-row-fz\">"
                + attrPoint(point, curData, "CO2") + "</td>";
        model += "<td class=\"table-row-fz\">"
                + attrPoint(point, curData, "O2") + "</td>";
        model += "<td class=\"table-row-fz\">"
                + attrPoint(point, curData, "PH3") + "</td>";
        model += "<td class=\"table-row-fz\">"
                + attrPoint(point, curData, "N2") + "</td>";
        index++;
        if (index > listPoint.length) {
            model += "<td class=\"table-row-fz\"></td>";
            model += "<td class=\"table-row-fz\"></td>";
            model += "<td class=\"table-row-fz\"></td>";
            model += "<td class=\"table-row-fz\"></td>";
            model += "<td class=\"table-row-fz\"></td>";
        } else {
            point = listPoint[index - 1];
            model += "<td class=\"table-row-fz\">采集位 " + point.passCode + "</td>";
            model += "<td class=\"table-row-fz\">"
                    + attrPoint(point, curData, "CO2") + "</td>";
            model += "<td class=\"table-row-fz\">"
                    + attrPoint(point, curData, "O2") + "</td>";
            model += "<td class=\"table-row-fz\">"
                    + attrPoint(point, curData, "PH3") + "</td>";
            model += "<td class=\"table-row-fz\">"
                    + attrPoint(point, curData, "N2") + "</td>";
            index++;
        }
        model += "</tr>";
    }
    model += "</table>";
    // <!--下面表格开始-->
    model += "<table cellspacing=\"0\" cellpadding=\"0\" class=\"table-2\">";
    model += "<tr><td width=\"20%\">检测分析:</td>";
    model += "<td colspan=4>" + (curData.remark == null ? "/" : curData.remark) + "</td></tr>";
    model += "<tr><td width=\"20%\"></td><td width=\"20%\">最高</td><td width=\"20%\">最低</td><td width=\"20%\">平均</td><td width=\"20%\">备注</td></tr>";
    // æ°”体整体信息
    model += "<tr> <td>CO2(PPM)</td><td>" + curData.perCo2Max + "</td>";
    model += "<td>" + curData.perCo2Min + "</td>";
    model += "<td>" + curData.perCo2 + "</td>";
    model += "<td></td></tr>";
    model += "<tr> <td>O2(%)</td><td>" + curData.perO2Max + "</td>";
    model += "<td>" + curData.perO2Min + "</td>";
    model += "<td>" + curData.perO2 + "</td>";
    model += "<td></td></tr>";
    model += "<tr> <td>PH3(PPM)</td><td>" + curData.perPh3Max + "</td>";
    model += "<td>" + curData.perPh3Min + "</td>";
    model += "<td>" + curData.perPh3 + "</td>";
    model += "<td></td></tr>";
    model += "<tr> <td>N2(%)</td><td>" + curData.perN2Max + "</td>";
    model += "<td>" + curData.perN2Min + "</td>";
    model += "<td>" + curData.perN2 + "</td>";
    model += "<td></td></tr>";
    // ä»“库信息
    model += "<tr><td>仓房类型</td><td>" + depotData.depotTypeName + "</td>";
    model += "<td>入仓日期</td><td>" + (depotData.storeDate == null ? "/" : depotData.storeDate) + "</td><td ></td></tr>";
    model += "<tr><td>粮食品种</td><td>" + depotData.foodVarietyName + "</td>";
    model += "<td>实际储量(吨)</td><td>" + (depotData.storageReal == null ? "/" : (Number(depotData.storageReal)/1000).toFixed(2))
            + "</td><td ></td></tr>";
    model += "<tr><td>入仓水分(%)</td><td>" + (depotData.perWet == null ? "/" : depotData.perWet) + "</td>";
    model += "<td>当前水分(%)</td><td>" + (depotData.perWet == null ? "/" : depotData.perWet) + "</td><td ></td></tr>";
    model += "<tr><td>出糙率(%)</td><td>" + (depotData.rough == null ? "/" : depotData.rough) + "</td>";
    model += "<td>粮食产地</td><td>" + (depotData.foodLocation == null ? "/" : depotData.foodLocation)
            + "</td><td ></td></tr>";
    model += "<tr><td>容重(kg/m3)</td><td>" + (depotData.bulkWeight == null ? "/" : depotData.bulkWeight) + "</td>";
    model += "<td>面筋持水率(%)</td><td>" + (depotData.waterGluten == null ? "/" : depotData.waterGluten) + "</td><td></td></tr>";
    model += "<tr><td>杂质(%)</td><td>" + (depotData.perImpurity == null ? "/" : depotData.perImpurity) + "</td>";
    model += "<td>不完善粒(%)</td><td>" + (depotData.broken == null ? "/" : depotData.broken) + "</td><td ></td></tr>";
    model += "<tr><td>检测人</td><td>" + curData.checkUser + "</td>";
    model += "<td>保管员</td><td>" + (depotData.storeKeeperName == null ? "/" : depotData.storeKeeperName)
            + "</td><td ></td></tr>";
    model += "</table>";
    // æ·»åŠ å°¾éƒ¨ä¿¡æ¯
    model += "<div style=\"margin-top: 5px;\">";
    model += "<span style=\"float: left;\">注:#表示最低&nbsp;&nbsp;*表示最高</span>";
    model += "<span style=\"float: right;\">制表时间:" + curData.sysDate
            + "</span></div>";
    model += "</div></body></html>";
    return model;
};
// æ ¹æ®é‡‡é›†ç‚¹èµ‹å€¼ï¼Œæ³¨æ„æ•°æ®åº“生成的坐标是从0开始的
attrPoint = function(point, curData, type) {
    if (type == "CO2") {
        if (-100.0 == point.perCo2) {
            return "备用";
        }
        if (curData.perCo2Max == point.perCo2) {
            return point.perCo2 + "*";
        }
        if (curData.perCo2Min == point.perCo2) {
            return point.perCo2 + "#";
        }
    }
    if (type == "O2") {
        if (-100.0 == point.perO2) {
            return "备用";
        }
        if (curData.perO2Max == point.perO2) {
            return point.perO2 + "*";
        }
        if (curData.perO2Min == point.perO2) {
            return point.perO2 + "#";
        }
    }
    if (type == "PH3") {
        if (-100.0 == point.perPh3) {
            return "备用";
        }
        if (curData.perPh3Max == point.perPh3) {
            return point.perPh3 + "*";
        }
        if (curData.perPh3Min == point.perPh3) {
            return point.perPh3 + "#";
        }
    }
    if (type == "N2") {
        if (-100.0 == point.perN2) {
            return "备用";
        }
        if (curData.perN2Max == point.perN2) {
            return point.perN2 + "*";
        }
        if (curData.perN2Min == point.perN2) {
            return point.perN2 + "#";
        }
    }
    return "";
};
/**
 * æ ¹æ®HTML模版打印为A4
 *
 * @param strHtml
 */
previewA4 = function(strHtml) {
    var LODOP = getLodop();
    LODOP.SET_PRINT_PAGESIZE(1, 0, 0, "A4");
    LODOP.PRINT_INIT("气体报表");
    LODOP.ADD_PRINT_HTM(30, 40, "180mm", "100%", strHtml);
    LODOP.PREVIEW();
};
igds-dzhwk-web/src/main/resources/static/dzhwk/gas/gas-check.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,758 @@
var layer;
var depotId;// å½“前仓库id
var curData;// å½“前仓粮情数据
var mapData;// æ ¹æ®æ—¥æœŸæŸ¥è¯¢çš„æ¯ä¸ªä»“库一条数据
var form;
var table;
var checkType;
var listData;// é»˜è®¤é¡µé¢ä¸­çš„粮情列表
var gasConf;// æ°”体采集配置信息,包括开始采集点和截至采集点。
$(function() {
    layui.use([ 'layer', 'laydate', 'form', 'table' ], function() {
        form = layui.form;
        layer = layui.layer;
        var laydate = layui.laydate;
        table = layui.table;
        // æ—¥æœŸ
        laydate.render({
            elem : '#checkDateMore',
            theme : '#7b8e9f'
        });
        laydate.render({
            elem : '#printCheckDate',
            theme : '#7b8e9f'
        });
        // ç›‘听仓库选择
        form.on('select(select_depotId)', function(obj) {
            flushData(null);
            //获取当前仓库效果图
            // cutImg(obj.value);
            //根据仓库编码切换采集点位置
            // cutPoint(obj.value);
        });
        // ç›‘听选择批次
        form.on('select(select_batchId)', function(obj) {
            var value = obj.value;
            if (value == "0") {// è¡¨ç¤ºå¼¹å‡ºæ›´å¤šæ‰¹æ¬¡
                showMore();
            } else {
                flushByBatchId(value);
            }
        });
        flushData(null);
    });
});
//根据采集进度信息渲染采集点效果
function renderCheckPoint(checkProgress) {
    if (depotId != checkProgress.depotId) {
        $("#progress-info").text("");
        return;
    }
    $("#progress-info").text(checkProgress.msg);
    //首先除去已有效果
    $(".qt-pic-icon-active").removeClass("qt-pic-icon-active");
    var id = "#point" + checkProgress.checkPoint+"-left";
    $(id).addClass("qt-pic-icon-active");
    id = "#point" + checkProgress.checkPoint+"-right";
    $(id).addClass("qt-pic-icon-active");
}
/**
 * åˆ‡æ¢é‡‡é›†ç‚¹
 * @param depotId
 */
function cutPoint(depotId) {
    //首先除去已有效果
    $(".qt-pic-icon-active").removeClass("qt-pic-icon-active");
    //根据义乌这边直接判断
    if("0135,0137,0139,0141,0143,0145,0147,0149,0151,0153".indexOf(depotId) >=0 ){
        $("#list-point-right").css("display","block");
        $("#list-point-left").css("display","none");
    }else{
        $("#list-point-right").css("display","none");
        $("#list-point-left").css("display","block");
    }
}
// å•仓打印
function printSingle() {
    layer.msg("暂未对接!");
    return;
    layer.msg("开始生成打印模版……");
    var html = builderModel(curData,dept);
    layer.msg("开始调用打印机程序预览……");
    previewA4(html);
};
// æ‰¹é‡æ‰“印
function printBatch() {
    layer.msg("暂未对接!");
    return;
    // é¦–先去除之前的选择
    var name;
    $('#batchPrintSelect input').each(function() {
        name = $(this).prop("name");
        if (name == "printCheckDate") {// è·³è¿‡
            return true;
        }
        $(this).prop("disabled", false);
        $(this).prop("checked", false);
    });
    form.render();
    // å¼¹å‡ºé€‰æ‹©æ¡†
    layer.open({
        type : 1,
        title : '批量打印(红色表示没有检测记录,默认为当天)',
        area : [ '690px', '450px' ],
        shade : 0,
        content : $('#batchPrintSelect'),
        btn : [ '全选', '反选', '重选', '打印预览', '取消打印' ],
        yes : function() {
            var disabled, name;
            $('#batchPrintSelect input').each(function() {
                disabled = $(this).prop("disabled");
                name = $(this).prop("name");
                if (name == "printCheckDate" || disabled) {
                } else {
                    $(this).prop("checked", true);
                }
            });
            form.render();
        },
        btn2 : function() {
            var disabled, name;
            $('#batchPrintSelect input').each(function() {
                disabled = $(this).prop("disabled");
                name = $(this).prop("name");
                if (name == "printCheckDate" || disabled) {
                    // ä¸åšå¤„理
                } else {
                    if ($(this).prop("checked")) {
                        $(this).prop("checked", false);
                    } else {
                        $(this).prop("checked", true);
                    }
                }
            });
            form.render();
            return false;
        },
        btn3 : function() {
            var disabled, name;
            $('#batchPrintSelect input').each(function() {
                disabled = $(this).prop("disabled");
                name = $(this).prop("name");
                if (name == "printCheckDate" || disabled) {
                    // ä¸åšå¤„理
                } else {
                    $(this).prop("checked", false);
                }
            });
            form.render();
            return false;
        },
        btn4 : function() {
            printBatchTodo();
        },
        btn5 : function() {
            layer.close(0);
        },
        closeBtn : 0
    });
    // é»˜è®¤è°ƒç”¨èŽ·å–æ•°æ®æ›´æ–°
    $("#printCheckDate").prop("value", dateFtt("yyyy-MM-dd", new Date()));
    getPrintBatchDepot();
};
// èŽ·å–æ‰¹é‡æ‰“å°çš„ä¿¡æ¯
function getPrintBatchDepot() {
    layer.msg("验证粮情检测记录……");
    var checkDate = $("#printCheckDate").val();
    $.ajax({
        type : "POST",
        url : "../../basic/gas/query-checkDate-map",
        dataType : "json",
        contentType : "application/json;charset=UTF-8",
        data : JSON.stringify({
            checkDate : checkDate
        }),
        success : function(result) {
            if (result.code != "0000") {
                layer.msg(result.msg);
                // è®¾ç½®æ‰€æœ‰ä»“库不可选
                var name;
                $('#batchPrintSelect input').each(function() {
                    name = $(this).prop("name");
                    if (name != "printCheckDate") {// è·³è¿‡
                        $(this).prop("disabled", true);
                    }
                });
                form.render();
            } else {
                mapData = result.data;
                // åŠ¨æ€è°ƒæ•´ä»“åº“æ˜¯å¦å¯ä»¥é€‰æ‹©
                var name, value;
                $('#batchPrintSelect input').each(function() {
                    name = $(this).prop("name");
                    value = $(this).val();
                    if (name != "printCheckDate") {// è·³è¿‡
                        if (mapData[value]) {
                            $(this).prop("disabled", false);
                        } else {
                            $(this).prop("disabled", true);
                        }
                    }
                });
                form.render();
            }
        },
        error : function() {
            layer.msg("批量打印获取粮情信息失败!");
        }
    });
};
// æ ¹æ®æŸ¥è¯¢çš„æ•°æ®æ‰¹é‡æ‰“印预览
function printBatchTodo() {
    layer.msg("开始批量生成打印模版……");
    var strHtml;
    var value;
    var checked;
    var printData;
    // å°†ä»“库数据列表转换为MAP
    var mapDepot = {};
    $.each(listDepot, function(index, data) {
        mapDepot[data.id] = data;
    });
    var LODOP = getLodop();
    LODOP.PRINT_INIT("气体检测报表");// åˆå§‹åŒ–在循环外
    LODOP.SET_PRINT_PAGESIZE(1, 0, 0, "A4");
    $('#batchPrintSelect input').each(function() {
        if ($(this).prop("name") == "printCheckDate") {// è·³è¿‡
            return true;
        }
        checked = $(this).prop("checked");
        if (checked) {
            value = $(this).val();
            LODOP.NewPage();
            printData = mapData[value];
            if (!printData) {// å¦‚果没有粮情数据跳过执行下一个
                return true;
            }
            printData.depotData = mapDepot[value];
            strHtml = builderModel(printData,dept);
            LODOP.ADD_PRINT_HTM(30, 40, "180mm", "100%", strHtml);
        }
    });
    layer.msg("开始调用打印程序预览……");
    LODOP.PREVIEW();
};
// ç‚¹å‡»åˆ·æ–°æ“ä½œ
function flushData(checkDate) {
    depotId = $("#depotId").val();
    if (!depotId) {
        layer.msg("请先选择仓库!");
        return;
    }
    cleanData();
    listData = [{"batchId":"202407151349","checkNum":5,"checkUser":"管理员","companyId":"1000","depotData":{"bulkWeight":600,"companyId":"1000","depotStatus":"1","depotStatusName":"空仓","depotType":"01","depotTypeName":"平房仓","deptId":"P0101","foodLevel":"02","foodLevelName":"二等","foodType":"122","foodTypeName":"市级地方储备粮","foodVariety":"1131","id":"LA02","name":"P01-01","orderNum":5,"storageMax":5000000,"storageReal":0,"storeKeeperLevel":"高级保管员","storeKeeperPhone":"####","storeType":"1"},"depotId":"LA02","listPoint":[{"passCode":1,"perCo2":497,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 13:50"},{"passCode":2,"perCo2":497,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 13:50"},{"passCode":3,"perCo2":496,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 13:50"},{"passCode":4,"perCo2":496,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 13:50"},{"passCode":5,"perCo2":482,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 13:50"}],"perCo2":493.6,"perCo2Max":497,"perCo2Min":482,"perN2":74.9,"perN2Max":74.9,"perN2Min":74.9,"perO2":25,"perO2Max":25,"perO2Min":25,"perPh3":0,"perPh3Max":0,"perPh3Min":0,"points":"1,497.0,25.0,0.0,74.9;2,497.0,25.0,0.0,74.9;3,496.0,25.0,0.0,74.9;4,496.0,25.0,0.0,74.9;5,482.0,25.0,0.0,74.9;","receiveDate":"2024-07-15 13:50","strReceiveDate":"2024-07-15 13:50","sysDate":1747964186612,"type":"0"},{"batchId":"202407141532","checkNum":5,"checkUser":"管理员","companyId":"1000","depotData":{"$ref":"$[0][0].depotData"},"depotId":"LA02","listPoint":[{"passCode":1,"perCo2":416,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 14:50"},{"passCode":2,"perCo2":408,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 14:50"},{"passCode":3,"perCo2":412,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 14:50"},{"passCode":4,"perCo2":433,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 14:50"},{"passCode":5,"perCo2":484,"perN2":74.9,"perO2":25,"perPh3":0,"receiveDate":"2024-07-15 14:50"}],"perCo2":430.6,"perCo2Max":484,"perCo2Min":408,"perN2":74.9,"perN2Max":74.9,"perN2Min":74.9,"perO2":25,"perO2Max":25,"perO2Min":25,"perPh3":0,"perPh3Max":0,"perPh3Min":0,"points":"1,416.0,25.0,0.0,74.9;2,408.0,25.0,0.0,74.9;3,412.0,25.0,0.0,74.9;4,433.0,25.0,0.0,74.9;5,484.0,25.0,0.0,74.9;","receiveDate":"2024-07-15 14:50","strReceiveDate":"2024-07-14 15:32","sysDate":1747964186613,"type":"0"}];
    if(!listData) return;
    curData = listData[0];
    // æ¸²æŸ“数据
    renderDataInfo();
    // åœ¨æ‰¹æ¬¡é€‰æ‹©ä¸­æ·»åŠ ä¸‹æ‹‰æ•°æ®
    resetSelectBatchId();
    // è°ƒç”¨å…¨éƒ¨å…³é—­
    layer.closeAll();
    layer.msg("更新成功……");
    // var data = {
    //     depotId : depotId,
    //     checkDate : checkDate
    // };
    // $.ajax({
    //     type : "POST",
    //     url : "../../basic/gas/list-data",
    //     dataType : "json",
    //     contentType : "application/json;charset=UTF-8",
    //     data : JSON.stringify(data),
    //     success : function(result) {
    //         if (result.code != "0000") {
    //             layer.msg(result.msg);
    //         }
    //         listData = result.data;
    //         if(!listData) return;
    //         curData = listData[0];
    //
    //         // æ¸²æŸ“数据
    //         renderDataInfo();
    //
    //         // åœ¨æ‰¹æ¬¡é€‰æ‹©ä¸­æ·»åŠ ä¸‹æ‹‰æ•°æ®
    //         resetSelectBatchId();
    //
    //         // è°ƒç”¨å…¨éƒ¨å…³é—­
    //         layer.closeAll();
    //         layer.msg("更新成功……");
    //     },
    //     error : function() {
    //         layer.msg("根据当前条件获取粮情数据渲染图标失败!!");
    //     }
    // });
};
//清空数据
function cleanData() {
    //清空检测时间批次值
    $("#batchId").empty();
    form.render();
    $("#perO2").text("#");
    $("#perO2Max").text("#");
    $("#perO2Min").text("#");
    $("#perCo2").text("#");
    $("#perCo2Max").text("#");
    $("#perCo2Min").text("#");
    $("#perPh3").text("#");
    $("#perPh3Max").text("#");
    $("#perPh3Min").text("#");
    $("#perN2").text("#");
    $("#perN2Max").text("#");
    $("#perN2Min").text("#");
    $("#tableInfo").html("");
}
//切换仓库图片
function cutImg(depotId) {
    //取仓库配置图片
    var gasImg = gasImgMap[depotId];
    var imgPath = "../../basic/file/getImg?filePath=" + gasImg.fileImg;
    $("#depot_img").attr("src", imgPath);
}
function renderTableInfo() {
    var listPoint = curData.listPoint;
    var tableHtml = "<table class=\"layui-table\" lay-even lay-skin=\"nob\">";
    tableHtml += "<colgroup><col width=\"20%\"><col width=\"20%\"><col width=\"20%\"><col width=\"20%\"><col></colgroup>";
    if(curData.type && curData.type == "1"){
        tableHtml += "<thead><tr><th style='background: #c2c2c2;' colspan='5'>检测类型:熏蒸检测</th></tr></thead>";
    }else {
        tableHtml += "<thead><tr><th style='background: #c2c2c2;' colspan='5'>检测类型:常规检测</th></tr></thead>";
    }
    tableHtml += "<thead><tr><th>通道</th><th>CO2</th><th>O2</th><th>PH3</th><th>N2</th></tr></thead>";
    tableHtml += "<tbody>";
    // åŠ¨æ€åˆ›å»ºè¡¨æ ¼
    $.each(listPoint, function(index, item) {
        tableHtml += "<tr><td>" + item.passCode + "</td>";
        tableHtml += "<td>" + (item.perCo2== -100 ? "#" : item.perCo2) + "</td>";
        tableHtml += "<td>" + (item.perO2== -100 ? "#" : item.perO2) + "</td>";
        tableHtml += "<td>" + (item.perPh3== -100 ? "#" : item.perPh3) + "</td>";
        tableHtml += "<td>" + (item.perN2== -100 ? "#" : item.perN2) + "</td></tr>";
    });
    tableHtml += "</tbody></table>";
    $("#tableInfo").html(tableHtml);
};
// å›žå¡«æ£€æµ‹ä¿¡æ¯
function renderDataInfo() {
    $("#perCo2").text(curData.perCo2 == -100 ? "#" : curData.perCo2);
    $("#perO2").text(curData.perO2 == -100 ? "#" : curData.perO2);
    $("#perPh3").text(curData.perPh3 == -100 ? "#" : curData.perPh3);
    $("#perN2").text(curData.perN2 == -100 ? "#" : curData.perN2);
    $("#perO2Max").text(curData.perO2Max == -100 ? "#" : curData.perO2Max);
    $("#perO2Min").text(curData.perO2Min == -100 ? "#" : curData.perO2Min);
    $("#perCo2Max").text(curData.perCo2Max == -100 ? "#" : curData.perCo2Max);
    $("#perCo2Min").text(curData.perCo2Min == -100 ? "#" : curData.perCo2Min);
    $("#perPh3Max").text(curData.perPh3Max == -100 ? "#" : curData.perPh3Max);
    $("#perPh3Min").text(curData.perPh3Min == -100 ? "#" : curData.perPh3Min);
    $("#perN2Max").text(curData.perN2Max == -100 ? "#" : curData.perN2Max);
    $("#perN2Min").text(curData.perN2Min == -100 ? "#" : curData.perN2Min);
    renderTableInfo();
};
// æ ¹æ®æ‰¹æ¬¡æ›´æ–°çš„值调整
function flushByBatchId(batchId) {
    var temp;
    $.each(listData, function(index, item) {
        if (item.batchId == batchId) {
            temp = item;
            return false;
        }
    });
    if (temp) {
        curData = temp;
        renderDataInfo();
        layer.msg("更新成功……");
    }
};
// é‡ç½®æ‰¹æ¬¡ä¸‹æ‹‰æ¡†
function resetSelectBatchId() {
    // é¦–先清空原来的值
    $("#batchId").empty();
    // æœªä¸‹æ‹‰æ¡†èµ‹å€¼
    $.each(listData, function(index, item) {
        $('#batchId').append(new Option(item.receiveDate, item.batchId));// ä¸‹æ‹‰èœå•里添加元素
    });
    $('#batchId').append(new Option("选择时间……", "0"));
    form.render();
};
// æ›´å¤šæ‰¹æ¬¡é€‰æ‹©
function showMore() {
    layer.open({
        type : 1,
        title : '请选择时间',
        area : [ '380px', '250px' ],
        shade : 0,
        content : $('#dialogMoreSelect'),
        btn : [ '确认选择', '取消' ],
        yes : function() {
            var checkDateMore = $("#checkDateMore").val();
            if (checkDateMore) {
                flushData(checkDateMore);
            } else {
                layer.msg("请先确认时间!");
            }
        },
        btn2 : function() {
            layer.close(0);
        },
        closeBtn : 0
    });
};
// æ°”体采集的入口方法,type=1,表示整仓采集;type=2,表示选择采集,type=3表示多仓采集
function checkStart(type) {
    layer.msg("暂未对接!");
    return;
    checkType = $("input[name='type']:checked").val();
    if(!checkType){
        layer.msg("请先选择检测类型!");
        return;
    }
    if (3 == type) {
        checkBatch();
        return;
    }
    // æ•´ä»“采集和选择采集需要获取到气体的配置信息后进行操作
    depotId = $("#depotId").val();
    if (!depotId) {
        layer.msg("请先选择仓库!");
        return;
    }
    if (gasConf && gasConf.depotId == depotId) {
        if (1 == type) {
            check();
        }
        if (2 == type) {
            checkSelect();
        }
        return;
    }
    layer.msg("获取当前仓库的配置信息……");
    var data = {
        depotId : depotId
    };
    $.ajax({
        type : "POST",
        url : "../../basic/gas/gas-conf",
        dataType : "json",
        contentType : "application/json;charset=UTF-8",
        data : JSON.stringify(data),
        success : function(result) {
            if (result.code != "0000") {
                layer.msg(result.msg);
                return;
            }
            gasConf = result.data;
            if (1 == type) {
                check();
                return;
            }
            if (2 == type) {
                checkSelect();
                return;
            }
        },
        error : function() {
            layer.msg("获取当前仓库配置信息失败!");
        }
    });
};
// å•个粮情检测
function check() {
    layer.msg("开始气体检测……");
    var data = {
        depotId : depotId,
        type : checkType
    };
    $.ajax({
        type : "POST",
        url : "../../basic/gas/check-single",
        dataType : "json",
        contentType : "application/json;charset=UTF-8",
        data : JSON.stringify(data),
        success : function(result) {
            if (result.code != "ORDER_SUCCESS") {
                if (result.msg) {
                    layer.msg(result.msg);
                } else {
                    layer.msg("执行出现异常,请重试或联系管理员");
                }
            } else {
                layer.msg("命令已经成功发送,待终端响应……");
            }
        },
        error : function() {
            layer.msg("气体检测出现异常,执行失败!");
        }
    });
};
// é€‰æ‹©é‡‡é›†ç‚¹é‡‡é›†
function checkSelect() {
    // å¼¹å‡ºé€‰æ‹©æ¡†ï¼Œé€‰æ‹©ä¿¡æ¯
    var gasStart = gasConf.gasStart, gasEnd = gasConf.gasEnd;
    var strHtml = "";
    for (var i = gasStart; i <= gasEnd; i++) {
        if (i < 10) {
            strHtml += "<input title='位置0" + i + "' type='checkbox' value='"
                    + i + "'>";
            strHtml += "<div class='layui-unselect layui-form-checkbox'><span>位置0"
                    + i
                    + "</span><i class='layui-icon layui-icon-ok'></i></div>";
        } else {
            strHtml += "<input title='位置" + i + "' type='checkbox' value='" + i
                    + "'>";
            strHtml += "<div class='layui-unselect layui-form-checkbox'><span>位置"
                    + i
                    + "</span><i class='layui-icon layui-icon-ok'></i></div>";
        }
    }
    $("#div_point_select").html(strHtml);
    form.render();
    // å¼€å§‹é€‰æ‹©
    layer.open({
        type : 1,
        title : '选择采集点(全选请使用整仓采集)',
        area : [ '690px', '450px' ],
        shade : 0,
        content : $('#pointSelect'),
        btn : [ '全选', '反选', '重选', '确定检测', '取消检测' ],
        yes : function() {
            $('#pointSelect input').each(function() {
                $(this).prop("checked", true);
            });
            form.render();
        },
        btn2 : function() {
            $('#pointSelect input').each(function() {
                if ($(this).prop("checked")) {
                    $(this).prop("checked", false);
                } else {
                    $(this).prop("checked", true);
                }
            });
            form.render();
            return false;
        },
        btn3 : function() {
            $('#pointSelect input').each(function() {
                $(this).prop("checked", false);
            });
            form.render();
            return false;
        },
        btn4 : function() {
            return checkSelectStep2();
        },
        btn5 : function() {
            layer.close(0);
        },
        closeBtn : 1
    });
};
// æ‰§è¡Œé‡‡é›†ç‚¹æ£€æµ‹
function checkSelectStep2() {
    // èŽ·å–é€‰æ‹©çš„é‡‡é›†ç‚¹
    var checkPoints = "";
    $('#pointSelect input').each(function() {
        if ($(this).prop("checked")) {
            checkPoints += $(this).val() + ",";
        }
    });
    if (checkPoints == "") {
        layer.msg("请选择需要检测的采集点");
        return false;
    }
    layer.msg("开始气体检测……");
    var data = {
        depotId : depotId,
        type : checkType,
        checkPoints : checkPoints
    };
    $.ajax({
        type : "POST",
        url : "../../basic/gas/check-select",
        dataType : "json",
        contentType : "application/json;charset=UTF-8",
        data : JSON.stringify(data),
        success : function(result) {
            if (result.code != "ORDER_SUCCESS") {
                if (result.msg) {
                    layer.msg(result.msg);
                } else {
                    layer.msg("执行出现异常,请重试或联系管理员");
                }
                return false;
            } else {
                layer.msg("命令已经成功发送,待终端响应……");
                return true;
            }
        },
        error : function() {
            layer.msg("气体检测出现异常,执行失败!");
            return false;
        }
    });
    return true;
};
// æ‰¹é‡ç²®æƒ…采集
function checkBatch() {
    // é¦–先去除之前的选择
    $('#batchCheckSelect input').each(function() {
        $(this).prop("checked", false);
    });
    form.render();
    // å¼¹å‡ºé€‰æ‹©æ¡†
    layer.open({
        type : 1,
        title : '批量采集选择',
        area : [ '690px', '450px' ],
        shade : 0,
        content : $('#batchCheckSelect'),
        btn : [ '全选', '反选', '重选', '执行采集', '取消采集' ],
        yes : function() {
            $('#batchCheckSelect input').each(function() {
                $(this).prop("checked", true);
            });
            form.render();
        },
        btn2 : function() {
            $('#batchCheckSelect input').each(function() {
                if ($(this).prop("checked")) {
                    $(this).prop("checked", false);
                } else {
                    $(this).prop("checked", true);
                }
            });
            form.render();
            return false;
        },
        btn3 : function() {
            $('#batchCheckSelect input').each(function() {
                $(this).prop("checked", false);
            });
            form.render();
            return false;
        },
        btn4 : function() {
            return checkBatchStep2();
        },
        btn5 : function() {
            layer.close(0);
        },
        closeBtn : 0
    });
};
/**
 * å¼€å§‹æ‰§è¡Œæ‰¹é‡æ£€æµ‹
 */
function checkBatchStep2() {
    var depotIds = "";
    $('#batchCheckSelect input').each(function() {
        if ($(this).prop("checked")) {
            depotIds += $(this).val() + ",";
        }
    });
    if (depotIds == "") {
        layer.msg("请先选择需要检测的仓库……");
        return false;
    }
    layer.msg("开始执行批量检测……");
    // è°ƒç”¨åŽå°æ‰¹é‡æ£€æµ‹
    var data = {
        depotIds : depotIds,
        type : checkType
    };
    $.ajax({
        type : "POST",
        url : "../../basic/gas/check-batch",
        dataType : "json",
        contentType : "application/json;charset=UTF-8",
        data : JSON.stringify(data),
        success : function(result) {
            if (result.code != "ORDER_SUCCESS") {
                if (result.msg) {
                    layer.msg(result.msg);
                } else {
                    layer.msg("执行出现异常,请重试或联系管理员");
                }
                return false;
            } else {
                layer.msg("命令已经成功发送,待终端响应……");
                return true;
            }
        },
        error : function() {
            layer.msg("检测出现异常,执行失败!");
            return false;
        }
    });
    return true;
};
function gasChart() {
    layer.msg("功能暂未开放……");
};
igds-dzhwk-web/src/main/resources/static/dzhwk/gas/gas.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,674 @@
@charset "utf-8";
/*-----------------
  Author:xq
  update:2019
 -------------------*/
body {
    font-family: "微软雅黑", Arial, sans-serif;
    font-size: 14px;
    background: #f3f5f8;
}
i,em{
    font-style: normal;
}
.radius-3{
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
}
.radius-4,
.qt-rMenu-item a{
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}
.radius-6,
.lq-rMenu li{
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
    border-radius: 6px;
}
.box-shadow{
    -webkit-box-shadow: 0px 0px 9px 3px rgba(230,230,230,0.6);
    -moz-box-shadow: 0px 0px 9px 3px rgba(230,230,230,0.6);
    box-shadow: 0px 0px 9px 3px rgba(230,230,230,0.6);
}
.fl {
    float: left;
}
.fr {
    float: right;
}
/*qtjc*/
.l-container{
    width: 100%;
    max-width: 1680px;
    min-width: 1340px;
    margin-left: auto;
    margin-right: auto;
}
.l-main{
    margin: 10px;
    position: relative;
    padding-right: 350px;
}
.qt-left{
    width: 100%;
}
.qt-lTop-l{
    width: 26%;
    min-width: 260px;
}
.qt-left1{
    padding: 27px 8%;
    background: #7b8e9f;
}
.lq-left1-from{
    margin-bottom: 20px;
}
.qt-left .lq-left1-from:last-child{
    margin-bottom: 0;
}
.qt-left .lq-left1-from .layui-form-label{
    color: #fff;
    padding: 9px 0;
    text-align: left;
    font-size: 16px;
}
.qt-left .lq-left1-from .layui-input-block{
    margin-left: 80px;
}
.qt-left .layui-form-select .layui-edge{
    border-top-color: #666;
}
.qt-left .layui-input-block .layui-input{
    font-size: 16px;
    color: #000;
}
.qt-left .layui-form-select dl dd.layui-this{
    background: #7b8e9f;
}
.qt-lTop-r{
    width: 71.5%;
}
.qt-left-item{
    height: 150px;
    overflow: hidden;
    color: #fff;
    text-align: center;
}
.qt-left2{
    background: url(../../img/dzhwk/gas/qt-bg1.png) no-repeat;
    background-size: 100% 100%;
}
.qt-left3{
    background: url(../../img/dzhwk/gas/qt-bg2.png) no-repeat;
    background-size: 100% 100%;
}
.qt-left4{
    background: url(../../img/dzhwk/gas/qt-bg3.png) no-repeat;
    background-size: 100% 100%;
}
.qt-left5{
    background: url(../../img/dzhwk/gas/qt-bg4.png) no-repeat;
    background-size: 100% 100%;
}
.qt-left-item h3{
    height: 24px;
    line-height: 24px;
    font-size: 16px;
    overflow: hidden;
    font-weight: bold;
    margin: 30px 0;
}
.lq-cTop-ite{
    position: relative;
}
.lq-cTop-item:after{
    display: block;
    content: '';
    width: 1px;
    height: 100%;
    background: rgba(255,255,255,0.1);
    position: absolute;
    right: 0;
    top: 0;
    z-index: 97;
}
.lq-cTop-item:last-child:after{
    background: none;
}
.lq-cTop-item p{
    height: 25px;
    line-height: 25px;
    font-size: 16px;
    margin-top: 5px;
    overflow: hidden;
}
.lq-cTop-item h4{
    font-size: 16px;
    line-height: 25px;
    height: 25px;
    overflow: hidden;
}
.lq-cTop-item p span{
    font-size: 22px;
}
.qt-picBox{
    width: 96%;
    margin: 2% auto;
    text-align: center;
    position: relative;
}
.qt-pic{
    width: 100%;
    margin: 0 auto;
}
.qt-right{
    width: 340px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 99;
}
.qt-rMenu{
    background: #fff;
    width: 320px;
    height: 120px;
    overflow: hidden;
    padding: 15px 10px;
}
.qt-rMenu-item{
    height: 120px;
    text-align: center;
}
.qt-rMenu-item a{
    display: inline-block;
    width: 88px;
    height: 118px;
    border: 1px solid #e5e8ec;
}
.qt-icon{
    width: 48px;
    height: 48px;
    display: inline-block;
    position: relative;
    margin: 15px 0 10px;
}
.qt-icon img,
.qt-pic-icon img{
    width: 100%;
    height: 100%;
    vertical-align: top;
}
.qt-rMenu-item  a p{
    line-height: 20px;
    color: #324251;
    font-size: 16px;
    height: 20px;
    overflow: hidden;
}
.qt-rMenu-icon1{
    background: url(../../img/dzhwk/gas/qt-icon1.png);
}
.qt-rMenu-icon2{
    background: url(../../img/dzhwk/gas/qt-icon2.png);
}
.qt-rMenu-icon3{
    background: url(../../img/dzhwk/gas/lq-r-icon2.png);
}
.qt-rMenu-icon4{
    background: url(../../img/dzhwk/gas/lq-r-icon4.png);
}
.qt-rMenu-icon5{
    background: url(../../img/dzhwk/gas/lq-r-icon5.png);
}
.qt-rMenu-icon6{
    background: url(../../img/dzhwk/gas/qt-icon3.png);
}
.qt-rMenu-item:hover a,
.qt-rMenu-item.active a{
    background: #53adce;
    border-color: #53adce;
}
.qt-rMenu-item:hover a p,
.qt-rMenu-item.active a p{
    color: #fff;
}
.qt-rMenu-item:hover .qt-rMenu-icon1,
.qt-rMenu-item.active .qt-rMenu-icon1{
    background: url(../../img/dzhwk/gas/qt-icon1-h.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon2,
.qt-rMenu-item.active .qt-rMenu-icon2{
    background: url(../../img/dzhwk/gas/qt-icon2-h.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon3,
.qt-rMenu-item.active .qt-rMenu-icon3{
    background: url(../../img/dzhwk/gas/lq-r-icon2.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon4,
.qt-rMenu-item.active .qt-rMenu-icon4{
    background: url(../../img/dzhwk/gas/lq-r-icon4.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon5,
.qt-rMenu-item.active .qt-rMenu-icon5{
    background: url(../../img/dzhwk/gas/lq-r-icon5.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon6,
.qt-rMenu-item.active .qt-rMenu-icon6{
    background: url(../../img/dzhwk/gas/qt-icon3-h.png);
}
.qt-rTable-box{
    background: #fff;
    overflow: hidden;
    margin-top: 10px;
    width: 320px;
    padding: 10px;
    min-height: 320px;
}
.qt-rTable-box .layui-table td,
.qt-rTable-box .layui-table th{
    padding: 9px 5px;
    text-align: center;
}
.qt-rTable-box .layui-table th{
    background: #dee6ec;
}
.mr4{
    margin-right: 4%;
}
.qt-pic-icon{
    display: inline-block;
    width: 36px;
    height: 36px;
    position: absolute;
    z-index: 99;
}
.qt-pic-icon-active{
    -webkit-animation: twinkling 1.5s infinite ease-in-out;
    animation: twinkling 1.5s infinite ease-in-out;
}
.qt-pic-icon1{
    left: 45.5%;
    top: 41%;
}
.qt-pic-icon2{
    left: 46%;
    top: 33%;
}
.qt-pic-icon3{
    left: 46.6%;
    top: 24%;
}
.qt-pic-icon4{
    left: 47%;
    top: 15%;
}
/** åˆ†å‰² **/
.qt-pic-icon5{
    left: 37.5%;
    top: 43%;
}
.qt-pic-icon6{
    left: 38%;
    top: 39%;
}
.qt-pic-icon7{
    left: 38.5%;
    top: 35%;
}
.qt-pic-icon8{
    left: 39%;
    top: 31%;
}
/** åˆ†å‰²**/
.qt-pic-icon9{
    left: 35%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon10{
    left: 39.5%;
    top: 27%;
}
.qt-pic-icon11{
    left: 40%;
    top: 23%;
}
.qt-pic-icon12{
    left: 40.5%;
    top: 19%;
}
.qt-pic-icon13{
    left: 41%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon14{
    left: 27%;
    top: 42%;
}
.qt-pic-icon15{
    left: 28%;
    top: 36%;
}
.qt-pic-icon16{
    left: 29%;
    top: 30%;
}
.qt-pic-icon18{
    left: 30%;
    top: 25%;
}
.qt-pic-icon19{
    left: 31%;
    top: 20%;
}
.qt-pic-icon20{
    left: 32%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon17{
    left: 25%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon21{
    left: 17%;
    top: 43%;
}
.qt-pic-icon22 {
    left: 18%;
    top: 39%;
}
.qt-pic-icon23{
    left: 19%;
    top: 35%;
}
.qt-pic-icon24{
    left: 20%;
    top: 31%;
}
.qt-pic-icon25{
    left: 21%;
    top: 27%;
}
.qt-pic-icon26{
    left: 22%;
    top: 23%;
}
.qt-pic-icon27{
    left: 23%;
    top: 19%;
}
.qt-pic-icon28{
    left: 24%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon29{
    left: 12%;
    top: 41%;
}
.qt-pic-icon30{
    left: 14%;
    top: 33%;
}
.qt-pic-icon31{
    left: 16%;
    top: 24%;
}
.qt-pic-icon32{
    left: 18%;
    top: 15%;
}
/*** ---------------- å³ä¾§ ------**/
.qt-pic-icon1-right{
    left: 51.6%;
    top: 41%;
}
.qt-pic-icon2-right{
    left: 51.4%;
    top: 33%;
}
.qt-pic-icon3-right{
    left: 51.2%;
    top: 24%;
}
.qt-pic-icon4-right{
    left: 51%;
    top: 15%;
}
/** åˆ†å‰² **/
.qt-pic-icon5-right{
    left: 58.8%;
    top: 43%;
}
.qt-pic-icon6-right{
    left: 58.4%;
    top: 39%;
}
.qt-pic-icon7-right{
    left: 58%;
    top: 35%;
}
.qt-pic-icon8-right{
    left: 57.6%;
    top: 31%;
}
/** åˆ†å‰²**/
.qt-pic-icon9-right{
    left: 62%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon10-right{
    left: 57.2%;
    top: 27%;
}
.qt-pic-icon11-right{
    left: 56.8%;
    top: 23%;
}
.qt-pic-icon12-right{
    left: 56.4%;
    top: 19%;
}
.qt-pic-icon13-right{
    left: 56%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon14-right{
    left: 68.5%;
    top: 42%;
}
.qt-pic-icon15-right{
    left: 67.8%;
    top: 36%;
}
.qt-pic-icon16-right{
    left: 67.1%;
    top: 30%;
}
.qt-pic-icon18-right{
    left: 66.4%;
    top: 25%;
}
.qt-pic-icon19-right{
    left: 65.7%;
    top: 20%;
}
.qt-pic-icon20-right{
    left: 65%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon17-right{
    left: 72%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon21-right{
    left: 77.8%;
    top: 43%;
}
.qt-pic-icon22-right{
    left: 77.2%;
    top: 39%;
}
.qt-pic-icon23-right{
    left: 76.5%;
    top: 35%;
}
.qt-pic-icon24-right{
    left: 75.8%;
    top: 31%;
}
.qt-pic-icon25-right{
    left: 75.1%;
    top: 27%;
}
.qt-pic-icon26-right{
    left: 74.4%;
    top: 23%;
}
.qt-pic-icon27-right{
    left: 73.7%;
    top: 19%;
}
.qt-pic-icon28-right{
    left: 73%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon29-right{
    left: 84.5%;
    top: 41%;
}
.qt-pic-icon30-right{
    left: 83%;
    top: 33%;
}
.qt-pic-icon31-right{
    left: 81.5%;
    top: 24%;
}
.qt-pic-icon32-right{
    left: 80%;
    top: 15%;
}
@-webkit-keyframes twinkling {
    0% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}
@keyframes twinkling {
    0% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}
@media all and (max-width: 1650px) {
    .qt-td-hide{
        display: none;
    }
    .lq-cTop-item p span{
        font-size: 18px;
    }
}
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/PrintBuilder-lay.js
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/grain-check1.js
ÎļþÃû´Ó igds-dzhwk-web/src/main/resources/static/dzhwk/grain-check1.js ÐÞ¸Ä
@@ -328,7 +328,7 @@
// ç²®æƒ…对比
function compare() {
    layer.msg("暂未开放!");
    layer.msg("暂未对接!");
    return;
    if (!depotId) {
        layer.msg("请先选择仓库……");
@@ -595,7 +595,7 @@
// å•个粮情检测
function checkGrain() {
    layer.msg("暂未开放!");
    layer.msg("暂未对接!");
    return;
    if (!depotId) {
        layer.msg("请先选择仓库!");
@@ -626,7 +626,7 @@
// æ‰¹é‡ç²®æƒ…采集
function checkGrainBatch() {
    layer.msg("暂未开放!");
    layer.msg("暂未对接!");
    return;
    $('#batchCheckSelect input').each(function () {
        $(this).prop("checked", false);
@@ -724,7 +724,7 @@
var iframeOrderIndex = 0;
function showOrderProgress() {
    layer.msg("暂未开放!");
    layer.msg("暂未对接!");
    return;
    var domId = "#layui-layer-iframe" + iframeOrderIndex;
    if ($(domId).length == 0) {
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/grain-export.js
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/grainPoint1.js
igds-dzhwk-web/src/main/resources/static/dzhwk/grain/lqStyle.css
ÎļþÃû´Ó igds-dzhwk-web/src/main/resources/static/dzhwk/lqStyle.css ÐÞ¸Ä
@@ -251,36 +251,36 @@
}
.lq-cTop-1{
    background: url(../img/dzhwk/grain/lq-c-bg1.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg1.png) no-repeat;
    background-size: 100% 100%;
    width: 29%;
}
.lq-cTop-2{
    background: url(../img/dzhwk/grain/lq-c-bg2.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg2.png) no-repeat;
    background-size: 100% 100%;
    width: 29%;
}
.lq-cTop-3{
    background: url(../img/dzhwk/grain/lq-c-bg3.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg3.png) no-repeat;
    background-size: 100% 100%;
    width: 19.5%;
}
.lq-cTop-3-2{
    background: url(../img/dzhwk/grain/lq-c-bg3.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg3.png) no-repeat;
    background-size: 100% 100%;
}
.lq-cTop-4{
    background: url(../img/dzhwk/grain/lq-c-bg4.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg4.png) no-repeat;
    background-size: 100% 100%;
    width: 19.5%;
}
.lq-cTop-4-2{
    background: url(../img/dzhwk/grain/lq-c-bg4.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg4.png) no-repeat;
    background-size: 100% 100%;
}
@@ -289,7 +289,7 @@
}
.lq-cTop-item{
    background: url(../img/dzhwk/grain/lq-li-bg.png) right center no-repeat;
    background: url(../../img/dzhwk/grain/lq-li-bg.png) right center no-repeat;
}
.lq-cTop-item:last-child{
@@ -368,7 +368,7 @@
    margin-left: 10px;
    margin-top: 25px;
    height: 80px;
    background: url(../img/dzhwk/grain/img-dnxb.png) center no-repeat;
    background: url(../../img/dzhwk/grain/img-dnxb.png) center no-repeat;
    overflow: hidden;
    position: relative;
}
@@ -419,57 +419,57 @@
}
.lq-rMenu li .lq-rMenu-icon1{
         background: url(../img/dzhwk/grain/lq-r-icon1.png);
         background: url(../../img/dzhwk/grain/lq-r-icon1.png);
}
.lq-rMenu li .lq-rMenu-icon2{
         background: url(../img/dzhwk/grain/lq-r-icon2.png);
         background: url(../../img/dzhwk/grain/lq-r-icon2.png);
}
.lq-rMenu li .lq-rMenu-icon3{
         background: url(../img/dzhwk/grain/lq-r-icon3.png);
         background: url(../../img/dzhwk/grain/lq-r-icon3.png);
}
.lq-rMenu li .lq-rMenu-icon4{
         background: url(../img/dzhwk/grain/lq-r-icon4.png);
         background: url(../../img/dzhwk/grain/lq-r-icon4.png);
}
.lq-rMenu li .lq-rMenu-icon5{
         background: url(../img/dzhwk/grain/lq-r-icon5.png);
         background: url(../../img/dzhwk/grain/lq-r-icon5.png);
}
.lq-rMenu li .lq-rMenu-icon6{
    background: url(../img/dzhwk/grain/lq-r-icon6.png);
    background: url(../../img/dzhwk/grain/lq-r-icon6.png);
}
.lq-a1{
    background: url(../img/dzhwk/grain/lq-c-bg1.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg1.png) no-repeat;
    background-size: 100% 100%;
    border-radius: 6px;
}
.lq-a2{
    background: url(../img/dzhwk/grain/lq-c-bg2.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg2.png) no-repeat;
    background-size: 100% 100%;
    border-radius: 6px;
}
.lq-a3{
    background: url(../img/dzhwk/grain/lq-c-bg3.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg3.png) no-repeat;
    background-size: 100% 100%;
    border-radius: 6px;
}
.lq-a4{
    background: url(../img/dzhwk/grain/lq-c-bg4.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg4.png) no-repeat;
    background-size: 100% 100%;
    border-radius: 6px;
}
.lq-a5{
    background: url(../img/dzhwk/grain/lq-c-bg5.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg5.png) no-repeat;
    background-size: 100% 100%;
    border-radius: 6px;
}
.lq-a6{
    background: url(../img/dzhwk/grain/lq-c-bg6.png) no-repeat;
    background: url(../../img/dzhwk/grain/lq-c-bg6.png) no-repeat;
    background-size: 100% 100%;
    border-radius: 6px;
}
@@ -487,29 +487,29 @@
.lq-rMenu li:hover .lq-rMenu-icon1,
.lq-rMenu li.active .lq-rMenu-icon1{
         background: url(../img/dzhwk/grain/lq-r-icon1-h.png);
         background: url(../../img/dzhwk/grain/lq-r-icon1-h.png);
}
.lq-rMenu li:hover .lq-rMenu-icon2,
.lq-rMenu li.active .lq-rMenu-icon2{
         background: url(../img/dzhwk/grain/lq-r-icon2-h.png);
         background: url(../../img/dzhwk/grain/lq-r-icon2-h.png);
}
.lq-rMenu li:hover .lq-rMenu-icon3,
.lq-rMenu li.active .lq-rMenu-icon3{
         background: url(../img/dzhwk/grain/lq-r-icon3-h.png);
         background: url(../../img/dzhwk/grain/lq-r-icon3-h.png);
}
.lq-rMenu li:hover .lq-rMenu-icon4,
.lq-rMenu li.active .lq-rMenu-icon4{
         background: url(../img/dzhwk/grain/lq-r-icon4-h.png);
         background: url(../../img/dzhwk/grain/lq-r-icon4-h.png);
}
.lq-rMenu li:hover .lq-rMenu-icon5,
.lq-rMenu li.active .lq-rMenu-icon5{
         background: url(../img/dzhwk/grain/lq-r-icon5-h.png);
         background: url(../../img/dzhwk/grain/lq-r-icon5-h.png);
}
.lq-rMenu li:hover .lq-rMenu-icon6,
.lq-rMenu li.active .lq-rMenu-icon6{
    background: url(../img/dzhwk/grain/lq-r-icon6-h.png);
    background: url(../../img/dzhwk/grain/lq-r-icon6-h.png);
}
.lq-cLow{
igds-dzhwk-web/src/main/resources/static/dzhwk/pest/PrintBuilder.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,140 @@
/**
 * æ ¹æ®æ°”体信息生成打印模版
 *
 * @param depotData
 *            ä»“库基本信息
 * @param grainData
 *            ç²®æƒ…数据信息
 */
builderModel = function(curData,dept) {
    var depotData = curData.depotData;
    var listPoint = curData.listPoint;
    var model = "<!DOCTYPE html><html lang=\"zh-cn\">\n"
            + "<head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=UTF-8\"><title>气体报表模版</title>"
            + "    <style>\n"
            + "        table,table tr th,table tr td{border:1px solid #0d1021}table{width:100%;line-height:23px;text-align:center;font-size:14px}.table-2{border-top:0px solid #0d1021 !important}.table-2 tr{border-top:0px solid #0d1021 !important}.table-2 td{border-top:0px solid #0d1021 !important}.table-row-tr{border-left:0px !important;border-right:0px !important;border-top:0px !important}.table-row-fz{border:0px !important}.link-top{width:100%;border-top:solid #0d1021 1px}</style>\n"
            + "</head><body>";
    model += "<div style=\"text-align: center\">\n"
            + "<span style=\"font-size: 26px; font-weight: bold;\">\n";
    if(dept){
        model += dept.name;
    }else{
        model += "--XXX--粮库"
    }
    model += "</span><div class=\"link-top\"></div><div class=\"link-top\"></div>\n";
    model += "<span style=\"font-size: 18px; \">";
    model += depotData.name;
    model += "&nbsp;&nbsp;&nbsp;&nbsp;虫害报表</span>\n";
    model += "</div><div style=\"margin-top: 5px;\"><span style=\"float: left;\">";
    model += "&nbsp;&nbsp;方向:东</span><span style=\"float: right;\">检测时间:";
    model += curData.receiveDate;
    model += "</span></div>";
    // åŠ¨æ€é…ç½®
    model += "<table cellspacing=\"0\" cellpadding=\"0\">";
    model += "<tr><td>采集位</td><td>虫害头数</td><td>虫害类型</td><td>采集位</td><td>虫害头数</td><td>虫害类型</td></tr>";
    var num = Math.ceil(listPoint.length / 2);
    var index = 1;
    var point;
    for (var i = 0; i < num; i++) {
        point = listPoint[index - 1];
        model += "<tr>";
        model += "<td class=\"table-row-fz\">采集位 " + point.passCode + "</td>";
        model += "<td class=\"table-row-fz\">" + attrPoint(point, curData)
                + "</td>";
        model += "<td class=\"table-row-fz\">" + point.pestType + "</td>";
        index++;
        if (index > listPoint.length) {
            model += "<td class=\"table-row-fz\"></td>";
            model += "<td class=\"table-row-fz\"></td>";
            model += "<td class=\"table-row-fz\"></td>";
        } else {
            point = listPoint[index - 1];
            model += "<td class=\"table-row-fz\">采集位 " + point.passCode + "</td>";
            model += "<td class=\"table-row-fz\">" + attrPoint(point, curData)
                    + "</td>";
            model += "<td class=\"table-row-fz\">" + point.pestType + "</td>";
            index++;
        }
        model += "</tr>";
    }
    model += "</table>";
    // <!--下面表格开始-->
    model += "<table cellspacing=\"0\" cellpadding=\"0\" class=\"table-2\">";
    model += "<tr><td width=\"25%\">检测分析:</td>";
    model += "<td colspan=3>" + curData.remark + "</td></tr>";
    model += "<tr><td width=\"25%\"></td><td width=\"25%\">总检测位数</td><td width=\"25%\">检测最多头数</td><td width=\"25%\">备注</td></tr>";
    // æ°”体整体信息
    model += "<tr> <td>整仓</td><td>" + curData.checkNum + "</td>";
    model += "<td>" + curData.pestMax + "</td>";
    model += "<td></td></tr>";
    // ä»“库信息
    model += "<tr><td>仓房类型</td><td>" + depotData.depotTypeName + "</td>";
    model += "<td>入仓日期</td><td>" + depotData.storeDate + "</td></tr>";
    model += "<tr><td>粮食品种</td><td>" + depotData.foodVarietyName + "</td>";
    model += "<td>实际储量(吨)</td><td>" + depotData.storageReal
            + "</td></tr>";
    model += "<tr><td>入仓水分(%)</td><td>" + depotData.perWet + "</td>";
    model += "<td>当前水分(%)</td><td>" + depotData.perWet + "</td></tr>";
    model += "<tr><td>发芽率(%)</td><td></td>";
    model += "<td>粮食产地</td><td>" + depotData.foodLocation
            + "</td></tr>";
    model += "<tr><td>容重(kg/m3)</td><td>" + depotData.bulkWeight + "</td>";
    model += "<td>面筋持水率(%)</td><td></td></tr>";
    model += "<tr><td>杂质(%)</td><td>" + depotData.perImpurity + "</td>";
    model += "<td>不完善粒(%)</td><td>" + depotData.broken + "</td></tr>";
    model += "<tr><td>检测人</td><td>" + curData.checkUser + "</td>";
    model += "<td>保管员</td><td>" + depotData.storeKeeperName
            + "</td></tr>";
    model += "</table>";
    // æ·»åŠ å°¾éƒ¨ä¿¡æ¯
    model += "<div style=\"margin-top: 5px;\">";
    model += "<span style=\"float: left;\">注:#表示最低&nbsp;&nbsp;*表示最高</span>";
    model += "<span style=\"float: right;\">制表时间:" + curData.sysDate
            + "</span></div>";
    model += "</div></body></html>";
    return model;
};
// æ ¹æ®é‡‡é›†ç‚¹èµ‹å€¼ï¼Œæ³¨æ„æ•°æ®åº“生成的坐标是从0开始的
attrPoint = function(point, curData) {
    if (-100.0 == point.pestNum) {
        return "备用";
    }
    if (curData.pestMax == point.pestNum) {
        return point.pestNum + "*";
    }
    return point.pestNum;
};
/**
 * æ ¹æ®HTML模版打印为A4
 *
 * @param strHtml
 */
previewA4 = function(strHtml) {
    var LODOP = getLodop();
    LODOP.SET_PRINT_PAGESIZE(1, 0, 0, "A4");
    LODOP.PRINT_INIT("虫害报表");
    LODOP.ADD_PRINT_HTM(30, 40, "180mm", "100%", strHtml);
    LODOP.PREVIEW();
};
igds-dzhwk-web/src/main/resources/static/dzhwk/pest/pest-check.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,737 @@
var layer;
var depotId;// å½“前仓库id
var curData;// å½“前仓粮情数据
var mapData;// æ ¹æ®æ—¥æœŸæŸ¥è¯¢çš„æ¯ä¸ªä»“库一条数据
var form;
var table;
var listData;// é»˜è®¤é¡µé¢ä¸­çš„粮情列表
var gasConf;// æ°”体采集配置信息,包括开始采集点和截至采集点。
$(function () {
    layui.use(['layer', 'laydate', 'form', 'table'], function () {
        form = layui.form;
        layer = layui.layer;
        var laydate = layui.laydate;
        table = layui.table;
        // æ—¥æœŸ
        laydate.render({
            elem: '#checkDateMore',
            theme: '#7b8e9f'
        });
        laydate.render({
            elem: '#printCheckDate',
            theme: '#7b8e9f'
        });
        // ç›‘听仓库选择
        form.on('select(select_depotId)', function (obj) {
            flushData(null);
            //获取当前仓库效果图
            // cutImg(obj.value);
            //根据仓库编码切换采集点位置
            // cutPoint(obj.value);
        });
        // ç›‘听选择批次
        form.on('select(select_batchId)', function (obj) {
            var value = obj.value;
            if (value == "0") {// è¡¨ç¤ºå¼¹å‡ºæ›´å¤šæ‰¹æ¬¡
                showMore();
            } else {
                flushByBatchId(value);
            }
        });
        flushData(null);
    });
});
/**
 * åˆ‡æ¢é‡‡é›†ç‚¹
 * @param depotId
 */
function cutPoint(depotId) {
    //首先除去已有效果
    $(".qt-pic-icon-active").removeClass("qt-pic-icon-active");
    $("#list-point-right").css("display","none");
    $("#list-point-left").css("display","block");
}
//根据采集进度信息渲染采集点效果
function renderCheckPoint(checkProgress) {
    if (depotId != checkProgress.depotId) {
        $("#progress-info").text("");
        return;
    }
    $("#progress-info").text(checkProgress.msg);
    //首先除去已有效果
    $(".qt-pic-icon-active").removeClass("qt-pic-icon-active");
    var id = "#point" + checkProgress.checkPoint+"-left";
    $(id).addClass("qt-pic-icon-active");
    id = "#point" + checkProgress.checkPoint+"-right";
    $(id).addClass("qt-pic-icon-active");
};
// å•仓打印
function printSingle() {
    layer.msg("暂未对接!");
    return;
    layer.msg("开始生成打印模版……");
    var html = builderModel(curData,dept);
    layer.msg("开始调用打印机程序预览……");
    previewA4(html);
};
// æ‰¹é‡æ‰“印
function printBatch() {
    layer.msg("暂未对接!");
    return;
    // é¦–先去除之前的选择
    var name;
    $('#batchPrintSelect input').each(function () {
        name = $(this).prop("name");
        if (name == "printCheckDate") {// è·³è¿‡
            return true;
        }
        $(this).prop("disabled", false);
        $(this).prop("checked", false);
    });
    form.render();
    // å¼¹å‡ºé€‰æ‹©æ¡†
    layer.open({
        type: 1,
        title: '批量打印(红色表示没有检测记录,默认为当天)',
        area: ['690px', '450px'],
        shade: 0,
        content: $('#batchPrintSelect'),
        btn: ['全选', '反选', '重选', '打印预览', '取消打印'],
        yes: function () {
            var disabled, name;
            $('#batchPrintSelect input').each(function () {
                disabled = $(this).prop("disabled");
                name = $(this).prop("name");
                if (name == "printCheckDate" || disabled) {
                } else {
                    $(this).prop("checked", true);
                }
            });
            form.render();
        },
        btn2: function () {
            var disabled, name;
            $('#batchPrintSelect input').each(function () {
                disabled = $(this).prop("disabled");
                name = $(this).prop("name");
                if (name == "printCheckDate" || disabled) {
                    // ä¸åšå¤„理
                } else {
                    if ($(this).prop("checked")) {
                        $(this).prop("checked", false);
                    } else {
                        $(this).prop("checked", true);
                    }
                }
            });
            form.render();
            return false;
        },
        btn3: function () {
            var disabled, name;
            $('#batchPrintSelect input').each(function () {
                disabled = $(this).prop("disabled");
                name = $(this).prop("name");
                if (name == "printCheckDate" || disabled) {
                    // ä¸åšå¤„理
                } else {
                    $(this).prop("checked", false);
                }
            });
            form.render();
            return false;
        },
        btn4: function () {
            printBatchTodo();
        },
        btn5: function () {
            layer.close(0);
        },
        closeBtn: 0
    });
    // é»˜è®¤è°ƒç”¨èŽ·å–æ•°æ®æ›´æ–°
    $("#printCheckDate").prop("value", dateFtt("yyyy-MM-dd", new Date()));
    getPrintBatchDepot();
};
// èŽ·å–æ‰¹é‡æ‰“å°çš„ä¿¡æ¯
function getPrintBatchDepot() {
    layer.msg("验证粮情检测记录……");
    var checkDate = $("#printCheckDate").val();
    $.ajax({
        type: "POST",
        url: "../../basic/pest/query-checkDate-map",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify({
            checkDate: checkDate
        }),
        success: function (result) {
            if (result.code != "0000") {
                layer.msg(result.msg);
                // è®¾ç½®æ‰€æœ‰ä»“库不可选
                var name;
                $('#batchPrintSelect input').each(function () {
                    name = $(this).prop("name");
                    if (name != "printCheckDate") {// è·³è¿‡
                        $(this).prop("disabled", true);
                    }
                });
                form.render();
            } else {
                mapData = result.data;
                // åŠ¨æ€è°ƒæ•´ä»“åº“æ˜¯å¦å¯ä»¥é€‰æ‹©
                var name, value;
                $('#batchPrintSelect input').each(function () {
                    name = $(this).prop("name");
                    value = $(this).val();
                    if (name != "printCheckDate") {// è·³è¿‡
                        if (mapData[value]) {
                            $(this).prop("disabled", false);
                        } else {
                            $(this).prop("disabled", true);
                        }
                    }
                });
                form.render();
            }
        },
        error: function () {
            layer.msg("批量打印获取粮情信息失败!");
        }
    });
};
// æ ¹æ®æŸ¥è¯¢çš„æ•°æ®æ‰¹é‡æ‰“印预览
function printBatchTodo() {
    layer.msg("开始批量生成打印模版……");
    var strHtml;
    var value;
    var checked;
    var printData;
    // å°†ä»“库数据列表转换为MAP
    var mapDepot = {};
    $.each(listDepot, function (index, data) {
        mapDepot[data.id] = data;
    });
    var LODOP = getLodop();
    LODOP.PRINT_INIT("气体检测报表");// åˆå§‹åŒ–在循环外
    LODOP.SET_PRINT_PAGESIZE(1, 0, 0, "A4");
    $('#batchPrintSelect input').each(function () {
        if ($(this).prop("name") == "printCheckDate") {// è·³è¿‡
            return true;
        }
        checked = $(this).prop("checked");
        if (checked) {
            value = $(this).val();
            LODOP.NewPage();
            printData = mapData[value];
            if (!printData) {// å¦‚果没有粮情数据跳过执行下一个
                return true;
            }
            printData.depotData = mapDepot[value];
            strHtml = builderModel(printData,dept);
            LODOP.ADD_PRINT_HTM(30, 40, "180mm", "100%", strHtml);
        }
    });
    layer.msg("开始调用打印程序预览……");
    LODOP.PREVIEW();
};
// ç‚¹å‡»åˆ·æ–°æ“ä½œ
function flushData(checkDate) {
    depotId = $("#depotId").val();
    if (!depotId) {
        layer.msg("请先选择仓库!");
        return;
    }
    cleanData();
    listData = [{"batchId":"202410230838","checkNum":5,"checkUser":"管理员","companyId":"1000","depotData":{"bulkWeight":600,"companyId":"1000","depotStatus":"3","depotStatusName":"封仓","depotType":"01","depotTypeName":"平房仓","deptId":"1000001001","foodLevel":"03","foodLevelName":"三等","foodLocation":"江西省","foodType":"123","foodTypeName":"县级地方储备粮","foodVariety":"1131","foodYear":"2024","id":"LB03","name":"L1-1C仓","orderNum":3,"storageMax":5000000,"storageReal":1825000,"storeDate":1724342400000,"storeKeeperLevel":"高级保管员","storeKeeperPhone":"####","storeType":"1"},"depotId":"LB03","listPoint":[{"passCode":1,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 08:38"},{"passCode":2,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 08:38"},{"passCode":3,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 08:38"},{"passCode":4,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 08:38"},{"passCode":5,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 08:38"}],"pestEnd":5,"pestMax":2,"pestStart":1,"points":"1,0;2,0;3,0;4,0;5,2;","receiveDate":"2024-10-23 08:38","remark":"基本无虫粮","sysDate":1747965415141},{"batchId":"202410100836","checkNum":5,"checkUser":"地磅室","companyId":"1000","depotData":{"$ref":"$[0][0].depotData"},"depotId":"LB03","listPoint":[{"passCode":1,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 09:38"},{"passCode":2,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 09:38"},{"passCode":3,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 09:38"},{"passCode":4,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 09:38"},{"passCode":5,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 09:38"}],"pestEnd":5,"pestMax":0,"pestStart":1,"points":"1,0;2,0;3,0;4,0;5,0;","receiveDate":"2024-10-23 09:38","remark":"基本无虫粮","sysDate":1747965415141},{"batchId":"202410081616","checkNum":5,"checkUser":"地磅室","companyId":"1000","depotData":{"$ref":"$[0][0].depotData"},"depotId":"LB03","listPoint":[{"passCode":1,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 11:38"},{"passCode":2,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 11:38"},{"passCode":3,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 11:38"},{"passCode":4,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 11:38"},{"passCode":5,"pestNum":0,"pestType":"","receiveDate":"2024-10-23 11:38"}],"pestEnd":5,"pestMax":5,"pestStart":1,"points":"1,4;2,2;3,1;4,2;5,5;","receiveDate":"2024-10-23 11:38","remark":"一般虫粮","sysDate":1747965415141}];
    if(!listData){
        return;
    }
    curData = listData[0];
    // æ¸²æŸ“数据
    renderDataInfo();
    // åœ¨æ‰¹æ¬¡é€‰æ‹©ä¸­æ·»åŠ ä¸‹æ‹‰æ•°æ®
    resetSelectBatchId();
    // è°ƒç”¨å…¨éƒ¨å…³é—­
    layer.closeAll();
    layer.msg("更新成功……");
    // var data = {
    //     depotId: depotId,
    //     checkDate: checkDate
    // };
    // $.ajax({
    //     type: "POST",
    //     url: "../../basic/pest/list-data",
    //     dataType: "json",
    //     contentType: "application/json;charset=UTF-8",
    //     data: JSON.stringify(data),
    //     success: function (result) {
    //         if (result.code != "0000") {
    //             layer.msg(result.msg);
    //         }
    //         listData = result.data;
    //         if(!listData){
    //             return;
    //         }
    //         curData = listData[0];
    //
    //         // æ¸²æŸ“数据
    //         renderDataInfo();
    //
    //         // åœ¨æ‰¹æ¬¡é€‰æ‹©ä¸­æ·»åŠ ä¸‹æ‹‰æ•°æ®
    //         resetSelectBatchId();
    //
    //         // è°ƒç”¨å…¨éƒ¨å…³é—­
    //         layer.closeAll();
    //         layer.msg("更新成功……");
    //     },
    //     error: function () {
    //         layer.msg("根据当前条件获取粮情数据渲染图标失败!!");
    //     }
    // });
};
//清空数据
function cleanData() {
    //清空检测时间批次值
    $("#batchId").empty();
    form.render();
    $("#checkNum").text("0");
    $("#remark").text("无虫");
    $("#tableInfo").html("");
}
//切换仓库图片
function cutImg(depotId) {
    //默认图片
    var gasImg = gasImgMap[depotId];
    var imgPath = "../../basic/file/getImg?filePath=" + gasImg.fileImg;
    $("#depot_img").attr("src", imgPath);
}
//渲染表格,同时渲染排行
function renderTableInfo() {
    var listPoint = curData.listPoint;
    var v1 = curData.pestMax, v2 = 0.0, v3 = 0.0, v4 = 0.0;
    var tableHtml = "<table class=\"layui-table\" lay-even lay-skin=\"nob\" >";
    tableHtml += "<thead><tr><th>检测位</th><th lay-data=\"{sort:true}\">虫害头数</th><th>虫害类型</th></tr></thead>";
    tableHtml += "<tbody>";
    // åŠ¨æ€åˆ›å»ºè¡¨æ ¼
    $.each(listPoint, function (index, item) {
        tableHtml += "<tr><td>" + item.passCode + "</td>";
        tableHtml += "<td>" + item.pestNum + "</td>";
        tableHtml += "<td>" + item.pestType + "</td></tr>";
        //渲染排行
        if (index == 0) {
            $("#orderValue1").text(item.pestNum);
            $("#orderName1").text("采集位" + item.passCode);
        }
        if (index == 1) {
            $("#orderValue2").text(item.pestNum);
            $("#orderName2").text("采集位" + item.passCode);
        }
        if (index == 2) {
            $("#orderValue3").text(item.pestNum);
            $("#orderName3").text("采集位" + item.passCode);
        }
        if (index == 3) {
            $("#orderValue4").text(item.pestNum);
            $("#orderName4").text("采集位" + item.passCode);
        }
    });
    tableHtml += "</tbody></table>";
    $("#tableInfo").html(tableHtml);
};
// å›žå¡«æ£€æµ‹ä¿¡æ¯
function renderDataInfo() {
    $("#checkNum").text(curData.checkNum);
    $("#remark").text(curData.remark);
    //渲染表格和排行
    renderTableInfo();
};
// æ ¹æ®æ‰¹æ¬¡æ›´æ–°çš„值调整
function flushByBatchId(batchId) {
    var temp;
    $.each(listData, function (index, item) {
        if (item.batchId == batchId) {
            temp = item;
            return false;
        }
    });
    if (temp) {
        curData = temp;
        renderDataInfo();
        layer.msg("更新成功……");
    }
};
// é‡ç½®æ‰¹æ¬¡ä¸‹æ‹‰æ¡†
function resetSelectBatchId() {
    // é¦–先清空原来的值
    $("#batchId").empty();
    // æœªä¸‹æ‹‰æ¡†èµ‹å€¼
    $.each(listData, function (index, item) {
        $('#batchId').append(new Option(item.receiveDate, item.batchId));// ä¸‹æ‹‰èœå•里添加元素
    });
    $('#batchId').append(new Option("选择时间……", "0"));
    form.render();
};
// æ›´å¤šæ‰¹æ¬¡é€‰æ‹©
function showMore() {
    layer.open({
        type: 1,
        title: '请选择时间',
        area: ['380px', '250px'],
        shade: 0,
        content: $('#dialogMoreSelect'),
        btn: ['确认选择', '取消'],
        yes: function () {
            var checkDateMore = $("#checkDateMore").val();
            if (checkDateMore) {
                flushData(checkDateMore);
            } else {
                layer.msg("请先确认时间!");
            }
        },
        btn2: function () {
            layer.close(0);
        },
        closeBtn: 0
    });
};
// æ°”体采集的入口方法,type=1,表示整仓采集;type=2,表示选择采集,type=3表示多仓采集
function checkStart(type) {
    layer.msg("暂未对接!");
    return;
    if (3 == type) {
        checkBatch();
        return;
    }
    // æ•´ä»“采集和选择采集需要获取到气体的配置信息后进行操作
    depotId = $("#depotId").val();
    if (!depotId) {
        layer.msg("请先选择仓库!");
        return;
    }
    if (gasConf && gasConf.depotId == depotId) {
        if (1 == type) {
            check();
        }
        if (2 == type) {
            checkSelect();
        }
        return;
    }
    layer.msg("获取当前仓库的配置信息……");
    var data = {
        depotId: depotId
    };
    $.ajax({
        type: "POST",
        url: "../../basic/pest/gas-conf",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(data),
        success: function (result) {
            if (result.code != "0000") {
                layer.msg(result.msg);
                return;
            }
            gasConf = result.data;
            if (1 == type) {
                check();
                return;
            }
            if (2 == type) {
                checkSelect();
                return;
            }
        },
        error: function () {
            layer.msg("获取当前仓库配置信息失败!");
        }
    });
};
// å•个粮情检测
function check() {
    layer.msg("开始气体检测……");
    var data = {
        depotId: depotId
    };
    $.ajax({
        type: "POST",
        url: "../../basic/pest/check-single",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(data),
        success: function (result) {
            if (result.code != "ORDER_SUCCESS") {
                if (result.msg) {
                    layer.msg(result.msg);
                } else {
                    layer.msg("执行出现异常,请重试或联系管理员");
                }
            } else {
                layer.msg("命令已经成功发送,待终端响应……");
            }
        },
        error: function () {
            layer.msg("气体检测出现异常,执行失败!");
        }
    });
};
// é€‰æ‹©é‡‡é›†ç‚¹é‡‡é›†
function checkSelect() {
    // å¼¹å‡ºé€‰æ‹©æ¡†ï¼Œé€‰æ‹©ä¿¡æ¯
    var gasStart = gasConf.gasStart, gasEnd = gasConf.gasEnd;
    var strHtml = "";
    for (var i = gasStart; i <= gasEnd; i++) {
        if (i < 10) {
            strHtml += "<input title='位置0" + i + "' type='checkbox' value='"
                + i + "'>";
            strHtml += "<div class='layui-unselect layui-form-checkbox'><span>位置0"
                + i
                + "</span><i class='layui-icon layui-icon-ok'></i></div>";
        } else {
            strHtml += "<input title='位置" + i + "' type='checkbox' value='" + i
                + "'>";
            strHtml += "<div class='layui-unselect layui-form-checkbox'><span>位置"
                + i
                + "</span><i class='layui-icon layui-icon-ok'></i></div>";
        }
    }
    $("#div_point_select").html(strHtml);
    form.render();
    // å¼€å§‹é€‰æ‹©
    layer.open({
        type: 1,
        title: '选择采集点(全选请使用整仓采集)',
        area: ['690px', '450px'],
        shade: 0,
        content: $('#pointSelect'),
        btn: ['全选', '反选', '重选', '确定检测', '取消检测'],
        yes: function () {
            $('#pointSelect input').each(function () {
                $(this).prop("checked", true);
            });
            form.render();
        },
        btn2: function () {
            $('#pointSelect input').each(function () {
                if ($(this).prop("checked")) {
                    $(this).prop("checked", false);
                } else {
                    $(this).prop("checked", true);
                }
            });
            form.render();
            return false;
        },
        btn3: function () {
            $('#pointSelect input').each(function () {
                $(this).prop("checked", false);
            });
            form.render();
            return false;
        },
        btn4: function () {
            return checkSelectStep2();
        },
        btn5: function () {
            layer.close(0);
        },
        closeBtn: 1
    });
};
// æ‰§è¡Œé‡‡é›†ç‚¹æ£€æµ‹
function checkSelectStep2() {
    // èŽ·å–é€‰æ‹©çš„é‡‡é›†ç‚¹
    var checkPoints = "";
    $('#pointSelect input').each(function () {
        if ($(this).prop("checked")) {
            checkPoints += $(this).val() + ",";
        }
    });
    if (checkPoints == "") {
        layer.msg("请选择需要检测的采集点");
        return false;
    }
    layer.msg("开始气体检测……");
    var data = {
        depotId: depotId,
        checkPoints: checkPoints
    };
    $.ajax({
        type: "POST",
        url: "../../basic/pest/check-select",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(data),
        success: function (result) {
            if (result.code != "ORDER_SUCCESS") {
                if (result.msg) {
                    layer.msg(result.msg);
                } else {
                    layer.msg("执行出现异常,请重试或联系管理员");
                }
                return false;
            } else {
                layer.msg("命令已经成功发送,待终端响应……");
                return true;
            }
        },
        error: function () {
            layer.msg("气体检测出现异常,执行失败!");
            return false;
        }
    });
    return true;
};
// æ‰¹é‡ç²®æƒ…采集
function checkBatch() {
    // é¦–先去除之前的选择
    $('#batchCheckSelect input').each(function () {
        $(this).prop("checked", false);
    });
    form.render();
    // å¼¹å‡ºé€‰æ‹©æ¡†
    layer.open({
        type: 1,
        title: '批量采集选择',
        area: ['690px', '450px'],
        shade: 0,
        content: $('#batchCheckSelect'),
        btn: ['全选', '反选', '重选', '执行采集', '取消采集'],
        yes: function () {
            $('#batchCheckSelect input').each(function () {
                $(this).prop("checked", true);
            });
            form.render();
        },
        btn2: function () {
            $('#batchCheckSelect input').each(function () {
                if ($(this).prop("checked")) {
                    $(this).prop("checked", false);
                } else {
                    $(this).prop("checked", true);
                }
            });
            form.render();
            return false;
        },
        btn3: function () {
            $('#batchCheckSelect input').each(function () {
                $(this).prop("checked", false);
            });
            form.render();
            return false;
        },
        btn4: function () {
            return checkBatchStep2();
        },
        btn5: function () {
            layer.close(0);
        },
        closeBtn: 0
    });
};
/**
 * å¼€å§‹æ‰§è¡Œæ‰¹é‡æ£€æµ‹
 */
function checkBatchStep2() {
    var depotIds = "";
    $('#batchCheckSelect input').each(function () {
        if ($(this).prop("checked")) {
            depotIds += $(this).val() + ",";
        }
    });
    if (depotIds == "") {
        layer.msg("请先选择需要检测的仓库……");
        return false;
    }
    layer.msg("开始执行批量检测……");
    // è°ƒç”¨åŽå°æ‰¹é‡æ£€æµ‹
    var data = {
        depotIds: depotIds
    };
    $.ajax({
        type: "POST",
        url: "../../basic/pest/check-batch",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(data),
        success: function (result) {
            if (result.code != "ORDER_SUCCESS") {
                if (result.msg) {
                    layer.msg(result.msg);
                } else {
                    layer.msg("执行出现异常,请重试或联系管理员");
                }
                return false;
            } else {
                layer.msg("命令已经成功发送,待终端响应……");
                return true;
            }
        },
        error: function () {
            layer.msg("检测出现异常,执行失败!");
            return false;
        }
    });
    return true;
};
function gasChart() {
    layer.msg("暂未对接!");
    return;
    layer.msg("功能暂未开放……");
};
igds-dzhwk-web/src/main/resources/static/dzhwk/pest/pest.css
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,642 @@
@charset "utf-8";
/*-----------------
  Author:xq
  update:2019
 -------------------*/
body {
    font-family: "微软雅黑", Arial, sans-serif;
    font-size: 14px;
    background: #f3f5f8;
}
i, em {
    font-style: normal;
}
.radius-3 {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
}
.radius-4, .qt-rMenu-item a {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}
.radius-6, .lq-rMenu li {
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
    border-radius: 6px;
}
.box-shadow {
    -webkit-box-shadow: 0px 0px 9px 3px rgba(230, 230, 230, 0.6);
    -moz-box-shadow: 0px 0px 9px 3px rgba(230, 230, 230, 0.6);
    box-shadow: 0px 0px 9px 3px rgba(230, 230, 230, 0.6);
}
.fl {
    float: left;
}
.fr {
    float: right;
}
/*qtjc*/
.l-container {
    width: 100%;
    max-width: 1680px;
    min-width: 1340px;
    margin-left: auto;
    margin-right: auto;
}
.l-main {
    margin: 10px;
    position: relative;
    padding-right: 350px;
}
.qt-left {
    width: 100%;
}
.qt-lTop-l {
    width: 26%;
    min-width: 260px;
}
.qt-left1 {
    padding: 27px 8%;
    background: #7b8e9f;
}
.lq-left1-from {
    margin-bottom: 20px;
}
.qt-left .lq-left1-from:last-child {
    margin-bottom: 0;
}
.qt-left .lq-left1-from .layui-form-label {
    color: #fff;
    padding: 9px 0;
    text-align: left;
    font-size: 16px;
}
.qt-left .lq-left1-from .layui-input-block {
    margin-left: 80px;
}
.qt-left .layui-form-select .layui-edge {
    border-top-color: #666;
}
.qt-left .layui-input-block .layui-input {
    font-size: 16px;
    color: #000;
}
.qt-left .layui-form-select dl dd.layui-this {
    background: #7b8e9f;
}
.qt-lTop-r {
    width: 71.5%;
}
.qt-left-item {
    height: 150px;
    overflow: hidden;
    color: #fff;
    text-align: center;
}
.qt-left2 {
    background: url(../../img/dzhwk/gas/lq-c-bg3.png) no-repeat;
    background-size: 100% 100%;
}
.qt-left4 {
    background: url(../../img/dzhwk/gas/lq-c-bg2.png) no-repeat;
    background-size: 100% 100%;
}
.qt-left-item h3 {
    height: 24px;
    line-height: 24px;
    font-size: 16px;
    overflow: hidden;
    font-weight: bold;
    margin: 30px 0;
}
.lq-cTop-ite {
    position: relative;
}
.lq-cTop-item:after {
    display: block;
    content: '';
    width: 1px;
    height: 100%;
    background: rgba(255, 255, 255, 0.1);
    position: absolute;
    right: 0;
    top: 0;
    z-index: 97;
}
.lq-cTop-item:last-child:after {
    background: none;
}
.lq-cTop-item p {
    height: 25px;
    line-height: 25px;
    font-size: 16px;
    margin-top: 5px;
    overflow: hidden;
}
.lq-cTop-item h4 {
    font-size: 16px;
    line-height: 25px;
    height: 25px;
    overflow: hidden;
}
.lq-cTop-item p span {
    font-size: 24px;
}
.qt-picBox {
    width: 96%;
    text-align: center;
    position: relative;
}
.qt-pic {
    width: 100%;
    margin: 0 auto;
}
.qt-right {
    width: 340px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 99;
}
.qt-rMenu {
    background: #fff;
    width: 320px;
    height: 120px;
    overflow: hidden;
    padding: 15px 10px;
}
.qt-rMenu-item {
    height: 120px;
    text-align: center;
}
.qt-rMenu-item a {
    display: inline-block;
    width: 88px;
    height: 118px;
    border: 1px solid #e5e8ec;
}
.qt-icon {
    width: 48px;
    height: 48px;
    display: inline-block;
    position: relative;
    margin: 15px 0 10px;
}
.qt-icon img, .qt-pic-icon img {
    width: 100%;
    height: 100%;
    vertical-align: top;
}
.qt-rMenu-item  a p {
    line-height: 20px;
    color: #324251;
    font-size: 16px;
    height: 20px;
    overflow: hidden;
}
.qt-rMenu-icon1 {
    background: url(../../img/dzhwk/gas/qt-icon1.png);
}
.qt-rMenu-icon2 {
    background: url(../../img/dzhwk/gas/qt-icon2.png);
}
.qt-rMenu-icon3 {
    background: url(../../img/dzhwk/gas/lq-r-icon2.png);
}
.qt-rMenu-icon4 {
    background: url(../../img/dzhwk/gas/lq-r-icon4.png);
}
.qt-rMenu-icon5 {
    background: url(../../img/dzhwk/gas/lq-r-icon5.png);
}
.qt-rMenu-icon6 {
    background: url(../../img/dzhwk/gas/qt-icon3.png);
}
.qt-rMenu-item:hover a, .qt-rMenu-item.active a {
    background: #53adce;
    border-color: #53adce;
}
.qt-rMenu-item:hover a p, .qt-rMenu-item.active a p {
    color: #fff;
}
.qt-rMenu-item:hover .qt-rMenu-icon1, .qt-rMenu-item.active .qt-rMenu-icon1
    {
    background: url(../../img/dzhwk/gas/qt-icon1-h.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon2, .qt-rMenu-item.active .qt-rMenu-icon2
    {
    background: url(../../img/dzhwk/gas/qt-icon2-h.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon3, .qt-rMenu-item.active .qt-rMenu-icon3
    {
    background: url(../../img/dzhwk/gas/lq-r-icon2.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon4, .qt-rMenu-item.active .qt-rMenu-icon4
    {
    background: url(../../img/dzhwk/gas/lq-r-icon4.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon5, .qt-rMenu-item.active .qt-rMenu-icon5
    {
    background: url(../../img/dzhwk/gas/lq-r-icon5.png);
}
.qt-rMenu-item:hover .qt-rMenu-icon6, .qt-rMenu-item.active .qt-rMenu-icon6
    {
    background: url(../../img/dzhwk/gas/qt-icon3-h.png);
}
.qt-rTable-box {
    background: #fff;
    overflow: hidden;
    margin-top: 10px;
    width: 320px;
    padding: 10px;
    min-height: 320px;
}
.qt-rTable-box .layui-table td, .qt-rTable-box .layui-table th {
    padding: 9px 5px;
    text-align: center;
}
.qt-rTable-box .layui-table th {
    background: #dee6ec;
}
.mr4 {
    margin-right: 4%;
}
.qt-pic-icon{
    display: inline-block;
    width: 36px;
    height: 36px;
    position: absolute;
    z-index: 99;
}
.qt-pic-icon-active{
    -webkit-animation: twinkling 1.5s infinite ease-in-out;
    animation: twinkling 1.5s infinite ease-in-out;
}
.qt-pic-icon1{
    left: 45.5%;
    top: 41%;
}
.qt-pic-icon2{
    left: 46%;
    top: 33%;
}
.qt-pic-icon3{
    left: 46.6%;
    top: 24%;
}
.qt-pic-icon4{
    left: 47%;
    top: 15%;
}
/** åˆ†å‰² **/
.qt-pic-icon5{
    left: 37.5%;
    top: 43%;
}
.qt-pic-icon6{
    left: 38%;
    top: 39%;
}
.qt-pic-icon7{
    left: 38.5%;
    top: 35%;
}
.qt-pic-icon8{
    left: 39%;
    top: 31%;
}
/** åˆ†å‰²**/
.qt-pic-icon9{
    left: 35%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon10{
    left: 39.5%;
    top: 27%;
}
.qt-pic-icon11{
    left: 40%;
    top: 23%;
}
.qt-pic-icon12{
    left: 40.5%;
    top: 19%;
}
.qt-pic-icon13{
    left: 41%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon14{
    left: 27%;
    top: 42%;
}
.qt-pic-icon15{
    left: 28%;
    top: 36%;
}
.qt-pic-icon16{
    left: 29%;
    top: 30%;
}
.qt-pic-icon18{
    left: 30%;
    top: 25%;
}
.qt-pic-icon19{
    left: 31%;
    top: 20%;
}
.qt-pic-icon20{
    left: 32%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon17{
    left: 25%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon21{
    left: 17%;
    top: 43%;
}
.qt-pic-icon22 {
    left: 18%;
    top: 39%;
}
.qt-pic-icon23{
    left: 19%;
    top: 35%;
}
.qt-pic-icon24{
    left: 20%;
    top: 31%;
}
.qt-pic-icon25{
    left: 21%;
    top: 27%;
}
.qt-pic-icon26{
    left: 22%;
    top: 23%;
}
.qt-pic-icon27{
    left: 23%;
    top: 19%;
}
.qt-pic-icon28{
    left: 24%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon29{
    left: 12%;
    top: 41%;
}
.qt-pic-icon30{
    left: 14%;
    top: 33%;
}
.qt-pic-icon31{
    left: 16%;
    top: 24%;
}
.qt-pic-icon32{
    left: 18%;
    top: 15%;
}
/*** ---------------- å³ä¾§ ------**/
.qt-pic-icon1-right{
    left: 51.6%;
    top: 41%;
}
.qt-pic-icon2-right{
    left: 51.4%;
    top: 33%;
}
.qt-pic-icon3-right{
    left: 51.2%;
    top: 24%;
}
.qt-pic-icon4-right{
    left: 51%;
    top: 15%;
}
/** åˆ†å‰² **/
.qt-pic-icon5-right{
    left: 58.8%;
    top: 43%;
}
.qt-pic-icon6-right{
    left: 58.4%;
    top: 39%;
}
.qt-pic-icon7-right{
    left: 58%;
    top: 35%;
}
.qt-pic-icon8-right{
    left: 57.6%;
    top: 31%;
}
/** åˆ†å‰²**/
.qt-pic-icon9-right{
    left: 62%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon10-right{
    left: 57.2%;
    top: 27%;
}
.qt-pic-icon11-right{
    left: 56.8%;
    top: 23%;
}
.qt-pic-icon12-right{
    left: 56.4%;
    top: 19%;
}
.qt-pic-icon13-right{
    left: 56%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon14-right{
    left: 68.5%;
    top: 42%;
}
.qt-pic-icon15-right{
    left: 67.8%;
    top: 36%;
}
.qt-pic-icon16-right{
    left: 67.1%;
    top: 30%;
}
.qt-pic-icon18-right{
    left: 66.4%;
    top: 25%;
}
.qt-pic-icon19-right{
    left: 65.7%;
    top: 20%;
}
.qt-pic-icon20-right{
    left: 65%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon17-right{
    left: 72%;
    top: 30%;
}
/** åˆ†å‰²**/
.qt-pic-icon21-right{
    left: 77.8%;
    top: 43%;
}
.qt-pic-icon22-right{
    left: 77.2%;
    top: 39%;
}
.qt-pic-icon23-right{
    left: 76.5%;
    top: 35%;
}
.qt-pic-icon24-right{
    left: 75.8%;
    top: 31%;
}
.qt-pic-icon25-right{
    left: 75.1%;
    top: 27%;
}
.qt-pic-icon26-right{
    left: 74.4%;
    top: 23%;
}
.qt-pic-icon27-right{
    left: 73.7%;
    top: 19%;
}
.qt-pic-icon28-right{
    left: 73%;
    top: 15%;
}
/** åˆ†å‰²**/
.qt-pic-icon29-right{
    left: 84.5%;
    top: 41%;
}
.qt-pic-icon30-right{
    left: 83%;
    top: 33%;
}
.qt-pic-icon31-right{
    left: 81.5%;
    top: 24%;
}
.qt-pic-icon32-right{
    left: 80%;
    top: 15%;
}
@-webkit-keyframes twinkling {
    0% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}
@keyframes twinkling {
    0% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}
@media all and (max-width: 1650px) {
    .qt-td-hide{
        display: none;
    }
    .lq-cTop-item p span{
        font-size: 18px;
    }
}
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/gasImg_5.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/i-body.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-c-bg2.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-c-bg3.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-r-icon2.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-r-icon4.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/lq-r-icon5.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg1.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg2.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg3.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-bg4.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon1-h.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon1.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon2-h.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon2.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon3-h.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-icon3.png
igds-dzhwk-web/src/main/resources/static/img/dzhwk/gas/qt-pic.png
igds-dzhwk-web/src/main/resources/templates/dzhwk/card.html
@@ -73,11 +73,17 @@
        </div>
    </div>
</div>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/common.js}"></script>
<script th:inline="javascript">
    var flag = [[${flag}]];
    var layer;
    $(function () {
        layui.use(['layer'], function () {
            layer = layui.layer;
        });
    });
    //监听操作
    document.addEventListener('mousemove', resetTimeout);  //鼠标移动
    document.addEventListener('click', resetTimeout);      //鼠标点击
igds-dzhwk-web/src/main/resources/templates/dzhwk/gas-check.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,497 @@
<!DOCTYPE html>
<html lang="zh_CN" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="viewport"
          content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit">
    <title>气体检测</title>
    <link rel="stylesheet" th:href="@{/ajax/libs/layui/css/layui.css}"/>
    <link rel="stylesheet" th:href="@{/dzhwk/gas/gas.css}"/>
    <style type="text/css">
        .layui-checkbox-disbaled span {
            background-color: #ed5565 !important;
        }
        #progress-info {
            position: absolute;
            z-index: 99;
            display: inline-block;
            height: 30px;
            font-size: 16px;
            font-weight: bold
        }
    </style>
</head>
<body>
<div class="l-container">
    <div class="l-main layui-clear">
        <div class="qt-left">
            <div class="qt-lTop layui-clear">
                <div class="qt-lTop-l fl">
                    <div class="qt-left1 layui-clear radius-6 box-shadow">
                        <form class="layui-form" action="">
                            <div class="layui-form-item lq-left1-from">
                                <label class="layui-form-label">仓库列表</label>
                                <div class="layui-input-block">
                                    <select name="depotId" id="depotId" lay-filter="select_depotId">
                                        <option value="P0101" type="01">P01-01</option>
                                        <option value="P0102" type="01">P01-02</option>
                                        <option value="P0103" type="01">P01-03</option>
                                        <option value="P0104" type="01">P01-04</option>
                                        <option value="P0105" type="01">P01-05</option>
                                        <option value="P0106" type="01">P01-06</option>
                                    </select>
                                </div>
                            </div>
                            <div class="layui-form-item lq-left1-from">
                                <label class="layui-form-label">检测时间</label>
                                <div class="layui-input-block">
                                    <select name="batchId" id="batchId"
                                            lay-filter="select_batchId">
                                        <option value=""></option>
                                    </select>
                                </div>
                            </div>
                        </form>
                    </div>
                </div>
                <!--qt-lTop-l end-->
                <div class="layui-row qt-lTop-r fr">
                    <div class="layui-col-lg3">
                        <div class="qt-left2 qt-left-item radius-6 mr4">
                            <h3>O2 æµ“度(%)</h3>
                            <div class="layui-row">
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perO2Max">#</span>
                                    </p>
                                    <h4>最高</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perO2">#</span>
                                    </p>
                                    <h4>平均</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perO2Min">#</span>
                                    </p>
                                    <h4>最低</h4>
                                </div>
                            </div>
                        </div>
                    </div>
                    <!--layui-col end-->
                    <div class="layui-col-lg3">
                        <div class="qt-left3 qt-left-item radius-6 mr4">
                            <h3>CO2 æµ“度(PPM)</h3>
                            <div class="layui-row">
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perCo2Max">#</span>
                                    </p>
                                    <h4>最高</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perCo2">#</span>
                                    </p>
                                    <h4>平均</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perCo2Min">#</span>
                                    </p>
                                    <h4>最低</h4>
                                </div>
                            </div>
                        </div>
                    </div>
                    <!--layui-col end-->
                    <div class="layui-col-lg3">
                        <div class="qt-left4 qt-left-item radius-6 mr4">
                            <h3>PH3 æµ“度(PPM)</h3>
                            <div class="layui-row">
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perPh3Max">#</span>
                                    </p>
                                    <h4>最高</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perPh3">#</span>
                                    </p>
                                    <h4>平均</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perPh3Min">#</span>
                                    </p>
                                    <h4>最低</h4>
                                </div>
                            </div>
                        </div>
                    </div>
                    <!--layui-col end-->
                    <div class="layui-col-lg3">
                        <div class="qt-left5 qt-left-item radius-6 mr4">
                            <h3>N2 æµ“度(%)</h3>
                            <div class="layui-row">
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perN2Max">#</span>
                                    </p>
                                    <h4>最高</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perN2">#</span>
                                    </p>
                                    <h4>平均</h4>
                                </div>
                                <div class="layui-col-lg4 lq-cTop-item">
                                    <p>
                                        <span id="perN2Min">#</span>
                                    </p>
                                    <h4>最低</h4>
                                </div>
                            </div>
                        </div>
                    </div>
                    <!--layui-col end-->
                </div>
                <!-- qt-lTop-r end-->
            </div>
            <!--qt-lTop end-->
            <div class="qt-picBox" id="qt-picBox">
                <span id="progress-info"></span>
                <img id="depot_img" class="qt-pic" th:src="@{/img/dzhwk/gas/gasImg_5.png}"/>
            </div>
            <!--qt-picBox end-->
        </div>
        <!--qt-left end-->
        <div class="qt-right">
            <div class="qt-rMenu layui-row radius-6">
                <div class="qt-rMenu-item layui-col-lg4" style="border: 1px solid #e5e8ec;">
                    <p style="font-size: 16px;font-weight: 700;margin-top: 6px">检测类型</p>
                    <form class="layui-form layui-form-pane">
                        <div class="layui-input-block" style="left: -155px;width: 200px ">
                            <input type="radio" name="type" value="0" title="常规检测">
                            <input type="radio" name="type" value="1" title="熏蒸检测">
                        </div>
                    </form>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="checkStart(1)"> <span
                            class="qt-icon qt-rMenu-icon1"></span>
                        <p>整仓采集</p>
                    </a>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="checkStart(2)"> <span
                            class="qt-icon qt-rMenu-icon2"></span>
                        <p>选择采集</p>
                    </a>
                </div>
            </div>
            <div class="qt-rMenu layui-row radius-6" style="padding-top: 0px;">
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="checkStart(3)" style="width: 105px "> <span
                            class="qt-icon qt-rMenu-icon3"></span>
                        <p>多仓采集</p>
                    </a>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="printSingle()"> <span
                            class="qt-icon qt-rMenu-icon4"></span>
                        <p>单仓打印</p>
                    </a>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="printBatch()"> <span
                            class="qt-icon qt-rMenu-icon5"></span>
                        <p>多仓打印</p>
                    </a>
                </div>
            </div>
            <div class="qt-rTable-box radius-6" id="tableInfo" style='height: 480px; overflow-y: auto;'>
                <!--                     <table class="layui-table" ></table> -->
            </div>
            <!--qt-rTable-box end-->
        </div>
        <!--qt-right end-->
    </div>
    <!--l-main end-->
</div>
<!--l-container end-->
<script th:inline="javascript">
    //仓库列表
    var listDepot = [{
        "bhId": "1",
        "buildingId": "91310114703439394M0010001",
        "checkDate": 1605542400000,
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "02",
        "depotTypeName": "浅圆仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0101",
        "name": "P01-01",
        "perImpurity": 0.36,
        "perWet": 13.7,
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1668700800000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "2",
        "buildingId": "91310114703439394M0010001",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0102",
        "name": "P01-02",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1667836800000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "3",
        "buildingId": "91310114703439394M0010002",
        "companyId": "5303",
        "depotStatus": "34",
        "depotStatusName": "封仓-温控中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2023",
        "id": "P0103",
        "name": "P01-03",
        "storageMax": 3000000,
        "storageReal": 2164420,
        "storeDate": 1635696000000,
        "storeKeeper": "xjh",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "徐佳昊",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "4",
        "buildingId": "91310114703439394M0010002",
        "companyId": "5303",
        "depotStatus": "32",
        "depotStatusName": "封仓-熏蒸中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1110000",
        "foodVarietyName": "小麦",
        "foodYear": "2024",
        "id": "P0104",
        "name": "P01-04",
        "storageMax": 3000000,
        "storageReal": 3000000,
        "storeDate": 1720454400000,
        "storeKeeper": "xjh",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "徐佳昊",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "5",
        "buildingId": "91310114703439394M0010003",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "02",
        "foodLevelName": "二等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0105",
        "name": "P01-05",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1604160000000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "6",
        "buildingId": "91310114703439394M0010003",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0106",
        "name": "P01-06",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1604160000000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }];
    //业务类型
    var bizType = null;
    var depotId = "P0101";// å½“前仓库id,存在空情况
    //userId
    var userId = null;
    var deptId = "1000";
    var companyId = null;
</script>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/common/igds-common.js}"></script>
<script th:src="@{/dzhwk/gas/PrintBuilder.js}"></script>
<script th:src="@{/dzhwk/gas/gas-check.js}"></script>
</body>
<!-- æ›´å¤šæ‰¹æ¬¡é€‰æ‹© -->
<div class="layui-tab-content" id="dialogMoreSelect"
     style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline">
            <label class="layui-form-label">选择时间:</label>
            <div class="layui-input-inline left-input">
                <input type="text" name="checkDateMore" id="checkDateMore"
                       placeholder="å¹´-月-日" autocomplete="off" class="layui-input">
            </div>
        </div>
    </form>
</div>
<!-- æ‰¹é‡é‡‡é›†å¼¹å‡ºæ¡† -->
<div class="layui-tab-content" id="batchCheckSelect"
     style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline">
            <input type="checkbox" lay-filter="select_check_depot">
        </div>
    </form>
</div>
<!-- é€‰æ‹©é‡‡é›†ç‚¹ -->
<div class="layui-tab-content" id="pointSelect" style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline" id="div_point_select"></div>
    </form>
</div>
<!-- å®šä¹‰æ‰¹é‡æ‰“印选择内容 -->
<div class="layui-tab-content" id="batchPrintSelect"
     style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline">
            <label class="layui-form-label">选择时间:</label>
            <div class="layui-input-inline left-input">
                <input type="text" name="printCheckDate" id="printCheckDate"
                       placeholder="å¹´-月-日" autocomplete="off" class="layui-input">
            </div>
            <button type="button" onclick="getPrintBatchDepot()"
                    class="layui-btn layui-btn-radius layui-btn-sm">
                <i class="layui-icon layui-icon-search"></i>确认查询
            </button>
        </div>
        <div class="layui-inline">
            <input type="checkbox" lay-filter="select_print_depot">
        </div>
    </form>
</div>
</html>
igds-dzhwk-web/src/main/resources/templates/dzhwk/gas.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,139 @@
<!DOCTYPE html>
<html lang="zh_CN" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1"/>
    <meta name="renderer" content="webkit"/>
    <meta name="viewport"
          content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no"/>
    <meta name="format-detection" content="telephone=no"/>
    <title>电子货位卡系统-仓储保管作业</title>
    <link rel="stylesheet" th:href="@{/dzhwk/style.css}"/>
    <style>
        .m-pic1 .pic iframe{
            display: block;
            width: 100%;
            height: 853px;
        }
    </style>
</head>
<body class="">
<div class="screen-container">
    <div id="container">
        <div class="header">
            <div class="h-info">
                <div class="t">电子货位卡系统</div>
                - ä»“储保管作业
            </div>
            <a href="" class="logo">
                <img th:src="@{/img/dzhwk/logo.png}" alt="">
                <span>风正致远郑州直属库</span>
            </a>
            <div class="h-date">2025-03-26 10:10</div>
        </div>
        <div class="main">
            <div class="m-safeguardl">
                <div class="col-l g-boxl1">
                    <div class="m-picl">
                        <div class="pic">
<!--                            <img th:src="@{/img/dzhwk/imgl1.jpg}" alt="">-->
                            <iframe src="../dzhwk/gas-check" style="width: 100%;height: 853px;display: block;" frameborder="0" allowfullscreen></iframe>
                        </div>
                    </div>
                </div>
                <div class="col-r">
                    <ul class="ul-listl1 g-boxl1">
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('grain')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl2.png}" alt="">
                                </div>
                                <div class="tt">粮温检测</div>
                            </a>
                        </li>
                        <li class="on">
                            <a href="javascript:void(0)" onclick="toPage('gas')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl3.png}" alt="">
                                </div>
                                <div class="tt">气体检测</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('pest')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl4.png}" alt="">
                                </div>
                                <div class="tt">虫害检测</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('verb')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl5.png}" alt="">
                                </div>
                                <div class="tt">通风作业</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('recir')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl6.png}" alt="">
                                </div>
                                <div class="tt">温控作业</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('n2')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl7.png}" alt="">
                                </div>
                                <div class="tt">气调作业</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('security')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl8.png}" alt="">
                                </div>
                                <div class="tt">安全管理</div>
                            </a>
                        </li>
                    </ul>
                    <a href="javascript:void(0)" onclick="toPage('index')" class="g-backl">
                        <div class="icon">
                            <img th:src="@{/img/dzhwk/iconl1.png}" alt="">
                        </div>
                        <div class="tt">返回首页</div>
                    </a>
                </div>
            </div>
        </div>
    </div>
</div>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/common.js}"></script>
<script th:inline="javascript">
    var flag = [[${flag}]];
    var layer;
    $(function () {
        layui.use(['layer'], function () {
            layer = layui.layer;
        });
    });
    //监听操作
    document.addEventListener('mousemove', resetTimeout);  //鼠标移动
    document.addEventListener('click', resetTimeout);      //鼠标点击
    document.addEventListener('touchstart', resetTimeout); //触屏
    timeFormate();
    setInterval(function () {
        timeFormate()
    }, 1000);
</script>
</body>
</html>
igds-dzhwk-web/src/main/resources/templates/dzhwk/grain-check1.html
@@ -1,99 +1,98 @@
<!DOCTYPE html>
<html lang="zh_CN" xmlns:th="http://www.thymeleaf.org">
<head>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta name="renderer" content="webkit">
        <title>智慧粮库管理平台-粮情检测</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit">
    <title>粮温检测</title>
        <link rel="stylesheet" th:href="@{/ajax/libs/layui/css/layui.css}"/>
        <link rel="stylesheet" th:href="@{/dzhwk/lqStyle.css}"/>
    <link rel="stylesheet" th:href="@{/ajax/libs/layui/css/layui.css}"/>
    <link rel="stylesheet" th:href="@{/dzhwk/grain/lqStyle.css}"/>
        <style>
            .layui-checkbox-disbaled span {
                background-color: #ed5565 !important;
            }
    <style>
        .layui-checkbox-disbaled span {
            background-color: #ed5565 !important;
        }
            #lq-left2 {
                min-width: 295px;
            }
        #lq-left2 {
            min-width: 295px;
        }
            .lq-left2-list li h3 {
                float: left;
                /*color: rgb(108, 119, 129);*/
                color: #000;
                font-size: 16px;
                font-style: italic;
            }
        .lq-left2-list li h3 {
            float: left;
            /*color: rgb(108, 119, 129);*/
            color: #000;
            font-size: 16px;
            font-style: italic;
        }
            @media all and (max-width: 1650px) {
                .lq-cPic-box {
                    margin: 5% auto 0 auto;
                }
                .lq-center {
                    /*padding-bottom: 50px;*/
                    padding-bottom: 5px;
                }
                .lq-left2-list li {
                    padding: 3% 6%;
                }
                .lq-cTop-item p span {
                    font-size: 24px;
                }
            }
            .lq-wendu {
                width: 90px;
                height: 200px;
                position: absolute;
                bottom: 0;
                z-index: 99;
                left: 5px;
                margin-bottom: 55px;
        @media all and (max-width: 1650px) {
            .lq-cPic-box {
                margin: 5% auto 0 auto;
            }
            .lq-center {
                width: 75%;
                position: relative;
                /*padding-bottom: 50px;*/
                padding-bottom: 5px;
                overflow: hidden;
            }
            .lq-center2 {
                position: relative;
                padding-bottom: 5px;
                overflow-y: hidden;
            .lq-left2-list li {
                padding: 3% 6%;
            }
            .lq-cLow-1 {
                width: 50px;
                border-right: 1px solid #333;
            .lq-cTop-item p span {
                font-size: 24px;
            }
        }
            .lq-cLow {
                width: 900px;
            }
        .lq-wendu {
            width: 90px;
            height: 200px;
            position: absolute;
            bottom: 0;
            z-index: 99;
            left: 5px;
            margin-bottom: 55px;
        }
            .lq-cLow-3 {
                width: 15px;
                border-right: 1px solid #333;
            }
        .lq-center {
            width: 75%;
            position: relative;
            padding-bottom: 5px;
            overflow: hidden;
        }
            .lq-rMenu li {
                height: 80px;
            }
        .lq-center2 {
            position: relative;
            padding-bottom: 5px;
            overflow-y: hidden;
        }
            .layui-form-checkbox {
                min-width: 100px;
            }
        </style>
        .lq-cLow-1 {
            width: 50px;
            border-right: 1px solid #333;
        }
    </head>
        .lq-cLow {
            width: 900px;
        }
        .lq-cLow-3 {
            width: 15px;
            border-right: 1px solid #333;
        }
        .lq-rMenu li {
            height: 80px;
        }
        .layui-form-checkbox {
            min-width: 100px;
        }
    </style>
</head>
<body>
<div class="l-container">
@@ -433,7 +432,172 @@
<script th:inline="javascript">
    //仓库列表
    var listDepot = [{"bhId":"1","buildingId":"91310114703439394M0010001","checkDate":1605542400000,"companyId":"5303","depotStatus":"4","depotStatusName":"出库中","depotType":"02","depotTypeName":"浅圆仓","deptId":"5303_001","foodLevel":"01","foodLevelName":"一等","foodLocation":"上海市","foodType":"122","foodTypeName":"区级地方储备粮","foodVariety":"1130000","foodVarietyName":"稻谷","foodYear":"2022","id":"P0101","name":"P01-01","perImpurity":0.36,"perWet":13.7,"storageMax":3000000,"storageReal":0,"storeDate":1668700800000,"storeKeeper":"wmf","storeKeeperLevel":"高级保管员","storeKeeperName":"王美福","storeKeeperPhone":"####","storeType":"1"},{"bhId":"2","buildingId":"91310114703439394M0010001","companyId":"5303","depotStatus":"4","depotStatusName":"出库中","depotType":"01","depotTypeName":"平房仓","deptId":"5303_001","foodLevel":"01","foodLevelName":"一等","foodLocation":"上海市","foodType":"122","foodTypeName":"区级地方储备粮","foodVariety":"1130000","foodVarietyName":"稻谷","foodYear":"2022","id":"P0102","name":"P01-02","storageMax":3000000,"storageReal":0,"storeDate":1667836800000,"storeKeeper":"wmf","storeKeeperLevel":"高级保管员","storeKeeperName":"王美福","storeKeeperPhone":"####","storeType":"1"},{"bhId":"3","buildingId":"91310114703439394M0010002","companyId":"5303","depotStatus":"34","depotStatusName":"封仓-温控中","depotType":"01","depotTypeName":"平房仓","deptId":"5303_001","foodLevel":"01","foodLevelName":"一等","foodLocation":"上海市","foodType":"122","foodTypeName":"区级地方储备粮","foodVariety":"1130000","foodVarietyName":"稻谷","foodYear":"2023","id":"P0103","name":"P01-03","storageMax":3000000,"storageReal":2164420,"storeDate":1635696000000,"storeKeeper":"xjh","storeKeeperLevel":"高级保管员","storeKeeperName":"徐佳昊","storeKeeperPhone":"####","storeType":"1"},{"bhId":"4","buildingId":"91310114703439394M0010002","companyId":"5303","depotStatus":"32","depotStatusName":"封仓-熏蒸中","depotType":"01","depotTypeName":"平房仓","deptId":"5303_001","foodLevel":"01","foodLevelName":"一等","foodLocation":"上海市","foodType":"122","foodTypeName":"区级地方储备粮","foodVariety":"1110000","foodVarietyName":"小麦","foodYear":"2024","id":"P0104","name":"P01-04","storageMax":3000000,"storageReal":3000000,"storeDate":1720454400000,"storeKeeper":"xjh","storeKeeperLevel":"高级保管员","storeKeeperName":"徐佳昊","storeKeeperPhone":"####","storeType":"1"},{"bhId":"5","buildingId":"91310114703439394M0010003","companyId":"5303","depotStatus":"4","depotStatusName":"出库中","depotType":"01","depotTypeName":"平房仓","deptId":"5303_001","foodLevel":"02","foodLevelName":"二等","foodLocation":"上海市","foodType":"122","foodTypeName":"区级地方储备粮","foodVariety":"1130000","foodVarietyName":"稻谷","foodYear":"2022","id":"P0105","name":"P01-05","storageMax":3000000,"storageReal":0,"storeDate":1604160000000,"storeKeeper":"wmf","storeKeeperLevel":"高级保管员","storeKeeperName":"王美福","storeKeeperPhone":"####","storeType":"1"},{"bhId":"6","buildingId":"91310114703439394M0010003","companyId":"5303","depotStatus":"4","depotStatusName":"出库中","depotType":"01","depotTypeName":"平房仓","deptId":"5303_001","foodLevel":"01","foodLevelName":"一等","foodLocation":"上海市","foodType":"122","foodTypeName":"区级地方储备粮","foodVariety":"1130000","foodVarietyName":"稻谷","foodYear":"2022","id":"P0106","name":"P01-06","storageMax":3000000,"storageReal":0,"storeDate":1604160000000,"storeKeeper":"wmf","storeKeeperLevel":"高级保管员","storeKeeperName":"王美福","storeKeeperPhone":"####","storeType":"1"}];
    var listDepot = [{
        "bhId": "1",
        "buildingId": "91310114703439394M0010001",
        "checkDate": 1605542400000,
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "02",
        "depotTypeName": "浅圆仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0101",
        "name": "P01-01",
        "perImpurity": 0.36,
        "perWet": 13.7,
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1668700800000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "2",
        "buildingId": "91310114703439394M0010001",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0102",
        "name": "P01-02",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1667836800000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "3",
        "buildingId": "91310114703439394M0010002",
        "companyId": "5303",
        "depotStatus": "34",
        "depotStatusName": "封仓-温控中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2023",
        "id": "P0103",
        "name": "P01-03",
        "storageMax": 3000000,
        "storageReal": 2164420,
        "storeDate": 1635696000000,
        "storeKeeper": "xjh",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "徐佳昊",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "4",
        "buildingId": "91310114703439394M0010002",
        "companyId": "5303",
        "depotStatus": "32",
        "depotStatusName": "封仓-熏蒸中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1110000",
        "foodVarietyName": "小麦",
        "foodYear": "2024",
        "id": "P0104",
        "name": "P01-04",
        "storageMax": 3000000,
        "storageReal": 3000000,
        "storeDate": 1720454400000,
        "storeKeeper": "xjh",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "徐佳昊",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "5",
        "buildingId": "91310114703439394M0010003",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "02",
        "foodLevelName": "二等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0105",
        "name": "P01-05",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1604160000000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "6",
        "buildingId": "91310114703439394M0010003",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0106",
        "name": "P01-06",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1604160000000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }];
    //业务类型
    var bizType = null;
    //userId
@@ -447,12 +611,12 @@
</script>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/constant.js}"></script>
<script th:src="@{/dzhwk/igds-common.js}"></script>
<script th:src="@{/dzhwk/PrintBuilder-lay.js}"></script>
<script th:src="@{/dzhwk/grainPoint1.js}"></script>
<script th:src="@{/dzhwk/grain-export.js}"></script>
<script th:src="@{/dzhwk/grain-check1.js}"></script>
<script th:src="@{/dzhwk/common/constant.js}"></script>
<script th:src="@{/dzhwk/common/igds-common.js}"></script>
<script th:src="@{/dzhwk/grain/PrintBuilder-lay.js}"></script>
<script th:src="@{/dzhwk/grain/grainPoint1.js}"></script>
<script th:src="@{/dzhwk/grain/grain-export.js}"></script>
<script th:src="@{/dzhwk/grain/grain-check1.js}"></script>
</body>
<!-- æ›´å¤šæ‰¹æ¬¡é€‰æ‹© -->
igds-dzhwk-web/src/main/resources/templates/dzhwk/grain.html
@@ -114,11 +114,17 @@
        </div>
    </div>
</div>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/common.js}"></script>
<script th:inline="javascript">
    var flag = [[${flag}]];
    var layer;
    $(function () {
        layui.use(['layer'], function () {
            layer = layui.layer;
        });
    });
    //监听操作
    document.addEventListener('mousemove', resetTimeout);  //鼠标移动
    document.addEventListener('click', resetTimeout);      //鼠标点击
igds-dzhwk-web/src/main/resources/templates/dzhwk/pest-check.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,444 @@
<!DOCTYPE html>
<html lang="zh_CN" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="viewport"
          content="width=device-width, initial-scale=1, maximum-scale=1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit">
    <title>虫害检测</title>
    <link rel="stylesheet" th:href="@{/ajax/libs/layui/css/layui.css}"/>
    <link rel="stylesheet" th:href="@{/dzhwk/pest/pest.css}"/>
    <style type="text/css">
        .layui-checkbox-disbaled span {
            background-color: #ed5565 !important;
        }
        #progress-info {
            position: absolute;
            z-index: 99;
            display: inline-block;
            height: 30px;
            font-size: 16px;
            font-weight: bold
        }
    </style>
</head>
<body>
<div class="l-container">
    <div class="l-main layui-clear">
        <div class="qt-left">
            <div class="qt-lTop layui-clear">
                <div class="qt-lTop-l fl">
                    <div class="qt-left1 layui-clear radius-6 box-shadow">
                        <form class="layui-form" action="">
                            <div class="layui-form-item lq-left1-from">
                                <label class="layui-form-label">仓库列表</label>
                                <div class="layui-input-block">
                                    <select name="depotId" id="depotId" lay-filter="select_depotId">
                                        <option value="P0101" type="01">P01-01</option>
                                        <option value="P0102" type="01">P01-02</option>
                                        <option value="P0103" type="01">P01-03</option>
                                        <option value="P0104" type="01">P01-04</option>
                                        <option value="P0105" type="01">P01-05</option>
                                        <option value="P0106" type="01">P01-06</option>
                                    </select>
                                </div>
                            </div>
                            <div class="layui-form-item lq-left1-from">
                                <label class="layui-form-label">检测时间</label>
                                <div class="layui-input-block">
                                    <select name="batchId" id="batchId"
                                            lay-filter="select_batchId">
                                        <option value=""></option>
                                    </select>
                                </div>
                            </div>
                        </form>
                    </div>
                </div>
                <!--qt-lTop-l end-->
                <div class="layui-row qt-lTop-r fr">
                    <div class="layui-col-lg4">
                        <div class="qt-left2 qt-left-item radius-6 mr4">
                            <h3>检测结果</h3>
                            <div class="layui-row">
                                <div class="layui-col-lg6 lq-cTop-item">
                                    <p>
                                        <span id="checkNum">0</span>
                                    </p>
                                    <h4>总检测位</h4>
                                </div>
                                <div class="layui-col-lg6 lq-cTop-item">
                                    <p>
                                        <span id="remark">无虫</span>
                                    </p>
                                    <h4>结果</h4>
                                </div>
                            </div>
                        </div>
                    </div>
                    <!--layui-col end-->
                    <!--layui-col end-->
                    <div class="layui-col-lg8">
                        <div class="qt-left4 qt-left-item radius-6 mr4">
                            <h3>检测位排行</h3>
                            <div class="layui-row">
                                <div class="layui-col-lg3 lq-cTop-item">
                                    <p>
                                        <span id="orderValue1">0</span>
                                    </p>
                                    <h4 id="orderName1">采集位</h4>
                                </div>
                                <div class="layui-col-lg3 lq-cTop-item">
                                    <p>
                                        <span id="orderValue2">0</span>
                                    </p>
                                    <h4 id="orderName2">采集位</h4>
                                </div>
                                <div class="layui-col-lg3 lq-cTop-item">
                                    <p>
                                        <span id="orderValue3">0</span>
                                    </p>
                                    <h4 id="orderName3">采集位</h4>
                                </div>
                                <div class="layui-col-lg3 lq-cTop-item">
                                    <p>
                                        <span id="orderValue4">0</span>
                                    </p>
                                    <h4 id="orderName4">采集位</h4>
                                </div>
                            </div>
                        </div>
                    </div>
                    <!--layui-col end-->
                    <!--layui-col end-->
                </div>
                <!-- qt-lTop-r end-->
            </div>
            <!--qt-lTop end-->
            <div class="qt-picBox" id="qt-picBox">
                <span id="progress-info"></span>
                <img id="depot_img" class="qt-pic" th:src="@{/img/dzhwk/gas/gasImg_5.png}"/>
            </div>
            <!--qt-picBox end-->
        </div>
        <!--qt-left end-->
        <div class="qt-right">
            <div class="qt-rMenu layui-row radius-6">
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="checkStart(1)"> <span
                            class="qt-icon qt-rMenu-icon1"></span>
                        <p>整仓采集</p>
                    </a>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="checkStart(2)"> <span
                            class="qt-icon qt-rMenu-icon2"></span>
                        <p>选择采集</p>
                    </a>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="checkStart(3)"> <span
                            class="qt-icon qt-rMenu-icon3"></span>
                        <p>多仓采集</p>
                    </a>
                </div>
            </div>
            <div class="qt-rMenu layui-row radius-6" style="padding-top: 0px;">
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="printSingle()"> <span
                            class="qt-icon qt-rMenu-icon4"></span>
                        <p>单仓打印</p>
                    </a>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="printBatch()"> <span
                            class="qt-icon qt-rMenu-icon5"></span>
                        <p>多仓打印</p>
                    </a>
                </div>
                <div class="qt-rMenu-item layui-col-lg4">
                    <a href="javascript:;" onClick="gasChart()"> <span
                            class="qt-icon qt-rMenu-icon6"></span>
                        <p>走势分析</p>
                    </a>
                </div>
            </div>
            <div class="qt-rTable-box radius-6" id="tableInfo" style='height: 450px; overflow-y: auto;'>
                <!--                     <table class="layui-table" ></table> -->
            </div>
            <!--qt-rTable-box end-->
        </div>
        <!--qt-right end-->
    </div>
    <!--l-main end-->
</div>
<!--l-container end-->
<script th:inline="javascript">
    //仓库列表
    //仓库列表
    var listDepot = [{
        "bhId": "1",
        "buildingId": "91310114703439394M0010001",
        "checkDate": 1605542400000,
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "02",
        "depotTypeName": "浅圆仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0101",
        "name": "P01-01",
        "perImpurity": 0.36,
        "perWet": 13.7,
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1668700800000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "2",
        "buildingId": "91310114703439394M0010001",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0102",
        "name": "P01-02",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1667836800000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "3",
        "buildingId": "91310114703439394M0010002",
        "companyId": "5303",
        "depotStatus": "34",
        "depotStatusName": "封仓-温控中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2023",
        "id": "P0103",
        "name": "P01-03",
        "storageMax": 3000000,
        "storageReal": 2164420,
        "storeDate": 1635696000000,
        "storeKeeper": "xjh",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "徐佳昊",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "4",
        "buildingId": "91310114703439394M0010002",
        "companyId": "5303",
        "depotStatus": "32",
        "depotStatusName": "封仓-熏蒸中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1110000",
        "foodVarietyName": "小麦",
        "foodYear": "2024",
        "id": "P0104",
        "name": "P01-04",
        "storageMax": 3000000,
        "storageReal": 3000000,
        "storeDate": 1720454400000,
        "storeKeeper": "xjh",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "徐佳昊",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "5",
        "buildingId": "91310114703439394M0010003",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "02",
        "foodLevelName": "二等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0105",
        "name": "P01-05",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1604160000000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }, {
        "bhId": "6",
        "buildingId": "91310114703439394M0010003",
        "companyId": "5303",
        "depotStatus": "4",
        "depotStatusName": "出库中",
        "depotType": "01",
        "depotTypeName": "平房仓",
        "deptId": "5303_001",
        "foodLevel": "01",
        "foodLevelName": "一等",
        "foodLocation": "上海市",
        "foodType": "122",
        "foodTypeName": "区级地方储备粮",
        "foodVariety": "1130000",
        "foodVarietyName": "稻谷",
        "foodYear": "2022",
        "id": "P0106",
        "name": "P01-06",
        "storageMax": 3000000,
        "storageReal": 0,
        "storeDate": 1604160000000,
        "storeKeeper": "wmf",
        "storeKeeperLevel": "高级保管员",
        "storeKeeperName": "王美福",
        "storeKeeperPhone": "####",
        "storeType": "1"
    }];
    //业务类型
    var bizType = null;
    var depotId = "P0101";// å½“前仓库id,存在空情况
    var userId = null;
    var deptId = "1000";
    var companyId = null;
</script>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/common/igds-common.js}"></script>
<script th:src="@{/dzhwk/pest/PrintBuilder.js}"></script>
<script th:src="@{/dzhwk/pest/pest-check.js}"></script>
</body>
<!-- æ›´å¤šæ‰¹æ¬¡é€‰æ‹© -->
<div class="layui-tab-content" id="dialogMoreSelect"
     style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline">
            <label class="layui-form-label">选择时间:</label>
            <div class="layui-input-inline left-input">
                <input type="text" name="checkDateMore" id="checkDateMore"
                       placeholder="å¹´-月-日" autocomplete="off" class="layui-input">
            </div>
        </div>
    </form>
</div>
<!-- æ‰¹é‡é‡‡é›†å¼¹å‡ºæ¡† -->
<div class="layui-tab-content" id="batchCheckSelect"
     style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline">
            <input type="checkbox" lay-filter="select_check_depot">
        </div>
    </form>
</div>
<!-- é€‰æ‹©é‡‡é›†ç‚¹ -->
<div class="layui-tab-content" id="pointSelect" style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline" id="div_point_select"></div>
    </form>
</div>
<!-- å®šä¹‰æ‰¹é‡æ‰“印选择内容 -->
<div class="layui-tab-content" id="batchPrintSelect"
     style="display: none;">
    <form class="layui-form layui-form-pane">
        <div class="layui-inline">
            <label class="layui-form-label">选择时间:</label>
            <div class="layui-input-inline left-input">
                <input type="text" name="printCheckDate" id="printCheckDate"
                       placeholder="å¹´-月-日" autocomplete="off" class="layui-input">
            </div>
            <button type="button" onclick="getPrintBatchDepot()"
                    class="layui-btn layui-btn-radius layui-btn-sm">
                <i class="layui-icon layui-icon-search"></i>确认查询
            </button>
        </div>
        <div class="layui-inline">
            <input type="checkbox" lay-filter="select_print_depot">
        </div>
    </form>
</div>
</html>
igds-dzhwk-web/src/main/resources/templates/dzhwk/pest.html
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,139 @@
<!DOCTYPE html>
<html lang="zh_CN" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="utf-8"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1"/>
    <meta name="renderer" content="webkit"/>
    <meta name="viewport"
          content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no"/>
    <meta name="format-detection" content="telephone=no"/>
    <title>电子货位卡系统-仓储保管作业</title>
    <link rel="stylesheet" th:href="@{/dzhwk/style.css}"/>
    <style>
        .m-pic1 .pic iframe{
            display: block;
            width: 100%;
            height: 853px;
        }
    </style>
</head>
<body class="">
<div class="screen-container">
    <div id="container">
        <div class="header">
            <div class="h-info">
                <div class="t">电子货位卡系统</div>
                - ä»“储保管作业
            </div>
            <a href="" class="logo">
                <img th:src="@{/img/dzhwk/logo.png}" alt="">
                <span>风正致远郑州直属库</span>
            </a>
            <div class="h-date">2025-03-26 10:10</div>
        </div>
        <div class="main">
            <div class="m-safeguardl">
                <div class="col-l g-boxl1">
                    <div class="m-picl">
                        <div class="pic">
<!--                            <img th:src="@{/img/dzhwk/imgl1.jpg}" alt="">-->
                            <iframe src="../dzhwk/pest-check" style="width: 100%;height: 853px;display: block;" frameborder="0" allowfullscreen></iframe>
                        </div>
                    </div>
                </div>
                <div class="col-r">
                    <ul class="ul-listl1 g-boxl1">
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('grain')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl2.png}" alt="">
                                </div>
                                <div class="tt">粮温检测</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('gas')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl3.png}" alt="">
                                </div>
                                <div class="tt">气体检测</div>
                            </a>
                        </li>
                        <li class="on">
                            <a href="javascript:void(0)" onclick="toPage('pest')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl4.png}" alt="">
                                </div>
                                <div class="tt">虫害检测</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('verb')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl5.png}" alt="">
                                </div>
                                <div class="tt">通风作业</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('recir')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl6.png}" alt="">
                                </div>
                                <div class="tt">温控作业</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('n2')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl7.png}" alt="">
                                </div>
                                <div class="tt">气调作业</div>
                            </a>
                        </li>
                        <li>
                            <a href="javascript:void(0)" onclick="toPage('security')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl8.png}" alt="">
                                </div>
                                <div class="tt">安全管理</div>
                            </a>
                        </li>
                    </ul>
                    <a href="javascript:void(0)" onclick="toPage('index')" class="g-backl">
                        <div class="icon">
                            <img th:src="@{/img/dzhwk/iconl1.png}" alt="">
                        </div>
                        <div class="tt">返回首页</div>
                    </a>
                </div>
            </div>
        </div>
    </div>
</div>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/common.js}"></script>
<script th:inline="javascript">
    var flag = [[${flag}]];
    var layer;
    $(function () {
        layui.use(['layer'], function () {
            layer = layui.layer;
        });
    });
    //监听操作
    document.addEventListener('mousemove', resetTimeout);  //鼠标移动
    document.addEventListener('click', resetTimeout);      //鼠标点击
    document.addEventListener('touchstart', resetTimeout); //触屏
    timeFormate();
    setInterval(function () {
        timeFormate()
    }, 1000);
</script>
</body>
</html>
igds-dzhwk-web/src/main/resources/templates/dzhwk/verb.html
@@ -46,7 +46,7 @@
                            </a>
                        </li>
                        <li>
                            <a href="" class="con">
                            <a href="javascript:void(0)" onclick="toPage('gas')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl3.png}" alt="">
                                </div>
@@ -54,7 +54,7 @@
                            </a>
                        </li>
                        <li>
                            <a href="" class="con">
                            <a href="javascript:void(0)" onclick="toPage('pest')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl4.png}" alt="">
                                </div>
@@ -70,7 +70,7 @@
                            </a>
                        </li>
                        <li>
                            <a href="" class="con">
                            <a href="javascript:void(0)" onclick="toPage('recir')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl6.png}" alt="">
                                </div>
@@ -78,7 +78,7 @@
                            </a>
                        </li>
                        <li>
                            <a href="" class="con">
                            <a href="javascript:void(0)" onclick="toPage('n2')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl7.png}" alt="">
                                </div>
@@ -86,7 +86,7 @@
                            </a>
                        </li>
                        <li>
                            <a href="" class="con">
                            <a href="javascript:void(0)" onclick="toPage('security')" class="con">
                                <div class="icon">
                                    <img th:src="@{/img/dzhwk/iconl8.png}" alt="">
                                </div>
@@ -105,11 +105,17 @@
        </div>
    </div>
</div>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/dzhwk/common.js}"></script>
<script th:inline="javascript">
    var flag = [[${flag}]];
    var layer;
    $(function () {
        layui.use(['layer'], function () {
            layer = layui.layer;
        });
    });
    //监听操作
    document.addEventListener('mousemove', resetTimeout);  //鼠标移动
    document.addEventListener('click', resetTimeout);      //鼠标点击