From 1e487a42549384f6e937a5c7d557563aedafec2c Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期三, 20 三月 2024 18:41:29 +0800
Subject: [PATCH] 11

---
 src/views/project/indexstatistics/index.vue |  307 ++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 216 insertions(+), 91 deletions(-)

diff --git a/src/views/project/indexstatistics/index.vue b/src/views/project/indexstatistics/index.vue
index f6057db..7c1a8e9 100644
--- a/src/views/project/indexstatistics/index.vue
+++ b/src/views/project/indexstatistics/index.vue
@@ -2,12 +2,12 @@
   <div class="app-container" style="background-color: #f2f2f2; color: #fff">
     <el-card shadow="always" style="color: #566f94">
       <el-row :gutter="8">
-        <el-col :span="6">
+        <el-col :span="8">
           <el-date-picker
             v-model="selecttime"
             type="monthrange"
             range-separator="鑷�"
-            start-placeholder="寮�濮嬫湀浠�"
+            start-placeholder="寮�濮嬫湀浠斤紙榛樿鏈勾搴︼級"
             end-placeholder="缁撴潫鏈堜唤"
             value-format="yyyy-MM-dd"
             @change="getTimeList"
@@ -61,15 +61,15 @@
       <div style="width: 76%;">
         <el-row
           :gutter="10"
-          style="font-size: 16px; font-weight: bold;  margin-top: 10px"
+          style="font-size: 18px; font-weight: bold;  margin-top: 10px"
         >
           <el-col :span="6">
             <router-link
               :to="{
                 name: 'Donatebaseinfo',
                 params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
+                  starttime: starttime,
+                  endtime: endtime,
                   tempRecordState: '',
                   reporterno: reportervalue,
                   shen: searchAddress.shen,
@@ -85,7 +85,7 @@
               <!-- @click="tobaseinfo0" -->
               <el-card shadow="always" style="color: #566f94">
                 <svg-icon icon-class="user" />&nbsp;&nbsp; 娼滃湪鎹愮尞绱锛歿{
-                  this.donateNumData.numberOfDonate
+                  donateNumData.numberOfDonate
                 }}&nbsp; 渚�
               </el-card>
             </router-link>
@@ -95,8 +95,8 @@
               :to="{
                 name: 'Medicalevaluation',
                 params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
+                  starttime: starttime,
+                  endtime: endtime,
                   tempRecordState: '',
                   reporterno: reportervalue,
                   shen: searchAddress.shen,
@@ -112,7 +112,7 @@
                 @click="Tomedicalevalua"
               >
                 <svg-icon icon-class="tool" />&nbsp;&nbsp; 瀹屾垚鍖诲璇勪及绱锛歿{
-                  this.donateNumData.numberOfMedicalEvaluation
+                  donateNumData.numberOfMedicalEvaluation
                 }}&nbsp; 渚�
               </el-card>
             </router-link>
@@ -122,8 +122,8 @@
               :to="{
                 name: 'Relativesconfirmation',
                 params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
+                  starttime: starttime,
+                  endtime: endtime,
                   tempRecordState: '',
                   reporterno: reportervalue,
                   shen: searchAddress.shen,
@@ -136,7 +136,7 @@
               <el-card shadow="always" style="color: #566f94">
                 <svg-icon icon-class="checkbox" />&nbsp;&nbsp;
                 瀹屾垚浜插睘纭绱锛歿{
-                  this.donateNumData.numberOfRelativeConfirmation
+                  donateNumData.numberOfRelativeConfirmation
                 }}&nbsp; 渚�
               </el-card>
             </router-link>
@@ -146,8 +146,8 @@
               :to="{
                 name: 'EthicalReview',
                 params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
+                  starttime: starttime,
+                  endtime: endtime,
                   tempRecordState: '',
                   reporterno: reportervalue,
                   shen: searchAddress.shen,
@@ -160,7 +160,7 @@
               <el-card shadow="always" style="color: #566f94">
                 <svg-icon icon-class="education" />&nbsp;&nbsp;
                 瀹屾垚浼︾悊瀹℃煡绱锛歿{
-                  this.donateNumData.numberOfEthicalReview
+                  donateNumData.numberOfEthicalReview
                 }}&nbsp; 渚�
               </el-card>
             </router-link>
@@ -171,36 +171,20 @@
           style="margin-top: 10px; font-size: 18px;  font-weight: bold"
         >
           <el-col :span="6">
