Parcourir la source

09/02 16:00

111
mo il y a 4 ans
Parent
commit
40e0e62eee

Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/index.html


+ 1 - 1
dist/static/css/chunk-75e41d60.37a98bf6.css → dist/static/css/chunk-1a72437c.6b36a256.css

@@ -1 +1 @@
-.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.msg[data-v-4f0fadd0]{min-width:120px}.label[data-v-4f0fadd0]{width:520px}
+.pagination-container[data-v-31cb099a]{background:#fff;padding:32px 16px;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.pagination-container.hidden[data-v-31cb099a]{display:none}.msg[data-v-5886bef8]{min-width:120px}.label[data-v-5886bef8]{width:520px}

Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/css/chunk-234e718b.8fc42446.css


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/css/chunk-38b6d5ec.633cea2d.css


+ 0 - 0
dist/static/css/chunk-2d33db1b.3ff7068e.css → dist/static/css/chunk-644c7b7b.601121d0.css


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/app.8032de0c.js


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/chunk-1a72437c.b068f836.js


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/chunk-234e718b.8b2aeeae.js


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/chunk-38b6d5ec.d594dab8.js


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/chunk-5af27aca.03e9ff33.js


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/chunk-644c7b7b.64939992.js


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/chunk-75e41d60.72c936af.js


Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
dist/static/js/chunk-7eaddf15.b2c12f36.js


+ 2 - 0
src/views/returnVisitManager/returnVisitList.vue

@@ -206,6 +206,8 @@ export default {
         this.organList = res.data;
       }
     })
