Browse Source

回访统一处理

1
mo 2 năm trước cách đây
mục cha
commit
d3b4e73f66

+ 1 - 2
src/views/returnVisitManager/components/waitVisit.vue

@@ -150,9 +150,9 @@
         :detail="activeRow"
         :username="activeRow.username"
         @close="visitVisible = false"
-        :useVisitType="false"
         @submited="getList"
         :isMainGo="false"
+        :useVisitType="false"
       />
     </el-dialog>
   </div>
@@ -217,7 +217,6 @@ export default {
     this.getList();
     if (this.$route.query.search || this.$route.query.timer) {
       // console.log( )
-      console.log("进来了");
       resetQuery(this, { timer: undefined, search: undefined });
     }
   },

+ 2 - 1
src/views/smallStudentManager/components/visiList.vue

@@ -167,7 +167,8 @@ import { getVisitList } from "@/views/returnVisitManager/api";
 import pagination from "@/components/Pagination/index";
 import { getTimes } from "@/utils";
 import cleanDeep from "clean-deep";
-import addVisit from "./addVisit";
+// import addVisit from "./addVisit";
+import addVisit from "@/views/withdrawal-application/modals/visit";
 export default {
   components: { pagination, addVisit },
   props: ["studentId", "studentName", "groupType"],

+ 63 - 12
src/views/withdrawal-application/modals/visit.vue

@@ -34,6 +34,7 @@
           placeholder="请选择回访类型"
           :options="visitChiose"
           v-model="visitForm.visitType"
+          @change="changeVisitType"
         >
         </el-cascader>
       </el-form-item>
@@ -59,7 +60,11 @@
           show-word-limit
         ></el-input>
       </el-form-item>
-      <el-form-item label="家长反馈" prop="feedback">
+      <el-form-item
+        label="家长反馈"
+        prop="feedback"
+        v-if="visitForm.visitType[0] != '小课回访'"
+      >
         <el-input
           type="textarea"
           v-model="visitForm.feedback"
@@ -70,7 +75,12 @@
           show-word-limit
         ></el-input>
       </el-form-item>
-      <el-form-item label="家长反馈" prop="feedbackType">
+      <el-form-item
+        label="家长反馈"
+        prop="feedbackType"
+        v-if="visitForm.visitType[0] == '小课回访'"
+        :rules="[{ required: true, message: '选择家长反馈' }]"
+      >
         <el-radio-group
           v-model="visitForm.feedbackType"
           @change="
@@ -90,9 +100,11 @@
       <el-form-item
         label="反馈详情"
         prop="feedbackTypeDesc"
+        :rules="[{ required: true, message: '选择反馈详情' }]"
         v-if="
-          visitForm.feedbackType == 'THINKING' ||
-          visitForm.feedbackType == 'LOST'
+          (visitForm.feedbackType == 'THINKING' ||
+            visitForm.feedbackType == 'LOST') &&
+          visitForm.visitType[0] == '小课回访'
         "
       >
         <el-radio-group v-model="visitForm.feedbackTypeDesc">
@@ -104,12 +116,29 @@
           >
         </el-radio-group>
       </el-form-item>
+      <!-- probStatus   -->
+      <el-form-item
+        label="问题状态"
+        prop="probStatus"
+        :rules="[{ required: true, message: '选择问题状态' }]"
+      >
+        <el-radio-group v-model="visitForm.probStatus">
+          <el-radio-button :label="1" :key="index">已解决</el-radio-button>
+          <el-radio-button :label="0">未解决</el-radio-button>
+        </el-radio-group>
+      </el-form-item>
+
       <el-form-item label="回访图片">
         <div style="width: 80% !important">
           <uploadImageList :uploaded="visitForm.attachments" />
         </div>
       </el-form-item>
-      <el-form-item label="原因" prop="feedback" :rules="[{ required: isRequire, message: '请输入家长反馈内容' }]">
+      <el-form-item
+        label="原因"
+        prop="feedback"
+        :rules="[{ required: true, message: '请输入家长反馈内容' }]"
+        v-if="visitForm.visitType[0] == '小课回访'"
+      >
         <el-input
           type="textarea"
           v-model="visitForm.feedback"
@@ -152,7 +181,12 @@
 </template>
 <script>
 import cleanDeep from "clean-deep";
-import { visitChiose, visitChiose1 } from "@/utils/searchArray";
+import {
+  visitChiose,
+  visitChiose1,
+  feedbackTypeList,
+  feedbackTypeDescList,
+} from "@/utils/searchArray";
 import { addVisit } from "@/views/returnVisitManager/api";
 import record from "./record";
 import studentWork from "./studentWork";
@@ -163,6 +197,8 @@ export default {
   data() {
     return {
       visitChiose,
+      feedbackTypeList,
+      feedbackTypeDescList,
       visitForm: {
         musicGroupId: "",
         overview: "",
@@ -170,19 +206,18 @@ export default {
         studentId: "",
         type: "",
         visitTime: "",
-        visitType: "",
+        visitType: [],
         feedback: "",
         studentName: "",
         attachments: [],
-        feedback,
-        feedbackTypeDesc,
-        feedbackType
+        feedbackTypeDesc: "",
+        feedbackType: "",
+        probStatus:''
       },
       visitRules: {
         overview: [{ required: true, message: "请输入学生近况" }],
         feedback: [{ required: true, message: "请输入家长反馈" }],
         visitTime: [{ required: true, message: "请输入回访时间" }],
-        visitType: [{ required: true, message: "请选择回访类型" }],
       },
       recordVisible: false,
       workVisible: false,
@@ -202,7 +237,7 @@ export default {
       this.visitChiose = visitChiose1;
       this.$set(this.visitForm, "visitType", this.useVisitType);
     } else {
-      this.visitChiose = visitChiose;
+      this.visitChiose = visitChiose1;
     }
   },
   computed: {
@@ -218,6 +253,16 @@ export default {
     studentId() {
       return this.detail.userId || this.detail.studentId;
     },
+    isRequire() {
+      if (
+        this.visitForm.feedbackType == "THINKING" ||
+        this.visitForm.feedbackType == "PENDING_PAYMENT"
+      ) {
+        return false;
+      } else {
+        return true;
+      }
+    },
   },
   methods: {
     submitAddVisit() {
@@ -247,6 +292,12 @@ export default {
         }
       });
     },
+    changeVisitType(val) {
+      console.log(this.visitForm.visitType);
+      this.visitForm.feedback = "";
+      this.visitForm.feedbackTypeDesc = "";
+      this.visitForm.feedbackType = "";
+    },
   },
 };
 </script>