WXL
2025-04-18 8d0f7fcc4a961a6a2cd969171066f652cc8e736f
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,9 +68,28 @@
      <el-divider></el-divider>
      <el-row :gutter="10" class="mb8">
        <el-col :span="1.5">
          <el-select v-model="tasktopic" placeholder="请选择新增类型">
          <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"
@@ -94,34 +104,11 @@
            size="medium"
            @click="handleAdd"
            :disabled="!tasktopic"
            >新增</el-button
            >新建任务</el-button
          >
        </el-col>
        <el-col :span="1.5">
          <el-button
            type="success"
            plain
            icon="el-icon-edit"
            size="medium"
            :disabled="single"
            @click="handleUpdate"
            v-hasPermi="['system:user:edit']"
            >修改</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">
        <!-- <el-col :span="19">
          <div class="documentf">
            <div class="document">
              <el-button
@@ -135,7 +122,7 @@
              >
            </div>
          </div>
        </el-col>
        </el-col> -->
        <!-- <el-col :span="1.5"> </el-col> -->
      </el-row>
      <!-- <right-toolbar
@@ -143,60 +130,87 @@
              @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-column label="序号" fixed align="center" key="id" prop="id" />
      <el-table v-loading="loading" :data="userList">
        <!-- <el-table-column
          label="序号"
          fixed
          align="center"
          key="taskid"
          prop="taskid"
        /> -->
        <el-table-column
          label="任务名称"
          fixed
          width="200"
          align="center"
          sortable
          key="name"
          prop="name"
          key="taskName"
          prop="taskName"
          :show-overflow-tooltip="true"
        />
        <el-table-column
          label="任务描述"
          width="280"
          align="center"
          key="describe"
          prop="describe"
        />
        <el-table-column
          label="待执行/总任务"
          align="center"
          key="nickName"
          prop="nickName"
        />
        <!-- <el-table-column
          label="审核人"
          align="center"
          key="create_by"
          prop="create_by"
          width="120"
          key="taskDesc"
          prop="taskDesc"
          :show-overflow-tooltip="true"
        />
        <el-table-column
          label="审核时间"
          sortable
          label="服务项目"
          width="120"
          align="center"
          prop="create_time"
          width="160"
          key="templatename"
          prop="templatename"
          :show-overflow-tooltip="true"
        />
        <el-table-column
          label="总任务/已随访"
          align="center"
          key="nickName"
          width="120"
          prop="nickName"
        >
          <template slot-scope="scope">
            <span>{{ parseTime(scope.row.create_time) }}</span>
            <span
              >{{ scope.row.wfs ? scope.row.wfs + scope.row.yfs : "" }}/{{
                scope.row.yfs
              }}</span
            >
          </template>
        </el-table-column> -->
        </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="create_by"
          prop="create_by"
          key="createBy"
          prop="createBy"
          width="120"
          :show-overflow-tooltip="true"
        />
@@ -204,37 +218,54 @@
          label="创建时间"
          sortable
          align="center"
          prop="create_time"
          prop="createTime"
          width="160"
        >
          <template slot-scope="scope">
            <span>{{ parseTime(scope.row.create_time) }}</span>
            <span>{{ formatTime(scope.row.createTime) }}</span>
          </template>
        </el-table-column>
        <el-table-column
          label="状态"
          fixed="right"
          align="center"
          key="phonenumber"
          prop="phonenumber"
          width="120"
        />
        <el-table-column
          label="操作"
          fixed="right"
          align="center"
          width="120"
          width="240"
          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="handleUpdate(scope.row)"
              v-hasPermi="['system:user:edit']"
              @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 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>
@@ -243,7 +274,7 @@
          label="任务详情"
          fixed="right"
          align="center"
          width="200"
          width="240"
          class-name="small-padding fixed-width"
        >
          <template slot-scope="scope">
@@ -273,58 +304,78 @@
        @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.name"></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>
      <el-tabs type="border-card" v-model="activname">
        <el-tab-pane>
          <span slot="label"><i class="el-icon-date"></i> 正常发起</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>
