南骏 池
2025-03-25 e14586862359e85c220dd606248a0eadeb13f820
1.IPQC首检样式确认
2.
已添加8个文件
已修改1个文件
1422 ■■■■■ 文件已修改
.vscode/launch.json 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/IPQC_SJ/Add.aspx 358 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/IPQC_SJ/Add.aspx.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/IPQC_SJ/List.aspx 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/IPQC_SJ/List.aspx.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/Js/IPQC_SJ/Add.js 519 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/Js/IPQC_SJ/List.js 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/Js/IPQC_SJ/detail.js 242 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
H5/LLJ/Add.aspx 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.vscode/launch.json
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
{
    // ä½¿ç”¨ IntelliSense äº†è§£ç›¸å…³å±žæ€§ã€‚
    // æ‚¬åœä»¥æŸ¥çœ‹çŽ°æœ‰å±žæ€§çš„æè¿°ã€‚
    // æ¬²äº†è§£æ›´å¤šä¿¡æ¯ï¼Œè¯·è®¿é—®: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "msedge",
            "request": "launch",
            "name": "Open Add.aspx",
            "file": "e:\\01GIT_NEW\\04祈禧\\PDA前台\\QXPDA\\H5\\IPQC_SJ\\Add.aspx"
        }
    ]
}
H5/IPQC_SJ/Add.aspx
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,358 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Mst.master" AutoEventWireup="true" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
        <style>
            .bg-info {
                background-color: #fff;
            }
            .custom-title {
                margin-right: 4px;
                vertical-align: middle;
            }
            .si-status__right-btns {
                flex: 1;
                display: flex;
                align-items: center;
                padding-left: 0.16rem;
                background: #e3edf7;
                align-items: center;
                width: 100%;
                gap: 10px; /* æŒ‰é’®é—´è· */
                padding: 0 8px; /* å·¦å³å†…边距 */
            }
            /* æŒ‰é’®æ ·å¼ */
            .status-btn {
              flex: 1; /* ç­‰åˆ†å‰©ä½™ç©ºé—´ */
              min-width: 0; /* é˜²æ­¢å†…容溢出 */
              font-size: 0.25rem;
              border-radius: 4px;
            }
        </style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server">
<%--        <van-nav-bar
          :title=formData.releaseNo
          left-text="返回"
          left-arrow
          @click-left="GetBack1()"
        ></van-nav-bar>--%>
            <van-nav-bar
              left-text="返回"
              left-arrow
              @click-left="GetBack1"
              @click-right="showButton = true"
            >
              <template #title>
                <div class="inline-title">
                  <span class="release-no">{{ formData.releaseNo }}</span>
                    <van-tag round plain v-if="formData.fcheckResu === '不合格'" type="danger">不合格</van-tag>
                    <van-tag round plain v-else-if="formData.fcheckResu === '检验中'" type="warning">检验中</van-tag>
                    <van-tag round plain v-else-if="formData.fcheckResu === '未检验'" type="warning">未检验</van-tag>
                    <van-tag round plain v-else-if="formData.fcheckResu === ''" type="warning">未检验</van-tag>
                    <van-tag round plain v-else-if="formData.fcheckResu === '合格'" type="warning">合格</van-tag>
                    <van-tag round plain v-else type="danger">异常状态</van-tag>
<%--                  <van-tag  round plain
                    :type="formData.fcheckResu === '不合格' ? 'danger' :
                          formData.fcheckResu === '检验中' ? 'warning' :
                          formData.fcheckResu === '未检验' ? 'warning' :
                          formData.fcheckResu === '合格' ? 'success' :'danger'"
                    class="status-tag"
                  >
                    {{ formData.fcheckResu }}
                  </van-tag>--%>
                </div>
              </template>
                <template #right>
                    <van-icon name="ellipsis" />
                  </template>
            </van-nav-bar>
        <div class="content-wrapper">
            <van-cell-group >
              <!-- è‡ªå®šä¹‰å­—段用于显示两个标识 -->
              <van-field label="标识" colon="true" readonly>
                <template #input>
                  <div class="checkbox-container">
                    æ€¥æ–™<van-checkbox v-model="formData.urgentFlag" disabled></van-checkbox>
                  </div>
                </template>
              </van-field>
              <van-field label="指令工单" colon="true" v-model="formData.lotNo" readonly ></van-field>
<%--              <van-field label="创建时间" colon="true" v-model="formData.createDate" readonly ></van-field>
              <van-field label="创建人" colon="true" v-model="formData.createBy" readonly ></van-field>--%>
              <van-field label="物料编码" colon="true" v-model="formData.itemNo" readonly ></van-field>
              <van-field label="物料名称" colon="true" v-model="formData.itemName" readonly ></van-field>
              <%--<van-field label="规格型号" colon="true" v-model="formData.itemModel" readonly ></van-field>--%>
                <van-field
                  label="规格型号"
                  colon
                  v-model="formData.itemModel"
                  readonly
                  class="wrap-field"
                >
                  <template #input>
                    <div class="wrap-content">{{ formData.itemModel }}</div>
                  </template>
                </van-field>
              <van-field label="数量" colon="true" v-model="formData.fcovertQty" readonly ></van-field>
              <van-field label="不合格描述"   v-if='formData.fcheckResu == "不合格"' colon v-model="remarks" readonly class="wrap-field">
                  <template #input>
                      <div class="wrap-content">{{ remarks }}</div>
                    </template>
                  <template #button>
                    <van-tag type="primary" style="font-size:15px" @click="updateRemarks(formData.guid)">输入</van-tag>
                  </template>
              </van-field>
<%--            <van-field
                v-if='formData.fcheckResu == "不合格"' colon="true"
                v-model="formData.remarks"
                rows="2"
                autosize
                label="不合格描述"
                type="textarea"
                maxlength="50"
                placeholder="请输入不合格描述"
                show-word-limit
            />--%>
                            <!-- ä¸åˆæ ¼è¡¨è¿°è¾“å…¥ -->
            <van-dialog v-model="showDialog" title="不合格描述" :show-cancel-button="false"  @confirm="remarksConfirm">
              <van-field
                v-model="remarks"
                rows="5"
                autosize
                type="textarea"
                maxlength="500"
                placeholder="请输入不合格描述"
                show-word-limit
            />
           </van-dialog>
            </van-cell-group>
        </div>
     <!-- æ–¹å¼ -->
             <div class="uploader-container">
  <!-- ä½¿ç”¨ field æ ·å¼åŒ…裹 -->
  <div class="van-cell van-field" style="padding: 10px 16px">
    <!-- å·¦ä¾§æ ‡ç­¾ -->
    <div class="van-field__label" style="width: 90px">图片上传</div>
    <!-- å³ä¾§ä¸Šä¼ åŒºåŸŸ -->
    <div class="van-field__body" style="flex: 1">
      <van-uploader
        v-model="fileList"
        :after-read="afterRead"
        style="padding: 8px 0"
        @delete="handleDelete"
      />
    </div>
  </div>
