From cf9259c2ebee0e82c32864a1ee91d96c403b9099 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期日, 04 二月 2024 13:42:04 +0800
Subject: [PATCH] 指标完成

---
 src/views/patient/propaganda/particty.vue |  285 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 227 insertions(+), 58 deletions(-)

diff --git a/src/views/patient/propaganda/particty.vue b/src/views/patient/propaganda/particty.vue
index 70de25c..fcc98e2 100644
--- a/src/views/patient/propaganda/particty.vue
+++ b/src/views/patient/propaganda/particty.vue
@@ -14,6 +14,7 @@
             title="瀹f暀瀵硅薄"
             description="鍦ㄦ湰閮ㄩ�夋嫨瀹f暀鐥呬汉"
           ></el-step>
+          <el-step icon="el-icon-user" title="妯$増纭"></el-step>
         </el-steps>
       </div>
     </div>
@@ -35,20 +36,41 @@
             </div>
             <div class="jic-value">
               <el-form ref="form" :model="form" label-width="105px">
-                <el-form-item label="鍙戦�佹椂闂达細" v-if="currenttype != 2">
+                <el-form-item label="妯$増鍚嶇О锛�">
+                  <el-input
+                    :disabled="true"
+                    style="width: 220px"
+                    v-model="form.preachname"
+                    placeholder="璇峰湪涓嬫柟閫夋嫨"
+                  />
+                </el-form-item>
+                <el-form-item label="鍙戦�佽缃細" v-if="currenttype != 2">
+                  <el-radio-group v-model="radio">
+                    <el-radio :label="1">鏃堕棿娈靛彂閫�</el-radio>
+                    <el-radio :label="2">鏃堕棿鐐瑰彂閫�</el-radio>
+                    <el-radio :label="3">鍗冲埢鍙戦��</el-radio>
+                  </el-radio-group>
+                </el-form-item>
+                <el-form-item
+                  label="鍙戦�佹椂闂寸偣锛�"
+                  v-if="currenttype != 2 && radio == 2"
+                >
                   <el-date-picker
-                    v-model="form.name"
-                    type="date"
-                    placeholder="閫夋嫨鏃ユ湡"
+                    v-model="form.sendTime"
+                    type="datetime"
+                    placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+                    default-time="13:00:00"
                   >
                   </el-date-picker>
                 </el-form-item>
-                <el-form-item label="鍙戦�佹椂闂存锛�" v-if="currenttype != 2">
+                <el-form-item
+                  label="鍙戦�佹椂闂存锛�"
+                  v-if="currenttype != 2 && radio == 1"
+                >
                   <el-checkbox-group v-model="checkList">
                     <el-checkbox label="涓婂崍锛�8:30-11:30锛�"></el-checkbox>
                     <el-checkbox label="涓嬪崍锛�14:30-16:30锛�"></el-checkbox>
                     <el-checkbox label="澶滈棿锛�18:30-20:30锛�"></el-checkbox>
-                    <el-checkbox label="涓嶅畾鏃�"></el-checkbox>
                   </el-checkbox-group>
                 </el-form-item>
                 <el-form-item label="鏈嶅姟褰㈠紡">
@@ -60,18 +82,18 @@
                     ></el-checkbox>
                   </el-checkbox-group>
                 </el-form-item>
-                <el-form-item label="缁勭粐褰㈠紡">
+                <!-- <el-form-item label="缁勭粐褰㈠紡">
                   <el-radio-group v-model="form.radio">
                     <el-radio :label="3">鍗曚汉瀹f暀</el-radio>
                     <el-radio :label="6">澶氫汉闆嗕腑瀹f暀</el-radio>
                   </el-radio-group>
-                </el-form-item>
-                <el-form-item label="璇煶妯$増" prop="region">
+                </el-form-item> -->
+                <!-- <el-form-item label="璇煶妯$増" prop="region">
                   <el-select v-model="form.region" placeholder="璇烽�夋嫨妯$増">
                     <el-option label="涓�鍙锋ā鐗�" value="shanghai"></el-option>
                     <el-option label="浜屽彿妯$増" value="beijing"></el-option>
                   </el-select>