@@ -339,14 +390,24 @@
  resetUserPwd,
  changeUserStatus,
} from "@/api/system/user";
import { getTasklist, getTaskInfo } from "@/api/AiCentre/index";
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: "User",
  dicts: ["sys_normal_disable", "sys_user_sex"],
  name: "Tasklist",
  dicts: ["sys_normal_disable", "sys_user_sex", "task_status"],
  components: { Treeselect },
  data() {
    return {
@@ -365,7 +426,7 @@
      // 用户表格数据
      userList: null,
      // 弹出层标题
      title: "新增门诊随访",
      title: "新增影像随访",
      // 是否显示修改、添加弹出层
      addalteropen: false,
      // 部门名称
@@ -378,46 +439,102 @@
      postOptions: [],
      // 角色选项
      roleOptions: [],
      longTask: 0,
      taskform: {
        showDate: [],
        showTimeMorn: [],
        showTimeNight: [],
        showTimeNoon: [],
      },
      taskformVisible: false,
      dynamicTags: ["选项一", "选项二", "选项三"], //选项
      inputVisible: false,
      inputValue: "",
      previewVisible: false, //门诊随访预览弹框
      previewVisible: false, //影像随访预览弹框
      TaskOperation: {},
      radio: "",
      radios: [],
      previewtype: 2, //预览门诊随访类型
      previewtype: 2, //预览影像随访类型
      total: 0, // 总条数
      ImportQuantity: 999, //导门诊随访数量
      //预览门诊随访信息
      ImportQuantity: 999, //导影像随访数量
      //预览影像随访信息
      previewvalue: {
        username: "这个医生对你怎么样",
      },
      longtermlist: [
        {
          value: 1,
          label: "语音随访",
        },
        {
          value: 2,
          label: "问卷随访",
        },
        {
          value: 3,
          label: "宣教关怀",
        },
        {
          value: 4,
          label: "消息通知",
        },
      ],
      taskoptions: [
        {
          value: "1",
          label: "宣教服务",
          label: "监测评估",
        },
        {
          value: "2",
          label: "门诊随访",
        },
        {
          value: "3",
          label: "出院随访",
        },
        {
          value: "3",
          label: "门诊随访",
        },
        {
          value: "4",
          label: "复诊服务",
          label: "宣教关怀",
        },
        {
          value: "5",
          label: "体检通知",
          label: "复诊管理",
        },
        // {
        //   value: "5",
        //   label: "满意度调查",
        // },
        {
          value: "7",
          label: "患者报告",
        },
        // {
        //   value: "8",
        //   label: "其他通知",
        // },
        {
          value: "9",
          label: "体检随访",
        },
        // {
        //   value: "10",
        //   label: "医技随访",
        // },
        {
          value: "11",
          label: "影像随访",
        },
        {
          value: "6",
          label: "问卷服务",
          value: "12",
          label: "心电随访",
        },
        {
          value: "13",
          label: "专科随访",
        },
      ],
      tasktopic: null, //新增类型
      tasktopic: "2", //新增类型
      activname: "",
      value: [],
      list: [],
      loading: false,
@@ -515,31 +632,14 @@
      topqueryParams: {
        pageNum: 1,
        pageSize: 10,
        type: 2,
        userName: undefined,
        tagid: undefined,
        topic: undefined,
      },
      propss: { multiple: true },
      options: [],
      topicoptions: [
        {
          value: 1,
          label: "待审核",
        },
        {
          value: 2,
          label: "执行中",
        },
        {
          value: 3,
          label: "执行完成",
        },
        {
          value: 4,
          label: "已停止",
        },
      ],
      checkboxlist: [],
      // 表单校验
      rules: {
        userName: [
@@ -590,10 +690,22 @@
  },
  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() {
@@ -604,14 +716,62 @@
  methods: {
    /** 查询任务列表 */
    getList() {
      // this.loading = true;
      this.loading = true;
      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: "宣教关怀",
          },
        ];
      } 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.beginTime = this.dateRange[0];
      this.topqueryParams.endTime = 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;
    },
@@ -629,26 +789,7 @@
        this.options = [];
      }
    },
    // 门诊随访状态修改
    handleStatusChange(row) {
      let text = row.status === "0" ? "启用" : "停用";
      this.$modal
        .confirm('确认要"' + text + '""' + row.userName + '"用户吗?')
        .then(function () {
          return changeUserStatus(row.userId, row.status);
        })
        .then(() => {
          this.$modal.msgSuccess(text + "成功");
        })
        .catch(function () {
          row.status = row.status === "0" ? "1" : "0";
        });
    },
    // 取消按钮
    cancel() {
      this.addalteropen = false;
      this.reset();
    },
    // 表单重置
    reset() {
      this.form = {
@@ -668,6 +809,11 @@
      this.resetForm("form");
    },
    /** 搜索按钮操作 */
    handleQuerytask() {
      this.topqueryParams.pageNum = 1;
      // this.topqueryParams.type = '';
      this.getList();
    },
    handleQuery() {
      this.topqueryParams.pageNum = 1;
      this.getList();
@@ -676,8 +822,15 @@
    resetQuery() {
      this.dateRange = [];
      this.resetForm("queryForm");
      this.topqueryParams.deptId = undefined;
      this.$refs.tree.setCurrentKey(null);
      this.topqueryParams= {
        pageNum: 1,
        pageSize: 10,
        type: 2,
        userName: undefined,
        tagid: undefined,
        topic: undefined,
      };
      // this.$refs.tree.setCurrentKey(null);
      this.handleQuery();
    },
    // 多选框选中数据
@@ -708,35 +861,190 @@
    },
    /** 新增按钮操作 */
    handleAdd() {
      this.$router.push({
        path: "/followvisit/particty",
        query: { type: this.tasktopic },
      });
      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) {
      this.$router.push({
        path: "/followvisit/particty",
        query: { type: row.type, id: row.taskid },
      });
    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(){},
    /** 重置密码按钮操作 */
    handleResetPwd(row) {
      this.$prompt('请输入"' + row.userName + '"的新密码', "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        closeOnClickModal: false,
        inputPattern: /^.{5,20}$/,
        inputErrorMessage: "用户密码长度必须介于 5 和 20 之间",
      })
        .then(({ value }) => {
          resetUserPwd(row.userId, value).then((response) => {
            this.$modal.msgSuccess("修改成功,新密码是:" + value);
    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(
            '当前选中任务名称为"' +
              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();
        });
      }
    },
    /** 提交按钮 */
@@ -782,6 +1090,10 @@
        },
        `user_${new Date().getTime()}.xlsx`
      );
    },
    findLabelByValue(data, value) {
      const item = data.find((item) => item.value === value);
      return item ? item.label : null;
    },
  },
};
@@ -894,6 +1206,24 @@
  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 {
@@ -901,6 +1231,9 @@
  }
}
::v-deep.el-button + .el-button {
  margin-left: 0;
}
::v-deep.el-checkbox-group {
  span {
    font-size: 24px;