瀏覽代碼

增加保存周报工作计划信息

humingbo 1 年之前
父節點
當前提交
537a91b08b
共有 3 個文件被更改,包括 56 次插入9 次删除
  1. 1 0
      package.json
  2. 15 0
      src/api/meeting/work.js
  3. 40 9
      src/views/meeting/weekly.vue

+ 1 - 0
package.json

@@ -24,6 +24,7 @@
     "nprogress": "0.2.0",
     "path-to-regexp": "2.4.0",
     "vue": "2.6.10",
+    "vue-easy-printer": "^1.0.6",
     "vue-router": "3.4.9",
     "vue-to-pdf": "^1.0.0",
     "vuex": "3.1.0"

+ 15 - 0
src/api/meeting/work.js

@@ -0,0 +1,15 @@
+import request from '@/utils/request'
+
+/**
+ * 保存工作计划内容
+ * @param data
+ * @returns {*}
+ */
+export function saveWorkPlans(data){
+  return request({
+      url: "/workPlan/saveWorkPlan",
+      method: "POST",
+      data: data
+    }
+  )
+}

+ 40 - 9
src/views/meeting/weekly.vue

@@ -2,8 +2,8 @@
   <div class="app-container">
     <el-form   size="mini" :inline="true">
       <el-form-item label="关联会议">
-        <el-select size="small"   placeholder="关联会议" clearable filterable v-model="meetingId">
-          <el-option  v-for="(item,index) in meetingData" :label="item.meetingName" :value="item.id"></el-option>
+        <el-select size="small"   placeholder="关联会议" clearable filterable v-model="meetingWeek">
+          <el-option  v-for="(item,index) in meetingData" :label="item.meetingName" :key="item.id" :value="item.weeks"></el-option>
         </el-select>
 
       </el-form-item>
@@ -11,6 +11,7 @@
         <el-button  type="primary" icon="el-icon-download" @click="generateWeekly()">周报生成</el-button>
       </el-form-item>
     </el-form>
+    <div ref="exportPdf" id="exportPdf">
     <div>
       <h3>本周工作内容</h3>
       <el-table
@@ -35,7 +36,7 @@
         </el-table-column>
         <el-table-column label="工作计划" prop="workPlan">
           <template scope="scope">
-            <el-input size="mini" v-model="scope.row.workPlan" ></el-input>
+            <el-input size="mini" v-model="scope.row.planContent" ></el-input>
           </template>
         </el-table-column>
         <el-table-column label="操作" prop="op" width="150">
@@ -46,8 +47,10 @@
         </el-table-column>
       </el-table>
     </div>
+
+    </div>
     <div style="margin-top: 50px;margin-right: 150px;  width: 65%;text-align: center">
-      <el-button size="small" type="primary" @click="saveWorkPlan()">保存信息</el-button>
+      <el-button size="small" type="primary" @click="saveWorkPlan()">保存工作计划</el-button>
     </div>
   </div>
 </template>
@@ -55,16 +58,18 @@
 <script>
 
 import {list} from '@/api/meeting/meeting'
+import { saveWorkPlans } from '@/api/meeting/work'
 
 export default {
   name: 'weekly',
   data() {
     return {
-      meetingId:null,
+      meetingWeek:null,
       meetingData:[],
       workContents:[],
       workPlans:[{
-        workPlan:'请填写工作计划信息'
+        planContent:'请填写工作计划信息',
+        id:null
       }]
     }
   },
@@ -81,13 +86,39 @@ export default {
 
     },
     generateWeekly(){
-      alert('生成周报')
+      if(this.meetingWeek==null || this.meetingWeek==undefined || this.meetingWeek===''){
+        this.$message({
+          message: '请选择会议信息!',
+          type: 'warning'
+        });
+        return
+      }
+      this.$PDFSave(this.$refs.exportPdf, "我的文件");
     },
     saveWorkPlan(){
-      alert('点击保存工作计划')
+      if(this.meetingWeek==null || this.meetingWeek==undefined || this.meetingWeek===''){
+        this.$message({
+          message: '请选择会议信息!',
+          type: 'warning'
+        });
+        return
+      }
+      let data={
+        weeks:this.meetingWeek,
+        workPlans:this.workPlans,
+        id:this.workPlans.id
+      }
+
+      saveWorkPlans(data).then( res => {
+        this.$message({
+          message: '操作成功',
+          type: 'success'
+        });
+
+      });
     },
     addRow(){
-      let row={workPlan: '','op':''}
+      let row={planContent: '','op':'',id:null}
       this.workPlans.push(row)
     },
     deleteRow(index,row){