From 2c4c416bf7950c72ffa2543a218e4fd993ee2af2 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 12 九月 2024 12:04:32 +0800 Subject: [PATCH] 测试完成 --- src/views/followvisit/tasklist/index.vue | 450 ++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 276 insertions(+), 174 deletions(-) diff --git a/src/views/followvisit/tasklist/index.vue b/src/views/followvisit/tasklist/index.vue index 008b4f7..1ebd6f8 100644 --- a/src/views/followvisit/tasklist/index.vue +++ b/src/views/followvisit/tasklist/index.vue @@ -12,12 +12,18 @@ label-width="98px" > <el-form-item label="浠诲姟鍚嶇О"> - <el-input v-model="topqueryParams.name"></el-input> + <el-input + v-model="topqueryParams.taskName" + @keyup.enter.native="handleQuery" + ></el-input> </el-form-item> - <el-form-item label="瀹℃牳浜�"> - <el-input v-model="topqueryParams.name"></el-input> + <el-form-item label="鍒涘缓浜�"> + <el-input + v-model="topqueryParams.createBy" + @keyup.enter.native="handleQuery" + ></el-input> </el-form-item> - <el-form-item label="瀹℃牳鏃堕棿"> + <el-form-item label="鍒涘缓鏃堕棿"> <el-date-picker v-model="dateRange" style="width: 240px" @@ -28,32 +34,17 @@ end-placeholder="缁撴潫鏃ユ湡" ></el-date-picker> </el-form-item> - <el-form-item label="闅忚绫诲瀷" prop="status"> - <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨"> - <el-option - v-for="item in topicoptions" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> + + <el-form-item label="鏈嶅姟椤圭洰" prop="status"> + <el-input + v-model="topqueryParams.templatename" + @keyup.enter.native="handleQuery" + ></el-input> </el-form-item> - <el-form-item label="妯$増" prop="status"> - <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨"> + <el-form-item label="浠诲姟鐘舵��" prop="status"> + <el-select v-model="topqueryParams.sendState" placeholder="璇烽�夋嫨"> <el-option - v-for="item in topicoptions" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - </el-form-item> - <el-form-item label="闂ㄨ瘖闅忚鐘舵��" prop="status"> - <el-select v-model="topqueryParams.topic" placeholder="璇烽�夋嫨"> - <el-option - v-for="item in topicoptions" + v-for="item in dict.type.task_status" :key="item.value" :label="item.label" :value="item.value" @@ -125,19 +116,18 @@ :columns="columns" ></right-toolbar> --> <el-table v-loading="loading" :data="userList"> - <el-table-column + <!-- <el-table-column label="搴忓彿" fixed align="center" key="taskid" prop="taskid" - /> + /> --> <el-table-column label="浠诲姟鍚嶇О" fixed align="center" - sortable key="taskName" prop="taskName" :show-overflow-tooltip="true" @@ -149,6 +139,12 @@ prop="taskDesc" /> <el-table-column + label="鏈嶅姟椤圭洰" + align="center" + key="templatename" + prop="templatename" + /> + <el-table-column label="寰呮墽琛�/鎬讳换鍔�" align="center" key="nickName" @@ -158,6 +154,22 @@ <span>{{ scope.row.wfs }}/{{ scope.row.yfs }}</span> </template> </el-table-column> + + <el-table-column + label="鐘舵��" + align="center" + key="sendState" + prop="sendState" + width="120" + > + <template slot-scope="scope"> + <dict-tag + :options="dict.type.task_status" + :value="scope.row.sendState" + /> + </template> + </el-table-column> + <el-table-column label="鍒涘缓浜�" align="center" @@ -174,29 +186,15 @@ width="160" > <template slot-scope="scope"> - <span>{{ parseTime(scope.row.createTime) }}</span> + <span>{{ formatTime(scope.row.createTime) }}</span> </template> </el-table-column> - <el-table-column - label="鐘舵��" - fixed="right" - align="center" - key="sendState" - prop="sendState" - width="120" - > - <template slot-scope="scope"> - <dict-tag - :options="dict.type.task_status" - :value="scope.row.sendState" - /> - </template> - </el-table-column> + <el-table-column label="鎿嶄綔" fixed="right" align="center" - width="120" + width="180" class-name="small-padding fixed-width" > <template slot-scope="scope"> @@ -206,21 +204,13 @@ type="text" @click="sponsor(scope.row)" ><span class="button-zx" - ><i class="el-icon-s-promotion"></i>浠诲姟鍙戣捣</span + ><i class="el-icon-s-promotion"></i>鍙戣捣</span ></el-button > - <el-button - v-if="scope.row.sendState == 1 || scope.row.sendState == 3" - size="medium" - type="text" - @click="immediateExecution(scope.row)" - ><span class="button-lj" - ><i class="el-icon-s-promotion"></i>绔嬪嵆鎵ц</span - ></el-button - > + <el-button size="medium" type="text" @click="newAdd(scope.row)" ><span class="button-xj" - ><i class="el-icon-circle-plus-outline"></i>渚濈収鏂板</span + ><i class="el-icon-circle-plus-outline"></i>缁堟</span ></el-button > <el-button @@ -229,7 +219,7 @@ type="text" @click="stop(scope.row)" ><span class="button-zt" - ><i class="el-icon-circle-plus-outline"></i>鏆傚仠浠诲姟</span + ><i class="el-icon-circle-plus-outline"></i>鏆傚仠</span ></el-button > </template> @@ -275,49 +265,59 @@ width="50%" :before-close="handleClose" > - <div style="font-size: 20px; color: red; margin-bottom: 20px"> - 璇风‘璁や换鍔�"{{ taskform.taskName }}"鐨勬墽琛屾椂闂� - </div> - <div - style="font-size: 18px; margin-bottom: 20px" - v-if="taskform.showDate[0]" - > - 鎵ц鏃ユ湡锛�<span - style="font-size: 18px; color: #2376b7; margin-bottom: 20px" - >{{ taskform.showDate[0] }} 鑷� {{ taskform.showDate[1] }}</span - > - </div> - <div - style="font-size: 18px; margin-bottom: 20px" - v-if="taskform.showTimeMorn[0]" - > - 绗竴鏃堕棿娈碉細<span - style="font-size: 18px; color: #2376b7; margin-bottom: 20px" - >{{ taskform.showTimeMorn[0] }} 鑷� - {{ taskform.showTimeMorn[1] }}</span - > - </div> - <div - style="font-size: 18px; margin-bottom: 20px" - v-if="taskform.showTimeNight[0]" - > - 绗簩鏃堕棿娈碉細<span - style="font-size: 18px; color: #2376b7; margin-bottom: 20px" - >{{ taskform.showTimeNight[0] }} 鑷� - {{ taskform.showTimeNight[1] }}</span - > - </div> - <div - style="font-size: 18px; margin-bottom: 20px" - v-if="taskform.showTimeNoon[0]" - > - 绗笁鏃堕棿娈碉細<span - style="font-size: 18px; color: #2376b7; margin-bottom: 20px" - >{{ taskform.showTimeNoon[0] }} 鑷� - {{ taskform.showTimeNoon[1] }}</span - > - </div> - <div style="text-align: right"> + <el-tabs type="border-card" v-model="activname"> + <el-tab-pane> + <span slot="label"><i class="el-icon-date"></i> 姝e父鍙戣捣</span> + <div style="font-size: 20px; color: red; margin-bottom: 20px"> + 璇风‘璁や换鍔�"{{ taskform.taskName }}"鐨勬墽琛屾椂闂� + </div> + <div + style="font-size: 18px; margin-bottom: 20px" + v-if="taskform.showDate" + > + 鎵ц鏃ユ湡锛�<span + style="font-size: 18px; color: #2376b7; margin-bottom: 20px" + >{{ taskform.showDate[0] }} 鑷� {{ taskform.showDate[1] }}</span + > + </div> + <div + style="font-size: 18px; margin-bottom: 20px" + v-if="taskform.showTimeMorn[0]" + > + 绗竴鏃堕棿娈碉細<span + style="font-size: 18px; color: #2376b7; margin-bottom: 20px" + >{{ taskform.showTimeMorn[0] }} 鑷� + {{ taskform.showTimeMorn[1] }}</span + > + </div> + <div + style="font-size: 18px; margin-bottom: 20px" + v-if="taskform.showTimeNight[0]" + > + 绗簩鏃堕棿娈碉細<span + style="font-size: 18px; color: #2376b7; margin-bottom: 20px" + >{{ taskform.showTimeNight[0] }} 鑷� + {{ taskform.showTimeNight[1] }}</span + > + </div> + <div + style="font-size: 18px; margin-bottom: 20px" + v-if="taskform.showTimeNoon[0]" + > + 绗笁鏃堕棿娈碉細<span + style="font-size: 18px; color: #2376b7; margin-bottom: 20px" + >{{ taskform.showTimeNoon[0] }} 鑷� + {{ taskform.showTimeNoon[1] }}</span + > + </div> + </el-tab-pane> + <el-tab-pane label="绔嬪嵆鎵ц"> + <div style="font-size: 20px; color: red; margin-bottom: 20px"> + 姝ゆ搷浣滃皢绔嬪嵆鍙戣捣骞舵墽琛屼换鍔�:{{ taskform.taskName }}锛岃璋ㄦ厧鎿嶄綔锛� + </div> + </el-tab-pane> + </el-tabs> + <div style="text-align: right; margin: 20px 0"> <el-button style="margin-right: 20px" @click="taskformVisible = false" >鍙� 娑�</el-button > @@ -354,6 +354,7 @@ Questionnairetasksponsor, TaskTemplateSendExecution, } from "@/api/AiCentre/index"; +import store from "@/store"; import Treeselect from "@riophae/vue-treeselect"; import "@riophae/vue-treeselect/dist/vue-treeselect.css"; @@ -416,30 +417,40 @@ taskoptions: [ { value: "1", - label: "瀹f暀鏈嶅姟", + label: "鐩戞祴璇勪及", }, { value: "2", - label: "闂ㄨ瘖闅忚", - }, - { - value: "3", label: "鍑洪櫌闅忚", }, { + value: "3", + label: "闂ㄨ瘖闅忚", + }, + { value: "4", - label: "澶嶈瘖鏈嶅姟", + label: "瀹f暀鍏虫��", }, { value: "5", - label: "浣撴閫氱煡", + label: "澶嶈瘖绠$悊", }, { value: "6", - label: "闂嵎鏈嶅姟", + label: "婊℃剰搴﹁皟鏌�", + }, + { + value: "7", + label: "鎮h�呮姤鍛�", + }, + + { + value: "8", + label: "鍏朵粬閫氱煡", }, ], tasktopic: "2", //鏂板绫诲瀷 + activname: "", value: [], list: [], loading: false, @@ -537,6 +548,7 @@ topqueryParams: { pageNum: 1, pageSize: 10, + type: 3, userName: undefined, tagid: undefined, topic: undefined, @@ -612,10 +624,14 @@ }, watch: {}, created() { + this.tasktopic = this.$route.query.tasktopic + ? this.$route.query.tasktopic + : this.tasktopic; this.getList(); this.getConfigKey("sys.user.initPassword").then((response) => { this.initPassword = response.msg; }); + // this.taskoptions = store.getters.Serviceauthority; }, // 鎼滅储 mounted() { @@ -627,38 +643,38 @@ /** 鏌ヨ浠诲姟鍒楄〃 */ getList() { this.loading = true; - this.tasktopic = this.$route.query.tasktopic - ? this.$route.query.tasktopic - : this.tasktopic; - if (this.tasktopic == 1) { - this.topqueryParams.type = 3; - this.TaskOperation.taskType = 3; - } else if (this.tasktopic == 2) { - this.topqueryParams.type = 1; - this.TaskOperation.taskType = 1; - } else if (this.tasktopic == 3) { - this.topqueryParams.type = 1; - this.TaskOperation.taskType = 1; - } else if (this.tasktopic == 4) { - this.topqueryParams.type = 1; - this.TaskOperation.taskType = 1; - } else if (this.tasktopic == 5) { - this.topqueryParams.type = 1; + let type = this.$route.query.type; - this.TaskOperation.taskType = 1; - } else if (this.tasktopic == 6) { + this.topqueryParams.serviceType = Number(this.tasktopic); + this.topqueryParams.type = Number(this.type); + if ( + this.tasktopic == 2 || + this.tasktopic == 3 || + this.tasktopic == 1 || + this.tasktopic == 7 || + this.tasktopic == 6 + ) { this.topqueryParams.type = 2; this.TaskOperation.taskType = 2; + } else if (this.tasktopic == 4 || this.tasktopic == 8) { + this.topqueryParams.type = 3; + this.TaskOperation.taskType = 3; + } else if (this.tasktopic == 5) { + this.topqueryParams.type = 1; + this.TaskOperation.taskType = 1; } - this.topqueryParams.typename = this.findLabelByValue( - this.taskoptions, - this.tasktopic + // this.topqueryParams.typename = this.findLabelByValue( + // this.taskoptions, + // this.tasktopic + // ); + getTasklist(this.addDateRange(this.topqueryParams, this.dateRange)).then( + (response) => { + this.userList = response.rows; + this.total = response.total; + this.$forceUpdate(); + this.loading = false; + } ); - getTasklist(this.topqueryParams).then((response) => { - this.userList = response.rows; - this.total = response.total; - this.loading = false; - }); }, // 鏌ョ湅闂ㄨ瘖闅忚璇︽儏 Referencequestion(row) { @@ -738,84 +754,143 @@ }, /** 鏂板鎸夐挳鎿嶄綔 */ handleAdd() { - const typename = this.findLabelByValue(this.taskoptions, this.tasktopic); - - if ( - this.tasktopic == 2 || - this.tasktopic == 3 || - this.tasktopic == 4 || - this.tasktopic == 5 - ) { + if (this.topqueryParams.type == 1) { this.$router.push({ path: "/followvisit/particty", - query: { type: 1, typename: typename }, + query: { + type: this.topqueryParams.type, + serviceType: this.tasktopic, + }, }); - } else if (this.tasktopic == 6) { + } else if (this.topqueryParams.type == 2) { this.$router.push({ path: "/followvisit/QuestionnaireTask", - query: { type: 2, typename: typename }, + query: { + type: this.topqueryParams.type, + serviceType: this.tasktopic, + }, + }); + } else if (this.topqueryParams.type == 3) { + this.$router.push({ + path: "/followvisit/Missioncreation", + query: { + type: this.topqueryParams.type, + serviceType: this.tasktopic, + }, }); } }, /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate(row) { - this.$router.push({ - path: "/followvisit/particty", - query: { type: this.tasktopic, id: row.taskid }, - }); - if (this.tasktopic == 1 || this.tasktopic == 2 || this.tasktopic == 3) { + if (this.topqueryParams.type == 1) { this.$router.push({ path: "/followvisit/particty", - query: { type: this.tasktopic, id: row.taskid }, + query: { + id: row.taskid, + type: this.topqueryParams.type, + serviceType: this.tasktopic, + }, }); - } else if (this.tasktopic == 6) { + } else if (this.topqueryParams.type == 2) { this.$router.push({ path: "/followvisit/QuestionnaireTask", - query: { type: this.tasktopic, id: row.taskid }, + query: { + id: row.taskid, + type: this.topqueryParams.type, + serviceType: this.tasktopic, + }, + }); + } else if (this.topqueryParams.type == 3) { + this.$router.push({ + path: "/followvisit/Missioncreation", + query: { + id: row.taskid, + type: this.topqueryParams.type, + serviceType: this.tasktopic, + }, }); } }, // 鍒犻櫎浠诲姟 - deletefn() {}, + deletefn(row) { + this.$modal + .confirm( + '鏄惁鍒犻櫎浠诲姟鍚嶇О涓�"' + + row.taskName + + '"鐨勬暟鎹」锛屽垹闄ゅ悗涓嶅彲鎾ゅ洖锛佹槸鍚︾户缁�' + ) + .then(() => { + delTaskInfo(row.taskid).then((res) => { + if (res.code == 200) { + this.getList(); + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); + } + }); + }) + .catch(() => {}); + }, // 浠诲姟鍙戣捣 sponsor(row) { console.log(row, "浠诲姟淇℃伅"); this.taskform = row; - if (this.taskform.showDate) { + if (this.taskform.showDate && this.taskform.sendType != 2) { this.taskform.showDate = this.taskform.showDate.split(","); } - if (this.taskform.showTimeMorn) { + if (this.taskform.showTimeMorn && this.taskform.sendType != 2) { this.taskform.showTimeMorn = this.taskform.showTimeMorn.split(","); } else { this.taskform.showTimeMorn = []; } - if (this.taskform.showTimeNight) { + if (this.taskform.showTimeNight && this.taskform.sendType != 2) { this.taskform.showTimeNight = this.taskform.showTimeNight.split(","); } else { this.taskform.showTimeNight = []; } - if (this.taskform.showTimeNoon) { + if (this.taskform.showTimeNoon && this.taskform.sendType != 2) { this.taskform.showTimeNoon = this.taskform.showTimeNoon.split(","); } else { this.taskform.showTimeNoon = []; } - if (row.sendState != 2) { + if (this.taskform.sendState != 2 && this.taskform.sendType != 2) { this.taskformVisible = true; + } else if (this.taskform.sendState != 2 && this.taskform.sendType == 2) { + this.TaskOperation.taskId = row.taskid; + this.TaskOperation.sendState = 2; + this.TaskOperation.sendType = 2; + this.$modal + .confirm( + '褰撳墠閫変腑浠诲姟鍚嶇О涓�"' + + row.taskName + + '"鐨勬暟鎹」涓虹珛鍗虫墽琛屼换鍔★紝鍙戣捣鎵ц鍚庝笉鍙挙鍥烇紒鏄惁缁х画' + ) + .then(() => { + TaskTemplateSendExecution(this.TaskOperation).then((res) => { + if (res.code == 200) { + this.getList(); + this.$modal.msgSuccess("浠诲姟宸茬珛鍗虫墽琛�"); + } + }); + }) + .catch(() => {}); } else { this.$modal.msgError("浠诲姟宸插彂璧凤紝涓嶅彲鍐嶆鍙戣捣"); } }, // 纭鍙戣捣 confirmSponsor(row) { - this.TaskOperation.taskId = row.taskid; - this.TaskOperation.sendState = 2; - TaskTemplateSendExecution(this.TaskOperation).then((res) => { - if (res.code == 200) { - this.$modal.msgSuccess("浠诲姟宸叉垚鍔熷姞鍏ユ墽琛岄槦鍒�"); - this.taskformVisible = false; - this.getList(); - } - }); + if (this.activname == 0) { + this.TaskOperation.taskId = row.taskid; + this.TaskOperation.sendState = 2; + TaskTemplateSendExecution(this.TaskOperation).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("浠诲姟宸叉垚鍔熷姞鍏ユ墽琛岄槦鍒�"); + this.taskformVisible = false; + this.getList(); + } + }); + } else if (this.activname == 1) { + this.immediateExecution(row); + } }, // 绔嬪嵆鎵ц @@ -846,13 +921,40 @@ // 渚濈収鏂板 newAdd(row) { - TaskTemplateSendExecution().then((res) => {}); + this.$modal + .confirm("鏄惁渚濈収褰撳墠浠诲姟鍒涘缓鏂颁换鍔★紵") + .then(() => { + if (this.tasktopic == 5) { + this.$router.push({ + path: "/followvisit/particty", + query: { type: 1, id: row.taskid, nhh: 1 }, + }); + } else if ( + this.tasktopic == 2 || + this.tasktopic == 3 || + this.tasktopic == 6 + ) { + this.$router.push({ + path: "/followvisit/QuestionnaireTask", + query: { type: 2, id: row.taskid, nhh: 1 }, + }); + } else if (this.tasktopic == 8 || this.tasktopic == 4) { + this.$router.push({ + path: "/followvisit/Missioncreation", + query: { type: 3, id: row.taskid, nhh: 1 }, + }); + } + }) + .catch(() => {}); }, // 鏆傚仠 stop(row) { + console.log(row); if (row.sendState == 2) { - this.TaskOperation.taskId = row.taskId; + this.TaskOperation.taskId = row.taskid; this.TaskOperation.sendState = 3; + this.TaskOperation.sendType = ""; + this.TaskOperation.taskType = row.type; TaskTemplateSendExecution(this.TaskOperation).then((res) => { this.$modal.msgSuccess("浠诲姟宸叉殏鍋�"); this.getList(); -- Gitblit v1.9.3