-            <router-link
-              :to="{
-                name: 'Organallocation',
-                params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
-                  tempRecordState: '',
-                  reporterno: reportervalue,
-                  shen: searchAddress.shen,
-                  shi: searchAddress.shi,
-                  qu: searchAddress.qu,
-                  city: city
-                }
-              }"
-            >
-              <el-card shadow="always" style="color: #566f94">
-                <svg-icon icon-class="druid" />&nbsp;&nbsp; 瀹屾垚鍣ㄥ畼鍒嗛厤绱锛歿{
-                  this.donateNumData.numberOfDonatePeople
-                }}&nbsp; 涓�
-                <!-- this.donateNumData.numberOfOrgans -->
-              </el-card>
-            </router-link>
+            <el-card shadow="always" style="color: #566f94">
+              <svg-icon icon-class="druid" />&nbsp;&nbsp; 瀹屾垚鍣ㄥ畼鍒嗛厤绱锛歿{
+                donateNumData.numberOfDonatePeople
+              }}&nbsp; 涓�
+              <!-- donateNumData.numberOfOrgans -->
+            </el-card>
           </el-col>
           <el-col :span="6">
             <router-link
               :to="{
                 name: 'Donationwitness',
                 params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
+                  starttime: starttime,
+                  endtime: endtime,
                   tempRecordState: '',
                   reporterno: reportervalue,
                   shen: searchAddress.shen,
@@ -212,7 +196,7 @@
             >
               <el-card shadow="always" style="color: #566f94">
                 <svg-icon icon-class="job" />&nbsp;&nbsp; 瀹屾垚鑾峰彇瑙佽瘉绱锛歿{
-                  this.donateNumData.numberOfWitness
+                  donateNumData.numberOfWitness
                 }}&nbsp; 渚�
               </el-card>
             </router-link>
@@ -222,8 +206,8 @@
               :to="{
                 name: 'Donatefinish',
                 params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
+                  starttime: starttime,
+                  endtime: endtime,
                   tempRecordState: '',
                   reporterno: reportervalue,
                   shen: searchAddress.shen,
@@ -235,7 +219,7 @@
             >
               <el-card shadow="always" style="color: #566f94">
                 <svg-icon icon-class="lock" />&nbsp;&nbsp; 鎹愮尞瀹屾垚绱锛歿{
-                  this.donateNumData.numberOfCompletion
+                  donateNumData.numberOfCompletion
                 }}&nbsp; 渚�
               </el-card>
             </router-link>
@@ -246,8 +230,8 @@
               :to="{
                 name: 'Donatebaseinfo',
                 params: {
-                  starttime: this.starttime,
-                  endtime: this.endtime,
+                  starttime: starttime,
+                  endtime: endtime,
                   tempRecordState: 99,
                   reporterno: reportervalue,
                   shen: searchAddress.shen,
@@ -259,7 +243,7 @@
             >
               <el-card shadow="always" style="color: #566f94">
                 <svg-icon icon-class="lock" />&nbsp;&nbsp; 鎹愮尞缁堟绱锛歿{
-                  this.donateNumData.numberOfTerminated
+                  donateNumData.numberOfTerminated
                 }}&nbsp; 渚�
               </el-card>
             </router-link>
@@ -284,9 +268,7 @@
                     style="padding: 0; margin: 0; width: 100%; color: #566f94"
                   >
                     鍣ㄥ畼鎹愮尞杞寲鐜�<br />
-                    {{
-                      (this.qualirtData.donateTransferRate * 100).toFixed(2)
-                    }}%
+                    {{ (qualirtData.donateTransferRate * 100).toFixed(2) }}%
                   </el-card>
                 </el-col>
                 <el-col :span="8" style="text-align: center">
@@ -295,9 +277,7 @@
                     style="padding: 0; margin: 0; width: 100%; color: #566f94"
                   >
                     骞冲潎鍣ㄥ畼浜у嚭鐜�<br />
-                    {{
-                      (this.qualirtData.organProductionRate * 100).toFixed(2)
-                    }}%
+                    {{ (qualirtData.organProductionRate * 100).toFixed(2) }}%
                   </el-card>
                 </el-col>
                 <el-col :span="8" style="text-align: center">
@@ -306,7 +286,7 @@
                     style="padding: 0; margin: 0; width: 100%; color: #566f94"
                   >
                     鑾峰彇鍣ㄥ畼鍒╃敤鐜�<br />
