From a3350d3b221f68b00d7476b481455406cb6ddcc5 Mon Sep 17 00:00:00 2001
From: qx <1084500556@qq.com>
Date: 星期一, 14 七月 2025 09:18:42 +0800
Subject: [PATCH] qx

---
 src/views/system/info/index.vue |  246 ++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 181 insertions(+), 65 deletions(-)

diff --git a/src/views/system/info/index.vue b/src/views/system/info/index.vue
index d7a1525..de56ed4 100644
--- a/src/views/system/info/index.vue
+++ b/src/views/system/info/index.vue
@@ -3,9 +3,9 @@
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
       <el-row>
         <el-col :span="11">
-          <el-form-item label="鍗曚綅鍚嶇О" prop="company" style="display: flex;">
-            <el-select :remote-method="getRemoteData" v-model="queryParams.company" value-key="drugManufacturerId" remote
-              filterable placeholder="璇烽�夋嫨鍗曚綅鍚嶇О" clearable @change="searchSelect">
+          <el-form-item label="鍗曚綅鍚嶇О" prop="company" style="display: flex">
+            <el-select :remote-method="getRemoteData" v-model="queryParams.company" value-key="drugManufacturerId"
+              remote filterable placeholder="璇烽�夋嫨鍗曚綅鍚嶇О" clearable @change="searchSelect">
               <el-option v-for="dict in CompanyList" :key="dict.drugManufacturerId" :label="dict.cnName"
                 :value="dict.drugManufacturerId" />
             </el-select>
@@ -13,13 +13,12 @@
         </el-col>
         <el-col :span="6">
           <el-form-item>
-            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"
+              style="margin: 0 15px">鏌ヨ</el-button>
             <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
           </el-form-item>
         </el-col>
-
       </el-row>
-
 
       <!-- <el-form-item label="浜ゆ槗閲戦" prop="transactionAmount">
                 <el-input v-model="queryParams.transactionAmount" placeholder="璇疯緭鍏ヤ氦鏄撻噾棰�" clearable
@@ -41,7 +40,6 @@
             <el-form-item label="鏀舵浜�" prop="payee">
                 <el-input v-model="queryParams.payee" placeholder="璇疯緭鍏ユ敹娆句汉" clearable @keyup.enter.native="handleQuery" />
             </el-form-item> -->
-
     </el-form>
 
     <!-- <el-row :gutter="10" class="mb8">
@@ -74,49 +72,105 @@
       <el-table-column label="閮ㄩ棬" align="center" prop="pacName" />
       <el-table-column label="棰勬浜烘暟" align="center" prop="count" />
       <el-table-column label="瀹炴浜烘暟" align="center" prop="sjCount" />
+        <el-table-column label="宸茬粨浜烘暟" align="center" prop="yjsrs" />
       <el-table-column label="搴旀敹閲戦" align="center" prop="copeWith" />
       <el-table-column label="绛剧害閲戦" align="center" prop="signingPrice">
       </el-table-column>
       <el-table-column label="宸蹭粯閲戦" align="center" prop="transactionAmount" />
       <el-table-column label="宸" align="center" prop="difference" />
       <el-table-column label="绛剧害浜�" align="center" prop="payer" />
-      <el-table-column label="棰勭害鏃堕棿" align="center" prop="createTime" />
+      <el-table-column label="棰勭害鏃堕棿" align="center" prop="createTime" :formatter="formatDate" />
     </el-table>
 
+   
+    <div >
+      <el-radio-group v-model="jcStatus" @change="radioChange" style="margin-left: 20px; margin-top: 20px">
+        <el-radio-button label="0">宸叉鏈粨璐︿汉鍛�</el-radio-button>
+        <el-radio-button label="1">鏈浜哄憳</el-radio-button>
+        <el-radio-button label="2">鍏ㄩ儴浜哄憳</el-radio-button>
+      </el-radio-group>
 
-    <el-form :inline="true" :model="formInline" class="demo-form-inline" style="margin: 12px 6px" label-width="100px">
+       <el-form :inline="true" :model="formInline" class="demo-form-inline" style="margin: 12px 6px" label-width="100px">
       <el-row>
