codeMan il y a 2 ans
Parent
commit
2b9119e019

+ 1 - 1
src/HDrpManagement/orderManage/details/index.vue

@@ -324,7 +324,7 @@ export default {
         },
         {
           label:'项目信息',
-          value:this.mainData.contract_title
+          value:this.mainData.projectname
         },
         {
           label:'销售分类',

+ 4 - 3
src/HDrpManagement/workReport/modules/aside/index.vue

@@ -100,6 +100,7 @@ export default {
     },
     itemClick (data) {
       if (this.currentIndex == data.sys_workreportid) return 
+      data.readstatus = '已读'
       this.currentIndex = data.sys_workreportid
       this.$emit('reportItem',this.currentIndex)
     },
@@ -184,9 +185,9 @@ export default {
 }
 .list .no-read::before {
   content:'';
-  width:5px;
-  height: 5px;
-  border-radius: 5px;
+  width:10px;
+  height: 10px;
+  border-radius: 10px;
   background: red;
   position: absolute;
   top: -3px;

+ 10 - 4
src/HDrpManagement/workReport/modules/createReport/index.vue

@@ -2,7 +2,7 @@
 <template>
   <div>
     <el-dropdown  @command="handleCommand">
-      <el-button type="primary" size="mini">
+      <el-button type="primary" size="mini" @click="createClick">
         开始汇报
       </el-button>
       <el-dropdown-menu slot="dropdown">
@@ -18,7 +18,7 @@
       size="800px">
       <div class="drawer__panel" v-if="drawer">
         <template v-for="item in detail">
-          <div v-if="item.editable" style="margin-bottom:40px">
+          <div :style="{'display':item.editable ? 'block' : 'none','margin-bottom':'40px'}">
             <p class="normal-title" style="margin-bottom:20px">{{ item.title }}</p>
             <p ref="content" contenteditable="true" class="content">
               <template v-for="item2 in item.content">
@@ -87,6 +87,13 @@ export default {
       })
       console.log(this.detail);
     },
