浏览代码

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

ysc 2 年之前
父节点
当前提交
a19adbdc7e
共有 3 个文件被更改,包括 86 次插入8 次删除
  1. 3 1
      package.json
  2. 31 3
      src/views/dashboard/index.vue
  3. 52 4
      src/views/enforceflow/enforceflow.vue

+ 3 - 1
package.json

@@ -17,6 +17,7 @@
     "@riophae/vue-treeselect": "0.4.0",
     "axios": "0.18.1",
     "core-js": "3.6.5",
+    "dhtmlx-gantt": "^8.0.6",
     "element-ui": "2.15.14",
     "js-cookie": "2.2.0",
     "moment": "^2.29.4",
@@ -27,7 +28,8 @@
     "vue-easy-printer": "^1.0.6",
     "vue-router": "3.4.9",
     "vue-to-pdf": "^1.0.0",
-    "vuex": "3.1.0"
+    "vuex": "3.1.0",
+    "wangeditor": "^4.7.15"
   },
   "devDependencies": {
     "@vue/cli-plugin-babel": "4.4.4",

+ 31 - 3
src/views/dashboard/index.vue

@@ -170,7 +170,7 @@
     </el-dialog>
 
     <!--处理实施工作任务--->
-    <el-dialog title="审批处理" :visible.sync="editEnforceFormVisible" width="45%" :close-on-click-modal="false">
+    <el-dialog title="审批处理" :visible.sync="editEnforceFormVisible" width="65%" :close-on-click-modal="false">
       <el-form label-width="120px" :model="enforceForm" size="mini">
         <el-descriptions title="" :column="2" border size="mini">
           <el-descriptions-item>
@@ -252,7 +252,13 @@
               <el-button slot="trigger" size="mini" type="primary">选取文件</el-button>
             </el-upload>
           </el-descriptions-item>
-
+          <el-descriptions-item :span="2">
+            <template slot="label">
+              其他说明
+            </template>
+            <div id="editorElem" style="text-align:left" >
+            </div>
+          </el-descriptions-item>
         </el-descriptions>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -281,6 +287,8 @@
 </template>
 
 <script>
+import E from 'wangeditor';
+let editor;
 import {mapGetters} from 'vuex'
 import Pagination from '@/components/Page/Pagination'
 import {completeTask, getPersonalTaskList} from '@/api/meeting/enforce'
@@ -340,7 +348,8 @@ export default {
         status: 0,
         flowType: null
       },
-      fileAction: ''
+      fileAction: '',
+      editorContent:null
     }
   },
   mounted() {
@@ -348,8 +357,17 @@ export default {
     this.getTodoMeetingList();
     this.getDeptUserTrees();
     this.fileAction = uploadFileUrl()
+
   },
   methods: {
+    createwangeditor(){
+      editor = new E('#editorElem');
+      editor.config.height = 300
+      editor.create()
+      editor.config.onchange = (html) => {
+        this.editorContent=editor.txt.html()
+      };
+    },
     getDeptUserTrees() {
       getDeptUserTree('').then(res => {
         this.userList = res.data
@@ -390,7 +408,17 @@ export default {
       this.enforceForm.taskId = row.taskId
       this.enforceForm.currentStep = row.step
       this.enforceForm.enforceId = row.id
+     //
       this.editEnforceFormVisible = true
+      this.$nextTick(()=>{
+        if (editor==null){
+          this.createwangeditor()
+        }else {
+          editor.destroy();//这里做了一次判断,判断编辑器是否被创建,如果创建了就先销毁。
+          this.createwangeditor()
+        }
+      });
+
     },
     openUsers() {
       this.usersVisble = true

+ 52 - 4
src/views/enforceflow/enforceflow.vue

@@ -6,7 +6,7 @@
       </el-form-item>
       <el-form-item label="所属医院:">
         <el-select size="mini" clearable filterable v-model="formInline.hname" placeholder="请选择医院">
-          <el-option v-for="(item,index) in hnos" :label="item.dictLabel" :value="item.dictValue"></el-option>
+          <el-option v-for="(item,index) in hnos" :label="item.dictLabel" :value="item.dictValue" :key="index"></el-option>
         </el-select>
       </el-form-item>
       <el-form-item label="所属系统:">
@@ -87,9 +87,13 @@
         <el-form-item label="实施项目名称:">
           <el-input size="mini" v-model="editForm.name"></el-input>
         </el-form-item>
-        <el-form-item label="实施负责人:">
-          <el-input size="mini" v-model="editForm.enforcer"></el-input>
+        <el-form-item label="实施负责人:" prop="recorder" >
+          <el-input size="mini" v-model="editForm.enforcer" readonly="true"
+                    @keyup.enter.native="openUsers1()">
+            <el-button @click="openUsers1()" icon="el-icon-search" slot="append"></el-button>
+          </el-input>
         </el-form-item>
+
         <el-form-item label="实施医院:">
           <el-select size="mini" clearable filterable v-model="editForm.hname" placeholder="请选择医院">
             <el-option v-for="(item,index) in hnos" :label="item.dictLabel" :value="item.dictValue"></el-option>
@@ -122,6 +126,21 @@
       </div>
     </el-dialog>
 
+    <el-dialog title="选择人员" :visible.sync="users1Visble" width="30%" @click="closeUser1Dialog"
+               :close-on-click-modal="false">
+      <el-tree
+        ref="dept1"
+        :data="userList"
+        node-key="id"
+        :props="{label:'name'}" default-expand-all="true">
+      </el-tree>
+      <div slot="footer" class="dialog-footer">
+        <el-button size="mini" @click="closeUser1Dialog">取消</el-button>
+        <el-button size="mini" type="primary" class="title" @click="submitUser1Form('editForm')">确定</el-button>
+      </div>
+    </el-dialog>
+
+
     <el-dialog title="启动实施流程" :visible.sync="editEnforceFormVisible" width="45%" @click="closeEnforceDialog"
                :close-on-click-modal="false">
       <el-form label-width="120px" :model="enforceForm" size="mini">
@@ -251,6 +270,7 @@
 </template>
 
 <script>
+
 import Pagination from '@/components/Page/Pagination'
 import {
   getEnforcesByPage,
@@ -320,7 +340,9 @@ export default {
       },
       enforceFLows: [],
       maxStep: 0,
-      enforceTableData: []
+      enforceTableData: [],
+      users1Visble: false,
+      users1Flag: '',
     }
   },
   // 注册组件
@@ -485,6 +507,32 @@ export default {
     },
     enforceFlowDialog() {
       this.enforceFlowVisble = false
+    },
+    closeUser1Dialog(){
+      this.users1Visble=false
+    },
+    openUsers1(){
+      this.users1Visble=true
+    },
+    submitUser1Form(){
+      let node = this.$refs.dept1.getCurrentNode();
+      if (node === undefined || node === null) {
+        this.$message({
+          message: '请选择数据!',
+          type: 'warning'
+        });
+        return;
+      }
+      if (node.type !== 'u') {
+        this.$message({
+          message: '请选择人员!',
+          type: 'warning'
+        });
+        return;
+      }
+      this.editForm.enforcer = node.name
+     // this.enforceForm.directorId = node.id
+      this.closeUser1Dialog();
     }