</div>
<%--            <van-button :loading="ttrre" type="info" loading-text="加载中..." v-if="!isShowTable && formData.fsubmit == 0" @click="submit">检验提交</van-button>
            <van-button type="danger" v-if="!isShowTable && formData.fsubmit == 0" @click="removeXJ">重新加载项目</van-button>--%>
<%--            <van-button :loading="ttrre"  type="info" loading-text="加载中..."  @click="submit">检验提交</van-button>
            <van-button type="danger"  @click="removeXJ">刷新重做</van-button>--%>
          <van-tabs color="#000"  title-active-color="#0283EF" style="padding-bottom: 120px;">
              <van-tab title="检验项目" class="mySolid font">
                  <van-row type="flex" justify="center">
                       <van-col span="10" center class="text-left padding-left">检验项目</van-col>
                      <van-col span="4">已检数/抽检数</van-col>
                      <van-col span="4">特征值</van-col>
                      <van-col span="6">检验结果</van-col>
                  </van-row>
                  <van-row  v-for="(item,index) in tableData" :key="index"  type="flex" justify="left">
                       <van-col span="10" center class="text-left padding-left" >
                           <van-cell center
                            center :title="item.fcheckItem" @click="togglePopup(index)"></van-cell>
                      </van-col>
                      <van-col span="4" >
                            <van-cell center
                                center :title="item.fenterQty + '/' + item.checkQyt" @click="togglePopup(index)"></van-cell>
                        </van-col>
                      <van-col span="4" >
                            <van-cell center
                                center :title="item.fenterQty + '/' + item.checkQyt" @click="togglePopup(index)"></van-cell>
                        </van-col>
                      <van-col center span="6" >
                          <van-cell center
                            center v-if="item.fcheckResu === '合格'">
                            <van-tag round  plain type="success" style="font-size:15px" @click="togglePopup(index)">合格</van-tag>
                          </van-cell>
                          <van-cell center
                          center v-else-if="item.fcheckResu === '不合格'">
                          <van-tag round plain type="danger" style="font-size:15px" @click="togglePopup(index)">不合格</van-tag>
                        </van-cell>
                            <van-cell center
                              center v-else >
                              <van-tag round plain type="warning" style="font-size:15px" @click="togglePopup(index)">检验中</van-tag>
                            </van-cell>
                      </van-col>
                </van-row>
              </van-tab>
           </van-tabs>
     <van-popup
          v-model="show"
          closeable
          overlay ="true"
          round
          close-icon="close"
          class="van-icon-popup"
          position="right"
          :style="{ width: '100%',
              height: '100%' ,
              boxShadow: '-2px 0 12px rgba(0, 0, 0, 0.1)'
              }"
         @click-close-icon ="init"
        >
          <!-- å¼¹å‡ºå†…容 -->
          <div  class="content-wrapper-jymx">
            <van-tabs v-model="tabActive" sticky color="#000" round  ellipsis="false"  @click="handleTabClick">
                <van-tab v-for="(itm,index) in tableData" round  :key="index" :name="index" >
                    <template #title > {{itm.fcheckItem}} <van-icon v-if="itm.fenterQty >=itm.checkQyt" name="success" color="#1989fa" class="badge-icon" ></van-icon></template>
                    <template>
                          <van-cell-group>
                              <van-field label="项目名称" colon="true" v-model="jymxData.fcheckItem" readonly ></van-field>
                              <van-field label="规格要求" colon="true" v-model="jymxData.fspecRequ" readonly ></van-field>
                              <van-field label="检验工具" colon="true" v-model="jymxData.fcheckTool" readonly ></van-field>
                              <van-field label="检验数" colon="true" v-model="jymxData.checkQyt" readonly ></van-field>
                              <van-field label="下限" colon="true" v-model="jymxData.fdownAllow" readonly ></van-field>
                              <van-field label="标准值" colon="true" v-model="jymxData.fstand" readonly ></van-field>
                              <van-field label="上限" colon="true" v-model="jymxData.fupAllow" readonly ></van-field>
                              <%--<van-field label="AC数" colon="true" v-model="jymxData.facQty" readonly ></van-field>--%>
                              <van-field label="RE数" colon="true" v-model="jymxData.freQty" readonly ></van-field>
                              <van-field label="样本数" colon="true" v-model="jymxData.ybsl" readonly ></van-field>
                              <%--<van-field label="预览结果" colon="true" v-model="jymxData.result" readonly ></van-field>--%>
                              <%--<van-field label="结果录入" colon="true" v-model="resultValue"  placeholder="请输入OK-数字或NG-数字"></van-field>--%>
                              <van-field label="检测结果" colon="true" readonly >
                                   <template #input>
                                       <van-tag round plain v-if="jymxData.fcheckResu === '合格'" type="success">合格</van-tag>
                                       <van-tag round plain v-else-if="jymxData.fcheckResu === '不合格'" type="danger">不合格</van-tag>
                                       <van-tag round plain v-else type="warning">检验中</van-tag>
                                   </template>
                                </van-field>
                    </template>
                    <template>
                              <!-- è¾“入框 -->
                              <div v-if="jymxData.fdownAllow !== '' && jymxData.fupAllow !== ''" class="si-input-box">
                                <div class="si-input__left">
                                  <span class="si-input__label">检验值输入</span>
                                </div>
                                <div v-if="jymxData.fdownAllow !== '' && jymxData.fupAllow !== ''" class="si-status__right">
                                  <van-field
                                      :ref="'inputValue' + tabActive"
                                      v-model="inputValue"
                                      placeholder="请输入检验值"
                                      :border="false"
                                      class="si-input-field"
                                      @input="handleNumberInput3"
                                      @keyup.enter.native="getInputTZZ"
                                  />
                                </div>
                              </div>
                      <!-- è¾“入框 -->
                      <div v-else class="si-input-box">
                         <div class="si-input__left">
                            <span class="si-input__label">检验值输入</span>
                          </div>
                          <div class="si-status__right-btns">  <!-- ä¿®æ”¹å®¹å™¨ç±»å -->
                            <van-button
                              type="primary"
                              size="small"
                              class="status-btn"
                              @click="handleQualified(true)"
                            >
                              åˆæ ¼
                            </van-button>
                            <van-button
                              type="danger"
                              size="small"
                              class="status-btn"
                              @click="handleQualified(false)"
                            >
                              ä¸åˆæ ¼
                            </van-button>
                          </div>
                      </div>
                    </template>
                            <van-row type="flex" justify="center">
                                 <van-col span="6">样本集</van-col>
                                <van-col span="6">检验值</van-col>
                                <van-col span="6">判定标志</van-col>
                                <van-col span="6">操作</van-col>
                            </van-row>
                            <van-row  v-for="(item,index) in tableMxData.list2" :key="index"  type="flex" justify="left">
                                 <van-col span="6"  >
                                     <van-cell center
                                      center :title="item.fcheckItem" @click="togglePopup(index)"></van-cell>
                                </van-col>
                                <van-col span="6" >
                                    <van-cell center
                                        center :title="item.fcheckResu"></van-cell>
                                </van-col>
                                <van-col center span="6" >
                                    <van-cell center
                                      center v-if="item.fstand === '√'">
                                      <van-tag round plain type="success" style="font-size:15px">合格</van-tag>
                                    </van-cell>
                                    <van-cell center
                                    center v-else-if="item.fstand === '×'">
                                    <van-tag round plain type="danger" style="font-size:15px">不合格</van-tag>
                                  </van-cell>
                                      <van-cell center
                                        center v-else >
                                        <van-tag round plain type="warning" style="font-size:15px">检验中</van-tag>
                                      </van-cell>
                                </van-col>
                                <van-col center span="6" >
                                    <van-tag type="danger" style="font-size:15px" @click="deleteDetail13(item.guid)">删除</van-tag>
                                </van-col>
                          </van-row>
                </van-tab>
            </van-tabs>
          </div>
        </van-popup>
        <!-- å¼¹å‡ºèœå• -->
          <van-popup
            v-model="showButton"
            position="bottom"
            :style="{ width: '100%' }"
          >
            <div style="padding: 12px;">
              <van-button
                block
                type="info"
                @click="submit"
                :loading="ttrre"
                loading-text="加载中..."
              >检验提交</van-button>
              <van-button
                block
                type="danger"
                @click="removeXJ"
                style="margin-top: 8px;"
              >刷新重做</van-button>
            </div>
          </van-popup>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder3" Runat="Server">
    <comloading  v-if="isLoading"></comloading>
  <%--<comback ></comback>--%>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder4" Runat="Server">
 <script src="../Js/IPQC_SJ/Add.js?<%=11 %>"></script>
