humingbo il y a 1 an
Parent
commit
ec02a60235

+ 12 - 0
src/api/meeting/meeting.js

@@ -233,5 +233,17 @@ export function getTodoMeetinStatistics(){
   })
 }
 
+/**
+ * 手动结束会议功能
+ * @param id
+ * @returns {*}
+ */
+export function endMeeting(id){
+  return request({
+    url: '/meeting/endMeeting?meetingId='+id,
+    method: 'get'
+  })
+}
+
 
 

+ 3 - 0
src/views/enforceflow/enforceflow.vue

@@ -587,6 +587,8 @@
               :on-remove="handleRemove"
               :on-success="handleSuccess"
               :on-error="handleError"
+              :file-list="uploadFileList"
+              :show-file-list="true"
               name="file">
               <el-button slot="trigger" size="mini" type="primary">选取文件</el-button>
             </el-upload>
@@ -1314,6 +1316,7 @@ export default {
       this.enforceForm.remark=''
       this.enforceForm.filess=[]
       this.enforceForm.content=''
+      this.uploadFileList=[]
 
       this.$nextTick(()=>{
         if (editorElem1==null){

+ 52 - 22
src/views/meeting/meeting.vue

@@ -69,6 +69,8 @@
           <div>{{ parseTime(scope.row.beginTime) }}——{{ parseTime(scope.row.endTime) }}</div>
         </template>
       </el-table-column>
+      <el-table-column prop="emcee" label="主持人" width="100"></el-table-column>
+      <el-table-column prop="recorder" label="记录人" width="100"></el-table-column>
       <el-table-column label="会议类型" prop="meetingType" width="80">
         <template slot-scope="scope">
           <!--会议类型(1-周例会,2-项目会议,3-实施会议,4-其他会议)-->
@@ -91,14 +93,15 @@
                 <span>{{ parseTime(scope.row.createTime) }}</span>
               </template>
             </el-table-column>-->
-      <el-table-column label="操作" prop="op" width="250">
+      <el-table-column label="操作" prop="op" width="300">
         <template slot-scope="scope">
-
           <el-button v-if="scope.row.status!==2" size="mini" type="primary" @click="handleEdit(scope.row)">编辑
           </el-button>
-          <el-button v-if="scope.row.status===0" size="mini" type="danger" @click="deleteMeeting( scope.row)">删除
+          <el-button v-if="scope.row.status===0" size="mini" type="danger" @click="deleteMeeting(scope.row)">删除
+          </el-button>
+          <el-button v-if="scope.row.status===0" size="mini" type="success" @click="startMeeting(scope.row)">开始会议
           </el-button>
-          <el-button v-if="scope.row.status===0" size="mini" type="success" @click="startMeeting( scope.row)">开始会议
+          <el-button v-if="scope.row.status===1" size="mini" type="warning" @click="endMeetingClick(scope.row)">结束会议
           </el-button>
           <el-button v-if="scope.row.status!==0 " type="success" size="mini" @click="meetingDetail(scope.row)">会议详情
           </el-button>
@@ -179,9 +182,9 @@
             placeholder="选择会议结束时间" @change="chooseMeetingEndTime">
           </el-date-picker>
         </el-form-item>
-        <el-form-item label="会议时长:">
-          <el-select v-model="editForm.duration" placeholder="请选择会议时长" clearable @change="chooseMeetingTime">
-            <el-option label="15分钟" :value="15" key="15分钟">15分钟</el-option>
+        <el-form-item label="会议时长:" :rules="[{required:true,message: '请选择会议时长'}]" >
+          <el-select v-model="editForm.duration"   placeholder="请选择会议时长"   @change="chooseMeetingTime">
+            <el-option label="15分钟"  :value="15" key="15分钟" >15分钟</el-option>
             <el-option label="30分钟" :value="30" key="30分钟">30分钟</el-option>
             <el-option label="45分钟" :value="45" key="45分钟">45分钟</el-option>
             <el-option label="1小时" :value="60" key="1小时">1小时</el-option>
@@ -325,7 +328,6 @@
             <el-input size="mini" v-model="scope.row.optionss" type="textarea"
                       :autosize="{ minRows: 4, maxRows: 10}"></el-input>
           </template>
-
         </el-table-column>
         <el-table-column label="执行人" width="180">
           <template slot-scope="scope">
@@ -415,7 +417,13 @@ import {
   getMeetingsByPage,
   deleteMeeting,
   getMeetingDetailsById,
-  deleteMeetingContentById, saveMeetingOptionss, confirmMeetings, startMeetingById, meetingAuthById, meetingDeleteAuth
+  deleteMeetingContentById,
+  saveMeetingOptionss,
+  confirmMeetings,
+  startMeetingById,
+  meetingAuthById,
+  meetingDeleteAuth,
+  endMeeting
 } from '@/api/meeting/meeting'
 import {getDeptUserTree} from '@/api/system/user'
 import {getProjectList} from "@/api/task/project";
@@ -517,7 +525,7 @@ export default {
   },
   methods: {
     getDeptUserTrees() {
-      getDeptUserTree('').then(res => {
+      getDeptUserTree('1').then(res => {
         this.userList = res.data
       });
     },
@@ -615,18 +623,24 @@ export default {
       this.$refs["form"].validate((valid) => {
         if (valid) {
           let data = this.editForm;
-          let times=[]
-          times.push(this.editForm.startTime)
-          times.push(this.editForm.endTime)
-          this.editForm.time=times
-          addMeeting(data).then(response => {
-            this.$message({
-              message: '操作成功!',
-              type: 'success'
+          let duration =data.duration;
+          if(duration===undefined || duration===null){
+            this.$message.error("请选择会议时长!")
+            return
+          }else{
+            let times=[]
+            times.push(this.editForm.startTime)
+            times.push(this.editForm.endTime)
+            this.editForm.time=times
+            addMeeting(data).then(response => {
+              this.$message({
+                message: '操作成功!',
+                type: 'success'
+              });
+              this.closeDialog();
+              this.getData(this.formInline);
             });
-            this.closeDialog();
-            this.getData(this.formInline);
-          });
+          }
         } else {
           return false;
         }
@@ -651,7 +665,7 @@ export default {
       //删除会议
       let id = row.id;
       //验证会议删除权限--创建者才能删除
-      meetingDeleteAuth(id).then(res=>{
+      meetingAuthById(id).then(res=>{
         if (res.success === false) {
           this.$message.error(res.data)
         }else{
@@ -790,6 +804,22 @@ export default {
         }
       })
     },
+    endMeetingClick(row){
+      let id=row.id;
+      meetingAuthById(id).then(res=> {
+        if (res.success === false) {
+          this.$message.error(res.data)
+        }else{
+          endMeeting(id).then(res => {
+            this.$message({
+              message: '操作成功!',
+              type: 'success'
+            });
+            this.getData(this.formInline);
+          })
+        }
+      })
+    },
     openUsers() {
       this.usersVisble = true
     },

+ 2 - 2
src/views/meeting/weekly.vue

@@ -53,7 +53,7 @@
           </el-table-column>
           <el-table-column label="工作计划" prop="workPlan">
             <template slot-scope="scope">
-              <el-input size="mini" type="textarea" :autosize="{ minRows: 4, maxRows: 10}" v-model="scope.row.planContent" placeholder="请填写工作计划信息"></el-input>
+              <el-input size="mini" type="textarea" :autosize="{ minRows: 4, maxRows: 10}" v-model="scope.row.planContent" placeholder="请填写工作计划信息" ></el-input>
             </template>
           </el-table-column>
           <el-table-column label="预计完成时间" prop="completionTimes">
@@ -82,7 +82,7 @@
           </el-table-column>
           <el-table-column label="操作" prop="op" width="150" v-if="currentWeek===weeks">
             <template slot-scope="scope">
-              <el-button size="mini" type="primary" @click="addRow()">添加</el-button>
+              <el-button size="mini" type="primary"  @click="addRow()">添加</el-button>
               <el-button size="mini" type="danger" @click="deleteRow(scope.$index, scope.row)">删除</el-button>
             </template>
           </el-table-column>

+ 19 - 13
src/views/meeting/weeklyRecords.vue

@@ -56,7 +56,7 @@
           <i class="el-icon-user"></i>
           参会时长
         </template>
-        <el-input-number size="small" v-model="m.duration" @change="workMeetingsUpdate(m)"></el-input-number> 小时
+        <el-input-number size="small" v-model="m.duration" @change="workMeetingsUpdate(m)"></el-input-number> 分钟
       </el-descriptions-item>
       <el-descriptions-item :span="2">
         <template slot="label">
@@ -185,7 +185,7 @@
 import {
   getMeetingByWeekss,
   getTaskScheduleRemark,
-  getWeeksRecordsByWeeks, weekMeetingConfirms,
+  getWeeksRecordsByWeeks, meetingAuthById, weekMeetingConfirms,
   workComments,
   workMeetingsUpdates
 } from '@/api/meeting/meeting'
@@ -463,18 +463,24 @@ export default {
           if(res.success!==true){
             this.$message.warning(res.data)
           }else{
-            getProjects().then(res=>{
-              this.projects=res.data
-            });
+            meetingAuthById(meetingId).then(res=> {
+              if (res.success === false) {
+                this.$message.error(res.data)
+              }else{
+                getProjects().then(res=>{
+                  this.projects=res.data
+                });
 
-            let weeks=this.weeks
-            let userId=row.executor
-            this.workPlanTitle=row.userName+'下周工作计划'
-            getWorkPlanByWeeks(weeks,userId).then(res=>{
-              this.workPlanDatas=res.data
-            })
-            this.row=row
-            this.workPlanVisible=true
+                let weeks=this.weeks
+                let userId=row.executor
+                this.workPlanTitle=row.userName+'下周工作计划'
+                getWorkPlanByWeeks(weeks,userId).then(res=>{
+                  this.workPlanDatas=res.data
+                })
+                this.row=row
+                this.workPlanVisible=true
+              }
+            });
           }
         })