index.vue 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. <template>
  2. <div>
  3. <basicDetails
  4. ref="details"
  5. :titleText="mainData.itemname"
  6. :oldFormPath="{edit:'HDrpManagement/ProductMag/modules'}"
  7. :editData="mainData"
  8. :mainAreaData="mainAreaData"
  9. turnPageId="20220923140602"
  10. idname="itemid"
  11. ownertable="plm_item"
  12. tags=""
  13. :tabs="['详细信息','营销分类','商品等级价格']"
  14. @pageChange="pageChange"
  15. @onEditSuccess="queryMainData($route.query.id)"
  16. >
  17. <div slot="tags">
  18. </div>
  19. <div slot="customOperation" >
  20. <customBtn
  21. btnName="审核"
  22. message="确认审核当前商品吗?"
  23. idName="20220923153902"
  24. keyName="itemids"
  25. :id="[+$route.query.id]"
  26. :paramData="[{key:'status',value:1}]"
  27. @onSuccess="queryMainData($route.query.id)"
  28. class="inline-16"
  29. v-if="tool.checkAuth($route.name,'toExamine') && mainData.status == '新建'"
  30. />
  31. <customBtn
  32. btnName="反审"
  33. message="确认反审当前商品吗?"
  34. idName="20220923153902"
  35. keyName="itemids"
  36. :id="[+$route.query.id]"
  37. :paramData="[{key:'status',value:0}]"
  38. @onSuccess="queryMainData($route.query.id)"
  39. class="inline-16"
  40. v-if="tool.checkAuth($route.name,'toExamine') && mainData.status == '审核'"
  41. />
  42. <customBtn
  43. btnName="上架"
  44. message="确认上架当前商品吗?"
  45. idName="20220923154802"
  46. keyName="itemids"
  47. :id="[$route.query.id]"
  48. :paramData="[{key:'isonsale',value:1}]"
  49. @onSuccess="queryMainData($route.query.id)"
  50. class="inline-16"
  51. v-if="tool.checkAuth($route.name,'isTop') && mainData.isonsale == 0 && mainData.status == '新建'"
  52. />
  53. <customBtn
  54. btnName="下架"
  55. message="确认下架当前商品吗?"
  56. idName="20220923154802"
  57. keyName="itemids"
  58. :id="[$route.query.id]"
  59. :paramData="[{key:'isonsale',value:0}]"
  60. @onSuccess="queryMainData($route.query.id)"
  61. class="inline-16"
  62. v-if="tool.checkAuth($route.name,'isBottom') && mainData.isonsale == 1 && mainData.status == '新建'"
  63. />
  64. </div>
  65. <div slot="slot0" >
  66. <detail_data :basic="mainData"></detail_data>
  67. </div>
  68. <div slot="slot1">
  69. <saleClass ref="saleClass" :data="mainData">
  70. <template v-slot:addClass="scope">
  71. <addClass v-if="tool.checkAuth($route.name,'salerClass')" :data="scope.data" @onSuccess="$refs.saleClass.listData();queryMainData($route.query.id)"/>
  72. </template>
  73. </saleClass>
  74. </div>
  75. <div slot="slot2">
  76. <productPrice ></productPrice>
  77. </div>
  78. </basicDetails>
  79. </div>
  80. </template>
  81. <script>
  82. import detail_data from './modules/detailedData'
  83. import saleClass from '../modules/saleClass.vue'
  84. import productPrice from '../modules/productPrice'
  85. import addClass from '../modules/addClass'
  86. export default {
  87. name: "index",
  88. data() {
  89. return {
  90. mainData:{},
  91. mainAreaData:{}
  92. }
  93. },
  94. components:{detail_data,saleClass,productPrice,addClass},
  95. methods: {
  96. async queryMainData(id) {
  97. const res = await this.$api.requested({
  98. "id": 20220923155302,
  99. "content": {
  100. "itemid": id
  101. },
  102. })
  103. this.mainData = res.data
  104. this.changeDataStructure()
  105. console.log(this.mainData)
  106. },
  107. // 监听切换数据,上一页,下一页
  108. pageChange (id,rowindex) {
  109. this.$router.replace({path:'/productmagDetail',query:{id:id,rowindex:rowindex}})
  110. this.queryMainData(id)
  111. },
  112. changeDataStructure(){
  113. let that = this
  114. this.mainAreaData = [
  115. {
  116. label:'产品名称',
  117. value:this.mainData.itemname
  118. },
  119. {
  120. label:'产品编号',
  121. value:this.mainData.itemno
  122. },
  123. {
  124. label:'型号',
  125. value:this.mainData.model
  126. },
  127. {
  128. label:'规格',
  129. value:this.mainData.spec
  130. },
  131. {
  132. label:'状态',
  133. value:this.mainData.status,
  134. style:function () {
  135. let style = {}
  136. switch (that.mainData.status) {
  137. case '审核':
  138. style = {color:"#52C41A"}
  139. break;
  140. case '新建':
  141. style = {color:"#000000"}
  142. break;
  143. default:
  144. break;
  145. }
  146. return style
  147. }
  148. },
  149. {
  150. label:'计量单位',
  151. value:this.mainData.unitname
  152. },
  153. {
  154. label:'起订量',
  155. value:this.mainData.orderminqty
  156. },
  157. {
  158. label:'增量',
  159. value:this.mainData.orderaddqty
  160. },
  161. {
  162. label:'品号',
  163. value:this.mainData.erpitemno
  164. },
  165. {
  166. label:'品名',
  167. value:this.mainData.erpitemname
  168. },
  169. {
  170. label:'牌价',
  171. value:this.mainData.marketprice
  172. },
  173. {
  174. label:'领域',
  175. value:this.mainData.tradefield.map(item => item.tradefield).join(',')
  176. },
  177. {
  178. label:'上/下架',
  179. value:this.mainData.isonsale ? '上架' : '下架'
  180. },
  181. {
  182. label:'是否工具',
  183. value:this.mainData.istool ? '是' : '否'
  184. },
  185. ]
  186. },
  187. },
  188. mounted() {
  189. this.queryMainData(this.$route.query.id)
  190. }
  191. }
  192. </script>
  193. <style scoped>
  194. </style>