detail.vue 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. <template>
  2. <div>
  3. <basicDetails
  4. ref="details"
  5. :titleText="`${mainData.title}`"
  6. :oldFormPath="{edit:'HManagement/task/modules'}"
  7. :editData="mainData"
  8. :mainAreaData="mainAreaData"
  9. turnPageId="20220901162901"
  10. idname="sys_taskid"
  11. ownertable="sys_task"
  12. tags=""
  13. :tabs="['任务信息']"
  14. @pageChange="pageChange"
  15. @onEditSuccess="queryMainData($route.query.id)">
  16. <div slot="customOperation" >
  17. <complete-task :data="mainData" style="display:inline" @onSuccess="queryMainData()"></complete-task>
  18. <el-button class="inline-16" type="default" size="mini" @click="deleteTask">删 除</el-button>
  19. </div>
  20. <div slot="slot0" class="task__content">
  21. <p class="mt-10">标题:{{mainData.title}}</p>
  22. <p>内容:{{mainData.remarks}}</p>
  23. </div>
  24. <div slot="slot1" >
  25. </div>
  26. </basicDetails>
  27. </div>
  28. </template>
  29. <script>
  30. import completeTask from './completeTask.vue'
  31. export default {
  32. name: "detail",
  33. data() {
  34. return {
  35. mainData:{},
  36. mainAreaData:{}
  37. }
  38. },
  39. components:{
  40. completeTask
  41. },
  42. methods:{
  43. async queryMainData(id) {
  44. const res = await this.$api.requested({
  45. "id":20221211111901,
  46. "content": {
  47. "sys_taskid": this.$route.query.id
  48. }
  49. })
  50. this.mainData = res.data
  51. this.changeDataStructure()
  52. },
  53. changeDataStructure() {
  54. let that = this
  55. this.mainAreaData = [
  56. {
  57. label:'创建人',
  58. value:this.mainData.createby
  59. },
  60. {
  61. label:'创建时间',
  62. value:this.mainData.createdate
  63. },
  64. {
  65. label:'开始时间',
  66. value:this.mainData.starttime
  67. },
  68. {
  69. label:'结束时间',
  70. value:this.mainData.endtime?this.mainData.endtime:'无限'
  71. },
  72. {
  73. label:'提醒时间',
  74. value:this.mainData.remindday?`${this.mainData.remindday}天`:'无需提醒'
  75. },
  76. {
  77. label:'状态',
  78. value:this.mainData.status,
  79. style:()=>{
  80. let color = ''
  81. switch (this.mainData.status) {
  82. case '待执行':
  83. color = '#3874f6'
  84. break;
  85. case '进行中':
  86. color = '#52c41a'
  87. break;
  88. case '已完成':
  89. color = '#333333'
  90. break;
  91. default:
  92. break;
  93. }
  94. return{color:color}
  95. }
  96. }
  97. ]
  98. },
  99. // 监听切换数据,上一页,下一页
  100. pageChange (id,rowindex,tabIndex) {
  101. this.$refs['details'].param.content.type = this.$route.query.type
  102. tabIndex = this.$route.query.tabIndex
  103. this.$router.replace({path:'/taskDetails',query:{id:id,rowindex:rowindex,tabIndex:tabIndex,type:this.$route.query.type}})
  104. this.queryMainData(id)
  105. },
  106. onSuccess(){
  107. this.queryMainData(this.$route.query.id)
  108. this.$emit('onSuccess')
  109. },
  110. deleteTask () {
  111. this.$confirm('是否要删除当前任务?', '提示', {
  112. confirmButtonText: '确定',
  113. cancelButtonText: '取消',
  114. type: 'warning'
  115. }).then(async () => {
  116. const res = await this.$api.requested({
  117. "id":20221211112601,
  118. "content": {
  119. "sys_taskid":this.mainData.sys_taskid
  120. }
  121. })
  122. this.tool.showMessage(res,()=>{
  123. this.$store.dispatch('changeDetailDrawer',false)
  124. })
  125. }).catch((err) => {
  126. this.$message({
  127. type: 'info',
  128. message: '已取消删除'
  129. });
  130. });
  131. }
  132. },
  133. mounted () {
  134. this.queryMainData(this.$route.query.id)
  135. },
  136. created() {
  137. }
  138. }
  139. </script>
  140. <style scoped>
  141. .task__content{
  142. line-height: 30px;
  143. }
  144. </style>