智云srmLayUi(安瑞和瑞琪)(通用版本)
1
yangle
2023-12-26 0ca6e523743f8772acef18f8b2e42c2df5a093ad
WebSRM/layuiAdmin.std-v1.2.1/src/views/SRM/SRM_POOrderBillList.html
@@ -31,17 +31,7 @@
                                            <span>更多</span>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">订单状态</label>
                                        <div class="layui-input-block">
                                            <select name="HStatus" id="HStatus" lay-filter="">
                                                <option value="" selected="">全部</option>
                                                <option value="未确认">未确认</option>
                                                <option value="已确认">已确认</option>
                                                <option value="已驳回">已驳回</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">单据号</label>
                                        <div class="layui-input-block">
@@ -52,6 +42,12 @@
                                        <label class="layui-form-label">物料编码</label>
                                        <div class="layui-input-block">
                                            <input type="text" class="layui-input" name="HShortNumber" id="HShortNumber">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">旧物料编码</label>
                                        <div class="layui-input-block">
                                            <input type="text" class="layui-input" name="HOldMaterNumber" id="HOldMaterNumber">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
@@ -134,7 +130,38 @@
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">订单状态</label>
                                            <div class="layui-input-block">
                                                <select name="HStatus" id="HStatus" lay-filter="">
                                                    <option value="" selected="">全部</option>
                                                    <option value="未确认">未确认</option>
                                                    <option value="已确认">已确认</option>
                                                    <option value="已驳回">已驳回</option>
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">完成状态</label>
                                            <div class="layui-input-block">
                                                <select name="HFinishStatus" id="HFinishStatus" lay-filter="">
                                                    <option value="">全部</option>
                                                    <option value="未完成" selected="">未完成</option>
                                                    <option value="已完成">已完成</option>
                                                </select>
                                            </div>
                                        </div>
                                        <!--瑞琪-->
                                        <div class="layui-inline">
                                            <label class="layui-form-label">业务关闭</label>
                                            <div class="layui-input-block">
                                                <select id="HIsClose" name="HIsClose" lay-filter="">
                                                    <option value="全部" selected>全部</option>
                                                    <option value="是">是</option>
                                                    <option value="否">否</option>
                                                </select>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
@@ -154,6 +181,7 @@
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-generate"><i class="layui-icon layui-icon-file"></i>生成送货单</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-exit"><i class="layui-icon layui-icon-return"></i>退出</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-HideColumn"><i class="layui-icon layui-icon-return"></i>隐藏列设置</button>
                            <button type="button" class="layui-btn layui-btn-sm" lay-event="set_dao"><i class="layui-icon layui-icon-form"></i>导出</button>
                        </div>
                    </script>
                </div>
@@ -202,14 +230,15 @@
            base: '../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index' //主入口模块
        }).use(['index', 'form', 'laydate', 'code', 'table', 'element', 'layer'], function () {
        }).use(['index', 'form', 'laydate', 'code', 'table', 'element', 'layer','excel'], function () {
            var $ = layui.$
                , admin = layui.admin
                , layer = layui.layer
                , laydate = layui.laydate
                , table = layui.table
                , form = layui.form
                , element = layui.element;
                , element = layui.element
                , excel = layui.excel;
            //常规用法
            laydate.render({
                elem: '#HDate1'
@@ -240,7 +269,7 @@
                //$("#HBeginDate").val("2022-03-14");
                //$("#HEndDate").val(Format(new Date(), "yyyy-MM-dd"));
                var columns = [
                    { type: 'checkbox', fixed: 'left' }
                    { type: 'checkbox', fixed: 'left', totalRowText: '合计' }
                    //{ type: 'radio', fixed: true }
                    , { field: 'sorderid', title: '序号', width: 80/*, fixed: true */ }
                    , { field: 'hmainid', title: 'hmainid', sort: true, /*fixed: true,*/ hide: true }
@@ -260,8 +289,8 @@
                    , { field: '计量单位', title: '计量单位', width: 80, 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: '交货日期', width: 180, sort: true }
                    , { field: '日期', title: '日期', width: 120, sort: true/*, fixed: 'left' */ }
@@ -416,7 +445,7 @@
                            data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });
                        }
                        //在列表左边添加勾选框
                        col.push({ type: 'checkbox', fixed: 'left' });
                        col.push({ type: 'checkbox', fixed: 'left', totalRowText: '合计' });
                        for (var i = 0; i < data.length; i++) {
                            // if (data[i].name == 'HInterID' || data[i].name == 'HBillType' || data[i].name == 'hmainid') {
                            if ($.inArray(data[i].name, titleData) > -1) {
@@ -433,7 +462,11 @@
                                        col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, templet: "<div>{{d." + data[i].name + " ==null ?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd')}}</div>", width: 200 });
                                        break;
                                    default:
                                        col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200 });
                                        if (data[i].name == '订单数量' || data[i].name == '已发货数量' || data[i].name == '未发货数量' || data[i].name == '剩余收料数量' || data[i].name == '未到货数量' || data[i].name == '累计收料数量' || data[i].name == '剩余入库数量' || data[i].name == '入库数量') {
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200, totalRow: true });
                                        } else {
                                            col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200 });
                                        }
                                }
                            }
                        }
@@ -444,9 +477,10 @@
                            , cols: [col]
                            , data: data1.data
                            , height: 'full-80'
                            ,totalRow: true
                            , page: true
                            , cellMinWidth: 90
                            , limit: 50
                            , limit: 500
                            , limits: [50, 500, 5000, 20000]
                        }
                        table.render(option);
