From 9dd3964e34f08bbb04a82f2e05f1b41de7425c48 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 20 六月 2025 15:30:16 +0800
Subject: [PATCH] 测试完成
---
src/views/followvisit/tasklist/index.vue | 1222 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 1,217 insertions(+), 5 deletions(-)
diff --git a/src/views/followvisit/tasklist/index.vue b/src/views/followvisit/tasklist/index.vue
index 9ff8630..3a1d415 100644
--- a/src/views/followvisit/tasklist/index.vue
+++ b/src/views/followvisit/tasklist/index.vue
@@ -1,17 +1,1229 @@
<template>
- <div>浠诲姟鍒楄〃</div>
+ <div class="app-container">
+ <el-row :gutter="20">
+ <!--鐢ㄦ埛鏁版嵁-->
+
+ <el-form
+ :model="topqueryParams"
+ ref="queryForm"
+ size="small"
+ :inline="true"
+ v-show="showSearch"
+ label-width="98px"
+ >
+ <el-form-item label="浠诲姟鍚嶇О">
+ <el-input
+ v-model="topqueryParams.taskName"
+ @keyup.enter.native="handleQuery"
+ ></el-input>
+ </el-form-item>
+ <el-form-item label="鍒涘缓浜�">
+ <el-input
+ v-model="topqueryParams.createBy"
+ @keyup.enter.native="handleQuery"
+ ></el-input>
+ </el-form-item>
+ <el-form-item label="鍙戦�佹椂闂�">
+ <el-date-picker
+ v-model="dateRange"
+ style="width: 240px"
+ value-format="yyyy-MM-dd"
+ type="daterange"
+ range-separator="-"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ ></el-date-picker>
+ </el-form-item>
+
+ <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.sendState" placeholder="璇烽�夋嫨">
+ <el-option
+ v-for="item in dict.type.task_status"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item>
+ <el-button
+ type="primary"
+ icon="el-icon-search"
+ size="medium"
+ @click="handleQuery"
+ >鎼滅储</el-button
+ >
+ <el-button icon="el-icon-refresh" size="medium" @click="resetQuery"
+ >閲嶇疆</el-button
+ >
+ </el-form-item>
+ </el-form>
+ <el-divider></el-divider>
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-select
+ @change="handleQuerytask"
+ v-model="tasktopic"
+ placeholder="璇烽�夋嫨鏈嶅姟绫诲瀷"
+ >
+ <el-option
+ v-for="item in taskoptions"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-col>
+ <el-col :span="1.5">
+ <el-select
+ @change="handleQuery"
+ v-model="topqueryParams.type"
+ placeholder="璇烽�夋嫨鎵ц绫诲瀷"
+ >
+ <el-option
+ v-for="item in longtermlist"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ icon="el-icon-plus"
+ size="medium"
+ @click="handleAdd"
+ :disabled="!tasktopic"
+ >鏂板缓浠诲姟</el-button
+ >
+ </el-col>
+
+ <!-- <el-col :span="19">
+ <div class="documentf">
+ <div class="document">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="medium"
+ @click="handleExport"
+ v-hasPermi="['system:user:export']"
+ >瀵煎嚭</el-button
+ >
+ </div>
+ </div>
+ </el-col> -->
+ <!-- <el-col :span="1.5"> </el-col> -->
+ </el-row>
+ <!-- <right-toolbar
+ :showSearch.sync="showSearch"
+ @queryTable="getList"
+ :columns="columns"
+ ></right-toolbar> -->
+ <el-table v-loading="loading" :data="userList">
+ <!-- <el-table-column
+ label="搴忓彿"
+ fixed
+ align="center"
+ key="taskid"
+ prop="taskid"
+ /> -->
+
+ <el-table-column
+ label="浠诲姟鍚嶇О"
+ fixed
+ width="120"
+ align="center"
+ key="taskName"
+ prop="taskName"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="浠诲姟鎻忚堪"
+ width="280"
+ align="center"
+ key="taskDesc"
+ prop="taskDesc"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="鏈嶅姟椤圭洰"
+ width="120"
+ align="center"
+ key="templatename"
+ prop="templatename"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="寰呮墽琛�/鎬讳换鍔�"
+ align="center"
+ key="nickName"
+ prop="nickName"
+ >
+ <template slot-scope="scope">
+ <span>{{ scope.row.wfs }}/{{ scope.row.yfs }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鏄惁闀挎湡浠诲姟"
+ align="center"
+ key="longTask"
+ prop="longTask"
+ width="120"
+ >
+ <template slot-scope="scope">
+ <span>{{ scope.row.longTask ? "闀挎湡浠诲姟" : "闈為暱鏈�" }}</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"
+ key="createBy"
+ prop="createBy"
+ width="120"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="鍒涘缓鏃堕棿"
+ sortable
+ align="center"
+ prop="createTime"
+ width="180"
+ >
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.createTime) }}</span>
+ </template>
+ </el-table-column>
+
+ <el-table-column
+ label="鎿嶄綔"
+ fixed="right"
+ align="center"
+ width="180"
+ class-name="small-padding fixed-width"
+ >
+ <template slot-scope="scope">
+ <el-button
+ v-if="
+ (scope.row.sendState == 1 || scope.row.sendState == 3) &&
+ !scope.row.longTask
+ "
+ size="medium"
+ type="text"
+ @click="sponsor(scope.row)"
+ ><span class="button-zx"
+ ><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
+ ></el-button
+ > -->
+ <el-button
+ size="medium"
+ type="text"
+ @click="handleUpdate(scope.row, 1)"
+ ><span class="button-xj"
+ ><i class="el-icon-circle-plus-outline"></i>渚濈収鏂板</span
+ ></el-button
+ >
+ <el-button
+ v-if="scope.row.sendState == 2"
+ size="medium"
+ type="text"
+ @click="stop(scope.row)"
+ ><span class="button-zt"
+ ><i class="el-icon-circle-plus-outline"></i>鏆傚仠</span
+ ></el-button
+ >
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="浠诲姟璇︽儏"
+ fixed="right"
+ align="center"
+ width="200"
+ class-name="small-padding fixed-width"
+ >
+ <template slot-scope="scope">
+ <el-button
+ size="medium"
+ type="text"
+ @click="handleUpdate(scope.row)"
+ ><span class="button-xq"
+ ><i class="el-icon-s-data"></i>璇︽儏</span
+ ></el-button
+ >
+
+ <el-button size="medium" type="text" @click="deletefn(scope.row)"
+ ><span class="button-sc"
+ ><i class="el-icon-delete"></i>鍒犻櫎</span
+ ></el-button
+ >
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="topqueryParams.pageNum"
+ :limit.sync="topqueryParams.pageSize"
+ @pagination="getList"
+ />
+ </el-row>
+ <!-- 纭鍙戣捣瀵硅瘽妗� -->
+ <el-dialog
+ title="浠诲姟鍙戣捣纭"
+ :visible.sync="taskformVisible"
+ width="50%"
+ :before-close="handleClose"
+ >
+ <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
+ >
+ <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>
</template>
<script>
+import {
+ getUser,
+ delUser,
+ addUser,
+ updateUser,
+ resetUserPwd,
+ changeUserStatus,
+} from "@/api/system/user";
+import {
+ getTasklist,
+ getTaskInfo,
+ Editsingletask,
+ delTaskInfo,
+ Questionnairetasklist,
+ Questionnairetaskget,
+ Questionnairetasksponsor,
+ TaskTemplateSendExecution,
+} from "@/api/AiCentre/index";
+import store from "@/store";
+
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+
export default {
+ name: "Tasklist",
+ dicts: ["sys_normal_disable", "sys_user_sex", "task_status"],
+ components: { Treeselect },
data() {
- return {};
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // 鐢ㄦ埛琛ㄦ牸鏁版嵁
+ userList: null,
+ // 寮瑰嚭灞傛爣棰�
+ title: "鏂板闂ㄨ瘖闅忚",
+ // 鏄惁鏄剧ず淇敼銆佹坊鍔犲脊鍑哄眰
+ addalteropen: false,
+ // 閮ㄩ棬鍚嶇О
+ deptName: undefined,
+ // 榛樿瀵嗙爜
+ initPassword: undefined,
+ // 鏃ユ湡鑼冨洿
+ dateRange: [],
+ // 宀椾綅閫夐」
+ postOptions: [],
+ // 瑙掕壊閫夐」
+ roleOptions: [],
+ longTask: 0,
+ taskform: {
+ showDate: [],
+ showTimeMorn: [],
+ showTimeNight: [],
+ showTimeNoon: [],
+ },
+ taskformVisible: false,
+ dynamicTags: ["閫夐」涓�", "閫夐」浜�", "閫夐」涓�"], //閫夐」
+ inputVisible: false,
+ inputValue: "",
+ previewVisible: false, //闂ㄨ瘖闅忚棰勮寮规
+ TaskOperation: {},
+ radio: "",
+ radios: [],
+ previewtype: 2, //棰勮闂ㄨ瘖闅忚绫诲瀷
+ total: 0, // 鎬绘潯鏁�
+ ImportQuantity: 999, //瀵奸棬璇婇殢璁挎暟閲�
+ //棰勮闂ㄨ瘖闅忚淇℃伅
+ previewvalue: {
+ username: "杩欎釜鍖荤敓瀵逛綘鎬庝箞鏍�",
+ },
+ longtermlist: [
+ {
+ value: 1,
+ label: "璇煶闅忚",
+ },
+ {
+ value: 2,
+ label: "闂嵎闅忚",
+ },
+ {
+ value: 3,
+ label: "瀹f暀鍏虫��",
+ },
+ ],
+ taskoptions: [
+ {
+ value: "1",
+ label: "鐩戞祴璇勪及",
+ },
+ {
+ value: "2",
+ label: "鍑洪櫌闅忚",
+ },
+ {
+ value: "3",
+ label: "闂ㄨ瘖闅忚",
+ },
+ {
+ value: "4",
+ label: "瀹f暀鍏虫��",
+ },
+ {
+ value: "5",
+ label: "澶嶈瘖绠$悊",
+ },
+ {
+ value: "6",
+ label: "婊℃剰搴﹁皟鏌�",
+ },
+ {
+ value: "7",
+ label: "鎮h�呮棩甯告姤鍛�",
+ },
+ {
+ value: "9",
+ label: "鎮h�呭紓甯告姤鍛�",
+ },
+ {
+ value: "8",
+ label: "鍏朵粬閫氱煡",
+ },
+ ],
+ tasktopic: "2", //鏂板绫诲瀷
+ activname: "",
+ value: [],
+ list: [],
+ loading: false,
+ states: [
+ "Alabama",
+ "Alaska",
+ "Arizona",
+ "Arkansas",
+ "California",
+ "Colorado",
+ "Connecticut",
+ "Delaware",
+ "Florida",
+ "Georgia",
+ "Hawaii",
+ "Idaho",
+ "Illinois",
+ "Indiana",
+ "Iowa",
+ "Kansas",
+ "Kentucky",
+ "Louisiana",
+ "Maine",
+ "Maryland",
+ "Massachusetts",
+ "Michigan",
+ "Minnesota",
+ "Mississippi",
+ "Missouri",
+ "Montana",
+ "Nebraska",
+ "Nevada",
+ "New Hampshire",
+ "New Jersey",
+ "New Mexico",
+ "New York",
+ "North Carolina",
+ "North Dakota",
+ "Ohio",
+ "Oklahoma",
+ "Oregon",
+ "Pennsylvania",
+ "Rhode Island",
+ "South Carolina",
+ "South Dakota",
+ "Tennessee",
+ "Texas",
+ "Utah",
+ "Vermont",
+ "Virginia",
+ "Washington",
+ "West Virginia",
+ "Wisconsin",
+ "Wyoming",
+ ],
+ pickerOptions: {
+ disabledDate(time) {
+ return time.getTime() > Date.now();
+ },
+ shortcuts: [
+ {
+ text: "浠婂ぉ",
+ onClick(picker) {
+ picker.$emit("pick", new Date());
+ },
+ },
+ {
+ text: "鏄ㄥぉ",
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24);
+ picker.$emit("pick", date);
+ },
+ },
+ {
+ text: "涓�鍛ㄥ墠",
+ onClick(picker) {
+ const date = new Date();
+ date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
+ picker.$emit("pick", date);
+ },
+ },
+ ],
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {
+ phonenumber: "",
+ totagid: "",
+ types: "",
+ nickName: "",
+ qystatus: "",
+ btstatus: "",
+ },
+ // 鏌ヨ鍙傛暟
+ topqueryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ type: 2,
+ userName: undefined,
+ tagid: undefined,
+ topic: undefined,
+ },
+ propss: { multiple: true },
+ options: [],
+ checkboxlist: [],
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ userName: [
+ { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
+ {
+ min: 2,
+ max: 20,
+ message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿",
+ trigger: "blur",
+ },
+ ],
+ nickName: [
+ { required: true, message: "鐢ㄦ埛鏄电О涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ password: [
+ { required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" },
+ {
+ min: 5,
+ max: 20,
+ message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿",
+ trigger: "blur",
+ },
+ ],
+ email: [
+ {
+ type: "email",
+ message: "璇疯緭鍏ユ纭殑閭鍦板潃",
+ trigger: ["blur", "change"],
+ },
+ ],
+ phonenumber: [
+ {
+ pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
+ message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜",
+ trigger: "blur",
+ },
+ ],
+ IDnumber: [
+ {
+ pattern:
+ /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/,
+ message: "璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�",
+ trigger: "blur",
+ },
+ ],
+ },
+ };
},
+ watch: {},
+ created() {
+ this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+ (obj) => obj.deptCode
+ );
+ this.topqueryParams.leavehospitaldistrictcodes =
+ store.getters.belongWards.map((obj) => obj.districtCode);
+ 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.checkboxlist = store.getters.checkboxlist;
+ },
+ activated() {
+ this.getList();
+ },
+ // 鎼滅储
+ mounted() {
+ this.list = this.states.map((item) => {
+ return { value: `value:${item}`, label: `label:${item}` };
+ });
+ },
+ methods: {
+ /** 鏌ヨ浠诲姟鍒楄〃 */
+ getList() {
+ this.loading = true;
+ console.log(this.topqueryParams.type);
- created() {},
+ this.topqueryParams.serviceType = Number(this.tasktopic);
+ if (
+ this.tasktopic == 2 ||
+ this.tasktopic == 3 ||
+ this.tasktopic == 1 ||
+ this.tasktopic == 7 ||
+ this.tasktopic == 6
+ ) {
+ if (!this.topqueryParams.type) this.topqueryParams.type = "2";
+ this.longtermlist = [
+ {
+ value: 1,
+ label: "璇煶闅忚",
+ },
+ {
+ value: 2,
+ label: "闂嵎闅忚",
+ },
+ ];
+ } else if (this.tasktopic == 4 || this.tasktopic == 8) {
+ if (!this.topqueryParams.type) this.topqueryParams.type = "3";
+ this.longtermlist = [
+ {
+ value: 3,
+ label: "瀹f暀鍏虫��",
+ },
+ ];
+ } else if (this.tasktopic == 5) {
+ if (!this.topqueryParams.type) this.topqueryParams.type = "1";
+ this.longtermlist = [
+ {
+ value: 1,
+ label: "璇煶闅忚",
+ },
+ {
+ value: 2,
+ label: "闂嵎闅忚",
+ },
+ ];
+ }
+ // this.topqueryParams.typename = this.findLabelByValue(
+ // this.taskoptions,
+ // this.tasktopic
+ // );
+ this.topqueryParams.startOutHospTime = this.dateRange[0];
+ this.topqueryParams.endOutHospTime = this.dateRange[1];
+ getTasklist(this.topqueryParams).then((response) => {
+ this.userList = response.rows;
+ this.total = response.total;
+ this.$forceUpdate();
+ this.loading = false;
+ });
+ },
+ // 鏌ョ湅闂ㄨ瘖闅忚璇︽儏
+ Referencequestion(row) {
+ this.previewVisible = true;
+ },
+ // 娣诲姞寮规鎼滅储
+ remoteMethod(query) {
+ if (query !== "") {
+ this.loading = true;
+ setTimeout(() => {
+ this.loading = false;
+ this.options = this.list.filter((item) => {
+ return item.label.toLowerCase().indexOf(query.toLowerCase()) > -1;
+ });
+ }, 200);
+ } else {
+ this.options = [];
+ }
+ },
- methods: {},
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ userId: undefined,
+ deptId: undefined,
+ userName: undefined,
+ nickName: undefined,
+ password: undefined,
+ phonenumber: undefined,
+ email: undefined,
+ sex: undefined,
+ status: "0",
+ remark: undefined,
+ postIds: [],
+ roleIds: [],
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuerytask() {
+ this.topqueryParams.pageNum = 1;
+ // this.topqueryParams.type = '';
+ this.getList();
+ },
+ handleQuery() {
+ this.topqueryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.dateRange = [];
+ this.topqueryParams = {
+ pageNum: 1,
+ pageSize: 10,
+ type: 2,
+ };
+ this.topqueryParams.leaveldeptcodes = store.getters.belongDepts.map(
+ (obj) => obj.deptCode
+ );
+ this.topqueryParams.leavehospitaldistrictcodes =
+ store.getters.belongWards.map((obj) => obj.districtCode);
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map((item) => item.userId);
+ this.single = selection.length != 1;
+ this.multiple = !selection.length;
+ },
+ //鍒犻櫎閫夐」
+ handleClose(tag) {
+ this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
+ },
+ //瑙﹀彂鏂板杈撳叆
+ showInput() {
+ this.inputVisible = true;
+ this.$nextTick((_) => {
+ this.$refs.saveTagInput.$refs.input.focus();
+ });
+ },
+ //鑾峰彇澶卞幓鐒︾偣瑙﹀彂
+ handleInputConfirm() {
+ let inputValue = this.inputValue;
+ if (inputValue) {
+ this.dynamicTags.push(inputValue);
+ }
+ this.inputVisible = false;
+ this.inputValue = "";
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ if (this.topqueryParams.type == 1) {
+ this.$router.push({
+ path: "/followvisit/particty",
+ query: {
+ type: this.topqueryParams.type,
+ serviceType: this.tasktopic,
+ },
+ });
+ } else if (this.topqueryParams.type == 2) {
+ this.$router.push({
+ path: "/followvisit/QuestionnaireTask",
+ 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, newadd) {
+ if (this.topqueryParams.type == 1) {
+ this.$router.push({
+ path: "/followvisit/particty",
+ query: {
+ id: row.taskid,
+ type: this.topqueryParams.type,
+ serviceType: this.tasktopic,
+ newadd: newadd, //鏄惁渚濈収鏂板缓
+ },
+ });
+ } else if (this.topqueryParams.type == 2) {
+ this.$router.push({
+ path: "/followvisit/QuestionnaireTask",
+ query: {
+ id: row.taskid,
+ type: this.topqueryParams.type,
+ serviceType: this.tasktopic,
+ newadd: newadd,
+ },
+ });
+ } else if (this.topqueryParams.type == 3) {
+ this.$router.push({
+ path: "/followvisit/Missioncreation",
+ query: {
+ id: row.taskid,
+ type: this.topqueryParams.type,
+ serviceType: this.tasktopic,
+ newadd: newadd,
+ },
+ });
+ }
+ },
+ // 鍒犻櫎浠诲姟
+ 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 && 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.taskType = this.topqueryParams.type;
+ this.TaskOperation.sendState = 2;
+ this.TaskOperation.sendType = 2;
+ this.$modal.confirm({
+ title: '纭鎿嶄綔',
+ text: '浣犵‘瀹氳鎵ц杩欎釜鎿嶄綔鍚楋紵',
+ showCancelButton: true,
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷'
+ }).then((result) => {
+ if (result.value) {
+ console.log('鐢ㄦ埛鐐瑰嚮浜嗙‘瀹氭寜閽�');
+ }
+ });
+ 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) {
+ if (this.activname == 0) {
+ this.TaskOperation.taskId = row.taskid;
+ this.TaskOperation.taskType = this.topqueryParams.type;
+ 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);
+ }
+ },
+
+ // 绔嬪嵆鎵ц
+ immediateExecution(row) {
+ console.log(row, "浠诲姟淇℃伅");
+ if (row.sendState != 2) {
+ this.TaskOperation.taskType = this.topqueryParams.type;
+ 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("浠诲姟宸茬珛鍗虫墽琛�");
+ }
+ });
+ })
+ .then(() => {})
+ .catch(() => {});
+ }
+ },
+
+ // 鏆傚仠
+ stop(row) {
+ console.log(row);
+ if (row.sendState == 2) {
+ 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();
+ });
+ }
+ },
+
+ /** 鎻愪氦鎸夐挳 */
+ submitForm: function () {
+ this.$refs["form"].validate((valid) => {
+ if (valid) {
+ if (this.form.userId != undefined) {
+ updateUser(this.form).then((response) => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addUser(this.form).then((response) => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const userIds = row.userId || this.ids;
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鐢ㄦ埛缂栧彿涓�"' + userIds + '"鐨勬暟鎹」锛�')
+ .then(function () {
+ return delUser(userIds);
+ })
+ .then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ })
+ .catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download(
+ "system/user/export",
+ {
+ ...this.topqueryParams,
+ },
+ `user_${new Date().getTime()}.xlsx`
+ );
+ },
+ findLabelByValue(data, value) {
+ const item = data.find((item) => item.value === value);
+ return item ? item.label : null;
+ },
+ },
};
</script>
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+.el-button--primary.is-plain {
+ color: #ffffff;
+ background: #409eff;
+ border-color: #4fabe9;
+}
+
+.document {
+ width: 100px;
+ height: 50px;
+}
+
+.documentf {
+ display: flex;
+ justify-content: flex-end;
+}
+
+.download {
+ text-align: center;
+
+ .el-upload__tip {
+ font-size: 23px;
+ }
+
+ .el-upload__text {
+ font-size: 23px;
+ }
+}
+
+.uploading {
+ margin-top: 20px;
+ margin: 20px;
+ padding: 30px;
+ background: #ffffff;
+ border: 1px solid #dcdfe6;
+ -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
+ 0 0 6px 0 rgba(0, 0, 0, 0.04);
+}
+
+.el-tag + .el-tag {
+ margin-left: 10px;
+}
+
+.button-new-tag {
+ margin-left: 10px;
+ height: 32px;
+ line-height: 30px;
+ padding-top: 0;
+ padding-bottom: 0;
+}
+
+.input-new-tag {
+ width: 90px;
+ margin-left: 10px;
+ vertical-align: bottom;
+}
+
+.drexamine {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding: 30px;
+ background: #daeaf5;
+
+ img {
+ width: 100px;
+ height: 100px;
+ }
+}
+
+.qrcode-dialo {
+ // text-align: center;
+ // display: flex;
+ margin: 20px;
+ padding: 30px;
+ background: #edf1f7;
+ border: 1px solid #dcdfe6;
+ -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
+ 0 0 6px 0 rgba(0, 0, 0, 0.04);
+
+ .topic-dev {
+ margin-bottom: 25px;
+ font-size: 20px !important;
+
+ .dev-text {
+ margin-bottom: 10px;
+ }
+ }
+}
+.button-bb {
+ font-weight: 500;
+ color: #2ba05c;
+}
+.button-xq {
+ font-weight: 500;
+ color: #409eff;
+}
+.button-sc {
+ font-weight: 500;
+ color: #dd302a;
+}
+.button-zx {
+ background: #4fabe9;
+ padding: 5px;
+ border-radius: 1px;
+ color: #ffffff;
+}
+.button-lj {
+ background: #e9614f;
+ padding: 5px;
+ border-radius: 1px;
+ color: #ffffff;
+}
+.button-xj {
+ background: #815c94;
+ padding: 5px;
+ border-radius: 1px;
+ color: #ffffff;
+}
+.button-zt {
+ background: #f9c116;
+ padding: 5px;
+ border-radius: 1px;
+ color: #ffffff;
+}
+
+::v-deep.el-radio-group {
+ span {
+ font-size: 24px;
+ }
+}
+
+::v-deep.el-button + .el-button {
+ margin-left: 0;
+}
+::v-deep.el-checkbox-group {
+ span {
+ font-size: 24px;
+ }
+}
+</style>
--
Gitblit v1.9.3