1
cwjbxqmz
2024-01-25 06e590b6059d68021f8d81ddaa34d8a1846b8745
WebTM/views/ÏúÊÛ¹ÜÀí/ÏúÊÛ¶©µ¥/Add_Edit_Xs_SeOrderBillList.html
@@ -15,25 +15,36 @@
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <style type="text/css">
        /*.layui-form-item .layui-inline {
            margin-right: 0;
    <style>
        .main-btn { /*头部主按钮*/
            padding: 0 2px; /*调整按钮左右空隙大小*/
            height: 30px;
            line-height: 30px;
        }
        html {
            background-color: white;
            color: white;
        .btn-title {
            font-size: 16px;
        }
        /* é˜²æ­¢ä¸‹æ‹‰æ¡†çš„下拉列表被隐藏---必须设置--- */
        .layui-table-cell {
            overflow: visible !important;
        }
        /* ä½¿å¾—下拉框与单元格刚好合适 */
        td .layui-form-select {
            margin-top: -10px;
            margin-left: -15px;
            margin-right: -15px;
        }*/
        }
        .layui-form-item .layui-inline {
            margin-top: 0px;
            margin-bottom: 5px;
            margin-right: 0px;
        }
        .layui-form-label {
            width: 25%;
        }
    </style>
</head>
<body>
@@ -158,6 +169,7 @@
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">备注</label>
@@ -365,7 +377,13 @@
    <script type="text/html" id="barDemo">
        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
    </script>
    <!--行下拉选择(是否取库存)-->
    <script type="text/html" id="HisStockGoods">
        <select name="HisStockGoods" lay-filter="HisStockGoods" id="HisStockGoods{{d.LAY_TABLE_INDEX+1}}">
            <option value="false">否</option>
            <option value="true">是</option>
        </select>
    </script>
    <script>
        //#region æŠ˜å æ³¨é‡Š
        //#endregion
@@ -405,7 +423,7 @@
            //#region åˆ¤æ–­æ˜¯å¦ç™»å½• æœªç™»å½•则跳到登录页
            get_LoginIs();
            //#endregion
            //#endregion
            //#region åˆ¤æ–­å¹¶è®¾ç½®æ“ä½œç±»åž‹ã€é¡µé¢åˆå§‹åŒ–
            if (OperationType == null || OperationType == 1) {                          //新增
@@ -449,7 +467,7 @@
            //DisPlay_HideColumn();
            //#endregion
            //#endregion
            //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
            //#region å¼¹çª—选择触发事件
            //#region é€‰æ‹©é”€å”®å‘˜æŒ‰é’®
@@ -468,7 +486,7 @@
            form.on('submit(HSellSList)', function () {
                get_checkSellS();
            });
            //#endregion
            //#endregion
            //#region é€‰æ‹©ç»“算方式按钮
            form.on('submit(HSSList)', function () {
@@ -480,7 +498,7 @@
            form.on('submit(HCurList)', function () {
                get_checkCur();
            });
            //#endregion
            //#endregion
            //#region é€‰æ‹©é”€å”®éƒ¨é—¨æŒ‰é’®
            form.on('submit(HDeptList)', function () {
@@ -561,9 +579,13 @@
                    "HlineTotal": "0",
                    "HlineTotalBB": "0",
                    "HDate": Format(new Date(), 'yyyy-MM-dd'),
                    "HisStockGoods": "false",
                    "HOutStockQty": "0",
                    "HInvoiceQty": "0",
                    "HRemark": ""
                    "HRemark": "",
                    "HCusMaterNumber": "",
                    "HCusModel": "",
                    "HCusMaterName": ""
                };
                switch (obj.event) {
                    //新增一行
@@ -599,7 +621,7 @@
                    var field = $(this).data('field');
                    laydate.render({
                        elem: this.firstChild
                        , show: true //直接显示
                        , show: true //直接显示
                        , closeStop: this
                        , done: function (nowDate) {
                            //时间选择完成,行数据更新
@@ -635,6 +657,9 @@
                            });
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            layer.msg("数量请输入大于0的数字!");
                            return;
                        }
@@ -647,7 +672,7 @@
                        /*var HDiscountRate = obj.data.HDiscountRate * 1; //折扣率*/
                        var HTaxPrice = HPrice * (1 + HTaxRate);        //含税单价=单价*(1+税率)
                        /*var HRelTaxPrice = HTaxPrice * HDiscountRate;   //实际含税单价=含税单价*折扣率*/
                                                                        //折扣额 = å«ç¨Žå•ä»· * (1 - æŠ˜æ‰£çއ) * æ•°é‡
                        //折扣额 = å«ç¨Žå•ä»· * (1 - æŠ˜æ‰£çއ) * æ•°é‡
                        var HMoney = HQty * HPrice;                     //金额=数量*单价
                        var HTaxMoney = HMoney * HTaxRate;              //税额=金额*税率
                        var HlineTotal = HMoney + HTaxMoney;            //价税合计=金额+税额
@@ -670,6 +695,10 @@
                            , HlineTotal: HlineTotal
                        });
                        table.render(option);
                        //刷新表格同时根据option中HisStockGoods值设置下拉列表
                        setSelectHisStockGoodsByTableRender();
                        //设置表头所需金额
                        set_HBillMoney();
                        break;
@@ -682,6 +711,9 @@
                                HPrice: oldText
                            });
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            layer.msg("单价请输入大于0的数字!");
                            return;
@@ -718,6 +750,10 @@
                            , HlineTotal: HlineTotal
                        });
                        table.render(option);
                        //刷新表格同时根据option中HisStockGoods值设置下拉列表
                        setSelectHisStockGoodsByTableRender();
                        //设置表头所需金额
                        set_HBillMoney();
                        break;
