czt
2 天以前 51faf3e9c3c613e7fb12db6c88356946f2429e0c
fzzy-igdss-web/src/main/resources/static/inout/inout-weight.js
@@ -5,10 +5,7 @@
var recordData = null;// 业务数据信息
var snapData;//系统抓拍对象信息
var timerWeight;
var paramIntelCard;//设备识别结果
var paramIdCard;//设备识别结果
var curCheckItems = null;// 当前数据的检查项信息
var step = 1;
var curProgress = null;
$(function () {
    layui.use(['layer', 'laydate', 'form', 'table', 'util'], function () {
@@ -26,7 +23,8 @@
            if (obj.event === 'select') {
                //清空表单
                resetForm();
                flushData(data.intelCard, null);
                flushData(data.id, null);
                $("#listProgressData").css("display", "none");
                layer.closeAll();
            }
        });
@@ -34,15 +32,12 @@
    });
    //显示流程环节
    showProgress();
    updateEditAndProgress();
    // 监听重量变化
    $(".weight").blur(function () {
        deAutoByIn(this.name);
        deAuto(this.name);
    });
    // 初始化WebSocket
    // initInoutWS(companyId, bizType, progress, userId);
});
window.onload = function () {
@@ -68,47 +63,41 @@
    });
};
// socket信息返回處理
function socketOnMessage(packet) {
    //暂无
}
//点击称重
/**
 * 称重及抓拍
 */
function weight() {
    // 没有业务数据不可执行
    if (!recordData) {
        alertError("没有查询到业务数据,执行被拒绝!");
        return;
    }
    // 如果是空车称重
    if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
    if (InoutProgress.WEIGHT_EMPTY === curProgress) {
        form.val("form-data", {
            emptyWeight: weightDto.weight
        });
        form.render();
    }
    // 如果是满车称重
    if (InoutProgress.WEIGHT_FULL == recordData.progress) {
    if (InoutProgress.WEIGHT_FULL === curProgress) {
        form.val("form-data", {
            fullWeight: weightDto.weight
        });
        form.render();
    }
    var data = form.val("form-data");
    if (!data.plateNum) {
        alertError("提示:填写登记车牌信息");
        return;
    }
    // 点击称重自动调用抓拍
    snapData = {
        companyId: companyId,
        deptId: deptId,
        progress: recordData.progress,
        progress: curProgress,
        bizType: type,
        bizId: recordData.id,
        plateNum: recordData.plateNum,
        id1: snapDto1.id,
        id2: snapDto2.id,
        id3: snapDto3.id,
        id4: snapDto2.id,
        sort: $("#scaleName").val(),
        weight: weightDto.weight
        sort: $("#scaleName").val()
    };
    //当前AJAX服务为同步服务,返回数据包装照片信息
@@ -116,7 +105,7 @@
    $.ajax({
        sync: false,
        type: "POST",
        url: "../../inout/api/snap-img",
        url: "/inout/api/snap-img",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(snapData),
@@ -125,6 +114,7 @@
            if (result.code != "0000") {
                alertError(result.msg);
            } else {
                layer.msg("抓拍成功");
                snapData = result.data;
            }
        },
@@ -133,77 +123,119 @@
            alertError("后台调用截图失败,请重新尝试");
        }
    });
    //如果是第二次称重,默认执行自动计算
    if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
        deAutoByIn("emptyWeight");
    }
}
// 使用插件获取身份证
function flushIdCard() {
    var index = layer.load();
    $.ajax({
        type: "GET",
        async: true,
        url: "http://127.0.0.1:9111/IDCARD",
        data: {},
        dataType: "json",
        // jsonp: "callback",
        // jsonpCallback: "jsonpCallback",
        success: function (json) {
            layer.close(index);
            var data = json;
            if (data.code === "200" || data.code == 200) {
                paramIdCard = data.idNum;
                $("#text-param").text("识别身份证:" + paramIdCard);
                flushData(null, paramIdCard);
            } else {
                alertError("没有读取到身份证信息!");
                return;
            }
        },
        error: function () {
            alertError("没有读取到身份证信息!");
            layer.close(index);
        }
    });
}
function flushByHand() {
    var intelCard = $("#intelCard").val();
    flushData(intelCard, null);
}
/**
 * 手动选择,获取待称重的数据,弹出选择
 * 称重提交
 */