@@ -471,12 +505,16 @@
            //查询条件
            function get_FastQuery(table, option) {
                var sqlWhere = "";
                if ($("#HFinishStatus").val() != "")
                    sqlWhere += " and 完成状态 like ^^%" + $("#HFinishStatus").val() + "%^^";
                if ($("#HStatus").val() != "")
                    sqlWhere += " and 状态 like ^^%" + $("#HStatus").val() + "%^^";
                if ($("#HBillNo").val() != "")
                    sqlWhere += " and 单据号 like ^^%" + $("#HBillNo").val() + "%^^";
                if ($("#HShortNumber").val() != "")
                    sqlWhere += " and 物料编码 like ^^%" + $("#HShortNumber").val() + "%^^";
                if ($("#HOldMaterNumber").val() != "")
                    sqlWhere += " and 旧物料编码 like ^^%" + $("#HOldMaterNumber").val() + "%^^";
                if ($("#HNumber").val() != "")
                    sqlWhere += " and 物料代码 like ^^%" + $("#HNumber").val() + "%^^";
                if ($("#HName").val() != "")
@@ -485,8 +523,8 @@
                    sqlWhere += " and 规格型号 like ^^%" + $("#HModel").val() + "%^^";
                if ($("#HClStatus").val() != "")
                    sqlWhere += " and 关闭状态 like ^^%" + $("#HClStatus").val() + "%^^";
                //if ($("#HPURCHASEORGID").val() != "")
                //    sqlWhere += " and 采购组织 like ^^%" + $("#HPURCHASEORGID").val() + "%^^";
                if ($("#HPURCHASEORGID").val() != "" && $("#HPURCHASEORGID option:selected").text() != "安瑞集团")
                    sqlWhere += " and HPURCHASEORGID = ^^" + $("#HPURCHASEORGID").val() + "^^";
                if ($("#HDate1").val() != "") {
                    sqlWhere += " and 日期 >= ^^" + $("#HDate1").val() + "^^";
                }
@@ -499,6 +537,15 @@
                    }
                    else if ($("#HISGenerate").val() == "否") {
                        sqlWhere += " and 未关联数量 > 0";
                    }
                }
                /*瑞琪*/
                if ($("#HIsClose").val() != "") {
                    if ($("#HIsClose").val() == "是") {
                        sqlWhere += " and 业务关闭 = ^^已关闭^^";
                    }
                    else if ($("#HIsClose").val() == "否") {
                        sqlWhere += " and 业务关闭 = ^^未关闭^^";
                    }
                }
                var Time = $("#Time").val();
@@ -556,11 +603,28 @@
                        var checkStatus = table.checkStatus('mainTable')
                            , data = checkStatus.data;
                        _cur_page = $(".layui-laypage-em").next().html();
                        var HInterIDArr = "";
                        var HBillNoArr = "";
                        var HBillInter = "";
                        for (let i = 0; i < data.length; i++) {
                            HInterIDArr += data[i].hmainid.toString() + ",";
                            HBillNoArr += "'" + data[i].单据号.toString() + "'" + ",";
                            HBillInter += data[i].单据号.toString() + "@" + data[i].hmainid.toString() + ",";
                        }
                        HInterIDArr = HInterIDArr.substring(0, HInterIDArr.length - 1)//内码
                        HBillNoArr = HBillNoArr.substring(0, HBillNoArr.length - 1)//单据号
                        HBillInter = HBillInter.substring(0, HBillInter.length - 1)//单据号 + @ + 内码拼接
                        var oData = JSON.stringify(HInterIDArr) + ";" + JSON.stringify(HBillInter) + ";" + sessionStorage["HUserName"];
                        layer.confirm('是否确认单据?', { icon: 3, title: '提示' }, function (index) {
                            $.ajax({
                                type: "get",
                                type: "post",
                                url: GetWEBURL() + "POOrderAccept",
                                data: { "HInterID": data[0]["hmainid"].toString(), "HBillNo": data[0]["单据号"].toString(), "HUser": sessionStorage["HUserName"] },
                                data: { "oData": oData },
                                success: function (result) {
                                    if (result.count == 1) { // 说明验证成功了,
                                        layer.msg(result.Message, { icon: 1 });
@@ -642,6 +706,9 @@
                            layer.alert("请选择数据", { icon: 5 });
                            return;
                        }
                        if (data[0].完成状态 == "已完成") {
                            return layer.msg('订单已完成!')
                        }
                        ajaxLabelData = data;
                        //根据选中的采购订单,重新从金蝶云同步采购订单关联数量过来。考虑采购订单删除和关闭状态,同步状态
                        var ids = "";
@@ -722,6 +789,9 @@
                            , data = checkStatus.data;
                        if (data.length == 0) {
                            return layer.msg('请选择数据')
                        }
                        if (data[0].完成状态 == "已完成") {
                            return layer.msg('订单已完成!')
                        }
                        layer.open({
                            type: 2
@@ -812,6 +882,30 @@
                            }
                        });
                        break;
                    case 'set_dao':
                        //获取列表列数据源
                        var ColName = [];
                        for (var i = 1; i < option.cols[0].length; i++) {
                            if (option.cols[0][i]["hide"] != true) {
                                ColName.push(option.cols[0][i]["field"]);
                            }
                        }
                        //绑定数据
                        var data = excel.filterExportData(option.data, ColName)
                        //赋值于表头列名
                        var Title = [];
                        for (var i = 0; i < ColName.length; i++) {
                            Title.push("\"" + ColName[i] + "\":\"" + ColName[i] + "\"");
                        }
                        var TitleName = JSON.parse("{" + Title.toString() + "}");
                        data.unshift(TitleName);
                        //导出 sheet1 工作表名
                        excel.exportExcel({
                            sheet1: data
                        }, '采购订单列表.xlsx', 'xlsx');
                        break;
                };
            });
        });