@@ -730,6 +766,9 @@
                                HTaxRate: oldText
                            });
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            layer.msg("税率请输入不小于0的数字!");
                            return;
@@ -766,6 +805,10 @@
                            , HlineTotal: HlineTotal
                        });
                        table.render(option);
                        //刷新表格同时根据option中HisStockGoods值设置下拉列表
                        setSelectHisStockGoodsByTableRender();
                        //设置表头所需金额
                        set_HBillMoney();
                        break;
@@ -779,6 +822,9 @@
                            });
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            layer.msg("含税单据请输入不小于0的数字!");
                            return;
                        }
@@ -787,9 +833,9 @@
                        var HTaxRate = obj.data.HTaxRate * 0.01;        //税率
                        var HTaxPrice = value * 1;                          //含税单价=单价*(1+税率)
                        var HPrice = HTaxPrice / (1 + HTaxRate);        //单价=含税单据/(1+税率)
                        /*var HDiscountRate = obj.data.HDiscountRate * 1; //折扣率*/
                        /*var HRelTaxPrice = HTaxPrice * HDiscountRate;   //实际含税单价=含税单价*折扣率*/
                        //折扣额 = å«ç¨Žå•ä»· * (1 - æŠ˜æ‰£çއ) * æ•°é‡
                        var HMoney = HQty * HPrice;                     //金额=数量*单价
@@ -814,6 +860,10 @@
                            , HlineTotal: HlineTotal
                        });
                        table.render(option);
                        //刷新表格同时根据option中HisStockGoods值设置下拉列表
                        setSelectHisStockGoodsByTableRender();
                        //设置表头所需金额
                        set_HBillMoney();
                        break;