-        <el-col :span="6">
-          <el-form-item label="璐熻矗浜�" style="display: flex;">
+        <el-col :span="5">
+          <el-form-item label="璐熻矗浜�" style="display: flex">
             <el-input v-model="formInline.payer" placeholder="鍗曚綅璐熻矗浜�"></el-input>
           </el-form-item>
         </el-col>
-        <el-col :span="7">
-          <el-form-item label="浜ゆ槗閲戦" style="display: flex;">
+        <el-col :span="6">
+          <el-form-item label="浜ゆ槗閲戦" style="display: flex">
             <el-input v-model="formInline.price" placeholder="閲戦"></el-input>
           </el-form-item>
         </el-col>
-        <el-col :span="7">
-          <el-form-item label="浜ゆ槗绫诲瀷" prop="payType" style="display: flex;">
+        <el-col :span="6">
+          <el-form-item label="浜ゆ槗绫诲瀷" prop="payType" style="display: flex">
             <el-select v-model="formInline.payType" placeholder="璇烽�夋嫨浜ゆ槗绫诲瀷">
               <el-option v-for="dict in dict.type.dict_pay_type" :key="dict.value" :label="dict.label"
                 :value="dict.value"></el-option>
             </el-select>
           </el-form-item>
         </el-col>
-        <el-col :span="7">
-          <el-form-item>
-            <el-button type="primary" size="mini" @click="SubmitEvent">鏀惰垂</el-button>
-            <el-button type="primary" size="mini" @click="handleDelete">閫�璐�</el-button>
+        <el-col :span="4">
+          <el-form-item style="display: flex">
+            <el-button type="primary" size="mini" @click="SubmitEvent" style="margin: 0 15px">缁撹处</el-button>
           </el-form-item>
         </el-col>
+        <!-- <el-col :span="7">
+          <el-form-item>
+            <el-button
+              type="primary"
+              size="mini"
+              @click="SubmitEvent"
+              style="margin: 0 15px"
+              >鏀惰垂</el-button
+            >
+            <el-button type="primary" size="mini" @click="handleDelete"
+              >閫�璐�</el-button
+            >
+          </el-form-item>
+        </el-col> -->
       </el-row>
     </el-form>
 
+
+     
+    </div>
+
     <el-row :gutter="20">
+       <!-- <el-form :model="queryParams1" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"
+        style="margin-top: 20px; margin-right: 22%;">
+        <el-form-item label="缁撹处鏃堕棿">
+          <el-date-picker clearable v-model="queryParams1.reservationTime" type="date" value-format="yyyy-MM-dd"
+            placeholder="璇烽�夋嫨缁撹处鏃堕棿">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item>
+          <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery1"
+            style="margin: 0 15px">鏌ヨ</el-button>
+          <el-button icon="el-icon-refresh" size="mini" @click="resetQuery1">閲嶇疆</el-button>
+        </el-form-item>
+      </el-form> -->
+      <el-col :span="12" :xs="24" style="padding: 0px 20px">
+        <div class="tj">
+          <span class="tj_txt">浣撴浜哄憳鎯呭喌琛�</span>
+        </div>
+
+        <el-table v-loading="loadings" :data="peopleList" border max-height="260px" @selection-change="handlepeopleListChange">
+          <el-table-column type="selection" width="55" align="center" />
+          <el-table-column label="濮撳悕" align="center" prop="name" width="100" />
+          <el-table-column label="鎬у埆" align="center" prop="xb" width="80" />
+          <el-table-column label="鐢佃瘽" align="center" prop="dh" width="120" />
+                    <el-table-column label="閲戦" align="center" prop="tjf" width="120" />
+
+          <el-table-column label="鐘舵��" align="center" prop="tjStatus" width="80" />
+          <el-table-column label="浣撴鏃堕棿" align="center" prop="tjTime">
+          </el-table-column>
+        </el-table>
+      </el-col>
+
       <el-col :span="12" :xs="24">
         <div class="tj">
-          <span class="tj_txt">宸茬即璐硅褰�</span>
+          <span class="tj_txt">宸茬粨璐﹁褰�</span>
         </div>
 
         <el-table v-loading="loading" :data="dataList" border max-height="260px">
@@ -125,19 +179,11 @@
           <el-table-column label="浜ゆ槗浜哄憳" align="center" prop="payer" />
           <el-table-column label="鎿嶄綔浜哄憳" align="center" prop="payee">
           </el-table-column>
