qinqi před 2 roky
rodič
revize
25dac93f08

+ 50 - 0
wwwroot/main/Assemble/api/GetPackingDefectRemarks_WCF.ashx

@@ -0,0 +1,50 @@
+<%@ WebHandler Language="C#" Class="GetDataDictionary_WCF" %>
+
+using System.Web;
+using System.Web.SessionState;
+using System.Web.Configuration;
+using Newtonsoft.Json.Linq;
+using Curtain.DataAccess;
+using System.Data;
+using DK.XuWei.WebMes;
+
+/// <summary>
+/// 从WCF接口获取 数据字典
+/// </summary>
+public class GetDataDictionary_WCF : IHttpHandler, IReadOnlySessionState
+{
+    public void ProcessRequest(HttpContext context)
+    {
+        using (IDataAccess conn = DataAccess.Create())
+        {
+            DataTable dt = null;
+           dt = conn.ExecuteDatatable(@"
+            SELECT distinct D.Remarks
+                FROM TP_MST_DATADICTIONARY D
+                WHERE VALUEFLAG = '1'
+                AND D.DICTIONARYTYPE = @DICTIONARYTYPE@ ",
+            new CDAParameter("DICTIONARYTYPE", "TPC019"));
+
+            context.Response.Write(new JsonResult(dt).ToJson());
+        }
+
+        //context.Response.ContentType = "text/plain";
+
+        //WCF wcf = new WCF();
+        //wcf.Para = wcf.LoadParaBySession();
+        //wcf.Para.Add(new JProperty("dicType", context.Request["type"]));
+        //string jsonStr = wcf.Post("/DKService/PDAModuleService/GetDataDictionaryByType");
+        //jsonStr = ("{'success':true,'message':'操作成功!','rows':" + jsonStr + "}").Replace("'","\"");
+        //context.Response.Write(jsonStr);
+
+    }
+
+    public bool IsReusable
+    {
+        get
+        {
+            return false;
+        }
+    }
+
+}

+ 43 - 0
wwwroot/main/Assemble/api/GetPackingDefect_WCF.ashx

@@ -0,0 +1,43 @@
+<%@ WebHandler Language="C#" Class="GetDataDictionary_WCF" %>
+
+using System.Web;
+using System.Web.SessionState;
+using System.Web.Configuration;
+using Newtonsoft.Json.Linq;
+using Curtain.DataAccess;
+using System.Data;
+using DK.XuWei.WebMes;
+
+/// <summary>
+/// 从WCF接口获取 数据字典
+/// </summary>
+public class GetDataDictionary_WCF : IHttpHandler, IReadOnlySessionState
+{
+    public void ProcessRequest(HttpContext context)
+    {
+        using (IDataAccess conn = DataAccess.Create())
+        {
+            DataTable dt = null;
+            
+            dt = conn.ExecuteDatatable(@"
+            SELECT D.DICTIONARYVALUE,D.Remarks 
+                FROM TP_MST_DATADICTIONARY D
+                WHERE VALUEFLAG = '1'
+                AND D.DICTIONARYTYPE = @DICTIONARYTYPE@ ",
+            new CDAParameter("DICTIONARYTYPE", "TPC019"));
+            
+
+            context.Response.Write(new JsonResult(dt).ToJson());
+        }
+
+    }
+
+    public bool IsReusable
+    {
+        get
+        {
+            return false;
+        }
+    }
+
+}

+ 65 - 17
wwwroot/main/Assemble/index.html

@@ -98,24 +98,24 @@
                             <option value="0">不合格</option>
                         </select>
                     </div>
-                    <div class="form-group col-2 mb-1">
+                    <div class="form-group col-1 mb-1">
                         养水<select id="养水" class="custom-select" onchange="leakFlag4_onChange()">
                             <option value="1" selected="selected">合格</option>
                             <option value="0">不合格</option>
                         </select>
                     </div>
-                    <div class="form-group col-2 mb-1">
+                    <div class="form-group col-1 mb-1">
                         养水不合格位置<select id="养水不合格位置" class="custom-select">
                             <option value=""></option>
                         </select>
                     </div>
-                    <div class="form-group col-2 mb-1">
+                    <div class="form-group col-1 mb-1">
                         试水<select id="试水" class="custom-select" onchange="leakFlag5_onChange()">
                             <option value="1" selected="selected">合格</option>
                             <option value="0">不合格</option>
                         </select>
                     </div>