@@ -962,12 +1012,12 @@
                    , cols: [[ //子表
                        { type: 'checkbox', totalRowText: '合计行', style: 'background-color:#efefef4d;' }
                        , { type: 'numbers', title: '序号', width: 100, style: 'background-color:#efefef4d;' }
                        , { field: 'HOrderLevID', title: 'HOrderLevID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: '订单等级代码', title: '订单等级代码', width: 150, hide: true, edit: 'text', event: "HOrderLevID" }//f7
                        , { field: '订单等级名称', title: '订单等级名称', width: 150, style: 'background-color:#efefef4d;' }
                        , { field: 'HMaterID', title: 'HMaterID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: '物料代码', title: '物料代码', width: 150, edit: 'text', event: "HMaterID" }//f7
                        , { field: '物料名称', title: '物料名称', width: 150, style: 'background-color:#efefef4d;' }
                        , { field: 'HOrderLevID', title: 'HOrderLevID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: '订单等级代码', title: '订单等级代码', width: 150, edit: 'text', event: "HOrderLevID" }//f7
                        , { field: '订单等级名称', title: '订单等级名称', width: 150, style: 'background-color:#efefef4d;' }
                        , { field: '规格型号', title: '规格型号', width: 100, style: 'background-color:#efefef4d;' }
                        , { field: 'HUnitID', title: 'HUnitID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: '计量单位', title: '计量单位', width: 100, style: 'background-color:#efefef4d;' }//f7
@@ -977,10 +1027,12 @@
                        , { field: 'HTaxPrice', title: '含税单价', width: 100, edit: 'text' }
                        , { field: 'HMoney', title: '金额', width: 100, totalRow: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HlineTotal', title: '价税合计', width: 100, totalRow: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HCusMaterNumber', title: '客户物料编码', width: 100, edit: 'text' }
                        , { field: 'HCusModel', title: '客户规格型号', width: 100, edit: 'text' }
                        , { field: 'HCusMaterName', title: '客户物料名称', width: 100, edit: 'text' }
                        , { field: 'HDate', title: '交货日期', event: "HDate", width: 120 }
                        , { field: 'HisStockGoods', title: '是否取库存', width: 120, templet: '#HisStockGoods' }
                        , { field: 'HRemark', title: '备注', width: 100, edit: 'text' }
                        , { field: 'HDiscountRate', title: '折扣率', width: 100, edit: 'text', hide: true }
                        , { field: 'HRelTaxPrice', title: '实际含税单价', width: 110, hide: true }
                        , { field: 'HTaxMoney', title: '税额', width: 100, hide: true }
@@ -989,6 +1041,21 @@
                        , { field: 'HInvoiceQty', title: '开票数量', width: 100, edit: 'text', hide: true }
                        , { fixed: 'right', title: '操作', toolbar: '#barDemo', width: 70 }
                    ]]
                    , done: function (res, curr, count) {
                        option.data = res.data;
                        //去掉下拉框失焦事件否则在下拉框里输入值
                        $('.layui-form-select').find('input').unbind("blur");
                        //表格重载回显下拉框里的数据
                        $('tr').each(function (e) {
                            var $cr = $(this);
                            var dataIndex = $cr.attr("data-index");
                            $.each(option.data, function (index, value) {
                                if (value.LAY_TNDEX == dataIndex) {
                                    $cr.find('input').val(value.HisStockGoods);
                                }
                            });
                        });
                    }
                }
                var rowdata = [{
@@ -1012,13 +1079,20 @@
                    "HlineTotal": "0",
                    "HlineTotalBB": "0",
                    "HDate": Format(new Date(),'yyyy-MM-dd'),
                    "HisStockGoods": "false",
                    "HOutStockQty": "0",
                    "HInvoiceQty": "0",
                    "HRemark": ""
                    "HRemark": "",
                    "HCusMaterNumber": "",
                    "HCusModel": "",
                    "HCusMaterName": ""
                }];
                option.data = rowdata;
                table.render(option);
                //刷新表格同时根据option中HisStockGoods值设置下拉列表
                setSelectHisStockGoodsByTableRender();
                //设置表头所需金额
                set_HBillMoney();
@@ -1046,7 +1120,7 @@
                set_InitGrid();
                DisPlay_HideColumn();
            }
            //#endregion
            //#endregion
            //#region ç¼–辑页面初始化
            function RoadBillMain(linterid) {
@@ -1132,22 +1206,29 @@
                                        "HRelTaxPrice": result.data[i]["实际含税单价"],
                                        "HTaxRate": result.data[i]["税率"],
                                        "HTaxMoney": result.data[i]["税额"],
                                        "HlineTotal": dealDoubleToFixed(result.data[i]["价税合计"],2),
                                        "HlineTotal": dealDoubleToFixed(result.data[i]["价税合计"], 2),
                                        "HlineTotalBB": result.data[i]["本位币价税合计"],
                                        "HisStockGoods": result.data[i]["是否取库存"]=="Y"?true:false,
                                        "HDate": formatDate(result.data[i]["交货日期"]),
                                        "HOutStockQty": result.data[i]["出库数量"],
                                        "HInvoiceQty": result.data[i]["开票数量"],
                                        "HRemark": result.data[i]["表体备注"]
                                        "HRemark": result.data[i]["表体备注"],
                                        "HCusMaterNumber": result.data[i]["客户物料编码"],
                                        "HCusModel": result.data[i]["客户规格型号"],
                                        "HCusMaterName": result.data[i]["客户物料名称"]
                                    }
                                );
                            }
                            option.data = rowdata;
                            //出库数量、开票数量不可编辑
                            option.cols[0][19].edit = null;
                            option.cols[0][20].edit = null;
                            option.cols[0][22].edit = null;
                            option.cols[0][23].edit = null;
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            //设置表头所需金额
                            set_HBillMoney();
