duhe
2024-01-17 750574a61843cf9a85f8c871ce9e4cba8f8a39d1
WebTM/views/ÏúÊÛ¹ÜÀí/ÏúÊÛ¶©µ¥/Xs_SeOrderBillList.html
@@ -125,11 +125,15 @@
                        <script type="text/html" id="toolbarDemo">
                            <div class="layui-btn-container">
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-Add" id="btn-Add"><i class="layui-icon layui-icon-file-b"></i>新增</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-Copy" id="btn-Copy"><i class="layui-icon layui-icon-file-b"></i>复制</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-Edit" id="btn-Edit"><i class="layui-icon layui-icon-form"></i>编辑</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-Delete" id="btn-Delete"><i class="layui-icon layui-icon-delete"></i>删除</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushSeOrderChangeBill" id="btn-PushSeOrderChangeBill"><i class="layui-icon layui-icon-delete"></i>下推(销售订单变更单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushExceptiveCheckRequestBill" id="btn-PushExceptiveCheckRequestBill"><i class="layui-icon layui-icon-delete"></i>下推(特批申请单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushICMOBill" id="btn-PushICMOBill"><i class="layui-icon layui-icon-delete"></i>下推(生产订单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushICStockBills" id="btn-PushICStockBills"><i class="layui-icon layui-icon-delete"></i>多行下推(销售出库单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="get_Refresh" id="get_Refresh"><i class="layui-icon layui-icon-refresh-3"></i>刷新</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="get_LookDown" id="get_LookDown"><i class="layui-icon layui-icon-refresh-3"></i>下查</button>
                                <!--<button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-print" id="btn-print"><i class="layui-icon layui-icon-print"></i>打印</button>-->
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_CheckBill" id="CheckBill"><i class="layui-icon layui-icon-form"></i>审核</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_AbandonCheck" id="AbandonCheck"><i class="layui-icon layui-icon-form"></i>反审核</button>
@@ -137,6 +141,7 @@
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_CancelCloseBill" id="set_CancelCloseBill"><i class="layui-icon layui-icon-form"></i>反关闭</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_Drop" id="set_Drop"><i class="layui-icon layui-icon-radio"></i>作废</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_DeDrop" id="set_DeDrop"><i class="layui-icon layui-icon-radio"></i>反作废</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" id="btn-print" lay-event="btn-print"><i class="layui-icon layui-icon-form"></i>打印</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="HideColumn" id="HideColumn"><i class="layui-icon layui-icon-form"></i>隐藏列设置</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_HideButton" id="HideButton"><i class="layui-icon layui-icon-form"></i>按钮设置</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="get_Exit" id="get_Exit"><i class="layui-icon layui-icon-logout"></i>退出</button>
@@ -209,6 +214,10 @@
                    case 'btn-Add':
                        set_AddNew();
                        break;
                    //复制
                    case 'btn-Copy':
                        set_Copy();
                        break;
                    //编辑
                    case 'btn-Edit':
                        set_ShowBill();
@@ -224,6 +233,18 @@
                    //下推(特批申请单)
                    case 'btn-PushExceptiveCheckRequestBill':
                        set_PushExceptiveCheckRequestBill();
                        break;
                    //下推(生产订单)
                    case 'btn-PushICMOBill':
                        set_PushICMOBill();
                        break;
                    //多行下推(销售出库单)
                    case 'btn-PushICStockBills':
                        set_PushICStockBills();
                        break;
                    //下查
                    case 'get_LookDown':
                        set_LookDown();
                        break;
                    //刷新
                    case 'get_Refresh': get_Refresh();
@@ -250,8 +271,7 @@
                    case 'get_Exit': Pub_Close(2);
                        break;
                    //打印
                    case 'btn-print':
                        //get_PrintReport();
                    case 'btn-print': get_PrintReport();
                        break;
                    //隐藏列设置
                    case 'HideColumn':
@@ -346,6 +366,7 @@
                    , toolbar: '#toolbarDemo'
                    , height: 'full-50'
                    , page: true
                    , totalRow: true
                    , cellMinWidth: 90
                    , limit: 50
                    , limits: [50, 500, 5000, 20000]
@@ -354,50 +375,33 @@
                       ,{ field: 'hmainid', title: 'hmainid', sort: true, hide: true }
                        , { field: '日期', title: '日期', width: 125, sort: true }
                        , { field: '单据号', title: '单据号', width: 125, sort: true }
                        , { field: '状态', title: '状态', width: 125, sort: true }
                        , { field: 'HBillType', title: 'HBillType', hide: true, sort: true }
                        , { field: 'HCusID', title: 'HCusID', hide: true, sort: true }
                        , { field: '客户代码', title: '客户代码', width: 125, sort: true }
                        , { field: '客户', title: '客户', sort: true }
                        , { field: '交货地址', title: '交货地址', width: 125, sort: true }
                        , { field: 'HSSID', title: 'HSSID', hide: true, sort: true }
                        , { field: '结算方式代码', title: '结算方式代码', width: 125, sort: true }
                        , { field: '结算方式', title: '结算方式', width: 125, sort: true }
                        , { field: '结算日期', title: '结算日期', width: 170, sort: true }
                        , { field: 'HCurID', title: 'HCurID', hide: true, sort: true }
                        , { field: '币别代码', title: '币别代码', sort: true }
                        , { field: '币别', title: '币别', sort: true }
                        , { field: '汇率', title: '汇率', sort: true }
                        , { field: 'HDeptID', title: 'HDeptID', hide: true, sort: true }
                        , { field: '部门代码', title: '部门代码', width: 125, sort: true }
                        , { field: '部门', title: '部门', width: 125, sort: true }
                        , { field: '销售方式', title: '销售方式', sort: true }
                        , { field: 'HManagerID', title: 'HManagerID', hide: true, sort: true }
                        , { field: '主管代码', title: '主管代码', sort: true }
                        , { field: '主管', title: '主管', sort: true }
                        , { field: 'HEmpID', title: 'HEmpID', hide: true, sort: true }
                        , { field: '业务员代码', title: '业务员代码', sort: true }
                        , { field: '业务员', title: '业务员', sort: true }
                        , { field: '摘要', title: '摘要', sort: true }
                        , { field: '表头备注', title: '表头备注', sort: true }
                        , { field: 'hsubid', title: 'hsubid', hide: true, sort: true }
                        , { field: '状态', title: '状态', width: 125, sort: true }
                        , { field: '是否下推生产订单', title: '是否下推生产订单', width: 125, sort: true }
                        , { field: 'HMaterID', title: 'HMaterID', hide: true, sort: true }
                        , { field: '物料代码', title: '物料代码', sort: true }
                        , { field: '物料名称', title: '物料名称', sort: true }
                        , { field: '规格型号', title: '规格型号', sort: true }
                        , { field: '批号', title: '批号', sort: true }
                        , { field: '数量', title: '数量', sort: true, totalRow: true }
                        , { field: 'HUnitID', title: 'HUnitID', hide: true, sort: true }
                        , { field: '计量单位代码', title: '计量单位代码', sort: true }
                        //, { field: '计量单位代码', title: '计量单位代码', sort: true }
                        , { field: '计量单位', title: '计量单位', sort: true }
                        , { field: '数量', title: '数量', sort: true }
                        , { field: 'HCusID', title: 'HCusID', hide: true, sort: true }
                        //, { field: '客户代码', title: '客户代码', width: 125, sort: true }
                        , { field: '客户', title: '客户', sort: true }
                        , { field: 'HEmpID', title: 'HEmpID', hide: true, sort: true }
                        //, { field: '业务员代码', title: '业务员代码', sort: true }
                        , { field: '业务员', title: '业务员', sort: true }
                        , { field: '单价', title: '单价', sort: true }
                        , { field: '金额', title: '金额', sort: true }
                        , { field: '税率', title: '税率', sort: true }
                        , { field: '税额', title: '税额', sort: true }
                        , { field: '价税合计', title: '价税合计', sort: true }
                        , { field: '源单单号', title: '源单单号', sort: true }
                        , { field: '计划跟踪号', title: '计划跟踪号', sort: true }
                        , { field: '表体备注', title: '表体备注', sort: true }
                        , { field: '含税单价', title: '含税单价', sort: true }
                        , { field: '金额', title: '金额', sort: true, totalRow: true }
                        , { field: '价税合计', title: '价税合计', sort: true, totalRow: true }
                        , { field: '表头备注', title: '表头备注', sort: true }
                        , { field: '关联数量', title: '销售出库关联数量', sort: true, totalRow: true }
                        , { field: '未关联数量', title: '销售出库未关联数量', sort: true, totalRow: true }
                        , { field: '生产关联数量', title: '生产关联数量', sort: true, totalRow: true }
                        , { field: '生产未关联数量', title: '生产未关联数量', sort: true, totalRow: true }
                        , { field: '制单人', title: '制单人', width: 125, sort: true }
                        , { field: '制单日期', title: '制单日期', width: 200, templet: "<div>{{d.制单日期 ==null ?'':layui.util.toDateString(d.制单日期, 'yyyy-MM-dd HH:mm:ss')}}</div>", sort: true }
                        , { field: '审核人', title: '审核人', width: 125, sort: true }
@@ -409,6 +413,30 @@
                        , { field: '作废人', title: '作废人', width: 125, sort: true }
                        , { field: '作废日期', title: '作废日期', width: 200, templet: "<div>{{d.作废日期 ==null ?'':layui.util.toDateString(d.作废日期, 'yyyy-MM-dd HH:mm:ss')}}</div>", sort: true }
                        //, { field: 'HBillType', title: 'HBillType', hide: true, sort: true }
                        //, { field: '交货地址', title: '交货地址', width: 125, sort: true }
                        //, { field: 'HSSID', title: 'HSSID', hide: true, sort: true }
                        //, { field: '结算方式代码', title: '结算方式代码', width: 125, sort: true }
                        //, { field: '结算方式', title: '结算方式', width: 125, sort: true }
                        //, { field: '结算日期', title: '结算日期', width: 170, sort: true }
                        //, { field: 'HCurID', title: 'HCurID', hide: true, sort: true }
                        //, { field: '币别代码', title: '币别代码', sort: true }
                        //, { field: '币别', title: '币别', sort: true }
                        //, { field: '汇率', title: '汇率', sort: true }
                        //, { field: 'HDeptID', title: 'HDeptID', hide: true, sort: true }
                        //, { field: '部门代码', title: '部门代码', width: 125, sort: true }
                        //, { field: '部门', title: '部门', width: 125, sort: true }
                        //, { field: '销售方式', title: '销售方式', sort: true }
                        //, { field: 'HManagerID', title: 'HManagerID', hide: true, sort: true }
                        //, { field: '主管代码', title: '主管代码', sort: true }
                        //, { field: '主管', title: '主管', sort: true }
                        //, { field: '摘要', title: '摘要', sort: true }
                        //, { field: '批号', title: '批号', sort: true }
                        //, { field: '税额', title: '税额', sort: true }
                        //, { field: '源单单号', title: '源单单号', sort: true }
                        //, { field: '计划跟踪号', title: '计划跟踪号', sort: true }
                        //, { field: '表体备注', title: '表体备注', sort: true }
                    ]]
                    , done: function () {
                        soulTable.render(this);
@@ -430,7 +458,32 @@
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] },
                    success: function (data1) {
                        if (data1.count == 1) {
                            option.data = data1.data;
                            //设置列表同一个单据只有第一条数据显示主表信息,其它记录只显示子表信息
                            //获取子表列数据
                            var colList = [];
                            for (var i = 0; i < option.cols[0].length; i++) {
                                colList.push(option.cols[0][i].field);
                            }
                            //设置数据
                            var result = data1.data;
                            var temp = "";
                            for (var i = 0; i < result.length; i++) {
                                if (temp != result[i]["hmainid"]) {
                                    temp = result[i]["hmainid"];
                                } else {
                                    var initIndex = $.inArray("hmainid", colList);
                                    var lastIndex = $.inArray("hsubid", colList);
                                    for (var j = initIndex + 1; j < lastIndex; j++) {
                                        var fieldName = colList[j];
                                        result[i][fieldName] = "";
                                    }
                                }
                            }
                            option.data = result;
                            table.render(option);
                            layer.close(ajaxLoad);
@@ -505,6 +558,12 @@
                if (HMangerID) {
                    sWhere += " and ä¸»ç®¡ like '%" + HMangerID + "%'";
                }
                sWhere += addSWhereByOpenType();
                //根据用户过滤用户关联客户的记录
                sWhere += getSWhereByHUser();
                get_Display(sWhere);
                sWhere = "";//调用接口后清空sWhere缓存
            }
@@ -575,6 +634,37 @@
                    }
                });
            }
            //#endregion
            //#region å¤åˆ¶
            function set_Copy() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                    var hID = data[0].hmainid.toString();
                    layer.open({
                        type: 2
                        , area: ['100%', '100%']
                        , title: '复制销售订单'
                        , closeBtn: 1
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: '../../销售管理/销售订单/Add_Edit_Xs_SeOrderBillList.html?OperationType=2&linterid=' + hID + '&HSouceBillType=0&closeType=1'
                        , resize: false,
                        end: function () {
                            //刷新页面,
                            $("#btnSearch").trigger('click');
                        }
                        , cancel: function () {
                        }
                    })
                } else {
                    layer.msg('请选择一行数据编辑!');
                }
            }
            //#endregion
