wtt
2024-08-12 3e52e631cb9993cc0f07ebd270d20f72c1492e1d
WebTM/views/ÏúÊÛ¹ÜÀí/ÏúÊÛµ÷¼Ûµ¥/Xs_SellOutChangeBill.html
@@ -47,6 +47,7 @@
                        <div class="layui-btn-group">
                            <button type="button" id="set_SaveBill" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button>
                            <button type="button" id="set_CheckBill" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_CheckBill">审核</button>
                            <button type="button" id="btn-print" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="btn-print">打印</button>
                            <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                        </div>
                    </div>
@@ -219,10 +220,12 @@
                    <script type="text/html" id="toolbarDemo">
                        <div class="layui-btn-container">
                            <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-AddLine"><i class="layui-icon layui-icon-form"></i>增加一行</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-InsertLine"><i class="layui-icon layui-icon-form"></i>插入一行</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLine"><i class="layui-icon layui-icon-form"></i>复制一行</button>-->
    <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-InsertLine"><i class="layui-icon layui-icon-form"></i>插入一行</button>
    <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLine"><i class="layui-icon layui-icon-form"></i>复制一行</button>-->
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Up"><i class="layui-icon layui-icon-form"></i>上移</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Under"><i class="layui-icon layui-icon-form"></i>下移</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="get_Inventory" id="get_Inventory"><i class="layui-icon layui-icon-form"></i>库存查询</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="get_InOutSum" id="get_InOutSum"><i class="layui-icon layui-icon-form"></i>出入库记录查询</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="set_HideColumn"><i class="layui-icon layui-icon-form"></i>列设置</button>
                        </div>
                    </script>
@@ -343,6 +346,12 @@
            });
            //#endregion
            //#region æ‰“印按钮
            form.on('submit(btn-print)', function (data) {
                get_PrintReport();
            });
            //#endregion
            //#region ä¿å­˜æŒ‰é’®
            form.on('submit(Saver)', function (data) {
                if (OperationType == 1 || OperationType == 4) {
@@ -436,6 +445,12 @@
                    case 'set_HideColumn':
                        get_HideColumn();
                        break;
                    //库存查询
                    case 'get_Inventory': get_Inventory();
                        break;
                    //出入库记录查询
                    case 'get_InOutSum': get_InOutSum();
                        break;
                }
            });
            //#endregion
@@ -452,7 +467,10 @@
                //数值格式校验工具
                var ref = /^\d+(\.\d+)?$/;          //非负数正则表达式
                var temp = "";
                var Dec = getDecByMaterID(obj.data.HMaterID) //获取精度
                var HQtyDec = (Dec["HQtyDec"] == null || Dec["HQtyDec"] == 0) ? 4 : Dec["HQtyDec"];  //数量精度
                var HPriceDec = (Dec["HPriceDec"] == null || Dec["HPriceDec"] == 0) ? 4 : Dec["HPriceDec"];  //单价精度
                var HMoneyDec = (Dec["HMoneyDec"] == null || Dec["HMoneyDec"] == 0) ? 2 : Dec["HMoneyDec"];  //金额精度
                // å•元格编辑之前的值
                var oldText = $(this).prev().text();
                var value = obj.value //得到修改后的值
