1
duhe
2024-08-15 40cd70d9a9d13001c1b6c2269334e8a363c562c3
WebTM/views/»ù´¡×ÊÁÏ/²É¹º»ù´¡×ÊÁÏ/Gy_Supplier_Edit.html
@@ -47,7 +47,7 @@
                                <label class="layui-form-label">创建组织</label>
                                <div class="layui-input-inline" style="margin-right: 0px;width: 100px;">
                                    <input type="text" name="HCreateOrg" id="HCreateOrg" lay-verify="HCreateOrg" autocomplete="off" placeholder="" class="layui-input" value="" readonly="readonly" style="width: 134%;">
                                    <input type="hidden" name="HCreateOrgID" id="HCreateOrgID" lay-verify="HCreateOrgID" value="0" autocomplete="off" class="layui-input" >
                                    <input type="hidden" name="HCreateOrgID" id="HCreateOrgID" lay-verify="HCreateOrgID" value="0" autocomplete="off" class="layui-input">
                                </div>
                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HCreateOrgID_BT" style=" margin-left: 36px; width: 42px; padding: 0 10px;">
                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
@@ -222,7 +222,7 @@
                        <div class="layui-row" style="margin-bottom:5px">
                            <div class="layui-inline" style="width: 585px;">
                                <label class="layui-form-label">备注</label>
                                <div class="layui-input-inline" >
                                <div class="layui-input-inline">
                                    <input type="text" name="HRemark" id="HRemark" lay-verify="HRemark" autocomplete="off" placeholder="" class="layui-input">
                                </div>
                            </div>
@@ -245,6 +245,18 @@
                                    </select>
                                </div>
                            </div>
                            <div class="layui-inline">
                                <label class="layui-form-label"> ä¾›åº”商分类:</label>
                                <div class="layui-input-inline">
                                    <input type="text" readonly name="HSupClsName" id="HSupClsName" class="layui-input" value="" style="float: left; width: 100px;">
                                    <input type="hidden" name="HSupTypeID" id="HSupTypeID" class="layui-input" value="0" style="float:left;width:150px;">
                                    <button type="button" lay-submit="" class="layui-btn" lay-filter="btnHSupTypeID" id="btnHSupTypeID" style="width:40px;">
                                        <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                    </button>
                                </div>
                            </div>
                        </div>
                        <div class="layui-row" style="margin-bottom:5px">
                            <label class="layui-form-label">禁用标志</label>
