hlp 1 年之前
父節點
當前提交
508cdac19f

+ 17 - 11
fhKeeper/formulahousekeeper/customerBuler-crm/src/components/TaskModal/index.vue

@@ -2,7 +2,7 @@
   <el-dialog v-model="props.visible" width="800px" :show-close="false" :close-on-click-modal="false" top="10vh">
   <el-dialog v-model="props.visible" width="800px" :show-close="false" :close-on-click-modal="false" top="10vh">
     <template #header="{ titleId, titleClass }">
     <template #header="{ titleId, titleClass }">
       <div class="flex justify-between items-center border-b pb-3">
       <div class="flex justify-between items-center border-b pb-3">
-        <h4 :id="titleId" :class="titleClass">{{ editForm ? '编辑任务' : '新增任务' }}</h4>
+        <h4 :id="titleId" :class="titleClass">{{ title || "新建任务" }}</h4>
         <div>
         <div>
           <el-button v-if="!editForm" type="primary" :loading="['2'].includes(props.saveLoading)"
           <el-button v-if="!editForm" type="primary" :loading="['2'].includes(props.saveLoading)"
             @click="submitForm(formRef, true)">保存并新建</el-button>
             @click="submitForm(formRef, true)">保存并新建</el-button>
@@ -16,33 +16,37 @@
       <el-form ref="formRef" :model="form" label-width="7em" :rules="rules" class="flex flex-wrap form">
       <el-form ref="formRef" :model="form" label-width="7em" :rules="rules" class="flex flex-wrap form">
         <el-form-item label="任务名称:" prop="taskName" required>
         <el-form-item label="任务名称:" prop="taskName" required>
           <el-input v-model="form.taskName" type="textarea" placeholder="请输入任务名称" clearable maxlength="100"
           <el-input v-model="form.taskName" type="textarea" placeholder="请输入任务名称" clearable maxlength="100"
-            show-word-limit />
+            show-word-limit :disabled="disabledList && disabledList.includes('taskName')" />
         </el-form-item>
         </el-form-item>
         <el-form-item prop="priority" label="优先级:" required>
         <el-form-item prop="priority" label="优先级:" required>
-          <el-select v-model="form.priority" placeholder="请选择" clearable>
+          <el-select v-model="form.priority" placeholder="请选择" clearable
+            :disabled="disabledList && disabledList.includes('priority')">
             <el-option v-for="item in PRIORITY " :key="item.value" :value="item.value" :label="item.label" />
             <el-option v-for="item in PRIORITY " :key="item.value" :value="item.value" :label="item.label" />
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
         <el-form-item :label="form.taskType">
         <el-form-item :label="form.taskType">
           <template #label>
           <template #label>
-            <el-select v-model="form.taskType" class="border resetSelect" style="width: 100px" @change="changeTaskType">
+            <el-select v-model="form.taskType" class="border resetSelect" style="width: 100px" @change="changeTaskType"
+              :disabled="disabledList && disabledList.includes('priority')">
               <el-option v-for="item in TASK_TYPE" :key="item.value" :value="item.value" :label="item.label" />
               <el-option v-for="item in TASK_TYPE" :key="item.value" :value="item.value" :label="item.label" />
             </el-select>
             </el-select>
           </template>
           </template>
           <template v-for="item in TASK_TYPE_FIELD">
           <template v-for="item in TASK_TYPE_FIELD">
             <el-select v-model="form[item.field]" v-if="form.taskType == item.type" placeholder="请选择" clearable
             <el-select v-model="form[item.field]" v-if="form.taskType == item.type" placeholder="请选择" clearable
-              filterable>
+              filterable :disabled="disabledList && disabledList.includes('priority')">
               <el-option v-for="item in taskTypeValueData" :key="item.value" :value="item.value" :label="item.label" />
               <el-option v-for="item in taskTypeValueData" :key="item.value" :value="item.value" :label="item.label" />
             </el-select>
             </el-select>
           </template>
           </template>
         </el-form-item>
         </el-form-item>
         <el-form-item label="联系人:" v-if="TASK_TYPE.find(v => v.value === (form.taskType || '1'))?.show">
         <el-form-item label="联系人:" v-if="TASK_TYPE.find(v => v.value === (form.taskType || '1'))?.show">
-          <el-select v-model="form.contactsId" placeholder="请选择" clearable filterable>
+          <el-select v-model="form.contactsId" placeholder="请选择" clearable filterable
+            :disabled="disabledList && disabledList.includes('priority')">
             <el-option v-for="item in contactValueData" :key="item.value" :value="item.value" :label="item.label" />
             <el-option v-for="item in contactValueData" :key="item.value" :value="item.value" :label="item.label" />
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
         <el-form-item label="执行人:">
         <el-form-item label="执行人:">
-          <el-select v-model="form.executorId" placeholder="请选择" clearable multiple filterable>
+          <el-select v-model="form.executorId" placeholder="请选择" clearable multiple filterable
+            :disabled="disabledList && disabledList.includes('executorId')">
             <el-option v-for="item in executorValueData" :key="item.value" :value="item.value" :label="item.label" />
             <el-option v-for="item in executorValueData" :key="item.value" :value="item.value" :label="item.label" />
           </el-select>
           </el-select>
         </el-form-item>
         </el-form-item>