-                    <div class="form-group col-2 mb-1">
+                    <div class="form-group col-1 mb-1">
                         试水不合格位置<select id="试水不合格位置" class="custom-select">
                             <option value=""></option>
                         </select>
@@ -125,6 +125,13 @@
                             <option value=""></option>
                         </select>
                     </div>
+                    <div class="form-group col-2 mb-1"> 
+                        下线标识<select id="下线标识" class="custom-select" >
+                            <option value="">请选择</option>
+                            <option value="1">是</option>
+                            <option value="0">否</option>
+                        </select>
+                    </div>
                 </div>
             </form>
         </div>
@@ -143,7 +150,7 @@
                 <a class="nav-link" id="质量登记页" data-toggle="tab" href="#质量登记" role="tab" aria-controls="质量登记" aria-selected="false">质量登记</a>
             </li>
             <li class="nav-item" role="presentation">
-                <a class="nav-link" id="品管巡检页" data-toggle="tab" href="#品管巡检" role="tab" aria-controls="品管巡检" aria-selected="false">品管巡检</a>
+                <a class="nav-link " id="品管巡检页" data-toggle="tab" href="#品管巡检" role="tab" aria-controls="品管巡检" aria-selected="false">品管巡检</a>
             </li>
         </ul>
 
@@ -394,19 +401,30 @@
             <div class="tab-pane fade" id="品管巡检" role="tabpanel" aria-labelledby="品管巡检">
                 <div class="rounded bg-white shadow-sm pl-4 pt-3 pr-4 pl-4 pb-2">
                     <div class="form-row">
-                         
+
                         <div class="form-group col-2">
                             <label for="巡检等级">巡检等级</label>
                             <select id="巡检等级" class="custom-select">
                                 <option value=""></option>
                             </select>
                         </div>
+
                         <div class="form-group col-2">
                             <label for="包装缺陷">包装缺陷</label>
+                            <div class="input-group">
+                                <input type="text" class="form-control border-secondary" id="包装缺陷" placeholder="查询" readonly>
+                                <div class="input-group-append">
+                                    <button class="btn btn-info" onclick="packingProductDefect_OnClick(procedureId)" type="button" id="包装缺陷按钮">选择</button>
+                                </div>
+                            </div>
+                        </div>
+
+                        <!--<div class="form-group col-2">
+                            <label for="包装缺陷">包装缺陷</label>
                             <select id="包装缺陷" class="custom-select">
                                 <option value=""></option>
                             </select>
-                        </div>
+                        </div>-->
                         <div class="form-group col-6" style="padding-top: 24px">
                             <!--产品分级按钮-->
                             <div id="品管巡检产品分级按钮模板" style="display:none;">
@@ -426,7 +444,7 @@
                                 </label>
                                 <label class="btn btn-info" onclick="pinguanGoodsLevelSelect('次品')">
                                     <input type="radio" name="品管巡检产品分级按钮项" id="品管巡检产品分级次品" value="次品"> 次品
-                                </label> 
+                                </label>
                                 <label class="btn btn-info" onclick="pinguanGoodsLevelSelect('冷补')">
                                     <input type="radio" name="品管巡检产品分级按钮项" id="品管巡检产品分级冷补" value="冷补"> 冷补
                                 </label>
@@ -591,6 +609,8 @@
     <script src="../common/dialogDefect.js"></script>
     <!--产品缺陷位置对话框-->
     <script src="../common/dialogDefectPosition.js"></script>
+    <!--包装缺陷位置对话框-->
+    <script src="../common/dialogpackingdefect.js"></script>
     <!--版权信息-->
     <script src="../common/footer.js"></script>
 
@@ -618,7 +638,7 @@
         var jsonGoodsLevel = [];    // 产品分级数据源
         var goodsLevelIndex = 0;    // 产品分级索引
         var goodsLevelName = '';    // 产品分级名称
-        var pinguanGoodsLevelName = '';    // 品管产品分级名称 
+        var pinguanGoodsLevelName = '';    // 品管产品分级名称
         var idnrkList = [];         // 组件列表
         var idnrkScrapList = [];    // 组件报损列表
         var bindIdnrkList = [];     // 已绑组件列表