-                    {{ (this.qualirtData.organUsedRate * 100).toFixed(2) }}%
+                    {{ (qualirtData.organUsedRate * 100).toFixed(2) }}%
                   </el-card>
                 </el-col>
               </el-row>
@@ -317,17 +297,15 @@
                     <el-row :gutter="10" style="margin-top: 10px">
                       <el-col :span="8" style="text-align: center"
                         >DBD:
-                        {{ (this.qualirtData.dbddonateRate * 100).toFixed(2) }}%
+                        {{ (qualirtData.dbddonateRate * 100).toFixed(2) }}%
                       </el-col>
                       <el-col :span="8" style="text-align: center">
                         DCD:
-                        {{ (this.qualirtData.dcddonateRate * 100).toFixed(2) }}%
+                        {{ (qualirtData.dcddonateRate * 100).toFixed(2) }}%
                       </el-col>
                       <el-col :span="8" style="text-align: center">
                         DBCD:
-                        {{
-                          (this.qualirtData.dbcddonateRate * 100).toFixed(2)
-                        }}%
+                        {{ (qualirtData.dbcddonateRate * 100).toFixed(2) }}%
                       </el-col>
                     </el-row>
                   </el-card>
@@ -343,9 +321,7 @@
                       <span style="font-size: 14px"> 鑾峰彇鍓嶆椿妫�鐜�</span>
                     </el-row>
                     {{
-                      (this.qualirtData.organBeforeGetCheckRate * 100).toFixed(
-                        2
-                      )
+                      (qualirtData.organBeforeGetCheckRate * 100).toFixed(2)
                     }}%
                   </el-card>
                 </el-col>
@@ -357,11 +333,7 @@
                     <el-row>
                       <span style="font-size: 14px">鑾峰彇鍚庢椿妫�鐜�</span>
                     </el-row>
-                    {{
-                      (this.qualirtData.organAfterGetCheckRate * 100).toFixed(
-                        2
-                      )
-                    }}%
+                    {{ (qualirtData.organAfterGetCheckRate * 100).toFixed(2) }}%
                   </el-card>
                 </el-col>
               </el-row>
@@ -372,7 +344,7 @@
                     style="padding: 0; margin: 0; width: 100%; color: #566f94"
                   >
                     <span style="font-size: 14px">杈圭紭渚涘櫒瀹樻瘮鐜�</span><br />
-                    {{ (this.qualirtData.marginOrganRate * 100).toFixed(2) }}%
+                    {{ (qualirtData.marginOrganRate * 100).toFixed(2) }}%
                   </el-card>
                 </el-col>
                 <el-col :span="12" style="text-align: center">
@@ -382,8 +354,8 @@
                   >
                     <span style="font-size: 14px"
                       >鍣ㄥ畼淇濆瓨娑茬梾鍘熻弻鍩瑰吇闃虫�х巼</span
-                    >
-                    {{ (this.qualirtData.germPositiveRate * 100).toFixed(2) }}%
+                    ><br />
+                    {{ (qualirtData.germPositiveRate * 100).toFixed(2) }}%
                   </el-card>
                 </el-col>
               </el-row>
@@ -395,21 +367,19 @@
                       <el-row>
                         <el-col :span="6" style="text-align: center">
                           鎬诲彂鐢熺巼<br />
-                          {{
-                            (this.qualirtData.totalPNFRate * 100).toFixed(2)
-                          }}%
+                          {{ (qualirtData.totalPNFRate * 100).toFixed(2) }}%
                         </el-col>
                         <el-col :span="6" style="text-align: center">
                           DBD<br />
-                          {{ (this.qualirtData.dbdpnfrate * 100).toFixed(2) }}%
+                          {{ (qualirtData.dbdpnfrate * 100).toFixed(2) }}%
                         </el-col>
                         <el-col :span="6" style="text-align: center">
                           DCD<br />
-                          {{ (this.qualirtData.dcdpnfrate * 100).toFixed(2) }}%
+                          {{ (qualirtData.dcdpnfrate * 100).toFixed(2) }}%
                         </el-col>
                         <el-col :span="6" style="text-align: center">
                           DBCD<br />
-                          {{ (this.qualirtData.dbcdpnfrate * 100).toFixed(2) }}%
+                          {{ (qualirtData.dbcdpnfrate * 100).toFixed(2) }}%
                         </el-col>
                       </el-row>
                     </el-row>