function selectByHand() {
    var param = {
        deptId: deptId,
        type: type,
        timer: Math.random()
    };
function submit() {
    var data = form.val("form-data");
    if (!data.depotId) {
        alertError("提示:装卸仓库必填");
        return;
    }
    if (!data.customerName) {
        alertError("提示:通知单信息必填");
        return;
    }
    if (!data.foodVariety) {
        alertError("提示:粮食品种必填");
        return;
    }
    // 校验-入库满车称重
    if (InoutProgress.WEIGHT_FULL === curProgress) {
        if (data.fullWeight <= 0.0) {
            alertError("提示:满车称重信息必填");
            return;
        }
    }
    if (InoutProgress.WEIGHT_EMPTY === curProgress) {
        if (data.emptyWeight <= 0.0) {
            alertError("提示:空车称重信息必填");
            return;
        }
    }
    if(recordData){
        //合并数据
        Object.assign(recordData, data);
    }else {
        recordData = data;
    }
    recordData.progress = curProgress;
    // 获取照片
    var files = [{
        fileName: snapData.fileName1
    }, {
        fileName: snapData.fileName2
    }, {
        fileName: snapData.fileName3
    }];
    recordData.files = files;
    var index = layer.load();
    $.ajax({
        type: "POST",
        url: "/basic/inout/list-weight-data",
        url: "/basic/inout/submit-weight",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(param),
        data: JSON.stringify(recordData),
        success: function (result) {
            if (result.code != "0000") {
                layer.msg(result.msg);
                alertError(result.msg);
            } else {
                renderTableProgressData(result.data);
                notify("数据提交成功", result.data);
                //第一次称重后,刷新页面
                if (recordData.recordWeight <= 0.0) {
                    resetForm();
                }
            }
            layer.close(index);
        },
        error: function () {
            layer.msg("系统获取数据出现异常,重新尝试");
            layer.close(index);
            alertError("提交失败,请重新尝试");
        }
    });
}
/**
 * 点击打印,系统判断是否已经执行完成,如果已经完成,直接打印,如果未完成则先执行完成
 */
function printBill() {
    if (!recordData) {
        alertError("没有获取到业务数据,打印被拒绝!");
        return;
    }
    var index = layer.load();
    $.ajax({
        type: "POST",
        url: "/basic/print/bill-weight",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(recordData),
        success: function (result) {
            layer.close(index);
            if (result.code != "0000") {
                alertError(result.msg);
            } else {
                layer.msg("开始渲染打印单……");
                printWeight(result.data);
            }
        },
        error: function () {
            layer.close(index);
            alertError("获取打印模版失败,请联系管理员查看原因");
        }
    });
}
/**
 * 地磅数据刷新
 */
function flushWeight() {
    var ip = "127.0.0.1";
    if (weightDto.ip) {
@@ -240,46 +272,102 @@
    });
}
// 点击打印,系统判断是否已经执行完成,如果已经完成,直接打印,如果未完成则先执行完成
function printBill() {
    if (!recordData) {
        alertError("没有获取到业务数据,打印被拒绝!");
        return;
    }
    // 从后台获取模版并打印
    var data = form.val("form-data");
    // 合并更新當前编辑数据
    Object.assign(recordData, data);
/**
 * 读取身份证
 */
function flushIdCard() {
    var index = layer.load();
    $.ajax({
        type: "POST",
        url: "../../basic/inout/report/bill-weight",
        type: "GET",
        async: true,
        url: "http://127.0.0.1:9111/IDCARD",
        data: {},
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(recordData),
        success: function (result) {
        success: function (json) {
            layer.close(index);
            if (result.code != "0000") {
                alertError(result.msg);
            var data = json;
            if (data.code === "200" || data.code == 200) {
                // 临时赋值
                $("#userName").val(data.cnName);
                $("#userAddress").val(data.address);
                $("#userId").val(data.idNum);
            } else {
                layer.msg("开始渲染打印单……");
                printWeight(result.data);
                alertError("没有获取到身份证信息!");
                return;
            }
        },
        error: function () {
            layer.alert("身份证读取失败!", {
                offset: ['300px', '300px']
            });
            layer.close(index);
            alertError("获取打印模版失败,请联系管理员查看原因");
        }
    });
}
// 表单清空
/**
 * 读取车牌号
 */
function flushPlateNum() {
    var param = JSON.stringify(snapDto1);
    var index = layer.load();
    $.ajax({
        type: "POST",
        url: "/inout/api/get-plateNum",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: param,
        success: function (result) {
            if (result.code != "0000") {
                alertError(result.msg);
            } else {
                $("#plateNum").val(result.data.plateNum);
            }
            layer.close(index);
        },
        error: function () {
            layer.close(index);
            alertError("车牌识别失败!");
        }
    });
}
/**
 * 手动选择,获取待称重的数据,弹出选择
 */
function selectByHand() {
    var param = {
        deptId: deptId,
        type: type,
        timer: Math.random()
    };
    $.ajax({
        type: "POST",
        url: "/basic/inout/list-weight-data",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(param),
        success: function (result) {
            if (result.code != "0000") {
                layer.msg(result.msg);
            } else {
                renderTableProgressData(result.data);
            }
        },
        error: function () {
            layer.msg("系统获取数据出现异常,重新尝试");
        }
    });
}
/**
 * 表单数据重置
 */
function resetForm() {
    $("#form-data")[0].reset();
    form.render();
    recordData = null;
    curProgress = null;
    weightDto.weight = 0.0;
    $("#weightValue").text("0.0");
    $("#img_scale_statule").attr("src", "/img/web/inout/icon-red.png");
@@ -287,6 +375,9 @@
    $("#text-param").val(null);
}
/**
 * 页面刷新
 */
function flushPage() {
    layer.confirm('确定要刷新页面吗?', {icon: 3, title: '提示'}, function (index) {
        resetForm();
@@ -294,31 +385,22 @@
    });
}
//监听表单里的数值变化
document.getElementById('intelCard').addEventListener('input', function (event) {
    var intelCard = $("#intelCard").val();
    if (intelCard.length == 10) {
        flushData(intelCard, null);
    }
});
// --查询方法,获取身份证号、卡号、车牌号,进行查询
function flushData(intelCard, userIdCard) {
/**
 * 查询数据
 * @param id
 * @param plateNum
 */
function flushData(id, plateNum) {
    var index = layer.load();
    var userIdCard = userIdCard;
    var intelCard = intelCard;
    var plateNum = $("#plateNum").val();
    var param = {
        type: type,
        progress: progress,
        intelCard: intelCard,
        userId: userIdCard,
        progress: curProgress,
        id: id,
        plateNum: plateNum
    };
    $.ajax({
        type: "POST",
        url: "../../basic/inout/inout-query",
        url: "/basic/inout/inout-query",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(param),
@@ -328,6 +410,7 @@
                notifyProgress(result.msg, result.data);
            } else {
                recordData = result.data;
                curProgress = recordData.progress;
                // 返回的数据进行赋值
                form.val("form-data", recordData);
                form.render();
@@ -342,41 +425,109 @@
    });
}
/**
 * 根据业务数据更新页面中的状态
 */
function updateEditAndProgress() {
    if (recordData) {
        if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
            $("#emptyWeight").removeClass("rkbk-search-input");
            $("#emptyWeight").attr("disabled", false);
            $("#progress-hand").addClass("active");
            $("#progress-emptyWeight").addClass("active");
            $("#fullWeight").addClass("rkbk-search-input");
            $("#fullWeight").attr("disabled", true);
    //当前流程节点
    if (curProgress == null) {
        if (type === "IN") {
            curProgress = "WEIGHT_FULL";
        }
        if (InoutProgress.WEIGHT_FULL == recordData.progress) {
        if (type === "OUT") {
            curProgress = "WEIGHT_EMPTY";
        }
    }
    //显示当前流程
    if (type === "IN") {
        $("#rk-progress-register").addClass("active");
        if (curProgress === InoutProgress.WEIGHT_FULL) {
            $("#rk-progress-fullWeight").addClass("active");
            $("#rk-progress-hand").removeClass("active");
            $("#rk-progress-emptyWeight").removeClass("active");
            //满车重量可编辑
            $("#fullWeight").removeClass("rkbk-search-input");
            $("#fullWeight").attr("disabled", false);
            $("#progress-hand").removeClass("active");
            $("#progress-emptyWeight").removeClass("active");
            //空车重量不能编辑
            $("#emptyWeight").addClass("rkbk-search-input");
            $("#emptyWeight").attr("disabled", true);
        }
    } else {
        $("#fullWeight").addClass("rkbk-search-input");
        $("#fullWeight").attr("disabled", true);
        if (curProgress === InoutProgress.WEIGHT_EMPTY) {
            $("#rk-progress-fullWeight").addClass("active");
            $("#rk-progress-hand").addClass("active");
            $("#rk-progress-emptyWeight").addClass("active");
        $("#emptyWeight").addClass("rkbk-search-input");
        $("#emptyWeight").attr("disabled", true);
            //满车重量不能编辑
            $("#fullWeight").addClass("rkbk-search-input");
            $("#fullWeight").attr("disabled", true);
        $("#progress-hand").removeClass("active");
        $("#progress-emptyWeight").removeClass("active");
            //空车重量可编辑
            $("#emptyWeight").removeClass("rkbk-search-input");
            $("#emptyWeight").attr("disabled", false);
        }
    }
    if (type === "OUT") {
        $("#ck-progress-register").addClass("active");
        if (curProgress === InoutProgress.WEIGHT_EMPTY) {
            $("#ck-progress-emptyWeight").addClass("active");
            $("#ck-progress-hand").removeClass("active");
            $("#ck-progress-fullWeight").removeClass("active");
            //满车重量不能编辑
            $("#fullWeight").addClass("rkbk-search-input");
            $("#fullWeight").attr("disabled", true);
            //空车重量可编辑
            $("#emptyWeight").removeClass("rkbk-search-input");
            $("#emptyWeight").attr("disabled", false);
        }
        if (curProgress === InoutProgress.WEIGHT_FULL) {
            $("#ck-progress-emptyWeight").addClass("active");
            $("#ck-progress-hand").addClass("active");
            $("#ck-progress-fullWeight").addClass("active");
            //满车重量可编辑
            $("#fullWeight").removeClass("rkbk-search-input");
            $("#fullWeight").attr("disabled", false);
            //空车重量不能编辑
            $("#emptyWeight").addClass("rkbk-search-input");
            $("#emptyWeight").attr("disabled", true);
        }
    }
    //流程显示
    if (inoutProgress) {
        if (inoutProgress.indexOf("REGISTER") === -1) {
            $("#rk-progress-register").css("display", "none");
            $("#ck-progress-register").css("display", "none");
        }
        if (inoutProgress.indexOf("WEIGHT_FULL") === -1) {
            $("#rk-progress-fullWeight").css("display", "none");
            $("#ck-progress-fullWeight").css("display", "none");
        }
        if (inoutProgress.indexOf("HANDLE") === -1) {
            $("#rk-progress-hand").css("display", "none");
            $("#ck-progress-hand").css("display", "none");
        }
        if (inoutProgress.indexOf("WEIGHT_EMPTY") === -1) {
            $("#rk-progress-emptyWeight").css("display", "none");
            $("#ck-progress-emptyWeight").css("display", "none");
        }
        if (inoutProgress.indexOf("CARD_BACK") === -1) {
            $("#rk-progress-cardBack").css("display", "none");
            $("#ck-progress-cardBack").css("display", "none");
        }
        if (type === "IN") {
            $("#rk_progress").css("display", "block");
            $("#ck_progress").css("display", "none");
        }
        if (type === "OUT") {
            $("#ck_progress").css("display", "block");
            $("#rk_progress").css("display", "none");
        }
    }
    //根据配置信息设置地磅是否可编辑
    if (weightEditTag && weightEditTag == 'N') {
@@ -386,87 +537,6 @@
        $("#emptyWeight").addClass("rkbk-search-input");
        $("#emptyWeight").attr("disabled", true);
    }
}
// 当前完成
function submit() {
    if (!recordData) {
        alertError("没有业务数据信息,执行被拒绝");
        return;
    }
    var data = form.val("form-data");
    if (!data.depotId) {
        alertError("提示:装卸仓库必填");
        return;
    }
    if (!data.customerName) {
        alertError("提示:客户名称必填");
        return;
    }
    // 校验-入库满车称重
    if (InoutProgress.WEIGHT_FULL == recordData.progress) {
        if (data.fullWeight <= 0.0) {
            alertError("提示:满车称重信息必填");
            return;
        }
    }
    if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
        if (data.emptyWeight <= 0.0) {
            alertError("提示:空车称重信息必填");
            return;
        }
        if (!data.foodVariety) {
            alertError("提示:粮食品种必填");
            return;
        }
        if (!data.settleWeight || data.settleWeight <= 0.0) {
            alertError("结算重量不合规,请核对");
            return;
        }
        if (!data.recordWeight || data.recordWeight <= 0.0) {
            alertError("入库重量不合规,请核对");
            return;
        }
    }
    //合并数据
    Object.assign(recordData, data);
    // 获取照片
    var files = [{
        fileName: snapData.fileName1
    }, {
        fileName: snapData.fileName2
    }, {
        fileName: snapData.fileName3
    }, {
        fileName: snapData.fileName4
    }];
    recordData.files = files;
    var index = layer.load();
    $.ajax({
        type: "POST",
        url: "../../basic/inout/submit-weight",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(recordData),
        success: function (result) {
            if (result.code != "0000") {
                alertError(result.msg);
            } else {
                notify("数据提交成功", result.data);
                if (InoutProgress.WEIGHT_FULL == recordData.progress) {
                    resetForm();
                }
            }
            layer.close(index);
        },
        error: function () {
            layer.close(index);
            alertError("提交失败,请重新尝试");
        }
    });
}
/**
@@ -505,85 +575,9 @@
}
/**
 * 渲染表格
 * 车辆选择弹窗
 * @param list
 */
function renderTableCheckItem() {
    // 清空数据
    $("#tableCheckItem").empty();
    table.render({
        elem: '#tableCheckItem',
        data: curCheckItems,
        page: false,
        even: true,
        cols: [[{
            field: 'standardName',
            title: '检验项目',
            align: 'center',
            width: '13%'
        }, {
            field: 'value',
            title: '检验值',
            align: 'center',
            width: '9%'
        }, {
            field: 'operaSymbolValue',
            title: '标准值',
            align: 'center',
            width: '10%'
        }, {
            field: 'unit',
            title: '单位',
            align: 'center',
            width: '10%'
        }, {
            field: 'deNum',
            title: '扣重',
            align: 'center',
            width: '9%'
        }, {
            field: 'addNum',
            title: '增重',
            align: 'center',
            width: '9%'
        }, {
            field: 'dePrice',
            title: '扣价',
            align: 'center',
            width: '9%'
        }, {
            field: 'addPrice',
            title: '增价',
            align: 'center',
            width: '9%'
        }, {
            field: 'result',
            title: '检验结果',
            align: 'center',
            width: '10%',
            templet: function (item) {
                if (item.result == null) {
                    return "";
                }
                if (item.result == '0') {
                    return "不合格";
                }
                if (item.result == '1') {
                    return "合格";
                }
            }
        }, {
            field: 'remarks',
            title: '备注说明',
            align: 'center'
        }]]
    });
    $("thead tr").css({
        "border-bottom": "2px solid #53adce",
        "background": "#eff4f6"
    });
}
function renderTableProgressData(list) {
    // 清空数据
    $("#tableListProgressData").empty();
@@ -624,7 +618,11 @@
            }, {
                field: 'progress',
                title: '流程进度',
                align: 'center'
                align: 'center',
                style: 'font-weight: bold',
                templet: function (item) {
                    return INOUT_PROGRESS_MSG(item.progress);
                }
            }, {
                fixed: 'right',
                title: '选择操作',