From bac13bc1c321bc155c37a3305a7bb6b9d0732d12 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期四, 01 八月 2024 18:37:01 +0800
Subject: [PATCH] 测试完成
---
src/views/followvisit/tasklist/index.vue | 444 +++++++++++++++++++++++++++++++++++++------------------
1 files changed, 299 insertions(+), 145 deletions(-)
diff --git a/src/views/followvisit/tasklist/index.vue b/src/views/followvisit/tasklist/index.vue
index 6c92687..205806b 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"
@@ -77,7 +68,11 @@
<el-divider></el-divider>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
- <el-select v-model="tasktopic" placeholder="璇烽�夋嫨鏂板绫诲瀷">
+ <el-select
+ @change="handleQuery"
+ v-model="tasktopic"
+ placeholder="璇烽�夋嫨鏂板绫诲瀷"
+ >
<el-option
v-for="item in taskoptions"
:key="item.value"
@@ -97,29 +92,7 @@
>鏂板</el-button
>
</el-col>
- <el-col :span="1.5">
- <el-button
- type="success"
- plain
- icon="el-icon-edit"
- size="medium"
- :disabled="single"
- @click="handleUpdate"
- >淇敼</el-button
- >
- </el-col>
- <el-col :span="1.5">
- <el-button
- type="danger"
- plain
- icon="el-icon-delete"
- size="medium"
- :disabled="multiple"
- @click="handleDelete"
- v-hasPermi="['system:user:remove']"
- >鍒犻櫎</el-button
- >
- </el-col>
+
<el-col :span="19">
<div class="documentf">
<div class="document">
@@ -142,12 +115,7 @@
@queryTable="getList"
:columns="columns"
></right-toolbar> -->
- <el-table
- v-loading="loading"
- :data="userList"
- @selection-change="handleSelectionChange"
- >
- <el-table-column type="selection" width="50" align="center" />
+ <el-table v-loading="loading" :data="userList">
<el-table-column
label="搴忓彿"
fixed
@@ -160,7 +128,6 @@
label="浠诲姟鍚嶇О"
fixed
align="center"
- sortable
key="taskName"
prop="taskName"
:show-overflow-tooltip="true"
@@ -200,15 +167,21 @@
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
-
<el-table-column
label="鐘舵��"
fixed="right"
align="center"
- key="phonenumber"
- prop="phonenumber"
+ 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"
@@ -285,58 +258,68 @@
@pagination="getList"
/>
</el-row>
- <!-- 娣诲姞鎴栦慨鏀归棬璇婇殢璁垮璇濇 -->
+ <!-- 纭鍙戣捣瀵硅瘽妗� -->
<el-dialog
- :title="title"
- :visible.sync="addalteropen"
- width="700px"
- append-to-body
+ title="浠诲姟鍙戣捣纭"
+ :visible.sync="taskformVisible"
+ width="50%"
+ :before-close="handleClose"
>
- <el-form ref="form" :model="form" label-width="100px">
- <el-row :gutter="20">
- <el-col :span="12"
- ><el-form-item label="浠诲姟鍚嶇О">
- <el-input v-model="form.taskName"></el-input> </el-form-item
- ></el-col>
- </el-row>
- <el-row :gutter="20">
- <el-col :span="24"
- ><el-form-item label="鎵�灞炵瀹�">
- <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-col
- ></el-row>
- <el-row :gutter="20">
- <el-col :span="24"
- ><el-form-item label="闅忚绫诲瀷">
- <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-col>
- </el-row>
- <el-row :gutter="20">
- <el-col :span="24">
- <el-form-item label="鏈嶅姟妯″潡">
- <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-col>
- </el-row>
- <el-row :gutter="20">
- <el-col :span="24">
- <el-form-item label="闂ㄨ瘖闅忚瑕佹眰">
- <el-input type="textarea" v-model="form.desc"></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="submitForm">鎻� 浜�</el-button>
- <el-button @click="cancel">杩� 鍥�</el-button>
+ <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>
+ <div style="text-align: right">
+ <el-button style="margin-right: 20px" @click="taskformVisible = false"
+ >鍙� 娑�</el-button
+ >
+ <el-button
+ style="margin-right: 20px"
+ type="success"
+ @click="confirmSponsor(taskform)"
+ >纭鎵ц</el-button
+ >
+ <el-button type="primary" @click="handleUpdate(taskform)"
+ >鍓嶅線淇敼</el-button
+ >
</div>
</el-dialog>
</div>
@@ -356,6 +339,9 @@
getTaskInfo,
Editsingletask,
delTaskInfo,
+ Questionnairetasklist,
+ Questionnairetaskget,
+ Questionnairetasksponsor,
TaskTemplateSendExecution,
} from "@/api/AiCentre/index";
@@ -364,7 +350,7 @@
export default {
name: "User",
- dicts: ["sys_normal_disable", "sys_user_sex"],
+ dicts: ["sys_normal_disable", "sys_user_sex", "task_status"],
components: { Treeselect },
data() {
return {
@@ -396,6 +382,13 @@
postOptions: [],
// 瑙掕壊閫夐」
roleOptions: [],
+ taskform: {
+ showDate: [],
+ showTimeMorn: [],
+ showTimeNight: [],
+ showTimeNoon: [],
+ },
+ taskformVisible: false,
dynamicTags: ["閫夐」涓�", "閫夐」浜�", "閫夐」涓�"], //閫夐」
inputVisible: false,
inputValue: "",
@@ -433,10 +426,10 @@
},
{
value: "6",
- label: "闂嵎鏈嶅姟",
+ label: "鎮h�呮姤鍛�",
},
],
- tasktopic: null, //鏂板绫诲瀷
+ tasktopic: "2", //鏂板绫诲瀷
value: [],
list: [],
loading: false,
@@ -623,12 +616,42 @@
methods: {
/** 鏌ヨ浠诲姟鍒楄〃 */
getList() {
- // this.loading = true;
- getTasklist(this.topqueryParams).then((response) => {
- this.userList = response.rows;
- this.total = response.total;
- this.loading = false;
- });
+ 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;
+
+ this.TaskOperation.taskType = 1;
+ } else if (this.tasktopic == 6) {
+ this.topqueryParams.type = 2;
+ this.TaskOperation.taskType = 2;
+ }
+ 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;
+ }
+ );
},
// 鏌ョ湅闂ㄨ瘖闅忚璇︽儏
Referencequestion(row) {
@@ -649,11 +672,6 @@
}
},
- // 鍙栨秷鎸夐挳
- cancel() {
- this.addalteropen = false;
- this.reset();
- },
// 琛ㄥ崟閲嶇疆
reset() {
this.form = {
@@ -713,31 +731,121 @@
},
/** 鏂板鎸夐挳鎿嶄綔 */
handleAdd() {
- this.$router.push({
- path: "/followvisit/particty",
- query: { type: this.tasktopic },
- });
+ const typename = this.findLabelByValue(this.taskoptions, this.tasktopic);
+
+ if (
+ this.tasktopic == 2 ||
+ this.tasktopic == 3 ||
+ this.tasktopic == 4 ||
+ this.tasktopic == 5
+ ) {
+ this.$router.push({
+ path: "/followvisit/particty",
+ query: { type: 1, typename: typename },
+ });
+ } else if (this.tasktopic == 6) {
+ this.$router.push({
+ path: "/followvisit/QuestionnaireTask",
+ query: { type: 2, typename: typename },
+ });
+ } else if (this.tasktopic == 1) {
+ this.$router.push({
+ path: "/followvisit/Missioncreation",
+ query: { type: 3, typename: typename },
+ });
+ }
},
/** 淇敼鎸夐挳鎿嶄綔 */
handleUpdate(row) {
- this.$router.push({
- path: "/followvisit/particty",
- query: { type: row.hospType, id: row.taskid },
- });
+ // this.$router.push({
+ // path: "/followvisit/particty",
+ // query: { type: this.tasktopic, id: row.taskid },
+ // });
+ if (
+ this.tasktopic == 2 ||
+ this.tasktopic == 3 ||
+ this.tasktopic == 4 ||
+ this.tasktopic == 5
+ ) {
+ this.$router.push({
+ path: "/followvisit/particty",
+ query: { type: 1, id: row.taskid },
+ });
+ } else if (this.tasktopic == 6) {
+ this.$router.push({
+ path: "/followvisit/QuestionnaireTask",
+ query: { type: 2, id: row.taskid },
+ });
+ } else if (this.tasktopic == 1) {
+ this.$router.push({
+ path: "/followvisit/Missioncreation",
+ query: { type: 3, id: row.taskid },
+ });
+ }
},
// 鍒犻櫎浠诲姟
deletefn() {},
// 浠诲姟鍙戣捣
sponsor(row) {
console.log(row, "浠诲姟淇℃伅");
- if (row.sendState != 2) {
+ this.taskform = row;
+ console.log(12);
+ if (this.taskform.showDate && this.taskform.sendType != 2) {
+ this.taskform.showDate = this.taskform.showDate.split(",");
+ }
+ if (this.taskform.showTimeMorn && this.taskform.sendType != 2) {
+ this.taskform.showTimeMorn = this.taskform.showTimeMorn.split(",");
+ } else {
+ this.taskform.showTimeMorn = [];
+ }
+ if (this.taskform.showTimeNight && this.taskform.sendType != 2) {
+ this.taskform.showTimeNight = this.taskform.showTimeNight.split(",");
+ } else {
+ this.taskform.showTimeNight = [];
+ }
+ if (this.taskform.showTimeNoon && this.taskform.sendType != 2) {
+ this.taskform.showTimeNoon = this.taskform.showTimeNoon.split(",");
+ } else {
+ this.taskform.showTimeNoon = [];
+ }
+ 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;
- TaskTemplateSendExecution(this.TaskOperation).then((res) => {
- this.getList();
- });
+ 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();
+ }
+ });
+ },
+
// 绔嬪嵆鎵ц
immediateExecution(row) {
console.log(row, "浠诲姟淇℃伅");
@@ -745,22 +853,64 @@
this.TaskOperation.taskId = row.taskid;
this.TaskOperation.sendState = 2;
this.TaskOperation.sendType = 2;
- TaskTemplateSendExecution(this.TaskOperation).then((res) => {
- this.getList();
- });
+ this.$modal
+ .confirm(
+ '鏄惁绔嬪嵆鎵ц浠诲姟鍚嶇О涓轰负"' +
+ row.taskName +
+ '"鐨勬暟鎹」锛熷彂璧锋墽琛屽悗涓嶅彲鎾ゅ洖锛�'
+ )
+ .then(() => {
+ TaskTemplateSendExecution(this.TaskOperation).then((res) => {
+ if (res.code == 200) {
+ this.getList();
+ this.$modal.msgSuccess("浠诲姟宸茬珛鍗虫墽琛�");
+ }
+ });
+ })
+ .then(() => {})
+ .catch(() => {});
}
},
// 渚濈収鏂板
newAdd(row) {
- TaskTemplateSendExecution().then((res) => {});
+ this.$modal
+ .confirm("鏄惁渚濈収褰撳墠浠诲姟鍒涘缓鏂颁换鍔★紵")
+ .then(() => {
+ if (
+ this.tasktopic == 2 ||
+ this.tasktopic == 3 ||
+ this.tasktopic == 4 ||
+ this.tasktopic == 5
+ ) {
+ this.$router.push({
+ path: "/followvisit/particty",
+ query: { type: 1, id: row.taskid, nhh: 1 },
+ });
+ } else if (this.tasktopic == 6) {
+ this.$router.push({
+ path: "/followvisit/QuestionnaireTask",
+ query: { type: 2, id: row.taskid, nhh: 1 },
+ });
+ } else if (this.tasktopic == 1) {
+ 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;
- TaskTemplateSendExecution().then((res) => {
+ this.TaskOperation.sendType = "";
+ this.TaskOperation.taskType = row.type;
+ TaskTemplateSendExecution(this.TaskOperation).then((res) => {
+ this.$modal.msgSuccess("浠诲姟宸叉殏鍋�");
this.getList();
});
}
@@ -810,6 +960,10 @@
`user_${new Date().getTime()}.xlsx`
);
},
+ findLabelByValue(data, value) {
+ const item = data.find((item) => item.value === value);
+ return item ? item.label : null;
+ },
},
};
</script>
--
Gitblit v1.9.3