From 2599fae1a6e1f9cab1d0cdd92372d2b368038f88 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 31 七月 2024 18:43:03 +0800
Subject: [PATCH] 测试完成

---
 src/views/shortmessage/healthinformation/index.vue | 1170 ++++++++++++++++++++++++++++------------------------------
 1 files changed, 562 insertions(+), 608 deletions(-)

diff --git a/src/views/shortmessage/healthinformation/index.vue b/src/views/shortmessage/healthinformation/index.vue
index 586e8b2..931fe39 100644
--- a/src/views/shortmessage/healthinformation/index.vue
+++ b/src/views/shortmessage/healthinformation/index.vue
@@ -1,54 +1,57 @@
 <template>
-  <div class="Questionnairemanagement">
+  <div class="educationmanagement">
     <!-- 宸︿晶鏍� -->
     <div class="sidecolumn">
       <div class="sidecolumn-top">
         <div class="top-wj">閫氱煡绫诲瀷</div>
-        <div class="top-tj" @click="dialogFormVisible = true">+娣诲姞</div>
+        <div class="top-tj" @click="dialogFormVisible = true">+娣诲姞绫诲埆</div>
       </div>
       <div class="center-ss">
         <el-input
           placeholder="璇疯緭鍏ュ唴瀹�"
           v-model="sidecolumnval"
           class="input-with-select"
-          size="medium "
+          size="medium"
         >
-          <el-button
-            @click="sidecolumnss"
-            slot="append"
-            icon="el-icon-search"
-          ></el-button>
         </el-input>
       </div>
-      <div class="bottom-fl">
-        <el-tabs tab-position="right">
-          <el-tab-pane :label="`鍏ㄩ儴 (${numberlb})`"></el-tab-pane>
-          <el-tab-pane
-            class="tab-paness"
-            :key="item.title"
-            v-for="(item, index) in editableTabs"
-          >
-            <span slot="label">
-              {{
-                item.title + " (" + item.number + ")"
-              }}&nbsp&nbsp&nbsp<el-popover
-                placement="top-start"
-                width="100"
-                trigger="hover"
+      <div class="head-container" style="margin-top: 20px">
+        <el-tree
+          :data="deptOptions"
+          :props="defaultProps"
+          :expand-on-click-node="false"
+          :filter-node-method="filterNode"
+          ref="tree"
+          node-key="id"
+          default-expand-all
+          highlight-current
+          @node-click="handleNodeClick"
+        >
+          <span class="custom-tree-node" slot-scope="{ node, data }">
+            <span>{{ node.label }}</span>
+            <span v-if="data.id > 0">
+              <el-button
+                type="text"
+                icon="el-icon-delete"
+                circle
+                size="mini"
+                @click="() => remove(node, data)"
               >
-                <div style="text-align: center">
-                  <el-button type="text" @click="popoveramend(item)"
-                    >淇敼</el-button
-                  ><el-button type="text" @click="deletefenlei(item)"
-                    ><span style="color: rgb(173, 55, 55)"
-                      >鍒犻櫎</span
-                    ></el-button
-                  >
-                </div>
-                <i slot="reference" class="el-icon-share"></i> </el-popover
-            ></span>
-          </el-tab-pane>
-        </el-tabs>
+              </el-button>
+            </span>
+            <span v-if="data.id > 0">
+              <el-button
+                type="text"
+                circle
+                size="mini"
+                @click="() => altertag(node, data)"
+                ><span class="button-textxg"
+                  ><i class="el-icon-edit-outline"></i
+                ></span>
+              </el-button>
+            </span>
+          </span>
+        </el-tree>
       </div>
     </div>
     <!-- 鍙充晶鏁版嵁 -->
@@ -65,6 +68,15 @@
               v-show="showSearch"
               label-width="98px"
             >
+              <el-form-item label="閫氱煡鏍囬" prop="userName">
+                <el-input
+                  v-model="queryParams.userName"
+                  placeholder="璇疯緭鍏�"
+                  clearable
+                  style="width: 200px"
+                  @keyup.enter.native="handleQuery"
+                />
+              </el-form-item>
               <el-form-item label="閫傜敤绉戝" prop="region">
                 <el-cascader
                   v-model="queryParams.administrative"
@@ -81,61 +93,47 @@
                   </template>
                 </el-cascader>
               </el-form-item>
-              <el-form-item label="閫氱煡鏍囬" prop="userName">
+              <el-form-item label="閫氱煡鍐呭" prop="userName">
                 <el-input
-                  v-model="queryParams.title"
-                  placeholder="璇疯緭鍏ュ唴瀹�"
-                ></el-input>
+                  v-model="queryParams.userNamevalue"
+                  placeholder="璇疯緭鍏�"
+                  clearable
+                  style="width: 200px"
+                  @keyup.enter.native="handleQuery"
+                />
               </el-form-item>
-              <el-form-item label="鍐呭褰㈠紡" prop="userName">
-                <el-select v-model="queryParams.shape" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in options"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
+              <el-form-item label="閫傜敤鏂瑰紡" prop="shape">
+                <el-cascader
+                  v-model="queryParams.shapevalue"
+                  :options="optionss"
+                  :props="propss"
+                  clearable
+                ></el-cascader>
               </el-form-item>
