contactDetailDialog.vue 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. <template>
  2. <ele-modal
  3. custom-class="ele-dialog-form"
  4. v-if="visible"
  5. :visible.sync="visible"
  6. :title="title"
  7. :close-on-click-modal="false"
  8. width="80%"
  9. @close="cancel"
  10. >
  11. <el-form
  12. label-width="160px"
  13. ref="formRef"
  14. :model="form"
  15. style="margin-top: 30px"
  16. >
  17. <el-row>
  18. <el-col :span="8">
  19. <el-form-item
  20. label="客户名称:"
  21. prop="contactName"
  22. >
  23. {{form.contactName}}
  24. </el-form-item>
  25. </el-col>
  26. <el-col :span="8">
  27. <el-form-item label="商机名称:" prop="name">
  28. {{form.name}}
  29. </el-form-item>
  30. </el-col>
  31. <el-col :span="8">
  32. <el-form-item label="负责人名称:" prop="responsibleName">
  33. {{form.responsibleName}}
  34. </el-form-item>
  35. </el-col>
  36. <el-col :span="8">
  37. <el-form-item label="商机来源:" prop="source">
  38. {{form.source}}
  39. </el-form-item>
  40. </el-col>
  41. <el-col :span="8">
  42. <el-form-item label="状态:" prop="status">
  43. {{ form.status === 1 ? "有效" : "失效"}}
  44. </el-form-item>
  45. </el-col>
  46. <el-col :span="16">
  47. <el-form-item label="备注:" prop="remark">
  48. {{form.remark}}
  49. </el-form-item>
  50. </el-col>
  51. </el-row>
  52. </el-form>
  53. <div slot="footer" class="footer">
  54. <el-button @click="cancel">返回</el-button>
  55. </div>
  56. </ele-modal>
  57. </template>
  58. <script>
  59. import {contactDetail} from '@/api/saleManage/contact';
  60. import {getFile} from '@/api/system/file';
  61. import {getInfoById as getCategoryInfo} from '@/api/classifyManage/index';
  62. import fileUpload from '@/components/upload/fileUpload';
  63. import dictMixins from '@/mixins/dictMixins';
  64. import deptSelect from '@/components/CommomSelect/dept-select.vue';
  65. import personSelect from '@/components/CommomSelect/person-select.vue';
  66. import {copyObj} from '@/utils/util';
  67. export default {
  68. props: {
  69. categoryTreeList: Array
  70. },
  71. mixins: [dictMixins],
  72. components: {
  73. fileUpload,
  74. deptSelect,
  75. personSelect
  76. },
  77. data() {
  78. let formDef = {
  79. id:'',
  80. contactName: '',
  81. contactId: 0,
  82. name: '',
  83. remark: '',
  84. responsibleName: '',
  85. responsibleId: '',
  86. source: '',
  87. status: 1
  88. };
  89. return {
  90. visible: false,
  91. title: '详情',
  92. row: {},
  93. activeName: 'base',
  94. formDef,
  95. form: copyObj(formDef),
  96. tableBankData: [],
  97. tableLinkData: [],
  98. ifChiefList: [
  99. {
  100. value: 0,
  101. label: '否'
  102. },
  103. {
  104. value: 1,
  105. label: '是'
  106. }
  107. ],
  108. };
  109. },
  110. methods: {
  111. async open(row) {
  112. this.form = row;
  113. this.visible = true;
  114. },
  115. cancel() {
  116. this.$nextTick(() => {
  117. // 关闭后,销毁所有的表单数据
  118. this.form = copyObj(this.formDef),
  119. this.otherForm = copyObj(this.otherFormDef),
  120. this.tableBankData = []
  121. this.tableLinkData = []
  122. this.visible = false;
  123. })
  124. },
  125. }
  126. };
  127. </script>