@@ -652,6 +742,12 @@
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                    if (data[0].状态 != "已审核") {
                        layer.alert("下推失败!原因:单据状态不为'已审核'状态!!", { icon: 5 });
                        return;
                    }
                    var hID = data[0].hmainid.toString();
                    layer.open({
                        type: 2
@@ -683,6 +779,12 @@
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                    if (data[0].状态 != "创建") {
                        layer.alert("下推失败!原因:单据状态不为'创建'状态!!", { icon: 5 });
                        return;
                    }
                    var hID = data[0].hmainid.toString();
                    layer.open({
                        type: 2
@@ -709,6 +811,128 @@
            }
            //#endregion
            //#region ä¸‹æŽ¨(生产订单-无列表)
            function set_PushICMOBill() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                    if (data[0].状态 != "已审核") {
                        layer.alert("下推失败!原因:单据状态不为'已审核'状态!!", { icon: 5 });
                        return;
                    }
                    var hID = data[0].hmainid.toString();
                    var hsubid = data[0].hsubid.toString();
                    layer.open({
                        type: 2
                        , area: ['100%', '100%']
                        , title: '下推-生产订单(无列表)'
                        , closeBtn: 1
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: '../../生产管理/生产任务单/Sc_ICMOBillEdit_NoTable.html?OperationType=4&linterid=' + hID + '&hsubid=' + hsubid
                        , resize: false,
                        end: function () {
                            //刷新页面,
                            $("#btnSearch").trigger('click');
                        }
                        , cancel: function () {
                        }
                    })
                } else {
                    layer.msg('请选择一行数据编辑!');
                }
            }
            //#endregion
            //#region å¤šè¡Œä¸‹æŽ¨ï¼ˆé”€å”®å‡ºåº“单)
            function set_PushICStockBills() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (data.length > 0) {
                    var dataArray = [];
                    var HCusName = data[0].客户;
                    var HEmpName = data[0].业务员;
                    for (var i = 0; i < data.length; i++) {
                        var temp = {
                            "hmainid": data[i].hmainid
                            , "hsubid": data[i].hsubid
                            , "HBillStatus": data[i].状态
                            , "HSourceBillType": "1401"
                        }
                        dataArray.push(temp);
                        if (data[i].状态 != "已审核") {
                            layer.msg("下推失败!单据号【" + data[i].单据号 + "】单据状态不为已审核状态!");
                            return;
                        }
                        if (data[i].客户 != HCusName) {
                            layer.msg("下推失败!已经选中的记录中存在不同客户!");
                            return;
                        }
                        if (data[i].业务员 != HEmpName) {
                            layer.msg("下推失败!已经选中的记录中存在不同业务员!");
                            return;
                        }
                    }
                    var datajson = {
                        "data": dataArray
                    };
                    var url = encodeURI('../../领料发货/销售出库/Kf_SellOutBill.html?OperationType=4&linterid=0&HSouceBillType=1401&res=' + JSON.stringify(datajson));
                    layer.open({
                        type: 2
                        , area: ['100%', '100%']
                        , title: '销售订单-多行下推销售出库单'
                        , shift: 0//弹出动画
                        , content: url
                        , btn: ['确定'],
                        // æŒ‰é’®1 çš„回调
                        end: function (index, layero, that) {
                            //刷新页面
                            $("#btnSearch").trigger('click');
                        }
                    })
                } else {
                    layer.msg('请选择数据下推!');
                }
            }
            //#endregion
            //#region ä¸‹æŸ¥
            function set_LookDown() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                    var hID = data[0].hmainid.toString();
                    layer.open({
                        type: 2
                        , area: ['100%', '100%']
                        , title: '下查单据'
                        , closeBtn: 1
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: '../../销售管理/销售订单/Xs_SeOrderBill_LookDown.html?linterid=' + hID + '&HSouceBillType=1401&closeType=1'
                        , resize: false,
                        end: function () {
                            //刷新页面,
                           /* $("#btnSearch").trigger('click');*/
                        }
                        , cancel: function () {
                        }
                    })
                } else {
                    layer.msg('请选择一行数据编辑!');
                }
            }
            //#endregion
            //#region åˆ·æ–°
            function get_Refresh() {
@@ -828,14 +1052,11 @@
            function get_PrintReport() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                if (checkStatus.data.length === 0) {
                    return layer.msg('请选择数据打印!');
                }
                else {
                    var hmainid = [];
                    for (var i = 0; i < checkStatus.data.length; i++) {
                        hmainid.push((data[i].hmainid * (10 ** 8)) + data[i].hsubid)
                    if (data[0].状态 != "已审核") {
                        layer.alert("打印失败!原因:单据状态不为'已审核'状态!!", { icon: 5 });
                        return;
                    }
                    layer.open({
@@ -845,9 +1066,12 @@
                        , shade: 0.6 //遮罩透明度
                        , maxmin: false //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + hmainid.toString() + '&MyMsg=' + hmainid.toString() + '&Type=HSeOrderBillList', 'yes']
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + data[0].hmainid.toString() + '&MyMsg=' + data[0].hmainid.toString() + '&Type=Xs_SeOrderBill', 'yes']
                        , resize: false
                    })
                }
                else {
                    layer.msg('请选择一行数据打印!');
                }
            }
            //#endregion