-              <el-form-item label="閫傜敤鏂瑰紡" prop="status">
-                <el-select v-model="queryParams.way" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in optionsfs"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item label="鍙敤鐘舵��" prop="status">
-                <el-select v-model="queryParams.usable" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in optionss"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item label="閫氱煡鍐呭" prop="status">
+              <el-form-item label="鍐呭褰㈠紡" prop="classify">
                 <el-select
-                  v-model="optionvalue"
-                  multiple
-                  filterable
-                  remote
-                  reserve-keyword
-                  placeholder="璇疯緭鍏ュ唴瀹瑰叧閿瘝"
-                  :remote-method="remoteMethod"
-                  :loading="loadingvalue"
+                  v-model="queryParams.classifyvalue"
+                  placeholder="璇烽�夋嫨"
                 >
                   <el-option
-                    v-for="item in optionsvalue"
-                    :key="item.value"
+                    v-for="(item, index) in editabshape"
+                    :key="item.label"
                     :label="item.label"
                     :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item label="鍙敤鐘舵��" prop="classify">
+                <el-select
+                  v-model="queryParams.classifyvalue"
+                  placeholder="璇烽�夋嫨"
+                >
+                  <el-option
+                    v-for="item in usable"
+                    :key="item.value"
+                    :label="item.value"
+                    :value="item.label"
                   >
                   </el-option>
                 </el-select>
@@ -190,7 +188,7 @@
             <el-table
               v-loading="loading"
               :data="userList"
-              border="true"
+              border
               @selection-change="handleSelectionChange"
             >
               <el-table-column type="selection" width="50" align="center" />
@@ -198,30 +196,29 @@
                 label="搴忓彿"
                 fixed
                 align="center"
-                key="userId"
-                prop="userId"
+                key="id"
+                prop="id"
               />
               <el-table-column
-                label="閫氱煡鏍囬"
+                label="鏍囬"
                 fixed
                 align="center"
-                key="userName"
-                prop="userName"
-                :show-overflow-tooltip="true"
-              />
-              <el-table-column
-                label="閫氱煡鍐呭"
-                align="center"
-                width="150"
-                key="informvalue"
-                prop="informvalue"
+                key="preachname"
+                prop="preachname"
                 :show-overflow-tooltip="true"
               />
               <el-table-column
                 label="鐗堟湰"
                 align="center"
-                key="nickName"
-                prop="nickName"
+                key="version"
+                prop="version"
+                :show-overflow-tooltip="true"
+              />
+              <el-table-column
+                label="涓昏鍐呭"
+                align="center"
+                key="preachcontent"
+                prop="preachcontent"
                 :show-overflow-tooltip="true"
               />
 
@@ -231,41 +228,89 @@
                 key="aphonenumber"
                 prop="aphonenumber"
                 width="120"
-              /><el-table-column
-                label="閫傜敤绉戝"
+              >
+                <template slot-scope="scope">
+                  <el-button
+                    size="medium"
+                    type="text"
+                    @click="illnessUpdate(scope.row)"
+                    v-hasPermi="['system:user:edit']"
+                    ><span class="button-textxg"
+                      ><i class="el-icon-date"></i>璇︽儏</span
+                    ></el-button
+                  >
+                </template>
+              </el-table-column>
+
+              <el-table-column
+                label="鏍囩"
                 align="center"
-                key="bphonenumber"
-                prop="bphonenumber"
+                key="labelInfo"
+                prop="labelInfo"
+                width="160"
+                :show-overflow-tooltip="true"
+              >
+                <template slot-scope="scope">
+                  <div v-if="scope.row.labelInfo">
+                    <span v-for="item in scope.row.labelInfo.split(',')"
+                      >{{ item }}銆�
+                    </span>
+                  </div>
+                  <div v-else>
+                    <span>鏃�</span>
+                  </div>
+                </template>
+              </el-table-column>
+              <el-table-column
+                label="閫傜敤鏂瑰紡"
+                align="center"
+                key="suitway"
+                prop="suitway"
                 width="120"
-              />
+              >
+                <template slot-scope="scope">
+                  <div v-if="scope.row.suitway">
+                    <span v-for="item in scope.row.suitway.split(',')"
+                      >{{ item }}銆�
+                    </span>
+                  </div>
+                  <div v-else>
+                    <span>鏃�</span>
+                  </div>
+                </template>
+              </el-table-column>
               <el-table-column
                 label="鍐呭褰㈠紡"
                 align="center"
-                key="shape"
-                prop="shape"
+                key="preachform"
+                prop="preachform"
                 width="120"
-              />
-              <el-table-column
-                label="鍙戦�佹柟寮�"
-                align="center"
-                key="bphonenumber"
-                prop="bphonenumber"
-                width="120"
-              />
-              <el-table-column
-                label="鍙敤鐘舵��"
-                align="center"
-                key="usable"
-                prop="usable"
-                width="120"
-              />
+              >
+                <template slot-scope="scope">
+                  <dict-tag
+                    :options="editabshape"
+                    :value="scope.row.preachform"
+                  />
+                </template>
+              </el-table-column>
               <el-table-column
                 label="鏈�杩戜慨鏀�"
                 align="center"