-          <el-table-column label="鎿嶄綔鏃堕棿" align="center" prop="createTime" />
-        </el-table>
-      </el-col>
-      <el-col :span="12" :xs="24" style="padding: 0px 20px;">
-        <div class="tj">
-          <span class="tj_txt">浣撴浜哄憳鎯呭喌琛�</span>
-        </div>
-
-        <el-table v-loading="loading" :data="peopleList" border max-height="260px">
-          <el-table-column label="搴忓彿" align="center" prop="newID" />
-          <el-table-column label="濮撳悕" align="center" prop="name" />
-          <el-table-column label="鐘舵��" align="center" prop="tjStatus" />
-          <el-table-column label="浣撴鏃堕棿" align="center" prop="tjTime">
+          <el-table-column label="缁撹处鏃堕棿" align="center" prop="createTime" />
+          <el-table-column label="鎿嶄綔" align="center">
+            <template>
+              <el-button type="primary">鎾ら攢缁撹处</el-button>
+            </template>
           </el-table-column>
         </el-table>
       </el-col>
@@ -147,7 +193,11 @@
 
 <script>
 import { getInfo } from "@/api/login";
-import { getCompany, queryCompany, getTeamTjPeopleList } from "@/api/team/tuanti";
+import {
+  getCompany,
+  queryCompany,
+  getTeamTjPeopleList,
+} from "@/api/team/tuanti";
 
 import {
   listInfo,
@@ -161,15 +211,28 @@
   name: "Info",
   dicts: ["dict_pay_type"],
   data() {
+    let checkPhoneNum = (rule, value, callback) => {
+      let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/);
+      if (value == "" && value == undefined && !value) {
+        return callback("");
+      } else if (value != undefined && value != "") {
+        return callback();
+      } else if (!patter.test(value)) {
+        return callback("");
+      }
+    };
     return {
       // 缁戝畾鍗曢�夋寜閽�
       tjStatus: "0",
+      jcStatus: 0,
       formInline: {
         payer: "",
         price: "",
       },
       // 閬僵灞�
       loading: true,
+       // 閬僵灞�
+      loadings: false,
       // 閫変腑鏁扮粍
       ids: [],
       // 闈炲崟涓鐢�
@@ -184,6 +247,7 @@
       // 浣撴鍗曚綅缂磋垂鏄庣粏琛ㄦ牸鏁版嵁
       infoList: [],
       copeWith: "",
+      pacIds: "",
       transactionAmount: "",
       dataList: [],
       tableList: [],
@@ -208,10 +272,17 @@
         payer: null,
         payee: null,
       },
+      queryParams1: {
+        reservationTime: null
+      },
       // 琛ㄥ崟鍙傛暟
       form: {},
       // 琛ㄥ崟鏍¢獙
-      rules: {},
+      rules: {
+        reservationTime: [
+          { required: true, validator: checkPhoneNum, trigger: "change" },
+        ],
+      },
     };
   },
   created() {
@@ -219,6 +290,14 @@
   },
   methods: {
     /** 鏌ヨ浣撴鍗曚綅缂磋垂鏄庣粏鍒楄〃 */
+    formatDate(row) {
+      if (!row.createTime) return "";
+      const date = new Date(row.createTime);
+      const year = date.getFullYear();
+      const month = (date.getMonth() + 1).toString().padStart(2, "0");
+      const day = date.getDate().toString().padStart(2, "0");
+      return `${year}-${month}-${day}`;
+    },
     getList() {
       // this.loading = true;
       // listInfo(this.queryParams).then(response => {
@@ -241,6 +320,34 @@
     // 閫夋鏁版嵁
     searchSelect(val) {
       this.compId = val;
+    },
+
+    radioChange(val) { 
+      this.peopleList = []
+      this.loadings = true
+       let data = {
+          teamNo: this.teamNo,
+          pacId: this.pacIds
+        }
+        getTeamTjPeopleList(data).then((res) => {
+          if (res.data) {
+            if (this.jcStatus == 0) {
+              this.peopleList = res.data.yjwjzList;
+               
+            } else if (this.jcStatus == 1) {
+              this.peopleList = res.data.wjList;
+            } else {
+              this.peopleList = res.data.syList;
+            }
+           
+          }
+           this.loadings = false
+        });
+    },
+
+
+    handlepeopleListChange(selection){
+      console.log(selection)
     },
 
     // 浣撴鍏徃鎷奸煶鎼滅储
@@ -276,18 +383,18 @@
       listInfo(this.compId).then((response) => {
         this.infoList = response.data;
         if (this.infoList.length != 0) {
-          this.infoList.forEach((item) => {
-            this.$nextTick(() => {
-              this.$refs.tb.toggleRowSelection(item, true);
-            });
+          // this.infoList.forEach((item) => {
+          this.$nextTick(() => {
+            this.$refs.tb.toggleRowSelection(this.infoList[0], true);
           });
+          // });
         } else {
           this.$refs.tb.clearSelection();
         }
         this.infoList.forEach((item) => {
           this.copeWith = item.copeWith;
           this.transactionAmount = item.transactionAmount;
-          this.formInline.price = item.copeWith - item.transactionAmount;
+          
           if (item.payInfo != null) {
             this.tjCompPayId = item.payInfo.tjCompPayId;
           }
@@ -313,6 +420,13 @@
         this.loading = false;
       });
     },
+    handleQuery1() {
+
+    },
+    resetQuery1() {
+      this.resetForm("queryForm1");
+      this.handleQuery1();
+    },
     /** 閲嶇疆鎸夐挳鎿嶄綔 */
     resetQuery() {
       this.resetForm("queryForm");
@@ -320,13 +434,21 @@
     },
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
+      if (selection.length > 1) {
+        let del_row = selection.shift();
+        this.$refs.tb.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
+      }
+      // this.ids = selection.map((item) => item.id);
+      // this.single = selection.length !== 1;
+      // this.multiple = !selection.length;
       this.tableList = selection;
-      this.teamNo = ""
+      this.teamNo = "";
+      this.pacIds = "";
       this.tableList.forEach((item) => {
-        this.teamNo = item.teamNo
+        this.teamNo = item.teamNo;
+        this.pacIds = item.pacId
         this.copeWith = item.copeWith;
         this.transactionAmount = item.transactionAmount;
-        this.formInline.price = item.copeWith - item.transactionAmount;
         if (item.payInfo != null) {
           this.tjCompPayId = item.payInfo.tjCompPayId;
         }
@@ -347,27 +469,26 @@
           });
         }
       });
+      this.loadings = true
       if (this.teamNo) {
-        getTeamTjPeopleList(this.teamNo).then(res => {
+        let data = {
+          teamNo: this.teamNo,
+          pacId: this.pacIds
+        }
+        getTeamTjPeopleList(data).then((res) => {
           if (res.data) {
-            this.peopleList = res.data
-            res.data.forEach((item, index) => {
-              item.newID =
-                (this.queryParams.pageNum - 1) * this.queryParams.pageSize +
-                index +
-                1;
-            });
+            if (this.jcStatus == 0) {
+              this.peopleList = res.data.yjwjzList;
+            } else if (s.jcStatus == 1) {
+              this.peopleList = res.data.wjList;
+            } else {
+              this.peopleList = res.data.syList
+                ;
+            }
           }
-
-        })
+           this.loadings = false
+        });
       }
-      if (selection.length > 1) {
-        let del_row = selection.shift();
-        this.$refs.tb.toggleRowSelection(del_row, false); //璁剧疆杩欎竴琛屽彇娑堥�変腑
-      }
-      this.ids = selection.map((item) => item.id);
-      this.single = selection.length !== 1;
-      this.multiple = !selection.length;
     },
     /** 鏂板鎸夐挳鎿嶄綔 */
     // handleAdd() {
@@ -376,13 +497,9 @@
     //   this.title = "娣诲姞浣撴鍗曚綅缂磋垂鏄庣粏";
     // },
 
-    // 鍗曢�夋寜閽�
-    radioChange(val) { },
-
     /** 鏀惰垂鎻愪氦鎸夐挳 */
     SubmitEvent() {
       if (this.formInline.price != 0) {
-
         let data = {
           paymentMethod: this.formInline.payType,
           transactionAmount: this.formInline.price,
@@ -398,7 +515,6 @@
           const params = { viewNum, tjnumber };
           this.$tab.openPage("鍥㈡灏忕エ", "/report/charge", params);
         });
-
       } else {
         this.$message.error("浜ゆ槗閲戦涓嶈兘涓�0");
       }

--
Gitblit v1.8.0