wtt
2024-06-27 98841c39d2579baeb81e8a4069ebf481adb05b22
采购订单,付款单等模块优化
5个文件已修改
278 ■■■■ 已修改文件
WebTM/views/基础资料/采购基础资料/Gy_Supplier_Edit.html 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/采购管理/付款单/YF_PayMentBill.html 101 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/采购管理/采购订单/Cg_POOrderBillEdit.html 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/销售管理/发货通知单/Add_Edit_Xs_SeOutStockBillList.html 116 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/领料发货/销售出库/Kf_SellOutBill.html 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/»ù´¡×ÊÁÏ/²É¹º»ù´¡×ÊÁÏ/Gy_Supplier_Edit.html
@@ -686,7 +686,6 @@
                        //    data: ajaxReturnData
                        //});
                    }
                });
            }
            //返回验收
@@ -706,17 +705,17 @@
                    layer.msg("请输入供应商名称", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
                var HAddress = $("#HAddress").val();
                if (HAddress == null || HAddress == undefined || HAddress == "") {
                    layer.msg("地址不得为空!", { icon: 5 });
                    return;
                //var HAddress = $("#HAddress").val();
                //if (HAddress == null || HAddress == undefined || HAddress == "") {
                //    layer.msg("地址不得为空!", { icon: 5 });
                //    return;
                }
                //}
                if ($("#HAreaName").val() == '') {
                    layer.msg("没有选择地区", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
                //if ($("#HAreaName").val() == '') {
                //    layer.msg("没有选择地区", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                //    return false;
                //}
                if ($("#HCurName").val() == '') {
                    layer.msg("没有选择默认货币", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
@@ -727,17 +726,18 @@
                }
                var reg = /^0\d{2,3}-?\d{7,8}$/;
                if (reg.test($("#HLinkPhone").val()) == false || $("#HLinkPhone").val() == '') {
                if (reg.test($("#HLinkPhone").val()) == false && $("#HLinkPhone").val() != "") {
                    layer.msg("联系电话号码有误,请输入区号+号码格式的电话号码", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
                var reg1 = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/;
                if (reg1.test($("#HEmail").val()) == false || $("#HEmail").val() == '') {
                if (reg1.test($("#HEmail").val()) == false && $("#HEmail").val() != "" ) {
                    layer.msg("请填写正确格式的邮箱", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
                var reg2 = /^[1][3,4,5,7,8][0-9]{9}$/;
                if (reg2.test($("#HMobilePhone").val()) == false || $("#HMobilePhone").val() == '') {
                if (reg2.test($("#HMobilePhone").val()) == false && $("#HMobilePhone").val() != "")
                {
                    layer.msg("请填写正确格式的手机号", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
WebTM/views/²É¹º¹ÜÀí/¸¶¿îµ¥/YF_PayMentBill.html
@@ -187,7 +187,7 @@
                                        <div class="layui-inline">
                                            <label class="layui-form-label">大写金额</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HBigMoney" id="HBigMoney" value="" autocomplete="off" >
                                                <input class="layui-input" name="HBigMoney" id="HBigMoney" value="" autocomplete="off" style="background-color: #efefef4d;" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
@@ -439,6 +439,7 @@
                    $("#HSumMoney").val(HSumMoney);
                    $("#HDiscountRate").val(HDiscountRate);
                    $("#HRelSumMoney").val(HRelSumMoney);
                    getBigMoneyByRelSumMoney();
                });
                //#endregion
@@ -466,28 +467,44 @@
                    $("#HSumMoney").val(HSumMoney);
                    $("#HDiscountRate").val(HDiscountRate);
                    $("#HRelSumMoney").val(HRelSumMoney);
                    getBigMoneyByRelSumMoney();
                });
                //#endregion
            });
            $(document).ready(function () {
                $("#HBigMoney").blur(function () {
                    var num = $(this).val();
                    var strOutput = "";
                    var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分';
                    num += "00";
                    var intPos = num.indexOf('.');
                    if (intPos >= 0) {
                        num = num.substring(0, intPos) + num.substr(intPos + 1, 2);
                    }
                    strUnit = strUnit.substr(strUnit.length - num.length);
                    for (var i = 0; i < num.length; i++) {
                        strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(num.substr(i, 1), 1) + strUnit.substr(i, 1);
                    }
                    // å°†è½¬æ¢åŽçš„大写金额替换文本框中的内容
                    $(this).val(strOutput.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元"));
                });
            });
            function getBigMoneyByRelSumMoney() {
                var num = $("#HRelSumMoney").val();
                var strOutput = "";
                var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分';
                num += "00";
                var intPos = num.indexOf('.');
                if (intPos >= 0) {
                    num = num.substring(0, intPos) + num.substr(intPos + 1, 2);
                }
                strUnit = strUnit.substr(strUnit.length - num.length);
                for (var i = 0; i < num.length; i++) {
                    strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(num.substr(i, 1), 1) + strUnit.substr(i, 1);
                }
                // å°†è½¬æ¢åŽçš„大写金额替换文本框中的内容
                $("#HBigMoney").val(strOutput.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元"));
            }
            //$(document).ready(function () {
            //    $("#HBigMoney").blur(function () {
            //        var num = $("#HRelSumMoney").val();
            //        var strOutput = "";
            //        var strUnit = '仟佰拾亿仟佰拾万仟佰拾元角分';
            //        num += "00";
            //        var intPos = num.indexOf('.');
            //        if (intPos >= 0) {
            //            num = num.substring(0, intPos) + num.substr(intPos + 1, 2);
            //        }
            //        strUnit = strUnit.substr(strUnit.length - num.length);
            //        for (var i = 0; i < num.length; i++) {
            //            strOutput += '零壹贰叁肆伍陆柒捌玖'.substr(num.substr(i, 1), 1) + strUnit.substr(i, 1);
            //        }
            //        // å°†è½¬æ¢åŽçš„大写金额替换文本框中的内容
            //        $(this).val(strOutput.replace(/零角零分$/, '整').replace(/零[仟佰拾]/g, '零').replace(/零{2,}/g, '零').replace(/零([亿|万])/g, '$1').replace(/零+元/, '元').replace(/亿零{0,3}万/, '亿').replace(/^元/, "零元"));
            //    });
            //});
            //#endregion
            //#region æ“ä½œæŒ‰é’®è§¦å‘事件
@@ -738,7 +755,49 @@
                        }
                        $("#HSupName").val(checkStatus.data[0].供应商名称);
                        $("#HSupID").val(checkStatus.data[0].HItemID);
                        if ($("#HAccSupName").val() == '') {
                            $("#HAccSupName").val(checkStatus.data[0].供应商名称);
                            $("#HAccSupID").val(checkStatus.data[0].HItemID);
                        }
                        //获取银行相关数据
                        $.ajax({
                            url: GetWEBURL() + "/Gy_Supplier/xg",
                            type: "GET",
                            data: {
                                "HInterID": $("#HSupID").val()
                            },
                            success: function (d) {
                                $("#HBankName").val(d.data[0].开户银行);
                                $("#HCurID").val(d.data[0].默认货币ID);
                                $("#HCurName").val(d.data[0].默认货币);
                                $("#HBankNo").val(d.data[0].银行账号);
                                $("#HSSID").val(d.data[0].结算方式ID);
                                $("#HSSName").val(d.data[0].结算方式);
                                //获取默认货币汇率
                                $.ajax({
                                    url: GetWEBURL() + "GetGy_CurrencyDetail",
                                    type: "GET",
                                    data: {
                                        "HID": $("#HCurID").val()
                                    },
                                    success: function (result) {
                                        if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                                            var data = result.data.h_v_Edit_Gy_CurrencyList[0];
                                            $("#HExRate").val(data.汇率);
                                        } else {
                                            layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                                        }
                                    }, error: function () {
                                        layer.alert("发生错误!", { icon: 5 });
                                    }
                                });
                                //table.reload(layTableId, {
                                //    data: ajaxReturnData
                                //});
                            },error: function (err) {
                                layer.msg("错误:" + err, { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                            }
                        });
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
WebTM/views/²É¹º¹ÜÀí/²É¹º¶©µ¥/Cg_POOrderBillEdit.html
@@ -469,8 +469,8 @@
            //#endregion
            var rowdata = [{
                "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": 0,"HWHName":"", "数量": "", "HRemark": ""
                , "HPrice": "", "HTaxPrice": "", "HMoney": "", "HDiscountRate": 1, "HRelTaxPrice": "", "HTaxRate": 1, "HTaxMoney": "", "HlineTotal": "", "HlineTotalBB": "", "HDate": Format(new Date, "yyyy- MM - dd"),
                "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": 0, "HWHName": "", "HQty": "", "HRemark": ""
                , "HPrice": "", "HTaxPrice": "", "HMoney": "", "HDiscountRate": 1, "HRelTaxPrice": "", "HTaxRate": 0, "HTaxMoney": "", "HlineTotal": "", "HlineTotalBB": "", "HDate": Format(new Date, "yyyy- MM - dd"),
            }];
            // åˆå§‹åŒ–界
@@ -482,8 +482,8 @@
                    , data = checkStatus.data;
                //新增行表格数据
                var NewRow = {
                    "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": 0, "HWHName": "", "数量": "", "HRemark": ""
                    , "HPrice": "", "HTaxPrice": "", "HMoney": "", "HDiscountRate": "1", "HRelTaxPrice": "", "HTaxRate":1, "HTaxMoney": "", "HlineTotal": "", "HlineTotalBB": "", "HDate": Format(new Date, "yyyy- MM - dd")
                    "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": 0, "HWHName": "", "HQty": "", "HRemark": ""
                    , "HPrice": "", "HTaxPrice": "", "HMoney": "", "HDiscountRate": "1", "HRelTaxPrice": "", "HTaxRate":0, "HTaxMoney": "", "HlineTotal": "", "HlineTotalBB": "", "HDate": Format(new Date, "yyyy- MM - dd")
                     };
                switch (obj.event) {
                    case 'btn-AddLine':
@@ -530,7 +530,7 @@
            form.on('submit(HEmpList)', function () {
                get_checkEmp();
            });
            //选择客户按钮
            //选择供应商按钮
            form.on('submit(HSupList)', function () {
                get_checkSup();
            });
@@ -650,13 +650,13 @@
                    case "HPrice":                                         //单价
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp) || temp == 0) {
                        if (!ref.test(temp) ) {
                            //恢复数据到编辑前
                            obj.update({
                                HPrice: oldText
                            });
                            layer.msg("单价请输入大于0的数字!");
                            layer.msg("单价请输入数字!");
                            return;
                        }
@@ -685,7 +685,7 @@
                            , HlineTotalBB: HlineTotalBB
                        });
                        break;
                    case "HTaxRate":                                                       //数量
                    case "HTaxRate":                                                       //税率
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp)) {
@@ -694,7 +694,7 @@
                                HTaxRate: oldText
                            });
                            layer.msg("税率请输入不小于0的数字!");
                            layer.msg("税率请输入数字!");
                            return;
                        }
@@ -1075,7 +1075,7 @@
                                    for (var i = 0; i < checkStatus.data.length; i++) {
                                        if (rowIndex + i >= option.data.length) {
                                            var NewRow = {
                                                "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": 0, "HWHName": "", "数量": "", "HRemark": ""
                                                "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": 0, "HWHName": "", "HQty": 1, "HRemark": ""
                                                , "HPrice": "0", "HTaxPrice": "0", "HMoney": "0", "HDiscountRate": "1", "HRelTaxPrice": "0", "HTaxRate": "0", "HTaxMoney": "0", "HlineTotal": "0", "HlineTotalBB": "0", "HDate": Format(new Date, "yyyy- MM - dd")
                                            };
                                             
@@ -1095,6 +1095,7 @@
                                        option.data[rowIndex + i].规格型号 = resultData.HMaterModel;
                                        option.data[rowIndex + i].HUnitID = resultData.HUnitID;
                                        option.data[rowIndex + i].计量单位 = resultData.HUnitName;
                                        option.data[rowIndex + i].HQty = 1;
                                    }
                                    table.render(option);
@@ -1112,7 +1113,8 @@
                                       , "物料名称" :OptionData.物料名称
                                        ,"规格型号" : OptionData.规格型号
                                        ,"HUnitID" :OptionData.HUnitID
                                        ,"计量单位" : OptionData.计量单位名称
                                        , "计量单位": OptionData.计量单位名称
                                        ,"HQty":1
                                })
                                    }
                                });