-                key="cphonenumber"
-                prop="cphonenumber"
+                key="updateTime"
+                prop="updateTime"
                 width="120"
               />
+              <el-table-column
+                label="鏄惁鍙敤"
+                align="center"
+                key="isavailable"
+                prop="isavailable"
+                width="120"
+              >
+                <template slot-scope="scope">
+                  <dict-tag :options="usable" :value="scope.row.isavailable" />
+                </template>
+              </el-table-column>
 
               <el-table-column
                 label="鎿嶄綔"
@@ -278,7 +323,17 @@
                   <el-button
                     size="medium"
                     type="text"
-                    @click="ViewQuestionnaire(scope.row)"
+                    @click="goQRCode(scope.row)"
+                    v-hasPermi="['system:user:edit']"
+                  >
+                    <span class="button-text"
+                      ><i class="el-icon-edit"></i>浜岀淮鐮�</span
+                    ></el-button
+                  >
+                  <el-button
+                    size="medium"
+                    type="text"
+                    @click="Vieweducation(scope.row)"
                     v-hasPermi="['system:user:edit']"
                     ><span class="button-textck"
                       ><i class="el-icon-edit"></i>鏌ョ湅</span
@@ -317,193 +372,92 @@
         </el-row>
       </div>
     </div>
-    <!-- 娣诲姞鎴栦慨鏀归�氱煡閰嶇疆瀵硅瘽妗� -->
-    <el-dialog
-      :title="title"
-      :visible.sync="indexopen"
-      width="900px"
-      append-to-body
-    >
-      <el-form ref="form" :model="indexform" :rules="rules" label-width="100px">
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="閫氱煡鏍囬" prop="deptId">
-              <el-input
-                v-model="indexform.name"
-                placeholder="璇疯緭鍏�"
-                maxlength="40"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item label="鐗堟湰鍙�" prop="deptId">
-              <el-input
-                v-model="indexform.versions"
-                placeholder="璇疯緭鍏�"
-                maxlength="40"
-              />
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="璇█" prop="deptId">
-              <el-select v-model="indexform.language" placeholder="璇烽�夋嫨璇█">
-                <el-option
-                  v-for="index in languagelist"
-                  :key="index.value"
-                  :label="index.label"
-                  :value="index.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="鏄惁鍙敤" prop="deptId">
-              <el-select v-model="indexform.useofstateky" placeholder="璇烽�夋嫨">
-                <el-option
-                  v-for="index in optionss"
-                  :key="index.value"
-                  :label="index.label"
-                  :value="index.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="24">
-            <el-form-item label="閫氱煡鍐呭" prop="nickName">
-              <el-input
-                type="textarea"
-                v-model="indexform.nickName"
-                placeholder="璇疯緭鍏ラ�氱煡鍐呭"
-                maxlength="80"
-              />
-            </el-form-item> </el-col
-        ></el-row>
-        <el-form-item label="閫氱煡鍙橀噺" prop="name">
-          <el-row v-for="item in variablelist">
-            <el-col :span="4">
-              <el-input v-model="item.variable"></el-input>
-            </el-col>
-            <el-col :span="8" :offset="1">
-              <el-input v-model="item.value"></el-input>
-            </el-col>
-            <el-col :span="4" :offset="1">
-              <el-button
-                type="success"
-                icon="el-icon-plus"
-                circle
-                @click="addvariable(item)"
-              ></el-button>
-              <el-button
-                type="danger"
-                icon="el-icon-delete"
-                circle
-                @click="delvariable(item)"
-              ></el-button>
-            </el-col>
-          </el-row>
+    <!-- 娣诲姞绫诲埆寮规 -->
+    <el-dialog title="鏂板绫诲埆" width="30%" :visible.sync="dialogFormVisible">
+      <div style="text-align: center; margin-bottom: 20px">
+        <el-radio-group v-model="radio">
+          <el-radio-button label="涓诲垎绫�"></el-radio-button>
+          <el-radio-button label="瀛愬垎绫�"></el-radio-button>
+        </el-radio-group>
+      </div>
+      <el-divider></el-divider>
+      <el-form :model="classifyform">
+        <el-form-item label="璇烽�夋嫨闂澶х被" v-if="radio == '瀛愬垎绫�'">
+          <el-select v-model="classifyform.pid" placeholder="璇烽�夋嫨">
+            <el-option
+              v-for="item in deptOptions"
+              :key="item.id"
+              :label="item.assortname"
+              :value="item.id"
+            >
+            </el-option>
+          </el-select>
         </el-form-item>