+  },
+  activated () {
     this.getList()
   },
   methods: {

+ 133 - 2
src/views/teamBuild/signupList.vue

@@ -185,6 +185,7 @@
           </el-table-column>
           <el-table-column label="操作"
                            fixed='right'
+                           width="200"
                            align='center'>
             <template slot-scope="scope">
               <div>
@@ -212,6 +213,9 @@
                            v-permission="'studentRegistration/queryFeeDetail'"
                            v-if='scope.row.paymentStatus==2'
                            @click='quitTeam(scope.row)'>退团</el-button>
+                <el-button type="text"
+                           v-if="permission('visit/add')"
+                           @click="addVisit(scope.row)">新增回访</el-button>
               </div>
             </template>
           </el-table-column>
@@ -440,6 +444,67 @@
                    @click="chioseType">确 定</el-button>
       </span>
     </el-dialog>
+    <!-- 回访记录 -->
+    <el-dialog title="新增回访"
+               width="600px"
+               destroy-on-close
+               :close-on-click-modal='false'
+               :visible.sync="visitVisiable">
+      <el-form :model="visitForm"
+               label-width="120px"
+               label-position='right'
+               ref='visitForm'
+               :rules="visitRules">
+        <el-form-item label="学生姓名">
+          <p>{{visitForm.studentName}}</p>
+        </el-form-item>
+        <el-form-item label="回访类型"
+                      prop='visitType'>
+          <el-cascader expand-trigger="hover"
+                       clearable
+                       placeholder="请选择回访类型"
+                       :options="visitChiose"
+                       @change="handleChange"
+                       style="width:220px!important;"
+                       v-model="visitForm.visitType">
+          </el-cascader>
+        </el-form-item>
+        <el-form-item label="回访日期"
+                      prop='visitTime'>
+          <el-date-picker v-model.trim="visitForm.visitTime"
+                          align="right"
+                          style="width:220px!important;"
+                          type="date"
+                          placeholder="选择日期"
+                          :picker-options="pickerOptions"
+                          value-format="yyyy-MM-dd"></el-date-picker>
+        </el-form-item>
+        <el-form-item label="学员情况"
+                      prop="overview">
+          <el-input type="textarea"
+                    v-model="visitForm.overview"
+                    style="width:80%!important;"
+                    :rows="3"
+                    maxlength="50"
+                    show-word-limit></el-input>
+        </el-form-item>
+        <el-form-item label="家长反馈"
+                      prop='feedback'>
+          <el-input type="textarea"
+                    v-model="visitForm.feedback"
+                    style="width:80%!important;"
+                    :rows="3"
+                    maxlength="50"
+                    show-word-limit></el-input>
+        </el-form-item>
+      </el-form>
+      <span slot="footer"
+            class="dialog-footer">
+        <el-button @click="visitVisiable = false">取 消</el-button>
+        <el-button type="primary"
+                   @click="submitAddVisit">确 定</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -447,11 +512,15 @@ import pagination from '@/components/Pagination/index'
 import { getintoClass, getStudentList, findSound, musicGroupOpenPay, openPayment, musicGroupFound, extensionPayment, resetPlanNum, cancelMusicGroup, getTeamBaseInfo, studentApplyDetailExport, StudentQuit } from '@/api/buildTeam'
 import { resetStudentSubject, getStudentFeeDetail } from '@/api/studentManager'
 import { vaildStudentUrl, vaildTeacherUrl } from '@/utils/validate'
+import { addVisit } from "@/views/returnVisitManager/api.js"
 import QRCode from 'qrcodejs2'
+import { visitChiose } from '@/utils/searchArray'
 import axios from 'axios'
 import { getToken } from '@/utils/auth'
 import load from '@/utils/loading'
 import qs from 'qs'
+import { permission } from "@/utils/directivePage";
+import cleanDeep from 'clean-deep'
 export default {
   name: 'signupList',
   components: {
@@ -545,7 +614,27 @@ export default {
       Fsearch: null,
       Frules: null,
       applyExpireDate: '',
-      activeRow: null
+      activeRow: null,
+      visitVisiable: false,
+      visitForm: {
+        musicGroupId: '',
+        overview: '',
+        purpose: '',
+        studentId: '',
+        type: '',
+        visitTime: '',
+        visitType: '',
+        feedback: '',
+        studentName: ''
+      },
+
+      visitChiose,
+      visitRules: {
+        overview: [{ required: true, message: "请输入学生近况" }],
+        feedback: [{ required: true, message: "请输入家长反馈" }],
+        visitTime: [{ required: true, message: "请输入回访时间" }],
+        visitType: [{ required: true, message: "请选择回访类型" }]
+      }
     }
   },
   created () {
@@ -556,6 +645,9 @@ export default {
     this.init()
   },
   methods: {
+    permission (str) {
+      return permission(str);
+    },
     init () {
       this.status = this.$route.query.status;
       // 通过乐团id 获取乐团招生状态
@@ -568,7 +660,7 @@ export default {
       if (this.$route.query.rules) {
         this.Frules = this.$route.query.rules
       }
-
+      this.pickerOptions = this.beginDate();
       getTeamBaseInfo({ musicGroupId: this.id }).then(res => {
         if (res.code == 200) {
           this.applyExpireDate = res.data.musicGroup.applyExpireDate;
@@ -985,6 +1077,39 @@ export default {
 
       // row.typeVisible = false;
     },
+    addVisit (row) {
+      console.log(row)
+      this.visitForm.studentName = row.studentName;
+      this.visitForm.musicGroupId = this.teamid
+      this.visitForm.studentId = row.studentId
+      this.visitVisiable = true;
+    },
+    handleChange (val) {
+      this.visitForm.type = val[0]
+      this.visitForm.purpose = val[1]
+    },
+    submitAddVisit () {
+      this.$refs.visitForm.validate(res => {
+        if (res) {
+          this.visitForm.visitType = null;
+          addVisit(cleanDeep(this.visitForm)).then(res => {
+            if (res.code === 200) {
+              this.$message.success('新增成功')
+              this.visitVisiable = false
+            }
+          })
+        }
+      })
+    },
+    beginDate () {
+      let self = this;
+      return {
+        firstDayOfWeek: 1,
+        disabledDate (time) {
+          return time.getTime() >= new Date().getTime(); //开始时间不选时,结束时间最大值小于等于当天
+        }
+      };
+    },
   },
   watch: {
     orderVisible (val) {
@@ -1030,6 +1155,12 @@ export default {
         };
         this.$refs["quitForm"].resetFields();
       }
+    },
+    visitVisiable (val) {
+      if (!val) {
+        this.$refs["visitForm"].resetFields();
+      }
+
     }
   }
 }

+ 15 - 9
src/views/teamDetail/components/studentList.vue

@@ -638,9 +638,7 @@
                           style="width:220px!important;"
                           type="date"
                           placeholder="选择日期"
-                          :picker-options="{
-                            firstDayOfWeek:1
-                          }"
+                          :picker-options="pickerOptions"
                           value-format="yyyy-MM-dd"></el-date-picker>
         </el-form-item>
         <el-form-item label="学员情况"
@@ -649,7 +647,7 @@
                     v-model="visitForm.overview"
                     style="width:80%!important;"
                     :rows="3"
-                    maxlength="40"
+                    maxlength="50"
                     show-word-limit></el-input>
         </el-form-item>
         <el-form-item label="家长反馈"
@@ -658,7 +656,7 @@
                     v-model="visitForm.feedback"
                     style="width:80%!important;"
                     :rows="3"
-                    maxlength="40"
+                    maxlength="50"
                     show-word-limit></el-input>
         </el-form-item>
       </el-form>
@@ -670,7 +668,7 @@
       </span>
     </el-dialog>
   </div>
-</template>
+</template> 
 <script>
 import {
   getTeamStudentList,
@@ -895,6 +893,7 @@ export default {
           this.studentListInfo = res.data;
         }
       });
+      this.pickerOptions = this.beginDate();
       this.getList();
       // 获取乐团内所有声部
       findSound({ musicGroupId: this.teamid }).then(res => {
@@ -1375,9 +1374,16 @@ export default {
           })
         }
       })
-
-      console.log(this.visitForm)
-    }
+    },
+    beginDate () {
+      let self = this;
+      return {
+        firstDayOfWeek: 1,
+        disabledDate (time) {
+          return time.getTime() >= new Date().getTime(); //开始时间不选时,结束时间最大值小于等于当天
+        }
+      };
+    },
   },
   watch: {
     quitVisible (val) {

Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff