lex-xin 5 年之前
父节点
当前提交
9d46e496ac

+ 2 - 0
package.json

@@ -16,6 +16,8 @@
   },
   "dependencies": {
     "axios": "0.18.1",
+    "browserslist": "^4.8.3",
+    "caniuse-lite": "^1.0.30001021",
     "default-passive-events": "^1.0.10",
     "element-ui": "^2.12.0",
     "i": "^0.3.6",

+ 24 - 6
src/views/teacherManager/teacherOperation/components/salarySet.vue

@@ -105,6 +105,17 @@
           </el-table-column>
         </el-table>
 
+        <el-form style="margin-top: 20px;">
+          <el-form-item label="生效日期">
+            <el-date-picker
+              v-model="startDate"
+              type="date"
+              value-format="yyyy-MM-dd"
+              placeholder="选择日期">
+            </el-date-picker>
+          </el-form-item>
+        </el-form>
+
         <div style="padding-top: 10px;"
              v-permission="pageType == 'create' ? {child: 'teacherDefaultMusicGroupSalary/batchUpset', parent: 'teacherAdd/batchUpset'} : {child: 'teacherDefaultMusicGroupSalary/batchUpset', parent: 'teacherUpdate/batchUpset'}">
           <el-button @click="onSave()"
@@ -117,7 +128,7 @@
 <script>
 import { vipGroupSalaryList, vipGroupSalarySet, teacherSalaryList, teacherSalaryBatchUpset } from '@/api/teacherManager'
 import { sysConfigList } from '@/api/generalSettings'
-import { findTeacherDefaultSalary } from '@/api/vipSeting'
+import { findTeacherDefaultSalary } from '@/api/vipSeting' 
 export default {
   props: ['teacherId'],
   name: 'salarySet',
@@ -178,7 +189,8 @@ export default {
       vipTable: [],
       musicGroupTable: [],
       ruleList: [],
-      vipList: []
+      vipList: [],
+      startDate: new Date()
     }
   },
   created () {
@@ -306,6 +318,8 @@ export default {
     onSave () {
       let teamTable = this.teamTable
       let checkStatus = true
+      console.log(this.startDate)
+      return
       teamTable.forEach(item => {
         if (item.assistantTeacher30MinSalary < 0 || item.assistantTeacher90MinSalary < 0
           || item.mainTeacher30MinSalary < 0 || item.mainTeacher90MinSalary < 0) {
@@ -321,12 +335,16 @@ export default {
       })
       // 判断输入的值是否正确
       if (!checkStatus) return false
-      teacherSalaryBatchUpset(teamTable).then(res => {
+      teacherSalaryBatchUpset({
+        teacherDefaultMusicGroupSalaries: teamTable,
+        startDate: this.startDate
+      }).then(res => {
         if (res.code == 200) {
-
           // 判断输入的值是否正确
-          // if(!checkStatus) return false
-          vipGroupSalarySet(this.vipTable).then(res => {
+          vipGroupSalarySet({
+            teacherDefaultVipGroupSalaries: this.vipTable,
+            startDate: this.startDate
+          }).then(res => {
             if (res.code == 200) {
               this.$message.success('保存成功')
 

+ 4 - 0
src/views/teamDetail/teamCourseList.vue

@@ -108,6 +108,10 @@
             </template>
           </el-table-column>
           <el-table-column align='center'
+                           prop="groupName"
+                           label="乐团/VIP名">
+          </el-table-column>
+          <el-table-column align='center'
                            prop="classGroupName"
                            label="班级名称">
           </el-table-column>

+ 66 - 3
src/views/vipClass/vipDetail/components/teacherRecord.vue

@@ -99,6 +99,24 @@
         </el-table-column>
         <el-table-column align='center'
                          prop="status"
+                         label="签到状态">
+          <template slot-scope="scope">
+            <div>
+              <p>{{scope.row.signInStatus | attendanceType  }}</p>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column align='center'
+                         prop="status"
+                         label="签退状态">
+          <template slot-scope="scope">
+            <div>
+              <p>{{scope.row.signOutStatus | attendanceOutType  }}</p>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column align='center'
+                         prop="status"
                          label="课程状态">
           <template slot-scope="scope">
             <div>
@@ -125,6 +143,8 @@
                          @click="lookStudents(scope.row)">查看学员</el-button>
 
               <!-- 未结算没有点击功能 -->
+              <el-button v-if="scope.row.status == 'OVER' && !scope.row.isSalary && permission('teacherAttendance/updateTeacherAttendance')"
+                         type="text" @click="onMarkAttendance(scope.row)">补考勤</el-button>
               <el-button v-if="scope.row.status == 'OVER' && !scope.row.isSalary && permission('studentAttendance/updateStudentAttendances')"
                          type="text" @click="onCallName(scope.row)">点名表</el-button>
               <!-- <el-button type="text" v-permission="'vipGroupManage/classStartDateAdjust'"
@@ -210,6 +230,23 @@
       </span>
     </el-dialog>
 
+    <el-dialog title='补考勤'
+               width="400px"
+               :visible.sync="markAttendance.status">
+      <el-form>
+        <el-form-item label="签到状态">{{ markAttendance.dataInfo.signInStatus | attendanceType }} </el-form-item>
+        <el-form-item label="签到时间">{{ markAttendance.dataInfo.startClassTime}}</el-form-item>
+        <el-form-item label="签退状态">{{ markAttendance.dataInfo.signOutStatus | attendanceOutType }} </el-form-item>
+        <el-form-item label="签到时间">{{ markAttendance.dataInfo.endClassTime}}</el-form-item>
+      </el-form>
+      <div slot="footer"
+           class="dialog-footer">
+        <el-button @click="markAttendance.status = false">取 消</el-button>
+        <el-button type="primary" :disabled="markAttendance.dataInfo.signOutStatus == 1 && markAttendance.dataInfo.signInStatus == 1 ? true : false"
+                   @click="batchAdjustmentTime">确定补卡</el-button>
+      </div>
+    </el-dialog>
+
     <el-dialog title='点名表'
                width="700px"
                :visible.sync="rollCall.status">
@@ -242,7 +279,7 @@
 import pagination from '@/components/Pagination/index'
 import { getSchool } from '@/api/systemManage'
 import { findVipGroupTeachingRecord, getStudyStudents, resetVipClass } from '@/api/vipSeting'
-import { findAttendanceStudentByCourseWithPage, updateStudentAttendances } from '@/api/buildTeam'
+import { findAttendanceStudentByCourseWithPage, updateStudentAttendances, updateTeacherAttendance } from '@/api/buildTeam'
 import { permission } from '@/utils/directivePage'
 export default {
   components: { pagination },
@@ -274,6 +311,10 @@ export default {
         cooperation: ''
 
       },
+      markAttendance: { // 考勤状态
+        status: false,
+        dataInfo: {}
+      },
       activeId: '',
       activeRow: null, //
       maskrules: {
@@ -341,8 +382,6 @@ export default {
         startTime,
         endTime
       }
-
-
       findVipGroupTeachingRecord(obj).then(res => {
         if (res.code == 200) {
           this.complaintsNum = res.data.baseInfo.complaintsNum;
@@ -357,6 +396,30 @@ export default {
         }
       })
     },
+    batchAdjustmentTime () {
+      let tempData = this.markAttendance.dataInfo
+      return
+      let params = {
+        "courseScheduleId": tempData.id,
+        "signInStatus": 1,
+        "signOutStatus": 1
+      }
+      updateTeacherAttendance(params).then(res => {
+        if(res.code == 200) {
+          this.$message.success('补卡成功')
+          this.markAttendance.status = false
+          this.getList()
+        } else {
+          this.$message.error(res.msg)
+        }
+      })
+    },
+    onMarkAttendance(item) { // 补考勤
+      this.markAttendance = {
+        status: true,
+        dataInfo: item
+      }
+    },
     onCallName(item) { // 点名表
       this.rollCall.page = 1
       this.rollCall.selectItem = item

+ 1 - 1
src/views/vipClass/vipList.vue

@@ -51,7 +51,7 @@
             <el-option v-for="(item,index) in teacherList"
                        :key='index'
                        :value="item.id"
-                       :label="item.username"></el-option>
+                       :label="item.realName"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item>