-
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="閫傜敤鐤剧梾" prop="userName">
-              <el-select
-                v-model="indexform.useofstate"
-                multiple
-                placeholder="璇烽�夋嫨(澶氶��)"
-              >
-                <el-option
-                  v-for="index in optionks"
-                  :key="index.value"
-                  :label="index.label"
-                  :value="index.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="閫傜敤绉戝" prop="region">
-              <el-cascader
-                v-model="indexform.administrative"
-                :options="deptList"
-                :props="props"
-                :show-all-levels="false"
-                clearable
-              >
-                <template slot-scope="{ node, data }">
-                  <span>{{ data.deptName }}</span>
-                  <span v-if="!node.isLeaf">
-                    ({{ data.children.length }})
-                  </span>
-                </template>
-              </el-cascader>
-            </el-form-item>
-          </el-col>
-        </el-row>
-
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="閫傜敤鏂瑰紡" prop="email">
-              <el-select
-                v-model="indexform.useofstatefs"
-                multiple
-                placeholder="璇烽�夋嫨(澶氶��)"
-              >
-                <el-option
-                  v-for="index in optionsfs"
-                  :key="index.value"
-                  :label="index.label"
-                  :value="index.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="鍐呭褰㈠紡" prop="email">
-              <el-select
-                v-model="indexform.useofstatexs"
-                multiple
-                placeholder="璇烽�夋嫨(澶氶��)"
-              >
-                <el-option
-                  v-for="index in options"
-                  :key="index.value"
-                  :label="index.label"
-                  :value="index.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
-        </el-row>
+        <el-form-item label="璇疯緭鍏ョ被鍒悕绉�">
+          <el-input
+            v-model="classifyform.assortname"
+            autocomplete="off"
+          ></el-input>
+        </el-form-item>
       </el-form>
-
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
-        <el-button @click="cancel">鍙� 娑�</el-button>
+        <el-button @click="getDeptTree()">鍙� 娑�</el-button>
+        <el-button type="primary" @click="submitsidecolumn">纭� 瀹�</el-button>
       </div>
     </el-dialog>
-    <!-- 鍒犻櫎绫诲埆纭妗� -->
-    <el-dialog title="璀﹀憡" :visible.sync="deleteVisible" width="40%">
-      <div style="font-size: 20px; color: rgb(247, 76, 76)">
-        鏄惁纭鍒犻櫎鍒嗙被锛歔<span>{{ deletefenl }}</span
-        >]?
-      </div>
-      <div style="font-size: 20px">
-        姝ゆ搷浣滀細灏嗚绫诲埆涓嬫墍鏈夋ā鍧楄浆绉昏嚦[鏈垎绫籡锛屾槸鍚︾户缁垹闄ゆ鍒嗙被锛�
+    <!-- 鐤剧梾寮规 -->
+    <el-dialog title="鎸囨爣鐤剧梾" :visible.sync="illnessVisible" width="50%">
+      <div>
+        <div class="xinz-infs">
+          <el-tag
+            :key="item.icd10name"
+            type="warning"
+            v-for="item in illnesslist"
+            closable
+            :disable-transitions="false"
+            @close="handleCloseillness(item)"
+          >
+            {{ item.icd10name }}
+          </el-tag>
+          <el-select
+            v-model="inputValue"
+            v-if="inputVisible"
+            @change="illnessConfirm"
+            :remote-method="remoteMethod"
+            filterable
+            remote
+            allow-create
+            default-first-option
+            placeholder="璇烽�夋嫨/鏌ヨ"
+            :loading="loading"
+          >
+            <el-option
+              v-for="item in optionsillness"
+              :key="item.icdid"
+              :label="item.icdname"
+              :value="item.icdid"
+            >
+            </el-option>
+          </el-select>
+          <el-button
+            v-else
+            class="button-new-tag"
+            size="small"
+            @click="showInput"
+            >+ 鏂板鐤剧梾</el-button
+          >
+        </div>
       </div>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="deleteVisible = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="deletefenlei">纭� 瀹�</el-button>
+        <el-button @click="illnessVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="confirmillness">纭� 瀹�</el-button>
       </span>
     </el-dialog>
     <!-- 浜岀淮鐮佸睍绀哄脊妗� -->
     <el-dialog width="30%" :visible.sync="goQRCodeVisible">
       <div class="qrcode-dialo">
         <div class="qrcode-text">
-          {{ namequestionnaire }}<span>{{ haoquestionnaire }}</span>
+          {{ nameeducation }}<span>{{ haoeducation }}</span>
         </div>
         <div class="qrcode-img"></div>
       </div>
@@ -513,18 +467,27 @@
 
 <script>
 import {
-  listUser,
-  getUser,
-  delUser,
-  addUser,
-  updateUser,
-} from "@/api/system/user";
+  getheLibraryAssort,
+  delheLibraryAssort,
+  addheLibraryAssort,
+  editheLibraryAssort,
+  addtargetillness,
+  getlibrarylist,
+  dellibraryinfo,
+  compilelibrary,
+  getlibraryinfo,
+  getillnesslist,
+  illnesslistget,
+  getillness,
+} from "@/api/AiCentre/index";
 import { listDept } from "@/api/system/dept";
 import { getToken } from "@/utils/auth";
