1
wtt
2025-06-16 4833c912a263af12b1f4e32eac1f8da63f8dfd08
1
29个文件已修改
13个文件已添加
7557 ■■■■■ 已修改文件
WebTM/Properties/PublishProfiles/LAYUI.pubxml.user 4736 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/WebTM.csproj 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/WebTM.csproj.user 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/img/AI芯片.png 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/img/ic芯片.png 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/img/智能芯片.png 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/img/智能芯片*.png 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/img/电子技术.png 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/img/电脑主板.png 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/img/芯片.png 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/layuiadmin/Scripts/webConfig.js 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/PublicPage/ProductionOrder.html 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/基础资料/公用基础资料/Add_Edit_Gy_InspectBasis.html 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/基础资料/公用基础资料/Add_Edit_Gy_Material.html 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/基础资料/公用基础资料/Add_Edit_Gy_QualityStd.html 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/基础资料/公用基础资料/Gy_DepartmentList.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/基础资料/公用基础资料/xmlLBM_MouldFileMainBill.aspx 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/基础资料/基础资料/Gy_MaintainList.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/案例代码/华远/HY_HistogramReport.html 343 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/案例代码/华远/HY_HistogramReport_ForPCSCheckNote.html 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/案例代码/华远/HY_InterfaceTest.html 426 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/模治具管理/模治具仓库管理/Sc_Add_MouldProdBackBillList.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/模治具管理/模治具仓库管理/Sc_MouldProdOutBillEdit.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/模治具管理/模治具管理/Gy_MouldFileList.html 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/宝工排产/JIT_DayPlanPlatForm.html 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/宝工排产/ReportPODemandPlanBillList.html 517 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/宝工排产/ReportPODemandPlanBillList_S.html 508 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/报工台工序/停工/Sc_Add_MESStopStepWorkBillList.html 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/报工台工序/开工/Sc_Add_MESBeginStepWorkBillList.html 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/日计划基础资料/Gy_WorkWarehouseBillList.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/欠料运算/JIT_MaterialLevelShorAnalysisReport_His.html 772 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产开工单/Sc_Add_MESBeginWorkBillList.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产日计划工单/JIT_DayPlanBillList.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产汇报单/Sc_ICMOReportBillList.html 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产计划平台/JIT_DayPlanPlatForm.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产计划平台/JIT_DayPlanPlatFormImport.html 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产计划平台/JIT_DayPlanPlatForm_TKNew.html 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/生产管理/生产计划平台/Sc_ICMOSortBillList.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/计划管理/产线对应器具清单/Gy_SourceMouldBill.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/设备管理/设备维修派工单/Sb_EquipRepairSendWorkBillList.html 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/质量管理/安灯逐级呼叫规则/OA_AndengFlowRuleBillMain.html 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/质量管理/检验方案单/QC_Add_CheckProject.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/Properties/PublishProfiles/LAYUI.pubxml.user
Diff too large
WebTM/WebTM.csproj
@@ -86,6 +86,14 @@
  </ItemGroup>
  <ItemGroup>
    <Content Include="HtmlPage1.html" />
    <Content Include="img\AI芯片.png" />
    <Content Include="img\ic芯片.png" />
    <Content Include="img\华远直方图背景.jpeg" />
    <Content Include="img\智能芯片.png" />
    <Content Include="img\智能芯片*.png" />
    <Content Include="img\电子技术.png" />
    <Content Include="img\电脑主板.png" />
    <Content Include="img\芯片.png" />
    <Content Include="layuiadmin\ax\ax-response.css" />
    <Content Include="layuiadmin\ax\ax.css" />
    <Content Include="layuiadmin\ax\ax.min.js" />
@@ -556,6 +564,9 @@
    <Content Include="views\应收管理\报表分析\Xs_SeOrderBarCodeInAndOutStockDetailReport.html" />
    <Content Include="views\应收管理\报表分析\YS_CusShouldIncomeMaterEntryReport.html" />
    <Content Include="views\条码明细\Kf_MateOutBillList_CodeDetail.html" />
    <Content Include="views\案例代码\华远\HY_HistogramReport_ForPCSCheckNote.html" />
    <Content Include="views\案例代码\华远\HY_HistogramReport.html" />
    <Content Include="views\案例代码\华远\HY_InterfaceTest.html" />
    <Content Include="views\模治具管理\器具报表\Sc_MouldLifeUsePicReport.html" />
    <Content Include="views\模治具管理\器具报表\Sc_MouldDotCheckTaskReport.html" />
    <Content Include="views\模治具管理\器具报表\Sc_MouldMaintainTaskReport.html" />
@@ -619,6 +630,8 @@
    <Content Include="views\生产管理\宝工排产\JIT_LockRequestBill.html" />
    <Content Include="views\生产管理\宝工排产\JIT_DayPlanPlatForm.html" />
    <Content Include="views\生产管理\宝工排产\JIT_LockRequestBillList.html" />
    <Content Include="views\生产管理\宝工排产\ReportPODemandPlanBillList.html" />
    <Content Include="views\生产管理\宝工排产\ReportPODemandPlanBillList_S.html" />
    <Content Include="views\生产管理\客户标签\Sc_CustomerTagInfoExcel.html" />
    <Content Include="views\生产管理\客户标签\Sc_CustomerTagInfoEdit.html" />
    <Content Include="views\生产管理\客户标签\Sc_CustomerTagInfoList.html" />
@@ -640,7 +653,11 @@
    <Content Include="views\生产管理\日计划基础资料\JIT_NeedMaterPlanConfigBill_Excel.html" />
    <Content Include="views\生产管理\日计划报表\JIT_DayPlanPlatFormHistoryNoteReport.html" />
    <Content Include="views\生产管理\日计划报表\JIT_FuHeFenXiReportDetail.html" />
<<<<<<< HEAD
    <Content Include="views\生产管理\日计划报表\ReportMOMaterReadysBillTotalList.html" />
=======
    <Content Include="views\生产管理\欠料运算\JIT_MaterialLevelShorAnalysisReport_His.html" />
>>>>>>> 0adef152d8494601c9665fd2d690774c662a02fd
    <Content Include="views\生产管理\欠料运算\JIT_MaterialLevelShorAnalysis.html" />
    <Content Include="views\生产管理\欠料运算\JIT_MaterialLevelShorAnalysisDetailReport.html" />
    <Content Include="views\生产管理\欠料运算\JIT_MaterialLevelShorAnalysisReport.html" />
WebTM/WebTM.csproj.user
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
<<<<<<< HEAD
    <NameOfLastUsedPublishProfile>D:\智云迈思\MES\MES-WEB-LayUI\WebTM\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\WorkBench\MES-WEB-LayUI\WebTM\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
=======
    <NameOfLastUsedPublishProfile>D:\工作代码\智云迈思\MES\MES-WEB-LayUI\WebTM\Properties\PublishProfiles\LAYUI.pubxml</NameOfLastUsedPublishProfile>
>>>>>>> 0adef152d8494601c9665fd2d690774c662a02fd
    <ProjectView>ProjectFiles</ProjectView>
    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
    <UseIISExpress>true</UseIISExpress>
WebTM/img/AIоƬ.png
WebTM/img/icоƬ.png
WebTM/img/ÖÇÄÜоƬ.png
WebTM/img/ÖÇÄÜоƬ£ª.png
WebTM/img/µç×Ó¼¼Êõ.png
WebTM/img/µçÄÔÖ÷°å.png
WebTM/img/оƬ.png
WebTM/layuiadmin/Scripts/webConfig.js
@@ -5,15 +5,15 @@
    //var WEBURL = "http://61.164.86.218:8099/ABAPI/";
    /*var WEBURL = "http://localhost/API/";             //颜晓军本地配置*/
    //var WEBURL = "http://localhost:8082/LuBaoAPI/";    //杨乐本地配置
    //var WEBURL = "http://localhost:8082/API/";    //杜贺本地配置
    var WEBURL = "http://localhost:8082/API/";    //张瑞广本地配置
    var WEBURL = "http://localhost:8082/API/";    //杜贺本地配置
    //var WEBURL = "http://localhost:8082/API/";    //张瑞广本地配置
    //var WEBURL = "http://localhost:81/API/"    //翁涛涛本地配置
    //var WEBURL = "http://localhost:8082/LuBaoAPI/";    //杨乐本地配置
    //var WEBURL = "http://localhost:8082/API/";    //杜贺本地配置
    //var WEBURL = "http://localhost:8082/API/";    //张瑞广本地配置
    var WEBURL = "http://localhost:81/API/"    //翁涛涛本地配置
    //var WEBURL = "http://localhost:81/API/"    //翁涛涛本地配置
    //var WEBURL = "http://47.96.97.237/API/";          //智云服务器
    var WEBURL = "http://localhost:8082/LuBaoAPI/";  //余思杰本地配置
   /* var WEBURL = "http://localhost:8082/LuBaoAPI/";  //余思杰本地配置*/
    //var WEBURL = "http://localhost:8088/ARAPI/";      //余思杰本地配置(安瑞)
    //var WEBURL = "http://61.164.86.218:8099/ABAPI/";  //奥邦
    //var WEBURL = "http://10.1.4.155/API/";            //江丰客户NEW
