form.html 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. {extend name="../../admin/view/main"}
  2. {block name='content'}
  3. <style>
  4. .layui-card-body{
  5. background: white;
  6. }
  7. #newForm{
  8. width: 100%;
  9. }
  10. .merMedias{
  11. width: 200px;
  12. height: 200px;
  13. }
  14. .layui-card{
  15. box-shadow: none;
  16. }
  17. .elImage{
  18. width: 50px;
  19. height: 50px;
  20. }
  21. </style>
  22. <div id="newForm">
  23. <el-form :model="form" label-width="140px" ref="form" :disabled="audit!==1">
  24. <el-form-item label="发布商家" prop="b_type">
  25. {{form.merchant.company}}
  26. </el-form-item>
  27. <el-form-item label="联系人" prop="title">
  28. {{form.real_name}}
  29. </el-form-item>
  30. <el-form-item label="联系方式" prop="b_type">
  31. {{form.mobile}}
  32. </el-form-item>
  33. <el-form-item label="交货地址" prop="b_type">
  34. {{form.post_address}}
  35. </el-form-item>
  36. <el-form-item label="交货时间" prop="b_type">
  37. {{form.post_time}}
  38. </el-form-item>
  39. <el-form-item label="发布时间" prop="b_type">
  40. {{form.create_time}}
  41. </el-form-item>
  42. <el-form-item label="产品简介" prop="b_type">
  43. <div>
  44. <template v-for="(item,idx) in form.images" :key="idx">
  45. <el-image class="merMedias" v-if="item.type=='image'" :src="item.src" fit="cover" @click="showImg(item.src)"></el-image>
  46. <video class="merMedias" :src="item.src" v-else controls></video>
  47. </template>
  48. </div>
  49. </el-form-item>
  50. <el-form-item label="商品信息" prop="b_type">
  51. <el-table :data="form.items">
  52. <el-table-column type="expand">
  53. <template slot-scope="{row:item}">
  54. <el-table :data="item.offers" style="width: 95%;margin-left: 4%;">
  55. <el-table-column label="报价ID" prop="id">
  56. <template slot-scope="{row}">
  57. {{row.id}}
  58. <el-tag v-if="row.id===item.offer_id">已匹配</el-tag>
  59. </template>
  60. </el-table-column>
  61. <el-table-column label="用户" prop="user.nickname"></el-table-column>
  62. <el-table-column label="报价" prop="amount"></el-table-column>
  63. <el-table-column label="货期" prop="date"></el-table-column>
  64. <el-table-column label="描述" prop="desc" style="max-width: 200px;"></el-table-column>
  65. <el-table-column label="是否有货">
  66. <template slot-scope="{row}">
  67. {{row.is_have>0?'有货':'无货'}}
  68. </template>
  69. </el-table-column>
  70. <el-table-column label="图片">
  71. <template slot-scope="{row}">
  72. <el-image v-for="(item,idx) in row.images" :src="item" :key="idx" class="elImage" @click="showImg(item)"></el-image>
  73. </template>
  74. </el-table-column>
  75. <el-table-column label="接单日期" prop="create_time"></el-table-column>
  76. </el-table>
  77. </template>
  78. </el-table-column>
  79. <el-table-column label="ID" prop="id"></el-table-column>
  80. <el-table-column label="名称" prop="name"></el-table-column>
  81. <el-table-column label="规格" prop="spec"></el-table-column>
  82. <el-table-column label="数量" prop="number"></el-table-column>
  83. <el-table-column label="质量标准" prop="standard"></el-table-column>
  84. <el-table-column label="价格" prop="price"></el-table-column>
  85. <el-table-column label="报价条数">
  86. <template slot-scope="{row}">
  87. {{row.offers.length}}
  88. </template>
  89. </el-table-column>
  90. </el-table>
  91. </el-form-item>
  92. </el-form>
  93. </div>
  94. <script>
  95. let vo={:json_encode($row?:null,256)};
  96. let audit=vo.audit
  97. if(audit===1){
  98. vo.audit=2
  99. }
  100. require(['ckeditor'], function () {
  101. });
  102. new Vue({
  103. el:'#newForm',
  104. data:()=>({
  105. form:vo||{
  106. },
  107. audit,
  108. saving:false,
  109. }),
  110. methods:{
  111. showImg(src){
  112. $.previewImage(src)
  113. },
  114. save(){
  115. let _this=this,
  116. form=this.form
  117. this.$refs.form.validate(v=>{
  118. if(!v){
  119. return
  120. }
  121. $.ajax("{:url('audit')}",{
  122. data:{
  123. audit:form.audit,
  124. why:form.why,
  125. id:form.id,
  126. },
  127. type:'post',
  128. beforeSend(){
  129. _this.saving=true
  130. },
  131. success({code,info}){
  132. if(code){
  133. layer.msg('保存成功')
  134. $('#NewsTable').trigger('reload');
  135. $('[data-close]').trigger('click')
  136. }else{
  137. layer.alert(info)
  138. }
  139. },
  140. complete(){
  141. _this.saving=false
  142. }
  143. })
  144. })
  145. }
  146. }
  147. })
  148. </script>
  149. {/block}