From 18f35fe78de41a1b240758c91e05380decb48978 Mon Sep 17 00:00:00 2001
From: lkk <364857242@qq.com>
Date: 星期五, 25 七月 2025 17:39:59 +0800
Subject: [PATCH] 1

---
 src/views/reservation/reservations/index.vue |  831 ++++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 539 insertions(+), 292 deletions(-)

diff --git a/src/views/reservation/reservations/index.vue b/src/views/reservation/reservations/index.vue
index 15c4e48..b99dc91 100644
--- a/src/views/reservation/reservations/index.vue
+++ b/src/views/reservation/reservations/index.vue
@@ -99,81 +99,118 @@
       v-show="showSearch"
       label-width="68px"
     >
-      <el-form-item label="濮撳悕" prop="name">
-        <el-input
-          style="width: 120px"
-          v-model="queryParams.name"
-          placeholder="璇疯緭鍏ュ鍚�"
-          clearable
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="韬唤璇佸彿" prop="idCard">
-        <el-input
-          v-model="queryParams.idCard"
-          placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�"
-          clearable
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="鑱旂郴鐢佃瘽" prop="phoe">
-        <el-input
-          v-model="queryParams.phoe"
-          placeholder="璇疯緭鍏ヨ仈绯荤數璇�"
-          clearable
-          @keyup.enter.native="handleQuery"
-          style="width: 140px"
-        />
-      </el-form-item>
-      <el-form-item label="鍗曚綅鍚嶇О" prop="company">
-        <el-select
-          :remote-method="getRemoteData"
-          v-model="queryParams.company"
-          remote
-          default-first-option
-          allow-create
-          filterable
-          style="width: 200px"
-          placeholder="璇烽�夋嫨鍗曚綅鍚嶇О"
-          clearable
-          @change="idFn1"
-        >
-          <el-option
-            v-for="dict in CompanyList"
-            :key="dict.cnName"
-            :label="dict.cnName"
-            :value="dict.drugManufacturerId"
-          />
-        </el-select>
-        <i class="el-icon-circle-plus-outline" @click="handleAdd1"></i>
-      </el-form-item>
-      <el-form-item label="棰勭害瓒呮湡" prop="isExpire">
-        <el-select
-          v-model="queryParams.isExpire"
-          placeholder="璇烽�夋嫨鏄惁瓒呮湡"
-          clearable
-          style="width: 140px"
-        >
-          <el-option
-            v-for="dict in options"
-            :key="dict.value"
-            :label="dict.label"
-            :value="dict.value"
-          />
-        </el-select>
-      </el-form-item>
-      <el-form-item>
-        <el-button
-          type="primary"
-          icon="el-icon-search"
-          size="mini"
-          @click="handleQuery"
-          >鎼滅储</el-button
-        >
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
-          >閲嶇疆</el-button
-        >
-      </el-form-item>
+      <el-row>
+        <el-col>
+          <el-form-item label="濮撳悕" prop="name">
+            <el-input
+              style="width: 120px"
+              v-model="queryParams.name"
+              placeholder="璇疯緭鍏ュ鍚�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="韬唤璇佸彿" prop="idCard">
+            <el-input
+              v-model="queryParams.idCard"
+              placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+
+          <el-form-item label="鍗曚綅鍚嶇О" prop="companyId">
+            <el-select
+              :remote-method="getRemoteData"
+              v-model="queryParams.companyId"
+              remote
+              default-first-option
+              allow-create
+              filterable
+              style="width: 200px"
+              placeholder="璇烽�夋嫨鍗曚綅鍚嶇О"
+              clearable
+              @change="idFn1"
+            >
+              <el-option
+                v-for="dict in CompanyList"
+                :key="dict.cnName"
+                :label="dict.cnName"
+                :value="dict.drugManufacturerId"
+              />
+            </el-select>
+            <i class="el-icon-circle-plus-outline" @click="handleAdd1"></i>
+          </el-form-item>
+
+          <!-- <el-form-item label="濂楅鍚嶇О" prop="dwDeptName">
+            <el-select v-model="queryParams.dwDeptName" placeholder="璇烽�夋嫨濂楅鍚嶇О" clearable style="width: 100%"
+              @change="idFn2">
+              <el-option v-for="dict in deptList" :key="dict.id" :label="dict.dwDeptName" :value="dict.id" />
+            </el-select>
+          </el-form-item>
+
+          <el-form-item label="鍒嗙粍鍚嶇О" prop="groupingName">
+            <el-select v-model="queryParams.groupingName" placeholder="璇烽�夋嫨鍒嗙粍鍚嶇О" clearable style="width: 100%">
+              <el-option v-for="dict in groupingList" :key="dict.id" :label="dict.pacName" :value="dict.id" />
+            </el-select>
+          </el-form-item> -->
+          <el-form-item label="棰勭害鏃堕棿">
+            <el-date-picker
+              clearable
+              v-model="createTimeList"
+              @change="dateChangebirthday2"
+              type="daterange"
+              range-separator="-"
+              start-placeholder="寮�濮嬫棩鏈�"
+              end-placeholder="缁撴潫鏃ユ湡"
+              :picker-options="pickerOptions"
+              value-format="yyyy-MM-dd"
+              placeholder="璇烽�夋嫨鍑洪绾︽椂闂�"
+              style="width: 300px"
+            >
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
+        <el-col>
+          <el-form-item label="鑱旂郴鐢佃瘽" prop="phoe">
+            <el-input
+              v-model="queryParams.phoe"
+              placeholder="璇疯緭鍏ヨ仈绯荤數璇�"
+              clearable
+              @keyup.enter.native="handleQuery"
+              style="width: 140px"
+            />
+          </el-form-item>
+          <el-form-item label="棰勭害瓒呮湡" prop="isExpire">
+            <el-select
+              v-model="queryParams.isExpire"
+              placeholder="璇烽�夋嫨鏄惁瓒呮湡"
+              clearable
+              style="width: 140px"
+            >
+              <el-option
+                v-for="dict in options"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
+            </el-select>
+          </el-form-item>
+
+          <el-form-item>
+            <el-button
+              type="primary"
+              icon="el-icon-search"
+              size="mini"
+              @click="handleQuery"
+              >鎼滅储</el-button
+            >
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+              >閲嶇疆</el-button
+            >
+          </el-form-item>
+        </el-col>
+      </el-row>
     </el-form>
     <el-row :gutter="10" style="margin: 10px 15px">
       <el-col :span="1.5">
