qymljy 2 years ago
parent
commit
114e429f71
1 changed files with 62 additions and 299 deletions
  1. 62 299
      src/HDrpManagement/projectChange/modules/modules/stageTask/index.vue

+ 62 - 299
src/HDrpManagement/projectChange/modules/modules/stageTask/index.vue

@@ -1,330 +1,93 @@
 <template>
   <div>
-    <el-steps v-if="stageList" :active="calcIndex + 1" align-center>
-      <el-step v-for="(item,index) in stageList" :key="item.sa_projstagetemp_stageid">
-        <div slot="description" class="item" @click="stageClick(index,item)">
-          <div :class="[
-          'content',
-          {'enterStatus':item.active == 1},
-          {'active':clickCurrent == index}
-          ]">
-            <span class="title">{{item.stagename}}</span>
-            <span>{{calcTaskNumber(item)}}/{{item.work.length}}</span>
-          </div>
-        </div>
-      </el-step>  
-    </el-steps>
-    <el-card class="box-card" v-if="stageList">
-      <div slot="header" class="clearfix">
-        <span style="font-weight:bold">阶段任务</span>
-        <el-button 
-          style="border:1px solid #3874F6;color:#3874F6" 
-          :disabled="currentData.active != 0" 
-          size="mini"
-          @click="enterStage"
-        >进入当前阶段</el-button>
-      </div>
-      <div class="task" v-for="(item,index) in currentData.work" :key="index">
-        <div class="task-header">
-          <span class="task-header-title">任务{{index+1}}</span>
-          <span class="task-header-status" v-if="item.finished" style="color:#3874F6">已完成</span>
-          <span class="task-header-status" style="color:#52C41A" v-else-if="item.isfollow">跟进中</span>
-          <span class="task-header-status" v-else>未开始</span>
-        </div>
-        <div class="content">
-          <el-descriptions :column="2">
-            <el-descriptions-item label="任务名称">{{ item.workname ? item.workname:'' }}</el-descriptions-item>
-            <el-descriptions-item label="任务分值">{{ item.score ? item.score:'' }}</el-descriptions-item>
-            <el-descriptions-item label="任务描述">{{ item.remarks ? item.remarks:'' }}</el-descriptions-item>
-            <el-descriptions-item label="用户提交内容">{{ item.notes ? item.notes:'' }}</el-descriptions-item>
-          </el-descriptions>
-          <div class="file">
-            <file-item :isDownLoad="true" :isDelete="false" :itemStyle="itemDrawerStyle" :fileData="fileType.fileList(item.attinfos)"></file-item>
-          </div>
-        </div>
-        <div class="task-footer">
-          <div class="btn">
-            <el-button size="mini" :disabled="!currentData.active || item.finished != 0" @click="editBtn(item)">编辑</el-button>
-            <el-button size="mini" type="primary" v-if="item.finished == 0" :disabled="!currentData.active" @click="taskSuccess(item)">完成</el-button>
-            <el-button size="mini" type="info" v-else disabled>已完成</el-button>
-          </div>
-        </div>
-      </div>
-    </el-card>
-    <el-empty v-else description="暂无数据" size="small"></el-empty>
-
-    <el-drawer
-      title="我是标题"
-      append-to-body
-      :visible.sync="dialogFormVisible"
-      direction="rtl"
-      :modal="true"
-      :show-close="false"
-      :withHeader="false"
-      size="30%">
-      <div class="flex-align-center flex-between container" style="border-bottom:1px solid #f1f2f3">
-        <div style="font-size:20px">编辑任务信息</div>
-        <div>
-          <el-button type="primary" @click="saveEditInfo(dialogFormVisible = false)" size="small">提 交</el-button>
-        </div>
-      </div>
-      <div class="container">
-        <el-descriptions title="任务信息" :column="1">
-          <el-descriptions-item label="任务名称">{{ editData.workname }}</el-descriptions-item>
-          <el-descriptions-item label="任务分值">{{ editData.score }}</el-descriptions-item>
-          <el-descriptions-item label="任务描述">{{ editData.remarks }}</el-descriptions-item>
-        </el-descriptions>
-        <el-divider></el-divider>
-        <el-descriptions title="提交内容" />
-        <el-input type="textarea" v-model="param.content.notes" placeholder="请填写完成的具体情况"></el-input>
-        <Editor :data="editData" @deleteSuccess="deleteSuccess" @onSuccess="upLoad"/>
-      </div>
-    </el-drawer>
+    <div class="top_style">
+      <span style="color: #000000 !important;margin-left: 10px">工作任务(总分值:)</span>
+    </div>
+    <el-table
+        :data="tableData"
+        style="width: 100%">
+      <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>
   </div>
 </template>
 
 <script>
