作者 Win10-2023FDZSZ\Administrator

询价、投标页面

@@ -31,7 +31,6 @@ @@ -31,7 +31,6 @@
31 </div> 31 </div>
32 <!-- 查询区域 end --> 32 <!-- 查询区域 end -->
33 33
34 -  
35 <!-- table区域 begin --> 34 <!-- table区域 begin -->
36 <div> 35 <div>
37 36
@@ -77,7 +76,6 @@ @@ -77,7 +76,6 @@
77 </div> 76 </div>
78 </template> 77 </template>
79 78
80 -  
81 <template slot="fileSlot" slot-scope="text"> 79 <template slot="fileSlot" slot-scope="text">
82 <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span> 80 <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
83 <a-button 81 <a-button
@@ -129,10 +127,10 @@ @@ -129,10 +127,10 @@
129 127
130 export default { 128 export default {
131 name: 'TblTradePriceInquiryList', 129 name: 'TblTradePriceInquiryList',
132 - mixins: [JeecgListMixin,mixinDevice], 130 + mixins: [JeecgListMixin, mixinDevice],
133 components: { 131 components: {
134 TblTradePriceInquiryModal, 132 TblTradePriceInquiryModal,
135 - TblTradeBidSubList, 133 + TblTradeBidSubList
136 }, 134 },
137 data() { 135 data() {
138 return { 136 return {
@@ -146,78 +144,64 @@ @@ -146,78 +144,64 @@
146 align: 'center', 144 align: 'center',
147 customRender: (t, r, index) => parseInt(index) + 1 145 customRender: (t, r, index) => parseInt(index) + 1
148 }, 146 },
149 - {  
150 - title: '优先等级',  
151 - align: 'center',  
152 - dataIndex: 'yxdj',  
153 - }, 147 +
154 { 148 {
155 title: '询价标书文件号', 149 title: '询价标书文件号',
156 align: 'center', 150 align: 'center',
157 - dataIndex: 'xjbswjh', 151 + dataIndex: 'xjbswjh'
158 }, 152 },
159 { 153 {
160 title: '单号', 154 title: '单号',
161 align: 'center', 155 align: 'center',
162 - dataIndex: 'danhao', 156 + dataIndex: 'danhao'
163 }, 157 },
164 { 158 {
165 - title: '询价完成日期', 159 + title: '项目类型',
166 align: 'center', 160 align: 'center',
167 - dataIndex: 'xjwcrq', 161 + dataIndex: 'xmlx'
168 }, 162 },
169 { 163 {
170 - title: '完成询价进度(%)', 164 + title: '送货地址',
171 align: 'center', 165 align: 'center',
172 - dataIndex: 'wcxjjd', 166 + dataIndex: 'shdz'
173 }, 167 },
174 { 168 {
175 - title: '责任人', 169 + title: '优先等级',
176 align: 'center', 170 align: 'center',
177 - dataIndex: 'zrr', 171 + dataIndex: 'yxdj'
178 }, 172 },
179 { 173 {
180 - title: '计划完成日期', 174 + title: '询价完成日期',
181 align: 'center', 175 align: 'center',
182 - dataIndex: 'jhwcrq', 176 + dataIndex: 'xjwcrq'
183 }, 177 },
184 { 178 {
185 title: '实际完成日期', 179 title: '实际完成日期',
186 align: 'center', 180 align: 'center',
187 - dataIndex: 'sjwcrq', 181 + dataIndex: 'sjwcrq'
188 }, 182 },
189 { 183 {
190 - title: '项目类型', 184 + title: '标的类型',
191 align: 'center', 185 align: 'center',
192 - dataIndex: 'xmlx', 186 + dataIndex: 'bdlx'
193 }, 187 },
194 { 188 {
195 - title: '送货地址', 189 + title: '责任人',
196 align: 'center', 190 align: 'center',
197 - dataIndex: 'shdz', 191 + dataIndex: 'zrr'
198 }, 192 },
199 { 193 {
200 title: '询单状态', 194 title: '询单状态',
201 align: 'center', 195 align: 'center',
202 - dataIndex: 'xdzt',  
203 - },  
204 - {  
205 - title: '投标时间',  
206 - align: 'center',  
207 - dataIndex: 'tbsj',  
208 - },  
209 - {  
210 - title: '投标人',  
211 - align: 'center',  
212 - dataIndex: 'tbr', 196 + dataIndex: 'xdzt'
213 }, 197 },
214 { 198 {
215 title: '操作', 199 title: '操作',
216 dataIndex: 'action', 200 dataIndex: 'action',
217 align: 'center', 201 align: 'center',
218 - width:147,  
219 - scopedSlots: { customRender: 'action' },  
220 - }, 202 + width: 147,
  203 + scopedSlots: { customRender: 'action' }
  204 + }
221 ], 205 ],
222 // 字典选项 206 // 字典选项
223 dictOptions: {}, 207 dictOptions: {},
@@ -228,13 +212,13 @@ @@ -228,13 +212,13 @@
228 delete: '/trade/tblTradePriceInquiry/delete', 212 delete: '/trade/tblTradePriceInquiry/delete',
229 deleteBatch: '/trade/tblTradePriceInquiry/deleteBatch', 213 deleteBatch: '/trade/tblTradePriceInquiry/deleteBatch',
230 exportXlsUrl: '/trade/tblTradePriceInquiry/exportXls', 214 exportXlsUrl: '/trade/tblTradePriceInquiry/exportXls',
231 - importExcelUrl: '/trade/tblTradePriceInquiry/importExcel', 215 + importExcelUrl: '/trade/tblTradePriceInquiry/importExcel'
232 }, 216 },
233 - superFieldList:[], 217 + superFieldList: []
234 } 218 }
235 }, 219 },
236 created() { 220 created() {
237 - this.getSuperFieldList(); 221 + this.getSuperFieldList()
238 }, 222 },
239 computed: { 223 computed: {
240 importExcelUrl() { 224 importExcelUrl() {
@@ -244,8 +228,8 @@ @@ -244,8 +228,8 @@
244 methods: { 228 methods: {
245 initDictConfig() { 229 initDictConfig() {
246 }, 230 },
247 - downloadBidFile(record){  
248 - console.log('下载文件',record) 231 + downloadBidFile(record) {
  232 + console.log('下载文件', record)
249 }, 233 },
250 234
251 handleExpand(expanded, record) { 235 handleExpand(expanded, record) {
@@ -254,19 +238,19 @@ @@ -254,19 +238,19 @@
254 this.expandedRowKeys.push(record.id) 238 this.expandedRowKeys.push(record.id)
255 } 239 }
256 }, 240 },
257 - getSuperFieldList(){  
258 - let fieldList=[];  
259 - fieldList.push({type:'string',value:'yxdj',text:'优先等级',dictCode:''})  
260 - fieldList.push({type:'string',value:'xjbswjh',text:'询价标书文件号',dictCode:''})  
261 - fieldList.push({type:'string',value:'danhao',text:'单号',dictCode:''})  
262 - fieldList.push({type:'date',value:'xjwcrq',text:'询价完成日期'})  
263 - fieldList.push({type:'string',value:'zrr',text:'责任人',dictCode:''})  
264 - fieldList.push({type:'date',value:'jhwcrq',text:'计划完成日期'})  
265 - fieldList.push({type:'date',value:'sjwcrq',text:'实际完成日期'})  
266 - fieldList.push({type:'string',value:'xmlx',text:'项目类型',dictCode:''})  
267 - fieldList.push({type:'string',value:'shdz',text:'送货地址',dictCode:''})  
268 - fieldList.push({type:'string',value:'xdzt',text:'询单状态',dictCode:''})  
269 - fieldList.push({type:'string',value:'fzr',text:'负责人',dictCode:''}) 241 + getSuperFieldList() {
  242 + let fieldList = []
  243 + fieldList.push({ type: 'string', value: 'yxdj', text: '优先等级', dictCode: '' })
  244 + fieldList.push({ type: 'string', value: 'xjbswjh', text: '询价标书文件号', dictCode: '' })
  245 + fieldList.push({ type: 'string', value: 'danhao', text: '单号', dictCode: '' })
  246 + fieldList.push({ type: 'date', value: 'xjwcrq', text: '询价完成日期' })
  247 + fieldList.push({ type: 'string', value: 'zrr', text: '责任人', dictCode: '' })
  248 + fieldList.push({ type: 'date', value: 'jhwcrq', text: '计划完成日期' })
  249 + fieldList.push({ type: 'date', value: 'sjwcrq', text: '实际完成日期' })
  250 + fieldList.push({ type: 'string', value: 'xmlx', text: '项目类型', dictCode: '' })
  251 + fieldList.push({ type: 'string', value: 'shdz', text: '送货地址', dictCode: '' })
  252 + fieldList.push({ type: 'string', value: 'xdzt', text: '询单状态', dictCode: '' })
  253 + fieldList.push({ type: 'string', value: 'fzr', text: '负责人', dictCode: '' })
270 this.superFieldList = fieldList 254 this.superFieldList = fieldList
271 } 255 }
272 } 256 }
@@ -21,7 +21,13 @@ @@ -21,7 +21,13 @@
21 </template> 21 </template>
22 <template slot="imgSlot" slot-scope="text,record"> 22 <template slot="imgSlot" slot-scope="text,record">
23 <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span> 23 <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
24 - <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> 24 + <img
  25 + v-else
  26 + :src="getImgView(text)"
  27 + :preview="record.id"
  28 + height="25px"
  29 + alt=""
  30 + style="max-width:80px;font-size: 12px;font-style: italic;"/>
25 </template> 31 </template>
26 <template slot="fileSlot" slot-scope="text"> 32 <template slot="fileSlot" slot-scope="text">
27 <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span> 33 <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
@@ -58,7 +64,7 @@ @@ -58,7 +64,7 @@
58 </a-table> 64 </a-table>
59 </div> 65 </div>
60 66
61 - <tbl-trade-bid-sub-modal ref="modalForm" @ok="modalFormOk"/> 67 + <tbl-trade-bid-sub-modal ref="modalForm" @ok="modalFormOk" :formType="'tb'"/>
62 </div> 68 </div>
63 </template> 69 </template>
64 70
@@ -69,15 +75,15 @@ @@ -69,15 +75,15 @@
69 import '@/assets/less/TableExpand.less' 75 import '@/assets/less/TableExpand.less'
70 76
71 export default { 77 export default {
72 - name: "TblTradeBidSubList",  
73 - mixins:[JeecgListMixin], 78 + name: 'TblTradeBidSubList',
  79 + mixins: [JeecgListMixin],
74 components: { 80 components: {
75 TblTradeBidSubModal 81 TblTradeBidSubModal
76 }, 82 },
77 props: { 83 props: {
78 record: { 84 record: {
79 type: Object, 85 type: Object,
80 - default: null, 86 + default: null
81 } 87 }
82 }, 88 },
83 data () { 89 data () {
@@ -89,62 +95,62 @@ @@ -89,62 +95,62 @@
89 { 95 {
90 title: '#', 96 title: '#',
91 dataIndex: '', 97 dataIndex: '',
92 - key:'rowIndex',  
93 - width:60,  
94 - align:"center",  
95 - customRender:function (t,r,index) {  
96 - return parseInt(index)+1; 98 + key: 'rowIndex',
  99 + width: 60,
  100 + align: 'center',
  101 + customRender: function (t, r, index) {
  102 + return parseInt(index) + 1
97 } 103 }
98 }, 104 },
99 { 105 {
100 - title:'询价标书文件号',  
101 - align:"center", 106 + title: '询价标书文件号',
  107 + align: 'center',
102 dataIndex: 'xjbswjh' 108 dataIndex: 'xjbswjh'
103 }, 109 },
104 { 110 {
105 - title:'物料编码',  
106 - align:"center", 111 + title: '物料编码',
  112 + align: 'center',
107 dataIndex: 'wlbm' 113 dataIndex: 'wlbm'
108 }, 114 },
109 { 115 {
110 title: '物料长描述', 116 title: '物料长描述',
111 align: 'center', 117 align: 'center',
112 - dataIndex: 'tenderInfo.miaoshu', 118 + dataIndex: 'tenderInfo.miaoshu'
113 }, 119 },
114 { 120 {
115 title: '需求数量', 121 title: '需求数量',
116 align: 'center', 122 align: 'center',
117 - dataIndex: 'tenderInfo.xqsl', 123 + dataIndex: 'tenderInfo.xqsl'
118 }, 124 },
119 { 125 {
120 title: '需求交货期', 126 title: '需求交货期',
121 align: 'center', 127 align: 'center',
122 - dataIndex: 'tenderInfo.xqjhq', 128 + dataIndex: 'tenderInfo.xqjhq'
123 }, 129 },
124 { 130 {
125 title: '品牌', 131 title: '品牌',
126 align: 'center', 132 align: 'center',
127 - dataIndex: 'tenderInfo.pinpai', 133 + dataIndex: 'tenderInfo.pinpai'
128 }, 134 },
129 { 135 {
130 title: '送货地址', 136 title: '送货地址',
131 align: 'center', 137 align: 'center',
132 - dataIndex: 'tenderInfo.shdz', 138 + dataIndex: 'tenderInfo.shdz'
133 }, 139 },
134 { 140 {
135 title: '优先等级', 141 title: '优先等级',
136 align: 'center', 142 align: 'center',
137 - dataIndex: 'tenderInfo.yxdj', 143 + dataIndex: 'tenderInfo.yxdj'
138 }, 144 },
139 { 145 {
140 title: '询价计划完成日期', 146 title: '询价计划完成日期',
141 align: 'center', 147 align: 'center',
142 - dataIndex: 'tenderInfo.xjjhwcsj', 148 + dataIndex: 'tenderInfo.xjjhwcsj'
143 }, 149 },
144 { 150 {
145 title: '标的类型', 151 title: '标的类型',
146 align: 'center', 152 align: 'center',
147 - dataIndex: 'tenderInfo.bdlx', 153 + dataIndex: 'tenderInfo.bdlx'
148 }, 154 },
149 155
150 // { 156 // {
@@ -220,30 +226,30 @@ @@ -220,30 +226,30 @@
220 { 226 {
221 title: '操作', 227 title: '操作',
222 dataIndex: 'action', 228 dataIndex: 'action',
223 - align:"center",  
224 - fixed:"right",  
225 - width:147,  
226 - scopedSlots: { customRender: 'action' }, 229 + align: 'center',
  230 + fixed: 'right',
  231 + width: 147,
  232 + scopedSlots: { customRender: 'action' }
227 } 233 }
228 ], 234 ],
229 url: { 235 url: {
230 - list: "/trade/tblTradeBidSub/list",  
231 - delete: "/trade/tblTradeBidSub/delete",  
232 - deleteBatch: "/trade/tblTradeBidSub/deleteBatch",  
233 - exportXlsUrl: "/trade/tblTradeBidSub/exportXls",  
234 - importExcelUrl: "trade/tblTradeBidSub/importExcel", 236 + list: '/trade/tblTradeBidSub/list',
  237 + delete: '/trade/tblTradeBidSub/delete',
  238 + deleteBatch: '/trade/tblTradeBidSub/deleteBatch',
  239 + exportXlsUrl: '/trade/tblTradeBidSub/exportXls',
  240 + importExcelUrl: 'trade/tblTradeBidSub/importExcel'
235 241
236 }, 242 },
237 - dictOptions:{},  
238 - superFieldList:[], 243 + dictOptions: {},
  244 + superFieldList: []
239 } 245 }
240 }, 246 },
241 created() { 247 created() {
242 - this.getSuperFieldList(); 248 + this.getSuperFieldList()
243 }, 249 },
244 computed: { 250 computed: {
245 - importExcelUrl: function(){  
246 - return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; 251 + importExcelUrl: function() {
  252 + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`
247 } 253 }
248 }, 254 },
249 watch: { 255 watch: {
@@ -257,44 +263,43 @@ @@ -257,44 +263,43 @@
257 } 263 }
258 }, 264 },
259 methods: { 265 methods: {
260 - modalFormOk(){ 266 + modalFormOk() {
261 this.loadData(this.record) 267 this.loadData(this.record)
262 }, 268 },
263 - initDictConfig(){ 269 + initDictConfig() {
264 }, 270 },
265 - getSuperFieldList(){  
266 - let fieldList=[];  
267 - fieldList.push({type:'string',value:'tradeId',text:'关联招标id',dictCode:''})  
268 - fieldList.push({type:'string',value:'xjbswjh',text:'询价标书文件号',dictCode:''})  
269 - fieldList.push({type:'string',value:'wlbm',text:'物料编码',dictCode:''})  
270 - fieldList.push({type:'string',value:'kcsj',text:'库存数据',dictCode:''})  
271 - fieldList.push({type:'string',value:'ztkf',text:'在途库存',dictCode:''})  
272 - fieldList.push({type:'string',value:'kcdj',text:'库存单价(含税运)(元)',dictCode:''})  
273 - fieldList.push({type:'string',value:'ztdj',text:'在途单价(含税运)(元)',dictCode:''})  
274 - fieldList.push({type:'string',value:'lstbj',text:'历史投标价(元)',dictCode:''})  
275 - fieldList.push({type:'string',value:'lszbj',text:'历史中标价(元)',dictCode:''})  
276 - fieldList.push({type:'string',value:'tbjg',text:'投标价格(元)',dictCode:''})  
277 - fieldList.push({type:'string',value:'zbj',text:'中标价',dictCode:''})  
278 - fieldList.push({type:'string',value:'djchay',text:'单价差异',dictCode:''})  
279 - fieldList.push({type:'string',value:'sl',text:'数量',dictCode:''})  
280 - fieldList.push({type:'string',value:'sj',text:'时间',dictCode:''})  
281 - fieldList.push({type:'string',value:'sfzb',text:'是否中标',dictCode:''})  
282 - fieldList.push({type:'string',value:'sfcgwc',text:'是否已采购完成',dictCode:''})  
283 - fieldList.push({type:'string',value:'jhsj',text:'交货时间',dictCode:''}) 271 + getSuperFieldList() {
  272 + let fieldList = []
  273 + fieldList.push({ type: 'string', value: 'tradeId', text: '关联招标id', dictCode: '' })
  274 + fieldList.push({ type: 'string', value: 'xjbswjh', text: '询价标书文件号', dictCode: '' })
  275 + fieldList.push({ type: 'string', value: 'wlbm', text: '物料编码', dictCode: '' })
  276 + fieldList.push({ type: 'string', value: 'kcsj', text: '库存数据', dictCode: '' })
  277 + fieldList.push({ type: 'string', value: 'ztkf', text: '在途库存', dictCode: '' })
  278 + fieldList.push({ type: 'string', value: 'kcdj', text: '库存单价(含税运)(元)', dictCode: '' })
  279 + fieldList.push({ type: 'string', value: 'ztdj', text: '在途单价(含税运)(元)', dictCode: '' })
  280 + fieldList.push({ type: 'string', value: 'lstbj', text: '历史投标价(元)', dictCode: '' })
  281 + fieldList.push({ type: 'string', value: 'lszbj', text: '历史中标价(元)', dictCode: '' })
  282 + fieldList.push({ type: 'string', value: 'tbjg', text: '投标价格(元)', dictCode: '' })
  283 + fieldList.push({ type: 'string', value: 'zbj', text: '中标价', dictCode: '' })
  284 + fieldList.push({ type: 'string', value: 'djchay', text: '单价差异', dictCode: '' })
  285 + fieldList.push({ type: 'string', value: 'sl', text: '数量', dictCode: '' })
  286 + fieldList.push({ type: 'string', value: 'sj', text: '时间', dictCode: '' })
  287 + fieldList.push({ type: 'string', value: 'sfzb', text: '是否中标', dictCode: '' })
  288 + fieldList.push({ type: 'string', value: 'sfcgwc', text: '是否已采购完成', dictCode: '' })
  289 + fieldList.push({ type: 'string', value: 'jhsj', text: '交货时间', dictCode: '' })
284 this.superFieldList = fieldList 290 this.superFieldList = fieldList
285 }, 291 },
286 loadData(record) { 292 loadData(record) {
287 this.loading = true 293 this.loading = true
288 this.dataSource = [] 294 this.dataSource = []
289 - getAction(this.url.list, {xjbswjh: record.xjbswjh}).then((res) => { 295 + getAction(this.url.list, { xjbswjh: record.xjbswjh }).then((res) => {
290 if (res.success) { 296 if (res.success) {
291 this.dataSource = res.result.records 297 this.dataSource = res.result.records
292 } 298 }
293 }).finally(() => { 299 }).finally(() => {
294 this.loading = false 300 this.loading = false
295 }) 301 })
296 -  
297 - }, 302 + }
298 } 303 }
299 } 304 }
300 </script> 305 </script>
@@ -42,11 +42,14 @@ @@ -42,11 +42,14 @@
42 </template> 42 </template>
43 43
44 <span slot="action" slot-scope="text, record"> 44 <span slot="action" slot-scope="text, record">
  45 + <div v-if="record.status == '1'">
45 <a @click="handleEdit(record)">编辑</a> 46 <a @click="handleEdit(record)">编辑</a>
46 <a-divider type="vertical" /> 47 <a-divider type="vertical" />
47 <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)"> 48 <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
48 <a>删除</a> 49 <a>删除</a>
49 </a-popconfirm> 50 </a-popconfirm>
  51 + </div>
  52 +
50 <!-- <a-divider type="vertical" /> 53 <!-- <a-divider type="vertical" />
51 <a-dropdown> 54 <a-dropdown>
52 <a class="ant-dropdown-link">更多 <a-icon type="down" /></a> 55 <a class="ant-dropdown-link">更多 <a-icon type="down" /></a>
@@ -257,25 +260,7 @@ @@ -257,25 +260,7 @@
257 }, 260 },
258 getSuperFieldList() { 261 getSuperFieldList() {
259 let fieldList = [] 262 let fieldList = []
260 - fieldList.push({ type: 'string', value: 'ghsmc', text: '供货商名称', dictCode: '' })  
261 - fieldList.push({ type: 'string', value: 'tel', text: '电话', dictCode: '' })  
262 - fieldList.push({ type: 'string', value: 'wldz', text: '网络链接地址', dictCode: '' })  
263 - fieldList.push({ type: 'string', value: 'wxh', text: '微信号', dictCode: '' })  
264 - fieldList.push({ type: 'string', value: 'dj', text: '单价(元)', dictCode: '' })  
265 - fieldList.push({ type: 'string', value: 'zj', text: '总价(元)', dictCode: '' })  
266 - fieldList.push({ type: 'string', value: 'piaoju', text: '票据', dictCode: '' })  
267 - fieldList.push({ type: 'string', value: 'pjsebl', text: '票据税额比例', dictCode: '' })  
268 - fieldList.push({ type: 'string', value: 'zxchl', text: '最小出货量', dictCode: '' })  
269 - fieldList.push({ type: 'string', value: 'lt', text: 'L/T(交货周期天)', dictCode: '' })  
270 - fieldList.push({ type: 'string', value: 'fhdz', text: '发货地址', dictCode: '' })  
271 - fieldList.push({ type: 'string', value: 'djsfhyf', text: '单价是否含运费', dictCode: '' })  
272 - fieldList.push({ type: 'string', value: 'hyfdj', text: '含运费单价', dictCode: '' })  
273 - fieldList.push({ type: 'string', value: 'jgpj', text: '价格评价', dictCode: '' })  
274 - fieldList.push({ type: 'string', value: 'hsjg', text: '含税价格(元)', dictCode: '' })  
275 - fieldList.push({ type: 'string', value: 'bhsjg', text: '不含税价格(元)', dictCode: '' })  
276 - fieldList.push({ type: 'string', value: 'sfxycxxj', text: '是否需要重新询价', dictCode: '' })  
277 - fieldList.push({ type: 'string', value: 'bz', text: '原因/备注', dictCode: '' })  
278 - fieldList.push({ type: 'string', value: 'tradeId', text: '关联招标id', dictCode: '' }) 263 +
279 this.superFieldList = fieldList 264 this.superFieldList = fieldList
280 }, 265 },
281 loadData(record) { 266 loadData(record) {
@@ -284,7 +269,12 @@ @@ -284,7 +269,12 @@
284 getAction(this.url.list, { 269 getAction(this.url.list, {
285 tradeId: record.id 270 tradeId: record.id
286 }).then((res) => { 271 }).then((res) => {
  272 + console.log(this.record)
287 if (res.success) { 273 if (res.success) {
  274 + console.log(this.record)
  275 + res.result.records.forEach(e => {
  276 + e.status = this.record.status
  277 + })
288 this.dataSource = res.result.records 278 this.dataSource = res.result.records
289 } 279 }
290 }).finally(() => { 280 }).finally(() => {
@@ -61,7 +61,7 @@ @@ -61,7 +61,7 @@
61 61
62 <!-- 内嵌table区域 begin --> 62 <!-- 内嵌table区域 begin -->
63 <template slot="expandedRowRender" slot-scope="record"> 63 <template slot="expandedRowRender" slot-scope="record">
64 - <tbl-trade-tender-info-sub-table :record="record"/> 64 + <tbl-trade-tender-info-sub-table :record="record" @refresh="loadData"/>
65 </template> 65 </template>
66 <!-- 内嵌table区域 end --> 66 <!-- 内嵌table区域 end -->
67 67
@@ -138,22 +138,24 @@ @@ -138,22 +138,24 @@
138 description: '询价表列表管理页面', 138 description: '询价表列表管理页面',
139 // 表头 139 // 表头
140 columns: [ 140 columns: [
141 - {  
142 - title: '#',  
143 - key: 'rowIndex',  
144 - width: 60,  
145 - align: 'center',  
146 - customRender: (t, r, index) => parseInt(index) + 1  
147 - }, 141 + // {
  142 + // title: '#',
  143 + // key: 'rowIndex',
  144 + // width: 60,
  145 + // align: 'center',
  146 + // customRender: (t, r, index) => parseInt(index) + 1
  147 + // },
148 { 148 {
149 title: '询价标书文件号', 149 title: '询价标书文件号',
150 align: 'center', 150 align: 'center',
151 - dataIndex: 'xjbswjh' 151 + dataIndex: 'xjbswjh',
  152 + width: '20px'
152 }, 153 },
153 { 154 {
154 title: '单号', 155 title: '单号',
155 align: 'center', 156 align: 'center',
156 - dataIndex: 'danhao' 157 + dataIndex: 'danhao',
  158 + width: '20px'
157 }, 159 },
158 { 160 {
159 title: '项目类型', 161 title: '项目类型',
@@ -10,120 +10,89 @@ @@ -10,120 +10,89 @@
10 </a-form-model-item> 10 </a-form-model-item>
11 </a-col> --> 11 </a-col> -->
12 <a-col :span="6" > 12 <a-col :span="6" >
13 - <a-form-model-item label="询价标书文件号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="xjbswjh">  
14 - <a-input v-model="model.xjbswjh" disabled ></a-input> 13 + <a-form-model-item label="物料编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code">
  14 + <a-input v-model="model.tenderInfo.code" disabled></a-input>
15 </a-form-model-item> 15 </a-form-model-item>
16 </a-col> 16 </a-col>
17 <a-col :span="6" > 17 <a-col :span="6" >
18 - <a-form-model-item label="物料编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm">  
19 - <a-input v-model="model.wlbm" disabled></a-input> 18 + <a-form-model-item label="标段(包)名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tenderName">
  19 + <a-input v-model="model.tenderInfo.tenderName" disabled></a-input>
20 </a-form-model-item> 20 </a-form-model-item>
21 </a-col> 21 </a-col>
22 <a-col :span="6" > 22 <a-col :span="6" >
23 - <a-form-model-item label="物料长描述" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm"> 23 + <a-form-model-item label="物料长描述" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="miaoshu">
24 <a-input v-model="model.tenderInfo.miaoshu" disabled></a-input> 24 <a-input v-model="model.tenderInfo.miaoshu" disabled></a-input>
25 </a-form-model-item> 25 </a-form-model-item>
26 </a-col> 26 </a-col>
27 <a-col :span="6" > 27 <a-col :span="6" >
28 - <a-form-model-item label="品牌" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm"> 28 + <a-form-model-item label="品牌" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="pinpai">
29 <a-input v-model="model.tenderInfo.pinpai" disabled></a-input> 29 <a-input v-model="model.tenderInfo.pinpai" disabled></a-input>
30 </a-form-model-item> 30 </a-form-model-item>
31 </a-col> 31 </a-col>
  32 +
32 <a-col :span="6" > 33 <a-col :span="6" >
33 - <a-form-model-item label="标的类型" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm">  
34 - <a-input v-model="model.tenderInfo.bdlx" disabled></a-input>  
35 - </a-form-model-item>  
36 - </a-col>  
37 - <a-col :span="6" >  
38 - <a-form-model-item label="优先等级" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm">  
39 - <a-input v-model="model.tenderInfo.yxdj" disabled></a-input> 34 + <a-form-model-item label="计量单位" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="jldw">
  35 + <a-input v-model="model.tenderInfo.jldw" disabled></a-input>
40 </a-form-model-item> 36 </a-form-model-item>
41 </a-col> 37 </a-col>
42 <a-col :span="6" > 38 <a-col :span="6" >
43 - <a-form-model-item label="送货地址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm">  
44 - <a-input v-model="model.tenderInfo.shdz" disabled></a-input> 39 + <a-form-model-item label="需求数量" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="xqsl">
  40 + <a-input v-model="model.tenderInfo.xqsl" disabled></a-input>
45 </a-form-model-item> 41 </a-form-model-item>
46 </a-col> 42 </a-col>
47 <a-col :span="6" > 43 <a-col :span="6" >
48 - <a-form-model-item label="询价计划完成日期" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm">  
49 - <a-input v-model="model.tenderInfo.xjjhwcsj" disabled></a-input> 44 + <a-form-model-item label="需求交货期" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="xqjhq">
  45 + <j-date v-model="model.tenderInfo.xqjhq" style="width: 100%" disabled/>
50 </a-form-model-item> 46 </a-form-model-item>
51 </a-col> 47 </a-col>
52 <a-col :span="6" > 48 <a-col :span="6" >
53 - <a-form-model-item label="需求数量" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wlbm">  
54 - <a-input v-model="model.tenderInfo.xqsl" disabled></a-input> 49 + <a-form-model-item label="需求单位" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="xqdw">
  50 + <a-input v-model="model.tenderInfo.xqdw" disabled ></a-input>
55 </a-form-model-item> 51 </a-form-model-item>
56 </a-col> 52 </a-col>
  53 +
57 <a-col :span="6" > 54 <a-col :span="6" >
58 <a-form-model-item label="库存数据" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="kcsj"> 55 <a-form-model-item label="库存数据" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="kcsj">
59 - <a-input v-model="model.kcsj" placeholder="请输入库存数据" ></a-input> 56 + <a-input v-model="model.kcsj" disabled ></a-input>
60 </a-form-model-item> 57 </a-form-model-item>
61 </a-col> 58 </a-col>
62 <a-col :span="6" > 59 <a-col :span="6" >
63 <a-form-model-item label="在途库存" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ztkf"> 60 <a-form-model-item label="在途库存" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ztkf">
64 - <a-input v-model="model.ztkf" placeholder="请输入在途库存" ></a-input> 61 + <a-input v-model="model.ztkf" disabled></a-input>
65 </a-form-model-item> 62 </a-form-model-item>
66 </a-col> 63 </a-col>
67 <a-col :span="6" > 64 <a-col :span="6" >
68 - <a-form-model-item label="库存单价(含税运)(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="kcdj">  
69 - <a-input v-model="model.kcdj" placeholder="请输入库存单价(含税运)(元)" ></a-input> 65 + <a-form-model-item label="最近中标单价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zjzbdj">
  66 + <a-input v-model="model.zjzbdj" disabled></a-input>
70 </a-form-model-item> 67 </a-form-model-item>
71 </a-col> 68 </a-col>
72 <a-col :span="6" > 69 <a-col :span="6" >
73 - <a-form-model-item label="在途单价(含税运)(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ztdj">  
74 - <a-input v-model="model.ztdj" placeholder="请输入在途单价(含税运)(元)" ></a-input>  
75 - </a-form-model-item>  
76 - </a-col>  
77 - <a-col :span="6" >  
78 - <a-form-model-item label="历史投标价(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="lstbj">  
79 - <a-input v-model="model.lstbj" placeholder="请输入历史投标价(元)" ></a-input>  
80 - </a-form-model-item>  
81 - </a-col>  
82 - <a-col :span="6" >  
83 - <a-form-model-item label="历史中标价(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="lszbj">  
84 - <a-input v-model="model.lszbj" placeholder="请输入历史中标价(元)" ></a-input>  
85 - </a-form-model-item>  
86 - </a-col>  
87 - <a-col :span="6" >  
88 - <a-form-model-item label="投标价格(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tbjg">  
89 - <a-input v-model="model.tbjg" placeholder="请输入投标价格(元)" ></a-input>  
90 - </a-form-model-item>  
91 - </a-col>  
92 - <!-- <a-col :span="6" >  
93 - <a-form-model-item label="中标价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zbj">  
94 - <a-input v-model="model.zbj" placeholder="请输入中标价" ></a-input>  
95 - </a-form-model-item>  
96 - </a-col>  
97 - <a-col :span="6" >  
98 - <a-form-model-item label="单价差异" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="djchay">  
99 - <a-input v-model="model.djchay" placeholder="请输入单价差异" ></a-input> 70 + <a-form-model-item label="最后一次中标时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zhzbsj">
  71 + <a-input v-model="model.zhzbsj" disabled></a-input>
100 </a-form-model-item> 72 </a-form-model-item>
101 </a-col> 73 </a-col>
  74 +
102 <a-col :span="6" > 75 <a-col :span="6" >
103 - <a-form-model-item label="数量" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sl">  
104 - <a-input v-model="model.sl" placeholder="请输入数量" ></a-input> 76 + <a-form-model-item label="投标参考价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tbjg">
  77 + <a-input-number v-model="model.tbjg" placeholder="投标参考价" style="width: 14vw" disabled></a-input-number>
105 </a-form-model-item> 78 </a-form-model-item>
106 </a-col> 79 </a-col>
107 <a-col :span="6" > 80 <a-col :span="6" >
108 - <a-form-model-item label="时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sj">  
109 - <a-input v-model="model.sj" placeholder="请输入时间" ></a-input> 81 + <a-form-model-item label="税率(%)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sl">
  82 + <a-input-number v-model="model.sl" placeholder="税率(%)" style="width: 14vw" ></a-input-number>
110 </a-form-model-item> 83 </a-form-model-item>
111 </a-col> 84 </a-col>
112 <a-col :span="6" > 85 <a-col :span="6" >
113 - <a-form-model-item label="是否中标" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sfzb">  
114 - <a-input v-model="model.sfzb" placeholder="请输入是否中标" ></a-input> 86 + <a-form-model-item label="响应品牌" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="xypp">
  87 + <a-input v-model="model.xypp" placeholder="响应品牌" ></a-input>
115 </a-form-model-item> 88 </a-form-model-item>
116 </a-col> 89 </a-col>
117 <a-col :span="6" > 90 <a-col :span="6" >
118 - <a-form-model-item label="是否已采购完成" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sfcgwc">  
119 - <a-input v-model="model.sfcgwc" placeholder="请输入是否已采购完成" ></a-input> 91 + <a-form-model-item label="响应单价(不含税)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="xydj">
  92 + <a-input-number v-model="model.xydj" placeholder="响应单价(不含税)" style="width: 14vw" ></a-input-number>
120 </a-form-model-item> 93 </a-form-model-item>
121 </a-col> 94 </a-col>
122 - <a-col :span="6" >  
123 - <a-form-model-item label="交货时间" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="jhsj">  
124 - <a-input v-model="model.jhsj" placeholder="请输入交货时间" ></a-input>  
125 - </a-form-model-item>  
126 - </a-col> --> 95 +
127 </a-row> 96 </a-row>
128 </a-form-model> 97 </a-form-model>
129 </j-form-container> 98 </j-form-container>
@@ -190,6 +159,9 @@ @@ -190,6 +159,9 @@
190 // 新增时子表默认添加几行空数据 159 // 新增时子表默认添加几行空数据
191 addDefaultRowNum: 1, 160 addDefaultRowNum: 1,
192 validatorRules: { 161 validatorRules: {
  162 + sl: [{ required: true, message: '请输入数据!' }],
  163 + xypp: [{ required: true, message: '请输入数据!' }],
  164 + xydj: [{ required: true, message: '请输入数据!' }]
193 }, 165 },
194 refKeys: ['tblTradeInquiryInfo' ], 166 refKeys: ['tblTradeInquiryInfo' ],
195 tableKeys: ['tblTradeInquiryInfo' ], 167 tableKeys: ['tblTradeInquiryInfo' ],
@@ -205,88 +177,62 @@ @@ -205,88 +177,62 @@
205 type: JVXETypes.input, 177 type: JVXETypes.input,
206 disabled: true, 178 disabled: true,
207 width: '200px', 179 width: '200px',
208 - placeholder: '请输入${title}',  
209 defaultValue: '' 180 defaultValue: ''
210 }, 181 },
211 { 182 {
212 - title: '电话',  
213 - key: 'tel', 183 + title: '专票单价',
  184 + key: 'zpdj',
214 type: JVXETypes.input, 185 type: JVXETypes.input,
215 disabled: true, 186 disabled: true,
216 - width: '200px',  
217 - placeholder: '请输入${title}', 187 + width: '140px',
218 defaultValue: '' 188 defaultValue: ''
219 }, 189 },
220 { 190 {
221 - title: '网络链接地址',  
222 - key: 'wldz', 191 + title: '专票税率(%)',
  192 + key: 'zpsl',
223 type: JVXETypes.input, 193 type: JVXETypes.input,
224 disabled: true, 194 disabled: true,
225 - width: '200px',  
226 - placeholder: '请输入${title}', 195 + width: '140px',
227 defaultValue: '' 196 defaultValue: ''
228 }, 197 },
229 { 198 {
230 - title: '微信号',  
231 - key: 'wxh', 199 + title: '普票单价',
  200 + key: 'ppdj',
232 type: JVXETypes.input, 201 type: JVXETypes.input,
233 disabled: true, 202 disabled: true,
234 - width: '200px',  
235 - placeholder: '请输入${title}', 203 + width: '140px',
236 defaultValue: '' 204 defaultValue: ''
237 }, 205 },
238 { 206 {
239 - title: '单价(元)',  
240 - key: 'dj', 207 + title: '普票税率(%)',
  208 + key: 'ppsl',
241 type: JVXETypes.input, 209 type: JVXETypes.input,
242 disabled: true, 210 disabled: true,
243 - width: '200px',  
244 - placeholder: '请输入${title}', 211 + width: '140px',
245 defaultValue: '' 212 defaultValue: ''
246 }, 213 },
247 { 214 {
248 - title: '总价(元)',  
249 - key: 'zj', 215 + title: '无票单价',
  216 + key: 'wpdj',
250 type: JVXETypes.input, 217 type: JVXETypes.input,
251 disabled: true, 218 disabled: true,
252 - width: '200px',  
253 - placeholder: '请输入${title}', 219 + width: '140px',
254 defaultValue: '' 220 defaultValue: ''
255 }, 221 },
256 { 222 {
257 - title: '票据',  
258 - key: 'piaoju', 223 + title: '是否含运费',
  224 + key: 'sfhyf',
259 type: JVXETypes.input, 225 type: JVXETypes.input,
260 disabled: true, 226 disabled: true,
261 - width: '200px',  
262 - placeholder: '请输入${title}', 227 + width: '140px',
263 defaultValue: '' 228 defaultValue: ''
264 }, 229 },
265 { 230 {
266 - title: '票据税额比例',  
267 - key: 'pjsebl', 231 + title: '运费',
  232 + key: 'yf',
268 type: JVXETypes.input, 233 type: JVXETypes.input,
269 disabled: true, 234 disabled: true,
270 - width: '200px',  
271 - placeholder: '请输入${title}',  
272 - defaultValue: ''  
273 - },  
274 - {  
275 - title: '最小出货量',  
276 - key: 'zxchl',  
277 - type: JVXETypes.input,  
278 - disabled: true,  
279 - width: '200px',  
280 - placeholder: '请输入${title}',  
281 - defaultValue: ''  
282 - },  
283 - {  
284 - title: 'L/T(交货周期天)',  
285 - key: 'jhzqt',  
286 - type: JVXETypes.input,  
287 - disabled: true,  
288 - width: '200px',  
289 - placeholder: '请输入${title}', 235 + width: '140px',
290 defaultValue: '' 236 defaultValue: ''
291 }, 237 },
292 { 238 {
@@ -294,78 +240,34 @@ @@ -294,78 +240,34 @@
294 key: 'fhdz', 240 key: 'fhdz',
295 type: JVXETypes.input, 241 type: JVXETypes.input,
296 disabled: true, 242 disabled: true,
297 - width: '200px',  
298 - placeholder: '请输入${title}', 243 + width: '210px',
299 defaultValue: '' 244 defaultValue: ''
300 }, 245 },
301 { 246 {
302 - title: '单价是否含运费',  
303 - key: 'djsfhyf', 247 + title: '最小出货量',
  248 + key: 'zxchl',
304 type: JVXETypes.input, 249 type: JVXETypes.input,
305 disabled: true, 250 disabled: true,
306 - width: '200px',  
307 - placeholder: '请输入${title}', 251 + width: '140px',
308 defaultValue: '' 252 defaultValue: ''
309 }, 253 },
310 { 254 {
311 - title: '含运费单价',  
312 - key: 'hyfdj', 255 + title: 'L/T(交货周期天)',
  256 + key: 'jhzqt',
313 type: JVXETypes.input, 257 type: JVXETypes.input,
314 disabled: true, 258 disabled: true,
315 - width: '200px',  
316 - placeholder: '请输入${title}', 259 + width: '160px',
317 defaultValue: '' 260 defaultValue: ''
318 }, 261 },
319 { 262 {
320 title: '价格评价', 263 title: '价格评价',
321 key: 'jgpj', 264 key: 'jgpj',
322 - type: JVXETypes.input,  
323 - width: '200px',  
324 - placeholder: '请输入${title}',  
325 - defaultValue: ''  
326 - },  
327 - {  
328 - title: '含税价格(元)',  
329 - key: 'hsjg',  
330 - type: JVXETypes.input,  
331 - width: '200px',  
332 - placeholder: '请输入${title}',  
333 - defaultValue: ''  
334 - },  
335 - {  
336 - title: '不含税价格(元)',  
337 - key: 'bhsjg',  
338 - type: JVXETypes.input,  
339 - width: '200px',  
340 - placeholder: '请输入${title}',  
341 - defaultValue: ''  
342 - },  
343 - {  
344 - title: '是否需要重新询价',  
345 - key: 'sfxycxxj',  
346 type: JVXETypes.select, 265 type: JVXETypes.select,
347 - options: [],  
348 - dictCode: 'is_open',  
349 - width: '200px',  
350 - placeholder: '请输入${title}',  
351 - defaultValue: ''  
352 - },  
353 - {  
354 - title: '原因/备注',  
355 - key: 'bz',  
356 - type: JVXETypes.input,  
357 - width: '200px',  
358 - placeholder: '请输入${title}',  
359 - defaultValue: '' 266 + disabled: true,
  267 + options: [{ value: '最佳', text: '最佳' }, { value: '优选', text: '优选' }, { value: '一般', text: '一般' }],
  268 + width: '100px',
  269 + placeholder: '请选择${title}'
360 } 270 }
361 - // {  
362 - // title: '关联招标id',  
363 - // key: 'tradeId',  
364 - // type: JVXETypes.input,  
365 - // width:"200px",  
366 - // placeholder: '请输入${title}',  
367 - // defaultValue:'',  
368 - // },  
369 ] 271 ]
370 }, 272 },
371 url: { 273 url: {
@@ -8,50 +8,59 @@ @@ -8,50 +8,59 @@
8 @ok="handleOk" 8 @ok="handleOk"
9 :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" 9 :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
10 @cancel="handleCancel"> 10 @cancel="handleCancel">
11 - <tbl-trade-bid-sub-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"/> 11 + <tbl-trade-bid-sub-form v-if="formType == 'tb'" ref="realForm" @ok="submitCallback" :disabled="disableSubmit"/>
  12 + <TblTradeInquiryApprovalForm v-if="formType == 'sp'" ref="realForm" @ok="submitCallback" :disabled="disableSubmit"/>
12 </j-modal> 13 </j-modal>
13 </template> 14 </template>
14 15
15 <script> 16 <script>
16 17
17 import TblTradeBidSubForm from './TblTradeBidSubForm' 18 import TblTradeBidSubForm from './TblTradeBidSubForm'
  19 + import TblTradeInquiryApprovalForm from './TblTradeInquiryApprovalForm'
18 20
19 export default { 21 export default {
20 name: 'TblTradeBidSubModal', 22 name: 'TblTradeBidSubModal',
21 components: { 23 components: {
22 - TblTradeBidSubForm 24 + TblTradeBidSubForm,
  25 + TblTradeInquiryApprovalForm
  26 + },
  27 + props: {
  28 + formType: {
  29 + type: String,
  30 + default: ''
  31 + }
23 }, 32 },
24 data() { 33 data() {
25 return { 34 return {
26 - title:'',  
27 - width:800, 35 + title: '',
  36 + width: 800,
28 visible: false, 37 visible: false,
29 disableSubmit: false 38 disableSubmit: false
30 } 39 }
31 }, 40 },
32 - methods:{ 41 + methods: {
33 add () { 42 add () {
34 - this.visible=true  
35 - this.$nextTick(()=>{  
36 - this.$refs.realForm.add(); 43 + this.visible = true
  44 + this.$nextTick(() => {
  45 + this.$refs.realForm.add()
37 }) 46 })
38 }, 47 },
39 edit (record) { 48 edit (record) {
40 - this.visible=true  
41 - this.$nextTick(()=>{  
42 - this.$refs.realForm.edit(record); 49 + this.visible = true
  50 + this.$nextTick(() => {
  51 + this.$refs.realForm.edit(record)
43 }) 52 })
44 }, 53 },
45 close () { 54 close () {
46 - this.$emit('close');  
47 - this.visible = false; 55 + this.$emit('close')
  56 + this.visible = false
48 }, 57 },
49 handleOk () { 58 handleOk () {
50 - this.$refs.realForm.handleOk(); 59 + this.$refs.realForm.handleOk()
51 }, 60 },
52 - submitCallback(){  
53 - this.$emit('ok');  
54 - this.visible = false; 61 + submitCallback() {
  62 + this.$emit('ok')
  63 + this.visible = false
55 }, 64 },
56 handleCancel () { 65 handleCancel () {
57 this.close() 66 this.close()
@@ -2,103 +2,136 @@ @@ -2,103 +2,136 @@
2 <a-spin :spinning="confirmLoading"> 2 <a-spin :spinning="confirmLoading">
3 <j-form-container :disabled="formDisabled"> 3 <j-form-container :disabled="formDisabled">
4 <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail"> 4 <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
  5 + <a-card :bordered="false" title="供货商信息" type="inner">
5 <a-row> 6 <a-row>
6 - <a-col :span="12"> 7 + <a-col :span="8" >
7 <a-form-model-item label="供货商名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ghsmc"> 8 <a-form-model-item label="供货商名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ghsmc">
8 <a-input v-model="model.ghsmc" placeholder="请输入供货商名称" ></a-input> 9 <a-input v-model="model.ghsmc" placeholder="请输入供货商名称" ></a-input>
9 </a-form-model-item> 10 </a-form-model-item>
10 </a-col> 11 </a-col>
11 - <a-col :span="12">  
12 - <a-form-model-item label="电话" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tel">  
13 - <a-input v-model="model.tel" placeholder="请输入电话" ></a-input> 12 + </a-row>
  13 +
  14 + <a-row>
  15 + <a-col :span="8">
  16 + <a-form-model-item label="联系人" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="lxr">
  17 + <a-input v-model="model.lxr" placeholder="请输入联系人" ></a-input>
14 </a-form-model-item> 18 </a-form-model-item>
15 </a-col> 19 </a-col>
16 - <a-col :span="12">  
17 - <a-form-model-item label="网络链接地址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wldz">  
18 - <a-input v-model="model.wldz" placeholder="请输入网络链接地址" ></a-input> 20 + <a-col :span="8">
  21 + <a-form-model-item label="联系电话" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tel">
  22 + <a-input v-model="model.tel" placeholder="请输入电话" ></a-input>
19 </a-form-model-item> 23 </a-form-model-item>
20 </a-col> 24 </a-col>
21 - <a-col :span="12"> 25 + </a-row>
  26 +
  27 + <a-row>
  28 + <a-col :span="8">
22 <a-form-model-item label="微信号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wxh"> 29 <a-form-model-item label="微信号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wxh">
23 <a-input v-model="model.wxh" placeholder="请输入微信号" ></a-input> 30 <a-input v-model="model.wxh" placeholder="请输入微信号" ></a-input>
24 </a-form-model-item> 31 </a-form-model-item>
25 </a-col> 32 </a-col>
26 - <a-col :span="12">  
27 - <a-form-model-item label="单价(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dj">  
28 - <a-input v-model="model.dj" placeholder="请输入单价(元)" ></a-input> 33 + <a-col :span="8">
  34 + <a-form-model-item label="网址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wldz">
  35 + <a-input v-model="model.wldz" placeholder="请输入网址" ></a-input>
29 </a-form-model-item> 36 </a-form-model-item>
30 </a-col> 37 </a-col>
31 - <a-col :span="12">  
32 - <a-form-model-item label="总价(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zj">  
33 - <a-input v-model="model.zj" placeholder="请输入总价(元)" ></a-input> 38 + <a-col :span="8">
  39 + <a-form-model-item label="网店" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wddz">
  40 + <a-input v-model="model.wddz" placeholder="请输入网店地址" ></a-input>
34 </a-form-model-item> 41 </a-form-model-item>
35 </a-col> 42 </a-col>
36 - <a-col :span="12">  
37 - <a-form-model-item label="票据" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="piaoju">  
38 - <a-input v-model="model.piaoju" placeholder="请输入票据" ></a-input> 43 + <a-col :span="8">
  44 + <a-form-model-item label="开户行名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="khhmc">
  45 + <a-input v-model="model.khhmc" placeholder="请输入开户行名称" ></a-input>
39 </a-form-model-item> 46 </a-form-model-item>
40 </a-col> 47 </a-col>
41 - <a-col :span="12">  
42 - <a-form-model-item label="票据税额比例" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="pjsebl">  
43 - <a-input v-model="model.pjsebl" placeholder="请输入票据税额比例" ></a-input> 48 + <a-col :span="8">
  49 + <a-form-model-item label="银行账号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="yhzh">
  50 + <a-input v-model="model.yhzh" placeholder="请输入银行账号" ></a-input>
44 </a-form-model-item> 51 </a-form-model-item>
45 </a-col> 52 </a-col>
46 - <a-col :span="12">  
47 - <a-form-model-item label="最小出货量" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zxchl">  
48 - <a-input v-model="model.zxchl" placeholder="请输入最小出货量" ></a-input> 53 + <a-col :span="8">
  54 + <a-form-model-item label="行号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="hh">
  55 + <a-input v-model="model.hh" placeholder="请输入行号" ></a-input>
49 </a-form-model-item> 56 </a-form-model-item>
50 </a-col> 57 </a-col>
51 - <a-col :span="12">  
52 - <a-form-model-item label="L/T(交货周期天)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="lt">  
53 - <a-input v-model="model.jhzqt" placeholder="请输入L/T(交货周期天)" ></a-input> 58 + </a-row>
  59 + </a-card>
  60 +
  61 + <a-card :bordered="false" title="价格信息" type="inner">
  62 + <a-row>
  63 + <a-col :span="8">
  64 + <a-form-model-item label="专票单价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zpdj">
  65 + <a-input-number v-model="model.zpdj" placeholder="请输入专票单价" style="width: 300px"></a-input-number>
54 </a-form-model-item> 66 </a-form-model-item>
55 </a-col> 67 </a-col>
56 - <a-col :span="12">  
57 - <a-form-model-item label="发货地址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="fhdz">  
58 - <a-input v-model="model.fhdz" placeholder="请输入发货地址" ></a-input> 68 + <a-col :span="8">
  69 + <a-form-model-item label="专票税率(%)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zpsl">
  70 + <a-input-number v-model="model.zpsl" placeholder="请输入专票税率(%)" style="width: 300px"></a-input-number>
59 </a-form-model-item> 71 </a-form-model-item>
60 </a-col> 72 </a-col>
61 - <a-col :span="12">  
62 - <a-form-model-item label="单价是否含运费" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="djsfhyf">  
63 - <a-input v-model="model.djsfhyf" placeholder="请输入单价是否含运费" ></a-input> 73 + </a-row>
  74 + <a-row>
  75 + <a-col :span="8">
  76 + <a-form-model-item label="普票单价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ppdj">
  77 + <a-input-number v-model="model.ppdj" placeholder="请输入普票单价" style="width: 300px"></a-input-number>
64 </a-form-model-item> 78 </a-form-model-item>
65 </a-col> 79 </a-col>
66 - <a-col :span="12">  
67 - <a-form-model-item label="含运费单价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="hyfdj">  
68 - <a-input v-model="model.hyfdj" placeholder="请输入含运费单价" ></a-input> 80 + <a-col :span="8">
  81 + <a-form-model-item label="普票税率(%)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ppsl">
  82 + <a-input-number v-model="model.ppsl" placeholder="请输入普票税率(%)" style="width: 300px"></a-input-number>
69 </a-form-model-item> 83 </a-form-model-item>
70 </a-col> 84 </a-col>
71 - <a-col :span="12">  
72 - <a-form-model-item label="价格评价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="jgpj">  
73 - <a-input v-model="model.jgpj" placeholder="请输入价格评价" ></a-input> 85 + </a-row>
  86 + <a-row>
  87 + <a-col :span="8">
  88 + <a-form-model-item label="无票单价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="wpdj">
  89 + <a-input-number v-model="model.wpdj" placeholder="请输入无票单价" style="width: 300px"></a-input-number>
74 </a-form-model-item> 90 </a-form-model-item>
75 </a-col> 91 </a-col>
76 - <a-col :span="12">  
77 - <a-form-model-item label="含税价格(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="hsjg">  
78 - <a-input v-model="model.hsjg" placeholder="请输入含税价格(元)" ></a-input> 92 + </a-row>
  93 + </a-card>
  94 +
  95 + <a-card :bordered="false" title="运费信息" type="inner">
  96 + <a-row>
  97 + <a-col :span="8">
  98 + <a-form-model-item label="是否含运费" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sfhyf">
  99 + <a-radio-group v-model="model.sfhyf" @change="onRadioChange">
  100 + <a-radio value="是">含运费</a-radio>
  101 + <a-radio value="否">不含运费</a-radio>
  102 + </a-radio-group>
79 </a-form-model-item> 103 </a-form-model-item>
80 </a-col> 104 </a-col>
81 - <a-col :span="12">  
82 - <a-form-model-item label="不含税价格(元)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bhsjg">  
83 - <a-input v-model="model.bhsjg" placeholder="请输入不含税价格(元)" ></a-input> 105 + <a-col :span="8" v-if="model.sfhyf == '否'">
  106 + <a-form-model-item label="运费" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="yf">
  107 + <a-input-number v-model="model.yf" placeholder="请输入运费" style="width: 300px"></a-input-number>
84 </a-form-model-item> 108 </a-form-model-item>
85 </a-col> 109 </a-col>
86 - <!-- <a-col :span="12">  
87 - <a-form-model-item label="是否需要重新询价" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sfxycxxj">  
88 - <a-input v-model="model.sfxycxxj" placeholder="请输入是否需要重新询价" ></a-input> 110 + </a-row>
  111 + </a-card>
  112 +
  113 + <a-card :bordered="false" title="出货信息" type="inner">
  114 + <a-row>
  115 + <a-col :span="8" >
  116 + <a-form-model-item label="发货地址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="fhdz">
  117 + <a-input v-model="model.fhdz" placeholder="请输入发货地址" ></a-input>
89 </a-form-model-item> 118 </a-form-model-item>
90 </a-col> 119 </a-col>
91 - <a-col :span="12">  
92 - <a-form-model-item label="原因/备注" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bz">  
93 - <a-input v-model="model.bz" placeholder="请输入原因/备注" ></a-input> 120 + <a-col :span="1" :offset="16"></a-col>
  121 + <a-col :span="8">
  122 + <a-form-model-item label="最小出货量" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="zxchl">
  123 + <a-input v-model="model.zxchl" placeholder="请输入最小出货量" ></a-input>
94 </a-form-model-item> 124 </a-form-model-item>
95 - </a-col> -->  
96 - <!-- <a-col :span="12">  
97 - <a-form-model-item label="关联招标id" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="tradeId">  
98 - <a-input v-model="model.tradeId" placeholder="请输入关联招标id" ></a-input> 125 + </a-col>
  126 + <a-col :span="1" :offset="16"></a-col>
  127 + <a-col :span="8">
  128 + <a-form-model-item label="L/T(交货周期天)" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="jhzqt">
  129 + <a-input v-model="model.jhzqt" placeholder="请输入L/T(交货周期天)" ></a-input>
99 </a-form-model-item> 130 </a-form-model-item>
100 - </a-col> --> 131 + </a-col>
  132 +
101 </a-row> 133 </a-row>
  134 + </a-card>
102 </a-form-model> 135 </a-form-model>
103 </j-form-container> 136 </j-form-container>
104 </a-spin> 137 </a-spin>
@@ -114,94 +147,113 @@ @@ -114,94 +147,113 @@
114 components: { 147 components: {
115 }, 148 },
116 props: { 149 props: {
117 - //表单禁用 150 + // 表单禁用
118 disabled: { 151 disabled: {
119 type: Boolean, 152 type: Boolean,
120 default: false, 153 default: false,
121 required: false 154 required: false
122 }, 155 },
123 - tradeId:{  
124 - type:String,  
125 - default:'' 156 + tradeId: {
  157 + type: String,
  158 + default: ''
126 }, 159 },
127 - wlbm:{  
128 - type:String,  
129 - default:'' 160 + wlbm: {
  161 + type: String,
  162 + default: ''
130 } 163 }
131 }, 164 },
132 data () { 165 data () {
133 return { 166 return {
134 - model:{ 167 + model: {
  168 + sfhyf: '是'
135 }, 169 },
136 labelCol: { 170 labelCol: {
137 xs: { span: 24 }, 171 xs: { span: 24 },
138 - sm: { span: 5 }, 172 + sm: { span: 8 }
139 }, 173 },
140 wrapperCol: { 174 wrapperCol: {
141 xs: { span: 24 }, 175 xs: { span: 24 },
142 - sm: { span: 16 }, 176 + sm: { span: 16 }
143 }, 177 },
144 confirmLoading: false, 178 confirmLoading: false,
145 validatorRules: { 179 validatorRules: {
  180 + ghsmc: [{ required: true, message: '请输入数据!' }],
  181 + lxr: [{ required: true, message: '请输入数据!' }],
  182 + tel: [{ required: true, message: '请输入数据!' }],
  183 + khhmc: [{ required: true, message: '请输入数据!' }],
  184 + yhzh: [{ required: true, message: '请输入数据!' }],
  185 + hh: [{ required: true, message: '请输入数据!' }],
  186 + zpdj: [{ required: true, message: '请输入数据!' }],
  187 + zpsl: [{ required: true, message: '请输入数据!' }],
  188 + ppdj: [{ required: true, message: '请输入数据!' }],
  189 + ppsl: [{ required: true, message: '请输入数据!' }],
  190 + wpdj: [{ required: true, message: '请输入数据!' }],
  191 + yf: [{ required: true, message: '请输入数据!' }],
  192 + fhdz: [{ required: true, message: '请输入数据!' }],
  193 + zxchl: [{ required: true, message: '请输入数据!' }],
  194 + jhzqt: [{ required: true, message: '请输入数据!' }]
146 }, 195 },
147 url: { 196 url: {
148 - add: "/trade/tblTradeInquiryInfo/add",  
149 - edit: "/trade/tblTradeInquiryInfo/edit",  
150 - queryById: "/trade/tblTradeInquiryInfo/queryById" 197 + add: '/trade/tblTradeInquiryInfo/add',
  198 + edit: '/trade/tblTradeInquiryInfo/edit',
  199 + queryById: '/trade/tblTradeInquiryInfo/queryById'
151 } 200 }
152 } 201 }
153 }, 202 },
154 computed: { 203 computed: {
155 - formDisabled(){ 204 + formDisabled() {
156 return this.disabled 205 return this.disabled
157 - }, 206 + }
158 }, 207 },
159 created () { 208 created () {
160 - //备份model原始值  
161 - this.modelDefault = JSON.parse(JSON.stringify(this.model)); 209 + // 备份model原始值
  210 + this.modelDefault = JSON.parse(JSON.stringify(this.model))
162 }, 211 },
163 methods: { 212 methods: {
164 add () { 213 add () {
165 - console.log('新增表单',this.tradeId)  
166 - this.edit(this.modelDefault); 214 + this.edit(this.modelDefault)
167 }, 215 },
168 edit (record) { 216 edit (record) {
169 - this.model = Object.assign({}, record);  
170 - this.visible = true; 217 + this.model = Object.assign({}, record)
  218 + this.visible = true
  219 + },
  220 + onRadioChange(e) {
  221 + if (e.target.value === '是') {
  222 + this.model.yf = 0
  223 + }
171 }, 224 },
172 submitForm () { 225 submitForm () {
173 - const that = this; 226 + const that = this
174 // 触发表单验证 227 // 触发表单验证
175 this.$refs.form.validate(valid => { 228 this.$refs.form.validate(valid => {
176 if (valid) { 229 if (valid) {
177 - that.confirmLoading = true;  
178 - let httpurl = '';  
179 - let method = '';  
180 - if(!this.model.id){  
181 - httpurl+=this.url.add;  
182 - method = 'post';  
183 - this.model.tradeId = this.tradeId;  
184 - this.model.wlbm = this.wlbm;  
185 - }else{  
186 - httpurl+=this.url.edit;  
187 - method = 'put'; 230 + that.confirmLoading = true
  231 + let httpurl = ''
  232 + let method = ''
  233 + if (!this.model.id) {
  234 + httpurl += this.url.add
  235 + method = 'post'
  236 + this.model.tradeId = this.tradeId
  237 + this.model.wlbm = this.wlbm
  238 + } else {
  239 + httpurl += this.url.edit
  240 + method = 'put'
188 } 241 }
189 console.log(httpurl) 242 console.log(httpurl)
190 console.log(this.model) 243 console.log(this.model)
191 - httpAction(httpurl,this.model,method).then((res)=>{  
192 - if(res.success){  
193 - that.$message.success(res.message);  
194 - that.$emit('ok');  
195 - }else{  
196 - that.$message.warning(res.message); 244 + httpAction(httpurl, this.model, method).then((res) => {
  245 + if (res.success) {
  246 + that.$message.success(res.message)
  247 + that.$emit('ok')
  248 + } else {
  249 + that.$message.warning(res.message)
197 } 250 }
198 }).finally(() => { 251 }).finally(() => {
199 - that.confirmLoading = false; 252 + that.confirmLoading = false
200 }) 253 })
201 } 254 }
202 -  
203 }) 255 })
204 - }, 256 + }
205 } 257 }
206 } 258 }
207 </script> 259 </script>
@@ -8,15 +8,46 @@ @@ -8,15 +8,46 @@
8 :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" 8 :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
9 @cancel="handleCancel" 9 @cancel="handleCancel"
10 cancelText="关闭"> 10 cancelText="关闭">
  11 +
  12 + <!-- 子表单区域 -->
  13 + <a-tabs v-model="activeKey" @change="handleChangeTabs">
  14 + <a-tab-pane tab="历史询价" :key="refKeys[0]" :forceRender="true">
  15 + <a-table
  16 + ref="table"
  17 + size="middle"
  18 + bordered
  19 + rowKey="id"
  20 + class="j-table-force-nowrap"
  21 + :scroll="{x:true}"
  22 + :columns="columns"
  23 + :dataSource="dataSource"
  24 + :pagination="true"
  25 + :loading="loading"
  26 + >
  27 +
  28 + <span slot="action" slot-scope="text, record">
  29 + <a @click="handleReuse(record)">复用</a>
  30 +
  31 + </span>
  32 +
  33 + </a-table>
  34 + </a-tab-pane>
  35 + <a-tab-pane tab="新增询价" :key="refKeys[1]" :forceRender="true">
11 <tbl-trade-inquiry-info-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit" :tradeId="tradeId" :wlbm="wlbm"></tbl-trade-inquiry-info-form> 36 <tbl-trade-inquiry-info-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit" :tradeId="tradeId" :wlbm="wlbm"></tbl-trade-inquiry-info-form>
  37 + </a-tab-pane>
  38 + </a-tabs>
  39 +
12 </j-modal> 40 </j-modal>
13 </template> 41 </template>
14 42
15 <script> 43 <script>
16 44
  45 + import { getAction } from '@api/manage'
  46 + import { JeecgListMixin } from '@/mixins/JeecgListMixin'
17 import TblTradeInquiryInfoForm from './TblTradeInquiryInfoForm' 47 import TblTradeInquiryInfoForm from './TblTradeInquiryInfoForm'
18 export default { 48 export default {
19 name: 'TblTradeInquiryInfoModal', 49 name: 'TblTradeInquiryInfoModal',
  50 + mixins: [JeecgListMixin],
20 components: { 51 components: {
21 TblTradeInquiryInfoForm 52 TblTradeInquiryInfoForm
22 }, 53 },
@@ -33,16 +64,126 @@ @@ -33,16 +64,126 @@
33 visible: false, 64 visible: false,
34 disableSubmit: false, 65 disableSubmit: false,
35 tradeId: '', 66 tradeId: '',
36 - wlbm: '' 67 + wlbm: '',
  68 + disableMixinCreated: true,
  69 + refKeys: ['history', 'add' ],
  70 + activeKey: 'history',
  71 + // 表头
  72 + columns: [
  73 + {
  74 + title: '供货商名称',
  75 + align: 'center',
  76 + dataIndex: 'ghsmc'
  77 + },
  78 + // {
  79 + // title:'电话',
  80 + // align:"center",
  81 + // dataIndex: 'tel'
  82 + // },
  83 + // {
  84 + // title:'网络链接地址',
  85 + // align:"center",
  86 + // dataIndex: 'wldz'
  87 + // },
  88 + // {
  89 + // title:'微信号',
  90 + // align:"center",
  91 + // dataIndex: 'wxh'
  92 + // },
  93 + {
  94 + title: '专票单价',
  95 + align: 'center',
  96 + dataIndex: 'zpdj'
  97 + },
  98 + {
  99 + title: '专票税率(%)',
  100 + align: 'center',
  101 + dataIndex: 'zpsl'
  102 + },
  103 + {
  104 + title: '普票单价',
  105 + align: 'center',
  106 + dataIndex: 'ppdj'
  107 + },
  108 + {
  109 + title: '普票税率(%)',
  110 + align: 'center',
  111 + dataIndex: 'ppsl'
  112 + },
  113 + {
  114 + title: '无票单价',
  115 + align: 'center',
  116 + dataIndex: 'wpdj'
  117 + },
  118 + {
  119 + title: '是否含运费',
  120 + align: 'center',
  121 + dataIndex: 'sfhyf'
  122 + },
  123 + {
  124 + title: '运费',
  125 + align: 'center',
  126 + dataIndex: 'yf'
  127 + },
  128 + {
  129 + title: '发货地址',
  130 + align: 'center',
  131 + dataIndex: 'fhdz'
  132 + },
  133 + {
  134 + title: '最小出货量',
  135 + align: 'center',
  136 + dataIndex: 'zxchl'
  137 + },
  138 + {
  139 + title: 'L/T(交货周期天)',
  140 + align: 'center',
  141 + dataIndex: 'jhzqt'
  142 + },
  143 + {
  144 + title: '价格评价',
  145 + align: 'center',
  146 + dataIndex: 'jgpj'
  147 + },
  148 + // {
  149 + // title: '是否需要重新询价',
  150 + // align: 'center',
  151 + // dataIndex: 'sfxycxxj',
  152 + // customRender: (text, record) => {
  153 + // if (text == 'Y') {
  154 + // return '是'
  155 + // } else if (text == 'N') {
  156 + // return '否'
  157 + // }
  158 + // }
  159 + // },
  160 + // {
  161 + // title: '原因/备注',
  162 + // align: 'center',
  163 + // dataIndex: 'bz'
  164 + // },
  165 + {
  166 + title: '操作',
  167 + dataIndex: 'action',
  168 + align: 'center',
  169 + fixed: 'right',
  170 + width: 147,
  171 + scopedSlots: { customRender: 'action' }
  172 + }
  173 + ],
  174 + url: {
  175 + list: '/trade/tblTradeInquiryInfo/list'
  176 + }
  177 +
37 } 178 }
38 }, 179 },
39 methods: { 180 methods: {
40 add () { 181 add () {
41 this.visible = true 182 this.visible = true
42 this.$nextTick(() => { 183 this.$nextTick(() => {
  184 + this.loadData()
43 this.$refs.realForm.add() 185 this.$refs.realForm.add()
44 }) 186 })
45 - console.log(this.tradeId)  
46 }, 187 },
47 edit (record) { 188 edit (record) {
48 this.visible = true 189 this.visible = true
@@ -63,6 +204,35 @@ @@ -63,6 +204,35 @@
63 }, 204 },
64 handleCancel () { 205 handleCancel () {
65 this.close() 206 this.close()
  207 + },
  208 + handleChangeTabs(activeKey) {
  209 + },
  210 + handleReuse(record) {
  211 + let model = { ...record }
  212 + delete model.id
  213 + delete model.createBy
  214 + delete model.createTime
  215 + delete model.updateBy
  216 + delete model.updateTime
  217 + delete model.sysOrgCode
  218 + delete model.jgpj
  219 + delete model.sfxycxxj
  220 + delete model.bz
  221 + delete model.tradeId
  222 + console.log(model)
  223 + this.$refs.realForm.edit(model)
  224 + this.activeKey = this.refKeys['1']
  225 + },
  226 + loadData(record) {
  227 + this.loading = true
  228 + this.dataSource = []
  229 + getAction(this.url.list, { wlbm: this.wlbm }).then((res) => {
  230 + if (res.success) {
  231 + this.dataSource = res.result.records
  232 + }
  233 + }).finally(() => {
  234 + this.loading = false
  235 + })
66 } 236 }
67 } 237 }
68 } 238 }
@@ -44,9 +44,17 @@ @@ -44,9 +44,17 @@
44 </template> 44 </template>
45 45
46 <span slot="action" slot-scope="text, record"> 46 <span slot="action" slot-scope="text, record">
47 - <a @click="handleAdd(record)">新增询价</a> 47 + <!-- 状态:1-询价中,2-询价审批中,3-询价审批通过 -->
  48 + <div v-if="record.status == '1'">
  49 + <a @click="handleAdd(record)">询价</a>
48 <a-divider type="vertical" /> 50 <a-divider type="vertical" />
49 - <a @click="handleSubmit(record)">提交</a> 51 + <!-- <a @click="handleSubmit(record)">提交</a> -->
  52 + <a-popconfirm title="确定提交吗?" @confirm="() => handleSubmit(record)">
  53 + <a>提交</a>
  54 + </a-popconfirm>
  55 + </div>
  56 +
  57 + <a @click="handleApproval(record)" v-has="'inquiry:approval'" v-if="record.status == '2'">审批</a>
50 58
51 <!-- <a-divider type="vertical" /> 59 <!-- <a-divider type="vertical" />
52 <a-dropdown> 60 <a-dropdown>
@@ -67,23 +75,26 @@ @@ -67,23 +75,26 @@
67 </a-table> 75 </a-table>
68 76
69 <tbl-trade-inquiry-info-modal ref="modalForm" @ok="modalFormOk" ></tbl-trade-inquiry-info-modal> 77 <tbl-trade-inquiry-info-modal ref="modalForm" @ok="modalFormOk" ></tbl-trade-inquiry-info-modal>
  78 + <tbl-trade-bid-sub-modal ref="approvalModalForm" @ok="modalFormOk" :formType="'sp'"/>
70 </div> 79 </div>
71 </template> 80 </template>
72 81
73 <script> 82 <script>
74 - import { getAction } from '@api/manage' 83 + import { getAction, postAction } from '@api/manage'
75 import { JeecgListMixin } from '@/mixins/JeecgListMixin' 84 import { JeecgListMixin } from '@/mixins/JeecgListMixin'
76 import { mixinDevice } from '@/utils/mixin' 85 import { mixinDevice } from '@/utils/mixin'
77 import TblTradeInquiryInfoList from '../TblTradeInquiryInfoList' 86 import TblTradeInquiryInfoList from '../TblTradeInquiryInfoList'
78 import '@/assets/less/TableExpand.less' 87 import '@/assets/less/TableExpand.less'
79 import TblTradeInquiryInfoModal from '../modules/TblTradeInquiryInfoModal' 88 import TblTradeInquiryInfoModal from '../modules/TblTradeInquiryInfoModal'
  89 + import TblTradeBidSubModal from '../modules/TblTradeBidSubModal'
80 90
81 export default { 91 export default {
82 name: 'TblTradeTenderInfoSubTable', 92 name: 'TblTradeTenderInfoSubTable',
83 mixins: [JeecgListMixin, mixinDevice], 93 mixins: [JeecgListMixin, mixinDevice],
84 components: { 94 components: {
85 TblTradeInquiryInfoList, 95 TblTradeInquiryInfoList,
86 - TblTradeInquiryInfoModal 96 + TblTradeInquiryInfoModal,
  97 + TblTradeBidSubModal
87 }, 98 },
88 props: { 99 props: {
89 record: { 100 record: {
@@ -273,7 +284,9 @@ @@ -273,7 +284,9 @@
273 } 284 }
274 ], 285 ],
275 url: { 286 url: {
276 - list: '/trade/tblTradePriceInquiry/queryTblTradeTenderInfoByMainId' 287 + list: '/trade/tblTradePriceInquiry/queryTblTradeTenderInfoByMainId',
  288 + submit: '/trade/tblTradeTenderInfo/submit',
  289 + getBidSubData: '/trade/tblTradeBidSub/getBidSubData'
277 }, 290 },
278 /* 分页参数 */ 291 /* 分页参数 */
279 ipagination: { 292 ipagination: {
@@ -302,12 +315,13 @@ @@ -302,12 +315,13 @@
302 methods: { 315 methods: {
303 modalFormOk() { 316 modalFormOk() {
304 this.loadData(this.record) 317 this.loadData(this.record)
  318 + this.$emit('refresh')
305 }, 319 },
306 handleAdd(record) { 320 handleAdd(record) {
307 this.$refs.modalForm.tradeId = record.id 321 this.$refs.modalForm.tradeId = record.id
308 this.$refs.modalForm.wlbm = record.code 322 this.$refs.modalForm.wlbm = record.code
309 this.$refs.modalForm.add() 323 this.$refs.modalForm.add()
310 - this.$refs.modalForm.title = '新增' 324 + this.$refs.modalForm.title = '询价'
311 this.$refs.modalForm.disableSubmit = false 325 this.$refs.modalForm.disableSubmit = false
312 }, 326 },
313 loadData(record) { 327 loadData(record) {
@@ -326,13 +340,33 @@ @@ -326,13 +340,33 @@
326 handleTableChange(pagination, filters, sorter) { 340 handleTableChange(pagination, filters, sorter) {
327 // 分页、排序、筛选变化时触发 341 // 分页、排序、筛选变化时触发
328 // TODO 筛选 342 // TODO 筛选
329 - console.log(pagination)  
330 if (Object.keys(sorter).length > 0) { 343 if (Object.keys(sorter).length > 0) {
331 this.isorter.column = sorter.field 344 this.isorter.column = sorter.field
332 this.isorter.order = sorter.order == 'ascend' ? 'asc' : 'desc' 345 this.isorter.order = sorter.order == 'ascend' ? 'asc' : 'desc'
333 } 346 }
334 this.ipagination = pagination 347 this.ipagination = pagination
335 // this.loadData(this.record); 348 // this.loadData(this.record);
  349 + },
  350 + handleApproval(record) {
  351 + postAction(this.url.getBidSubData, { tradeId: record.id }).then(res => {
  352 + if (res.success) {
  353 + console.log(res)
  354 + this.$refs.approvalModalForm.edit(res.result)
  355 + } else {
  356 + this.$message.error(res.message)
  357 + }
  358 + })
  359 + },
  360 + handleSubmit(record) {
  361 + postAction(this.url.submit, record).then(res => {
  362 + if (res.success) {
  363 + this.$message.success(res.message)
  364 + this.loadData(this.record)
  365 + this.$emit('refresh')
  366 + } else {
  367 + this.$message.error(res.message)
  368 + }
  369 + })
336 } 370 }
337 } 371 }
338 } 372 }