瀏覽代碼

乐保页面完成

1
mo 4 年之前
父節點
當前提交
5c02b4e9b0

+ 2 - 0
src/router/index.js

@@ -378,6 +378,8 @@ export const asyncRoutes = {
   WithdrawalApplication:()=>import('@/views/withdrawal-application'),
   // 欠费学员列表
   ArrearageStudents: () => import('@/views/arrearage-students'),
+  // 乐器维护
+  musicalManager:()=>import('@/views/musicalManager')
 }
 
 export default router

+ 2 - 1
src/router/notKeepAliveList.js

@@ -89,5 +89,6 @@ export default [
   '/business/teacherDetail',
   '/arrearage-students',
   '/business/strudentPayInfo',
-  '/timedTask/timedTask'
+  '/timedTask/timedTask',
+  '/business/musicalManager', // 乐器维护
 ]

+ 195 - 0
src/views/musicalManager/index.vue

@@ -0,0 +1,195 @@
+<!--  -->
+<template>
+  <div class="m-container">
+    <h2>
+      <div class="squrt"></div>
+      乐器维护
+    </h2>
+    <div class="m-core">
+      <save-form
+        :inline="true"
+        :model="searchForm"
+        @submit="search"
+        @reset="onReSet"
+      >
+        <el-form-item>
+          <el-input
+            v-model.trim="searchForm.search"
+            clearable
+            @keyup.enter.native="search"
+            placeholder="学生姓名、编号、电话"
+          ></el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-select
+            class="multiple"
+            v-model.trim="searchForm.organIdList"
+            filterable
+            clearable
+            placeholder="请选择分部"
+          >
+            <el-option
+              v-for="(item, index) in selects.branchs"
+              :key="index"
+              :label="item.name"
+              :value="item.id"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+          <el-select
+            placeholder="请选择乐器类型"
+            v-model="searchForm.subjectId"
+            clearable
+            filterable
+          >
+            <el-option
+              v-for="(item, index) in soundLists"
+              :label="item.name"
+              :value="item.id"
+              :key="index"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item>
+          <el-input
+            v-model.trim="searchForm.search"
+            clearable
+            @keyup.enter.native="search"
+            placeholder="乐器编号"
+          ></el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-button native-type="submit" type="primary">搜索</el-button>
+          <el-button native-type="reset" type="danger">重置</el-button>
+        </el-form-item>
+      </save-form>
+      <div class="tableWrap">
+        <el-table
+          style="width: 100%"
+          :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+          :data="tableList"
+        >
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="分部"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="学员编号"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="学员姓名"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="联系电话"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="乐器名称"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="乐器种类"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="乐器编号"
+          ></el-table-column>
+          <el-table-column
+            align="center"
+            prop="studentId"
+            label="有效期"
+          ></el-table-column>
+          <el-table-column align="center" prop="studentId" label="操作">
+            <template slot-scope="scope">
+              <div>
+                <el-button type="text">查看维修单</el-button>
+              </div>
+            </template>
+          </el-table-column>
+        </el-table>
+        <pagination
+          sync
+          :total.sync="rules.total"
+          :page.sync="rules.page"
+          :limit.sync="rules.limit"
+          :page-sizes="rules.page_size"
+          @pagination="getList"
+        />
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import axios from "axios";
+import { getToken } from "@/utils/auth";
+import pagination from "@/components/Pagination/index";
+import { getSoundTree } from "@/api/buildTeam";
+import load from "@/utils/loading";
+export default {
+  components: { pagination },
+  data() {
+    return {
+      searchForm: {
+        search: null,
+      },
+
+      soundLists: [],
+      organList: [],
+      rules: {
+        // 分页规则
+        limit: 10, // 限制显示条数
+        page: 1, // 当前页
+        total: 0, // 总条数
+        page_size: [10, 20, 40, 50], // 选择限制显示条数
+      },
+    };
+  },
+  //生命周期 - 创建完成(可以访问当前this实例)
+  created() {},
+  //生命周期 - 挂载完成(可以访问DOM元素)
+  mounted() {
+    // 获取分部
+    this.$store.dispatch("setBranchs");
+    getSoundTree({ tenantId: 1, rows: 9999 }).then((res) => {
+      if (res.code == 200) {
+        if (res.code == 200) {
+          this.soundList = res.data.rows;
+          this.getSound();
+        }
+      }
+    });
+    this.init();
+  },
+  methods: {
+    init() {},
+    getList() {},
+    search() {
+      this.rules.page = 1;
+      this.getList();
+    },
+    onReSet() {},
+    getSound() {
+      this.soundLists = [];
+      for (let i in this.soundList) {
+        if (this.soundList[i].subjects.length > 0) {
+          this.soundLists = this.soundLists.concat(this.soundList[i].subjects);
+        }
+      }
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+</style>

+ 32 - 6
src/views/repairManager/repairList.vue

@@ -106,12 +106,8 @@
           :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
           :data="tableList"
         >
-          <el-table-column
-            align="center"
-            prop="organName"
-            label="分部"
-          >
-                <template slot-scope="scope">
+          <el-table-column align="center" prop="organName" label="分部">
+            <template slot-scope="scope">
               <copy-text>{{ scope.row.organName }}</copy-text>
             </template>
           </el-table-column>
@@ -267,11 +263,40 @@
               </p>
             </el-form-item>
           </el-col>
+          <el-col :span="12">
+            <el-form-item label="是否乐保乐器:">
+              <p v-if="activeRow" class="visibleCell">
+                {{ activeRow.amount | moneyFormat }}元
+              </p>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col>
+            <el-form-item label="乐保减免金额">
+              {{ 0.0 }}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col>
+            <el-form-item label="实际支付服务费">
+              {{ 0.0 }}
+            </el-form-item>
+          </el-col>
         </el-row>
         <el-form-item
           label="问题描述及解决方案:"
           style="width: 100%; margin-bottom: 0"
         ></el-form-item>
+        <div>
+          <el-image v-for="(item,index) in srcList" :key="index"
+            style="width: 100px; height: 100px;margin-right:10px"
+            :src="url"
+            :preview-src-list="srcList"
+          >
+          </el-image>
+        </div>
         <el-input
           type="textarea"
           v-if="activeRow"
@@ -379,6 +404,7 @@ export default {
       isInit: false,
       visibleForm: {},
       activeRow: null,
+      srcList:[]
     };
   },
   //生命周期 - 创建完成(可以访问当前this实例)

+ 48 - 17
src/views/studentManager/components/studentLebao.vue

@@ -18,16 +18,16 @@
       </el-form-item>
       <el-form-item>
         <el-select
-          v-model.trim="searchForm.attendanceStatus"
-          filterable
+          placeholder="请选择乐器类型"
+          v-model="searchForm.subjectId"
           clearable
-          placeholder="乐器种类"
+          filterable
         >
           <el-option
-            v-for="(item, index) in typeList"
+            v-for="(item, index) in soundLists"
+            :label="item.name"
+            :value="item.id"
             :key="index"
-            :label="item.label"
-            :value="item.value"
           ></el-option>
         </el-select>
       </el-form-item>
@@ -53,7 +53,9 @@
         <el-button type="primary" native-type="reset">重置</el-button>
       </el-form-item>
     </save-form>
-    <el-button @click="addMusicVisible = true" type="primary">新增乐器</el-button>
+    <el-button @click="addMusicVisible = true" type="primary"
+      >新增乐器</el-button
+    >
     <div class="tableWrap">
       <el-table
         :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
@@ -89,20 +91,29 @@
         @pagination="getList"
       />
     </div>
-       <el-dialog title="新增乐器"
-                 :visible.sync="addMusicVisible" v-if="addMusicVisible">
-          <addMusic />
-      </el-dialog>
+    <el-dialog
+      title="新增乐器"
+      width="600px"
+      :visible.sync="addMusicVisible"
+      v-if="addMusicVisible"
+    >
+      <addMusic />
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="addMusicVisible = false">取 消</el-button>
+        <el-button type="primary" @click="addMusicSubmit">确 定</el-button>
+      </span>
+    </el-dialog>
   </div>
 </template>
 <script>
 import pagination from "@/components/Pagination/index";
-import addMusic from "../modals/addMusic"
+import addMusic from "../modals/addMusic";
+import { getSoundTree } from "@/api/buildTeam";
 export default {
-  components:{pagination},
+  components: { pagination, addMusic },
   data() {
     return {
-      typeList: [],
+      soundLists: [],
       tableList: [],
       searchForm: {},
       pageInfo: {
@@ -112,14 +123,34 @@ export default {
         total: 0, // 总条数
         page_size: [10, 20, 40, 50], // 选择限制显示条数
       },
-      addMusicVisible:false
+      addMusicVisible: false,
     };
   },
-  mounted() {},
+  mounted() {
+    getSoundTree({ tenantId: 1, rows: 9999 }).then((res) => {
+      if (res.code == 200) {
+        if (res.code == 200) {
+          this.soundList = res.data.rows;
+          this.getSound();
+        }
+      }
+    });
+  },
   methods: {
     onSearch() {},
     onReSet() {},
-    getList(){},
+    getList() {},
+    addMusicSubmit() {
+      this.addMusicVisible = false;
+    },
+    getSound() {
+      this.soundLists = [];
+      for (let i in this.soundList) {
+        if (this.soundList[i].subjects.length > 0) {
+          this.soundLists = this.soundLists.concat(this.soundList[i].subjects);
+        }
+      }
+    },
   },
 };
 </script>

+ 35 - 5
src/views/studentManager/modals/addMusic.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-form>
+    <el-form :model="musicForm">
       <el-form-item
         label="乐器种类"
         prop="memo"
@@ -8,7 +8,8 @@
       >
         <el-form-item>
         <el-select
-          v-model.trim="searchForm.attendanceStatus"
+         style="width: 400px !important;"
+          v-model.trim="musicForm.attendanceStatus"
           filterable
           clearable
           placeholder="乐器种类"
@@ -27,14 +28,40 @@
         prop="memo"
         :rules="[{ required: true, message: '请输入乐器名称', trigger: 'blur' }]"
       >
-        <el-input type="textarea" v-model="form.memo"></el-input>
+        <el-select
+           style="width: 400px !important;"
+          v-model.trim="musicForm.attendanceStatus"
+          filterable
+          clearable
+          placeholder="乐器种类"
+        >
+          <el-option
+            v-for="(item, index) in typeList"
+            :key="index"
+            :label="item.label"
+            :value="item.value"
+          ></el-option>
+        </el-select>
       </el-form-item>
             <el-form-item
         label="是否乐保"
         prop="memo"
         :rules="[{ required: true, message: '请选择乐保状态', trigger: 'blur' }]"
       >
-        <el-input type="textarea" v-model="form.memo"></el-input>
+       <el-select
+        style="width: 400px !important;"
+          v-model.trim="musicForm.attendanceStatus"
+          filterable
+          clearable
+          placeholder="乐器种类"
+        >
+          <el-option
+            v-for="(item, index) in typeList"
+            :key="index"
+            :label="item.label"
+            :value="item.value"
+          ></el-option>
+        </el-select>
       </el-form-item>
     </el-form>
   </div>
@@ -42,7 +69,10 @@
 <script>
 export default {
   data() {
-    return {};
+    return {
+      musicForm:{},
+      typeList:[]
+    };
   },
 };
 </script>