@@ -424,22 +394,22 @@
                       <el-row>
                         <el-col :span="6" style="text-align: center">
                           鎬诲彂鐢熺巼<br />{{
-                            (this.qualirtData.totalDGFRate * 100).toFixed(2)
+                            (qualirtData.totalDGFRate * 100).toFixed(2)
                           }}%
                         </el-col>
                         <el-col :span="6" style="text-align: center">
                           DBD<br />{{
-                            (this.qualirtData.dbddgfrate * 100).toFixed(2)
+                            (qualirtData.dbddgfrate * 100).toFixed(2)
                           }}%
                         </el-col>
                         <el-col :span="6" style="text-align: center">
                           DCD<br />{{
-                            (this.qualirtData.dcddgfrate * 100).toFixed(2)
+                            (qualirtData.dcddgfrate * 100).toFixed(2)
                           }}%
                         </el-col>
                         <el-col :span="6" style="text-align: center">
                           DBCD<br />{{
-                            (this.qualirtData.dbcddgfrate * 100).toFixed(2)
+                            (qualirtData.dbcddgfrate * 100).toFixed(2)
                           }}%
                         </el-col>
                       </el-row>
@@ -475,17 +445,86 @@
           </el-col>
         </el-row>
       </div>
-      <div style="width: 24%; margin-top: 10px; padding-left: 10px;">
-        <el-card class="box-card" style="padding: 0; font-weight: bold; height: 780px">
+      <div style="width: 24%; margin-top: 10px; padding-left: 10px; ">
+        <el-card
+          class="box-card"
+          style="padding: 0; font-weight: bold; height: 780px; "
+        >
           <div slot="header" class="clearfix">
-            <span style="font-size: 18px; color: #566f94; font-weight: bold">娑堟伅鍒楄〃</span>
-            <el-button style="float: right; padding: 3px 0" type="text"
-              >鍏ㄩ儴宸茶</el-button
+            <span style="font-size: 18px; color: #566f94; font-weight: bold"
+              >娑堟伅鍒楄〃</span
+            >
+            <el-button
+              v-if="ReadState == 1"
+              style="float: right; padding: 6px "
+              type="danger"
+              plain
+              @click="FnReadState"
+              >鏌ョ湅鏈娑堟伅</el-button
+            >
+            <el-button
+              v-else
+              style="float: right; padding: 6px "
+              type="info"
+              plain
+              @click="FnReadState"
+              >鏌ョ湅宸茶娑堟伅</el-button
             >
           </div>
-          <div v-for="o in 4" :key="o" class="text item">
-            {{ "鍒楄〃鍐呭 " + o }}
+          <div style="height: 606px;overflow: auto;">
+            <el-table :data="tableData" v-loading="loading" style="width: 100%">
+              <el-table-column label="閫氱煡鏃ユ湡">
+                <template slot-scope="scope">
+                  <i class="el-icon-time"></i>
+                  <span style="margin-left: 10px">{{
+                    scope.row.createTime
+                  }}</span>
+                </template>
+              </el-table-column>
+              <el-table-column label="姒傝">
+                <template slot-scope="scope">
+                  <el-popover trigger="hover" placement="top">
+                    <div class="dialog-class" style="margin: 20px;">
+                      <div>{{ scope.row.messagecontent }}</div>
+                      <div style=" height: 100px;margin-top: 40px;">
+                        <span>{{ "澶勭悊浜猴細" + scope.row.sendusername }}</span>
+                        <div>{{ "澶勭悊鏃堕棿锛�" + scope.row.updateTime }}</div>
+                      </div>
+                      <div style="text-align: right; ; margin: 0">
+                        <el-button
+                          type="primary"
+                          size="mini"
+                          @click="clickMessageDetailed(scope.row)"
+                          >纭畾</el-button
+                        >
+                      </div>
+                    </div>
+                    <div slot="reference" class="name-wrapper">
+                      <el-tag size="medium">{{
+                        scope.row.messagetitle
+                      }}</el-tag>
+                    </div>
+                  </el-popover>
+                </template>
+              </el-table-column>
+              <el-table-column label="鐘舵��" align="center" prop="paystatus">
+                <template slot-scope="scope">
+                  <dict-tag
+                    :options="dict.type.sys_messagestatus"
+                    :value="scope.row.isread"
+                  />
+                </template>
+              </el-table-column>
+            </el-table>
           </div>
+
+          <pagination
+            v-show="total > 0"
+            :total="total"
+            :page.sync="searchData.pageNum"
+            :limit.sync="searchData.pageSize"
+            @pagination="GetMessageList"
+          />
         </el-card>
       </div>
     </div>