@@ -325,11 +337,32 @@
                    <input type="hidden" name="lngBillKey" id="lngBillKey">
                    <input type="hidden" name="lngBillSubKey" id="lngBillSubKey">
                    <input type="hidden" name="HMaker" id="HMaker"><!--制单人-->
                    <div class="layui-tab" lay-filter="tab-POStockInBill">
                        <ul class="layui-tab-title" lay-filter="tab-all">
                            <li lay-id="1" style="padding:1px;" class="layui-this">付款计划</li>
                        </ul>
                        <div class="layui-tab-content">
                            <!--子表-->
                            <div class="layui-tab-item layui-show">
                                <table class="layui-hide" id="mainTable" lay-filter="mainTable"></table>
                                <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-CopyLine"><i class="layui-icon layui-icon-form"></i>复制一行</button>
                                    </div>
                                </script>
                            </div>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
    <!--项目阶段表:删除-->
    <script type="text/html" id="barDemo">
        <!--<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>-->
        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
    </script>
    <script src="../../../layuiadmin/layui/layui.js"></script>
    <script src="../../../layuiadmin/Scripts/json2.js"></script>
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
@@ -365,16 +398,30 @@
            var sWhere = "";
            //#endregion
            var option;
            //#region è¿›å…¥é¡µé¢æ—¢åŠ è½½
            $("#HCreator").val(sessionStorage["HUserName"]);//创建人
            //判断操作类型
            if (OperationType == 1) {//无源单
                set_AddFNew();
                //初始化表
                get_InitGrid();
            }
            if (OperationType == 2) {//新增流水号
                var HSupTypeID = params[params[1]];//类型id
                setHNumber(HSupTypeID);
                $("#HNumber").attr("readonly", true);
                //初始化表
                get_InitGrid();
            }
            else if (OperationType == 3) {//编辑
                $("#HInterID").val(linterid);
                set_EditFromGrid();
                //初始化表
                get_InitGrid();
            }
            else {
                layer.alert("未知操作类型!", { icon: 5 });
@@ -383,6 +430,58 @@
            //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
            //头工具栏事件
            table.on('toolbar(mainTable)', function (obj) {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                //新增行表格数据
                var NewRow = {
                    "HPayType": ""
                    , "HPayRate": "0"
                    , "HPayTime": "0"
                    , "HPayRemark": ""
                };
                switch (obj.event) {
                    case 'btn-AddLine':
                        table.cache["mainTable"].push(NewRow);
                        option.data = table.cache["mainTable"];
                        table.render(option);
                        //刷新复选框
                        //checkRefresh();
                        break;
                    case 'btn-CopyLine':
                        var copydata = JSON.stringify(data);
                        if (data.length <= 0) {
                            layer.msg("请选择需要复制的一行!");
                        }
                        else if (data.length > 1) {
                            layer.msg("只能选择复制一行!");
                        }
                        else {
                            var copydata2 = copydata.substring(1, copydata.length);//去除首行字符'['
                            var copyrow = copydata2.substring(0, copydata2.length - 1);//去除末尾字符']'
                            table.cache["mainTable"].push(JSON.parse(copyrow));//将复制的行强转成json追加到表格上
                            option.data = table.cache["mainTable"];//将数据绑定到data上
                            table.render(option);//将数据渲染到表格上
                            //刷新复选框
                            //checkRefresh();
                        }
                        break;
                }
            });
            //#region å­è¡¨ï¼šè¡Œå†…事件
            table.on('tool(mainTable)', function (obj) {
                set_GridDelete(obj);   //行内删除
                /*set_GridCellCheck(obj); //行内快捷键筛选*/
            });
            //#endregion
            //结算方式弹窗
            form.on('submit(btnSearchProc)', function () {
                //页面层-自定义
@@ -480,6 +579,36 @@
                    }
                });
            });
            //选择供应商分类
            form.on('submit(btnHSupTypeID)', function () {
                layer.open({
                    type: 2
                    , area: ['90%', '90%']//大小
                    , title: '供应商列表'
                    , shade: 0.6 //遮罩透明度
                    , maxmin: true //允许全屏最小化
                    , anim: 0 //0-6的动画形式,-1不开启
                    , content: ['../../../views/基础资料/公用基础资料/Gy_SupType.html', 'yes']
                    , resize: false
                    , cancel: function () {
                        //$(".layui-btn").removeClass("layui-btn-disabled");
                    }
                    , 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 != 1) {
                            return layer.msg('请选择一条数据');
                        }
                        $("#HSupClsName").val(checkStatus.data[0].供应商分类名称);
                        $("#HSupTypeID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            });
            //地区弹窗
            form.on('submit(btnArea)', function () {
                //页面层-自定义
@@ -524,10 +653,19 @@
                var isEndCheck = document.getElementById("HStopflag").checked;
                isEndCheck == true ? data.field.HStopflag = 'true' : data.field.HStopflag = 'false';//将数组合并成字符串
                //子表
                var num = [];
                for (var i = 0; i < table.cache["mainTable"].length; i++) {
                    if (table.cache["mainTable"][i] != "") {
                        table.cache["mainTable"][i].LAY_TABLE_INDEX = i;
                        num.push(table.cache["mainTable"][i])
                    }
                }
                //子表序列化
                var sSubStr = JSON.stringify(num);
                var oMain = JSON.stringify(data.field)
                var sBillModeify = oMain + ';' + linterid + ';' + user + ';' + ModRightNameAdd;
                var sBillModeify = oMain + ';' + sSubStr + ';' + linterid + ';' + user + ';' + ModRightNameAdd;
                if (AllowLoadData()) {
                    if (OperationType == "3") {
                        $.ajax({
@@ -561,7 +699,7 @@
                            type: "POST",
                            url: GetWEBURL() + "/Gy_Supplier/AddBill",
                            async: true,
                            data: { "oMain": oMain },
                            data: { "oMain": oMain + ';' + sSubStr },
                            dataType: "json",
                            success: function (data) {
                                if (data.count == 1) {
@@ -633,6 +771,84 @@
                    }
                });
            }
            //流水号新增获取编码
            function setHNumber(TypeID){
                var ajaxLoad = layer.load();
                $.ajax({
                    url: GetWEBURL() + '/Gy_Supplier/getMaxNum',
                    type: "GET",
                    data: { "HSupTypeID": TypeID, "user": sessionStorage["HUserName"], "Organization": sessionStorage["Organization"] },
                    success: function (data1) {
                        if (data1.data != null) {
                            layer.close(ajaxLoad);
                            $("#HNumber").val(data1.data)
                        } else {
                            layer.close(ajaxLoad);
                            layer.alert(data1.code + data1.Message, { icon: 5 });
                        }
                    }, error: function () {
                        layer.close(ajaxLoad);
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
            }
            //#region è®¡åˆ’表
            function set_GridDelete(obj) {
                var data = obj.data;
                var rowIndex = $(obj.tr).attr("data-index");
                if (obj.event === 'del') {
                    layer.confirm('真的删除行吗?', function (index) {
                        console.log("索引为:" + rowIndex);
                        if (rowIndex === '0') {
                            layer.msg('首行无法删除!!!');
                        } else {
                            var oldData = table.cache["mainTable"];
                            oldData.splice(obj.tr.data('index'), 1)
                            option.data = oldData;//将数据绑定到data上
                            table.render(option);
                            layer.close(index);
                        }
                    });
                }
            }
            //#endregion
            //#region è®¡åˆ’表初始化
            function get_InitGrid() {
                option = {
                    elem: '#mainTable'
                    , toolbar: '#toolbarDemo'
                    , totalRow: true
                    , cellMinWidth: 120
                    , height: 400
                    , cols: [[
                        { type: 'checkbox', totalRowText: '合计行' }
                        , { type: 'numbers', title: '序号', style: 'background-color: #f9f9f9;' }
                        , { field: 'HPayType', title: '付款阶段', edit: 'text' }
                        , { field: 'HPayRate', title: '付款比例% ', edit: 'text'}
                        , { field: 'HPayTime', title: '结算周期', edit: 'text' }
                        , { field: 'HPayRemark', title: '备注说明', edit: 'text' }
                        , { fixed: 'right', title: '操作', toolbar: '#barDemo' }
                    ]]
                }
                var rowdata = [
                    {
                        "HPayType": ""
                        , "HPayRate": "0"
                        , "HPayTime": "0"
                        , "HPayRemark": ""
                    }
                ];
                option.data = rowdata;
                table.render(option);
            }
            //#endregion
            //编辑页面加载
            function set_EditFromGrid() {
                $.ajax({
@@ -679,9 +895,13 @@
                        $("#HUpDater").val(sessionStorage["HUserName"]);//修改人
                        $("input[name='HStopflag']").prop("checked", d.data[0].禁用标志);//true:选中 false:不选中
                        $('#HMaterClass').find("option[value='" + d.data[0].供货材料类别 + "']").attr("selected", true);
                        $('#HSupTypeID').val(d.data[0].HSupTypeID);
                        $('#HSupClsName').val(d.data[0].供应商分类);
                        form.render('select');
                        layui.form.render();//实时渲染选中和不选中的样式,最好添加这句话
                        option.data = d.list[0]["Gy_Supplier_PayPlan"];
                        table.render(option);
                        //table.reload(layTableId, {
                        //    data: ajaxReturnData
                        //});
@@ -695,6 +915,28 @@
            }
            //数据验证
            function AllowLoadData() {
                var ref = /^\d+(\.\d+)?$/;          //非负数正则表达式
                //#region å­è¡¨æ ¡éªŒ
                for (var i = 0; i < option.data.length; i++) {
                    //数量格式校验
                    temp = option.data[i]["HPayRate"] + "";
                    if (!ref.test(temp)) {
                        layer.msg("第" + (i + 1) + "行:付款比例请输入大于0的数字!");
                        return false;
                    }
                    //单价格式校验
                    temp = option.data[i]["HPayTime"] + "";
                    if (!ref.test(temp)) {
                        layer.msg("第" + (i + 1) + "行:结算周期请输入大于0的数字!");
                        return false;
                    }
                }
                //#endregion
                var HNumber = $("#HNumber").val();
                if (HNumber == null || HNumber == undefined || HNumber == "") {
                    layer.msg("请输入供应商编码", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
@@ -703,6 +945,15 @@
                var HName = $("#HName").val();
                if (HName == null || HName == undefined || HName == "") {
                    layer.msg("请输入供应商名称", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
                var HTaxRate = $("#HTaxRate").val();
                if (HTaxRate == null || HTaxRate == undefined || HTaxRate == "") {
                    layer.msg("请输入增值税率", { icon: 5, btn: ['确认'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" });
                    return false;
                }
                if (!ref.test(HTaxRate)) {
                    layer.msg("第" + (i + 1) + "行:增值税率请输入大于0的数字!");
                    return false;
                }
                //var HAddress = $("#HAddress").val();
@@ -731,13 +982,12 @@
                    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;
                }
@@ -804,7 +1054,7 @@
            //#endregion
        });
            //以上为layui模块
                //以上为layui模块
    </script>