@@ -628,6 +648,7 @@
         var procedureLengbu = [];   // 冷补工序数据源
         var productionDefects = []; // 用于提交的缺陷数据
         var defectJson = [];        // 用于显示的缺陷数据
+        var defectPackingJson = []; // 用于显示的包装缺陷数据
         var defectCount = 0;        // 缺陷数量
         var leakFlag4Data = [];     // 养水不合格位置数据
         var leakFlag5Data = [];     // 试水不合格位置数据
@@ -955,6 +976,8 @@
                             $('#漏气').find("option[value='" + json['rows']["BarCodeTable"][0]["out_LeakFlag1"] + "']").attr("selected", true);
                             $('#养水').find("option[value='" + json['rows']["BarCodeTable"][0]["out_LeakFlag4"] + "']").attr("selected", true);
                             $('#试水').find("option[value='" + json['rows']["BarCodeTable"][0]["out_LeakFlag5"] + "']").attr("selected", true);
+                            $('#下线标识').val(json['rows']["BarCodeTable"][0]["offlineFlag"]);
+                            
                             if (json['rows']["leakFlag4Table"] != undefined) {
                                 $('#养水不合格位置').find("option[value='" + json['rows']["leakFlag4Table"][0]["POSITION"] + "']").attr("selected", true);
                             }
@@ -974,7 +997,7 @@
                             //巡检等级
                             //$('#巡检等级').find("option[value='" + json['rows']["BarCodeTable"][0]["InspectionLevel"] + "']").attr("selected", true);
                             $('#巡检等级').val(json['rows']["BarCodeTable"][0]["InspectionLevel"])
-                            
+
                             //包装缺陷
                             //$('#包装缺陷').find("option[value='" + json['rows']["BarCodeTable"][0]["PackingDefect"] + "']").attr("selected", true);
                             $('#包装缺陷').val(json['rows']["BarCodeTable"][0]["PackingDefect"])
@@ -985,14 +1008,14 @@
                                 $('#品管巡检产品分级按钮').html('');
                                 for (var i = 0; i < jsonGoodsLevel.length; i++) {
                                     var temp1 = $('#品管巡检产品分级按钮模板').html().replaceAll('{text}', jsonGoodsLevel[i]["DEFECTFLAGNAME"]);
-                                   
+
                                     if (jsonGoodsLevel[i]["DEFECTFLAGNAME"] != json['rows']["BarCodeTable"][0]["InspectionGoodsLevel"]) {
-                                        temp1 = temp1.replaceAll('active', ''); 
+                                        temp1 = temp1.replaceAll('active', '');
                                     }
-                                    else { 
+                                    else {
                                         pinguanGoodsLevelName = json['rows']["BarCodeTable"][0]["InspectionGoodsLevel"];
                                     }
-                                    $('#品管巡检产品分级按钮').append(temp1); 
+                                    $('#品管巡检产品分级按钮').append(temp1);
                                 }
                             }
 
@@ -1240,6 +1263,7 @@
                                 $('#试水').prop('disabled', true);
                                 $('#试水不合格位置').prop('disabled', true);
                                 $('#补裂位置').prop('disabled', true);
+                                $('#下线标识').prop('disabled', true);
                             }
                             else if (procedureName.search("试水") > 0) {
                                 $('#养水').prop('disabled', true);
@@ -1248,6 +1272,7 @@
                                 $('#试水').prop('disabled', false);
                                 $('#试水不合格位置').prop('disabled', true);
                                 $('#补裂位置').prop('disabled', true);
+                                $('#下线标识').prop('disabled', true);
                             }
                             else if (procedureName.search("漏气") > 0) {
                                 $('#养水').prop('disabled', true);
@@ -1256,6 +1281,7 @@
                                 $('#试水').prop('disabled', true);
                                 $('#试水不合格位置').prop('disabled', true);
                                 $('#补裂位置').prop('disabled', true);
+                                $('#下线标识').prop('disabled', true);
                             }
                             else if (procedureName.search("补裂") > 0 || procedureName == "补裂") {
                                 console.log('procedureName11', 11)
@@ -1265,6 +1291,16 @@
                                 $('#试水').prop('disabled', true);
                                 $('#试水不合格位置').prop('disabled', true);
                                 $('#补裂位置').prop('disabled', false);
+                                $('#下线标识').prop('disabled', true);
+                            }
+                            else if (procedureName.search("三检") > 0) {
+                                $('#养水').prop('disabled', true);
+                                $('#养水不合格位置').prop('disabled', true);
+                                $('#漏气').prop('disabled', true);
+                                $('#试水').prop('disabled', true);
+                                $('#试水不合格位置').prop('disabled', true);
+                                $('#补裂位置').prop('disabled', true);
+                                $('#下线标识').prop('disabled', false);
                             }
                             else {
                                 $('#养水').prop('disabled', true);
@@ -1273,6 +1309,7 @@
                                 $('#试水').prop('disabled', true);
                                 $('#试水不合格位置').prop('disabled', true);
                                 $('#补裂位置').prop('disabled', true);
+                                $('#下线标识').prop('disabled', true);
                             }
                         }
                     }