@@ -295,7 +332,7 @@
           <span>{{ parseTime(scope.row.reservationTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column
+      <!-- <el-table-column
         label="浣撴绫诲瀷"
         align="center"
         prop="tjType"
@@ -305,7 +342,7 @@
         <template slot-scope="scope">
           <dict-tag :options="dict.type.dict_team" :value="scope.row.tjType" />
         </template>
-      </el-table-column>
+      </el-table-column> -->
       <el-table-column
         label="濠氬Щ"
         align="center"
@@ -355,9 +392,23 @@
         :show-overflow-tooltip="true"
       />
       <el-table-column
-        label="閭"
+        label="濂楅鍚嶇О"
         align="center"
-        prop="email"
+        prop="dwDeptName"
+        :show-overflow-tooltip="true"
+        width="160px"
+      />
+      <el-table-column
+        label="鍒嗙粍鍚嶇О"
+        align="center"
+        prop="groupingName"
+        :show-overflow-tooltip="true"
+        width="160px"
+      />
+      <el-table-column
+        label="鍗曚綅閮ㄩ棬"
+        align="center"
+        prop="department"
         :show-overflow-tooltip="true"
         width="160px"
       />
@@ -554,10 +605,10 @@
                   style="width: 160px"
                 />
               </el-form-item>
-              <el-form-item label="鍗曚綅鍚嶇О" prop="company">
+              <el-form-item label="鍗曚綅鍚嶇О" prop="companyId">
                 <el-select
                   :remote-method="getRemoteData"
-                  v-model="formIn.company"
+                  v-model="formIn.companyId"
                   remote
                   default-first-option
                   allow-create
@@ -569,7 +620,7 @@
                 >
                   <el-option
                     v-for="dict in CompanyList"
-                    :key="dict.cnName"
+                    :key="dict.drugManufacturerId"
                     :label="dict.cnName"
                     :value="dict.drugManufacturerId"
                   />
@@ -857,29 +908,36 @@
                   "
                 >
                   <el-table :data="tableData1" border style="width: 100%">
-                    <el-table-column prop="proName" label="椤圭洰" width="180" align="center">
+                    <el-table-column
+                      prop="proName"
+                      label="椤圭洰"
+                      width="180"
+                      align="center"
+                    >
                     </el-table-column>
-                    <el-table-column prop="proType" label="鎬у埆" width="50" align="center">
+                    <!-- <el-table-column
+                      prop="proType"
+                      label="鎬у埆"
+                      width="50"
+                      align="center"
+                    >
                       <template slot-scope="scope">
-                        <template v-if="isAll(scope.row.proType)">
-                          鍏ㄩ儴
-                        </template>
-                        <template v-else>
-                          <dict-tag
-                            :options="dict.type.sys_user_sex"
-                            :value="scope.row.proType"
-                          />
-                        </template>
+                        {{ scope.row.proType || '鍏ㄩ儴' }}
                       </template>
-                    </el-table-column>
+                    </el-table-column> -->
 
-                    <el-table-column prop="ordPrice" label="搴旀敹閲戦" align="center">
+                    <el-table-column
+                      prop="ordPrice"
+                      label="搴旀敹閲戦"
+                      align="center"
+                    >
                     </el-table-column>
                     <el-table-column label="鎶樻墸" width="160px" align="center">
+                      <!-- @input="validateDiscount(scope.row)" -->
+
                       <template slot-scope="scope">
                         <el-input-number
                           v-model.number="scope.row.discount"
-                          @input="validateDiscount(scope.row)"
                           placeholder="杈撳叆鎶樻墸"
                           size="small"
                           type="number"
@@ -887,14 +945,22 @@
                           :step="0.1"
                           :max="10"
                           :min="0"
-                          :disabled="true" 
+                          :disabled="true"
                         >
                         </el-input-number>
                       </template>
                     </el-table-column>
-                    <el-table-column prop="nowPrice" label="瀹炴敹閲戦" align="center">
+                    <el-table-column
+                      prop="nowPrice"
+                      label="瀹炴敹閲戦"
+                      align="center"
+                    >
                     </el-table-column>
-                    <el-table-column prop="proCheckMethod" label="鏄惁绌鸿吂" align="center">
+                    <el-table-column
+                      prop="proCheckMethod"
+                      label="鏄惁绌鸿吂"
+                      align="center"
+                    >
                       <template slot-scope="scope">
                         <dict-tag
                           :options="dict.type.sys_yes_no"
@@ -1079,7 +1145,7 @@
               </div>
             </el-col>
           </el-row>
-         
+
           <el-dialog
             title="瀵兼鍗曢瑙�"
             :visible.sync="dialogVisibles"
@@ -1097,7 +1163,6 @@
         </div>
       </template>
     </el-drawer>
-
 
     <el-dialog
       title="PDF 棰勮"
@@ -1324,10 +1389,10 @@
                   style="width: 160px"
                 />
               </el-form-item>
-              <el-form-item label="鍗曚綅鍚嶇О" prop="company">
+              <el-form-item label="鍗曚綅鍚嶇О" prop="companyId">
                 <el-select
                   :remote-method="getRemoteData"
-                  v-model="formIn.company"
+                  v-model="formIn.companyId"
                   remote
                   default-first-option
                   allow-create
@@ -1339,7 +1404,7 @@
                 >
                   <el-option
                     v-for="dict in CompanyList"
-                    :key="dict.cnName"
+                    :key="dict.drugManufacturerId"
                     :label="dict.cnName"
                     :value="dict.drugManufacturerId"
                   />
@@ -1611,9 +1676,19 @@
                   "
                 >
                   <el-table :data="tableData1" border style="width: 100%">
-                    <el-table-column prop="proName" label="椤圭洰" width="180" align="center">
+                    <el-table-column
+                      prop="proName"
+                      label="椤圭洰"
+                      width="180"
+                      align="center"
+                    >
                     </el-table-column>
-                    <el-table-column prop="proType" label="鎬у埆" width="50" align="center">
+                    <el-table-column
+                      prop="proType"
+                      label="鎬у埆"
+                      width="50"
+                      align="center"
+                    >
                       <template slot-scope="scope">
                         <template v-if="isAll(scope.row.proType)">
                           鍏ㄩ儴
@@ -1627,13 +1702,17 @@
                       </template>
                     </el-table-column>
 
-                    <el-table-column prop="ordPrice" label="搴旀敹閲戦" align="center">
+                    <el-table-column
+                      prop="ordPrice"
+                      label="搴旀敹閲戦"
+                      align="center"
+                    >
                     </el-table-column>
                     <el-table-column label="鎶樻墸" width="160px" align="center">
+                      <!--  @input="validateDiscount(scope.row)" -->
                       <template slot-scope="scope">
                         <el-input-number
                           v-model.number="scope.row.discount"
-                          @input="validateDiscount(scope.row)"
                           placeholder="杈撳叆鎶樻墸"
                           size="small"
                           type="number"
@@ -1641,14 +1720,22 @@
                           :step="0.1"
                           :max="10"
                           :min="0"
-                          :disabled="true" 
+                          :disabled="true"
                         >
                         </el-input-number>
                       </template>
                     </el-table-column>
-                    <el-table-column prop="nowPrice" label="瀹炴敹閲戦" align="center">
+                    <el-table-column
+                      prop="nowPrice"
+                      label="瀹炴敹閲戦"
+                      align="center"
+                    >
                     </el-table-column>
-                    <el-table-column prop="proCheckMethod" label="鏄惁绌鸿吂" align="center">
+                    <el-table-column
+                      prop="proCheckMethod"
+                      label="鏄惁绌鸿吂"
+                      align="center"
+                    >
                       <template slot-scope="scope">
                         <dict-tag
                           :options="dict.type.sys_yes_no"
@@ -1853,10 +1940,14 @@
 </template>
 
 <script>
-import { addComp,
-  addPlOrderAndDetail } from "@/api/system/comp";
+import {
+  addComp,
+  addPlOrderAndDetail,
+  Deptlist,
+  getDwAndDwDept,
+} from "@/api/system/comp";
 import Big from "big.js";
-
+import { Loading } from "element-ui";
 import {
   listReservation,
   gettjCancel,
@@ -1923,6 +2014,8 @@
       taocan: false,
       webSocket: null,
       defaultKeys: [],
+      deptList: [],
+      groupingList: [],
       value1: "",
       pacName: "",
       hides: false,
@@ -1934,7 +2027,7 @@
       url: "",
       open2: false,
       forms: {
-        tjCategory:"12"
+        tjCategory: "12",
       },
       dialogVisible: false,
       /** 鐓х浉鏈哄脊绐楁ā鍧�-start */
@@ -1993,9 +2086,11 @@
       // 鏄惁鏄剧ず寮瑰嚭灞�
 
       pacId: "",
-      cusIds:[],
+      cusIds: [],
       // 缁撴灉
       result: "",
+      createTimeList: "",
+      startTime: "",
       proIds: [],
       // 鏄剧ず鎼滅储鏉′欢
       showSearch: true,
@@ -2026,7 +2121,9 @@
         cusSex: null,
         cusBrithday: null,
         cusAddr: null,
-        cusPhone: null,
+        phone: null,
+        yykssj: "", // 棰勭害寮�濮嬫椂闂�
+        yyjssj: "", // 棰勭害缁撴潫鏃堕棿
         cusPostcode: null,
         cusEmail: null,
         indexCard: null,
@@ -2036,31 +2133,78 @@
         cusIntroduce: null,
         cusNumber: null,
         cusIsvip: null,
+        orderByColumn: "reservationTime",
+        isAsc: "desc",
+        name: "",
+        reservationTime: null,
+        idCard: null,
+        phoe: null,
+        email: null,
+        tjType: null,
+        companyId: null,
+        isExpire: null,
       },
+      // 鏌ヨ鍙傛暟
+      /*  queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        orderByColumn: "reservationTime",
+        isAsc: "desc",
+        name: null,
+        reservationTime: null,
+        idCard: null,
+        phoe: null,
+        email: null,
+        tjType: null,
+        companyId: null,
+        reservationTime: null,
+        isExpire: null,
+      }, */
+      /* formIn: {
+        name: "",
+        // age: "",
+        // idCard: "",
+        // remark: null,
+        // pacName: "",
+        // cusaddr: null,
+        // idType: null,
+        // ageUnit: null,
+        // sex: null,
+        // phoe: "",
+        // nation: null,
+        // email: "",
+        // marriage: null,
+        // address: "",
+        // tjCategory: null,
+        company: "",
+        // career: null,
+        // reservationTime: null,
+        // timeRegion: null,
+        // indexCard: "",
+        // department: "",
+      }, */
+      fmobj: {},
       formIn: {
         name: "",
-        age: "",
+        idType: "",
         idCard: "",
-        remark: null,
-        pacName: "",
-        cusaddr: null,
-        idType: null,
-        ageUnit: null,
-        sex: null,
+        age: "",
+        ageUnit: "",
+        sex: "",
         phoe: "",
-        nation: null,
+        nation: "",
         email: "",
-        marriage: null,
+        marriage: "",
         address: "",
-        tjCategory: null,
-        company: "",
-        career: null,
-        reservationTime: null,
-        timeRegion: null,
-        indexCard: "",
+        tjCategory: "",
         department: "",
+        companyId: "",
+        company: "",
+        career: "",
+        reservationTime: "",
+        timeRegion: "",
+        indexCard: "",
       },
-      fmobj: {},
       // 琛ㄥ崟鏍¢獙
       form1: {},
       open1: false,
@@ -2091,7 +2235,7 @@
         // cusAddr: [
         //   { required: true, message: "鐜板眳浣忓湴鍧�涓嶈兘涓虹┖", trigger: "blur" },
         // ],
-        cusPhone: [
+        phone: [
           { required: true, validator: checkPhoneNum, trigger: "blur" },
         ],
         reservationTime: [
@@ -2131,21 +2275,7 @@
       valueUrls: "ws://127.0.0.1:6789/websocket",
       drawer: false,
       drawer1: false,
-      // 鏌ヨ鍙傛暟
-      queryParams: {
-        pageNum: 1,
-        pageSize: 10,
-        orderByColumn: "reservationTime",
-        isAsc: "desc",
-        name: null,
-        idCard: null,
-        phoe: null,
-        email: null,
-        tjType: null,
-        company: null,
-        reservationTime: null,
-        isExpire: null,
-      },
+
       // 琛ㄥ崟鍙傛暟
       form: {},
       // 琛ㄥ崟鏍¢獙
@@ -2179,11 +2309,43 @@
         //   },
         // ],
       },
+      pickerOptions: {
+        shortcuts: [
+          {
+            text: "鏈�杩戜竴鍛�",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date(new Date().setHours(0, 0, 0, 0));
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
+              picker.$emit("pick", [start, end]);
+            },
+          },
+          {
+            text: "鏈�杩戜竴涓湀",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date(new Date().setHours(0, 0, 0, 0));
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
+              picker.$emit("pick", [start, end]);
+            },
+          },
+          {
+            text: "鏈�杩戜笁涓湀",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date(new Date().setHours(0, 0, 0, 0));
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
+              picker.$emit("pick", [start, end]);
+            },
+          },
+        ],
+      },
     };
   },
   created() {
     this.getList();
   },