@@ -557,6 +596,13 @@
   getOrgansOfHospitalByMonth,
   getDonateorganSum
 } from "@/api/project/donateorgan";
+import { getUserProfile } from "@/api/system/user";
+import {
+  listSystemmessageList,
+  listSystemmessageCount,
+  updateSystemmessage
+} from "@/api/project/message";
+
 import Li_area_select from "@/components/Address";
 
 const DEF_TABLE_CONFIG = {
@@ -569,6 +615,7 @@
 
 export default {
   name: "home",
+  dicts: ["sys_messagestatus"],
   components: {
     RankChart,
     OrganNumChart,
@@ -579,7 +626,7 @@
     return {
       city: "",
       reportno: "",
-      selecttime: [],
+      selecttime: [ new Date(new Date().getFullYear(), 0),new Date()],
       year: "閫夋嫨骞翠唤",
       isloading: false,
       maxHeight: 0,
@@ -597,7 +644,18 @@
         { label: "鍙板窞甯�", value: "A" },
         { label: "涓芥按甯�", value: "B" }
       ],
+      ReadState: 1,
+      searchData: {
+        del_flag: 0,
+        receiveuserno: "",
+        isread: null,
+        pageNum: 1,
+        pageSize: 10
+      },
+      total: 0,
+      loading: false,
       value: "",
+      userID: "",
       //鏃堕棿閫夐」
       timeoption: "",
       //璧峰鏃堕棿
@@ -696,6 +754,28 @@
         //   value: 0,
         // },
       ],
+      tableData: [
+        {
+          date: "2016-05-02",
+          name: "鐜嬪皬铏�",
+          address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�"
+        },
+        {
+          date: "2016-05-04",
+          name: "鐜嬪皬铏�",
+          address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1517 寮�"
+        },
+        {
+          date: "2016-05-01",
+          name: "鐜嬪皬铏�",
+          address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1519 寮�"
+        },
+        {
+          date: "2016-05-03",
+          name: "鐜嬪皬铏�",
+          address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1516 寮�"
+        }
+      ],
       //缁熻鎸囨爣鏁版嵁
       qualirtData: {
         dbcddgfrate: 0,
@@ -760,6 +840,7 @@
   // listnewEthicalreviewopinions
   created() {
     // this.listnewMedicalevaluation()
+    this.GetUser();
   },
   mounted() {
     this.$nextTick(() => {
@@ -773,7 +854,53 @@
   },
   methods: {
     getprovincedata() {},
-
+    GetUser() {
+      this.loading = true;
+      getUserProfile()
+        .then(res => {
+          this.searchData.receiveuserno = res.data.userName;
+          this.GetMessageList();
+        })
+        .catch(error => {
+          this.$message.error(error);
+        });
+    },
+    GetMessageList() {
+      listSystemmessageList(this.searchData).then(res => {
+        if (res.code == 200) {
+          this.tableData = res.rows;
+          this.loading = false;
+          this.total = res.total;
+        }
+      });
+    },
+    // 纭畾宸茶
+    clickMessageDetailed(item) {
+      let data = item;
+      if (data.isread == 0) {
+        item.isread = 1;
+        updateSystemmessage(item)
+          .then(res => {
+            this.$message.success("宸茶");
+            this.GetMessageList();
+          })
+          .catch(error => {});
+      } else {
+        this.$message.info("姝ゆ秷鎭凡璇�");
+      }
+    },
+    // 鍒囨崲璇诲彇鐘舵��
+    FnReadState() {
+      if (this.ReadState == 1) {
+        this.searchData.isread = 0;
+        this.ReadState = 0;
+        this.GetMessageList();
+      } else {
+        this.searchData.isread = 1;
+        this.ReadState = 1;
+        this.GetMessageList();
+      }
+    },
     get_unix_time(dateStr) {
       var newstr = dateStr.replace(/-/g, "/");
       var date = new Date(newstr);
@@ -988,8 +1115,6 @@
       //     : "";
 
       let info = {
-        pageNum: 1,
-        pageSize: 10,
         starttime: this.starttime,
         endtime: this.endtime
 
@@ -1036,7 +1161,7 @@
       });
 
       //缁堟
-      info.recordstate = "99";
+      info.terminationCase = 1;
       listDonatebaseinfo(info).then(res => {
         this.donateNumData.numberOfTerminated = res.total;
       });

--
Gitblit v1.9.3