+import store from "@/store";
+
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 export default {
-  name: "questionnaire",
+  name: "education",
   dicts: ["sys_normal_disable", "sys_user_sex"],
   components: { Treeselect },
   data() {
@@ -542,30 +505,30 @@
       showSearch: true,
       // 鎬绘潯鏁�
       total: 0,
-      indexopen: false, //寮规灞曠ず鍚�
-      // 娣诲姞銆佷慨鏀瑰弬鏁�
-      indexform: {},
-      namequestionnaire: "",
-      haoquestionnaire: "",
-      variablelist: [
-        {
-          variable: "paitent",
-          value: "琛ㄧず鎮h�呯殑鏍囪瘑",
-        },
-      ],
+      nameeducation: "",
+      haoeducation: "",
+      indexid: null,
+      inputValue: "",
+      radio: "涓诲垎绫�",
+      inputVisible: false,
+      illnessVisible: false, //鎸囨爣鐤剧梾寮规
+      deptOptions: [],
+      optionsillness: [],
+      illnesslistapi: [],
+      illnesslist: [],
+      defaultProps: {
+        children: "heLibraryAssortList",
+        label: "assortname",
+      },
       // 鐢ㄦ埛琛ㄦ牸鏁版嵁
       userList: [
         {
           userid: 1,
           userName: "涓夊彿閫氱煡",
-          informvalue: "杩欎釜閫氱煡寰堥噸瑕佸晩寰堥噸瑕�",
           nickName: "1.2.4",
           aphonenumber: "鍏宠妭鐐庣棁",
-          bphonenumber: "楠ㄧ",
-          shape: "鏂囧瓧銆佸浘鐗�",
-          transmitmode: "閽夐拤銆佸井淇�",
-          cphonenumber: "2022-12-12 ",
-          usable: "鍙敤",
+          bphonenumber: "寰堟",
+          cphonenumber: "2022-12-12",
         },
       ],
       // 寮瑰嚭灞傛爣棰�
@@ -594,266 +557,53 @@
       classifyform: {
         categoryname: "",
       }, //绫诲埆琛ㄥ崟
-      optionss: [
-        {
-          value: 1,
-          label: "鍙敤",
-        },
-        {
-          value: 2,
-          label: "绂佺敤",
-        },
-      ],
-      optionsfs: [
-        {
-          value: 1,
-          label: "鐭俊",
-        },
-        {
-          value: 2,
-          label: "寰俊/閽夐拤",
-        },
-      ],
-      optionks: [
-        {
-          value: 1,
-          label: "蹇冨唴绉�",
-        },
-        {
-          value: 2,
-          label: "鑳稿绉�",
-        },
-      ],
-      options: [
-        {
-          value: 1,
-          label: "鏂囧瓧",
-        },
-        {
-          value: 2,
-          label: "璇煶",
-        },
-      ],
-      optionsvalue: [],
-      optionvalue: [],
-      valuelist: [],
-      loadingvalue: false,
-      states: [
-        "Alabama",
-        "Alaska",
-        "Arizona",
-        "Arkansas",
-        "California",
-        "Colorado",
-        "Connecticut",
-        "Delaware",
-        "Florida",
-        "Georgia",
-        "Hawaii",
-        "Idaho",
-        "Illinois",
-        "Indiana",
-        "Iowa",
-        "Kansas",
-        "Kentucky",
-        "Louisiana",
-        "Maine",
-        "Maryland",
-      ],
+      optionss: [],
+      mode: [],
+      languagelist: [],
+      editabshape: [],
+      usable: [],
+      precedencetype: [],
+      xjxsoptions: [],
+      deptList: [],
+      props: { multiple: true, value: "deptId", label: "deptName" },
+
       //绫诲埆鍒楄〃
-      editableTabs: [
-        {
-          title: "閫氱煡鍒嗙被涓�",
-          number: "1",
-        },
-        {
-          title: "閫氱煡鍒嗙被浜�",
-          number: "2",
-        },
-        {
-          title: "閫氱煡鍒嗙被涓�",
-          number: "2",
-        },
-        {
-          title: "閫氱煡鍒嗙被鍥�",
-          number: "2",
-        },
-        {
-          title: "閫氱煡鍒嗙被浜�",
-          number: "2",
-        },
-      ],
+      editableTabs: [],
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
         pageSize: 10,
-        userName: undefined,
-        phonenumber: undefined,
-        status: undefined,
-        deptId: undefined,
-        IDnumber: undefined,
+        isavailable: "",
       },
-      // 鍒椾俊鎭�
-      columns: [
-        { key: 0, label: `鐢ㄦ埛缂栧彿`, visible: true },
-        { key: 1, label: `鐢ㄦ埛鍚嶇О`, visible: true },
-        { key: 2, label: `鐢ㄦ埛鏄电О`, visible: true },
-        { key: 3, label: `閮ㄩ棬`, visible: true },
-        { key: 4, label: `鎵嬫満鍙风爜`, visible: true },
-        { key: 5, label: `鐘舵�乣, visible: true },
-        { key: 6, label: `鍒涘缓鏃堕棿`, visible: true },
-      ],
-      // 琛ㄥ崟鏍¢獙
-      rules: {
-        userName: [
-          { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
-          {
-            min: 2,
-            max: 20,
-            message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿",
-            trigger: "blur",
-          },
-        ],
-        nickName: [
-          { required: true, message: "鐢ㄦ埛鏄电О涓嶈兘涓虹┖", trigger: "blur" },
-        ],
-        password: [
-          { required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" },
-          {
-            min: 5,
-            max: 20,
-            message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿",
-            trigger: "blur",
-          },
-        ],
-        email: [
-          {
-            type: "email",
-            message: "璇疯緭鍏ユ纭殑閭鍦板潃",
-            trigger: ["blur", "change"],
-          },
-        ],
-        phonenumber: [
-          {
-            pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
-            message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜",
-            trigger: "blur",
-          },
-        ],
-        IDnumber: [
-          {
-            pattern:
-              /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/,
-            message: "璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�",
-            trigger: "blur",
-          },
-        ],
-      },
-      deptList: [],
-      props: { multiple: true, value: "deptId", label: "deptName" },
     };
   },
   watch: {},
   created() {
     this.getList();
-  },
-  mounted() {
-    this.valuelist = this.states.map((item) => {
-      return { value: `value:${item}`, label: `鏍囬:${item}` };
-    });
+    this.getDeptTree();
+    this.mode = store.getters.mode;
+    this.languagelist = store.getters.languagelist;
+    this.usable = store.getters.usable;
+    this.precedencetype = store.getters.precedencetype;
+    this.editabshape = store.getters.editabshape;
   },
 
   methods: {
-    /** 鏌ヨ鐢ㄦ埛鍒楄〃 */
+    /** 鏌ヨ閫氱煡鍒楄〃 */
     getList() {
-      //   this.loading = true;
-      listUser().then((response) => {
+      this.loading = true;
+      this.queryParams.hetype = 2;
+      getlibrarylist(this.queryParams).then((response) => {
         console.log(response);
-        // this.userList = response.data;
-        // this.total = response.total;
-        // this.loading = false;
-        console.log(this.userList);
+        this.userList = response.rows;
+        this.total = response.total;
+        this.loading = false;
       });
-      //   const { rows } = await listUser();
-      //   console.log(rows);
-      //   this.list = rows;
       listDept(this.queryParams).then((response) => {
         this.deptList = this.handleTree(response.data, "deptId");
       });
     },
-    // 娣诲姞銆佷慨鏀圭被鍒�
-    submitsidecolumn() {
-      if (this.amendtag) {
-        this.classifyform.tagcategoryid = this.idds;
-        // toamendtagcategory(this.addDateRange(this.classifyform)).then(
-        //   (response) => {
-        //     console.log(response);
-        //     this.gitclasify();
-        //   }
-        // );
-      } else {
-        // addtagcategory(this.addDateRange(this.classifyform)).then(
-        //   (response) => {
-        //     console.log(response);
-        //     this.gitclasify();
-        //   }
-        // );
-      }
-      this.classifyform = {
-        categoryname: "",
-      };
-      this.idds = "";
-      this.dialogFormVisible = false;
-    },
-    // 妯$硦鏌ヨ
-    remoteMethod(query) {
-      if (query !== "") {
-        this.loadingvalue = true;
-        setTimeout(() => {
-          this.loadingvalue = false;
-          this.optionsvalue = this.valuelist.filter((item) => {
-            return item.label.toLowerCase().indexOf(query.toLowerCase()) > -1;
-          });
-        }, 200);
-      } else {
-        this.optionsvalue = [];
-      }
-    },
-    // 鏂板鍙橀噺
-    addvariable() {
-      this.variablelist.push({
-        variable: "",
-        value: "",
-      });
-    },
-    // 鍒犻櫎鍙橀噺
-    delvariable(item) {
-      const index = this.variablelist.indexOf(item);
-      if (index !== -1) {
-        this.variablelist.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
-      } else {
-        console.log("鏈壘鍒拌瀵硅薄");
-      }
-    },
-    //鍒犻櫎鍒嗙被
-    deletefenlei(row) {
-      if (this.deleteVisible) {
-        // deletetagcategory(this.idds).then((response) => {
-        //   console.log(response);
-        //   this.gitclasify();
-        // });
-        this.deleteVisible = false;
-        this.idds = "";
-      } else {
-        this.deleteVisible = true;
-        this.idds = row.tagcategoryid;
-        this.deletefenl = row.title;
-      }
-    },
-    //鎼滅储绫诲埆
-    sidecolumnss() {},
-    // 鍒囨崲鍏变韩/鏈湴
-    tophandleClick() {},
+
     // 鍙栨秷鎸夐挳
     cancel() {
       this.open = false;
@@ -861,25 +611,12 @@
     },
     goQRCode(row) {
       this.goQRCodeVisible = true;
-      this.namequestionnaire = row.userName;
-      this.haoquestionnaire = row.nickName;
+      this.nameeducation = row.userName;
+      this.haoeducation = row.nickName;
     },
     // 琛ㄥ崟閲嶇疆
     reset() {
-      this.form = {
-        userId: undefined,
-        deptId: undefined,
-        userName: undefined,
-        nickName: undefined,
-        password: undefined,
-        phonenumber: undefined,
-        email: undefined,
-        sex: undefined,
-        status: "0",
-        remark: undefined,
-        postIds: [],
-        roleIds: [],
-      };
+      this.form = {};
       this.resetForm("form");
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
@@ -903,46 +640,32 @@
     },
     /** 鏂板鎸夐挳鎿嶄綔 */
     handleAdd() {
-      this.reset();
-      this.title = "鏂板閫氱煡";
-      this.indexopen = true;
+      this.$router.push({
+        path: "/knowledge/education/compilequer/",
+      });
     },
     /** 淇敼鎸夐挳鎿嶄綔 */
     handleUpdate(row) {
-      this.reset();
-      this.title = "閫氱煡璇︽儏";
-      this.indexopen = true;
-    },
-    // 鏌ョ湅
-    ViewQuestionnaire() {},
-
-    /** 鏇存柊/淇敼鎻愪氦鎸夐挳 */
-    submitForm: function () {
-      this.$refs["form"].validate((valid) => {
-        if (valid) {
-          if (this.form.userId != undefined) {
-            updateUser(this.form).then((response) => {
-              this.$modal.msgSuccess("淇敼鎴愬姛");
-              this.open = false;
-              this.getList();
-            });
-          } else {
-            addUser(this.form).then((response) => {
-              this.$modal.msgSuccess("鏂板鎴愬姛");
-              this.open = false;
-              this.getList();
-            });
-          }
-        }
+      this.$router.push({
+        path: "/knowledge/education/compilequer/",
+        query: { id: "1" },
       });
     },
+    // 鏌ョ湅閫氱煡
+    Vieweducation() {
+      this.$router.push({
+        path: "/knowledge/education/examine/",
+        query: { id: "1" },
+      });
+    },
+
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
       const userIds = row.userId || this.ids;
       this.$modal
         .confirm('鏄惁纭鍒犻櫎鐢ㄦ埛缂栧彿涓�"' + userIds + '"鐨勬暟鎹」锛�')
         .then(function () {
-          return delUser(userIds);
+          return delFollowupinfo(userIds);
         })
         .then(() => {
           this.getList();
@@ -950,12 +673,186 @@
         })
         .catch(() => {});
     },
+
+    // 鍒嗙被鏍�-----------------------------------------
+    // 淇敼鍒嗙被寮规
+    popoveramend(tagcategoryid) {
+      this.idds = tagcategoryid;
+      this.amendtag = true;
+      this.dialogFormVisible = true;
+    },
+    // 鏌ヨ鏍�
+    getDeptTree() {
+      getheLibraryAssort({ hetype: 2 }).then((res) => {
+        this.deptOptions = res.rows;
+        this.dialogFormVisible = false;
+      });
+    },
+
+    // 娣诲姞绫诲埆鏍�
+    submitsidecolumn() {
+      this.classifyform.hetype = 2;
+      if (this.classifyform.id) {
+        editheLibraryAssort(this.classifyform).then((res) => {
+          this.getDeptTree();
+          this.$modal.msgSuccess("淇敼鎴愬姛");
+          this.classifyform = {};
+          this.dialogFormVisible = false;
+        });
+        return;
+      }
+      let calssvalue = {};
+      if (
+        this.classifyform.pid &&
+        this.classifyform.assortname &&
+        this.radio == "瀛愬垎绫�"
+      ) {
+        const index = this.deptOptions.findIndex(
+          (obj) => obj.id == this.classifyform.pid
+        );
+        calssvalue = this.deptOptions[index];
+        calssvalue.heLibraryAssortList.push(this.classifyform);
+      } else if (this.radio == "涓诲垎绫�" && this.classifyform.assortname) {
+        this.classifyform.pid = null;
+        this.classifyform.heLibraryAssortList = [];
+      } else {
+        return this.$modal.msgError("璇峰~鍐欏畬鏁翠俊鎭�");
+      }
+      addheLibraryAssort(this.classifyform).then((res) => {
+        this.getDeptTree();
+        this.$modal.msgSuccess("鏂板鎴愬姛");
+        this.classifyform = {};
+        this.dialogFormVisible = false;
+      });
+    },
+    remove(a, b) {
+      if (b.pid) {
+        this.$modal
+          .confirm('鏄惁纭鍒犻櫎鍒嗙被椤逛负"' + b.assortname + '"鐨勬暟鎹」锛�')
+          .then(function () {
+            return delheLibraryAssort(b.id);
+          })
+          .then(() => {
+            this.getDeptTree();
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          })
+          .catch(() => {});
+      } else {
+        this.$modal
+          .confirm(
+            '鏄惁纭鍒犻櫎涓�绾у垎绫�"' +
+              b.assortname +
+              '"锛熷垹闄ゅ悗鍏朵笅鍒嗙被灏嗗綊绫烩�樻湭鍒嗙被鈥�'
+          )
+          .then(() => {
+            return delheLibraryAssort(b.id);
+          })
+          .then(() => {
+            this.getDeptTree();
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          })
+          .catch(() => {});
+      }
+    },
+    altertag(a, b) {
+      this.dialogFormVisible = true;
+      if (!b.pid) {
+        this.radio = "涓诲垎绫�";
+      } else {
+        this.radio = "瀛愬垎绫�";
+      }
+      this.classifyform = b;
+      this.dialogFormVisible = true;
+    },
+
+    // 绛涢�夎妭鐐�
+    filterNode(value, data) {
+      if (!value) return true;
+      return data.assortname.indexOf(value) !== -1;
+    },
+    handleNodeClick(data) {
+      this.queryParams.assortid = data.id;
+      this.getList();
+    },
+    // 鐤剧梾-----------------------
+    illnessUpdate(row) {
+      this.illnessVisible = true;
+      this.indexid = row.id;
+      this.illnesslistapi = [];
+      const illnessqueryParams = {
+        pageNum: 1,
+        pageSize: 100,
+      };
+      getillnesslist(illnessqueryParams).then((response) => {
+        console.log(response);
+        this.optionsillness = response.rows;
+      });
+      getillness({ outid: row.id, type: 6 }).then((res) => {
+        this.illnesslist = res.rows;
+        console.log(res);
+      });
+    },
+    handleCloseillness(tag) {
+      this.illnesslist.splice(this.illnesslist.indexOf(tag), 1);
+      if (tag.id) {
+        this.illnesslistapi.push(tag.id);
+      }
+    },
+    remoteMethod(value) {
+      console.log(value);
+      const illnessqueryParams = {
+        pageNum: 1,
+        pageSize: 100,
+        icdname: value,
+      };
+      this.loading = true;
+      setTimeout(() => {
+        this.loading = false;
+        getillnesslist(illnessqueryParams).then((response) => {
+          this.optionsillness = response.rows;
+        });
+      }, 200);
+    },
+    illnessConfirm(item) {
+      let opeavalue = {};
+      let tagname = this.inputValue;
+      illnesslistget(item).then((res) => {
+        opeavalue = res.data;
+        opeavalue.outid = this.indexid;
+        opeavalue.type = 6;
+        opeavalue.icd10id = opeavalue.icdid;
+        opeavalue.icd10name = opeavalue.icdname;
+        opeavalue.icd10code = opeavalue.icdcode;
+        if (tagname) {
+          this.illnesslist.push(opeavalue);
+        }
+      });
+      console.log(this.illnesslist);
+      this.inputVisible = false;
+      this.inputValue = "";
+    },
+    confirmillness() {
+      this.illnesslist.forEach((item, index) => {
+        if (!item.id) {
+          item.hetype = 2;
+          addtargetillness(item).then((res) => {});
+        }
+      });
+      if (this.illnesslistapi.length) {
+        deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
+      }
+      this.illnessVisible = false;
+      this.$modal.msgSuccess("缂栬緫鎴愬姛");
+    },
+    showInput() {
+      this.inputVisible = true;
+    },
   },
 };
 </script>
 
 <style lang="scss" scoped>
-.Questionnairemanagement {
+.educationmanagement {
   display: flex;
 }
 .sidecolumn {
@@ -966,7 +863,7 @@
   margin-top: 20px;
   margin: 20px;
   padding: 30px;
-  background: #edf1f7;
+  background: #fff;
   border: 1px solid #dcdfe6;
   -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
     0 0 6px 0 rgba(0, 0, 0, 0.04);
@@ -1047,6 +944,63 @@
     font-size: 20px;
   }
 }
+.xinz-infs {
+  font-size: 18px;
+  overflow: hidden;
+  text-overflow: ellipsis;
+
+  line-height: 48px;
+
+  .el-tag + .el-tag {
+    margin-left: 10px;
+  }
+  .button-new-tag {
+    margin-left: 10px;
+    height: 32px;
+    line-height: 30px;
+    padding-top: 0;
+    padding-bottom: 0;
+  }
+  .input-new-tag {
+    width: 90px;
+    margin-left: 10px;
+    vertical-align: bottom;
+  }
+}
+::v-deep .el-tree-node__content {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  height: 46px;
+  font-size: 20px;
+  cursor: pointer;
+}
+::v-deep .el-tree {
+  position: relative;
+  cursor: default;
+  border-radius: 5px;
+  background: #eff8fe;
+  color: #606266;
+  border: 1px solid #bbe1fa;
+  // border: 1px solid #dcdfe6;
+  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
+    0 0 6px 0 rgba(0, 0, 0, 0.04);
+}
+::v-deep
+  .el-tree--highlight-current
+  .el-tree-node.is-current
+  > .el-tree-node__content {
+  background-color: #7799fb;
+  color: #fff;
+}
+::v-deep .el-button--mini.is-circle {
+  padding: 7px;
+  margin: 0;
+  color: red;
+}
 .button-text {
   color: rgb(70, 204, 238);
 }

--
Gitblit v1.9.3