@@ -1993,7 +2030,7 @@
         }
 
         //产品分级按钮事件
-        function pinguanGoodsLevelSelect( value) {
+        function pinguanGoodsLevelSelect(value) {
             pinguanGoodsLevelName = value;
             console.log('pinguanGoodsLevelName', pinguanGoodsLevelName)
         }
@@ -2086,6 +2123,7 @@
             $('#补裂位置').selectpicker('refresh');
             $('#巡检等级').val('');
             $('#包装缺陷').val('');
+            $('#下线标识').val("");
         }
 
         //启用禁用 产品缺陷 页
@@ -2717,6 +2755,14 @@
             });
         }
 
+        //包装缺陷按钮点击处理
+        function packingProductDefect_OnClick(id) {
+            dialogPackingDefectShow(function () {
+                $('#包装缺陷').val(productPackingDefectName);
+
+            });
+        }
+
         //勾选事件 20221206
         function chooseCheckBox(id) {
             var i = id - 1000;
@@ -2931,7 +2977,8 @@
                         "LeakFlag4Position": $("#养水不合格位置").val(),
                         "LeakFlag5": $("#试水").val(),
                         "LeakFlag5Position": $("#试水不合格位置").val(),
-                        "LeakFlag6Position": bulies, 
+                        "LeakFlag6Position": bulies,
+                        "OfflineFlag": $("#下线标识").val(),
                     }];
                 }
 
@@ -2968,6 +3015,7 @@
                         "LeakFlag5": $("#试水").val(),
                         "LeakFlag5Position": $("#试水不合格位置").val(),
                         "LeakFlag6Position": bulies,
+                        "OfflineFlag": $("#下线标识").val(),
                     }];
                 }
                 console.log(action);