</asp:Content>
H5/IPQC_SJ/Add.aspx.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class H5_Scbl : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }
}
H5/IPQC_SJ/List.aspx
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,136 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Mst.master" AutoEventWireup="true" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
        <style>
            .bg-info {
                background-color: #fff;
            }
            .van-search {
              padding: 10px;
              background: #f7f8fa;
            }
            .van-search__action {
                color: #1989fa; /* è®¾ç½®å­—体颜色为蓝色 */
            }
            .van-cell__title {
                text-align: left;
            }
            </style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server">
        <van-nav-bar
          title="首件检验"
          left-text="返回"
          left-arrow
          @click-left="GoBack()"
        ></van-nav-bar>
        <van-search
          v-model="searchKeyword"
          placeholder="输入检验单号/物料/工单等搜索"
          show-action
          @search="handleSearch"
        >
          <template #action>
              <%--<van-tag plain  round type="primary" @click="handleSearch">搜索</van-tag>--%>
              <div @click="handleSearch">搜索</div>
          </template>
        </van-search>
        <div class ="content-wrapper">
<%--            <van-tabs v-model="current" @click="onClickTab">
              <van-tab title="未检验">--%>
                  <van-pull-refresh v-model="refreshing" @refresh="onRefresh">
                      <van-list
                        v-model="loading"
                        :finished="finished"
                        finished-text="没有更多了"
                        @load="onLoad">
                        <van-cell v-for="item in data" :key="item">
                          <div>
                             <van-cell-group>
                               <van-cell :title="item.releaseNo" is-link :url="'Add.aspx?id='+item.guid+'&lotNo='+item.lotNo+'&releaseNo='+item.releaseNo" ></van-cell>
                               <van-field label="指令工单" colon="true" v-model="item.lotNo" readonly ></van-field>
                                 <!-- è‡ªå®šä¹‰å­—段用于显示两个标识 -->
                                <van-field label="标识" colon="true" readonly >
                                  <template #input>
                                    <div class="checkbox-container">
                                      æ€¥æ–™<van-checkbox v-model="item.urgentFlag" disabled></van-checkbox>
                                    </div>
                                  </template>
                                </van-field>
<%--                                 <van-checkbox v-model="item.ftype" disabled>委外</van-checkbox>
                                 <van-checkbox v-model="item.urgentFlag == 1" disabled>急料标识</van-checkbox>--%>
                               <%--<van-field label="创建时间" colon="true" v-model="item.createDate" readonly ></van-field>
                               <van-field label="创建人" colon="true" v-model="item.createBy" readonly ></van-field>--%>
                               <van-field label="物料编码" colon="true" v-model="item.itemNo" readonly ></van-field>
                               <van-field label="物料名称" colon="true" v-model="item.itemName" readonly ></van-field>
                               <%--<van-field label="规格型号" colon="true" v-model="item.itemModel" readonly ></van-field>--%>
                               <van-field label="生产车间" colon="true" v-model="item.fbatchQty" readonly ></van-field>
                               <van-field label="生产线别" colon="true" v-model="item.suppName" readonly ></van-field>
                               <%--<van-field label="检验人" colon="true" v-model="item.fcheckBy" readonly ></van-field>--%>
                               <van-field label="检测结果" colon="true" readonly >
                                  <template #input>
                                      <van-tag round plain v-if="item.fcheckResu === '不合格'" type="danger">不合格</van-tag>
                                      <van-tag round plain v-else-if="item.fcheckResu === '检验中'" type="warning">检验中</van-tag>
                                      <van-tag round plain v-else-if="item.fcheckResu === '未检验'" type="warning">未检验</van-tag>
                                      <van-tag round plain v-else-if="item.fcheckResu === ''" type="warning">未检验</van-tag>
                                      <van-tag round plain v-else-if="item.fcheckResu === '合格'" type="warning">合格</van-tag>
                                      <van-tag round plain v-else type="danger">异常状态</van-tag>
                                  </template>
                               </van-field>
                             </van-cell-group>
                           </div>
                        </van-cell>
                      </van-list>
                  </van-pull-refresh>
