CZT
2023-09-04 fae4bd828a6b81b95f53e285fcb4749fbd80c7bf
igds-web/src/main/resources/static/admin/inout/in-weight.js
@@ -7,6 +7,8 @@
var timerWeight;
var paramIntelCard;//设备识别结果
var paramIdCard;//设备识别结果
var curCheckItems = null;// 当前数据的检查项信息
var step = 1;
$(function () {
    layui.use(['layer', 'laydate', 'form', 'table', 'util'], function () {
@@ -113,6 +115,7 @@
        deptId: deptId,
        progress: recordData.progress,
        bizType: bizType,
        bizId: recordData.id,
        plateNum: recordData.plateNum,
        id1: snapDto1.id,
        id2: snapDto2.id,
@@ -143,7 +146,6 @@
            alertError("后台调用截图失败,请重新尝试");
        }
    });
    //如果是第二次称重,默认执行自动计算
    if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
        deAutoByIn("emptyWeight");
@@ -285,7 +287,7 @@
// 点击打印,系统判断是否已经执行完成,如果已经完成,直接打印,如果未完成则先执行完成
function printBill() {
    if (!recordData) {
        layer.alert("没有获取到业务数据,不支持打印!");
        alertError("没有获取到业务数据,打印被拒绝!");
        return;
    }
    // 从后台获取模版并打印
@@ -293,34 +295,25 @@
    // 合并更新當前编辑数据
    Object.assign(recordData, data);
    printBillStep2();
}
// 点击打印,先执行系统默认执行完成卡回收
function printBillStep2() {
    var index = layer.load();
    $.ajax({
        type: "POST",
        url: "../../basic/inout-report/inout-bill-weight",
        url: "../../basic/inout/report/bill-weight",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(recordData),
        success: function (result) {
            layer.close(index);
            if (result.code != "0000") {
                layer.msg(result.msg);
                alertError(result.msg);
            } else {
                layer.msg("开始渲染打印单……");
                if (companyId && companyId == "5016") {
                    print5016Weight(result.data);
                } else {
                    printWeight(result.data);
                }
                printWeight(result.data);
            }
        },
        error: function () {
            layer.close(index);
            layer.msg("获取打印模版失败,请联系管理员查看原因!!");
            alertError("获取打印模版失败,请联系管理员查看原因");
        }
    });
}
@@ -331,19 +324,15 @@
    form.render();
    recordData = null;
    weightDto.weight = 0.0;
    $("#weightValue").text("0.0");
    $("#img_scale_statule").attr("src", "../../static/images/icon-red.png");
    //称重可以复用
    $("#btn-weight").removeClass("layui-btn-disabled");
    $("#btn-weight").attr("disabled", false);
    $("#text-param").val(null);
}
function flushPage() {
    layer.confirm('确定要刷新页面吗?', {icon: 3, title: '提示'}, function (index) {
        resetForm();
        layer.msg("页面重置完成,请重新操作……");
        layer.close(index);
    });
}
@@ -424,41 +413,49 @@
// 当前完成
function submit() {
    if (null == recordData) {
        notify("没有数据可以提交", null);
    if (!recordData) {
        alertError("没有业务数据信息,执行被拒绝");
        return;
    }
    var data = form.val("form-data");
    if (!data.depotId) {
        notify("装卸仓库必须填写", null);
        alertError("提示:装卸仓库必填");
        return;
    }
    if (!data.customerName) {
        alertError("提示:客户名称必填");
        return;
    }
    // 校验-入库满车称重
    if (InoutProgress.WEIGHT_FULL == recordData.progress) {
        if (data.fullWeight <= 0.0) {
            notify("满车称重信息必填!!", null);
            return;
        }
        if (!data.customerName) {
            notify("客户名称必填!!", null);
            return;
        }
    } else {
        if (data.emptyWeight <= 0.0) {
            notify("空车称重信息必填!!", null);
            return;
        }
        if (!data.foodVariety) {
            notify("粮食品种必填!!", null);
            return;
        }
        if (!data.settleWeight || data.settleWeight <= 0.0) {
            notify("结算重量合规,请核对!!", null);
            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);
    // 获取照片
@@ -474,13 +471,13 @@
    var index = layer.load();
    $.ajax({
        type: "POST",
        url: "../../basic/inout/inout-next-step",
        url: "../../basic/inout/submit-weight",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(recordData),
        success: function (result) {
            if (result.code != "0000") {
                notify(result.msg, result.data);
                alertError(result.msg);
            } else {
                notify("数据提交成功", result.data);
            }
@@ -488,118 +485,29 @@
        },
        error: function () {
            layer.close(index);
            notify("提交失败,请重新尝试", null);
            alertError("提交失败,请重新尝试");
        }
    });
    //以下逻辑为增加一个语音通知的调用方法,不考虑返回结果--后台调用
    var curWeight = recordData.fullWeight;
    if (InoutProgress.WEIGHT_EMPTY == recordData.progress) {
        curWeight = recordData.emptyWeight;
    }
    var param = {
        sort: $("#scaleName").val(),
        weight: curWeight,
        inoutProgress: recordData.progress,
        deptId: recordData.deptId,
        companyId: recordData.companyId,
        plateNum: recordData.plateNum
    };
    $.ajax({
        type: "POST",
        url: "../../inout/api/notice-weight-done",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(param)
    });
}
//显示质检信息
function showCheck() {
    alertError("调整");
}
    if (!recordData) {
        alertError("没有业务数据信息,执行被拒绝");
        return;
    }
    // 获取化验项信息
    flushCheckItem();
// ---------------------------通知单-开始 -------------------//
// 弹出往来单位下拉框
function showNotice() {
    var index = layer.load();
    var param = {
        type: type
    };
    // 渲染往来单位列表
    table.render({
        elem: '#tableNotice',
        url: '../../basic/inout/list-notice—in',
        page: false,
        // skin : "nob",
        // size : 'sm',
        even: true,
        method: 'POST',
        contentType: "application/json;charset=UTF-8",
        cols: [[{
            field: 'name',
            title: '通知单名称',
            width: '15%'
        }, {
            field: 'customerName',
            title: '送货单位'
        }, {
            field: 'foodVarietyName',
            title: '粮食品种',
            width: '10%'
        }, {
            field: 'year',
            title: '年份',
            width: '8%'
        }, {
            field: 'unitName',
            title: '收货单位'
        }, {
            field: 'contractName',
            title: '所属合同'
        }]],
        where: param,
        parseData: function (res) {
            if ("0000" == res.code) {
                return {
                    "code": "0",
                    "msg": res.msg,
                    "data": res.data
                }
            } else {
                return {
                    "code": "1",
                    "msg": res.msg
                }
            }
        },
        done: function (res) {
            layer.close(index);
        }
    });
    //双击显示选中数据
    table.on('rowDouble(tableNotice)', function (obj) {
        var data = obj.data;
        form.val("form-data", {
            customerId: data.customerId,
            customerName: data.customerName,
            noticeId: data.id
        });
        // 关闭
        layer.closeAll();
    });
    // 弹出对话框
    layer.open({
        type: 1,
        offset: ['100px', '250px'],
        title: "入库通知单",
        area: ['900px', '600px'],
        title: "质检详细",
        offset: ['120px', '100px'],
        area: ['1000px', '520px'],
        shade: 0,
        content: $('#listNotice'),
        btn: 0,
        content: $('#checkDetail'),
        btnAlign: 'c',
        btn: ['取消'],
        yes: function () {
            layer.closeAll();
@@ -608,49 +516,145 @@
    });
}
// ---------------------------通知单 -结束 -------------------//
//-------------------------道闸操作--------------------------//
/**
 * 刷新化验结果项
 */
function flushCheckItem() {
function gateCtrl() {
    layer.open({
        type: 1,
        title: '设备操作-' + domSelectDevice.attr("name"),
        area: ['450px', '210px'],
        shade: 0,
        content: $('#control-gate'),
        btn: 0,
        closeBtn: 2
    curCheckItems = null;
    $.ajax({
        type: "POST",
        url: "../../basic/inout/get-check-item",
        dataType: "json",
        contentType: "application/json;charset=UTF-8",
        data: JSON.stringify(recordData),
        success: function (result) {
            if (result.code != "0000") {
                layer.msg(result.msg);
            } else {
                curCheckItems = result.data;
                // 页面渲染检测项
                renderTableCheckItem();
            }
        },
        error: function () {
            layer.msg("后台异常,请重试或者联系管理员!!");
        }
    });
}
function controlGate(targetStatus) {
    if (gateDto) {
        var data = {
            "companyId": companyId
            , "deptId": deptId
            , "bizType": type
            , "confId": gateDto.id
            , "targetStatus": targetStatus
            , "sort": gateDto.sort
        };
        $.ajax({
            type: "POST",
            url: "../../basic/inout/gate-ctrl",
            dataType: "json",
            contentType: "application/json;charset=UTF-8",
            data: JSON.stringify(data),
            success: function (result) {
                if (result.code != "0000") {
                    layer.msg("操作失败:" + result.msg);
                } else {
                    layer.msg("操作成功");
                }
            },
            error: function () {
                layer.alert("操作失败,请重新尝试!!");
/**
 * 弹出提醒框
 * @param msg 提醒信息
 * @param data 数据信息,可能为空
 */
function notify(msg, data) {
    if (data) {
        //赋值
        $("#resultMsg").text(msg);
        $("#resultUserName").text(data.userName);
        $("#resultPlateNum").text(data.plateNum);
        if ("IN" == data.type) {
            $("#resultType").text("入库-" + INOUT_PROGRESS_MSG(data.progress));
        } else {
            $("#resultType").text("出库-" + INOUT_PROGRESS_MSG(data.progress));
        }
        $("#resultIntelCard").text(data.intelCard);
        layer.open({
            type: 1,
            offset: ['150px', '200px'],
            area: '450px;',
            shade: 0.8,
            id: 'dialog_notify_info',
            btn: ['确定'],
            content: $('#dialog-from-notify'),
            yes: function (index) {
                layer.closeAll();
            }
        });
    } else {
        layer.msg("没有获取到设备!");
        layer.alert(msg, {offset: ['300px', '300px']});
    }
}
/**
 * 渲染表格
 */
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"
    });
}