@@ -978,6 +1202,57 @@
            }
            //#endregion
            //#region æ ¹æ®ç”¨æˆ·èŽ·å–ç”¨æˆ·å…³è”å®¢æˆ·çš„è¿‡æ»¤æ¡ä»¶
            function getSWhereByHUser() {
                var res = "";
                $.ajax({
                    type: "GET",
                    async: false,
                    url: GetWEBURL() + "/Xs_SeOrderBill/getCusIDListByUser", //方法所在页面和方法名
                    data: { "CurUserID": sessionStorage["Czybm"], "CurUserName": sessionStorage["HUserName"] },
                    success: function (result) {
                        if (result.count == 1) {
                            res = result.data;
                        } else {
                            res = result.data;
                            layer.alert(result.code + result.Message, { icon: 5 });
                        }
                    }, error: function (err) {
                        res = " and 1 = 0";
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
                return res;
            }
            //#endregion
            //#region èŽ·å–å‚æ•°
            function getUrlVars() {
                var vars = [], hash;
                var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
                for (var i = 0; i < hashes.length; i++) {
                    hash = hashes[i].split('=');
                    vars.push(hash[0]);
                    vars[hash[0]] = hash[1];
                }
                return vars;
            }
            //#endregion
            //#region åˆ¤æ–­æ˜¯ç›´æŽ¥æ‰“开页面还是其它页面通过选择按钮打开,并显示相应数据
            function addSWhereByOpenType() {
                //获取参数
                var params = getUrlVars();
                var openType = params[params[0]]; //从参数中获取 æ‰“开方式  1直接打开 2其它页面通过选择按钮打开
                var HOrgID = params[params[1]];
                var addSWhere = "";
                if (openType == 2) {
                    addSWhere = " and çŠ¶æ€ = '已审核' and HOrgID = " + HOrgID;
                }
                return addSWhere;
            }
            //#endregion
            //#endregion
            //以上是layui模块