<%--              </van-tab>
              <van-tab title="已检验">--%>
                  <%--<van-pull-refresh v-model="refreshing" @refresh="onRefresh">
                    <van-list
                      v-model="loading"
                      :finished="finished"
                      finished-text="没有更多了"
                      @load="onLoad">
                      <van-cell v-for="item in data" :key="item">
                        <div>
                           <van-cell-group>
                             <van-cell :title="item.releaseNo" is-link :url="'Add.aspx?id='+item.guid+'&lotNo='+item.lotNo+'&releaseNo='+item.releaseNo" ></van-cell>
                             <van-field label="到货单号" colon="true" v-model="item.lotNo" readonly ></van-field>
                               <van-field label="标识" colon="true" readonly>
                                  <template #input>
                                    <div class="checkbox-container">
                                      å§”外<van-checkbox v-model="item.ftype" disabled></van-checkbox>
                                      æ€¥æ–™<van-checkbox v-model="item.urgentFlag" disabled></van-checkbox>
                                    </div>
                                  </template>
                                </van-field>--%>
                               <%--<van-checkbox v-model="item.ftype" disabled>委外</van-checkbox>
                               <van-checkbox v-model="item.urgentFlag == 1" disabled>急料标识</van-checkbox>--%>
<%--                             <van-field label="创建时间" colon="true" v-model="item.createDate" readonly ></van-field>
                             <van-field label="创建人" colon="true" v-model="item.createBy" readonly ></van-field>
                             <van-field label="物料编码" colon="true" v-model="item.itemNo" readonly ></van-field>
                             <van-field label="物料名称" colon="true" v-model="item.itemName" readonly ></van-field>
                             <van-field label="规格型号" colon="true" v-model="item.itemModel" readonly ></van-field>
                             <van-field label="数量" colon="true" v-model="item.fcovertQty" readonly ></van-field>
                             <van-field label="供应商" colon="true" v-model="item.suppName" readonly ></van-field>
                             <van-field label="检验人" colon="true" v-model="item.fcheckBy" readonly ></van-field>
                             <van-field label="检测结果" colon="true" v-model="item.fcheckResu" readonly ></van-field>
                           </van-cell-group>
                         </div>
                      </van-cell>
                    </van-list>
                </van-pull-refresh>--%>
<%--              </van-tab>
            </van-tabs>--%>
        </div>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder3" Runat="Server">
    <comloading  v-if="isLoading"></comloading>
  <%--<comback ></comback>--%>
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder4" Runat="Server">
 <script src="../Js/IPQC_SJ/List.js?<%=116 %>"></script>