@@ -1164,6 +1245,7 @@
            }
            //#endregion
            //#region è¡¨å¤´é€‰æ‹©æ–¹æ³•
            //#region é”€å”®å‘˜é€‰æ‹©é¡µé¢
            function get_checkEmp() {
                layer.open({
@@ -1366,6 +1448,7 @@
                })
            }
            //#endregion
            //#endregion
            //#region ä¿å­˜æ–¹æ³•
            function set_SaveBill(data) {
@@ -1480,7 +1563,7 @@
                //    return false;
                //}
                //if ($("#HPayCusID").val() == "0") {
                //    layer.msg("结算方未选择!");
@@ -1492,7 +1575,7 @@
                //    return false;
                //}
                //#endregion
                //#region å­è¡¨ æ•°æ®æ£€éªŒ
@@ -1569,11 +1652,11 @@
                        return false;
                    }
                    ////折扣率格式校验
                    //temp = option.data[i]["HDiscountRate"] + "";
@@ -1595,7 +1678,7 @@
                    //    return false;
                    //}
                    //税额格式校验
                    //temp = option.data[i]["HTaxMoney"] + "";
@@ -1607,7 +1690,7 @@
                    //    return false;
                    //}
                    ////本位币价税合计格式校验
                    //temp = option.data[i]["HlineTotalBB"] + "";
@@ -1655,6 +1738,10 @@
                table.cache["mainTable"].push(NewRow);
                option.data = table.cache["mainTable"];
                table.render(option);
                //刷新表格同时根据option中HisStockGoods值设置下拉列表
                setSelectHisStockGoodsByTableRender();
                //设置表头所需金额
                set_HBillMoney();
                //rows++;
@@ -1678,6 +1765,10 @@
                    }
                    option.data = tables;
                    table.render(option);
                    //刷新表格同时根据option中HisStockGoods值设置下拉列表
                    setSelectHisStockGoodsByTableRender();
                    //设置表头所需金额
                    set_HBillMoney();
                } else {
@@ -1704,6 +1795,10 @@
                    option.data[option.data.length - 1].HWeight = "0";
                    table.render(option);//将数据渲染到表格上
                    //刷新表格同时根据option中HisStockGoods值设置下拉列表
                    setSelectHisStockGoodsByTableRender();
                    //设置表头所需金额
                    set_HBillMoney();
                }
@@ -1730,6 +1825,10 @@
                            option.data[i - 1] = data[0];
                            option.data[i] = tables[0];
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            //设置表头所需金额
                            set_HBillMoney();
                            break;