-                </el-form-item>
+                </el-form-item> -->
               </el-form>
             </div>
           </div>
@@ -242,9 +264,10 @@
                     @handleUpdate="handleUpdate"
                     @handleSelectionChange="handleSelectionChange"
                     :currentList="userList"
-                    :tableLabel="tableLabelxj"
+                    :tableLabel="tableLabel"
                     :controlsc="false"
                     :multiplechoice="false"
+                    :typeinfo="1"
                   />
                   <pagination
                     v-show="total > 0"
@@ -258,7 +281,7 @@
             </div>
           </div>
         </div>
-        <el-button type="success" @click="submitForm('ruleForm')">{{
+        <el-button type="success" @click="nextstep('ruleForm')">{{
           quote ? "绔嬪嵆鍒涘缓" : "浠诲姟璇︽儏璁剧疆"
         }}</el-button>
         <el-button @click="resetForm('ruleForm')">閲嶇疆</el-button>
@@ -269,6 +292,54 @@
         <el-alert title="鍦ㄦ湰闃舵閫夋嫨瀹f暀鐥呬汉" type="success" effect="dark">
         </el-alert>
         <div class="leftvlue-jbxx">
+          <div class="examine-jic">
+            <div class="headline">
+              <div>鍙橀噺鍖归厤閲忓弬</div>
+            </div>
+            <div class="examine-jic">
+              <div class="jic-value">
+                <el-row :gutter="20">
+                  <el-table :data="variableList" style="width: 100%">
+                    <el-table-column
+                      prop="variablename"
+                      align="center"
+                      label="鍙橀噺鍚嶇О"
+                    >
+                    </el-table-column>
+                    <el-table-column
+                      prop="character"
+                      align="center"
+                      label="鍖归厤绗�"
+                    >
+                    </el-table-column>
+                    <el-table-column label="鏇挎崲鍊�" align="center">
+                      <template slot-scope="scope">
+                        <el-input
+                          v-model="scope.row.Replacementvalue"
+                          placeholder="璇疯緭鍏ュ唴瀹�"
+                        ></el-input>
+                      </template>
+                    </el-table-column>
+                    <el-table-column label="鎿嶄綔" align="center">
+                      <template slot-scope="scope">
+                        <el-button
+                          size="mini"
+                          @click="variableEdit(scope.$index, scope.row)"
+                          >缂栬緫</el-button
+                        >
+                        <el-button
+                          size="mini"
+                          type="danger"
+                          @click="variableDelete(scope.$index, scope.row)"
+                          >鍒犻櫎</el-button
+                        >
+                      </template>
+                    </el-table-column>
+                  </el-table>
+                </el-row>
+              </div>
+            </div>
+          </div>
           <div class="examine-jic">
             <div class="headline">
               <div>鎮h�呭垪琛�</div>
@@ -361,7 +432,7 @@
                   <el-row :gutter="10" class="mb8">
                     <el-col :span="1.5">
                       <el-select
-                        v-model="tasktopic"
+                        v-model="patientqueryParams.allhosp"
                         placeholder="璇烽�夋嫨鏂板绫诲瀷"
                       >
                         <el-option
@@ -379,7 +450,7 @@
                         plain
                         icon="el-icon-plus"
                         size="medium"
-                        :disabled="!tasktopic"
+                        :disabled="!patientqueryParams.allhosp"
                         @click="handleAddpatient"
                         >鏂板</el-button
                       >
@@ -406,6 +477,7 @@
                     :currentList="sonuserList"
                     :tableLabel="tableLabelhz"
                     :controlxz="false"
+                    :typeinfo="2"
                   />
                   <pagination
                     v-show="total > 0"
@@ -513,7 +585,9 @@
               @handleSelectionChange="handleSelectionChange"
               :currentList="patientuserList"
               :tableLabel="tableLabelhz"
+              :serialnumber="false"
               :controlsc="false"
+              :typeinfo="3"
             />
           </el-row>
           <pagination
@@ -536,8 +610,19 @@
 </template>
 
 <script>
-
 import { messagelistpatient } from "@/api/patient/homepage";
+import store from "@/store";
+import {
+  getTaskpatient,
+  getlibrarylist,
+  getFollowuplist,
+  getQtemplatelist,
+  edithetask,
+  addhetask,
+  gethetaskinfo,
+  delhetaskinfo,
+  Editsingletask,
+} from "@/api/AiCentre/index";
 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢
 
 export default {
@@ -546,57 +631,67 @@
     return {
       title: "瀹f暀鍐呭鍒楄〃",
       currenttype: 1, //1瀹f暀2闂ㄨ瘖3鍑洪櫌4澶嶈瘖5浣撴6闂嵎
+      id: "",
       Editprogress: 1, //缂栬緫杩涘害
       loading: false, // 閬僵灞�
       patientloading: false, // 閬僵灞�
       dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗�
+      radio: 1,
       checkboxlist: [],
       tableLabel: [],
       // 鎮h�呰〃鍗�
       tableLabelhz: [
+        { label: "搴忓彿", width: "", prop: "patid" },
         { label: "鎮h�呭悕绉�", width: "", prop: "name" },
         { label: "鎬у埆", width: "", prop: "sex" },
         { label: "骞撮緞", width: "", prop: "age" },
         { label: "灏辫瘖绉戝", width: "", prop: "impTemplate" },
-        { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "create_time" },
-        { label: "鍒涘缓浜�", width: "", prop: "update_by" },
+        { label: "鍏ラ櫌鏃ユ湡", width: "", prop: "uploadTime" },
+        { label: "鍒涘缓浜猴紙缂猴級", width: "", prop: "update_by" },
       ],
       tableLabelxj: [
-        { label: "瀹f暀鍚嶇О", width: "", prop: "name" },
-        { label: "瀹f暀绫诲瀷", width: "", prop: "nametype" },
-        { label: "瀹f暀妯$増", width: "", prop: "impTemplate" },
-        { label: "鍒涘缓鏃ユ湡", width: "", prop: "create_time" },
-        { label: "鍒涘缓浜�", width: "", prop: "update_by" },
+        { label: "瀹f暀鍚嶇О", width: "", prop: "preachname" },
+        { label: "瀹f暀鎻忚堪", width: "", prop: "note" },
+        { label: "瀹f暀褰㈠紡", width: "", prop: "playType" },
+        { label: "閫傜敤鏂瑰紡", width: "", prop: "suitway" },
+        { label: "鍒涘缓鏃ユ湡", width: "", prop: "uploadTime" },
+        { label: "鍒涘缓浜猴紙缂猴級", width: "", prop: "update_by" },
       ],
       tableLabelmz: [
-        { label: "闅忚鍚嶇О", width: "118", prop: "name" },
+        { label: "闅忚鍚嶇О", width: "118", prop: "templateName" },
         { label: "闅忚妯$増", width: "130", prop: "impTemplate" },
-        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
-        { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
+        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "uploadTime" },
+        { label: "鍒涘缓浜猴紙缂猴級", width: "130", prop: "update_by" },
       ],
       tableLabelcy: [
-        { label: "闅忚鍚嶇О", width: "118", prop: "name" },
+        { label: "闅忚鍚嶇О", width: "118", prop: "templateName" },
         { label: "闅忚璁″垝", width: "130", prop: "impTemplate" },
-        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
-        { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
+        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "uploadTime" },
+        { label: "鍒涘缓浜猴紙缂猴級", width: "130", prop: "update_by" },
       ],
       tableLabelfz: [
-        { label: "閫氱煡鍚嶇О", width: "118", prop: "name" },
+        { label: "閫氱煡鍚嶇О", width: "118", prop: "templateName" },
         { label: "閫氱煡妯$増", width: "130", prop: "impTemplate" },
-        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
-        { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
+        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "uploadTime" },
+        { label: "鍒涘缓浜猴紙缂猴級", width: "130", prop: "update_by" },
       ],
       tableLabeltj: [
         { label: "閫氱煡鍚嶇О", width: "118", prop: "name" },
         { label: "閫氱煡妯$増", width: "130", prop: "impTemplate" },
-        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
-        { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
+        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "uploadTime" },
+        { label: "鍒涘缓浜猴紙缂猴級", width: "130", prop: "update_by" },
       ],
       tableLabelwj: [
         { label: "闂嵎鍚嶇О", width: "118", prop: "name" },
         { label: "闂嵎妯$増", width: "130", prop: "impTemplate" },
-        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "create_time" },
-        { label: "鍒涘缓浜�", width: "130", prop: "update_by" },
+        { label: "鍒涘缓鏃ユ湡", width: "136", prop: "uploadTime" },
+        { label: "鍒涘缓浜猴紙缂猴級", width: "130", prop: "update_by" },
+      ],
+      // 鍙橀噺
+      tableLabelvariable: [
+        { label: "鍙橀噺鍚嶇О", width: "", prop: "variablename" },
+        { label: "鍖归厤绗�", width: "", prop: "character" },
+        { label: "鏇挎崲鍊�", width: "", prop: "Replacementvalue" },
       ],
       topqueryParams: {
         pageNum: 1, //
@@ -626,6 +721,23 @@
       userList: [], //妯$増鍒楄〃
       patientuserList: [], //閫夋嫨鎮h�呭垪琛�
       sonuserList: [], //閫変腑鎮h�呭垪琛�
+      variableList: [
+        {
+          variablename: "濮撳悕",
+          character: "${name}",
+          Replacementvalue: "榫欏偛澶�",
+        },
+        {
+          variablename: "鍦板潃",
+          character: "${dzz}",
+          Replacementvalue: "榫欏",
+        },
+        {
+          variablename: "鐢佃瘽",
+          character: "${dhh}",
+          Replacementvalue: "鍏釜鍏�",
+        },
+      ], //鍙橀噺鍒楄〃
       tasktopic: null, //鏂板绫诲瀷
       form: {
         name: "",
@@ -637,20 +749,6 @@
         resource: "",
         desc: "",
       },
-      options: [
-        {
-          value: "閫夐」1",
-          label: "榛勯噾绯�",
-        },
-        {
-          value: "閫夐」2",
-          label: "鍙岀毊濂�",
-        },
-        {
-          value: "閫夐」5",
-          label: "鍖椾含鐑ら腑",
-        },
-      ],
       taskoptions: [
         {
           value: "1",
@@ -671,16 +769,51 @@
   components: { SFtable },
 
   created() {
+    this.id = this.$route.query.id;
+    this.form.type = this.$route.query.type;
     this.Addsubtask();
     this.Getsubtask();
     this.Acquisitiontype();
   },
 
   methods: {
+    // {
+    //   濮撳悕: { "${name}": "榫欏偛澶�" },
+    //   鍦板潃: { "${dzz}": "榫欏" },
+    //   鐢佃瘽: { "${dhh}": "鍏釜鍏�" },
+    // }
+    // 瀵硅薄杞暟缁�
+    convertFormat1ToFormat2(data) {
+      let result = [];
+      for (let key in data) {
+        let innerKey = Object.keys(data[key])[0];
+        result.push({
+          name: key,
+          value: innerKey,
+          fill: data[key][innerKey],
+        });
+      }
+      return result;
+    },
+    // 鏁扮粍杞璞�
+    convertFormat2ToFormat1(data) {
+      let result = {};
+      data.forEach((item) => {
+        let innerObj = {};
+        innerObj[item.value] = item.fill;
+        result[item.name] = innerObj;
+      });
+      return result;
+    },
     // 鑾峰彇褰撳墠绫诲瀷
     Acquisitiontype() {
+      let queryParams = {
+        pageNum: 1,
+        pageSize: 10,
+        isavailable: "",
+      };
       this.currenttype = this.$route.query.type;
-      console.log(this.currenttype);
+      console.log(this.currenttype, "1");
       if (this.currenttype == 1) {
         this.title = "瀹f暀鍐呭鍒楄〃";
         this.tableLabel = this.tableLabelxj;
@@ -696,22 +829,42 @@
           "鏅鸿兘灏忕▼搴�",
           "閽夐拤",
         ];
+        getlibrarylist(queryParams).then((response) => {
+          this.userList = response.rows;
+          this.total = response.total;
+        });
       } else if (this.currenttype == 2) {
         this.title = "闅忚鍐呭鍒楄〃";
         this.tableLabel = this.tableLabelmz;
         this.checkboxlist = ["褰撻潰", "绾歌川", "鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
+        getFollowuplist(queryParams).then((response) => {
+          this.userList = response.rows;
+          this.total = response.total;
+        });
       } else if (this.currenttype == 3) {
         this.title = "闅忚璁″垝鍒楄〃";
         this.tableLabel = this.tableLabelcy;
         this.checkboxlist = ["褰撻潰", "绾歌川", "鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
+        getFollowuplist(queryParams).then((response) => {
+          this.userList = response.rows;
+          this.total = response.total;
+        });
       } else if (this.currenttype == 4) {
         this.title = "閫氱煡鍐呭鍒楄〃";
         this.tableLabel = this.tableLabelfz;
         this.checkboxlist = ["鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
+        getFollowuplist(queryParams).then((response) => {
+          this.userList = response.rows;
+          this.total = response.total;
+        });
       } else if (this.currenttype == 5) {
         this.title = "閫氱煡鍐呭鍒楄〃";
         this.tableLabel = this.tableLabeltj;
         this.checkboxlist = ["绾歌川", "鐢佃瘽", "鐭俊", "寰俊鍏紬鍙�"];
+        getFollowuplist(queryParams).then((response) => {
+          this.userList = response.rows;
+          this.total = response.total;
+        });
       } else if (this.currenttype == 6) {
         this.title = "闂嵎鍐呭鍒楄〃";
         this.tableLabel = this.tableLabelwj;
@@ -725,13 +878,24 @@
           "寰俊灏忕▼搴�",
           "閽夐拤",
         ];
+        getQtemplatelist(queryParams).then((response) => {
+          this.userList = response.rows;
+          this.total = response.total;
+        });
+      }
+    },
+    nextstep() {
+      if (this.Editprogress <= 3) {
+        return this.Editprogress++;
       }
     },
     // 涓嬩竴姝�
     submitForm(formName) {
-      if (this.Editprogress <= 3) {
-        return this.Editprogress++;
-      }
+      Editsingletask(this.form).then((response) => {
+        if (res.code == 200) {
+          this.$router.go(-1);
+        }
+      });
       // 鎻愪氦
       // this.$refs[formName].validate((valid, object) => {
       //   if (valid) {
@@ -744,8 +908,7 @@
     },
     // 瀛愪换鍔′簩绾у脊妗�
     handleAddpatient(row) {
-      console.log(row, "瀛愮粍浠舵暟鎹�");
-      messagelistpatient(this.patientqueryParams).then((response) => {
+      getTaskpatient(this.patientqueryParams).then((response) => {
         console.log(response);
         this.patientuserList = response.rows;
         this.patienttotal = response.total;
@@ -804,14 +967,20 @@
     // 鏌ヨ瀛愪换鍔″垪琛�
     Getsubtask() {
       this.topqueryParams.pguid = 2;
-      console.log(this.topqueryParams);
+      console.log(this.topqueryParams, "aa");
       messagelistpatient(this.topqueryParams).then((res) => {
         this.userList = res.rows;
         this.total = res.total;
-        console.log(this.userList);
+        console.log(this.userList, "ss");
       });
     },
-    /** 鏌ヨ鎮h�呭垪琛� */
+    // 鍙橀噺---------------
+    variableEdit(index, row) {
+      console.log(index, row);
+    },
+    variableDelete(index, row) {
+      console.log(index, row);
+    },
   },
 };
 </script>

--
Gitblit v1.9.3