Selaa lähdekoodia

Merge remote-tracking branch 'origin/master' into master

ysc 2 vuotta sitten
vanhempi
commit
e674732139
3 muutettua tiedostoa jossa 232 lisäystä ja 37 poistoa
  1. 12 0
      src/api/meeting/enforce.js
  2. 29 0
      src/api/meeting/enforceRecord.js
  3. 191 37
      src/views/enforceflow/enforceflow.vue

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

@@ -121,6 +121,18 @@ export function getEnforceFlowsByEnforceIdAndStep(id, step){
   })
 }
 
+/**
+ * 根据流程id 获取当前流程上传的文件列表
+ * @param id
+ * @returns {*}
+ */
+export function getEnforceFlowFiles(id){
+  return request({
+    url:'/enforceFlow/getEnforceFlowFiles',
+    method: 'get'
+  })
+}
+
 
 
 

+ 29 - 0
src/api/meeting/enforceRecord.js

@@ -0,0 +1,29 @@
+import request from '@/utils/request'
+
+
+/**
+ * 获取运维记录列表
+ * @param id
+ * @returns {*}
+ */
+export function getEnforceRecordList(id) {
+  return request({
+    url: '/enforceRecord/getEnforceRecordList?enforceId='+id,
+    method: 'get'
+  })
+}
+
+
+/**
+ * 编辑运维记录信息
+ * @param data
+ * @returns {*}
+ */
+export function editEnforceRecord(data){
+  return request({
+    url: '/enforceRecord/editEnforceRecord',
+    method: 'post',
+    data:data
+  })
+}
+

+ 191 - 37
src/views/enforceflow/enforceflow.vue

@@ -284,7 +284,7 @@
       </el-steps>
 
       <div>
-        <div v-if="active!==12" style="margin-top: 5px">
+        <div v-if="active!==12 && active!==11" style="margin-top: 5px">
           <el-form label-width="120px" :model="enforceForm" size="mini">
             <el-descriptions title="" :column="2" border size="mini">
               <el-descriptions-item>
@@ -368,51 +368,109 @@
               </el-descriptions-item>
             </el-descriptions>
           </el-form>
-          <div slot="footer"style="margin-top: 25px;text-align: right;margin-right: 85px">
+          <div slot="footer" style="margin-top: 25px;text-align: right;margin-right: 85px">
             <el-button size="medium" @click="enforceManageDialog">取消</el-button>
             <el-button size="medium" type="primary" class="title" @click="submitEnforceForm('editForm')">确定处理</el-button>
           </div>
         </div>
-        <div v-else style="margin-top:5px ">
+        <div v-else-if="active===12" style="margin-top:5px ">
           <el-tabs type="card" @tab-click="chooseTab" v-model="activeName">
             <el-tab-pane label="运维提醒设置" name="1">
               <el-button type="primary" size="mini" @click="addenforceRemindRow">添加</el-button>
               <el-table :data="enforceRemindData" stripe  size="mini" style="width: 100%;margin-top: 15px" >
                 <el-table-column type="index" label="序号" width="60"></el-table-column>
-                <el-table-column prop="msg" label="提醒信息" width="180"></el-table-column>
-                <el-table-column prop="term" label="有限期限" width="180"></el-table-column>
+                <el-table-column prop="msg" label="提醒信息" width="250">
+                  <template scope="scope">
+                    <el-input size="mini" v-model="scope.row.msg"></el-input>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="term" label="有限期限" width="180">
+                  <template scope="scope">
+                    <el-select v-model="scope.row.term"   placeholder="请选择提醒时间" >
+                      <el-option label="3个月" :value="90" key="90">3个月</el-option>
+                      <el-option label="6个月" :value="180" key="180">6个月</el-option>
+                      <el-option label="1年" :value="360" key="360">1年</el-option>
+                      <el-option label="2年" :value="720" key="720">2年</el-option>
+                    </el-select>
+                  </template>
+                </el-table-column>
                 <el-table-column prop="op" label="操作">
-                  <el-button type="primary" size="mini" @click="addenforceRemind">修改</el-button>
-                  <el-button type="danger" size="mini" @click="addenforceRemind">删除</el-button>
+                  <template scope="scope">
+                    <el-button type="primary" size="mini" v-if="scope.row.id!==null" @click="addenforceRemind((scope.row))">修改</el-button>
+                    <el-button type="primary" size="mini" v-if="scope.row.id===null" @click="addenforceRemind(scope.row)">确认</el-button>
+                    <el-button type="danger" size="mini" @click="deleteEnforceRemind(scope.$index, scope.row)">删除</el-button>
+                  </template>
                 </el-table-column>
               </el-table>
             </el-tab-pane>
             <el-tab-pane label="运维记录" name="2">