@@ -3088,7 +3136,7 @@
         function pinguanXunJianSave() {
 
             //提交到接口
-            $.post('api/AddPinGuanCheck_WCF.ashx', {'barcode': barcode, 'InspectionLevel': $("#巡检等级").val(), 'PackingDefect': $("#包装缺陷").val(), 'InspectionGoodsLevel': pinguanGoodsLevelName}, function (data) {
+            $.post('api/AddPinGuanCheck_WCF.ashx', { 'barcode': barcode, 'InspectionLevel': $("#巡检等级").val(), 'PackingDefect': $("#包装缺陷").val(), 'InspectionGoodsLevel': pinguanGoodsLevelName }, function (data) {
                 var json = JSON.parse(data);
                 if (json['success'] == true) {
 

+ 30 - 0
wwwroot/main/Common/dialogpackingdefect.html

@@ -0,0 +1,30 @@
+<div class="modal fade bs-example-modal-xl" id="dialopackingDefect" tabindex="-1" role="dialog" aria-labelledby="dialopackingDefect" aria-hidden="true">
+    <div class="modal-dialog modal-xl" role="document">
+        <div class="modal-content">
+            <div class="modal-header">
+                <h5 class="modal-title" id="dialogPackingDefect-title">包装缺陷选择</h5>
+                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
+                    <span aria-hidden="true">&times;</span>
+                </button>
+            </div>
+            <div class="modal-body bg-white" id="dialogPackingDefect-body">
+                <form>
+                    <div class="form-row" id="包装缺陷栏">
+                        <div class="col-12">
+                            <!--缺陷分类-->
+                            <ul class="nav nav-tabs" id="包装缺陷分类" style="background-color:white" role="tablist">
+                            </ul>
+                            <!--缺陷列表-->
+                            <div class="tab-content pt-2 pl-2 pl-2 pb-0" id="包装缺陷列表">
+                            </div>
+                        </div>
+                    </div>
+                </form>
+            </div>
+            <div class="modal-footer">
+                <button type="button" id="cancelButtonPackingDefect" class="btn btn-secondary" data-dismiss="modal">取消</button>
+                <button type="button" id="okButtonPackingDefect" class="btn btn-danger" data-dismiss="modal">确定</button>
+            </div>
+        </div>
+    </div>
+</div>

+ 81 - 0
wwwroot/main/Common/dialogpackingdefect.js

@@ -0,0 +1,81 @@
+document.write('<div id="dialogmodalpackingDefect"></div>');
+$('#dialogmodalpackingDefect').load('../common/dialogpackingDefect.html');
+ 
+var productPackingDefectName = "";
+
+//默认对话框
+function dialogPackingDefectShow(okCallback, cancelCallback) {
+    $('#dialopackingDefect').off('show.bs.modal');
+    $('#dialopackingDefect').on('show.bs.modal', function (event) {
+
+    });
+    $('#dialopackingDefect').off('hide.bs.modal');
+    $('#dialopackingDefect').on('hide.bs.modal', function (event) {
+        okCallback();
+    });
+    $('#okButtonPackingDefect').off('click');
+    $('#okButtonPackingDefect').on('click', okCallback);
+    $('#dialopackingDefect').modal('show');
+}
+
+//加载产品缺陷
+function loadProductPackingDefect() {
+ 
+    var tabHtml = '';
+    var paneHtml = '';
+    var buttonHtml = '';
+
+    tabHtml += '<li class="nav-item">';
+    tabHtml += '<a class="nav-link active" id="paddingtab_i_" data-toggle="tab" href="#paddingpane_i_" role="tab" aria-controls="paddingpane_i_" aria-selected="true">_类型_</a>';
+    tabHtml += '</li>';
+
+    paneHtml = '<div class="tab-pane fade active show" id="paddingpane_i_" role="tabpanel" aria-labelledby="_i_paddingpane">';
+    paneHtml += '<div id="paddingbutton_i_" class="btn-group-toggle pt-2" data-toggle="buttons"></div>';
+    paneHtml += '</div>';
+
+    buttonHtml = '<label onclick="defectPackingToggle(\'_名称_\')" class="btn btn-outline-info btn-sm m-1">';
+    buttonHtml += '<input name="defectPackingRadio" type="radio" value="_名称_" autocomplete="off">_名称_</input>';
+    buttonHtml += '</label>';
+
+    $.get('api/GetPackingDefect_WCF.ashx', function (data) {
+        defectPackingJson = JSON.parse(data);
+        $.get('api/GetPackingDefectRemarks_WCF.ashx', function (data) {
+            var typePackingJson = JSON.parse(data);
+            var temp = '';
+            for (var i = 0; i < typePackingJson['rows'].length; i++) {
+                //tab注入 
+                temp = tabHtml.replaceAll('_类型_', typePackingJson['rows'][i]['REMARKS']);
+                temp = temp.replaceAll('_i_', i);
+                if(i>0)temp = temp.replace('active', '');
+                $('#包装缺陷分类').append(temp);
+                //pane注入  
+                temp = paneHtml.replaceAll('_i_', i);
+                if (i > 0)temp = temp.replace('active', '').replace('show', '');
+                $('#包装缺陷列表').append(temp);
+                //button注入
+                
+                for (var j = 0; j < defectPackingJson['rows'].length; j++) {
+                    if (typePackingJson['rows'][i]['REMARKS'] == defectPackingJson['rows'][j]['REMARKS']) {
+                        temp = buttonHtml.replaceAll('_名称_', defectPackingJson['rows'][j]['DICTIONARYVALUE']);
+                        $('#paddingbutton' + i).append(temp);
+                    }
+                }
+            }
+        });
+    });
+}
+
+//记录缺陷选择
+function defectPackingToggle(str) { 
+    productPackingDefectName = str;
+
+    $('#dialopackingDefect').modal('hide');
+}
+
+$(document).ready(function () {
+
+    $('#dialopackingDefect').removeData('modal');
+    //加载产品缺陷
+    loadProductPackingDefect();
+
+});