@@ -55,7 +59,7 @@
               <el-option v-for="item in REPEAT_TYPE" :key="item.value" :value="item.value" :label="item.label" />
               <el-option v-for="item in REPEAT_TYPE" :key="item.value" :value="item.value" :label="item.label" />
             </el-select>
             </el-select>
           </el-form-item>
           </el-form-item>
-          <template v-if="[0,1,2,3].includes(form.repeatType)">
+          <template v-if="[0, 1, 2, 3].includes(form.repeatType)">
             <el-form-item label="每:" v-if="form.repeatType == 3">
             <el-form-item label="每:" v-if="form.repeatType == 3">
               <el-input-number v-model="form.repeatDesignSameday" controls-position="right" :min="1" />天
               <el-input-number v-model="form.repeatDesignSameday" controls-position="right" :min="1" />天
             </el-form-item>
             </el-form-item>
@@ -98,10 +102,12 @@
           </template>
           </template>
         </template>
         </template>
         <el-form-item label="开始时间:" class="w50">
         <el-form-item label="开始时间:" class="w50">
-          <el-date-picker v-model="form.startDate" type="date" placeholder="选择日期" value-format="YYYY-MM-DD" />
+          <el-date-picker v-model="form.startDate" type="date" placeholder="选择日期" value-format="YYYY-MM-DD"
+            :disabled="disabledList && disabledList.includes('priority')" />
         </el-form-item>
         </el-form-item>
         <el-form-item label="截止时间:" class="w50">
         <el-form-item label="截止时间:" class="w50">
-          <el-date-picker v-model="form.endDate" type="date" placeholder="选择日期" value-format="YYYY-MM-DD" />
+          <el-date-picker v-model="form.endDate" type="date" placeholder="选择日期" value-format="YYYY-MM-DD"
+            :disabled="disabledList && disabledList.includes('priority')" />
         </el-form-item>
         </el-form-item>
       </el-form>
       </el-form>
       <GenerateForm ref="generateFormRef" :data="generateFormData" :value="form" />
       <GenerateForm ref="generateFormRef" :data="generateFormData" :value="form" />
@@ -232,7 +238,7 @@ function changeTaskType(value: TASK_VALUE_TYPE) {
     case 3:
     case 3:
       taskTypeValueData.value = [];
       taskTypeValueData.value = [];
       setTimeout(() => {
       setTimeout(() => {
-        taskTypeValueData.value = [{ label: "线索1", value: 1 }, { label: "线索2", value: 2}]
+        taskTypeValueData.value = [{ label: "线索1", value: 1 }, { label: "线索2", value: 2 }]
       }, 500)
       }, 500)
       break;
       break;
     default:
     default:

+ 18 - 0
fhKeeper/formulahousekeeper/customerBuler-crm/src/components/TaskModal/type.d.ts

@@ -11,6 +11,24 @@ export interface Props {
    * form表单的值
    * form表单的值
    */
    */
   editForm: any;
   editForm: any;
+  /**
+   *  弹窗标题
+   * @default '新建任务'
+   */
+  title?: string;
+  disabledList?: (
+    | "taskName"
+    | "priority"
+    | "taskType"
+    | "customerId"
+    | "businessId"
+    | "orderId"
+    | "clueId"
+    | "contactsId"
+    | "executorId"
+    | "startDate"
+    | "endDate"
+  )[];
 }
 }
 
 
 export interface Emits {
 export interface Emits {

+ 3 - 2
fhKeeper/formulahousekeeper/customerBuler-crm/src/pages/tasks/index.vue

@@ -117,8 +117,8 @@
         </div>
         </div>
       </div>
       </div>
     </div>
     </div>
-    <TaskModal :visible="taskModalVisible" :save-loading="taskLoading" :edit-form="taskForm" @close="closeTaskModal"
-      @submit="submitForm" />
+    <TaskModal :visible="taskModalVisible" :title="taskForm?'编辑任务':'新建任务'" :save-loading="taskLoading"
+      :edit-form="taskForm" @close="closeTaskModal" @submit="submitForm" :disabled-list="[]"/>
     <ImportModal :visible="importVisible" :save-loading="importLoading" @close="closeImportModal"
     <ImportModal :visible="importVisible" :save-loading="importLoading" @close="closeImportModal"
       @submit="importExcel" />
       @submit="importExcel" />
     <ExportModal :visible="exportVisible" :save-loading="exportLoading" @close="closeExportModal"
     <ExportModal :visible="exportVisible" :save-loading="exportLoading" @close="closeExportModal"
@@ -263,6 +263,7 @@ const tableData = ref<any[]>([
   }
   }
 ])
 ])
 function search() {
 function search() {
+  return
   loading.value = true;
   loading.value = true;
   post(PAGE_LIST, getFromValue(searchForm.value)).then(({ data }) => {
   post(PAGE_LIST, getFromValue(searchForm.value)).then(({ data }) => {
     loading.value = false;
     loading.value = false;

+ 1 - 1
fhKeeper/formulahousekeeper/customerBuler-crm/vite.config.ts

@@ -4,7 +4,7 @@ import vue from "@vitejs/plugin-vue";
 import { resolve } from "path";
 import { resolve } from "path";
 
 
 // const target = "http://192.168.2.8:10010";
 // const target = "http://192.168.2.8:10010";
-const target = "http://192.168.2.118:10010";
+const target = "http://192.168.2.93:10010";
 // const target = "http://47.101.180.183:10010";
 // const target = "http://47.101.180.183:10010";
 
 
 export default defineConfig({
 export default defineConfig({