WebTM/views/ÏúÊÛ¹ÜÀí/·¢»õ֪ͨµ¥/Add_Edit_Xs_SeOutStockBillList.html
@@ -258,7 +258,17 @@
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HProjectName" id="HProjectName" autocomplete="off" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-col-xs4 layui-inline">
                                            <label class="layui-form-label">结算方式<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HSSName" id="HSSName" class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="hidden" name="HSSID" id="HSSID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HSSList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                            </div>
                                        </div>
                                    </div>
                                </div>
@@ -510,6 +520,10 @@
            //选择仓库按钮
            form.on('submit(HWHList)', function () {
                get_checkWH();
            });
            //选择结算按钮
            form.on('submit(HSSList)', function () {
                get_checkSS();
            });
            //选择币别按钮
            form.on('submit(HCurList)', function () {
@@ -822,6 +836,8 @@
                                , "HDeptID": data.HDeptID
                                , "HCurID": data.HCurID
                                , "HCurName": data.币别
                                , "HSSID": data.HSSID
                                , "HSSName": data.结算方式
                                , "HExRate": data.汇率
                                , "HManagerName": data.主管
                                , "HManagerID": data.HManagerID
@@ -1025,7 +1041,33 @@
                    });
                }
            }
            //#region æ ¹æ®å®¢æˆ·èŽ·å–å¸åˆ«ã€æ±‡çŽ‡ã€ç»“ç®—æ–¹å¼ã€
            function getCustomerByCusID(HCusID) {
                $.ajax({
                    url: GetWEBURL() + "/Xs_SeOrderBill/getCustomerByCusID",
                    async: false,
                    type: "GET",
                    data: {
                        "HCusID": HCusID
                    },
                    success: function (result) {
                        if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            var data = result.data[0];
                            $("#HCurID").val(data.HCurID);
                            $("#HCurName").val(data.HCurName);
                            $("#HExRate").val(data.HExRate);
                            $("#HSSID").val(data.HSSID);
                            $("#HSSName").val(data.HSSName);
                        } else {
                            layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                        }
                    }, error: function () {
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
            }
        //#endregion
            //行内快捷键筛选
            function set_GridCellCheck(obj) {
                $(document).off('keydown', ".layui-table-edit").on('keydown', '.layui-table-edit', function (e) {
@@ -1047,20 +1089,35 @@
                                    var iframeWindow = window["layui-layer-iframe" + index];//获取弹框页面
                                    var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");//获取选中的数据
                                    if (checkStatus.data.length != 1) {
                                        return layer.msg("请选择一条数据");
                                    if (checkStatus.data.length == 0) {
                                        return layer.msg("请选择数据");
                                    }else if (checkStatus.data.length == 1) {
                                        //更新表格缓存的数据
                                        obj.update({
                                            "HMaterID": checkStatus.data[0].HItemID
                                            , "物料代码": checkStatus.data[0].物料代码
                                            , "物料名称": checkStatus.data[0].物料名称
                                            , "规格型号": checkStatus.data[0].规格型号
                                            , "HUnitID": checkStatus.data[0].HUnitID
                                            , "计量单位": checkStatus.data[0].计量单位名称
                                            ,"HQty": 1
                                        })
                                        layer.close(index);//关闭弹窗
                                    } else {
                                        table.cache["mainTable"].splice(0, 1);
                                        for (var rowData of checkStatus.data) {
                                            var NewRow = {
                                                "HMaterID": rowData.HItemID, "物料代码": rowData.物料代码, "物料名称": rowData.物料名称, "规格型号": rowData.规格型号, "HUnitID": rowData.HUnitID, "计量单位": rowData.计量单位名称, "HWHID": "0", "发货仓库": "",
                                                "HQty": "1", "HPrice": "0", "HMoney": "0", "HRemark": "",
                                                "HSourceBillNo": 0, "HSourceBillType": 0, "HSourceInterID": 0, "HSourceEntryID": 0,
                                            };
                                            table.cache["mainTable"].push(NewRow);
                                        }
                                        option.data = table.cache["mainTable"];
                                        table.render(option);
                                        layer.close(index);//关闭弹窗
                                    }
                                    //更新表格缓存的数据
                                    obj.update({
                                        "HMaterID": checkStatus.data[0].HItemID
                                        , "物料代码": checkStatus.data[0].物料代码
                                        , "物料名称": checkStatus.data[0].物料名称
                                        , "规格型号": checkStatus.data[0].规格型号
                                        , "HUnitID": checkStatus.data[0].HUnitID
                                        , "计量单位": checkStatus.data[0].计量单位名称
                                    })
                                    layer.close(index);//关闭弹窗
                                }
                                , end: function () {
                                    if (typeof (OptionData.HItemID) != "undefined") {
@@ -1220,6 +1277,7 @@
                        }
                        $("#HCusName").val(checkStatus.data[0].客户名称);
                        $("#HCusID").val(checkStatus.data[0].HItemID);
                        getCustomerByCusID($("#HCusID").val());
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
@@ -1325,7 +1383,29 @@
                    , btn2: function (index, layero) { }
                })
            }
            //结算方式
            function get_checkSS() {
                layer.open({
                    type: 2//弹窗类型
                    , skin: 'layui-layer-rim' //加上边框
                    , area: ['90%', '90%']//大小
                    , title: '结算方式列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../基础资料/基础资料/Gy_SettleStyle.html', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HSSName").val(checkStatus.data[0].结算方式名称);
                        $("#HSSID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //项目代码
            function get_checkSearchHProNumber() {
                var HOrgID = sessionStorage["OrganizationID"];
@@ -1451,7 +1531,11 @@
            }
            layui.table.render(option);
        }
        function GetSettleStyleValue(obj)  //返回结算方式
        {
            $("#HSSName").val(obj[0].结算方式名称);
            $("#HSSID").val(obj[0].HItemID);
        }
        //双击返回仓库
        function GetHWHSubValue(data) {
            OptionData = data[0]
WebTM/views/ÁìÁÏ·¢»õ/ÏúÊÛ³ö¿â/Kf_SellOutBill.html
@@ -988,14 +988,14 @@
                    case "HPrice":                                                       //单价
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp) || temp == 0) {
                        if (!ref.test(temp) ) {
                            //恢复数据到编辑前
                            obj.update({
                                HPrice: oldText
                            });
                            table.render(option);
                            layer.msg("单价请输入大于0的数字!");
                            layer.msg("单价请输入大于等于0的数字!");
                            return;
                        }
@@ -2202,11 +2202,8 @@
                    //单价格式校验
                    temp = option.data[i]["HPrice"] + "";
                    if (temp == "0") {
                        layer.msg("第" + (i + 1) + "行:单价不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + (i + 1) + "行:单价请输入大于0的数字!");
                    if (!ref.test(temp)) {
                        layer.msg("第" + (i + 1) + "行:单价请输入大于等于0的数字!");
                        return false;
                    }