@@ -482,9 +500,9 @@
                        var HTaxMoney_New = HQty_New * HTaxPrice_New * 1;               //新价税合计=新数量*新含税单价
                        //设置数据小数位数
                        HQty_New = dealDoubleToFixed(HQty_New, 1);
                        HTaxPrice_New = dealDoubleToFixed(HTaxPrice_New, 3);
                        HTaxMoney_New = dealDoubleToFixed(HTaxMoney_New, 2);
                        HQty_New = Number(HQty_New.toFixed(HQtyDec));
                        HTaxPrice_New = Number(HTaxPrice_New.toFixed(HPriceDec));
                        HTaxMoney_New = Number(HTaxMoney_New.toFixed(HMoneyDec));
                        //同步更新表格和缓存对应的值
                        obj.update({
@@ -535,9 +553,9 @@
                        var HTaxMoney_New = HQty_New * HTaxPrice_New;               //新价税合计=新数量*新含税单价
                        //设置数据小数位数
                        HQty_New = dealDoubleToFixed(HQty_New, 1);
                        HTaxPrice_New = dealDoubleToFixed(HTaxPrice_New, 3);
                        HTaxMoney_New = dealDoubleToFixed(HTaxMoney_New, 2);
                        HQty_New = Number(HQty_New.toFixed(HQtyDec));
                        HTaxPrice_New = Number(HTaxPrice_New.toFixed(HPriceDec));
                        HTaxMoney_New = Number(HTaxMoney_New.toFixed(HMoneyDec));
                        //同步更新表格和缓存对应的值
                        obj.update({
@@ -696,8 +714,8 @@
                        , { 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
                        , { field: 'HQty_Old', title: '原数量', width: 100, totalRow: true, style: 'background-color:#efefef4d;'}
                        , { field: 'HQty_New', title: '新数量', width: 100, totalRow: true, edit: 'text', event: "HQty_New" }
                        , { field: 'HQty_Old', title: '原数量', width: 100, hide: true, totalRow: true, style: 'background-color:#efefef4d;'}
                        , { field: 'HQty_New', title: '新数量', width: 100, hide: true, totalRow: true, edit: 'text', event: "HQty_New" }
                        , { field: 'HTaxPrice_Old', title: '原含税单价', width: 100, totalRow: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HTaxPrice_New', title: '新含税单价', width: 100, totalRow: true, edit: 'text', event: "HTaxPrice_New" }
                        , { field: 'HTaxRate_Old', title: '原税率', width: 100, totalRow: true, style: 'background-color:#efefef4d;' }
@@ -852,7 +870,7 @@
                var data = getUrlVars_JSON().data;
                var dataArray = [];
                for (var i = 0; i < data.length; i++) {
                    var temp = getPushSourceBillInit(data[i].hmainid, data[i].hsubid);
                    var temp = getPushSource_SellOutBillInit(data[i].hmainid, data[i].hsubid);
                    if (temp != "none") {
                        dataArray.push(temp);
                    } else {
@@ -861,25 +879,10 @@
                }
                form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                    "HDeptID": dataArray[0].HDeptID
                    , "HDeptName": dataArray[0].部门
                    , "HEmpID": dataArray[0].HEmpID
                    , "HEmpName": dataArray[0].业务员
                    , "HManagerID": dataArray[0].HManagerID
                    , "HManagerName": dataArray[0].主管
                    , "HMainSourceInterID": "0"
                    "HMainSourceInterID": dataArray[0].hmainid
                    , "HMainSourceEntryID": "0"
                    , "HMainSourceBillNo": ""
                    , "HMainSourceBillNo": dataArray[0].单据号
                    , "HMainSourceBillType": $("#BillType").val()
                    , "HSupID": dataArray[0].HCusID
                    , "HSupName": dataArray[0].客户
                    , "HLinkMan": dataArray[0].联系人
                    , "HLinkPhone": dataArray[0].联系电话
                    , "HSellSID": dataArray[0].HSellSID
                    , "HSellSName": dataArray[0].销售方式
                    , "HCurID": dataArray[0].HCurID
                    , "HCurName": dataArray[0].币别
                    , "HExRate": dataArray[0].汇率
                });
                //子表  èµ‹å€¼
@@ -887,33 +890,21 @@
                for (var i = 0; i < dataArray.length; i++) {
                    rowdata.push(
                        {
                            "HMaterID": dataArray[i].HMaterID
                            "HMaterID": dataArray[i].hmaterid
                            , "物料代码": dataArray[i].物料代码
                            , "物料名称": dataArray[i].物料名称
                            , "规格型号": dataArray[i].规格型号
                            , "HUnitID": dataArray[i].HUnitID
                            , "HUnitID": dataArray[i].hunitid
                            , "计量单位": dataArray[i].计量单位
                            , "HQtyMust": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HQty": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HPrice": dealDoubleToFixed(dataArray[i].单价, 3)
                            , "HTaxPrice": dealDoubleToFixed(dataArray[i].含税单价, 3)
                            , "HTaxRate": dataArray[i].税率
                            , "HMoney": dealDoubleToFixed(dataArray[i].金额, 2)
                            , "HTaxMoney": dealDoubleToFixed(dataArray[i].价税合计, 2)
                            , "HWHID": $("#HWHID").val()
                            , "发货仓库": $("#HWHName").val()
                            , "HQty_Old": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HQty_New": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HTaxPrice_Old": dealDoubleToFixed(dataArray[i].含税单价, 3)
                            , "HTaxPrice_New": dealDoubleToFixed(dataArray[i].含税单价, 3)
                            , "HTaxRate_Old": dataArray[i].税率
                            , "HTaxRate_New": dataArray[i].税率
                            , "HTaxMoney_Old": dealDoubleToFixed(dataArray[i].数量 * dataArray[i].含税单价, 2)
                            , "HTaxMoney_New": dealDoubleToFixed(dataArray[i].数量 * dataArray[i].含税单价, 2)
                            , "HRemark": ""
                            , "HQty_Full": "0"
                            , "HQty_Empty": "0"
                            , "HQty_Back": "0"
                            , "HCostPrice": "0"
                            , "HCostMoney": "0"
                            , "HSalePrice": "0"
                            , "HSeOrderInterID": dataArray[i].hmainid
                            , "HSeOrderEntryID": dataArray[i].hsubid
                            , "HSeOrderBillNo": dataArray[i].单据号
                            , "HSourceInterID": dataArray[i].hmainid
                            , "HSourceEntryID": dataArray[i].hsubid
@@ -921,30 +912,6 @@
                            , "HSourceBillType": dataArray[i].HBillType
                            , "HRelationQty": "0"
                            , "HRelationMoney": "0"
                            , 'HSPID': "0"
                            , 'HSPName': ""
                            , 'HSPGroupID': "0"
                            , "HSPGroupName": ""
                            , 'HSCWHID': "0"
                            , 'HSCWHName': ""
                            , 'HSCSPID': "0"
                            , 'HSCSPName': ""
                            , 'HBatchNo': ""
                            , 'HPOOrderInterID': "0"
                            , 'HPOOrderEntryID': "0"
                            , 'HPOOrderBillNo': ""
                            , 'HPropertyID': "0"
                            , 'HPropertyName': ""
                            , 'HSecUnitID': "0"
                            , 'HSecUnitName': ""
                            , 'HSecUnitRate': "0"
                            , 'HEngineNum': ""
                            , 'HUnderPanNum': ""
                            , 'HLeaveFactCard': ""
                        }
                    );
                }
@@ -1228,6 +1195,56 @@
            }
            //#endregion
            //#region åº“存查询
            function get_Inventory() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1 && data[0].HMaterID != 0) {
                    var HMaterID = data[0].HMaterID.toString();
                    //弹窗方法
                    layer.open({
                        type: 2//弹窗类型
                        , skin: 'layui-layer-rim' //加上边框
                        , area: ['90%', '90%']//大小
                        , title: '库存查询列表'//标题
                        , shift: 2//弹出动画
                        , content: ['../../仓存管理/条码报表/Kf_ICinventoryQueryReport.html?Type=1&HMaterID=' + HMaterID, 'yes']
                        , btn: ['取消']
                        , btn1: function (index, layero) {
                            layer.close(index);
                        }
                    })
                }
                else {
                    layer.msg('请选择一行有物料数据查询!');
                }
            }
            //#endregion
            //#region å‡ºå…¥åº“记录查询
            function get_InOutSum() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1 && data[0].HMaterID != 0) {
                    var HMaterID = data[0].HMaterID.toString();
                    layer.open({
                        type: 2//弹窗类型
                        , skin: 'layui-layer-rim' //加上边框
                        , area: ['90%', '90%']//大小
                        , title: '出入库记录列表'//标题
                        , shift: 2//弹出动画
                        , content: ['../../仓存管理/条码报表/Kf_StockInOutSumQueryReport.html?Type=1&HMaterID=' + HMaterID, 'yes']
                        , btn: ['取消']
                        , btn1: function (index, layero) {
                            layer.close(index);
                        }
                    })
                }
                else {
                    layer.msg('请选择一行有物料数据查询!');
                }
            }
            //#endregion
            //#region ä¸Šç§»
            function btn_up() {
                var checkStatus = table.checkStatus('mainTable')
@@ -1333,8 +1350,8 @@
                    success: function (data1) {
                        if (data1.data.length != 0) {
                            var dataCol = [];//数据库查询出的列数据
                            var titleData = ["HMaterID", "HUnitID","源单内码","源单子内码","源单号","源单类型","关联数量","关联金额"];//不需要显示的字段 å¯æ‰©å±•
                            titleData = [];
                            var titleData = ["HMaterID", "HUnitID","源单内码","源单子内码","源单号","源单类型","关联数量","关联金额","HQty_Old","HQty_New"];//不需要显示的字段 å¯æ‰©å±•
                            //titleData = [];
                            dataCol = data1.data[0].HGridString.split(',');
@@ -1505,6 +1522,40 @@
            }
            //#endregion
            //#region æ‰“印
            function get_PrintReport() {
                //#region åˆ¤æ–­æºå•状态
                //var HSourceBillData = "";
                //var HSourceBillData = getSourceBillStatus_SellOutChangeBill();            //获取源单数据
                //if (HSourceBillData != "none") {
                //    if (HSourceBillData.length == 0) {
                //        layer.alert("打印失败!未查询到单据信息!", { icon: 5 });
                //        return;
                //    } else if (HSourceBillData[0]["状态"] != "已审核") {
                //        layer.alert("打印失败!单据状态未为'已审核'状态!", { icon: 5 });
                //        return;
                //    }
                //} else {
                //    return;
                //}
                //#endregion
                var InterID = $("#HInterID").val();
                layer.open({
                    type: 2
                    , area: ['50%', '50%']
                    , title: '打印模版选择'
                    , shade: 0.6 //遮罩透明度
                    , maxmin: false //允许全屏最小化
                    , anim: 0 //0-6的动画形式,-1不开启
                    , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + InterID + '&MyMsg=' + InterID + '&Type=Xs_SellOutChangeBillList', 'yes']
                    , resize: false
                })
            }
            //#endregion
            //#region æ ¹æ®ä¸»å†…码与子内码获取源单销售出库单数据
            function getPushSource_SellOutBillInit(HSourceInterID, HSourceEntryID) {
                var res = "none";
@@ -1531,6 +1582,56 @@
                return res;
            }
            //#endregion
            //#region èŽ·å–é”€å”®è°ƒä»·å•å•æ®çŠ¶æ€
            function getSourceBillStatus_SellOutChangeBill() {
                var HSourceBillData = "none";
                var sWhere = " and hmainid = " + $("#HInterID").val();
                $.ajax({
                    url: GetWEBURL() + '/Xs_SellOutChangeBill/list',
                    async: false,
                    type: "GET",
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] },
                    success: function (data1) {
                        if (data1.count == 1) {
                            HSourceBillData = data1.data;
                        } else {
                            layer.alert(data1.code + "单据状态判断失败!", { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
                return HSourceBillData;
            }
            //#endregion
            //#region æ ¹æ®ç‰©æ–™ID获取精度
            function getDecByMaterID(HMaterID) {
                var resultData = {};
                $.ajax({  // å¼‚步请求
                    url: GetWEBURL() + "Gy_Material/getDecByID",  //请求地址
                    async: false,   //是否开启异步
                    type: "GET",   //请求类型
                    data: {   //定义发送到服务器的数据
                        "HMaterID": HMaterID     //  å°†hmaterid作为请求参数发送
                    },
                    success: function (result) {   // å½“请求成功时,执行这个函数
                        if (result.code == 1) { // å¦‚果服务器返回的数据中的`code字段等于1,这可能表示审核操作成功执行
                            var data = result.data; //声明data变量,并将其赋值为result对象中的data属性
                            resultData = data[0];   //将data数组(或类数组对象)的第一个元素赋值给变量resultData
                        }
                        //else {
                        //    layer.alert(result.Message, { icon: 5, btn: ['退出'], time: 100000, offset: 't' }); //result.msg对象,提示弹窗 ç±»åž‹ä¸º5, æŒ‰é’®ï¼Œå’ŒæŒ‰é’®çš„名称为退出  æ—¶é—´ ä¸º100秒,以及偏移量(`offset: 't'
                        //}
                    }, error: function () {
                        layer.alert("发生错误!", { icon: 5 });  //提示弹窗 å‘生错误 ï¼Œè­¦ç¤ºæ ‡å¿—为5的
                    }
                });
                return resultData;
            }
            //#endregion
            //#endregion