@@ -1763,6 +1862,10 @@
                            option.data[i + 1] = data[0];
                            option.data[i] = tables[0];
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            //设置表头所需金额
                            set_HBillMoney();
                            break;
@@ -1790,6 +1893,10 @@
                            oldData.splice(obj.tr.data('index'), 1);
                            option.data = oldData;
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                            //设置表头所需金额
                            set_HBillMoney();
                            layer.close(index);
@@ -1797,6 +1904,19 @@
                    });
                }
            }
            //#endregion
            //#region è¡¨æ ¼è¡Œé€‰æ‹©å¤„理(是否取库存)
            form.on('select(HisStockGoods)', function (data) {
                //获取下拉框选中的值
                var elem = data.othis.parents('tr');
                var dataindex = elem.attr("data-index");
                $.each(option.data, function (index, value) {
                    if (value.LAY_TABLE_INDEX == dataindex) {
                        value.HisStockGoods = data.value;//把选中下拉框id值赋值给表格缓存
                    }
                });
            });
            //#endregion
            //#region è¡Œå†…快捷键筛选
@@ -1832,7 +1952,8 @@
                                            var NewRow = {
                                                "HMaterID": "0", "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": "0", "计量单位": "", "HQty": "0", "HPrice": "0", "HTaxPrice": "0"
                                                , "HMoney": "0", "HDiscountRate": "0", "HRelTaxPrice": "0", "HTaxRate": "0", "HTaxMoney": "0", "HlineTotal": "0", "HlineTotalBB": "0"
                                                , "HDate": Format(new Date(), 'yyyy-MM-dd'), "HOutStockQty": "0", "HInvoiceQty": "0", "HRemark": ""
                                                , "HDate": Format(new Date(), 'yyyy-MM-dd'), "HOutStockQty": "0", "HInvoiceQty": "0", "HRemark": "", "HCusMaterNumber": "",
                                                "HCusModel": "","HCusMaterName": ""
                                            }
                                            btnAddLine(NewRow);
                                        }
@@ -1884,6 +2005,10 @@
                                    }
                                    table.render(option);
                                    //刷新表格同时根据option中HisStockGoods值设置下拉列表
                                    setSelectHisStockGoodsByTableRender();
                                    //设置表头所需金额
                                    set_HBillMoney();
@@ -2003,7 +2128,7 @@
                    success: function (data1) {
                        if (data1.data.length != 0) {
                            var dataCol = [];//数据库查询出的列数据
                            var titleData = ["HMaterID", "HUnitID", "折扣率", "实际含税单价", "税额","本位币价税合计","出库数量","开票数量"];//不需要显示的字段 å¯æ‰©å±•
                            var titleData = ["HMaterID", "HUnitID", "折扣率", "实际含税单价", "税额", "本位币价税合计", "出库数量", "开票数量", "HOrderLevID","订单等级代码"];//不需要显示的字段 å¯æ‰©å±•
                            //titleData = [];
                            dataCol = data1.data[0].HGridString.split(',');
@@ -2067,8 +2192,15 @@
                                }
                            }
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                        } else {
                            table.render(option);
                            //刷新表格同时根据option中HisStockGoods值设置下拉列表
                            setSelectHisStockGoodsByTableRender();
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
@@ -2190,6 +2322,15 @@
                    }
                });
                return HSourceBillData;
            }
            //#endregion
            //#region åˆ·æ–°è¡¨æ ¼åŒæ—¶æ ¹æ®option中HisStockGoods值设置下拉列表
            function setSelectHisStockGoodsByTableRender() {
                for (var i = 1; i <= option.data.length; i++) {
                    $('#HisStockGoods' + i + '').find("option[value='" + option.data[i - 1].HisStockGoods + "']").attr("selected", true);
                }
                form.render('select');
            }
            //#endregion
            //#endregion
@@ -2361,7 +2502,7 @@
                }
            }
        }
            //#endregion
                //#endregion
    </script>
</body>
</html>