@@ -31,7 +31,7 @@
    //var WEBURL = "http://192.168.60.12/API";          //中控
    //var WEBURL = "http://192.168.6.5:8082/API/";    //舜成
    /*var WEBURL = "http://121.36.199.126:8181/API/";    //三升*/
    var WEBURL = "http://localhost:81/API";
    //var WEBURL = "http://localhost:81/API";
    return WEBURL
}
WebTM/views/PublicPage/ProductionOrder.html
@@ -134,11 +134,16 @@
            //查询条件
            var sWhere = "";
            $("#HDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * 30), "yyyy-MM-dd"));
            $("#HDate1").val(Format(new Date(), "yyyy-MM-dd"));
            sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + $("#HDate").val() + "'";
            sWhere += " and CONVERT(varchar(100),日期, 23) <= '" + $("#HDate1").val() + "'";
            var index = layer.load(0);
            table.render({
                elem: '#mainTable'
                , url: GetWEBURL() + '/Sc_ProductionOrder/GetProductionOrderBill'
                , where: { sWhere: "" } //扩展参数,可以传数据到后台
                , where: { sWhere: sWhere  } //扩展参数,可以传数据到后台
                , page: true   //开启分页
                , limit: 20     //一页能够显示的最大数目
                ,limits: [20, 40,60,80,100] //控制多少行一页(默认五条一页)
WebTM/views/»ù´¡×ÊÁÏ/¹«Óûù´¡×ÊÁÏ/Add_Edit_Gy_InspectBasis.html
@@ -302,6 +302,8 @@
            function set_AddFNew() {
                $("#HItemID").val("0");
                $("#HNumber").val("");
                $("#HMakeEmp").val(sessionStorage["HUserName"]);; //根据登录用户带出创建人
                $("#HMakeTime").val(Format(new Date(), "yyyy-MM-dd"));
            }
            //编辑
            function set_EditFromGrid() {
WebTM/views/»ù´¡×ÊÁÏ/¹«Óûù´¡×ÊÁÏ/Add_Edit_Gy_Material.html
@@ -1722,7 +1722,7 @@
                        if (checkStatus.data.length != 1) {
                            return layer.msg('请选择一条数据');
                        }
                        $("#HMaterClsName").val(checkStatus.data[0].物料分类名称);
                        $("#HMaterClsName").val(checkStatus.data[0].名称);
                        $("#HMaterTypeID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
@@ -2230,7 +2230,7 @@
        }
        //返回物料分类
        function GetMaterTypeValue(obj) {
            $("#HMaterClsName").val(obj[0].物料分类名称);
            $("#HMaterClsName").val(obj[0].名称);
            $("#HMaterTypeID").val(obj[0].HItemID);
        }
        //返回计量单位
WebTM/views/»ù´¡×ÊÁÏ/¹«Óûù´¡×ÊÁÏ/Add_Edit_Gy_QualityStd.html
@@ -300,6 +300,8 @@
            function set_AddFNew() {
                $("#HItemID").val("0");
                $("#HNumber").val("");
                $("#HMakeEmp").val(sessionStorage["HUserName"]);; //根据登录用户带出创建人
                $("#HMakeTime").val(Format(new Date(), "yyyy-MM-dd"));
            }
            //编辑
            function set_EditFromGrid() {
WebTM/views/»ù´¡×ÊÁÏ/¹«Óûù´¡×ÊÁÏ/Gy_DepartmentList.html
@@ -1235,7 +1235,7 @@
                        addSWhere = " and ç¦ç”¨æ ‡è®° = ' ' and è½¦é—´æ ‡è®° = 'Y' ";
                        Organization = HOrgName.toString();
                    } else {
                        addSWhere = " and ç¦ç”¨æ ‡è®° = '' and ç¦ç”¨æ—¶é—´ is null and ISNULL(审核人,'') <> '' ";
                        addSWhere = " and ç¦ç”¨æ ‡è®° = '' and ISNULL(审核人,'') <> '' ";
                        Organization = HOrgName.toString();
                    }
                }
WebTM/views/»ù´¡×ÊÁÏ/¹«Óûù´¡×ÊÁÏ/xmlLBM_MouldFileMainBill.aspx
@@ -15,7 +15,7 @@
        //OledbXMLReportData.GenOneRecordset(this, "select * from Customers order by CustomerID");
        //SqlXMLReportData.GenOneRecordset(this, "select * from h_v_Kf_POStockInBillList_K3 where hmainid=1781");
        SqlXMLReportData.GenOneRecordset(this, "select * from h_v_Gy_MouldFileList where hmainid=" + Request.Params["linterid"]);
        SqlXMLReportData.GenEntireData(this, "select * from h_v_Gy_MouldFileList where hmainid=" + Request.Params["linterid"], "select 1");
    }
</script>
</head>
WebTM/views/»ù´¡×ÊÁÏ/»ù´¡×ÊÁÏ/Gy_MaintainList.html
@@ -1006,7 +1006,7 @@
                var openType = params[params[0]]; //从参数中获取 æ‰“开方式  1直接打开 2其它页面通过选择按钮打开
                var addSWhere = "";
                if (typeof (openType) != "undefined") {
                    addSWhere = " and ç¦ç”¨äºº = '' and å®¡æ ¸äºº != ''";
                    addSWhere = " and ISNULL(禁用人,'') = '' and isnull(审核人,'') != ''";
                }
                return addSWhere;
            }
WebTM/views/°¸Àý´úÂë/»ªÔ¶/HY_HistogramReport.html
New file
@@ -0,0 +1,343 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>直方图</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <script src="../../../layuiadmin/layui/layui.js"></script>
    <script src="../../../layuiadmin/Scripts/json2.js"></script>
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script src="../../../layuiadmin/HideButton.js"></script>
</head>
<body>
    <div class="layui-fluid">
        <div class="layui-col-md12">
            <div class="layui-card" style="padding: 1px">
                <div class="layui-card-body" style="padding: 1px;">
                    <form class="layui-form" action="" lay-filter="component-form-group">
                        <div class="layui-collapse">
                            <div class="layui-colla-item">
                                <div class="layui-colla-title layui-inline">
                                    <div class="layui-inline">
                                        <span>更多</span>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label" style="width: 85px;">PNL条码编号</label>
                                    <div class="layui-input-block" style="margin-left: 120px;">
                                        <input type="text" class="layui-input" name="HBarCode_PNL" id="HBarCode_PNL">
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label" style="width: 85px;">set条码编号</label>
                                    <div class="layui-input-block" style="margin-left: 120px;">
                                        <input type="text" class="layui-input" name="HBarCode_Set" id="HBarCode_Set">
                                    </div>
                                </div>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">
                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                </button>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnReSearch" id="btnReSearch" style="padding:0 5px">重置</button>
                            </div>
                        </div>
                        <div id="HistogramReport" style = "background-color: black; height: 2000px; width: 100%; display: flex; justify-content: center; ">
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
    <script>
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index', //主入口模块
        }).use(['index', 'form', 'table', 'element', 'laypage', 'laydate'], function () {
            //#region å…¬ç”¨å˜é‡
            var $ = layui.$
                , admin = layui.admin
                , layer = layui.layer
                , table = layui.table
                , form = layui.form
                , element = layui.element
                , laypage = layui.laypage
                , laydate = layui.laydate
            var HModName = "HY_HistogramReport";
            var HBarCode_PNL_Note = "";                             //记录查询后的PNL条码编号
            var HLayOut_PNL = [];                                   //PNL布局信息数据
            //#endregion
            //#region è¿›å…¥é¡µé¢å³åŠ è½½
            //#region åˆå§‹åŒ–界面
            set_ClearBill();
            //#endregion
            //#endregion
            //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
            //#region é‡ç½®æŒ‰é’®
            form.on('submit(btnReSearch)', function (data) {
                set_ClearQuery();
            });
            //#endregion
            //#region æŸ¥è¯¢æŒ‰é’®
            form.on('submit(btnSearch)', function (data) {
                get_FastQuery(2);
            });
            //#endregion
            //#region æœ¬é¡µé¢æ‰€æœ‰è¢«è°ƒç”¨çš„æ–¹æ³•
            //#region åˆå§‹åŒ–界面
            function set_ClearBill() {
                //查询
                get_FastQuery(1);
                //Organ();
            }
            //#endregion
            //#endregion
            //#region æŸ¥è¯¢
            function get_Display(sql) {
                var ModRightNameCheck = "";
                $.ajax({
                    url: GetWEBURL() + '/CommonModel/searchMethod',
                    async: false,
                    type: "GET",
                    data: { "sql": sql, "user": sessionStorage["HUserName"], "ModRightNameCheck": ModRightNameCheck},
                    success: function (data1) {
                        if (data1.count == 1) {
                            for (var i = 0; i < data1.data.length; i++) {
                                HLayOut_PNL.push(data1.data[i]);
                            }
                        } else {
                            layer.alert(data1.code + data1.Message, { icon: 5 });
                        }
                    }, error: function (e) {
                        layer.alert("接口请求失败!" + e, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region å¿«é€Ÿè¿‡æ»¤
            function get_FastQuery(number) {
                var HBarCode_PNL = $("#HBarCode_PNL").val();        //PNL条码编号
                var HBarCode_Set = $("#HBarCode_Set").val();        //set条码编号
                if (HBarCode_PNL != "" && HBarCode_Set != "") {
                    layer.alert("PNL条码编号与Set条码编号只可选择一个进行查询!!", { icon: 5 });
                    //加载PNL布局直方图
                    draw_Histogram([]);
                    return;
                }
                //打开加载遮罩
                var ajaxLoad = layer.load();
                //获取PNL布局的左侧备料数据
                var sql = "exec h_p_HY_HistogramReport '" + HBarCode_PNL + "','" + HBarCode_Set + "','left'";
                get_Display(sql);
                //获取PNL布局的中间数据
                var sql = "exec h_p_HY_HistogramReport '" + HBarCode_PNL + "','" + HBarCode_Set + "','center'";
                get_Display(sql);
                //获取PNL布局的右侧备料数据
                var sql = "exec h_p_HY_HistogramReport '" + HBarCode_PNL + "','" + HBarCode_Set + "','right'";
                get_Display(sql);
                //更新 å…¨å±€PNL条码编号
                if (HLayOut_PNL.length > 0) {
                    HBarCode_PNL_Note = HLayOut_PNL[0]["HBarCode_PNL"];
                } else {
                    HBarCode_PNL_Note = "";
                }
                //加载PNL布局直方图
                draw_Histogram(HLayOut_PNL);
                //加载PNL布局中PCS的监听事件
                set_buttonClickListener(HLayOut_PNL);
                //清空PNL布局数据
                HLayOut_PNL = [];
                //关闭加载遮罩
                layer.close(ajaxLoad);
            }
            //#endregion
            //#region é‡ç½®è¿‡æ»¤æ¡ä»¶æ–¹æ³•
            function set_ClearQuery() {
                $("#HBarCode_PNL").val("");
                $("#HBarCode_Set").val("");
                sWhere = "";
            }
            //#endregion
            //#region åˆ·æ–°
            function get_Refresh() {
                $("#btnSearch").trigger('click');
            }
            //#endregion
            //#region æƒé™åˆ¤å®š
            function set_ModCheck(ModRightNameCheck) {
                var Permission = false;
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/LMES/getReportByModRightNameCheck", //方法所在页面和方法名
                    async: false,
                    data: { "ModRightNameCheck": ModRightNameCheck, "user": sessionStorage["HUserName"] },
                    success: function (result) {
                        if (result.count == 1) {
                            Permission = true;
                        } else {
                            layer.alert("当前模块没有查询权限!", { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
                return Permission;
            }
            //#endregion
            //#region æ ¹æ®æ•°æ®ç»˜åˆ¶ç›´æ–¹å›¾
            function draw_Histogram(data) {
                var HSetNo = "";                                                //记录上一个PCS所属的set号
                var HPosition_x = 0;                                            //记录上一个PCS的行索引
                var HIconUrl = "";                                              //记录PCS图标资源的位置
                var HContainerElementID = "HistogramReport";                    //直方图容器id
                var HCurrentElementID_Set = "";                                 //当前set容器id
                if (data.length > 0) {
                    HIconUrl = data[0]["HIcon"];
                }
                //获取直方图容器对象
                var HContainerElement_0 = document.getElementById(HContainerElementID);
                // éåŽ†ç›´æ–¹å›¾å®¹å™¨å¯¹è±¡ä¸­çš„æ‰€æœ‰å­å…ƒç´ å¹¶ä»ŽDOM中移除
                while (HContainerElement_0.firstChild) {
                    HContainerElement_0.removeChild(HContainerElement_0.firstChild);
                }
                //遍历生成直方图
                for (var i = 0; i < data.length; i++) {
                    //如果当前PCS所属的set号 ä¸Žè®°å½•çš„ ä¸Šä¸€ä¸ªPCS所属的set号 ä¸ä¸€è‡´ï¼Œåˆ™éœ€è¦åˆ›å»ºæ–°çš„set容器
                    if (data[i]["HSetNo"] != HSetNo) {
                        //获取直方图容器对象
                        var HContainerElement = document.getElementById(HContainerElementID);
                        //set容器
                        var HContainerElement_Set = document.createElement('div');                              //set容器
                        HContainerElement_Set.id = data[i]["HSetNo"];                                           //set容器的id为set号
                        HContainerElement_Set.className = "layui-inline";
                        HContainerElement_Set.style = "margin-left:20px;";
                        //将set容器添加到直方图容器对象中
                        HContainerElement.appendChild(HContainerElement_Set);
                        //记录 å½“前set容器id
                        HCurrentElementID_Set = data[i]["HSetNo"];
                    }
                    //根据 å½“前set容器id èŽ·å– å½“前set容器对象
                    var HCurrentElement_Set = document.getElementById(HCurrentElementID_Set);
                    //PCS容器
                    var HContainerElement_PCS = document.createElement('div');                              //PCS容器
                    HContainerElement_PCS.id = data[i]["HPCSNo"];                                           //PCS容器的id为PCS号
                    HContainerElement_PCS.style = "border: 2px solid black;";      //设置PCS的图标
                    HContainerElement_PCS.className = "layui-inline";
                    if (data[i]["HSetNo"] == HSetNo && data[i]["HPosition_x"] != HPosition_x) {             //相同set容器中,当前PCS的行索引与上一个PCS的行索引不一致,则换行
                        var HBrElement_PCS = document.createElement('br');
                        HCurrentElement_Set.appendChild(HBrElement_PCS);
                    }
                    //PCS数据维护按钮
                    var HButtonElement_PCS = document.createElement('button');                              //PCS容器中的按钮
                    HButtonElement_PCS.id = data[i]["HPCSNo"] + "_Button";
                    HButtonElement_PCS.setAttribute('lay-filter', data[i]["HPCSNo"] + "_Button");
                    HButtonElement_PCS.type = "button";
                    HButtonElement_PCS.className = "layui-btn layuiadmin-btn-order";
                    if (data[i]["HIsBadFlag"] == "1" && data[i]["HCheckProc"] == "炬森VRS内层") {
                        HButtonElement_PCS.style = "background-image: url('" + HIconUrl + "'); background-size: cover; background-position: center; background-repeat: no-repeat;background-color:red;";
                    }
                    else if (data[i]["HIsBadFlag"] == "1" && data[i]["HCheckProc"] == "炬森VRS外层") {
                        HButtonElement_PCS.style = "background-image: url('" + HIconUrl + "'); background-size: cover; background-position: center; background-repeat: no-repeat;background-color:orange;";
                    }
                    else if (data[i]["HIsBadFlag"] == "1" && data[i]["HCheckProc"] == "AVI") {
                        HButtonElement_PCS.style = "background-image: url('" + HIconUrl + "'); background-size: cover; background-position: center; background-repeat: no-repeat;background-color:yellow;";
                    }
                    else if (data[i]["HIsBadFlag"] == "1" && data[i]["HCheckProc"] == "电测") {
                        HButtonElement_PCS.style = "background-image: url('" + HIconUrl + "'); background-size: cover; background-position: center; background-repeat: no-repeat;background-color:green;";
                    }
                    else {
                        HButtonElement_PCS.style = "background-image: url('" + HIconUrl + "'); background-size: cover; background-position: center; background-repeat: no-repeat;background-color:black;";
                    }
                    ////将PCS数据维护按钮添加到PCS容器对象中
                    HContainerElement_PCS.appendChild(HButtonElement_PCS);
                    //将PCS容器添加到set容器对象中
                    HCurrentElement_Set.appendChild(HContainerElement_PCS);
                    HSetNo = data[i]["HSetNo"];
                    HPosition_x = data[i]["HPosition_x"];
                };
            }
            //#endregion
            //#region è®¾ç½®PCS的监听事件
            function set_buttonClickListener(data) {
                for (var i = 0; i < data.length; i++) {
                    var elementID = data[i]["HPCSNo"] + "_Button";
                    var element = document.getElementById(elementID);
                    if (element == null) {
                        continue;
                    } else {
                        element.addEventListener('click', function (event) {
                            var PCSNo_Button = event.currentTarget.id;                                                  //获取触发事件的元素的ID
                            var PCSElement_Button = document.getElementById(PCSNo_Button);                              //获取PCS按钮元素
                            var PCSElement_Div = PCSElement_Button.parentElement;                                       //获取PCS按钮元素所在的PCS容器元素
                            var SetElement_Div = PCSElement_Div.parentElement;                                          //获取PCS容器元素所在的set容器元素
                            var PCSNo = PCSElement_Div.id;                                                              //PCS号
                            var SetNo = SetElement_Div.id;                                                              //set号
                            var title = "PNL条码编号:" + HBarCode_PNL_Note + ";set号:" + SetNo + ";PCS号:" + PCSNo;
                            layer.open({
                                type: 2
                                , skin: "layui-layer-rim" //加上边框
                                , title: "PCS检验信息维护(" + title + ")"  //标题
                                , closeBtn: 1  //窗体右上角关闭 çš„ æ ·å¼
                                , shift: 2 //弹出动画
                                , area: ["50%", "80%"] //窗体大小
                                , maxmin: true //设置最大最小按钮是否显示
                                , content: ['./HY_HistogramReport_ForPCSCheckNote.html?HBarCode_PNL=' + HBarCode_PNL_Note + "&HSetNo=" + SetNo + "&PCSNo=" + PCSNo, "yes"]
                            })
                        });
                    }
                }
            }
//#endregion
        });
            //#endregion
    </script>
</body>
</html>
WebTM/views/°¸Àý´úÂë/»ªÔ¶/HY_HistogramReport_ForPCSCheckNote.html
New file
@@ -0,0 +1,93 @@
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>批改小时产能</title>
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></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>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <style>
        /* é˜²æ­¢ä¸‹æ‹‰æ¡†çš„下拉列表被隐藏---必须设置--- */
        .layui-table-cell {
            overflow: visible !important;
        }
        /* ä½¿å¾—下拉框与单元格刚好合适 */
        td .layui-form-select {
            margin-top: -10px;
            margin-left: -15px;
            margin-right: -15px;
        }
    </style>
</head>
<body>
    <div class="layui-fluid" style="padding: 0;">
        <div class="layui-card" style="padding: 2px;background-color: #efefef;">
            <div class="layui-card-body" style="padding: 1px;">
                <form class="layui-form" action="" lay-filter="formData" style="background-color:white;">
                    <div style="padding: 10px;">
                        <button class="layui-btn layui-btn-normal" type="button" lay-submit="" lay-filter="add" id="add">新增</button>
                        <button class="layui-btn layui-btn-normal" type="button" lay-submit="" lay-filter="edit" id="edit">修改</button>
                        <button class="layui-btn layui-btn-normal" type="button" lay-submit="" lay-filter="delete" id="delete">删除</button>
                        <button class="layui-btn layui-btn-normal" type="button" lay-submit="" lay-filter="exit" id="exit">退出</button>
                    </div>
                </form>
            </div>
        </div>
    </div>
</body>
</html>
<script>
    layui.config({
        base: '../../../layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index' //主入口模块
    }).use(['index', 'form', 'laydate', 'table', 'element'], function () {
        //#region å…¬å…±å˜é‡
        var $ = layui.$
            , admin = layui.admin
            , layer = layui.layer
            , table = layui.table
            , form = layui.form
            , element = layui.element;
        //#endregion
        //#region èŽ·å–å‚æ•°ä¿¡æ¯
        //获取页面跳转参数
        var params = get_UrlVars();
        var HBarCode_PNL = params[params[0]];    //PNL条码编号
        var HSetNo = params[params[1]];         //set号
        var HPCSNo = params[params[2]];         //PCS号
        //#endregion
        //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
        //#region按钮监听 æ–°å¢ž
        form.on('submit(add)', function (data) {
            alert("1");
        });
        //#endregion
        //#region按钮监听 ä¿®æ”¹
        form.on('submit(edit)', function (data) {
            alert("2");
        });
        //#endregion
        //#region按钮监听 åˆ é™¤
        form.on('submit(delete)', function (data) {
            alert("3");
        });
        //#endregion
        //#region退出
        form.on('submit(exit)', function () {
            Pub_Close(1);
        })
        //#endregion
        //#endregion
    });
</script>
WebTM/views/°¸Àý´úÂë/»ªÔ¶/HY_InterfaceTest.html
New file
@@ -0,0 +1,426 @@
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>销售订单编辑</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <script src="../../../layuiadmin/layui/layui.js"></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>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script src="../../../layuiadmin/PageTitle.js"></script>
    <style>
        /*.main-btn {*/ /*头部主按钮*/
        /*padding: 0 2px;*/ /*调整按钮左右空隙大小*/
        /*height: 30px;
            line-height: 30px;
        }*/
        .btn-title {
            font-size: 16px;
        }
        /* é˜²æ­¢ä¸‹æ‹‰æ¡†çš„下拉列表被隐藏---必须设置--- */
        .layui-table-cell {
            overflow: visible !important;
        }
        /* ä½¿å¾—下拉框与单元格刚好合适 */
        td .layui-form-select {
            margin-top: -10px;
            margin-left: -15px;
            margin-right: -15px;
        }
        /* .layui-form-item .layui-inline {
            margin-top: 0px;
            margin-bottom: 5px;
            margin-right: 0px;
        }
        .layui-form-label {
            width: 25%;
        }*/
    </style>
</head>
<body>
    <div class="layui-fluid" style="padding: 0;">
        <div class="layui-card" style="padding: 15px;">
            <div class="layui-card-body" style="padding: 1px;">
                <form class="layui-form" lay-filter="component-form-group" action="">
                    <div class="layui-card-header">
                        <div class="layui-btn-group">
                            <button type="button" id="add-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill">炬森VRS内层检验结果上传接口</button>
                            <button type="button" id="add-btn1" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill1">炬森VRS外层获取datamapping数据接口</button>
                            <button type="button" id="add-btn2" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill2">炬森VRS外层检验结果上传接口</button>
                            <button type="button" id="add-btn3" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill3">AVI获取datamapping数据接口</button>
                            <button type="button" id="add-btn4" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill4">AVI检验结果上传接口</button>
                            <button type="button" id="add-btn5" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill5">电测获取datamapping数据接口</button>
                            <button type="button" id="add-btn6" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill6">电测检验结果上传接口</button>
                            <button type="button" id="add-btn7" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_SaveBill7">激光割获取datamapping数据接口</button>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
    <script>
        //#region æŠ˜å æ³¨é‡Š
        var HDataEmp = {};
        //#endregion
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
        }).extend({
            index: 'lib/index' //主入口模块
        }).use(['index', 'form', 'laydate', 'table', 'element', 'tableSelect'], function () {
            //#region å…¬ç”¨å˜é‡
            var $ = layui.$
                , admin = layui.admin
                , layer = layui.layer
                , table = layui.table
                , form = layui.form
                , laydate = layui.laydate
                , element = layui.element
                , tableSelect = layui.tableSelect;
            //#region è¡¨å¤´æŒ‰é’®è§¦å‘事件
            //#region æŒ‰é’®ç›‘听 ç‚¬æ£®VRS内层检验结果上传接口
            form.on('submit(set_SaveBill)', function (data) {
                VRSInner_saveCheckNote(data);
            });
            //#endregion
            //#region æŒ‰é’®ç›‘听 ç‚¬æ£®VRS外层获取datamapping数据接口
            form.on('submit(set_SaveBill1)', function (data) {
                getDataMapping_VRSOuter();
            });
            //#endregion
            //#region æŒ‰é’®ç›‘听 ç‚¬æ£®VRS外层检验结果上传接口
            form.on('submit(set_SaveBill2)', function (data) {
                VRSOuter_saveCheckNote(data);
            });
            //#endregion
            //#region æŒ‰é’®ç›‘听 AVI获取datamapping数据接口
            form.on('submit(set_SaveBill3)', function (data) {
                getDataMapping_AVI();
            });
            //#endregion
            //#region æŒ‰é’®ç›‘听 AVI检验结果上传接口
            form.on('submit(set_SaveBill4)', function (data) {
                AVI_saveCheckNote(data);
            });
            //#endregion
            //#region æŒ‰é’®ç›‘听 ç”µæµ‹èŽ·å–datamapping数据接口
            form.on('submit(set_SaveBill5)', function (data) {
                getDataMapping_DC();
            });
            //#endregion
            //#region æŒ‰é’®ç›‘听 ç”µæµ‹æ£€éªŒç»“果上传接口
            form.on('submit(set_SaveBill6)', function (data) {
                DC_saveCheckNote(data);
            });
            //#endregion
            //#region æŒ‰é’®ç›‘听 æ¿€å…‰å‰²èŽ·å–datamapping数据接口
            form.on('submit(set_SaveBill7)', function (data) {
                getDataMapping_JGG();
            });
            //#endregion
            //#region ç‚¬æ£®VRS内层检验结果上传接口
            function VRSInner_saveCheckNote(data) {
                var param = [];
                param.push({
                    HBarCode: "112"
                    , HPCSNo: "0101"
                    , HPosition_x: 1
                    , HPosition_y: 1
                    , HPageIndex: 0
                    , HBadReason: "测试"
                });
                param.push({
                    HBarCode: "112"
                    , HPCSNo: "0102"
                    , HPosition_x: 1
                    , HPosition_y: 2
                    , HPageIndex: 1
                    , HBadReason: "测试"
                });
                var params = {};
                params.HMaker = sessionStorage["HUserName"];
                params.param = param;
                var sMainStr = JSON.stringify(params);
                $.ajax({
                    type: "POST",
                    url: GetWEBURL() + "/VRSInner/VRSInner_saveCheckNote", //方法所在页面和方法名
                    async: true,
                    data: { "sMainSub": sMainStr },
                    dataType: "json",
                    success: function (data) {
                        if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            layer.msg(data.msg, { icon: 5 });
                        }
                        else {
                            layer.alert(data.msg, { icon: 5 });
                        }
                    },
                    error: function (err) {
                        layer.alert("错误:" + err, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region ç‚¬æ£®VRS外层获取datamapping数据接口
            function getDataMapping_VRSOuter() {
                var HBarCode = "111";
                $.ajax({
                    url: GetWEBURL() + '/VRSOuter/VRSOuter_getDataMapping'
                    ,async: false
                    ,type: "GET"
                    ,data: { "HBarCode": HBarCode }
                    ,success: function (data1) {
                        if (data1.code == "1") {
                            var resultData = JSON.stringify(data1.data);
                            layer.alert(data1.code + resultData, { icon: 5 });
                        } else {
                            layer.alert(data1.code + data1.msg, { icon: 5 });
                        }
                    }
                    , error: function (e) {
                        layer.alert("接口请求失败!" + e, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region ç‚¬æ£®VRS外层检验结果上传接口
            function VRSOuter_saveCheckNote(data) {
                var param = [];
                param.push({
                    HBarCode: "112"
                    , HPCSNo: "1110101"
                    , HPosition_x: 1
                    , HPosition_y: 1
                    , HPageIndex: 0
                    , HBadReason: "测试"
                });
                param.push({
                    HBarCode: "112"
                    , HPCSNo: "1110102"
                    , HPosition_x: 1
                    , HPosition_y: 2
                    , HPageIndex: 0
                    , HBadReason: "测试"
                });
                var params = {};
                params.HMaker = sessionStorage["HUserName"];
                params.param = param;
                var sMainStr = JSON.stringify(params);
                $.ajax({
                    type: "POST",
                    url: GetWEBURL() + "/VRSOuter/VRSOuter_saveCheckNote", //方法所在页面和方法名
                    async: true,
                    data: { "sMainSub": sMainStr },
                    dataType: "json",
                    success: function (data) {
                        if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            layer.msg(data.msg, { icon: 5 });
                        }
                        else {
                            layer.alert(data.msg, { icon: 5 });
                        }
                    },
                    error: function (err) {
                        layer.alert("错误:" + err, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region AVI获取datamapping数据接口
            function getDataMapping_AVI() {
                var HBarCode = "112";
                $.ajax({
                    url: GetWEBURL() + '/AVI/AVI_getDataMapping'
                    , async: false
                    , type: "GET"
                    , data: { "HBarCode": HBarCode }
                    , success: function (data1) {
                        if (data1.code == "1") {
                            var resultData = JSON.stringify(data1.data);
                            layer.alert(data1.code + resultData, { icon: 5 });
                        } else {
                            layer.alert(data1.code + data1.msg, { icon: 5 });
                        }
                    }
                    , error: function (e) {
                        layer.alert("接口请求失败!" + e, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region AVI检验结果上传接口
            function AVI_saveCheckNote(data) {
                var param = [];
                param.push({
                    HBarCode: "112"
                    , HPCSNo: "1110101"
                    , HPosition_x: 1
                    , HPosition_y: 1
                    , HPageIndex: 0
                    , HBadReason: "测试"
                });
                param.push({
                    HBarCode: "112"
                    , HPCSNo: "1110102"
                    , HPosition_x: 1
                    , HPosition_y: 2
                    , HPageIndex: 0
                    , HBadReason: "测试"
                });
                var params = {};
                params.HMaker = sessionStorage["HUserName"];
                params.param = param;
                var sMainStr = JSON.stringify(params);
                $.ajax({
                    type: "POST",
                    url: GetWEBURL() + "/AVI/AVI_saveCheckNote", //方法所在页面和方法名
                    async: true,
                    data: { "sMainSub": sMainStr },
                    dataType: "json",
                    success: function (data) {
                        if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            layer.msg(data.msg, { icon: 5 });
                        }
                        else {
                            layer.alert(data.msg, { icon: 5 });
                        }
                    },
                    error: function (err) {
                        layer.alert("错误:" + err, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region ç”µæµ‹èŽ·å–datamapping数据接口
            function getDataMapping_DC() {
                var HBarCode = "11201";
                $.ajax({
                    url: GetWEBURL() + '/DC/DC_getDataMapping'
                    , async: false
                    , type: "GET"
                    , data: { "HBarCode": HBarCode }
                    , success: function (data1) {
                        if (data1.code == "1") {
                            var resultData = JSON.stringify(data1.data);
                            layer.alert(data1.code + resultData, { icon: 5 });
                        } else {
                            layer.alert(data1.code + data1.msg, { icon: 5 });
                        }
                    }
                    , error: function (e) {
                        layer.alert("接口请求失败!" + e, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region ç”µæµ‹æ£€éªŒç»“果上传接口
            function DC_saveCheckNote(data) {
                var param = [];
                param.push({
                    HBarCode: "11201"
                    , HPCSNo: "0101"
                    , HPosition_x: 1
                    , HPosition_y: 1
                    , HPageIndex: 0
                    , HBadReason: "测试"
                });
                param.push({
                    HBarCode: "11201"
                    , HPCSNo: "0102"
                    , HPosition_x: 1
                    , HPosition_y: 2
                    , HPageIndex: 0
                    , HBadReason: "测试"
                });
                var params = {};
                params.HMaker = sessionStorage["HUserName"];
                params.param = param;
                var sMainStr = JSON.stringify(params);
                $.ajax({
                    type: "POST",
                    url: GetWEBURL() + "/DC/DC_saveCheckNote", //方法所在页面和方法名
                    async: true,
                    data: { "sMainSub": sMainStr },
                    dataType: "json",
                    success: function (data) {
                        if (data.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            layer.msg(data.msg, { icon: 5 });
                        }
                        else {
                            layer.alert(data.msg, { icon: 5 });
                        }
                    },
                    error: function (err) {
                        layer.alert("错误:" + err, { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region æ¿€å…‰å‰²èŽ·å–datamapping数据接口
            function getDataMapping_JGG() {
                var HBarCode = "11201";
                $.ajax({
                    url: GetWEBURL() + '/JGG/JGG_getDataMapping'
                    , async: false
                    , type: "GET"
                    , data: { "HBarCode": HBarCode }
                    , success: function (data1) {
                        if (data1.code == "1") {
                            var resultData = JSON.stringify(data1.data);
                            layer.alert(data1.code + resultData, { icon: 5 });
                        } else {
                            layer.alert(data1.code + data1.msg, { icon: 5 });
                        }
                    }
                    , error: function (e) {
                        layer.alert("接口请求失败!" + e, { icon: 5 });
                    }
                });
            }
            //#endregion
        });
    </script>
</body>
</html>
WebTM/views/Ä£Öξ߹ÜÀí/Ä£Öξֿ߲â¹ÜÀí/Sc_Add_MouldProdBackBillList.html
@@ -1178,7 +1178,7 @@
                                shift: 2,
                                area: ['80%', '80%'],
                                maxmin: true
                                , content: ['../../../views/基础资料/公用基础资料/Gy_Unit.html?Type=HUnitList&openType=2', 'yes'],
                                , content: ['../../../views/基础资料/公用基础资料/Gy_Unit.html?Type=HUnitList&openType=' + sessionStorage["Organization"], 'yes'],
                                btn: ['确定', '取消']
                                , btn1: function (index, layero) {
WebTM/views/Ä£Öξ߹ÜÀí/Ä£Öξֿ߲â¹ÜÀí/Sc_MouldProdOutBillEdit.html
@@ -1220,7 +1220,7 @@
                                shift: 2,
                                area: ['80%', '80%'],
                                maxmin: true
                                , content: ['../../../views/基础资料/公用基础资料/Gy_Unit.html?Type=HUnitList&openType=2', 'yes'],
                                , content: ['../../../views/基础资料/公用基础资料/Gy_Unit.html?Type=HUnitList&openType=' + sessionStorage["Organization"], 'yes'],
                                btn: ['确定', '取消']
                                , btn1: function (index, layero) {
WebTM/views/Ä£Öξ߹ÜÀí/Ä£Öξ߹ÜÀí/Gy_MouldFileList.html
@@ -983,7 +983,7 @@
                        , shade: 0.6 //遮罩透明度
                        , maxmin: false //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + data[0].hmainid.toString() + '&MyMsg=' + data[0].hmainid.toString() + '&Type=HEquipFileMainBill', 'yes']
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + data[0].hmainid.toString() + '&MyMsg=' + data[0].hmainid.toString() + '&Type=HMouldFileMainBill', 'yes']
                        , resize: false
                    })
                }
@@ -996,7 +996,12 @@
            function get_PrintReport() {
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;
                if (checkStatus.data.length === 1) {
                if (checkStatus.data.length >= 1) {
                    var rows = [];
                    for (var i = 0; i < data.length; i++) {
                        rows.push(data[i].hmainid.toString());
                    }
                    layer.open({
                        type: 2
                        , area: ['50%', '50%']
@@ -1004,7 +1009,7 @@
                        , shade: 0.6 //遮罩透明度
                        , maxmin: false //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + data[0].hmainid.toString() + '&MyMsg=' + data[0].hmainid.toString() + '&Type=HEquipFileMainBill', 'yes']
                        , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + rows.toString() + '&MyMsg=' + rows.toString() + '&Type=HMouldFileMainBill', 'yes']
                        , resize: false
                    })
                }
WebTM/views/Éú²ú¹ÜÀí/±¦¹¤ÅŲú/JIT_DayPlanPlatForm.html
@@ -53,7 +53,7 @@
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnUnlockRequest" id="btnUnlock">解锁申请</button>
                            <!--<button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnLockOrder" id="btnLockOrder">锁定工单</button>
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnUnlockOrder" id="btnUnlockOrder">解锁工单</button>-->
                            <!--<button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnCompleteSetAnalysis" id="btnCompleteSetAnalysis">齐套分析</button>-->
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnCompleteSetAnalysis" id="btnCompleteSetAnalysis">齐套分析</button>
                            <!--<button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnTLYS" id="btnTLYS">提料运算</button>
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btn_Calculate" id="btn_Calculate">欠料运算</button>-->
                            <!--<button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnRoutEdit" id="btnRoutEdit">工艺路线</button>-->
@@ -1077,8 +1077,8 @@
            var lastDay = new Date(year, month, 0).getDate();               //当月最后一天
            var thisDay = new Date().getDay();                              //当天是本月第几天
            var valueList = [7, lastDay - thisDay+1,31,40];
            var titleList = ["7天", "本月","31天","40天"];
            var valueList = [7, lastDay - thisDay+1,31,40,50];
            var titleList = ["7天", "本月","31天","40天","50天"];
            var HArrangeProductDayQty_ArrayList = '';
            for (var i = 0; i < valueList.length; i++) {
@@ -1409,7 +1409,6 @@
            columns.push({ field: '物料名称', title: '物料名称', width: 150});
            columns.push({ field: '规格型号', title: '规格型号', width: 150 });
            columns.push({ field: '小时产能', title: '小时产能', width: 150, edit: 'text' });
            columns.push({ field: '产线总产能', title: '产线总产能', width: 150,  edit: 'text' });
            columns.push({ field: '销售订单数量', title: '销售订单数量', width: 150 });//0
            columns.push({ field: '计划数量', title: '生产订单数量', width: 150 });//0
            columns.push({ field: '日计划数量总量', title: '日计划数量总量', width: 150 });//0
WebTM/views/Éú²ú¹ÜÀí/±¦¹¤ÅŲú/ReportPODemandPlanBillList.html
New file
@@ -0,0 +1,517 @@
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>提料计划报表(采购订单维度)</title>
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></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>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/soulTable.slim.js"></script>
    <script src="../../../layuiadmin/SetColumn.js"></script>
</head>
<body>
    <div class="layui-fluid">
        <div class="layui-col-md12">
            <div class="layui-card" style="padding: 1px">
                <div class="layui-card-body" style="padding: 1px;">
                    <form class="layui-form" action="" lay-filter="component-form-group">
                        <div class="layui-collapse">
                            <div class="layui-colla-item">
                                <div class="layui-colla-title layui-inline">
                                    <div class="layui-inline">
                                        <span>更多</span>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label" style="width: 85px;">组织</label>
                                    <div class="layui-input-block" style="margin-left: 120px; width: 185px;">
                                        <select name="HORGID" id="HORGID" lay-verify="HORGID">
                                            <!--动态渲染组织-->
                                        </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="date" class="layui-input" lay-verify="HBEGINDATE" name="HBEGINDATE" id="HBEGINDATE" style="padding-left: 78px;">
                                    </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="date" class="layui-input" lay-verify="HENDDATE" name="HENDDATE" id="HENDDATE" style="padding-left: 78px;">
                                    </div>
                                </div>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">查询</button>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnReSearch" id="btnReSearch">重置</button>
                                <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" style="width: 85px;padding: 9px 18px;">产品编码</label>
                                            <div class="layui-input-block" style="margin-left: 77px;">
                                                <input type="hidden" class="layui-input" lay-verify="HMATERIALID" name="HMATERIALID" id="HMATERIALID" value="0" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="text" class="layui-input" lay-verify="HMATERIALNAME" name="HMATERIALNAME" id="HMATERIALNAME" value="" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnHMATERIALID" id="btnHMATERIALID" style="padding: 0 10px;float: right;margin-right: 3px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">供应商</label>
                                            <div class="layui-input-block" style="margin-left: 77px;">
                                                <input type="hidden" class="layui-input" lay-verify="HSUPPLIERID" name="HSUPPLIERID" id="HSUPPLIERID" value="0" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="text" class="layui-input" lay-verify="HSUPPLIERNAME" name="HSUPPLIERNAME" id="HSUPPLIERNAME" value="" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnHSUPPLIERID" id="btnHSUPPLIERID" style="padding: 0 10px;float: right;margin-right: 3px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                                </button>
                                            </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="HXQD" id="HXQD">
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row" style="margin: 10px 0 10px;">
                                        <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="HPURORDERNO" id="HPURORDERNO">
                                            </div>
                                        </div>
                                    </div>
                                    <hr />
                                </div>
                            </div>
                        </div>
                        <table class="" 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="HideColumn"><i class="layui-icon layui-icon-form"></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>
                            </div>
                        </script>
                    </form>
                </div>
            </div>
        </div>
    </div>
</body>
</html>
<script>
    var treeCkData = { id: 0 };
    var TagId = "";
    var TagParentId = "";
    layui.config({
        base: '../../../layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index', //主入口模块
    }).use(['tree', 'index', 'form', 'table', 'element', 'laypage', 'laydate', 'util','soulTable'], function () {
        //#region å…¬ç”¨å˜é‡
        var $ = layui.$
            , admin = layui.admin
            , layer = layui.layer
            , table = layui.table
            , form = layui.form
            , element = layui.element
            , laypage = layui.laypage
            , laydate = layui.laydate
            , util = layui.util
            , tree = layui.tree
            , util = layui.util
            , soulTable = layui.soulTable
        var sWhere = "";
        var option = [];
        var HModName = "ReportPODemandPlanBillList";
        var ins = [];
        //#endregion
        //#region è¿›å…¥é¡µé¢å³åŠ è½½
        //初始化界面
        set_ClearBill();
        //#endregion
        //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
        //头工具栏事件
        table.on('toolbar(mainTable)', function (obj) {
            switch (obj.event) {
                //隐藏列设置
                case 'HideColumn':
                    get_HideColumnNoPageForPlan(HModName, option, get_FastQuery);
                    break;
                //导出excel
                case 'get_export':
                    get_Export();
                    break;
            };
        });
        //#region äº§å“ç¼–码
        form.on('submit(btnHMATERIALID)', function (data) {
            btnHMATERIALID();
        });
        //#endregion
        //#region ä¾›åº”商
        form.on('submit(btnHSUPPLIERID)', function (data) {
            btnHSUPPLIERID();
        });
        //#endregion
        //#region é‡ç½®æŒ‰é’®
        form.on('submit(btnReSearch)', function (data) {
            set_ClearQuery();
        });
        //#endregion
        //#region æŸ¥è¯¢æŒ‰é’®
        form.on('submit(btnSearch)', function (data) {
            get_FastQuery(2);
        });
        //#endregion
        //#endregion
        //#region æœ¬é¡µé¢è¢«è°ƒç”¨çš„æ‰€æœ‰æ–¹æ³•
        //#region åˆå§‹åŒ–界面
        function set_ClearBill() {
            //初始化日期
            $("#HBEGINDATE").val(Format(new Date(new Date()), "yyyy-MM-dd"));
            $("#HENDDATE").val(Format(new Date($("#HBEGINDATE").val()).setDate(new Date($("#HBEGINDATE").val()).getDate() + 30), "yyyy-MM-dd"));
            //生产组织加载
            Organ();
            ////初始化表格
            //set_InitGrid();
            //快速过滤
            get_FastQuery(1);
            ColFilter();
        }
        //#endregion
        //#region åˆå§‹åŒ–表格方法
        function set_InitGrid() {
            var columns = [];
            columns.push({ type: 'checkbox', fixed: 'left', sort: true});
            columns.push({ field: '组织', title: '采购组织', sort: true});
            columns.push({ field: '物料名称', title: '物料名称', sort: true});
            columns.push({ field: '规格型号', title: '物料规格', sort: true});
            columns.push({ field: '供应商', title: '供应商', sort: true});
            columns.push({ field: 'FSUMQTY', title: '合计', sort: true});
            columns.push({ field: 'HPOOrderBillNo', title: '采购订单号', sort: true});
            columns.push({ field: 'HSeOrderBillNo', title: '销售订单号', sort: true});
            columns.push({ field: 'HPOOrderBillRemark', title: '摘要', sort: true });
            columns.push({ field: 'HPOOrderBillNote', title: '备注', sort: true});
            columns.push({ field: '采购员', title: '采购员', sort: true});
            columns.push({ field: '物料代码', title: '物料编码', sort: true});
            columns.push({ field: '计量单位名称', title: '计量单位', sort: true});
            columns.push({ field: 'TQSUM', title: '提料拖期数量', sort: true, totalRow: true});
            //获取两个月期之间的相差
            var time1 = Date.parse(new Date($("#HBEGINDATE").val()));//开始时间
            var time2 = Date.parse(new Date($("#HENDDATE").val()));//结束时间
            var Days = Math.abs(parseInt((time2 - time1) / 1000 / 3600 / 24));
            //获取年
            var yyyy = new Date($("#HBEGINDATE").val()).getFullYear();
            //获取月份
            var MM = new Date($("#HBEGINDATE").val()).getMonth() + 1;
            //获取开始月份的最大天数
            var SumMonth = new Date(yyyy, MM, 0).getDate(); //动态两月之差
            //获取开始日期的天数
            var HBEGINDATE = new Date(new Date($("#HBEGINDATE").val())).getDate(); //获取开始日期天数
            var k = 0;//收集循环次数
            for (var j = 0; j <= (Days - k); j++) {
                var time_temp = Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd');
                if (isValidDate(time_temp)) {
                    columns.push({
                        field: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd'), title: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'MM.dd'), width: 70, totalRow: true, templet: function (d) {
                            //获取当前今天明天后天三天的日期字符串
                            const dates = [];
                            const today = new Date();
                            for (let i = 0; i < 3; i++) {
                                const date = new Date(today);
                                date.setDate(today.getDate() + i);
                                const dateStr = date.toISOString().slice(0, 10);
                                dates.push(`${dateStr}`);
                            }
                            // å¦‚果行日期在当前日期三天后,则内容标红
                            if ((this.field == dates[0] || this.field == dates[1]) && d[this.field] != null) {
                                return '<span style="color:Orange">' + (d[this.field] == null ? 0 : d[this.field]) + '</span>';
                            }
                            else if ((this.field == dates[2]) && d[this.field] != null) {
                                return '<span style="color:red">' + (d[this.field] == null ? 0 : d[this.field]) + '</span>';
                            }
                            else {
                                return d[this.field] == null ? 0 : d[this.field]
                            }
                        }
                    })
                } else {
                    columns.push({ field: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd'), title: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'MM.dd'), width: 70, totalRow: true })
                }
                //跨年的话 ä¼šä»Žä¸€æœˆä¸€å·å¼€å§‹
                if (MM == 12 && (HBEGINDATE + j) == 31) {
                    yyyy += 1;
                    MM = 1;
                    SumMonth = new Date(yyyy, MM, 0).getDate();
                    HBEGINDATE = 0;
                    k += j;
                    j = 0;
                } else if ((HBEGINDATE + j) == SumMonth) { //跨月 æœˆæ•°åР䏀  å¤©æ•°ä»Žä¸€å¼€å§‹
                    HBEGINDATE = 0;
                    MM += 1;
                    SumMonth = new Date(yyyy, MM, 0).getDate();
                    k += j;
                    j = 0;
                }
            }
            columns.push({ field: '提料计划合计', title: '提料计划合计' });
            option = {
                elem: '#mainTable'
                , toolbar: '#toolbarDemo'
                , height: 'full-50'
                , page: false
                , cellMinWidth: 90
                , totalRow: true
                , limit: 20000
                , limits: [50, 500, 5000, 20000]
                , loading: false
                , cols: [columns]
                , done: function (res, curr, count) {
                    soulTable.render(this);
                }
            };
        }
        //#endregion
        //获取组织
        function Organ() {
            //获取登录页组织列
            var Organization = '';
            $.ajax({
                type: "get",
                url: GetWEBURL() + "/Web/GetOrganizations",
                success: function (result) {
                    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>';
                        }
                        $("#HORGID").append(Organization);
                        $("#HORGID").val(sessionStorage["OrganizationID"])
                        form.render('select');
                    }
                    layer.closeAll("loading");
                }
            })
        }
        //#region æŸ¥è¯¢
        function get_Display(sWhere) {
            var ajaxLoad = layer.load();
            $.ajax({
                url: GetWEBURL() + '/JIT_Cg_PODemandPlanBill/ReportPODemandPlanBillList',
                type: "GET",
                data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] },
                success: function (result) {
                    if (result.count == 1) {
                        option.data = result.data;
                        //列设置
                        DisPlay_HideColumnForPlan(HModName, sessionStorage["HUserName"], option);
                        ins = table.render(option);
                        layer.close(ajaxLoad);
                        //layer.alert("查询成功", { icon: 1 });
                    } else {
                        layer.close(ajaxLoad);
                        layer.alert(result.code + result.Message, { icon: 5 });
                    }
                }, error: function () {
                    layer.close(ajaxLoad);
                    layer.alert("接口请求失败!", { icon: 5 });
                }
            });
        }
        //#endregion
        //#region å¿«é€Ÿè¿‡æ»¤
        function get_FastQuery(number) {
            var HORGID = "";
            if (number == 1) {
                HORGID = sessionStorage["OrganizationID"];
            }
            else {
                HORGID = $("#HORGID").val();//组织
            }
            var HBEGINDATE = $("#HBEGINDATE").val();//提料日期
            var HENDDATE = $("#HENDDATE").val();//至
            var HMATERIALID = $("#HMATERIALID").val();//物料/产品
            var HSUPPLIERID = $("#HSUPPLIERID").val();//供应商
            var HXQD = $("#HXQD").val();//需求单号
            var HPURORDERNO = $("#HPURORDERNO").val();//采购订单号
            if (HBEGINDATE > HENDDATE) {
                return layer.msg("开始日期不能小于结束日期!");
            }
            sWhere = {
                HORGID: HORGID
                , HBEGINDATE: HBEGINDATE
                , HENDDATE: HENDDATE
                , HMATERIALID: HMATERIALID
                , HSUPPLIERID: HSUPPLIERID
                , HXQD: HXQD
                , HPURORDERNO: HPURORDERNO
            }
            //初始化表格
            set_InitGrid();
            get_Display(JSON.stringify(sWhere));
            sWhere = "";//调用接口后清空sWhere缓存
        }
        //#endregion
        //#region é‡ç½®è¿‡æ»¤æ¡ä»¶æ–¹æ³•
        function set_ClearQuery() {
            $("#HORGID").val(sessionStorage["OrganizationID"]);//组织
            $("#HBEGINDATE").val(Format(new Date(new Date()), "yyyy-MM-dd"));//提料日期
            $("#HENDDATE").val(Format(new Date($("#HBEGINDATE").val()).setDate(new Date($("#HBEGINDATE").val()).getDate() + 30), "yyyy-MM-dd"));//至
            $("#HMATERIALID").val("0");//物料/产品
            $("#HMATERIALNAME").val("");
            $("#HSUPPLIERID").val("0");//供应商
            $("#HSUPPLIERNAME").val("");
            $("#HXQD").val("");//需求单号
            $("#HPURORDERNO").val("");//采购订单号
            form.render('select');
            sWhere = "";
        }
        //#endregion
        //物料列表
        function btnHMATERIALID() {
            layer.open({
                type: 2 //类型
                , skin: 'layui-layer-rim'//加上边框
                , area: ['90%', '90%']//大小
                , title: '物料列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/公用基础资料/Gy_Material.html', 'yes']
                , 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 === 0) {
                        return layer.msg('请选择数据');
                    }
                    //获取数据
                    $("#HMATERIALID").val(checkStatus.data[0].HItemID);
                    $("#HMATERIALNAME").val(checkStatus.data[0].物料名称);
                    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                }
                , btn2: function (index, layero) { }
            })
        }
        //供应商
        function btnHSUPPLIERID() {
            layer.open({
                type: 2 //类型
                , skin: 'layui-layer-rim'//加上边框
                , area: ['90%', '90%']//大小
                , title: '供应商列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/采购基础资料/Gy_Supplier.html?Type=HSup', 'yes']
                , 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 === 0) {
                        return layer.msg('请选择数据');
                    }
                    //获取数据
                    $("#HSUPPLIERID").val(checkStatus.data[0].HItemID);
                    $("#HSUPPLIERNAME").val(checkStatus.data[0].供应商名称);
                    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                }
                , btn2: function (index, layero) { }
            })
        }
        function get_Export() {
            var data = option.data;
            data.forEach((item) => {
                for (let itemobj in item) {
                    if (item[itemobj] == null) {
                        item[itemobj] = "";
                    }
                    if (item[itemobj].length > 0) {  // å‡è®¾å­—段名为field
                        item[itemobj] = item[itemobj].toString().replace(/[\r\n]+/g, '');  // å°†æ¢è¡Œç¬¦æ›¿æ¢ä¸ºç©ºå­—符串
                    }
                }
            });
            table.exportFile(ins.config.id, data, "xls");
        }
        // ç­›é€‰å‡½æ•°ï¼šæ£€æŸ¥å­—符串是否符合格式筛选日期
        function isValidDate(dateStr) {
            // æ­£åˆ™è¡¨è¾¾å¼éªŒè¯æ ¼å¼
            const formatRegex = /^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/;
            if (!formatRegex.test(dateStr)) return false;
            // åˆ†å‰²å¹´æœˆæ—¥å¹¶è½¬æ¢ä¸ºæ•°å€¼
            const [year, month, day] = dateStr.split('-').map(Number);
            // åˆ›å»ºDate对象(月份从0开始)
            const date = new Date(year, month - 1, day);
            // æ£€æŸ¥æ—¥æœŸæ˜¯å¦æœ‰æ•ˆï¼ˆä¸Žè¾“入的年月日一致)
            return (
                date.getFullYear() === year &&
                date.getMonth() === month - 1 &&
                date.getDate() === day
            );
        }
        //列明显示下拉框
        function ColFilter() {
            var Organization = '<option  value="0" selected="selected" ></option>';
            for (var i = 1; i < option.cols[0].length; i++) {
                if (option.cols[0][i].hide != true) {
                    Organization += '<option  style="color:blue;" value="' + option.cols[0][i].field + '">' + option.cols[0][i].field + '</option>';
                }
            }
            $("#ColName").empty();
            $("#ColName").append(Organization);
            $("#ColName1").empty();
            $("#ColName1").append(Organization);
            $("#ColName2").empty();
            $("#ColName2").append(Organization);
            form.render('select');
        }
        //#endregion
        //以上是layui模块
    });
    function GetHSupNameValue(obj) {
        $("#HSUPPLIERID").val(obj[0].HItemID);
        $("#HSUPPLIERNAME").val(obj[0].供应商名称);
    }
    function GetGyMaterial(obj) {
        $("#HMATERIALID").val(obj.HItemID);
        $("#HMATERIALNAME").val(obj.物料名称);
    }
</script>
WebTM/views/Éú²ú¹ÜÀí/±¦¹¤ÅŲú/ReportPODemandPlanBillList_S.html
New file
@@ -0,0 +1,508 @@
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>提料计划报表</title>
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/ext/soulTable.css" media="all">
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></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>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/SetColumn.js"></script>
    <!--<script src="../../../layuiadmin/soulTable.slim.js"></script>--><!--标题筛选不能引用此js文件-->
</head>
<body>
    <div class="layui-fluid">
        <div class="layui-col-md12">
            <div class="layui-card" style="padding: 1px">
                <div class="layui-card-body" style="padding: 1px;">
                    <form class="layui-form" action="" lay-filter="component-form-group">
                        <div class="layui-collapse">
                            <div class="layui-colla-item">
                                <div class="layui-colla-title layui-inline">
                                    <div class="layui-inline">
                                        <span>更多</span>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label" style="width: 85px;">组织</label>
                                    <div class="layui-input-block" style="margin-left: 120px; width: 185px;">
                                        <select name="HORGID" id="HORGID" lay-verify="HORGID">
                                            <!--动态渲染组织-->
                                        </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="date" class="layui-input" lay-verify="HBEGINDATE" name="HBEGINDATE" id="HBEGINDATE" style="padding-left: 78px;">
                                    </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="date" class="layui-input" lay-verify="HENDDATE" name="HENDDATE" id="HENDDATE" style="padding-left: 78px;">
                                    </div>
                                </div>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">查询</button>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnReSearch" id="btnReSearch">重置</button>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnExport" id="btnExport">导出</button>
                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="bthHideColumn" id="bthHideColumn">列设置</button>
                                <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" style="width: 85px;padding: 9px 18px;">产品编码</label>
                                            <div class="layui-input-block" style="margin-left: 77px;">
                                                <input type="hidden" class="layui-input" lay-verify="HMATERIALID" name="HMATERIALID" id="HMATERIALID" value="0" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="text" class="layui-input" lay-verify="HMATERIALNAME" name="HMATERIALNAME" id="HMATERIALNAME" value="" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnHMATERIALID" id="btnHMATERIALID" style="padding: 0 10px;float: right;margin-right: 3px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">供应商</label>
                                            <div class="layui-input-block" style="margin-left: 77px;">
                                                <input type="hidden" class="layui-input" lay-verify="HSUPPLIERID" name="HSUPPLIERID" id="HSUPPLIERID" value="0" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="text" class="layui-input" lay-verify="HSUPPLIERNAME" name="HSUPPLIERNAME" id="HSUPPLIERNAME" value="" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnHSUPPLIERID" id="btnHSUPPLIERID" style="padding: 0 10px;float: right;margin-right: 3px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                                </button>
                                            </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="HXQD" id="HXQD">
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row" style="margin: 10px 0 10px;">
                                        <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="HPURORDERNO" id="HPURORDERNO">
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                        <table class="" id="mainTable" lay-filter="mainTable"></table>
                    </form>
                </div>
            </div>
        </div>
    </div>
</body>
</html>
<script>
    var treeCkData = { id: 0 };
    var TagId = "";
    var TagParentId = "";
    layui.config({
        base: '../../../layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index', //主入口模块
        soulTable: '../ext/soulTable',
    }).use(['tree', 'index', 'form', 'table', 'element', 'laypage', 'laydate', 'util','soulTable','flow'], function () {
        //#region å…¬ç”¨å˜é‡
        var $ = layui.$
            , admin = layui.admin
            , layer = layui.layer
            , table = layui.table
            , form = layui.form
            , element = layui.element
            , laypage = layui.laypage
            , laydate = layui.laydate
            , util = layui.util
            , tree = layui.tree
            , util = layui.util
            , soulTable = layui.soulTable
            , flow = layui.flow
        var sWhere = " where 1=1 ";
        var option = [];
        var ins;                        //用于导出excel
        var HModName = "ReportPODemandPlanBillList_S";
        //#endregion
        //#region è¿›å…¥é¡µé¢å³åŠ è½½
        //初始化界面
        set_ClearBill();
        //#endregion
        //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
        //#region äº§å“ç¼–码
        form.on('submit(btnHMATERIALID)', function (data) {
            btnHMATERIALID();
        });
        //#endregion
        //#region ä¾›åº”商
        form.on('submit(btnHSUPPLIERID)', function (data) {
            btnHSUPPLIERID();
        });
        //#endregion
        //#region é‡ç½®æŒ‰é’®
        form.on('submit(btnReSearch)', function (data) {
            set_ClearQuery();
        });
        //#endregion
        //#region æŸ¥è¯¢æŒ‰é’®
        form.on('submit(btnSearch)', function (data) {
            get_FastQuery(2);
        });
        //#endregion
        //#region å¯¼å‡ºæŒ‰é’®
        form.on('submit(btnExport)', function (data) {
            getExportData();
        });
        //#endregion
        //#region åˆ—设置按钮
        form.on('submit(bthHideColumn)', function (data) {
            get_HideColumnNoPageForPlan(HModName, option, get_FastQuery);
        });
        //#endregion
        //#endregion
        //#region æœ¬é¡µé¢è¢«è°ƒç”¨çš„æ‰€æœ‰æ–¹æ³•
        //#region åˆå§‹åŒ–界面
        function set_ClearBill() {
            //初始化日期
            $("#HBEGINDATE").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * 25), "yyyy-MM-dd"));//提料日期
            var HEndDate = Format(new Date().setDate(new Date().getDate() + 25), "yyyy-MM-dd");
            $("#HENDDATE").val(HEndDate);//至
            //生产组织加载
            Organ();
            //快速过滤
            get_FastQuery(1);
            ColFilter();
        }
        //#endregion
        //#region åˆå§‹åŒ–表格方法
        function set_InitGrid() {
            var columns = [];
            columns.push({ type: 'checkbox', fixed: 'left', sort: true});
            columns.push({ field: '组织', title: '采购组织', sort: true, filter: true });
            columns.push({ field: 'FMATERIALNAME', title: '物料名称', sort: true, filter: true });
            columns.push({ field: 'FSPECIFICATION', title: '物料规格', sort: true, filter: true });
            columns.push({ field: 'FNAME', title: '供应商', sort: true, filter: true  });
            columns.push({ field: 'FSUMQTY', title: '合计', sort: true, hide: true, filter: true  });
            columns.push({ field: 'HPOOrderBillNo', title: '采购订单号', sort: true, hide: true, filter: true  });
            columns.push({ field: 'HSeOrderBillNo', title: '需求单号', sort: true, hide: true, filter: true  });
            //columns.push({ field: 'HPOOrderBillRemark', title: '摘要' });
            //columns.push({ field: 'HPOOrderBillNote', title: '备注' });
            //columns.push({ field: '采购员', title: '采购员' });
            columns.push({ field: 'FNUMBER', title: '物料编码', sort: true, filter: true });
            columns.push({ field: '计量单位名称', title: '计量单位', sort: true, filter: true });
            columns.push({ field: 'TQSUM', title: '提料拖期数量', sort: true, totalRow: true, filter: true });
            columns.push({ field: 'TQSUM', title: '提料拖期数量', sort: true, totalRow: true, filter: true });
            columns.push({ field: '逾期提料总和', title: '逾期提料总和', sort: true, totalRow: true, filter: true });
            columns.push({ field: '提料总和', title: '提料总和', sort: true, totalRow: true, filter: true });
            //获取两个月期之间的相差
            var time1 = Date.parse(new Date());//开始时间
            var time2 = Date.parse(new Date($("#HENDDATE").val()));//结束时间
            var Days = Math.abs(parseInt((time2 - time1) / 1000 / 3600 / 24));
            //获取年
            var yyyy = new Date().getFullYear();
            //获取月份
            var MM = new Date().getMonth() + 1;
            //获取开始月份的最大天数
            var SumMonth = new Date(yyyy, MM, 0).getDate(); //动态两月之差
            //获取开始日期的天数
            var HBEGINDATE = new Date(new Date()).getDate(); //获取开始日期天数
            var k = 0;//收集循环次数
            for (var j = 0; j <= (Days - k); j++) {
                var time_temp = Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd');
                if (isValidDate(time_temp)) {
                    columns.push({
                        field: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd'), title: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'MM.dd'), width: 70, totalRow: true, filter: true, templet: function (d) {
                            //获取当前今天明天后天三天的日期字符串
                            const dates = [];
                            const today = new Date();
                            for (let i = 0; i < 3; i++) {
                                const date = new Date(today);
                                date.setDate(today.getDate() + i);
                                const dateStr = date.toISOString().slice(0, 10);
                                dates.push(`${dateStr}`);
                            }
                            // å¦‚果行日期在当前日期三天后,则内容标红
                            if ((this.field == dates[0] || this.field == dates[1]) && d[this.field] != null) {
                                return '<span style="color:Orange">' + (d[this.field] == null ? 0 : d[this.field]) + '</span>';
                            }
                            else if ((this.field == dates[2]) && d[this.field] != null) {
                                return '<span style="color:red">' + (d[this.field] == null ? 0 : d[this.field]) + '</span>';
                            }
                            else {
                                return d[this.field] == null ? 0 : d[this.field]
                            }
                        } })
                } else {
                    columns.push({ field: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd'), title: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'MM.dd'), width: 70, totalRow: true, filter: true })
                }
                //跨年的话 ä¼šä»Žä¸€æœˆä¸€å·å¼€å§‹
                if (MM == 12 && (HBEGINDATE + j) == 31) {
                    yyyy += 1;
                    MM = 1;
                    SumMonth = new Date(yyyy, MM, 0).getDate();
                    HBEGINDATE = 0;
                    k += j;
                    j = 0;
                } else if ((HBEGINDATE + j) == SumMonth) { //跨月 æœˆæ•°åР䏀  å¤©æ•°ä»Žä¸€å¼€å§‹
                    HBEGINDATE = 0;
                    MM += 1;
                    SumMonth = new Date(yyyy, MM, 0).getDate();
                    k += j;
                    j = 0;
                }
            }
            columns.push({ field: '提料计划合计', title: '提料计划合计', filter: true  });
            option = {
                elem: '#mainTable'
                //, toolbar: '#toolbarDemo'
                , height: 'full-50'
                , page: true
                , cellMinWidth: 90
                , limit: 1000
                , limits: [50, 500,1000, 5000, 20000]
                , totalRow: true
                , loading: false
                , cols: [columns]
                , done: function (res, curr, count) {
                    soulTable.render(this);
                }
            };
        }
        //#endregion
        //获取组织
        function Organ() {
            //获取登录页组织列
            var Organization = '';
            $.ajax({
                type: "get",
                url: GetWEBURL() + "/Web/GetOrganizations",
                success: function (result) {
                    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>';
                        }
                        $("#HORGID").append(Organization);
                        $("#HORGID").val(sessionStorage["OrganizationID"])
                        form.render('select');
                    }
                    layer.closeAll("loading");
                }
            })
        }
        //#region æŸ¥è¯¢
        function get_Display(sWhere) {
            var ajaxLoad = layer.load();
            $.ajax({
                url: GetWEBURL() + '/JIT_Cg_PODemandPlanBill/ReportPODemandPlanBillList_S',
                type: "GET",
                data: { "sWhere": sWhere, "user": sessionStorage["HUserName"], HBEGINDATE: $("#HBEGINDATE").val(), HENDDATE: $("#HENDDATE").val() },
                success: function (result) {
                    if (result.count == 1) {
                        option.data = result.data;
                        //列设置
                        DisPlay_HideColumnForPlan(HModName, sessionStorage["HUserName"], option);
                        ins = table.render(option);
                        layer.close(ajaxLoad);
                        //layer.alert("查询成功", { icon: 1 });
                    } else {
                        layer.close(ajaxLoad);
                        layer.alert(result.code + result.Message, { icon: 5 });
                    }
                }, error: function () {
                    layer.close(ajaxLoad);
                    layer.alert("接口请求失败!", { icon: 5 });
                }
            });
        }
        //#endregion
        //#region èŽ·å–å¯¼å‡ºæ•°æ®
        function getExportData() {
            data = option.data;
            data.forEach((item) => {
                for (let itemobj in item) {
                    if (item[itemobj] == null) {
                        item[itemobj] = "";
                    }
                    if (item[itemobj].length > 0) {  // å‡è®¾å­—段名为field
                        item[itemobj] = item[itemobj].toString().replace(/[\r\n]+/g, '');  // å°†æ¢è¡Œç¬¦æ›¿æ¢ä¸ºç©ºå­—符串
                    }
                }
            });
            table.exportFile(ins.config.id, data, "xls");
        }
        //#endregion
        //#region å¿«é€Ÿè¿‡æ»¤
        function get_FastQuery(number) {
            var HORGID = "";
            if (number == 1) {
                HORGID = sessionStorage["OrganizationID"];
            }
            else {
                HORGID = $("#HORGID").val();//组织
            }
            var HBEGINDATE = $("#HBEGINDATE").val();//提料日期
            var HENDDATE = $("#HENDDATE").val();//至
            var HMATERIALID = $("#HMATERIALID").val();//物料/产品
            var HSUPPLIERID = $("#HSUPPLIERID").val();//供应商
            var HXQD = $("#HXQD").val();//需求单号
            var HPURORDERNO = $("#HPURORDERNO").val();//采购订单号
            if (HBEGINDATE > HENDDATE) {
                return layer.msg("开始日期不能小于结束日期!");
            }
            if (HORGID != "") {
                sWhere += " and a.HPURCHASEORGID= " + HORGID+" ";
            }
            if (HBEGINDATE != null && HENDDATE != null) {
                sWhere += " and HDate between ''" + HBEGINDATE + "'' and ''" + HENDDATE + "'' ";
            }
            if (HMATERIALID!=0) {
                sWhere += " and B.HMaterID= " + HMATERIALID+" ";
            }
            if (HSUPPLIERID!=0) {
                sWhere += " and A.HSupplierID= " + HSUPPLIERID + " ";
            }
            if (HXQD) {
                sWhere += " and HSeOrderBillNo like''% " + HXQD + "%'' ";
            }
            if (HPURORDERNO) {
                sWhere += " and HPOOrderBillNo like''%" + HPURORDERNO + "%'' ";
            }
            //初始化表格
            set_InitGrid();
            get_Display(sWhere);
            sWhere = " where 1=1 ";//调用接口后清空sWhere缓存
        }
        //#endregion
        //#region é‡ç½®è¿‡æ»¤æ¡ä»¶æ–¹æ³•
        function set_ClearQuery() {
            $("#HORGID").val(sessionStorage["OrganizationID"]);//组织
            $("#HBEGINDATE").val(Format(new Date(new Date()), "yyyy-MM-dd"));//提料日期
            $("#HENDDATE").val(Format(new Date($("#HBEGINDATE").val()).setDate(new Date($("#HBEGINDATE").val()).getDate() + 30), "yyyy-MM-dd"));//至
            $("#HMATERIALID").val("");//物料/产品
            $("#HMATERIALNAME").val("");
            $("#HSUPPLIERID").val("");//供应商
            $("#HSUPPLIERNAME").val("");
            $("#HXQD").val("");//需求单号
            $("#HPURORDERNO").val("");//采购订单号
            form.render('select');
            sWhere = " where 1=1 ";
        }
        //#endregion
        //物料列表
        function btnHMATERIALID() {
            layer.open({
                type: 2 //类型
                , skin: 'layui-layer-rim'//加上边框
                , area: ['90%', '90%']//大小
                , title: '物料列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/公用基础资料/Gy_Material.html', 'yes']
                , 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 === 0) {
                        return layer.msg('请选择数据');
                    }
                    //获取数据
                    $("#HMATERIALID").val(checkStatus.data[0].HItemID);
                    $("#HMATERIALNAME").val(checkStatus.data[0].物料名称);
                    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                }
                , btn2: function (index, layero) { }
            })
        }
        //供应商
        function btnHSUPPLIERID() {
            layer.open({
                type: 2 //类型
                , skin: 'layui-layer-rim'//加上边框
                , area: ['90%', '90%']//大小
                , title: '供应商列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/采购基础资料/Gy_Supplier.html?Type=HSup', 'yes']
                , 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 === 0) {
                        return layer.msg('请选择数据');
                    }
                    //获取数据
                    $("#HSUPPLIERID").val(checkStatus.data[0].HItemID);
                    $("#HSUPPLIERNAME").val(checkStatus.data[0].供应商名称);
                    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                }
                , btn2: function (index, layero) { }
            })
        }
        //列明显示下拉框
        function ColFilter() {
            var Organization = '<option  value="0" selected="selected" ></option>';
            for (var i = 1; i < option.cols[0].length; i++) {
                if (option.cols[0][i].hide != true) {
                    Organization += '<option  style="color:blue;" value="' + option.cols[0][i].field + '">' + option.cols[0][i].field + '</option>';
                }
            }
            $("#ColName").empty();
            $("#ColName").append(Organization);
            $("#ColName1").empty();
            $("#ColName1").append(Organization);
            $("#ColName2").empty();
            $("#ColName2").append(Organization);
            form.render('select');
        }
        //#endregion
        //以上是layui模块
    });
    function GetHSupNameValue(obj) {
        $("#HSUPPLIERID").val(obj[0].HItemID);
        $("#HSUPPLIERNAME").val(obj[0].供应商名称);
    }
    function GetGyMaterial(obj) {
        $("#HMATERIALID").val(obj.HItemID);
        $("#HMATERIALNAME").val(obj.物料名称);
    }
</script>
WebTM/views/Éú²ú¹ÜÀí/±¨¹¤Ì¨¹¤Ðò/Í£¹¤/Sc_Add_MESStopStepWorkBillList.html
@@ -591,17 +591,17 @@
                                , "HStopBeginWorkTime": data.开始停工时间
                                , "HStopEndWorkTime": data.结束停工时间
                                , "HSourceID": data.HSourceID              //资源ID
                                , "HSourceName": data.资源名称             //资源名称
                                , "HSourceName": data.生产资源             //资源名称
                                , "HEmpID": data.HEmpID                   //操作员ID
                                , "HEmpName": data.申请开工人员           //操作员
                                , "HEmpName": data.申请停工人员           //操作员
                                , "HMainSourceInterID": data.HMainSourceInterID                 //源单ID
                                , "HMainSourceEntryID": data.HMainSourceEntryID                 //源单子ID(行号)
                                , "HMainSourceBillNo": data.HMainSourceBillNo                 //源单单号
                                , "HMainSourceBillType": data.HMainSourceBillType               //源单类型
                                , "HGroupID": data.HGroupID                //班组ID
                                , "HGroupName": data.班组名称              //班组名称
                                , "HGroupName": data.生产班组              //班组名称
                                , "HDeptID": data.HDeptID                  //部门ID
                                , "HDeptName": data.部门名称               //部门名称
                                , "HDeptName": data.生产车间               //部门名称
                                , "HICMOInterID": data.HICMOInterID                       //生产订单主ID
                                , "HICMOEntryID": data.HICMOEntryID                        //生产订单子ID
                                , "HICMOBillNo": data.HICMOBillNo
WebTM/views/Éú²ú¹ÜÀí/±¨¹¤Ì¨¹¤Ðò/¿ª¹¤/Sc_Add_MESBeginStepWorkBillList.html
@@ -1458,15 +1458,15 @@
                    continue; // è·³è¿‡éžå¯¹è±¡é¡¹ï¼ˆå¦‚空数组)
                }
                if (option.data[i]["HRelationBillNo"] == "") {
                    layer.msg("第" + i + "行:副产计划单未选择!");
                    return false;
                }
                //if (option.data[i]["HRelationBillNo"] == "") {
                //    layer.msg("第" + i + "行:副产计划单未选择!");
                //    return false;
                //}
                if (option.data[i]["HProcID"] == "0") {
                    layer.msg("第" + i + "行:工序未选择!");
                    return false;
                }
                //if (option.data[i]["HProcID"] == "0") {
                //    layer.msg("第" + i + "行:工序未选择!");
                //    return false;
                //}
            }
WebTM/views/Éú²ú¹ÜÀí/Èռƻ®»ù´¡×ÊÁÏ/Gy_WorkWarehouseBillList.html
@@ -615,7 +615,7 @@
                , area: ['90%', '90%']//大小
                , title: '生产车间列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes']
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html?openType=2&HOrgName=' + sessionStorage["Organization"], 'yes']
                , btn: ['确定', '取消']
                , btn1: function (index, layero) {//按钮【按钮一】的回调
                    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
WebTM/views/Éú²ú¹ÜÀí/Ç·ÁÏÔËËã/JIT_MaterialLevelShorAnalysisReport_His.html
New file
@@ -0,0 +1,772 @@
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>欠料报表</title>
    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
    <link rel="stylesheet" href="../../../layuiadmin/ext/soulTable.css" media="all">
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></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>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/SetColumn.js"></script>
    <!--<script src="../../../layuiadmin/soulTable.slim.js"></script>--><!--标题筛选不能引用此js文件-->
</head>
<body>
    <div class="layui-fluid">
        <div class="layui-col-md12">
            <div class="layui-card" style="padding: 1px">
                <div class="layui-card-body" style="padding: 1px;">
                    <form class="layui-form" action="" lay-filter="component-form-group">
                        <div class="layui-collapse">
                            <div class="layui-colla-item">
                                <div class="layui-colla-title layui-inline">
                                    <div class="layui-inline">
                                        <span>更多</span>
                                    </div>
                                </div>
                                <div class="layui-inline" style="display:none">
                                    <label class="layui-form-label" style="width: 85px;">组织</label>
                                    <div class="layui-input-block" style="margin-left: 120px; width: 185px;">
                                        <select name="HORGID" id="HORGID" lay-verify="HORGID">
                                            <!--动态渲染组织-->
                                        </select>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">运算标识</label>
                                    <div class="layui-input-block">
                                        <select name="HIDentificat" id="HIDentificat" class="ForFilteringSchemes" lay-filter="HIDentificat" style="width:190px;">
                                        </select>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">生产车间</label>
                                    <div class="layui-input-block">
                                        <select name="HWorkShopID" id="HWorkShopID" lay-verify="required" lay-search class="layui-input ForFilteringSchemes">
                                            <!--动态渲染车间-->
                                        </select>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">需求车间</label>
                                    <div class="layui-input-block">
                                        <select name="HWorkShopID2" id="HWorkShopID2" lay-verify="required" lay-search class="layui-input ForFilteringSchemes">
                                            <!--动态渲染车间-->
                                        </select>
                                    </div>
                                </div>
                                <div class="layui-inline">
                                    <label class="layui-form-label">日期间隔</label>
                                    <div class="layui-input-block">
                                        <select name="HInitTimeCycle" id="HInitTimeCycle" class="ForFilteringSchemes" lay-filter="HInitTimeCycle" 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="date" class="layui-input" lay-verify="HBEGINDATE" name="HBEGINDATE" id="HBEGINDATE" style="padding-left: 78px;">
                                    </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="date" class="layui-input" lay-verify="HENDDATE" name="HENDDATE" id="HENDDATE" style="padding-left: 78px;">
                                    </div>
                                </div>
                                <div class="layui-row">
                                    <div class="layui-inline">
                                        <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">产品编码</label>
                                        <div class="layui-input-block" style="margin-left: 77px;">
                                            <input type="hidden" class="layui-input" lay-verify="HMATERIALID" name="HMATERIALID" id="HMATERIALID" value="0" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                            <input type="text" class="layui-input" lay-verify="HMATERIALNAME" name="HMATERIALNAME" id="HMATERIALNAME" value="" style="background-color:#efefef4d;width: 60%;display: inline-block;">
                                            <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnHMATERIALID" id="btnHMATERIALID" style="padding: 0 10px;float: right;margin-right: 3px;">
                                                <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                            </button>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">物料属性</label>
                                        <div class="layui-input-block">
                                            <select name="HMaterClsID" id="HMaterClsID" lay-verify="HMaterClsID">
                                                <option value="0" selected>全部</option>
                                                <option value="1">外购</option>
                                                <option value="2">自制</option>
                                                <option value="3">委外</option>
                                            </select>
                                        </div>
                                    </div>
                                    <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">查询</button>
                                    <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnReSearch" id="btnReSearch">重置</button>
                                    <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnExport" id="btnExport">导出</button>
                                    <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="bthHideColumn" id="bthHideColumn">列设置</button>
                                </div>
                                <!--<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" style="width: 85px;padding: 9px 18px;">产品编码</label>
                <div class="layui-input-block" style="margin-left: 77px;">
                    <input type="hidden" class="layui-input" lay-verify="HMATERIALID" name="HMATERIALID" id="HMATERIALID" value="0" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                    <input type="text" class="layui-input" lay-verify="HMATERIALNAME" name="HMATERIALNAME" id="HMATERIALNAME" value="" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                    <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnHMATERIALID" id="btnHMATERIALID" style="padding: 0 10px;float: right;margin-right: 3px;">
                        <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                    </button>
                </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="HMOBILLNO" id="HMOBILLNO">
                </div>
            </div>
        </div>
    </div>-->
                            </div>
                        </div>
                        <table class="" id="mainTable" lay-filter="mainTable"></table>
                    </form>
                </div>
            </div>
        </div>
    </div>
</body>
</html>
<script>
    var treeCkData = { id: 0 };
    var TagId = "";
    var TagParentId = "";
    layui.config({
        base: '../../../layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index', //主入口模块
        soulTable: '../ext/soulTable',
    }).use(['tree', 'index', 'form', 'table', 'element', 'laypage', 'laydate', 'util', 'soulTable', 'flow','tableSelect'], function () {
        //#region å…¬ç”¨å˜é‡
        var $ = layui.$
            , admin = layui.admin
            , layer = layui.layer
            , table = layui.table
            , form = layui.form
            , element = layui.element
            , laypage = layui.laypage
            , laydate = layui.laydate
            , util = layui.util
            , tree = layui.tree
            , util = layui.util
            , soulTable = layui.soulTable
            , flow = layui.flow
            , tableSelect = layui.tableSelect;
        var sWhere = "";
        var option = [];
        var ins;                        //用于导出excel
        var HModName = "JIT_MaterialLevelShorAnalysisReport";
        var HIDentificat_ValueList = [];
        var HIDentificat_TitleList = [];
        //#endregion
        //#region è¿›å…¥é¡µé¢å³åŠ è½½
        //初始化界面
        set_ClearBill();
        //#endregion
        //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
        //#endregion è¾“入框回车监听
        //$('input[type="text"]').on('keydown', function (event) {
        //    if (event.keyCode == 13) {
        //        $("#btnSearch").click();
        //    }
        //});
        //#endregion
        //#region è¿ç®—标识下拉列表监听
        form.on('select(HIDentificat)', function (data) {
            var value = data.value;
            if ($.inArray(value, HIDentificat_ValueList)>-1) {
                var HIDentificat_Title = HIDentificat_TitleList[$.inArray(value, HIDentificat_ValueList)];
                var HBeginDate = Format(Date.parse(HIDentificat_Title), "yyyy-MM-dd");
                var HEndDate = Format(new Date(Date.parse(HIDentificat_Title) + 1000 * 60 * 60 * 24 * 50), "yyyy-MM-dd");
                $("#HBEGINDATE").val(HBeginDate);
                $("#HENDDATE").val(HEndDate);
                get_FastQuery();
            }
        });
        //#endregion
        //#region äº§å“ç¼–码
        form.on('submit(btnHMATERIALID)', function (data) {
            btnHMATERIALID();
        });
        //#endregion
        //#region é‡ç½®æŒ‰é’®
        form.on('submit(btnReSearch)', function (data) {
            set_ClearQuery();
        });
        //#endregion
        //#region æŸ¥è¯¢æŒ‰é’®
        form.on('submit(btnSearch)', function (data) {
            get_FastQuery();
        });
        //#endregion
        //#region å¯¼å‡ºæŒ‰é’®
        form.on('submit(btnExport)', function (data) {
            getExportData();
        });
        //#endregion
        //#region åˆ—设置按钮
        form.on('submit(bthHideColumn)', function (data) {
            get_HideColumnNoPageForPlan(HModName, option, get_FastQuery);
        });
        //#region åŒå‡»è¡Œå¼¹å‡ºå¼¹æ¡†
        table.on('rowDouble(mainTable)', function (obj) {
            var HOrgID = $("#HORGID").val();
            var HMaterID = obj.data.物料ID;
            var HWorkShopID = obj.data.需求车间ID;
            var HBEGINDATE = $("#HBEGINDATE").val();//欠料日期
            var HENDDATE = $("#HENDDATE").val();//至
            window.open('../../生产管理/欠料运算/JIT_MaterialLevelShorAnalysisDetailReport.html?type=2&HOrgID=' + HOrgID + "&HMaterID=" + HMaterID + "&HWorkShopID=" + HWorkShopID + "&HBEGINDATE=" + HBEGINDATE + "&HENDDATE=" + HENDDATE);
            //layer.open({
            //    type: 2
            //    , skin: 'layui-layer-rim'//加上边框
            //    , area: ['90%', '90%']
            //    , title: '上层缺料情况'
            //    , shift: 2//弹出动画
            //    , shade: 0.6 //遮罩透明度
            //    //, maxmin: true //允许全屏最小化
            //    , anim: 0 //0-6的动画形式,-1不开启
            //    , content: ['../../生产管理/欠料运算/JIT_MaterialLevelShorAnalysisDetailReport.html?type=2&HOrgID=' + HOrgID + "&HMaterID=" + HMaterID + "&HWorkShopID=" + HWorkShopID + "&HBEGINDATE=" + HBEGINDATE + "&HENDDATE=" + HENDDATE, 'yes']
            //})
        })
            //#endregion
        //#endregion
        //日期间隔下拉列表监听
        form.on('select(HInitTimeCycle)', function (data) {
            var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
            //若日期间隔不为 ä»»æ„é—´éš”,则禁用开始日期与结束日期的选择
            if (HInitTimeCycle !=0) {
                //$('#HBeginDate').prop('disabled', true);
                //$('#HEndDate').prop('disabled', true);
                $("#HBEGINDATE").val(Format(new Date().setDate(new Date().getDate()), "yyyy-MM-dd"));//欠料日期
                $("#HENDDATE").val(Format(new Date().setDate(new Date().getDate() + HInitTimeCycle), "yyyy-MM-dd"));//至
                //执行查询方法
                get_FastQuery();
            }
            else {
                $('#HBeginDate').prop('disabled', false);
                $('#HEndDate').prop('disabled', false);
            }
        });
        //#endregion
        //#region æœ¬é¡µé¢è¢«è°ƒç”¨çš„æ‰€æœ‰æ–¹æ³•
        //#region åˆå§‹åŒ–界面
        function set_ClearBill() {
            //运算标识初始化
            getHIDentificat_init();
           //物料表格下拉搜索框
            tableSelect.render({
                elem: '#HMATERIALNAME',
                checkedKey: 'HItemID',
                searchKey: '物料代码,物料名称',
                sWhere: '',//table搜索sWhere条件
                table: {
                    url: GetWEBURL() + 'Gy_Material/page',
                    where: { user: sessionStorage["HMaker"], "Organization": sessionStorage["Organization"] } ,
                    cols: [[
                        { type: 'checkbox',fixed:'left' },
                        { field: 'HItemID', title: 'HItemID' },
                        { field: '物料代码', title: '物料代码' },
                        { field: '物料名称', title: '物料名称' },
                    ]],
                    page: true,
                    limit: 5,
                    limits: [5]
                },
                done: function (elem, data) {
                    if (data != []) {
                        //获取数据
                        /*$("#HMATERIALNAME").blur();//单元格失去焦点*/
                        $("#HMATERIALID").val(data.data[0].HItemID);
                        $("#HMATERIALNAME").val(data.data[0].物料名称);
                        get_FastQuery()
                    }
                }
            })
            //初始化日期间隔、开始日期、结束日期
            setSelect_HInitTimeCycle();
            //若日期间隔不为 ä»»æ„é—´éš”,则禁用开始日期与结束日期的选择
            var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
            if (HInitTimeCycle !=0) {
                $("#HBEGINDATE").val(Format(new Date().setDate(new Date().getDate()), "yyyy-MM-dd"));//欠料日期
                $("#HENDDATE").val(Format(new Date().setDate(new Date().getDate() + HInitTimeCycle), "yyyy-MM-dd"));//至
            }
            //生产组织加载
            Organ();
            //车间
            get_Dept();
            //初始化表格
            set_InitGrid();
            //设置页码
            DisPlay_HideColumn_GetPageSize(HModName, sessionStorage["HUserName"], option)
            //快速过滤
            get_FastQuery();
        }
        //#endregion
        //#region åˆå§‹åŒ–表格方法
        function set_InitGrid() {
            var columns = [];
            //columns.push({ type: 'checkbox', fixed: 'left', sort: true });
            //columns.push({ field: '需求车间ID', title: '需求车间ID', sort: true, filter: true });
            //columns.push({ field: '需求车间编码', title: '需求车间编码', sort: true, filter: true });
            //columns.push({ field: '需求车间名称', title: '需求车间名称', sort: true, filter: true });
            //columns.push({ field: '物料ID', title: '物料ID', sort: true, filter: true });
            //columns.push({ field: '物料编码', title: '物料编码', sort: true, filter: true });
            //columns.push({ field: '物料名称', title: '物料名称', sort: true, filter: true });
            //columns.push({ field: '物料属性', title: '物料属性', sort: true, filter: true });
            //columns.push({ field: '供货车间ID', title: '供货车间ID', sort: true, filter: true  });
            //columns.push({ field: '供货车间编码', title: '供货车间编码', sort: true,  filter: true  });
            //columns.push({ field: '供货车间名称', title: '供货车间名称', sort: true, filter: true });
            //columns.push({ field: '是否匹配到订单', title: '是否匹配到订单', sort: true, filter: true, templet: function (d) { return d.是否匹配到订单 ? '否' : '是'; }  });
            ////columns.push({ field: 'HPOOrderBillRemark', title: '摘要' });
            ////columns.push({ field: 'HPOOrderBillNote', title: '备注' });
            ////columns.push({ field: '采购员', title: '采购员' });
            //columns.push({ field: '是否匹配到要料计划信息', title: '是否匹配到要料计划信息', sort: true, filter: true, templet: function (d) { return d.是否匹配到要料计划信息 ? '否' : '是'; } });
            //    columns.push({ field: '日计划需求数量', title: '日计划需求数量', sort: true, filter: true });
            //columns.push({ field: '即时库存总数量', title: '即时库存总数量', sort: true, filter: true });
            //columns.push({ field: '领料数量', title: '领料数量', sort: true, filter: true });
            //columns.push({ field: '可用总数量', title: '可用总数量', sort: true, filter: true });
            //columns.push({ field: '库存已占用总数量', title: '库存已占用总数量', sort: true, filter: true });
            //columns.push({ field: '库存剩余可用数量', title: '库存剩余可用数量', sort: true, filter: true });
            //columns.push({ field: '供货提前期', title: '供货提前期', sort: true, filter: true });
            //columns.push({ field: '到货前置期', title: '到货前置期', sort: true, filter: true });
            ///*columns.push({ field: '层级', title: '层级', sort: true, filter: true });*/
            ////columns.push({ field: '计量单位名称', title: '计量单位', sort: true, filter: true });
            ////columns.push({ field: 'TQSUM', title: '欠料拖期数量', sort: true, totalRow: true, filter: true });
            ////获取两个月期之间的相差
            //var time1 = Date.parse(new Date($("#HBEGINDATE").val()));//开始时间
            //var time2 = Date.parse(new Date($("#HENDDATE").val()));//结束时间
            //var Days = Math.abs(parseInt((time2 - time1) / 1000 / 3600 / 24));
            ////获取年
            //var yyyy = new Date($("#HBEGINDATE").val()).getFullYear();
            ////获取月份
            //var MM = new Date($("#HBEGINDATE").val()).getMonth() + 1;
            ////获取开始月份的最大天数
            //var SumMonth = new Date(yyyy, MM, 0).getDate(); //动态两月之差
            ////获取开始日期的天数
            //var HBEGINDATE = new Date(new Date($("#HBEGINDATE").val())).getDate(); //获取开始日期天数
            //var k = 0;//收集循环次数
            //for (var j = 0; j <= (Days - k); j++) {
            //    columns.push({ field: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'yyyy-MM-dd'), title: Format(yyyy + '/' + MM + '/' + (HBEGINDATE + j), 'MM.dd'), width: 70, totalRow: true, filter: true })
            //    //跨年的话 ä¼šä»Žä¸€æœˆä¸€å·å¼€å§‹
            //    if (MM == 12 && (HBEGINDATE + j) == 31) {
            //        yyyy += 1;
            //        MM = 1;
            //        SumMonth = new Date(yyyy, MM, 0).getDate();
            //        HBEGINDATE = 0;
            //        k += j;
            //        j = 0;
            //    } else if ((HBEGINDATE + j) == SumMonth) { //跨月 æœˆæ•°åР䏀  å¤©æ•°ä»Žä¸€å¼€å§‹
            //        HBEGINDATE = 0;
            //        MM += 1;
            //        SumMonth = new Date(yyyy, MM, 0).getDate();
            //        k += j;
            //        j = 0;
            //    }
            //}
            //columns.push({ field: 'Total', title: '欠料计划合计', filter: true });
            option = {
                elem: '#mainTable'
                //, toolbar: '#toolbarDemo'
                , height: 'full-50'
                , page: true
                , cellMinWidth: 90
                , limit: 1000
                , limits: [50, 500,1000, 2000]
                , totalRow: true
                , loading: false
                , cols: [columns]
                , done: function (res, curr, count) {
                    soulTable.render(this);
                    for (var i in res.data) {
                        var item = res.data[i];
                        if (item["未匹配订单数量"] > 0) {
                            $("tr[data-index='" + i + "']").attr({ "style": "background:red;color:black;" });
                        }
                    }
                }
            };
        }
        //#endregion
        //获取组织
        function Organ() {
            //获取登录页组织列
            var Organization = '';
            $.ajax({
                type: "get",
                url: GetWEBURL() + "/Web/GetOrganizations",
                async: false,
                success: function (result) {
                    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>';
                        }
                        $("#HORGID").append(Organization);
                        $("#HORGID").val(sessionStorage["OrganizationID"])
                        form.render('select');
                    }
                    layer.closeAll("loading");
                }
            })
        }
        //生产车间
        function get_Dept() {
            //获取车间列
            var HDeptID = '<option value="0" style="color:red;" selected>全部车间</option>';
            var sql = "exec h_p_Gy_GetHDeptListISWorkShop " + sessionStorage["OrganizationID"]
            $.ajax({
                type: "get",
                url: GetWEBURL() + "/Gy_SOPBillList/WindowPrintList",
                async: false,
                data: { "sWhere": sql},
                success: function (result) {
                    if (result.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                        var data = result.data;
                        for (var i = 0; i < data.length; i++) {
                            HDeptID += '<option  style="color:blue;"  value="' + data[i].HItemID + '" >' + data[i].HName + '</option>';
                        }
                        $("#HWorkShopID").append(HDeptID);
                        $("#HWorkShopID2").append(HDeptID);
                        if (sessionStorage["HDeptID"] != "0") {
                            $("#HWorkShopID").val(sessionStorage["HDeptID"]);
                            //用户绑定的车间不存在,则默认显示全部车间
                            if ($("#HWorkShopID").val() == null || $("#HWorkShopID").val() == undefined) {
                                $("#HWorkShopID").val(0);
                            }
                        }
                        //$("#HDeptName").val("0");
                        form.render('select');
                    }
                    layer.closeAll("loading");
                }
            })
        }
        //#region æŸ¥è¯¢
        function get_Display(sql) {
            var ajaxLoad = layer.load();
            var ModRightNameCheck = "";
            $.ajax({
                url: GetWEBURL() + '/CommonModel/searchMethod',
                type: "GET",
                async: false,
                data: { "sql": sql, "user": sessionStorage["HUserName"], "ModRightNameCheck": ModRightNameCheck  },
                success: function (data1) {
                    if (data1.count == 1) {
                        var data = [];//列字段数据
                        var col = [];
                        var totalArray = [];
                        var titleData = [];
                        //给空的数组赋值
                        for (var key in data1.list) {//循序遍历数组
                            data.push({ "id": data1.list[key].ColmCols, "name": data1.list[key].ColmCols, "Type": data1.list[key].ColmType });//从每个对象中提取数据
                        }
                        //在列表左边添加勾选框
                        col.push({ type: 'checkbox', fixed: 'left', totalRowText: '合计' });
                        for (var i = 0; i < data.length; i++) {//遍历data数组重的数据
                            // if (data[i].name == 'HInterID' || data[i].name == 'HBillType' || data[i].name == 'hmainid') {
                            if ($.inArray(data[i].name, titleData) > -1) {//检查data【i】.name是否在数组中  //计算列
                                col.push({ field: data[i].id, title: data[i].name, align: 'center', hide: true }); //隐藏id列
                            }
                            else if ($.inArray(data[i].name, totalArray) > -1) { //计算列
                                col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, totalRow: true, width: 120, filter: true });
                            } else if (data[i].name == '未匹配订单数量') {
                                col.push({
                                    field: '未匹配订单数量', title: '未匹配订单数量', sort: true, filter: true, templet: function (d) {
                                        return d.未匹配订单数量 > 0 ? '<span style="color: black;">' + d.未匹配订单数量 + '</span>' : d.未匹配订单数量;
                                    } });
                            }
                            else if (data[i].name == '未匹配要料计划信息数量') {
                                col.push({
                                    field: '未匹配要料计划信息数量', title: '未匹配要料计划信息数量', sort: true, filter: true, templet: function (d) {
                                        return d.未匹配要料计划信息数量 > 0 ? '<span style="color: black;">' + d.未匹配要料计划信息数量 + '</span>' : d.未匹配要料计划信息数量;
                                    }
                                });
                            } else if (isValidDate(data[i].name)) {
                                col.push({
                                    field: data[i].name, title: Format(data[i].name, 'MM.dd'), width: 70, totalRow: true, filter: true, templet: function (d) {
                                        //获取当前今天明天后天三天的日期字符串
                                        const dates = [];
                                        const today = new Date();
                                        for (let i = 0; i < 3; i++) {
                                            const date = new Date(today);
                                            date.setDate(today.getDate() + i);
                                            const dateStr = date.toISOString().slice(0, 10);
                                            dates.push(`${dateStr}`);
                                        }
                                        // å¦‚果行日期在当前日期三天后,则内容标红
                                        if ((this.field == dates[0] || this.field == dates[1] || this.field == dates[2]) && d[this.field] != null) {
                                            return '<span style="color:Orange">' + (d[this.field] == null ? 0 : d[this.field]) + '</span>';
                                        } else {
                                            return d[this.field] == null ? 0 : d[this.field]
                                        }
                                    }
                                })
                            }
                            else {
                                switch (data[i].Type) {
                                    //int
                                    case 'DateTime':
                                        col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, templet: "<div>{{d." + (data[i].name == "行关闭日期" ? "行关闭人" : data[i].name) + " ==''?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd HH:mm:ss')}}</div>", width: 200 });
                                        break;
                                    default:
                                        col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, filter: true, width: 200 });
                                }
                            }
                        }
                        option.cols = [col];
                        option.data = data1.data;
                        //列设置
                        DisPlay_HideColumnForPlan(HModName, sessionStorage["HUserName"], option);
                        ins = table.render(option);
                        layer.close(ajaxLoad);
                    } else {
                        layer.alert(data1.code + data1.Message, { icon: 5 });
                        layer.close(ajaxLoad);
                    }
                }, error: function () {
                    layer.alert("接口请求失败!", { icon: 5 });
                    layer.close(ajaxLoad);
                }
            });
        }
        //#endregion
        // ç­›é€‰å‡½æ•°ï¼šæ£€æŸ¥å­—符串是否符合格式筛选日期
        function isValidDate(dateStr) {
            // æ­£åˆ™è¡¨è¾¾å¼éªŒè¯æ ¼å¼
            const formatRegex = /^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$/;
            if (!formatRegex.test(dateStr)) return false;
            // åˆ†å‰²å¹´æœˆæ—¥å¹¶è½¬æ¢ä¸ºæ•°å€¼
            const [year, month, day] = dateStr.split('-').map(Number);
            // åˆ›å»ºDate对象(月份从0开始)
            const date = new Date(year, month - 1, day);
            // æ£€æŸ¥æ—¥æœŸæ˜¯å¦æœ‰æ•ˆï¼ˆä¸Žè¾“入的年月日一致)
            return (
                date.getFullYear() === year &&
                date.getMonth() === month - 1 &&
                date.getDate() === day
            );
        }
        //#region èŽ·å–å¯¼å‡ºæ•°æ®
        function getExportData() {
            var data = option.data;
            data.forEach((item) => {
                for (let itemobj in item) {
                    if (item[itemobj] == null) {
                        item[itemobj] = "";
                    }
                    if (item[itemobj].length > 0) {  // å‡è®¾å­—段名为field
                        item[itemobj] = item[itemobj].toString().replace(/[\r\n]+/g, '');  // å°†æ¢è¡Œç¬¦æ›¿æ¢ä¸ºç©ºå­—符串
                    }
                }
            });
            table.exportFile(ins.config.id, data, "xls");
        }
        //#endregion
        //#region å¿«é€Ÿè¿‡æ»¤
        function get_FastQuery() {
            HORGID = $("#HORGID").val();//组织
            var HBEGINDATE = $("#HBEGINDATE").val();//欠料日期
            var HENDDATE = $("#HENDDATE").val();//至
            var HMATERIALID = $("#HMATERIALID").val();//物料/产品
            var HMATERIALNAME = $("#HMATERIALNAME").val();//物料名称
            var HWorkShopID = $("#HWorkShopID").val();//物料/产品
            var HWorkShopID2 = $("#HWorkShopID2").val();//物料/产品需求车间
            var HMaterClsID = $("#HMaterClsID").val();//物料属性
            var HIDentificat = $("#HIDentificat").val();//运算标识
            if (HBEGINDATE > HENDDATE) {
                return layer.msg("开始日期不能小于结束日期!");
            }
            if (HORGID != "") {
                sWhere += " and T1.HStockORGID= " + HORGID+" ";
            }
            if (HWorkShopID != 0) {
                sWhere += " and T1.HSupplyWorkShopID= " + HWorkShopID + " ";
            }
            if (HWorkShopID2 != 0) {
                sWhere += " and T1.HWorkShopID= " + HWorkShopID2 + " ";
            }
            if (HMaterClsID != 0) {
                sWhere += " and T1.HMaterClsID=" + HMaterClsID + " ";
            }
            //if (HBEGINDATE != null && HENDDATE != null) {
            //    sWhere += " and HDate between ''" + HBEGINDATE + "'' and ''" + HENDDATE + "'' ";
            //}
            if (HMATERIALID != 0) {
                sWhere += " and T1.HMaterID= " + HMATERIALID + " ";
            } else {
                if (HMATERIALNAME != "") {
                    sWhere += " and (T2.HName like ''%" + HMATERIALNAME + "%'' or T2.HNumber like ''%" + HMATERIALNAME + "%'') ";
                }
            }
            var sql = "exec  h_p_JIT_MaterialLevelShorReportList_His '" + sWhere + "','" + HBEGINDATE + "','" + HENDDATE + "','" + HIDentificat + "'";
            get_Display(sql);
            sWhere = "";//调用接口后清空sWhere缓存
        }
        //#endregion
        //#region é‡ç½®è¿‡æ»¤æ¡ä»¶æ–¹æ³•
        function set_ClearQuery() {
            $("#HORGID").val(sessionStorage["OrganizationID"]);//组织
            $("#HBEGINDATE").val(Format(new Date(new Date()), "yyyy-MM-dd"));//欠料日期
            $("#HENDDATE").val(Format(new Date($("#HBEGINDATE").val()).setDate(new Date($("#HBEGINDATE").val()).getDate() + 30), "yyyy-MM-dd"));//至
            $("#HMATERIALID").val("");//物料/产品
            $("#HMATERIALNAME").val("");
            $("#HWorkShopID").val("0");
            $("#HWorkShopID2").val("0");
            $("#HMaterClsID").val("0");
            form.render('select');
            sWhere = "";
        }
        //#endregion
        //物料列表
        function btnHMATERIALID() {
            layer.open({
                type: 2 //类型
                , skin: 'layui-layer-rim'//加上边框
                , area: ['90%', '90%']//大小
                , title: '物料列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/公用基础资料/Gy_Material.html', 'yes']
                , 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 === 0) {
                        return layer.msg('请选择数据');
                    }
                    //获取数据
                    $("#HMATERIALID").val(checkStatus.data[0].HItemID);
                    $("#HMATERIALNAME").val(checkStatus.data[0].物料名称);
                    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                }
                , btn2: function (index, layero) { }
            })
        }
        //#region åˆå§‹æ—¥æœŸé—´éš” ä¸‹æ‹‰åˆ—表
        function setSelect_HInitTimeCycle() {
            var valueList = [30, 45, 60];
            var titleList = ["近一月", "近45天", "近60天"];
            var HInitTimeCycle_ArrayList = '<option  value="-1" selected="selected" >任意间隔</option>';
            for (var i = 0; i < valueList.length; i++) {
                HInitTimeCycle_ArrayList += '<option  style="color:blue;" value="' + valueList[i] + '">' + titleList[i] + '</option>';
            }
            $("#HInitTimeCycle").empty();
            $("#HInitTimeCycle").append(HInitTimeCycle_ArrayList);
            form.render('select');
            $("#HInitTimeCycle").val("60");
        }
            //#endregion
        //#region è¿ç®—标识
        function getHIDentificat_init() {
            var sql = "select HIDentificat, min(convert(varchar(100),HMakeDate,20)) HMakeDate from JIT_MOMaterLackBill where ISNULL(HIDentificat, '') <> '' group by HIDentificat order by min(convert(varchar(100),HMakeDate,20)) desc";
            var ModRightNameCheck = "";
            $.ajax({
                url: GetWEBURL() + '/CommonModel/searchMethod',
                async: false,
                type: "GET",
                data: { "sql": sql, "user": sessionStorage["HUserName"], "ModRightNameCheck": ModRightNameCheck },
                success: function (data1) {
                    if (data1.count == 1) {
                        var Organization = "";
                        if (data1.count == 1) {
                            var data = data1.data;
                            for (var i = 0; i < data.length; i++) {
                                Organization += '<option  style="color:blue;" value="' + data[i].HIDentificat + '">' + data[i].HMakeDate + '</option>';
                                HIDentificat_ValueList.push(data[i].HIDentificat);
                                HIDentificat_TitleList.push(data[i].HMakeDate);
                            }
                            $("#HIDentificat").append(Organization);
                            if (data.length > 0) {
                                $("#HIDentificat").val(data[0].HIDentificat);
                            }
                            form.render('select');
                        }
                    } else {
                        layer.alert(data1.code + data1.Message, { icon: 5 });
                    }
                }, error: function (e) {
                    layer.alert(e + "接口请求失败!", { icon: 5 });
                }
            });
        }
        //#endregion
        //#endregion
        //以上是layui模块
    });
    function GetGyMaterial(obj) {
        $("#HMATERIALID").val(obj.HItemID);
        $("#HMATERIALNAME").val(obj.物料名称);
    }
    function GetHDeptNameValue(obj)  //返回采购部门
    {
        $("#HWorkShopID").val(obj[0].HItemID);//车间id
        $("#HWorkShopIDName").val(obj[0].部门名称);//车间名称
    }
</script>
WebTM/views/Éú²ú¹ÜÀí/Éú²ú¿ª¹¤µ¥/Sc_Add_MESBeginWorkBillList.html
@@ -88,7 +88,7 @@
                            <div class="layui-btn-group">
                                <button type="button" id="Saver" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button>
                                <button type="button" id="VerIfySaver" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="VerIfySaver">审核</button>
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                                <button type="button" id="Exit" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                            </div>
                        </div>
WebTM/views/Éú²ú¹ÜÀí/Éú²úÈռƻ®¹¤µ¥/JIT_DayPlanBillList.html
@@ -417,7 +417,7 @@
                , area: ['90%', '90%']//大小
                , title: '生产车间列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes']
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html?openType=2&HOrgName=' + sessionStorage["Organization"], 'yes']
                , btn: ['确定', '取消']
                , btn1: function (index, layero) {//按钮【按钮一】的回调
                    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
WebTM/views/Éú²ú¹ÜÀí/Éú²ú»ã±¨µ¥/Sc_ICMOReportBillList.html
@@ -236,16 +236,16 @@
                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_Copy" id="set_Copy"><i class="layui-icon layui-icon-form"></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-PushProductInBill" id="btn-PushProductInBill"><i class="layui-icon layui-icon-delete"></i>下推(生产入库单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushProductionReturnBill" id="btn-PushProductionReturnBill"><i class="layui-icon layui-icon-delete"></i>下推(生产退库单)</button>
                                <!--<button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushProductInBill" id="btn-PushProductInBill"><i class="layui-icon layui-icon-delete"></i>下推(生产入库单)</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="btn-PushProductionReturnBill" id="btn-PushProductionReturnBill"><i class="layui-icon layui-icon-delete"></i>下推(生产退库单)</button>-->
                                <button type="button" class="layui-btn layui-btn-sm" style="display: none;" lay-event="btn-Audit" id="btn-Audit"><i class="layui-icon layui-icon-radio"></i>审核</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display: none;" lay-event="btn-DeAudit" id="btn-DeAudit"><i class="layui-icon layui-icon-circle"></i>反审核</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display: none;" lay-event="set_CloseBill" id="set_CloseBill"><i class="layui-icon layui-icon-form"></i>关闭</button>
                                <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="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="btn_print1" id="btn-Print1"><i class="layui-icon layui-icon-print"></i>打印</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display: none;" lay-event="btn-Cell" id="btn-Cell"><i class="layui-icon layui-icon-slider"></i>保存列宽</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display: none;" lay-event="btn-RefreshCell" id="btn-RefreshCell"><i class="layui-icon layui-icon-cols"></i>默认列宽</button>
                                <!--<button type="button" class="layui-btn layui-btn-sm" style="display: none;" lay-event="btn-Cell" id="btn-Cell"><i class="layui-icon layui-icon-slider"></i>保存列宽</button>
                                <button type="button" class="layui-btn layui-btn-sm" style="display: none;" lay-event="btn-RefreshCell" id="btn-RefreshCell"><i class="layui-icon layui-icon-cols"></i>默认列宽</button>-->
                                <button type="button" class="layui-btn layui-btn-sm" style="display:none;" lay-event="set_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="set_SaveScheme" id="set_SaveScheme"><i class="layui-icon layui-icon-template"></i>保存方案</button>
WebTM/views/Éú²ú¹ÜÀí/Éú²ú¼Æ»®Æ½Ì¨/JIT_DayPlanPlatForm.html
@@ -1396,7 +1396,7 @@
                , area: ['90%', '90%']//大小
                , title: '生产车间列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes']
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html?openType=2&HOrgName=' + sessionStorage["Organization"], 'yes']
                , btn: ['确定', '取消']
                , btn1: function (index, layero) {//按钮【按钮一】的回调
                    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
WebTM/views/Éú²ú¹ÜÀí/Éú²ú¼Æ»®Æ½Ì¨/JIT_DayPlanPlatFormImport.html
@@ -126,6 +126,11 @@
            done: function (data1) {
                layer.closeAll('loading');
                if (data1.count == 1) {
                    var HVersion_Import_Temp = Format(new Date(), "yyyy-MM-dd hh:mm:ss");
                    for (var i = 0; i < data1.data.length; i++) {
                        data1.data[i].HVersion_Import = HVersion_Import_Temp;
                    }
                    option.data = data1.data;
                    table.render(option);
                } else {
WebTM/views/Éú²ú¹ÜÀí/Éú²ú¼Æ»®Æ½Ì¨/JIT_DayPlanPlatForm_TKNew.html
@@ -32,6 +32,7 @@
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnUnlockOrder" id="btnUnlockOrder">解锁工单</button>
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnGetCompletionDate" id="btnGetCompletionDate">获取完工日期</button>
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnGetEarlyDate" id="btnGetEarlyDate">获取最早开工日期</button>
                            <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnPublishDate" id="btnPublishDate">交期发布</button>
                        </div>
                        <div class="layui-collapse resizable-container">
                            <div class="layui-colla-item">
@@ -704,6 +705,11 @@
        form.on('submit(btnGetEarlyDate)', function (data) {
            get_btnGetEarlyDate();
        })
        //交期发布
        form.on('submit(btnPublishDate)', function (data) {
            get_btnPublishDate();
        })
        //#endregion
        //#endregion
@@ -1310,7 +1316,7 @@
            });
            //根据车间删除没有锁定的数据
            var sql = "delete from Sc_WorkBillSortBillSub where HMasterDate>=convert(varchar(10) ,DATEADD(DAY," + HPlanDay + ",GETDATE()),20) and HInterID in(select  HInterID from Sc_WorkBillSortBillMain where HWorkShopID=" + HWorkShopID + " and HLockOrder != 1 )";
            var sql = "delete from Sc_WorkBillSortBillSub where HLockedSub != 1 and HInterID in (select HInterID from Sc_WorkBillSortBillMain where HWorkShopID=" + HWorkShopID + " and HLockOrder != 1 )";
            $.ajax({
                url: GetWEBURL() + '/Gy_SOPBillList/UpDelSQL',
                type: "GET",
@@ -2690,6 +2696,28 @@
        }
        //#endregion
        //交期发布
        //#region
        function get_btnPublishDate() {
            var HDeptID = $("#HWorkShopID").val() == "" ? 0 : $("#HWorkShopID").val();
            $.ajax({
                url: GetWEBURL() + '/JIT_DayPlanPlatFormBill/PublishDate',
                type: "GET",
                data: { "HDeptID": HDeptID },
                success: function (data1) {
                    if (data1.count == 1) {
                        layer.alert("推送成功", { icon: 5 });
                    } else {
                        layer.alert(data1.Message, { icon: 5 });
                    }
                }, error: function () {
                    layer.alert("接口请求失败!", { icon: 5 });
                }
            });
        }
        //#endregion
        //#region æŸ¥çœ‹å·¥è‰ºè·¯çº¿ï¼Œè®¾ç½®å·¥åŽ‚æ—¥åŽ†ï¼Œå¯¼å‡ºï¼Œåˆ—è®¾ç½®æ–¹æ³•
        //查看工艺路线
WebTM/views/Éú²ú¹ÜÀí/Éú²ú¼Æ»®Æ½Ì¨/Sc_ICMOSortBillList.html
@@ -357,7 +357,7 @@
                , area: ['90%', '90%']//大小
                , title: '生产车间列表'//标题
                , shift: 2//弹出动画
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes']
                , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html?openType=2&HOrgName=' + sessionStorage["Organization"], 'yes']
                , btn: ['确定', '取消']
                , btn1: function (index, layero) {//按钮【按钮一】的回调
                    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
WebTM/views/¼Æ»®¹ÜÀí/²úÏß¶ÔÓ¦Æ÷¾ßÇåµ¥/Gy_SourceMouldBill.html
@@ -588,7 +588,7 @@
                    shift: 2,
                    area: ['90%', '90%'],
                    maxmin: true,
                    content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes'],
                    content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html?openType=2&HOrgName=' + sessionStorage["Organization"], 'yes'],
                    btn: ['确定', '取消']
                    , btn1: function (index, layero) {
                        //按钮【按钮一】的回调
WebTM/views/É豸¹ÜÀí/É豸άÐÞÅɹ¤µ¥/Sb_EquipRepairSendWorkBillList.html
@@ -797,9 +797,6 @@
                if (HBillNo) {
                    sWhere += " and å•据号 like '%" + HBillNo + "%'";
                }
                if (HDeptID) {
                    sWhere += " and ç»´ä¿®éƒ¨é—¨ like '%" + HDeptID + "%'";
                }
                //get_Display(sWhere);
                //数据库分页
                get_DisplayPage(sWhere)
WebTM/views/ÖÊÁ¿¹ÜÀí/°²µÆÖ𼶺ô½Ð¹æÔò/OA_AndengFlowRuleBillMain.html
@@ -680,7 +680,7 @@
                    , area: ['90%', '90%']//大小
                    , title: '发送部门表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes']
                    , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html?openType=2&HOrgName=' + sessionStorage["Organization"], 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
@@ -709,7 +709,7 @@
                    , area: ['90%', '90%']//大小
                    , title: '接收部门表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes']
                    , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html?openType=2&HOrgName=' + sessionStorage["Organization"], 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
WebTM/views/ÖÊÁ¿¹ÜÀí/¼ìÑé·½°¸µ¥/QC_Add_CheckProject.html
@@ -1809,7 +1809,7 @@
        }
        function GetMaterTypeValue(obj) {  //物料分类
            $("#HMaterTypeName").val(obj[0].物料分类名称);
            $("#HMaterTypeName").val(obj[0].名称);
            $("#HMaterTypeID").val(obj[0].HItemID);
        }