wtt
2025-02-11 cf79bb813afe80678991c5fd49d3e1c8e8b968c2
Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-LayUI
2个文件已修改
244 ■■■■ 已修改文件
WebTM/views/生产管理/宝工排产/JIT_DayPlanPlatForm.html 230 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产投料单/Sc_PPBomBillList.html 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/Éú²ú¹ÜÀí/±¦¹¤ÅŲú/JIT_DayPlanPlatForm.html
@@ -63,6 +63,13 @@
                                <div class="layui-colla-content" style="padding: 0px; margin-left: 6%;">
                                    <div class="layui-row" style="margin-top:10px;">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">排产天数</label>
                                            <div class="layui-input-block">
                                                <select name="HArrangeProductDayQty" id="HArrangeProductDayQty" class="ForFilteringSchemes" lay-filter="HArrangeProductDayQty" style="width:190px;">
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">预留数量</label>
                                            <div class="layui-input-block" style="margin-left: 120px;">
                                                <input type="text" class="layui-input" name="HBillNo" id="HBillNo">
@@ -361,6 +368,9 @@
        //#region è¿›å…¥é¡µé¢å³åŠ è½½
        //初始化排产时间
        setSelect_HArrangeProductDayQty();
        //初始化界面
        $(document).ready(function () {
            set_InitGrid();
@@ -513,7 +523,8 @@
                            data[0][Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd')] = "";
                            //跨年的话 ä¼šä»Žä¸€æœˆä¸€å·å¼€å§‹
                            if (MM == 12 && (HBEGINDATE + j) == 31) {
                            var HArrangeProductDayQty = $("#HArrangeProductDayQty").val() * 1;
                            if (MM == 12 && (HBEGINDATE + j) == HArrangeProductDayQty) {
                                yyyy += 1;
                                MM = 1;
                                SumMonth = new Date(yyyy, MM, 0).getDate();
@@ -792,6 +803,56 @@
            get_btnUnlockOrder();
        })
        //#region ä¸‹æ‹‰åˆ—表监听-排产时间
        form.on('select(HArrangeProductDayQty)', function (data) {
            var ajaxLoad = layer.load();
            get_WriteConfigFile();
            var HWorkShopID = $("#HWorkShopID").val();//生产车间
            if (HWorkShopID == 0) {
                layer.close(ajaxLoad);
                return layer.msg("生产车间不能为空!");
            } else if (table.cache["mainTable"].length == 0) {
                layer.close(ajaxLoad);
                return layer.msg("无数据,无法保存!");
            } else {
                var HYxjQty = 0;
                for (var i = 0; i < table.cache["mainTable"].length; i++) {
                    if (table.cache["mainTable"][i] != "") {
                        if (parseFloat(table.cache["mainTable"][i]["优先级"]) == 0) {
                            HYxjQty++
                        }
                    }
                }
                if (HYxjQty > 0) {
                    layer.confirm('当前排产页面存在优先级为0的生产订单,是否继续进行排产?', {
                        title: "操作提示",
                        icon: 0,
                        btn: ['确认', '取消']
                    }, function (index, layero) {
                        //确认
                        set_AddNew();
                    }, function (index) {
                        //取消
                        layer.close(ajaxLoad);
                        return
                    });
                } else {
                    set_AddNew();
                }
            }
            //初始化表格
            set_InitGrid();
            get_FastQuery(1);
            //隐藏勾选字段
            DisPlay_HideColumn();
            get_Display2(sWhere_ICMO);
            layer.close(ajaxLoad);
        });
        //#endregion
        //#endregion
        //#region æœ¬é¡µé¢è¢«è°ƒç”¨çš„æ‰€æœ‰æ–¹æ³•
@@ -815,58 +876,36 @@
            DisPlay_HideColumn();
            get_Display2(sWhere_ICMO);
        }
        //#region åˆå§‹åŒ–下拉列表 æŽ’产时间
        function setSelect_HArrangeProductDayQty() {
            var date = new Date();
            var year = date.getFullYear();
            var month = date.getMonth() + 1;                                // æœˆä»½ä»Ž0开始计算,需要加1
            var lastDay = new Date(year, month, 0).getDate();               //当月最后一天
            var thisDay = new Date().getDay();                              //当天是本月第几天
            var valueList = [7, lastDay - thisDay+1,31,34];
            var titleList = ["7天", "本月","31天","34天"];
            var HArrangeProductDayQty_ArrayList = '';
            for (var i = 0; i < valueList.length; i++) {
                HArrangeProductDayQty_ArrayList += '<option  style="color:blue;" value="' + valueList[i] + '">' + titleList[i] + '</option>';
            }
            $("#HArrangeProductDayQty").empty();
            $("#HArrangeProductDayQty").append(HArrangeProductDayQty_ArrayList);
            form.render('select');
            $("#HArrangeProductDayQty").val("7");
        }
        //#endregion
        //获取组织
        function Organ() {
            //获取登录页组织列
            $.ajax({
                type: "get",
                url: GetWEBURL() + "/Web/GetOrganizations",
                success: function (result) {
                    var Organization = "";
                    if (result.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                        var data = result.data;
                        for (var i = 0; i < data.length; i++) {
                            Organization += '<option  style="color:blue;" value="' + data[i].ID + '">' + data[i].Name + '</option>';
                        }
                        $("#HProdORGID").append(Organization);
                        $("#HProdORGID").val(sessionStorage["OrganizationID"])
                        form.render('select');
                    }
                    layer.closeAll("loading");
                }
            })
        }
        //表格数据
        function set_InitGrid() {
        //#region è‡ªå®šä¹‰é€‰æ‹©æŽ’产天数-初始化获取列数据
        function setInit_columnsData() {
            var columns = [];
            var myDate = new Date();
            var oneday = 1000 * 60 * 60 * 24;
            columns.push({ type: 'checkbox', fixed: 'left', sort: true });
            columns.push({ type: 'numbers', field: '序号', title: '序号', sort: true });
            columns.push({ field: '单据号', title: '单据号', hide: true, sort: true });
            columns.push({ field: '销售订单号', title: '销售订单号', width: 150, sort: true });
            columns.push({ field: '生产订单号', title: '生产订单号', width: 150, style: 'background-color: #f9f9f9;', sort: true });
            columns.push({ field: '生产组织', title: '生产组织', width: 150, sort: true });
            columns.push({ field: '物料代码', title: '物料编码', width: 150, sort: true });
            columns.push({ field: '物料名称', title: '物料名称', width: 150, sort: true });
            columns.push({ field: '规格型号', title: '规格型号', width: 150, sort: true });
            columns.push({ field: '小时产能', title: '小时产能', width: 150, sort: true, edit: 'text' });
            columns.push({ field: '销售订单数量', title: '销售订单数量', width: 150, sort: true });//0
            columns.push({ field: '计划数量', title: '生产订单数量', width: 150, sort: true });//0
            columns.push({ field: '日计划数量总量', title: '日计划数量总量', width: 150, sort: true });//0
            columns.push({ field: '今日之前日计划数量', title: '今日之前日计划数量', width: 150, sort: true });//0
            columns.push({ field: '计划开始日期', title: '预计开工日期', width: 150, templet: "<div>{{d.计划开始日期 ==null ?'':layui.util.toDateString(d.计划开始日期, 'yyyy-MM-dd')}}</div>", sort: true });
            columns.push({ field: '计划结束日期', title: '计划结束日期', width: 150, templet: "<div>{{d.计划结束日期 ==null ?'':layui.util.toDateString(d.计划结束日期, 'yyyy-MM-dd')}}</div>", event: "HPlanEndDate", sort: true });
            columns.push({ field: '订单可排数量', title: '订单可排数量', width: 150 });
            columns.push({ field: '拆单数量', title: '拆单数量', width: 150, edit: 'text' });
            columns.push({ field: '昨日数量', title: '昨日数量' });
            columns.push({ field: '优先级', title: '优先级', width: 150, edit: 'text', sort: true });
            columns.push({ field: '生产资源', title: '生产资源', width: 150, edit: 'text', event: "HSourceID" });
            columns.push({ field: '操作工', title: '操作工', width: 150, edit: 'text', event: "HEmpID" });
            columns.push({
                field: Format(myDate.getTime() + 0 * oneday, 'yyyy-MM-dd'), title: Format(myDate.getTime() + 0 * oneday, 'MM.dd'), edit: 'text', width: 70, templet: function (d) {
@@ -1023,6 +1062,83 @@
                    return DayColor(d[Format(myDate.getTime() + 30 * oneday, 'yyyy/MM/dd')], d[Format(myDate.getTime() + 30 * oneday, 'yyyy-MM-dd')], d, Format(myDate.getTime() + 30 * oneday, 'yyyy-MM-dd'));
                }
            })//0
            columns.push({
                field: Format(myDate.getTime() + 31 * oneday, 'yyyy-MM-dd'), title: Format(myDate.getTime() + 31 * oneday, 'MM.dd'), edit: 'text', width: 70, templet: function (d) {
                    return DayColor(d[Format(myDate.getTime() + 31 * oneday, 'yyyy/MM/dd')], d[Format(myDate.getTime() + 31 * oneday, 'yyyy-MM-dd')], d, Format(myDate.getTime() + 31 * oneday, 'yyyy-MM-dd'));
                }
            })//0
            columns.push({
                field: Format(myDate.getTime() + 32 * oneday, 'yyyy-MM-dd'), title: Format(myDate.getTime() + 32 * oneday, 'MM.dd'), edit: 'text', width: 70, templet: function (d) {
                    return DayColor(d[Format(myDate.getTime() + 32 * oneday, 'yyyy/MM/dd')], d[Format(myDate.getTime() + 32 * oneday, 'yyyy-MM-dd')], d, Format(myDate.getTime() + 32 * oneday, 'yyyy-MM-dd'));
                }
            })//0
            columns.push({
                field: Format(myDate.getTime() + 33 * oneday, 'yyyy-MM-dd'), title: Format(myDate.getTime() + 33 * oneday, 'MM.dd'), edit: 'text', width: 70, templet: function (d) {
                    return DayColor(d[Format(myDate.getTime() + 33 * oneday, 'yyyy/MM/dd')], d[Format(myDate.getTime() + 33 * oneday, 'yyyy-MM-dd')], d, Format(myDate.getTime() + 33 * oneday, 'yyyy-MM-dd'));
                }
            })//0
            return columns;
        }
        //#endregion
        //#endregion
        //获取组织
        function Organ() {
            //获取登录页组织列
            $.ajax({
                type: "get",
                url: GetWEBURL() + "/Web/GetOrganizations",
                success: function (result) {
                    var Organization = "";
                    if (result.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                        var data = result.data;
                        for (var i = 0; i < data.length; i++) {
                            Organization += '<option  style="color:blue;" value="' + data[i].ID + '">' + data[i].Name + '</option>';
                        }
                        $("#HProdORGID").append(Organization);
                        $("#HProdORGID").val(sessionStorage["OrganizationID"])
                        form.render('select');
                    }
                    layer.closeAll("loading");
                }
            })
        }
        //表格数据
        function set_InitGrid() {
            var columns = [];
            var myDate = new Date();
            var oneday = 1000 * 60 * 60 * 24;
            columns.push({ type: 'checkbox', fixed: 'left', sort: true });
            columns.push({ type: 'numbers', field: '序号', title: '序号', sort: true });
            columns.push({ field: '单据号', title: '单据号', hide: true, sort: true });
            columns.push({ field: '销售订单号', title: '销售订单号', width: 150, sort: true });
            columns.push({ field: '生产订单号', title: '生产订单号', width: 150, style: 'background-color: #f9f9f9;', sort: true });
            columns.push({ field: '生产组织', title: '生产组织', width: 150, sort: true });
            columns.push({ field: '物料代码', title: '物料编码', width: 150, sort: true });
            columns.push({ field: '物料名称', title: '物料名称', width: 150, sort: true });
            columns.push({ field: '规格型号', title: '规格型号', width: 150, sort: true });
            columns.push({ field: '小时产能', title: '小时产能', width: 150, sort: true, edit: 'text' });
            columns.push({ field: '销售订单数量', title: '销售订单数量', width: 150, sort: true });//0
            columns.push({ field: '计划数量', title: '生产订单数量', width: 150, sort: true });//0
            columns.push({ field: '日计划数量总量', title: '日计划数量总量', width: 150, sort: true });//0
            columns.push({ field: '今日之前日计划数量', title: '今日之前日计划数量', width: 150, sort: true });//0
            columns.push({ field: '计划开始日期', title: '预计开工日期', width: 150, templet: "<div>{{d.计划开始日期 ==null ?'':layui.util.toDateString(d.计划开始日期, 'yyyy-MM-dd')}}</div>", sort: true });
            columns.push({ field: '计划结束日期', title: '计划结束日期', width: 150, templet: "<div>{{d.计划结束日期 ==null ?'':layui.util.toDateString(d.计划结束日期, 'yyyy-MM-dd')}}</div>", event: "HPlanEndDate", sort: true });
            columns.push({ field: '订单可排数量', title: '订单可排数量', width: 150 });
            columns.push({ field: '拆单数量', title: '拆单数量', width: 150, edit: 'text' });
            columns.push({ field: '昨日数量', title: '昨日数量' });
            columns.push({ field: '优先级', title: '优先级', width: 150, edit: 'text', sort: true });
            columns.push({ field: '生产资源', title: '生产资源', width: 150, edit: 'text', event: "HSourceID" });
            columns.push({ field: '操作工', title: '操作工', width: 150, edit: 'text', event: "HEmpID" });
            var dateColumns = setInit_columnsData();
            var HArrangeProductDayQty = $("#HArrangeProductDayQty").val() * 1;
            for (var i = 0; i < HArrangeProductDayQty; i++) {
                columns.push(dateColumns[i]);//0
            }
            columns.push({ field: '生产订单明细行号', title: '生产订单明细行号', width: 150, sort: true });
            columns.push({ field: 'T31', title: 'T31', width: 70 });//0
            columns.push({ field: '订单类型', title: '订单类型', width: 150, sort: true });
@@ -1043,7 +1159,7 @@
            columns.push({ field: 'hmainid', title: '日计划工单主码', width: 150, sort: true });
            columns.push({ field: '电压/功率/底板', title: '电压/功率/底板', width: 150, sort: true });
            columns.push({ field: '计量单位', title: '计量单位', width: 150, sort: true });
            /*columns.push({ field: '拆单数量', title: '拆单数量', width: 150 });//0*/
            columns.push({ field: '拆单数量', title: '拆单数量', width: 150 });//0
            columns.push({ field: '未入库数量', title: '未入库数量', width: 150 });//0
            columns.push({ field: 'HICMOInterID', title: 'HICMOInterID', width: 150, hide: true });
            columns.push({ field: 'HGroupID', title: 'HGroupID', width: 150, hide: true });
@@ -1202,7 +1318,8 @@
                data: { "sWhere": HinterID_S.toString(),"num":1 },
                success: function (data1) {
                    if (data1.count == 1) {
                        for (var i = 0; i < 31; i++) {
                        var HArrangeProductDayQty = $("#HArrangeProductDayQty").val() * 1;
                        for (var i = 0; i < HArrangeProductDayQty; i++) {
                            option.cols[0][22 + i]["edit"] = "text";
                            option.cols[0][22 + i]["style"] = "";
                            var TableDate = option.cols[0][22 + i].field;
@@ -1214,7 +1331,7 @@
                        if (data1.data[0]["DayNum"] > 0) {
                            //获取被锁定的列数
                            var tableNum = 0;
                            for (var i = 0; i < 31; i++) {
                            for (var i = 0; i < HArrangeProductDayQty; i++) {
                                if (option.cols[0][22 + i]["edit"] == "") {
                                    tableNum += 1;
                                } else {
@@ -1292,9 +1409,10 @@
                            }
                            //获取日期下标
                            var HArrangeProductDayQty = $("#HArrangeProductDayQty").val() * 1;
                            var _numData3 = [];
                            for (var i = 0; i < _numData2.length; i++) {
                                for (var j = 22; j < 53; j++) {
                                for (var j = 22; j < 22 + HArrangeProductDayQty; j++) {
                                    if (option.cols[0][j]["field"] == _numData2[i]) {
                                        _numData3[i] = j;
                                        break;
@@ -1439,6 +1557,7 @@
                var data2 = JSON.parse(data);
                $("#HWorkShopID").val(data2["HWorkShopID"]);
                $("#HWorkShopIDName").val(data2["HWorkShopIDName"]);
                $("#HArrangeProductDayQty").val(data2["HArrangeProductDayQty"]);
                form.render('select');
            }
        }
@@ -1450,6 +1569,7 @@
            var data = {
                HWorkShopID:  $("#HWorkShopID").val()
                , HWorkShopIDName: $("#HWorkShopIDName").val()
                , HArrangeProductDayQty: $("#HArrangeProductDayQty").val()
            }
            //本地存储
            localStorage.setItem("JIT_DayPlanPlatForm_HWorkShop", JSON.stringify(data));
@@ -1975,8 +2095,9 @@
            get_HFData(0, 0);
            //初始化表格数据
            var HArrangeProductDayQty = $("#HArrangeProductDayQty").val() * 1;
            for (var i = 0; i < option.data.length; i++) {
                for (var j = (22 + HPlanDay); j < 53; j++) {
                for (var j = (22 + HPlanDay); j < (22 + HArrangeProductDayQty); j++) {
                    if (option.data[i][option.cols[0][j].field] != null) {
                        option.data[i][option.cols[0][j].field] = "";
                    }
@@ -2368,7 +2489,8 @@
            else {
                for (var i = 0; i < ds.length; i++) {
                    //找到对应的列
                    for (var j = 22 + HPlanDay; j < 53; j++) {
                    var HArrangeProductDayQty = $("#HArrangeProductDayQty").val() * 1;
                    for (var j = 22 + HPlanDay; j < 22 + HArrangeProductDayQty; j++) {
                        if (sLeftQty > 0) {
                            if (ds[i]["日期"] == grd.cols[0][j].field) {
                                //如果时间被 ä¸Šé“余量占用 åˆ™ è·³è¿‡
WebTM/views/Éú²ú¹ÜÀí/Éú²úͶÁϵ¥/Sc_PPBomBillList.html
@@ -212,15 +212,15 @@
                                <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-getCheckData"><i class="layui-icon layui-icon-tips"></i>预览</button>-->
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-reload"><i class="layui-icon layui-icon-refresh"></i>刷新</button>
                                <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-confirm" id="btn_confirm"><i class="layui-icon layui-icon-ok-circle"></i>确认</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-back" id="btn_back"><i class="layui-icon layui-icon-close-fill"></i>驳回</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-details"><i class="layui-icon layui-icon-form"></i>详情</button>
                                <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-Add"><i class="layui-icon layui-icon-file-b"></i>新增</button>
        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-back" id="btn_back"><i class="layui-icon layui-icon-close-fill"></i>驳回</button>
        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-details"><i class="layui-icon layui-icon-form"></i>详情</button>
        <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-Add"><i class="layui-icon layui-icon-file-b"></i>新增</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Edit"><i class="layui-icon layui-icon-form"></i>编辑</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Delete"><i class="layui-icon layui-icon-delete"></i>删除</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Audit"><i class="layui-icon layui-icon-radio"></i>审核</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-DeAudit"><i class="layui-icon layui-icon-circle"></i>反审核</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-view"><i class="layui-icon layui-icon-tips"></i>预览</button>-->
                                <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Audit"><i class="layui-icon layui-icon-radio"></i>审核</button>
        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-DeAudit"><i class="layui-icon layui-icon-circle"></i>反审核</button>
        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-view"><i class="layui-icon layui-icon-tips"></i>预览</button>-->
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="get_export" id="get_export"><i class="layui-icon layui-icon-export"></i>导出</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-print"><i class="layui-icon layui-icon-print"></i>打印</button>
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-exit"><i class="layui-icon layui-icon-return"></i>退出</button>