-              <el-button type="primary" size="mini" @click="addenforceRemind">添加</el-button>
-              <el-table :data="enforceRemindData" stripe  style="width: 100%;margin-top: 15px;">
+              <el-button type="primary" size="mini" @click="addEnforceRecordClick">添加</el-button>
+              <el-table :data="enforceRecordData" stripe  style="width: 100%;margin-top: 15px;">
                 <el-table-column type="index" label="序号" width="60"></el-table-column>
-                <el-table-column prop="date" label="运维类型" width="180"></el-table-column>
-                <el-table-column prop="name" label="运维内容" width="180"></el-table-column>
-                <el-table-column prop="address" label="运维时间"></el-table-column>
-                <el-table-column prop="address" label="运维人员"></el-table-column>
+                <el-table-column prop="enforceType" label="运维类型" width="180"></el-table-column>
+                <el-table-column prop="enforceTime" label="运维时间">
+                  <template slot-scope="scope">
+                    <div>{{scope.row.enforceTime.substr(0,10)}}</div>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="enforcer" label="运维人员"></el-table-column>
                 <el-table-column prop="op" label="操作">
-                  <el-button type="primary" size="mini" @click="addenforceRemind">修改</el-button>
-                  <el-button type="danger" size="mini" @click="addenforceRemind">删除</el-button>
+                  <template slot-scope="scope">
+                    <el-button type="primary" size="mini" @click="updateEnforceRecord(scope.row)">修改</el-button>
+                  </template>
                 </el-table-column>
               </el-table>
             </el-tab-pane>
           </el-tabs>
         </div>
+        <div v-else>
+          <el-table :data="enforceFileData" stripe  style="width: 100%;margin-top: 15px;">
+            <el-table-column type="index" label="序号" width="60"></el-table-column>
+            <el-table-column prop="enforceType" label="运维类型" width="180"></el-table-column>
 
+          </el-table>
+        </div>
       </div>
 
     </el-dialog>
+
+    <el-dialog :visible.sync="addEnforceRecordWin" center width="65%" title="添加运维记录">
+      <el-form label-width="120px" :model="editEnforceRecord" size="mini">
+        <el-form-item label="运维事项:">
+          <el-select v-model="editEnforceRecord.enforceType" style="width: 350px">
+            <el-option label="问题处理" value="问题处理" key="问题处理">问题处理</el-option>
+            <el-option label="更换电池" value="更换电池" key="更换电池">更换电池</el-option>
+            <el-option label="系统巡检" value="系统巡检" key="系统巡检">系统巡检</el-option>
+          </el-select>
+        </el-form-item>
+
+        <el-form-item label="运维日期:">
+          <el-date-picker
+            v-model="editEnforceRecord.enforceTime"
+            type="date"
+            size="mini"
+            value-format="yyyy-MM-dd"
+            format="yyyy-MM-dd"
+            placeholder="选择日期" style="width: 350px">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="实施内容:">
+          <div id="editorEnforceRecord" style="text-align:left"></div>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button size="mini" @click="closeEnforceRecordWin">取消</el-button>
+        <el-button size="mini" type="primary" class="title" @click="editEnforceRecords">确定</el-button>
+      </div>
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
 // import E from 'wangeditor';
 let editor;