+    createClick () {
+      if (!this.modelList.length) {
+        this.$message('暂无汇报模板',{
+          type:'warning'
+        })
+      }
+    },
     async submitForm () {
       let result = this.$refs.content.map((item,index) => {
         return {
@@ -96,8 +103,7 @@ export default {
       })
       let copyDetail = JSON.parse(JSON.stringify(this.detail))
       copyDetail.forEach((item,index) => {
-        if (index >= result.length || !item.editable) return
-        item.content = [result[index-1]]
+        item.content = [result[index]]
       })
       let res = await this.$api.requested({
           "id": "20230523094702",

+ 45 - 10
src/HDrpManagement/workReport/modules/reportContent/index.vue

@@ -5,13 +5,17 @@
       <span>{{ detail.createdate }}</span>
     </div>
     <div class="detail-content" v-if="detail.items">
-      <div class="content-item" style="margin-bottom:20px" v-for="item in detail.items">
+      <!-- <div class="content-item" v-for="item in detail.items">
         <p class="normal-title" style="margin-bottom:10px">{{ item.title }}</p>
         <div v-if="item.content[0]">
-          <p v-for="(item2,index) in item.content[0].content" style="font-size:12px">{{ item2 }}</p>
+          <div v-for="(item2,index) in item.content[0].content" style="font-size:12px">
+            <span v-if="item2">{{ item2 }}</span>
+            <span style="font-size:12px;color:#cccccc" v-else>暂无</span>
+          </div>
         </div>
-        <span v-else>暂无</span>
-      </div>
+      </div> -->
+      <div class="content-box"></div>
+      <div class="kong"></div>
       <file-item 
         :marginRight="10"
         :rowCount="5"
@@ -26,6 +30,8 @@
 
 <script>
 import FileItem from '@/SManagement/orderclue/components/file/index2'
+import { P } from '@antv/g2plot'
+import { log } from '@antv/g2plot/lib/utils'
 export default {
   components:{FileItem},
   data () {
@@ -45,14 +51,42 @@ export default {
       this.detail = res.data
       this.detail.attinfos = this.fileType.fileList(this.detail.attinfos)
       if (this.detail.items) {
+        let frag = document.createDocumentFragment()
         this.detail.items.forEach(item => {
-          if (item.content.length) {
-            if (item.title == '数据统计') {
-              item.content[0].content = [item.content[0].content]
-            } else {
-              item.content[0].content = item.content[0].content.split('\n')
+          if (item.title == '数据统计') {
+            let reg = new RegExp('\n','g')
+            item.content[0].content = item.content[0].content.replace(reg,'')
+          }
+          let box = document.createElement('div')
+          box.className = 'content-item'
+          box.style = 'margin-bottom:20px'
+          let title = document.createElement('p')
+          title.style = 'margin-bottom:20px'
+          title.className = 'normal-title'
+          title.innerText = item.title
+          box.appendChild(title)
+          let content = document.createElement('div')
+          if (item.content[0]) {
+            content.style = item.content[0].content ? 'font-size:12px' : 'font-size:12px;color:#cccccc'
+            content.innerText = item.content[0].content || '暂无'
+            box.appendChild(content)
+            frag.appendChild(box)
+          }
+        })
+       
+        this.$nextTick(() => {
+        let child = document.getElementsByClassName('content-item')
+          if (child.length) {
+            console.log('触发',child);
+            for (let index = 0; index < child.length; index++) {
+              child[index].remove()
             }
           }
+          document.getElementsByClassName('content-box')[0].remove()
+          let contentBox = document.createElement('div')
+          contentBox.className = 'content-box'
+          contentBox.appendChild(frag)
+          document.getElementsByClassName('detail-content')[0].insertBefore(contentBox,document.getElementsByClassName('kong')[0])
         })
       }
       console.log(this.detail.items);
@@ -90,12 +124,13 @@ export default {
   margin-left:15px;
 }
 .content-item {
-  margin-bottom: 20px;
+  margin-bottom: 20px !important;
 }
 .content-item p:nth-of-type(2) {
   font-size: 14px;
 }
 .normal-title{
   font-size: 14px;
+  margin-bottom:10px
 }
 </style>

+ 5 - 4
src/HDrpManagement/workReport/modules/reportSet/components/add.vue

@@ -80,7 +80,7 @@
                   prop="sequence"
                   label="排序">
                   <template slot-scope="scope">
-                    <el-input type="text" size="mini" v-model="scope.row.sequence"></el-input>
+                    <el-input type="text" size="mini" v-model.number="scope.row.sequence"></el-input>
                   </template>
                 </el-table-column>
                 <el-table-column
@@ -170,7 +170,7 @@ export default {
           { required: true, message: '请填写模板名称', trigger: 'blur'},
         ],
         sys_workreportpresetids:[
-          { required: true, message: '请选择项', trigger: 'change'}
+          { required: true, message: '请选择项', trigger: 'blur'}
         ],
         hrids:[
           { required: true, message: '请选择汇报人员', trigger: 'change'}
@@ -228,13 +228,14 @@ export default {
       data.forEach(item => {
         item.sequence = item.rowindex
       })
-      this.selectOption = data
+      let data2 = JSON.parse(JSON.stringify(data))
+      this.selectOption = data2
     },
     delSelecrPeople (data) {
       console.log(data);
       this.selectPeople.splice(this.selectPeople.findIndex(item => item.hrid == data.hrid),1)
     },
-    delOption () {
+    delOption (data) {
       this.selectOption.splice(this.selectOption.findIndex(item => item.sys_workreportpresetid == data.sys_workreportpresetid),1)
     },
     onSubmit(){

+ 1 - 1
src/HDrpManagement/workReport/modules/reportSet/components/addOption.vue

@@ -41,7 +41,7 @@ export default {
         "id": "20230522142702",
         "content": {
             "pageNumber": 1,
-            "pageSize": 20,
+            "pageSize": 99999999,
             "where": {
                 "condition": ""
             }

+ 2 - 2
src/HDrpManagement/workReport/modules/reportSet/components/edit.vue

@@ -92,7 +92,7 @@
                   prop="sequence"
                   label="排序">
                   <template slot-scope="scope">
-                    <el-input type="text" size="mini" v-model="scope.row.sequence"></el-input>
+                    <el-input type="text" size="mini" v-model.number="scope.row.sequence"></el-input>
                   </template>
                 </el-table-column>
                 <el-table-column
@@ -183,7 +183,7 @@ export default {
           { required: true, message: '请填写模板名称', trigger: 'blur'},
         ],
         sys_workreportpresetids:[
-          { required: true, message: '请选择项', trigger: 'change'}
+          { required: true, message: '请选择项', trigger: 'blur'}
         ],
         hrids:[
           { required: true, message: '请选择汇报人员', trigger: 'change'}