index.vue 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. <template>
  2. <div>
  3. <basicLayout
  4. ref="list"
  5. formPath="contractModel"
  6. tableName="contractModelTable"
  7. idName="sa_contract_template_clauseids"
  8. :apiId="{query:20221128164602,del:20221125195702}"
  9. :options="options"
  10. @listData="listdata"
  11. :hideSearch="true">
  12. <div slot="custom" style="display:flex">
  13. <!-- <div class="label_center">
  14. <p class="search__label">{{$t('范围')}}:</p>
  15. <el-select
  16. class="inline-16"
  17. size="small"
  18. v-model="area"
  19. :placeholder="$t('请选择范围')"
  20. clearable
  21. @change="$refs.list.param.content.type=area;$refs.list.listData()"
  22. >
  23. <el-option
  24. v-for="item in areaList"
  25. :key="item.remarks"
  26. :label="$t(item.value)"
  27. :value="item.remarks"
  28. ></el-option>
  29. </el-select>
  30. </div> -->
  31. </div>
  32. <template v-slot:tbList="scope">
  33. <div v-if="scope.data.column.data[[scope.data.column.columnname]] == '项目'">
  34. <span v-if="scope.data.column.data.typemx == '直销'">{{$t(`直销项目协议`)}}</span>
  35. <span v-else-if="scope.data.column.data.typemx == '经销'">{{$t(`经销项目协议`)}}</span>
  36. </div>
  37. <div v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '框架'">
  38. {{$t(`经销商合作协议`)}}
  39. </div>
  40. <div v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '工具借用'">
  41. {{$t(`工具借用协议`)}}
  42. </div>
  43. <div v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '居间'">
  44. {{$t(`居间协议`)}}
  45. </div>
  46. <div v-else>
  47. {{$t(scope.data.column.data[[scope.data.column.columnname]])}}
  48. </div>
  49. <div v-if="!scope.data.column.data[[scope.data.column.columnname]] && scope.data.column.columnname != 'count'">--</div>
  50. </template>
  51. <template v-slot:tbOpreation="scope">
  52. <el-button type="text" size="mini" @click="detailBtn(scope.data.data)">{{$t('详 情')}}</el-button>
  53. </template>
  54. </basicLayout>
  55. <!--抽屉面板-->
  56. <el-drawer
  57. :title="$t(`我是标题`)"
  58. :visible.sync="drawer"
  59. :with-header="false"
  60. direction="rtl"
  61. size="80%"
  62. append-to-body
  63. @close="closeDrawer">
  64. <div class="detail__panel">
  65. <router-view/>
  66. </div>
  67. </el-drawer>
  68. </div>
  69. </template>
  70. <script>
  71. import {mapGetters} from 'vuex'
  72. export default {
  73. data () {
  74. return {
  75. options:[],
  76. drawer:false
  77. }
  78. },
  79. created () {
  80. },
  81. watch: {
  82. $route (val) {
  83. if (val.path == '/contract_model') {
  84. this.$refs.list.listData()
  85. }
  86. },
  87. DrawerShow (val) {
  88. val ? this.drawer = true : this.drawer = false
  89. }
  90. },
  91. computed: {
  92. ...mapGetters({
  93. DrawerShow:'DrawerShow'
  94. })
  95. },
  96. methods:{
  97. closeDrawer () {
  98. this.$router.push('/contract_model')
  99. this.$store.dispatch('DrawerShowChange',false)
  100. },
  101. listdata(data) {
  102. },
  103. detailBtn (data) {
  104. this.$store.dispatch('DrawerShowChange',true)
  105. this.$router.push({
  106. path:'/contractModelDetail',
  107. query:{
  108. type:data.type=='项目'
  109. ? data.typemx=='直销'
  110. ? '1' : '2'
  111. : data.type == '框架'
  112. ? '3' : data.type == '居间' ? '4' : '5',
  113. }
  114. })
  115. }
  116. }
  117. }
  118. </script>
  119. <style scoped>
  120. </style>