+let editorEnforce;
 import Pagination from '@/components/Page/Pagination'
 import {
   getEnforcesByPage,
@@ -424,11 +482,22 @@ import {
   getEnforceFlowsByEnforceId, getEnforceFlowsByEnforceIdAndStep
 } from '@/api/meeting/enforce'
 import {getDeptUserTree} from '@/api/system/user'
+import { deleteEnforceRemindById, editEnforceRemind, getEnforceRemindList } from '@/api/meeting/enforceRemind'
+import { editEnforceRecord, getEnforceRecordList } from '@/api/meeting/enforceRecord'
 
 export default {
   name: 'enforceflow',
   data() {
     return {
+      editEnforceRecord:{
+        id:null,
+        enforceType:'',
+        enforceTime:null,
+        enforceId:null,
+        remark:''
+      },
+      enforceFileData:[],
+      addEnforceRecordWin:false,
       enforceFlowVisble: false,
       usersVisble: false,
       tableData: [],
@@ -495,23 +564,9 @@ export default {
       enforceManageVisble: false,
       active: 1,
       activeName:'1',
-      enforceRemindData:[{
-        date: '2016-05-02',
-        name: '王小虎',
-        address: '上海市普陀区金沙江路 1518 弄'
-      }, {
-        date: '2016-05-04',
-        name: '王小虎',
-        address: '上海市普陀区金沙江路 1517 弄'
-      }, {
-        date: '2016-05-01',
-        name: '王小虎',
-        address: '上海市普陀区金沙江路 1519 弄'
-      }, {
-        date: '2016-05-03',
-        name: '王小虎',
-        address: '上海市普陀区金沙江路 1516 弄'
-      }]
+      enforceRemindData:[],
+      enforceDetail:null,
+      enforceRecordData:[]
     }
   },
   // 注册组件
@@ -709,6 +764,7 @@ export default {
       this.enforceFlowId=row.id
       this.enforceFlowTitle=row.name+"实施流程明细"
       this.on_click(1)
+      this.enforceDetail=row
     },
     createwangeditor(){
       editor = new E('#editorElem');
@@ -719,6 +775,16 @@ export default {
         this.enforceForm.content=editor.txt.html()
       };
     },
+    createEnforceEditor(){
+      editorEnforce = new E('#editorEnforceRecord');
+      editorEnforce.config.height = 300
+      editorEnforce.create()
+      editorEnforce.txt.html(this.editEnforceRecord.remark)
+      editorEnforce.config.onchange = (html) => {
+        this.editEnforceRecord.remark=editor.txt.html()
+      };
+    },
+
     on_click(e){
       if(e !== "" || e != null){
         if(e!==12){
@@ -743,6 +809,7 @@ export default {
             this.active = e
           })
         }else{
+          this.getEnforceRemindList()
           this.active = e
         }
       }
@@ -751,18 +818,105 @@ export default {
       let row = {id: null, msg: '', term: null, termTime: null,enforceId:null,startTime:null}
       this.enforceRemindData.push(row)
     },
-    addenforceRemind(){
-      alert('点击添加运维提醒')
+    addenforceRemind(row){
+      let data=row;
+      if(data.msg===''){
+        this.$message.warning("请输入提醒信息!")
+        return
+      }
+      if(data.term===null){
+        this.$message.warning("请选择提醒时间!")
+        return
+      }
+      data.enforceId=this.enforceDetail.id
+      editEnforceRemind(data).then(res=>{
+        this.$message.success("操作成功!")
+        this.getEnforceRemindList()
+      });
+    },
+    getEnforceRemindList(){
+      let id=this.enforceDetail.id
+      getEnforceRemindList(id).then(res=>{
+        this.enforceRemindData=res.data
+      })
+    },
+    deleteEnforceRemind(index,row){
+      let id=row.id
+      if(id===null){
+        this.workPlanDatas.splice(index, 1)
+      }else{
+        deleteEnforceRemindById(id).then(res=>{
+          this.$message.success("操作成功!");
+          this.getEnforceRemindList()
+        })
+      }
+    },
+    getEnforceRecordLists(){
+      let id=this.enforceDetail.id
+      getEnforceRecordList(id).then(res=>{
+        this.enforceRecordData=res.data
+      });
+    },
+    addEnforceRecordClick(){
+      this.addEnforceRecordWin=true
+      this.$nextTick(()=>{
+        if (editorEnforce==null){
+          this.createEnforceEditor()
+        }else {
+          editorEnforce.destroy();
+          this.createEnforceEditor()
+        }
+      });
+    },
+    closeEnforceRecordWin(){
+      this.addEnforceRecordWin=false
+    },
+    updateEnforceRecord(row){
+      this.editEnforceRecord=row
+      this.addEnforceRecordWin=true
+      this.$nextTick(()=>{
+        if (editorEnforce==null){
+          this.createEnforceEditor()
+        }else {
+          editorEnforce.destroy();
+          this.createEnforceEditor()
+        }
+      });
+    },
+    editEnforceRecords(){
+      let data=this.editEnforceRecord
+      let enforceType=data.enforceType
+      if(enforceType===''){
+        this.$message.warning("请选择运维事项!")
+        return
+      }
+      let enforceTime=data.enforceTime
+      if(enforceTime===null){
+        this.$message.warning("请选择运维日期!")
+        return
+      }
+      let remark=data.remark
+      if(remark===''){
+        this.$message.warning("请填写运维内容!")
+        return
+      }
+      let enforceId=this.enforceDetail.id
+      data.enforceId=enforceId
+      data.enforceTime=new Date(enforceTime).getTime()
+      editEnforceRecord(data).then(res=>{
+        this.$message.success("操作成功!")
+        this.addEnforceRecordWin=false
+        this.getEnforceRecordLists()
+      });
     },
     chooseTab(tab, event){
       let active=this.activeName
       if(active==='1'){
-        alert('222')
+        this.getEnforceRemindList()
       }
       if(active==='2'){
-        alert('运维记录数据')
+        this.getEnforceRecordLists();
       }
-
     }
   }