+
   methods: {
     isAll(value) {
       return value === "" || value === null;
@@ -2212,6 +2374,10 @@
         (Math.floor((this.TotalPrice / this.TotalPrice1) * 100) / 100) * 10;
     },
 
+    dateChangebirthday2(val) {
+      this.startTime = val;
+    },
+
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete1(row) {
       // console.log(row);
@@ -2227,7 +2393,7 @@
         .then(() => {
           this.TotalPrice1 = 0;
           getTransitionList1(row.cusId).then((response) => {
-            this.tableData1 = response.data;
+            this.tableData1 = response.data.list;
 
             this.tableData1.forEach((item) => {
               this.TotalPrice1 += item.ordPrice;
@@ -2288,17 +2454,41 @@
     idFn1(value) {
       if (value) {
         this.form.dictCompId = value;
-        this.CompanyList.forEach((item) => {
-          if (item.drugManufacturerId == this.form.dictCompId) {
-            this.form.compName = item.cnName;
-            this.queryParams.company = item.cnName;
-          }
+        console.log(value)
+        // this.CompanyList.forEach((item) => {
+        //   if (item.drugManufacturerId == this.form.dictCompId) {
+        //     this.form.compName = item.cnName;
+        //     this.queryParams.company = item.cnName;
+        //   }
+        // });
+        Deptlist(value).then((response) => {
+          this.deptList = response.data;
         });
       }
+    },
+    idFn2(value) {
+      let data = {
+        deptId: value,
+        dwId: this.form.dictCompId,
+      };
+      getDwAndDwDept(data).then((response) => {
+        // 閮ㄩ棬鍚嶇О
+        this.groupingList = response.data;
+      });
     },
     /** 鏌ヨ浣撴棰勭害鍒楄〃 */
     getList() {
       this.loading = true;
+      if (this.startTime) {
+        this.queryParams.yykssj = this.startTime[0];
+        this.queryParams.yyjssj = this.startTime[1];
+      } else if (this.createTimeList) {
+        this.queryParams.yykssj = this.createTimeList[0];
+        this.queryParams.yyjssj = this.createTimeList[1];
+      } else if (this.createTimeList == null) {
+        this.queryParams.yykssj = null;
+        this.queryParams.yyjssj = null;
+      }
       listReservation(this.queryParams).then((response) => {
         this.reservationList = response.rows;
         //  response.rows.forEach((item, index) =>
@@ -2351,6 +2541,7 @@
         proIds: null,
         pacId: null,
         company: null,
+        drugManufacturerId: null,
         companyId: null,
         jobNo: null,
         department: null,
@@ -2374,7 +2565,29 @@
     },
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
     resetQuery() {
+      this.startTime = [];
+      this.createTimeList = [];
       this.resetForm("queryForm");
+      this.queryParams = {
+        pageNum: 1,
+        pageSize: 10,
+        cusName: null,
+        cusSex: null,
+        cusBrithday: null,
+        cusAddr: null,
+        phone: null,
+        yykssj: "", // 棰勭害寮�濮嬫椂闂�
+        yyjssj: "", // 棰勭害缁撴潫鏃堕棿
+        cusPostcode: null,
+        cusEmail: null,
+        indexCard: null,
+        cusNational: null,
+        cusMarryStatus: null,
+        cusIdcard: null,
+        cusIntroduce: null,
+        cusNumber: null,
+        cusIsvip: null,
+      };
       this.handleQuery();
     },
     // 澶氶�夋閫変腑鏁版嵁
@@ -2462,7 +2675,7 @@
               let cusId = response.data.idCard;
               getTransitionList1(cusId).then((response) => {
                 if (response.data) {
-                  this.tableData1 = response.data;
+                  this.tableData1 = response.data.list;
                   if (this.tableData1.length != 0) {
                     this.TotalPrice1 = 0;
                     this.tableData1.forEach((item) => {
@@ -2506,41 +2719,28 @@
     /** 淇敼璇︾粏鎸夐挳鎿嶄綔 */
     handleUpdate1(row) {
       this.title = "棰勭害璇︾粏淇℃伅";
-      this.formIn = row;
-      if (this.formIn.timeRegion === 0) {
-        this.formIn.timeRegion = "8:00-9:00";
-      }
-      if (row.timeRegion === 1) {
-        this.formIn.timeRegion = "9:00-10:00";
-      }
-      if (row.timeRegion === 2) {
-        this.formIn.timeRegion = "10:00-11:00";
-      }
-      if (row.timeRegion === 3) {
-        this.formIn.timeRegion = "11:00-12:00";
-      }
-      if (this.formIn.isExpire === 1) {
-        this.tijiao1 = false;
-      }
-      this.drawer1 = true;
-      if (this.formIn.discount != null) {
-        this.discount = this.formIn.discount;
-      }
+
       //鍏ㄩ儴濂楅
-      if (this.formIn.sex != null) {
-        let cusSex = this.formIn.sex;
+      if (row.sex != null) {
+        let cusSex = row.sex;
         deptTreeSelect(cusSex).then((response) => {
           this.newpacName = response.rows;
           this.newpacName.forEach((item3) => {
             this.tableData1.forEach((item4) => {
-              item4.list.forEach((item6) => {
-                if (item6.pacName === item3.pacName) {
-                  this.$nextTick(() => {
-                    this.$refs.tb.toggleRowSelection(item3, true);
-                  });
-                  throw Error();
-                }
-              });
+              // item4.list.forEach((item6) => {
+              //   if (item6.pacName === item3.pacName) {
+              //     this.$nextTick(() => {
+              //       this.$refs.tb.toggleRowSelection(item3, true);
+              //     });
+              //     throw Error();
+              //   }
+              // });
+              if (item4.pacName === item3.pacName) {
+                this.$nextTick(() => {
+                  this.$refs.tb.toggleRowSelection(item3, true);
+                });
+                throw Error();
+              }
             });
           });
           this.loading = false;
@@ -2563,42 +2763,63 @@
           this.loading = false;
         });
       }
-      let id = this.formIn.id;
+      let id = row.id;
       this.list1 = true;
-      (this.tableData1 = []),
-        (this.newpacName = []),
-        getReservation(id).then((response) => {
-          if (response.data) {
-            let cusId = response.data.idCard;
-            getTransitionList1(cusId).then((response) => {
-              if (response.data) {
-                this.tableData1 = response.data;
+      (this.tableData1 = []), (this.newpacName = []), (this.drawer1 = true);
+      getReservation(id).then((response) => {
+        if (response.data) {
+          this.formIn = response.data;
 
-                if (this.tableData1.length != 0) {
-                  this.TotalPrice1 = 0;
-                  this.tableData1.forEach((item) => {
-                    this.TotalPrice1 += item.nowPrice;
-                    this.TotalPrice = (
-                      this.TotalPrice1 *
-                      (this.discount / 10)
-                    ).toFixed(2);
-                    if (item.pacName === null) {
-                      item.pacName = "鍗曢」";
-                    }
-                  });
-                  this.list1 = false;
-                  this.list3 = true;
-                } else {
-                  this.list1 = true;
-                }
+          if (this.formIn.timeRegion === 0) {
+            this.formIn.timeRegion = "8:00-9:00";
+          }
+          if (row.timeRegion === 1) {
+            this.formIn.timeRegion = "9:00-10:00";
+          }
+          if (row.timeRegion === 2) {
+            this.formIn.timeRegion = "10:00-11:00";
+          }
+          if (row.timeRegion === 3) {
+            this.formIn.timeRegion = "11:00-12:00";
+          }
+          if (this.formIn.isExpire === 1) {
+            this.tijiao1 = false;
+          }
+          // this.drawer1 = true;
+          if (this.formIn.discount != null) {
+            this.discount = this.formIn.discount;
+          }
+          let cusId = this.formIn.idCard;
+          getTransitionList1(cusId).then((response) => {
+            if (response.data) {
+              this.tableData1 = response.data.list;
+              console.log("tableData1", this.tableData1);
+
+              if (this.tableData1.length != 0) {
+                this.TotalPrice1 = 0;
+                this.tableData1.forEach((item) => {
+                  this.TotalPrice1 += item.nowPrice;
+                  this.TotalPrice = (
+                    this.TotalPrice1 *
+                    (this.discount / 10)
+                  ).toFixed(2);
+                  if (item.pacName === null) {
+                    item.pacName = "鍗曢」";
+                  }
+                });
+                this.list1 = false;
+                this.list3 = true;
               } else {
-                this.tableData1 = [];
-                this.list3 = false;
                 this.list1 = true;
               }
-            });
-          }
-        });
+            } else {
+              this.tableData1 = [];
+              this.list3 = false;
+              this.list1 = true;
+            }
+          });
+        }
+      });
 
       /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
       projectGetList().then((response) => {
@@ -2613,7 +2834,6 @@
       this.discount = currentValue;
       this.TotalPrice = (this.TotalPrice1 * (this.discount / 10)).toFixed(2);
     },
-
     Package() {
       this.taocan = true;
       this.datekey = Date.now();
@@ -2682,92 +2902,107 @@
       this.open2 = true;
     },
 
-
     submitType() {
       // let cusIds = [];
       // this.selectList.forEach((item) => {
       //   cusIds.push(item.idCard);
       // });
+      let loadingInstance1 = Loading.service({
+        fullscreen: true,
+        text: "绛惧埌涓�",
+      });
       let data = {
         cusIds: this.cusIds,
         tjCategory: this.forms.tjCategory,
       };
+      this.open2 = false;
       addPlOrderAndDetail(data).then((res) => {
-        this.open2 = false;
-        this.$modal.msgSuccess("绛惧埌鎴愬姛");
-        if (res.file) {
-          let base64 = res.file;
-          this.base64ToBlob({
-            b64data: base64,
-            contentType: "application/pdf",
-          }).then((res) => {
-            this.dialogVisible = true;
-            // 杞悗鍚庣殑blob瀵硅薄
-            try {
-              this.url = res.preview;
-            } catch (error) {
-              this.url = window.webkitURL.createObjectURL(res.preview);
+        if (res.code == 200) {
+          this.open2 = false;
+          this.$modal.msgSuccess("绛惧埌鎴愬姛");
+          if (res.file) {
+            let base64 = res.file;
+            this.base64ToBlob({
+              b64data: base64,
+              contentType: "application/pdf",
+            }).then((res) => {
+              this.dialogVisible = true;
+              // 杞悗鍚庣殑blob瀵硅薄
+              try {
+                this.url = res.preview;
+              } catch (error) {
+                this.url = window.webkitURL.createObjectURL(res.preview);
+              }
+            });
+          } else {
+            let _this = this;
+            this.$nextTick(() => {
+              // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+              loadingInstance1.close();
+            });
+            var websocket = null;
+            var url = _this.valueUrls;
+            if ("WebSocket" in window) {
+              websocket = new WebSocket(url);
+            } else if ("MozWebSocket" in window) {
+              websocket = new MozWebSocket(url);
+            } else {
             }
-          });
-        }else{
-          let _this = this;
-        var websocket = null;
-        var url = _this.valueUrls;
-        if ("WebSocket" in window) {
-          websocket = new WebSocket(url);
-        } else if ("MozWebSocket" in window) {
-          websocket = new MozWebSocket(url);
-        } else {
-        }
-        if (websocket == null) {
-          alert("11111");
-        }
-        websocket.onopen = function () {
-          try {
-            // 杩炴帴璁惧
-            var jsonObjs = {
-              type: 4,
-              data: res,
-            };
-            var jStrs = JSON.stringify(jsonObjs);
-            websocket.send(jStrs);
-          } catch (err) {
-            var tryTime = 0;
-            // 閲嶈瘯10娆★紝姣忔涔嬮棿闂撮殧3绉�
-            if (tryTime < 1) {
-              var t1 = setTimeout(function () {
-                tryTime++;
+            if (websocket == null) {
+              alert("11111");
+            }
+            websocket.onopen = function () {
+              console.log("res", res);
+
+              try {
+                // 杩炴帴璁惧
                 var jsonObjs = {
                   type: 4,
                   data: res,
                 };
                 var jStrs = JSON.stringify(jsonObjs);
                 websocket.send(jStrs);
-              }, 1 * 1000);
-            } else {
-              console.error("閲嶈繛澶辫触.");
-            }
-          }
-        };
-        websocket.onclose = function () {
-          alert("杩炴帴鍏抽棴");
-        };
-        websocket.onmessage = function (event) {
-          var resultObj = JSON.parse(event.data);
-          _this.cardreader = false;
-        };
+              } catch (err) {
+                var tryTime = 0;
+                // 閲嶈瘯10娆★紝姣忔涔嬮棿闂撮殧3绉�
+                if (tryTime < 1) {
+                  var t1 = setTimeout(function () {
+                    tryTime++;
+                    var jsonObjs = {
+                      type: 4,
+                      data: res,
+                    };
+                    var jStrs = JSON.stringify(jsonObjs);
+                    websocket.send(jStrs);
+                  }, 1 * 1000);
+                } else {
+                  console.error("閲嶈繛澶辫触.");
+                }
+              }
+            };
+            websocket.onclose = function () {
+              alert("杩炴帴鍏抽棴");
+            };
+            websocket.onmessage = function (event) {
+              var resultObj = JSON.parse(event.data);
+              _this.cardreader = false;
+            };
 
-        //杩炴帴鍙戠敓閿欒鐨勫洖璋冩柟娉�
-        websocket.onerror = function () {
-          alert("璇锋鏌ヨ繛鎺ユ槸鍚︽甯�");
-        };
-     
-    
-          this.getList()
+            //杩炴帴鍙戠敓閿欒鐨勫洖璋冩柟娉�
+            websocket.onerror = function () {
+              alert("璇锋鏌ヨ繛鎺ユ槸鍚︽甯�");
+            };
+
+            this.getList();
+          }
+        } else {
+          this.$nextTick(() => {
+            // 浠ユ湇鍔$殑鏂瑰紡璋冪敤鐨� Loading 闇�瑕佸紓姝ュ叧闂�
+            loadingInstance1.close();
+          });
         }
       });
     },
-
 
     base64ToBlob({ b64data = "", contentType = "", sliceSize = 512 } = {}) {
       return new Promise((resolve, reject) => {
@@ -2912,12 +3147,19 @@
       if (this.formIn.timeRegion === "11:00-12:00") {
         this.formIn.timeRegion = 3;
       }
+      this.CompanyList.forEach((item) => {
+        if (item.drugManufacturerId === this.formIn.companyId) {
+          this.formIn.company = item.cnName;
+        }
+      });
+      
       let data;
       if (pacId) {
         data = {
           id: this.formIn.id,
           isExpire: this.formIn.isExpire,
           address: this.formIn.address,
+          companyId: this.formIn.companyId,
           company: this.formIn.company,
           department: this.formIn.department,
           discount: this.discount,
@@ -2927,7 +3169,7 @@
           name: this.formIn.name,
           nation: this.formIn.nation,
           pacId,
-          phoe: this.formIn.cusPhone,
+          phoe: this.formIn.phoe,
           reservationTime: this.formIn.reservationTime,
           sex: this.formIn.sex,
           timeRegion: this.formIn.timeRegion,
@@ -2944,6 +3186,7 @@
           id: this.formIn.id,
           isExpire: this.formIn.isExpire,
           address: this.formIn.address,
+          companyId: this.formIn.companyId,
           company: this.formIn.company,
           department: this.formIn.department,
           discount: this.discount,
@@ -2967,19 +3210,23 @@
         };
       }
       tjReappoint(data).then((res) => {
+        console.log("鎺ュ彛鍝嶅簲", res);
         if (res.code === 200) {
           this.$modal.msgSuccess("棰勭害鎴愬姛");
+          Object.assign(this.formIn, data);
+          this.getList();
+          this.$tab.refreshPage();
+          _this.drawer = false;
         }
-        _this.drawer = false;
       });
-      this.getList();
-      this.$tab.refreshPage();
+      // this.getList();
+      // this.$tab.refreshPage();
       // } else {
       //   this.$message.warning("璇烽�夋嫨鎮ㄨ浣撴鐨勫唴瀹�");
       // }
     },
     // 鏈�鍚庢彁浜ゆ寜閽�
-    submitPrice1() {
+    /*  submitPrice1() {
       let _this = this;
       if (_this.tableData1.length > 0) {
         if (this.tableData[0]) {
@@ -3033,7 +3280,7 @@
             id: this.formIn.id,
             isExpire: this.formIn.isExpire,
             address: this.formIn.address,
-            company: this.formIn.company,
+            companyId: this.formIn.companyId,
             department: this.formIn.department,
             discount: this.discount,
             email: this.formIn.email,
@@ -3066,7 +3313,7 @@
       } else {
         this.$message.warning("璇烽�夋嫨鎮ㄨ浣撴鐨勫唴瀹�");
       }
-    },
+    }, */
 
     // 鎾ら攢棰勭害路
     handleDelete(row) {
@@ -3195,8 +3442,6 @@
   overflow: hidden;
 }
 
-
-
 #printIframe::-webkit-scrollbar {
   width: 6px;
 }
@@ -3208,12 +3453,14 @@
   -moz-border-radius: 2em;
   border-radius: 2em;
 }
+
 .dialog-footer2 {
   width: 960px;
   height: 36px;
   display: flex;
   justify-content: center;
 }
+
 /* 淇敼 婊戝潡 */
 #printIframe::-webkit-scrollbar-thumb {
   background-color: #dcdfe6;

--
Gitblit v1.8.0