-import Editor from './components/Editor'
-import { log } from '@antv/g2plot/lib/utils';
-import FileItem from '@/components/file-block/index'
+
 export default {
-  components:{Editor,FileItem},
   props:['rowData'],
   name: '',
   data() {
     return {
-      stageList:'',
-      clickCurrent: 0,
-      currentData:'',
-      dialogFormVisible:false,
-      editData:'',
-      param: {
-        "id": 20221024160202,
-        "content": {
-            "sa_project_stageworkid": "",
-            "notes":""
-        }
-      },
-      itemDrawerStyle: {
-        itemWidth:300,
-        margin:10,
-        img: {
-          width: 40,
-          height: 40
-        },
-        title: 12,
-        descript: 10
-      },
+      tableData: [{
+        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 弄'
+      }]
     };
   },
   computed:{
-    /* 计算当前进入阶段的index */
-    calcIndex () {
-      return this.stageList.indexOf(this.stageList.find(item => item.active == 1))
-    },
-    /* 计算当前阶段完成的任务个数 */
-    calcTaskNumber () {
-      return function (data) {
-        let num = 0
-        data.work.filter(item => {
-          if(item.finished != 0) {
-            num ++
-          }
-        })
-        return num
-      }
-      
-    }
   },
   watch:{
-    rowData () {
-      this.getStageList(true)
-    }
+
   },
   created () {
-    this.getStageList()
+
   },
   methods: {
-    deleteSuccess (data) {
-      let num = this.editData.attinfos.find( item => item.attachmentid == data.attachmentid)
-      this.editData.attinfos.splice(this.editData.attinfos.indexOf(num),1)
-    },
-    upLoad (data) {
-      this.editData.attinfos.push(data)
-    },
-    editBtn (data) {
-      this.dialogFormVisible = true
-      this.editData = data
-    },
-    /* 保存编辑编辑信息 */
-    async saveEditInfo () {
-      this.param.content.sa_project_stageworkid = this.editData.sa_project_stageworkid
-      let res = await this.$api.requested(this.param)
-      this.tool.showMessage(res, () => {
-        this.dialogFormVisible = false
-        this.getStageList()
-      })
-    },
-    /* 获取阶段数据 */
-    async getStageList (no) {
-      let res = await this.$api.requested({
-        "id": 20221024102402,
+    async listData(){
+      const res = await this.$api.requested({
+        "id": 20221201140104,
         "content": {
-            "sa_projectid": this.rowData.sa_projectid,
-            "sa_projstagetempid": this.rowData.sa_projstagetempid
+          "pageNumber": 1,
+          "pageSize": 90,
+          "sa_projectid":this.rowData.sa_projectid,
+          "isAll":0
         }
       })
-      this.stageList = res.data
-      console.log(this.stageList,111111);
-      
-      /* 如果已有阶段 默认id释放 */
-      if(this.calcIndex != -1) {
-        this.clickCurrent = null
-        this.currentData = this.stageList[this.calcIndex]
-      } else {
-        this.currentData = this.stageList[0]
-      }
-    },
-    /* 单击阶段 */
-    stageClick (val,item) {
-      this.clickCurrent = val == this.calcIndex ? null : val
-      console.log(this.clickCurrent);
-      
-      this.currentData = item
-    },
-    /* 进入阶段 */
-    async enterStage () {
-      this.$alert('确定进入当前阶段吗?', '提示', {
-        confirmButtonText: '确定',
-        callback: async action => {
-          if (action == 'confirm') {
-            let res = await this.$api.requested({
-              "id": 20221024160102,
-              "content": {
-                  "sa_projectid": this.currentData.sa_projectid,
-                  "sa_projstagetempid": this.currentData.sa_projstagetempid,
-                  "sa_project_stageid": this.currentData.sa_project_stageid
-              }
-            })
-            console.log(res);
-            this.tool.showMessage(res,() => {
-              this.getStageList(false)
-            })
-          }
-        }
-      });
-    },
-    /* 任务完成 */
-    async taskSuccess (data) {
-      this.$alert('确定完成当前任务吗?无法撤销', '提示', {
-        confirmButtonText: '确定',
-        callback: async action => {
-          if (action == 'confirm') {
-            let res = await this.$api.requested({
-              "id": 20221024160302,
-              "content": {
-                  "sa_project_stageworkid": data.sa_project_stageworkid
-              }
-            })
-            console.log(res);
-            this.tool.showMessage(res,() => {
-              this.getStageList(false)
-            })
-          }
-        }
-      })
-    } 
+      console.log(res,)
+    }
   },
+  mounted() {
+    console.log(this.rowData,"工作任务")
+  }
 };
 </script>
 
 <style scoped>
-  .item {
-    cursor: pointer;
-  }
-  .item .content {
-    display: flex;
-    justify-content: space-evenly;
-    align-items: center;
-    transform: skew(-20deg);
-    padding: 5px 10px;
-    background: #EEEEEE;
-    color: #000000;
-    border-radius: 5px;
-  }
-  .item .content span:first-child {
-    transform: skew(20deg);
-  }
-  .item .content span:last-child {
-    display: inline;
-    background: #ffffff;
-    padding: 1px 10px;
-    border-radius: 30%;
-    color: #000000;
-    transform: skew(20deg);
-  }
-  .enterStatus {
-    background: #3874F6 !important;
-    color: #ffffff !important;
-  }
-  .active {
-    background: #F2F5FF !important;
-    color: #3874F6 !important;
-  }
-  .box-card {
-    margin-top: 20px;
-    font-size: 12px;
-  }
-  .box-card .clearfix {
-    display: flex;
-    justify-content: space-between;
-    align-items: center;
-  }
-  .box-card .clearfix .enter-stage {
-    padding: 4px 10px;
-    color: #3874F6;
-    border-radius: 5px;
-    border: 1px solid #3874F6;
-    cursor: pointer;
-  }
-  .box-card .clearfix .enter-stage:hover {
-    background: #3874F6;
-    color: #ffffff;
-  }
-  /deep/.el-card__body {
-    padding: 0px 0px;
-  }
-  .box-card .task { 
-    border-bottom: 15px solid #F5F5F5;
-  }
-  .box-card .task:last-child {
-    border-bottom: none;
-  }
-  .box-card .task:first-child {
-    border-top: 15px solid #F5F5F5;
-  }
-  .box-card .task .task-header {
-    display: flex;
-    justify-content: space-between;
-    border-bottom: 1px solid #cccccc;
-    padding: 0 20px;
+  .top_style{
+    width: 100%;
     line-height: 35px;
-    margin-bottom: 15px;
-  }
-  .box-card .task .content {
-    padding: 0 20px;
-  }
-  .box-card .task .task-footer {
-    display: flex;
-    flex-direction: row-reverse;
-  }
-  .box-card .task .task-footer .btn {
-    margin:0 10px 10px 0;
-  }
-  .box-card .task .content p {
-    margin-bottom: 10px;
-  }
-  /deep/.el-step__description {
-    padding:0 20% !important;
+    height: 35px;
+    background: rgb(238, 238, 238);
+    vertical-align: center;
   }
 </style>