</asp:Content>
H5/IPQC_SJ/List.aspx.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class H5_Scbl : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }
}
H5/Js/IPQC_SJ/Add.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,519 @@
var vm = new Vue({
    el: '#app',
    data: function () {
        return {
            isLoading: false,
            userInfo: {
                "loginGuid": '',
                "loginAccount": '',
            },
            formData: {
                id: "",
                releaseNo: "",
                createBy: "",
                createDate: "",
                lotNo: "",
                itemNo: "",
                billNo: "",
                fcovertQty: "",
                detailMem: "",
                taskNo: "",
                fcheckResu: "",
                boardModel: "",
                planQty: "",
                mocode: "",
                boardStyle: ""
            },
            isShowTable: false,
            tableData: [],//返回的检验项目
            jymxData: [],//展示的检验项目
            remarks:'',//不合格描述
            okNum:'',//合格数
            ngNum: '',//不合格数
            ttrre: false,
            show: false,//明细面板
            tableMxData: [],
            tabActive: 0,
            inputValue: '',//特征值输入
            resultValue: '',//检验结果录入
            showButton: false,//右上角菜单触发
            okValue: '',//OK-数量
            ngValue: '',//NG-数量
            showDialog: false,//不良表述输入框
            //图片上传框
            fileList: [
                //{
                //    url: 'https://img01.yzcdn.cn/vant/leaf.jpg',
                //    status: 'uploading',
                //    message: '上传中...',
                //},
                //{
                //    url: 'https://img01.yzcdn.cn/vant/tree.jpg',
                //    status: 'failed',
                //    message: '上传失败',
                //},
            ],
        }
    },
    mounted() {
        var that = this;
        this.userInfo = {
            loginGuid: this.GetLoginInfor().loginGuid,
            loginAccount: this.GetLoginInfor().loginAccount,
        };
        this.formData.id = this.Request("id"),
        this.formData.releaseNo = this.Request("releaseNo");
        this.formData.lotNo = this.Request("lotNo");
        this.init();
    },
    methods: {
        // è¾“入过滤
        handleNumberInput1(value) {
            // åŽ»é™¤éžæ•°å­—å¹¶ç¡®ä¿é¦–ä½ä¸ä¸º0(除非是单独的0)
            this.okValue = value.replace(/[^\d]/g, '') // åŽ»é™¤éžæ•°å­—å­—ç¬¦
                .replace(/^0+(?!$)/, ''); // åŽ»é™¤å¼€å¤´çš„0,除非整个字符串是0
        },
        handleNumberInput2(value) {
            // åŽ»é™¤éžæ•°å­—å¹¶ç¡®ä¿é¦–ä½ä¸ä¸º0(除非是单独的0)
            this.ngValue = value.replace(/[^\d]/g, '') // åŽ»é™¤éžæ•°å­—å­—ç¬¦
                .replace(/^0+(?!$)/, ''); // åŽ»é™¤å¼€å¤´çš„0,除非整个字符串是0
        },
        handleNumberInput3(value) {
            this.inputValue = value.replace(/[^\d.]/g, '')  // 1. åŽ»é™¤éžæ•°å­—å’Œå°æ•°ç‚¹
                .replace(/(\..*)\./g, '$1')               // 2. ç¦æ­¢å¤šä¸ªå°æ•°ç‚¹
                .replace(/^\./g, '');
        },
        //针对没有上下限值的数据,只需选择合格或不合格.按钮触发
        handleQualified(isQualified) {
            if (isQualified) {
                console.log('合格操作');
                // æ‰§è¡Œåˆæ ¼ç›¸å…³é€»è¾‘
            } else {
                console.log('不合格操作');
                // æ‰§è¡Œä¸åˆæ ¼ç›¸å…³é€»è¾‘
            }
        },
        togglePopup(index) {
            // åˆ‡æ¢æŒ‡å®šç´¢å¼•çš„ popup çŠ¶æ€
            var that = this;
            this.show = true;
            console.log(index);
            console.log(that.tableData[index].guid);
            var mxguid = that.tableData[index].guid;
            that.jymxData = that.tableData[index];
            that.tabActive = index;
            that.AxiosHttp("post", 'MesQaItemsDetect01Manager/GetModel12', {
                parentGuid : "",
                guid : mxguid ,
            }, true, 1).then(function (res1) {
                if (res1.rtnCode == 1) {
                    that.tableMxData = res1.rtnData;
                    // ç»Ÿè®¡åˆæ ¼æ•°å’Œä¸åˆæ ¼æ•°
                    const list = res1.rtnData?.list || []; // ç¡®ä¿ list æ˜¯æ•°ç»„,避免 undefined é”™è¯¯
                    const okNum = list.filter(item => item.fstand === '√').length;
                    const ngNum = list.length - okNum;
                    // å°†ç»“果保存到指定变量(如 that çš„æˆå‘˜å±žæ€§ï¼‰
                    that.okNum = okNum;
                    that.ngNum = ngNum;
                } else {
                    that.$toast.fail(res1.rtnMsg);
                }
            }).catch(function (error) {
                that.$toast.fail("网络错误,请重试!");
                console.log(error);
            });
        },
        getInputOK() {
            var that = this;
            var jys = that.tableData[that.tabActive].checkQyt;//检验项目的检验数
            if (!that.okValue) {
                this.$toast.fail("OK数不能为空");
                that.isLoading = false;
                return;
            }
            if (jys < that.okValue) {
                that.$toast.fail("录入数量不能大于检验数!");
                that.okValue = null;
                //that.$refs.okValue.focus();
                return;
            }
            // åˆ‡æ¢æŒ‡å®šç´¢å¼•çš„ popup çŠ¶æ€
            var resultValue = "OK-" + this.okValue;
            this.getInput(resultValue);
            that.okValue = null;
        },
        getInputNG() {
            var that = this;
            var jys = that.tableData[that.tabActive].checkQyt;//检验项目的检验数
            if (!that.ngValue) {
                this.$toast.fail("NG数不能为空");
                that.isLoading = false;
                return;
            }
            if (jys < that.ngValue) {
                that.$toast.fail("录入数量不能大于检验数!");
                that.ngValue = null;
                //that.$refs.ngValue.focus();
                return;
            }
            // åˆ‡æ¢æŒ‡å®šç´¢å¼•çš„ popup çŠ¶æ€
            var resultValue = "NG-" + this.ngValue;
            this.getInput(resultValue);
            that.ngValue = null;
        },
        getInput(resultValue) {
            // åˆ‡æ¢æŒ‡å®šç´¢å¼•çš„ popup çŠ¶æ€
            var that = this;
            var guid1 = that.formData.guid;//主表id
            var mxguid = that.tableData[that.tabActive].guid;//检验项目的guid
            that.isLoading = true;
            console.log(that.formData);
            var input = resultValue;//拼接检验值
            that.AxiosHttp("post", 'MesQaItemsDetect01Manager/EdtModel12', {
                inOrderGuid1: guid1,
                inOrderGuid5: mxguid,
                inP1: input,//或者0k-19,或者ng-19
            }, true, 1).then(function (res1) {
                if (res1.rtnCode == 1) {
                    that.$notify({
                        type: 'success', message: res1.rtnMsg
                    });
                    that.refreshJYItem();//刷新检验项目
                    //that.tableData = null;
                    //that.$refs.inputValue.focus();
                } else {
                    that.$toast.fail(res1.rtnMsg);
                }
                that.isLoading = false;
            }).catch(function (error) {
                that.$toast.fail("网络错误,请重试!");
                that.isLoading = false;
            });
        },
        getInputTZZ() {
            // åˆ‡æ¢æŒ‡å®šç´¢å¼•çš„ popup çŠ¶æ€
            var that = this;
            if (!that.inputValue) {
                this.$toast.fail("特征值不能为空");
                that.isLoading = false;
                return;
            }
            var mxguid = that.tableData[that.tabActive].guid;//检验项目的guid
            var input = that.inputValue;
            that.isLoading = true;
            that.AxiosHttp("post", 'MesQaItemsDetect01Manager/EditYangLi', {
                dt05Guid: mxguid,
                fSeq : "pda",
                fVal : input,
            }, true, 1).then(function (res1) {
                if (res1.rtnData.outSum == 1) {
                    that.$notify({
                        type: 'success', message: res1.rtnMsg
                    });
                    that.okValue = null;
                    that.refreshJYItem();//刷新检验项目
                    //that.handleTabClick();//刷新检验明细面板
                    //that.$refs.inputValue.focus();
                    that.inputValue = null;
                } else {
                    that.$toast.fail(res1.rtnMsg);
                    that.inputValue = null;
                }
                that.isLoading = false;
            }).catch(function (error) {
                that.$toast.fail("网络错误,请重试!");
                that.inputValue = null;
                that.isLoading = false;
            });
        },
        handleTabClick() {
            console.log(this.tabActive)
            this.togglePopup(this.tabActive);
        },
        //检验明细刷新
        refreshJYItem() {
            const that = this;
            return that.AxiosHttp("post", 'LLJ/getJYItem', {
                releaseNo: that.formData.releaseNo
            }, false).then(res1 => {
                const tableData = res1.data.tbBillList || [];
                that.tableData = tableData;
                that.handleTabClick();//刷新检验明细面板
            }).catch(error => {
                that.$toast.fail("网络错误,请重试!");
                console.error('Refresh error:', error);
            });
        },
        //主页面加载
        init() {
            //alert(this.Request("id"));
            var that = this;
            that.showButton = false;
            that.AxiosHttp("post", 'LLJ/getPage', {
                id: that.Request("id"),
                pageIndex: 1,
                limit: 1,
            }, false)
                .then(function (res) {
                    let data = res.data.tbBillList[0];
                    if (data) {
                        that.formData = data;
                        that.remarks = that.formData.remarks;
                        that.AxiosHttp("post", 'LLJ/getJYItem', {
                            //id: that.formData.guid,
                            releaseNo: that.formData.releaseNo
                        }, false).then(function (res1) {
                            let tableData = res1.data.tbBillList
                            //当已检验个数都不为空时按照检测结构排序
                            tableData.sort((a, b) => {
                                if (a.result === '未完成' && b.result === '合格') {
                                    return -1;
                                } else if (a.result === '合格' && b.result === '未完成') {
                                    return 1;
                                } else {
                                    return 0;
                                }
                            });
                            that.tableData = tableData;
                            that.GetImageFileByGid();
                            //if (that.tableData.length === 0) {
                            //    that.isShowTable = true;
                            //}
                        }).catch(function (error) {
                            that.$toast.fail("网络错误,请重试!");
                            console.log(error);
                        });
                    }
                })
                .catch(function (error) {
                    that.$toast.fail("网络错误,请重试!");
                    console.log(error);
                });
        },
        submit() {
            var that = this;
            that.ttrre = true;
            that.AxiosHttp("post", 'MesQaItemsDetect01Manager/EditModelSubmit', {
                guid: that.formData.guid
            }, true, 1).then(function (res1) {
                if (res1.rtnData.outSum == 1) {
                    that.$notify({ type: 'success', message: '提交成功' });
                    that.init();
                } else {
                    that.$toast.fail(res1.rtnData.outMsg);
                }
                that.ttrre = false
            }).catch(function (error) {
                that.$toast.fail("网络错误,请重试!");
                that.ttrre = false
                console.log(error);
            });
        },
        removeXJ() {
            const that = this;
            // æ·»åŠ ç¡®è®¤å¼¹çª—
            that.$dialog.confirm({
                message: '确认要重新加载检验项目吗?',
                confirmButtonText: '确认',
                cancelButtonText: '取消'
            }).then(() => {  // ç¡®è®¤å›žè°ƒ
                that.isLoading = true;
                that.AxiosHttp("post", 'MesQaItemsDetect01Manager/ReloadModel5', {
                    guid: that.formData.guid
                }, true, 1).then(res1 => {
                    if (res1.rtnCode == 1) {
                        that.$notify({ type: 'success', message: '重新加载成功' });
                        that.init();
                    } else {
                        that.$toast.fail(res1.rtnMsg);
                    }
                    that.isLoading = false;
                }).catch(error => {
                    that.$toast.fail("网络错误,请重试!");
                    that.isLoading = false;
                });
            }).catch(() => {  // å–消回调
                that.$toast('已取消操作');
            });
        },
        GetBack1() {
            window.history.back();
        },
        onClickRight() {
        },
        updateRemarks(guid) {
            this.showDialog= true
        },
        deleteDetail13(guid13) {
            const that = this;
            // æ·»åŠ ç¡®è®¤å¼¹çª—
            that.$dialog.confirm({
                message: '确认要删除该样本值记录吗?',
                confirmButtonText: '确认',
                cancelButtonText: '取消'
            }).then(() => {  // ç¡®è®¤å›žè°ƒ
                that.isLoading = true;
                that.AxiosHttp("post", 'Llj/deleteDetail13', {
                    id13: guid13
                }, true, 0).then(res1 => {
                    if (res1.status == 0) {
                        that.$notify({ type: 'success', message: '删除成功' });
                        that.refreshJYItem();//刷新检验项目
                    } else {
                        that.$toast.fail(res1.rtnMsg);
                    }
                    that.isLoading = false;
                }).catch(error => {
                    that.$toast.fail("网络错误,请重试!");
                    that.isLoading = false;
                });
            }).catch(() => {  // å–消回调
                that.$toast('已取消操作');
                that.isLoading = false;
            });
        },
        remarksConfirm() {
            const that = this;
            that.isLoading = true;
            var guid = that.formData.guid;
            that.AxiosHttp("post", 'Llj/updateRemarks', {
                gid: guid,
                Remarks: that.remarks
            }, true, 0).then(res1 => {
                if (res1.status == 0) {
                    that.$notify({ type: 'success', message: '输入成功' });
                    that.init();//刷新检验项目
                } else {
                    that.$toast.fail(res1.rtnMsg);
                }
                that.isLoading = false;
            }).catch(error => {
                that.$toast.fail("网络错误,请重试!");
                that.isLoading = false;
            });
        },
        async afterRead(file) {
            try {
                //alert(APIURL_IMAGE);
                // 1. æ˜¾ç¤ºä¸Šä¼ ä¸­çŠ¶æ€
                file.status = 'uploading';
                file.message = '上传中...';
                // 2. åˆ›å»º FormData(关键:字段名必须和后端参数名一致)
                const formData = new FormData();
                // 3. æž„造文件名(根据后端要求用 ~ åˆ†å‰²ï¼‰
                // å‡è®¾éœ€è¦ parentGuid,这里从组件数据获取
                const parentGuid = this.formData.guid; // æ ¹æ®ä½ çš„实际数据源调整
                const customFileName = `${parentGuid}~${file.file.name}`;
                // 4. æ·»åŠ æ–‡ä»¶ï¼ˆç¬¬äºŒä¸ªå‚æ•°å¿…é¡»ä½¿ç”¨ new File åŒ…装)
                formData.append('file', new File([file.file], customFileName, {
                    type: file.file.type
                }));
                // 5. è°ƒç”¨ç»Ÿä¸€å°è£…çš„ Axios æ–¹æ³•
                const res = await this.AxiosHttp(
                    'post',
                    'MesFile/UploadFile', // æ ¹æ®å®žé™…接口路径调整
                    formData,
                    true,     // æ˜¾ç¤ºåŠ è½½çŠ¶æ€
                    1     // è¶…æ—¶æ—¶é—´
                );
                // 6. å¤„理响应
                if (res.rtnCode === 1) {
                    file.status = 'done';
                    file.message = '上传成功';
                    file.urlPath = res.rtnData.urlPath; // ä¿å­˜è¿”回的文件路径
                    file.id = res.rtnData.id; // ä¿å­˜è¿”回的文件id
                    // å¯é€‰ï¼šä¸Šä¼ æˆåŠŸåŽåˆ·æ–°æ–‡ä»¶åˆ—è¡¨
                    // await this.loadFileList();
                } else {
                    file.status = 'failed';
                    file.message = res.rtnMsg || '上传失败';
                    this.$toast.fail(res.rtnMsg);
                }
            } catch (error) {
                // 7. å¼‚常处理
                file.status = 'failed';
                file.message = '上传异常';
                this.$toast.fail('网络错误,请重试');
                console.error('上传错误:', error);
            } finally {
                // 8. å¼ºåˆ¶æ›´æ–°è§†å›¾ï¼ˆVant 3+ å¯èƒ½éœ€è¦ï¼‰
                this.$nextTick();
            }
        },
        //获取图片信息
        GetImageFileByGid() {
            const that = this;
            that.AxiosHttp("post", 'MesImage/getImage', {
                parentId: that.formData.guid,
            }, true, 0).then(res1 => {
                if (res1.status === 0) {
                    // å…³é”®è½¬æ¢ï¼šå°†åŽç«¯æ•°æ®è½¬æ¢ä¸º van-uploader éœ€è¦çš„æ ¼å¼
                    that.fileList = res1.data.tbBillList.map(item => ({
                        url: `${APIURL_IMAGE}/${item.urlPath}`,  // æ‹¼æŽ¥å®Œæ•´è®¿é—®è·¯å¾„
                        status: 'done',          // æ ‡è®°ä¸ºå·²ä¸Šä¼ æˆåŠŸ
                        name: item.fileTitle,    // å¯é€‰æ˜¾ç¤ºæ–‡ä»¶å
                        message: '已上传',        // å¯é€‰çŠ¶æ€æ–‡å­—
                        // ä¿ç•™åŽŸå§‹æ•°æ®ï¼ˆæŒ‰éœ€ï¼‰
                        id: item.guid
                    }));
                } else {
                    that.$toast.fail(res1.rtnMsg);
                }
            }).catch(error => {
                that.$toast.fail("网络错误,请重试!");
            });
        },
        handleDelete(file, { index }) {
            var that = this;
            that.$dialog.confirm({
                title: '确认删除',
                message: '确定要删除这张图片吗?'
            }).then(() => {
                // ç¡®è®¤åˆ é™¤é€»è¾‘
                console.log(file);
                that.AxiosHttp("post", 'MesImage/deleteImage', {
                    id: file.id,
                }, true, 0).then(res1 => {
                    if (res1.status === 0) {
                        that.$notify({ type: 'success', message: '删除成功' });
                        that.init();//刷新检验项目
                    } else {
                        that.$toast.fail(res1.rtnMsg);
                    }
                }).catch(error => {
                    that.$toast.fail("网络错误,请重试!");
                });
            }).catch(() => {
                // å–消操作
            })
        },
    }
})
H5/Js/IPQC_SJ/List.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,120 @@
var vm = new Vue({
    el: '#app',
    data: function () {
        return {
            isLoading: false,
            userInfo: {
                "loginGuid": '',
                "loginAccount": '',
            },
            data: [],
            loading: false,
            finished: false,
            refreshing: false,
            current: 0,
            pageIndex: 0,
            limit: 20,
            totalPage: 0,
            totalCount: 0,
            checked: true,
            id: '',
            searchKeyword: '',      // æœç´¢å…³é”®è¯
            originalData: [],       // ä¿å­˜åŽŸå§‹æ•°æ®
        }
    },
    mounted() {
        var that = this;
        this.userInfo = {
            loginGuid: this.GetLoginInfor().loginGuid,
            loginAccount: this.GetLoginInfor().loginAccount,
        };
        this.onLoad();
    },
    methods: {
        // æ–°å¢žæœç´¢å¤„理方法
        handleSearch() {
            this.pageIndex = 0;
            this.data = [];
            this.finished = false;
            this.isSearching = true;
            this.onLoad();
        },
        onLoad() {
            if (this.refreshing) {
                this.data = [];
                this.refreshing = false;
            }
            let result = "未完成";
            if (this.current === 1) {
                result = "已完成";
            }
            this.pageIndex++;
            var that = this;
            that.AxiosHttp("post", 'LLJ/getPage', {
                pageIndex: that.pageIndex,
                limit: that.limit,
                createUser: that.userInfo.loginAccount,
                result: result,
                keyword: that.searchKeyword.trim(), // æ–°å¢žæœç´¢å‚æ•°
            }, false)
                .then(function (res) {
                    var json = res;
                    if (json.status == 0) {
                        //this.$notify({ type: 'success', message: json.data.tbBillList });
                        if (that.pageIndex === 1) {
                            // å¦‚果是第一页,直接覆盖原数据
                            that.data = json.data.tbBillList;
                        } else {
                            if (json.data.tbBillList.length > 0) {
                                // å¦‚果是下一页,追加新数据
                                let thisData = that.data;
                                that.data = [...thisData, ...json.data.tbBillList];
                            }
                        }
                        that.totalCount = json.totalCount;
                        that.totalPage = Math.ceil(that.totalCount / that.limit);
                        that.loading = false;
                        if (that.pageIndex >= that.totalPage) {
                            that.finished = true;
                        }
                    }
                    else {
                        that.$toast.fail(json.message);
                    }
                })
                .catch(function (error) {
                    that.$toast.fail("网络错误,请重试!");
                    console.log(error);
                });
        },
        onRefresh() {
            // æ¸…空列表数据
            this.finished = false;
            // é‡æ–°åŠ è½½æ•°æ®
            // å°† loading è®¾ç½®ä¸º true,表示处于加载状态
            this.loading = true;
            this.pageIndex = 0;
            this.onLoad();
        },
        onClickTab(name, title) {
            this.current = name;
            this.pageIndex = 0;
            this.onLoad();
        }
    }
})
H5/Js/IPQC_SJ/detail.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,242 @@
var vm = new Vue({
    el: '#app',
    data: function () {
        return {
            isLoading: false,
            userInfo: {
                "loginGuid": '',
                "loginAccount": '',
            },
            formData: {},
            isNumber: false,
            checkItem: "",
            id: 0,
            gid: 0,
            itemInId: 0,
            billNo: "",
            showPopup: false,
            editData: {},
            tableData: [],
            isShowImg: false,
            base64Image: "",
            remarks: "",
            remarksPopup: false,
            fcheckResu: null,
            fsubmit:1
        }
    },
    mounted() {
        var that = this;
        this.userInfo = {
            loginGuid: this.GetLoginInfor().loginGuid,
            loginAccount: this.GetLoginInfor().loginAccount,
        };
        this.id = this.Request("id");
        this.gid = this.Request("gid");
        this.fsubmit = this.Request("fsubmit");
        this.refreshResult();
    },
    methods: {
        refreshResult() {
            var that = this;
            that.AxiosHttp("post", 'LLJ/getXjDetail02ById', {
                id: this.id
            }, false)
                .then(function (res) {
                    that.formData = res.data.tbBillList.itemXj01;
                    that.tableData = res.data.tbBillList.itemXj02s;
                    //if (this.formData.imageData) {
                    //    this.isShowImg = true;
                    //    this.base64Image = 'data:image/jpeg;base64,' + this.formData.imageData;
                    //}
                    //fupAllow  fdownAllow  standardValue
                    if (that.formData.fupAllow && that.formData.fdownAllow && that.formData.fstand) {
                        that.isNumber = true;
                    }
                })
                .catch(function (error) {
                    that.$toast.fail("网络错误,请重试!");
                    console.log(error);
                });
        },
        submit() {
            let count = this.formData.checkQyt;
            let fstand = "√";
            //有最大值和最小值就根据是否符合标准值更新判定结果,没有最大值和最小值就根据是否通过检验判定结果
            if (this.formData.fupAllow && this.formData.fdownAllow) {
                if (!this.formData.fcheckResu) {
                    this.$toast.fail("请输入检验值");
                    return;
                }
                let max = Number(this.formData.fupAllow);
                let min = Number(this.formData.fdownAllow);
                if (this.formData.fcheckResu >= min && this.formData.fcheckResu <= max) {
                    fstand = "√"
                } else {
                    fstand = "×";
                }
                count = 1;
            } else {
                if (!this.formData.fcheckResu) {
                    this.formData.fcheckResu = 1
                }
                if (this.formData.fcheckResu == 0 || this.formData.fcheckResu == 1) {
                    this.formData.isPass = this.formData.fcheckResu
                } else {
                    this.$toast.fail("无标准值时,检验结果只能为0或1!");
                    return;
                }
                count = count - this.tableData.length;
            }
            this.formData.updater = this.userInfo.loginAccount;
            var that = this;
            that.AxiosHttp("post", 'LLJ/SetQSItemDetail', {
                parentGuid: that.id,
                grandpaGuid: that.gid,
                fstand: fstand,
                fcheckItem: that.formData.fcheckItem,
                fcheckResu: that.formData.fcheckResu,
                lastupdateBy: that.formData.updater,
                count: count
            }, false)
                .then(function (res) {
                    that.formData.fcheckResu = null;
                    that.$notify({ type: 'success', message: '保存成功' });
                    that.refreshResult();
                })
                .catch(function (error) {
                    that.$toast.fail("网络错误,请重试!");
                    console.log(error);
                });
        },
        toDetail(item) {
            this.showPopup = !this.showPopup;
            this.editData = item;
        },
        editResult(fcheckResu) {
            if (fcheckResu == 'OK') {
                return "改为不合格";
            } else {
                return "改为合格";
            }
        },
        numberEdit(item) {
            let fstand = "√";
            let fcheckResu = "OK";
            if (item.fcheckResu == 'OK') {
                fstand = "×";
                fcheckResu = "NG";
            }
            var that = this;
            that.AxiosHttp("post", 'LLJ/UpdateQSItemDetail', {
                guid: item.guid,
                parentGuid: item.parentGuid,
                grandpaGuid: item.grandpaGuid,
                fstand: fstand,
                fcheckResu: fcheckResu,
                lastupdateBy: that.userInfo.loginAccount,
            }, false)
                .then(function (res) {
                    that.$notify({ type: 'success', message: '修改成功' });
                    that.refreshResult();
                })
                .catch(function (error) {
                    that.$toast.fail("网络错误,请重试!");
                    console.log(error);
                });
        },
        eidt() {
            if (!this.editData.fcheckResu) {
                this.$toast.fail("请输入检验结果");
            }
            if (this.formData.fcheckResu == this.editData.fcheckResu) {
                this.$notify({ type: 'success', message: '修改成功' });
                return;
            }
            let fstand = "√";
            if (this.formData.fupAllow && this.formData.fdownAllow) {
                if (!this.editData.fcheckResu) {
                    this.$toast.fail("请输入检验值");
                    return;
                }
                let max = Number(this.formData.fupAllow);
                let min = Number(this.formData.fdownAllow);
                if (this.editData.fcheckResu >= min && this.editData.fcheckResu <= max) {
                    this.editData.isPass = 1
                } else {
                    this.editData.isPass = 0
                    fstand = "×";
                }
            } else {
                if (!this.editData.fcheckResu) {
                    this.editData.fcheckResu = 1
                }
                if (this.editData.fcheckResu == 0 || this.editData.fcheckResu == 1) {
                    if (this.editData.fcheckResu == 0) {
                        fstand = "×";
                    }
                } else {
                    this.$toast.fail("无标准值时,检验结果只能为0或1!");
                    return;
                }
            }
            this.editData.updater = this.userInfo.loginAccount;
            var that = this;
            that.AxiosHttp("post", 'LLJ/UpdateQSItemDetail', {
                guid: that.editData.guid,
                parentGuid: that.editData.parentGuid,
                grandpaGuid: that.editData.grandpaGuid,
                fstand: fstand,
                fcheckResu: that.editData.fcheckResu,
                lastupdateBy: that.userInfo.loginAccount,
            }, false)
                .then(function (res) {
                    if (res.status == 0) {
                        that.$notify({ type: 'success', message: '修改成功' });
                        that.showPopup = false;
                        that.refreshResult();
                    } else {
                        that.$toast.fail(res.message);
                        that.editData.fcheckResu = that.fcheckResu;
                    }
                })
                .catch(function (error) {
                    that.$toast.fail("网络错误,请重试!");
                    console.log(error);
                });
        },
        GoBack1() {
            window.history.back();
        }
    }
})
H5/LLJ/Add.aspx
@@ -134,10 +134,6 @@
    </div>
  </div>
</div>  
<%--            <van-button :loading="ttrre" type="info" loading-text="加载中..." v-if="!isShowTable && formData.fsubmit == 0" @click="submit">检验提交</van-button>
            <van-button type="danger" v-if="!isShowTable && formData.fsubmit == 0" @click="removeXJ">重新加载项目</van-button>--%>
<%--            <van-button :loading="ttrre"  type="info" loading-text="加载中..."  @click="submit">检验提交</van-button>
            <van-button type="danger"  @click="removeXJ">刷新重做</van-button>--%>
          <van-tabs color="#000"  title-active-color="#0283EF" style="padding-bottom: 120px;">
              <van-tab title="检验项目" class="mySolid font">
                  <van-row type="flex" justify="center">