modify_list-apply.vue 48 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338
  1. <template>
  2. <div>
  3. <div>
  4. <el-page-header :content="!cid ? '存货调价单' : '编辑'" @back="goBack" />
  5. </div>
  6. <br /><br />
  7. <div>
  8. <el-form ref="screenForm" label-width="100px" size="small" label-position="left">
  9. <el-row :gutter="20">
  10. <el-col :xs="24" :sm="12" :lg="6">
  11. <el-form-item label="单据编号">
  12. <el-input size="mini" v-model="base.updPriceBillId" placeholder="系统自动生成" disabled />
  13. </el-form-item>
  14. </el-col>
  15. <!-- <el-col :xs="24" :sm="12" :lg="6">
  16. <el-form-item label="调价业务员">
  17. <el-select
  18. placeholder="请选择调价业务员"
  19. filterable
  20. @change="handleUser"
  21. v-model="serviceId"
  22. >
  23. <el-option
  24. v-for="(item, index) in userList"
  25. :label="item.nickName"
  26. :value="item.roleId"
  27. :key="index"
  28. ></el-option>
  29. </el-select>
  30. </el-form-item>
  31. </el-col>
  32. <el-col :xs="24" :sm="12" :lg="6">
  33. <el-form-item label="调价部门">
  34. <el-input size="mini"
  35. placeholder="调价部门"
  36. disabled
  37. v-model="adminCompanyName"
  38. ></el-input>
  39. </el-form-item>
  40. </el-col> -->
  41. <!-- <el-col :xs="24" :sm="12" :lg="6">
  42. <el-form-item label="销售类型">
  43. <el-select
  44. placeholder="请选择销售类型"
  45. filterable
  46. v-model="saleTypeId"
  47. >
  48. <el-option
  49. v-for="item in typeList"
  50. :label="item.saleName"
  51. :value="item.id"
  52. ></el-option>
  53. </el-select>
  54. </el-form-item>
  55. </el-col> -->
  56. <el-col :xs="24" :sm="12" :lg="6">
  57. <el-form-item label="备注">
  58. <el-input size="mini" v-model="base.remark" placeholder="请输入" />
  59. </el-form-item>
  60. </el-col>
  61. <el-col :xs="24" :sm="12" :lg="6">
  62. <el-form-item label="" class="fr" />
  63. </el-col>
  64. </el-row>
  65. </el-form>
  66. </div>
  67. <div class="btn-group clearfixs" v-if="!cid">
  68. <!-- <el-upload
  69. class="import-btn"
  70. :action="baseURL + 'student/import'"
  71. :http-request="handleImport"
  72. :file-list="importFileList"
  73. :show-file-list="false"
  74. >
  75. <el-button
  76. type="primary"
  77. size="small"
  78. >导入调价单
  79. </el-button>
  80. </el-upload>
  81. <el-button
  82. type="primary"
  83. size="small"
  84. @click="hanleDownloadFiles"
  85. >下载模板
  86. </el-button> -->
  87. </div>
  88. <div class="mymain-container">
  89. <!-- 列表 -->
  90. <el-form v-if="!detail.length" size="small" label-position="left">
  91. <div class="table">
  92. <el-table
  93. v-loading="listLoading"
  94. :data="items"
  95. element-loading-text="Loading"
  96. border
  97. fit
  98. highlight-current-row
  99. stripe
  100. >
  101. <el-table-column
  102. align="center"
  103. label="操作类型"
  104. prop="nname"
  105. fixed="right"
  106. min-width="160"
  107. show-overflow-tooltip
  108. >
  109. <!-- <el-button type="text" class="textColor">修改</el-button> -->
  110. <template slot-scope="scope">
  111. <el-button
  112. type="text"
  113. class="textColor"
  114. @click="hanleDeleInd(scope.$index, scope.row.cid, scope.row.materialId)"
  115. >删除
  116. </el-button>
  117. </template>
  118. </el-table-column>
  119. <el-table-column align="center" label="销售类型" prop="mainId" min-width="160" show-overflow-tooltip>
  120. <template slot-scope="scope">
  121. <el-form-item>
  122. <template v-if="!cid">
  123. <el-select
  124. size="mini"
  125. v-model="scope.row.mainId"
  126. placeholder="请选择销售类型"
  127. @change="handleSale($event, scope.$index, scope.row.saleTypes)"
  128. >
  129. <el-option v-for="item in scope.row.saleTypes" :label="item.saleName" :value="item.id" />
  130. </el-select>
  131. </template>
  132. <template v-else>
  133. <el-select
  134. size="mini"
  135. v-model="scope.row.saleTypeId"
  136. placeholder="请选择销售类型"
  137. @change="handleSale($event, scope.$index, scope.row.id)"
  138. >
  139. <el-option v-for="item in typeList" :label="item.saleName" :value="item.id" />
  140. </el-select>
  141. </template>
  142. </el-form-item>
  143. </template>
  144. </el-table-column>
  145. <el-table-column
  146. align="center"
  147. label="物料编码"
  148. prop="materialNumber"
  149. min-width="160"
  150. show-overflow-tooltip
  151. >
  152. <template slot-scope="scope">
  153. <el-form-item>
  154. <el-input size="mini" v-model="scope.row.materialNumber" disabled />
  155. </el-form-item>
  156. </template>
  157. </el-table-column>
  158. <el-table-column align="center" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip>
  159. <template slot-scope="scope">
  160. <el-form-item>
  161. <el-input size="mini" v-model="scope.row.materialName" disabled />
  162. </el-form-item>
  163. </template>
  164. </el-table-column>
  165. <el-table-column align="center" label="规格型号" prop="specification" min-width="160" show-overflow-tooltip>
  166. <template slot-scope="scope">
  167. <el-form-item>
  168. <el-input size="mini" v-model="scope.row.specification" disabled />
  169. </el-form-item>
  170. </template>
  171. </el-table-column>
  172. <el-table-column align="center" label="计量单位" prop="unit" min-width="160" show-overflow-tooltip>
  173. <template slot-scope="scope">
  174. <el-form-item>
  175. <el-input size="mini" v-model="scope.row.unit" disabled />
  176. </el-form-item>
  177. </template>
  178. </el-table-column>
  179. <el-table-column align="center" label="批发价" prop="batchPrice" min-width="160" show-overflow-tooltip>
  180. <template slot-scope="scope">
  181. <el-form-item>
  182. <el-input size="mini" v-model="scope.row.batchPrice" placeholder="请输入批发价" />
  183. </el-form-item>
  184. </template>
  185. </el-table-column>
  186. <el-table-column align="center" label="格力折扣" prop="discAmount" min-width="160" show-overflow-tooltip>
  187. <template slot-scope="scope">
  188. <el-form-item>
  189. <el-input size="mini" v-model="scope.row.discAmount" placeholder="请输入格力折扣" />
  190. </el-form-item>
  191. </template>
  192. </el-table-column>
  193. <el-table-column align="center" label="返利类型" prop="rebateUseRate" min-width="160" show-overflow-tooltip>
  194. <template slot-scope="scope">
  195. <el-form-item>
  196. <el-select
  197. size="mini"
  198. v-model="scope.row.walletRebateId"
  199. multiple
  200. :disabled="scope.row.fang"
  201. placeholder="请选择返利类型"
  202. @change="handelRebateList($event, scope.$index, scope.row)"
  203. @remove-tag="handleRemove2($event, scope.$index, scope.row)"
  204. >
  205. <el-option
  206. v-for="(item, index) in scope.row.rebateList"
  207. :key="item.index"
  208. :value="item.walletRebateId"
  209. :label="item.name"
  210. />
  211. </el-select>
  212. </el-form-item>
  213. </template>
  214. </el-table-column>
  215. <el-table-column align="center" label="生效日期" prop="startDate" min-width="160" show-overflow-tooltip>
  216. <template slot-scope="scope">
  217. <el-form-item>
  218. <el-date-picker
  219. size="mini"
  220. v-model="scope.row.startDate"
  221. type="date"
  222. placeholder="请输入调价日期"
  223. value-format="yyyy-MM-dd"
  224. />
  225. </el-form-item>
  226. </template>
  227. </el-table-column>
  228. <el-table-column align="center" label="失效日期" prop="endDate" min-width="160" show-overflow-tooltip>
  229. <template slot-scope="scope">
  230. <el-form-item>
  231. <el-date-picker
  232. v-model="scope.row.endDate"
  233. type="date"
  234. size="mini"
  235. placeholder="请输入调价日期"
  236. value-format="yyyy-MM-dd"
  237. />
  238. </el-form-item>
  239. </template>
  240. </el-table-column>
  241. <!-- <el-table-column
  242. align="center"
  243. label="是否促销价"
  244. prop="isPromote"
  245. min-width="160"
  246. show-overflow-tooltip
  247. ><template slot-scope="scope">
  248. <el-form-item>
  249. <el-select
  250. v-model="scope.row.isPromote"
  251. placeholder="请选择是否促销价"
  252. >
  253. <el-option
  254. v-for="item in scope.row.isPromoteArr"
  255. :key="item.bool"
  256. :value="item.bool"
  257. :label="item.value"
  258. />
  259. </el-select>
  260. </el-form-item>
  261. </template>
  262. </el-table-column> -->
  263. <el-table-column align="center" label="数量" prop="qty" min-width="160" show-overflow-tooltip>
  264. <template slot-scope="scope">
  265. <el-form-item>
  266. <el-input size="mini" v-model="scope.row.qty" placeholder="请输入数量" />
  267. </el-form-item>
  268. </template>
  269. </el-table-column>
  270. <el-table-column align="center" label="现金钱包" prop="wallets" min-width="160" show-overflow-tooltip>
  271. <template slot-scope="scope">
  272. <el-form-item>
  273. <template v-if="!cid">
  274. <el-select
  275. size="mini"
  276. v-model="scope.row.walletsId"
  277. multiple
  278. clearable
  279. placeholder="请选择现金钱包"
  280. @change="handelWallets($event, scope.$index, scope.row)"
  281. @remove-tag="handleRemove($event, scope.$index, scope.row)"
  282. >
  283. <el-option
  284. v-for="item in scope.row.walleList"
  285. :key="item.id"
  286. :value="item.id"
  287. :label="item.name"
  288. />
  289. </el-select>
  290. </template>
  291. <template v-else>
  292. <el-select
  293. v-model="scope.row.walletsId"
  294. multiple
  295. clearable
  296. size="mini"
  297. placeholder="请选择现金钱包"
  298. @change="handelWallets($event, scope.$index, scope.row)"
  299. @remove-tag="handleRemove($event, scope.$index, scope.row)"
  300. >
  301. <el-option
  302. v-for="item in scope.row.walleList"
  303. :key="item.walletId || item.id"
  304. :value="item.walletId || item.id"
  305. :label="item.walletName || item.name"
  306. />
  307. </el-select>
  308. </template>
  309. </el-form-item>
  310. </template>
  311. </el-table-column>
  312. <el-table-column align="center" label="发布" prop="isPublish" min-width="160" show-overflow-tooltip>
  313. <template slot-scope="scope">
  314. <el-form-item>
  315. <el-select size="mini" v-model="scope.row.isPublish" placeholder="请选择是否发布">
  316. <el-option
  317. v-for="item in scope.row.isPublishArr"
  318. :key="item.bool"
  319. :value="item.bool"
  320. :label="item.value"
  321. />
  322. </el-select>
  323. </el-form-item>
  324. </template>
  325. </el-table-column>
  326. </el-table>
  327. </div>
  328. </el-form>
  329. <el-form v-else :model="detail" size="small" label-position="left">
  330. <el-table
  331. v-loading="listLoading"
  332. :data="detail"
  333. element-loading-text="Loading"
  334. border
  335. fit
  336. highlight-current-row
  337. stripe
  338. >
  339. <el-table-column align="center" label="操作类型" prop="nname" min-width="160" show-overflow-tooltip>
  340. <!-- <el-button type="text" class="textColor">修改</el-button> -->
  341. <template slot-scope="scope">
  342. <el-button type="text" class="textColor" @click="hanleDeleInd(scope.$index)">删除 </el-button>
  343. </template>
  344. </el-table-column>
  345. <el-table-column align="center" label="销售类型" prop="mainId" min-width="160" show-overflow-tooltip>
  346. <template slot-scope="scope">
  347. <el-form-item>
  348. <el-select
  349. v-model="scope.row.saleTypeId"
  350. placeholder="请选择销售类型"
  351. @change="handleSale($event, scope.$index, scope.row.id)"
  352. >
  353. <el-option v-for="item in typeList" :label="item.saleName" :value="item.id" />
  354. </el-select>
  355. </el-form-item>
  356. </template>
  357. </el-table-column>
  358. <el-table-column align="center" label="物料编码" prop="materialNumber" min-width="160" show-overflow-tooltip>
  359. <template slot-scope="scope">
  360. <el-form-item>
  361. <el-input size="mini" v-model="scope.row.materialNumber" />
  362. </el-form-item>
  363. </template>
  364. </el-table-column>
  365. <el-table-column align="center" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip>
  366. <template slot-scope="scope">
  367. <el-form-item>
  368. <el-input size="mini" v-model="scope.row.materialName" />
  369. </el-form-item>
  370. </template>
  371. </el-table-column>
  372. <el-table-column align="center" label="规格型号" prop="specification" min-width="160" show-overflow-tooltip>
  373. <template slot-scope="scope">
  374. <el-form-item>
  375. <el-input size="mini" v-model="scope.row.specification" />
  376. </el-form-item>
  377. </template>
  378. </el-table-column>
  379. <el-table-column align="center" label="计量单位" prop="unit" min-width="160" show-overflow-tooltip>
  380. <template slot-scope="scope">
  381. <el-form-item>
  382. <el-input size="mini" v-model="scope.row.SalesType" />
  383. </el-form-item>
  384. </template>
  385. </el-table-column>
  386. <el-table-column align="center" label="批发价" prop="batchPrice" min-width="160" show-overflow-tooltip>
  387. <template slot-scope="scope">
  388. <el-form-item>
  389. <el-input size="mini" v-model="scope.row.batchPrice" />
  390. </el-form-item>
  391. </template>
  392. </el-table-column>
  393. <el-table-column align="center" label="零售价" prop="retailPrice" min-width="160" show-overflow-tooltip>
  394. <template slot-scope="scope">
  395. <el-form-item>
  396. <el-input size="mini" v-model="scope.row.retailPrice" />
  397. </el-form-item>
  398. </template>
  399. </el-table-column>
  400. <el-table-column
  401. align="center"
  402. label="返利使用比例"
  403. prop="rebateUseRate"
  404. min-width="160"
  405. show-overflow-tooltip
  406. >
  407. <template slot-scope="scope">
  408. <el-form-item>
  409. <el-input size="mini" v-model="scope.row.rebateUseRate" />
  410. </el-form-item>
  411. </template>
  412. </el-table-column>
  413. <el-table-column align="center" label="返利类型" prop="rebateUseRate" min-width="160" show-overflow-tooltip>
  414. <template slot-scope="scope">
  415. <el-form-item>
  416. <el-select
  417. v-model="scope.row.walletRebateId"
  418. multiple
  419. :disabled="scope.row.fang"
  420. placeholder="请选择返利类型"
  421. @change="handelRebateList($event, scope.$index, scope.row)"
  422. @remove-tag="handleRemove2($event, scope.$index, scope.row)"
  423. >
  424. <el-option
  425. v-for="(item, index) in scope.row.rebateList"
  426. :key="item.index"
  427. :value="item.walletRebateId"
  428. :label="item.name"
  429. />
  430. </el-select>
  431. </el-form-item>
  432. </template>
  433. </el-table-column>
  434. <el-table-column align="center" label="生效日期" prop="startDate" min-width="160" show-overflow-tooltip>
  435. <template slot-scope="scope">
  436. <el-form-item>
  437. <el-date-picker
  438. v-model="scope.row.startDate"
  439. type="date"
  440. placeholder="请输入调价日期"
  441. value-format="yyyy-MM-dd"
  442. />
  443. </el-form-item>
  444. </template>
  445. </el-table-column>
  446. <el-table-column align="center" label="失效日期" prop="endDate" min-width="160" show-overflow-tooltip>
  447. <template slot-scope="scope">
  448. <el-form-item>
  449. <el-date-picker
  450. v-model="scope.row.endDate"
  451. type="date"
  452. placeholder="请输入调价日期"
  453. value-format="yyyy-MM-dd"
  454. />
  455. </el-form-item>
  456. </template>
  457. </el-table-column>
  458. <el-table-column align="center" label="是否促销价" prop="isPromote" min-width="160" show-overflow-tooltip>
  459. <template slot-scope="scope">
  460. <el-form-item>
  461. <el-select v-model="scope.row.isPromote" placeholder="请选择是否促销价">
  462. <el-option
  463. v-for="item in scope.row.isPromoteArr"
  464. :key="item.bool"
  465. :value="item.bool"
  466. :label="item.value"
  467. />
  468. </el-select>
  469. </el-form-item>
  470. </template>
  471. </el-table-column>
  472. <el-table-column align="center" label="数量" prop="qty" min-width="160" show-overflow-tooltip>
  473. <template slot-scope="scope">
  474. <el-form-item>
  475. <el-input size="mini" v-model="scope.row.qty" />
  476. </el-form-item>
  477. </template>
  478. </el-table-column>
  479. <el-table-column align="center" label="支付钱包类型" prop="wallets" min-width="160" show-overflow-tooltip>
  480. <template slot-scope="scope">
  481. <el-form-item>
  482. <el-select v-model="scope.row.isPublish" placeholder="请选择支付钱包类型">
  483. <el-option
  484. v-for="item in scope.row.rebateList"
  485. :key="item.walletRebateId"
  486. :value="item.walletRebateId"
  487. :label="item.name"
  488. />
  489. </el-select>
  490. </el-form-item>
  491. </template>
  492. </el-table-column>
  493. <el-table-column align="center" label="发布" prop="isPublish" min-width="160" show-overflow-tooltip>
  494. <template slot-scope="scope">
  495. <el-form-item>
  496. <el-select v-model="scope.row.isPublish" placeholder="请选择是否发布">
  497. <el-option
  498. v-for="item in scope.row.isPublishArr"
  499. :key="item.bool"
  500. :value="item.bool"
  501. :label="item.value"
  502. />
  503. </el-select>
  504. </el-form-item>
  505. </template>
  506. </el-table-column>
  507. </el-table>
  508. </el-form>
  509. <el-dialog title="提示" :visible.sync="centerDialogVisible" width="50%" center class="dia">
  510. <el-form ref="form" :model="form" label-width="80px" :inline="false" size="normal">
  511. <el-form-item label="产品类型">
  512. <el-select v-model="materialId" placeholder="请选择" width="100%">
  513. <el-option v-for="item in materialLis" :key="item.id" :label="item.name" :value="item.id" />
  514. </el-select>
  515. </el-form-item>
  516. </el-form>
  517. <span slot="footer" class="dialog-footer">
  518. <el-button @click="centerDialogVisible = false">取 消</el-button>
  519. <el-button type="primary" @click="hanleAdd">确 定</el-button>
  520. </span>
  521. </el-dialog>
  522. </div>
  523. <div class="btn-group clearfix">
  524. <template v-if="!cid">
  525. <el-button size="small" @click="handleReseat">重置</el-button>
  526. <el-button size="small" type="primary" @click="hanleSbumit">提交 </el-button>
  527. </template>
  528. <template v-else>
  529. <el-button size="small" type="primary" @click="hanleSave">保存 </el-button>
  530. </template>
  531. <el-button style="float: right" type="primary" size="small" @click="centerDialogVisible = true">添加 </el-button>
  532. </div>
  533. <el-dialog title="" append-to-body :visible.sync="centerDialogVisible" width="80%" center>
  534. <div>
  535. <el-form ref="screenForm" :model="screenForm" label-width="70px" size="small" label-position="left">
  536. <el-row :gutter="20">
  537. <el-col :xs="24" :sm="12" :lg="6">
  538. <el-form-item label="名称" prop="keyword">
  539. <el-input size="mini" v-model="screenForm.keyword" placeholder="请输入名称" />
  540. </el-form-item>
  541. </el-col>
  542. <el-col :xs="24" :sm="12" :lg="6">
  543. <el-form-item label="物料编码" prop="materialNumber">
  544. <el-input size="mini" v-model="screenForm.materialNumber" placeholder="请输入物料编码" />
  545. </el-form-item>
  546. </el-col>
  547. <el-col :xs="24" :sm="12" :lg="6">
  548. <el-form-item label="规格" prop="specification">
  549. <el-input size="mini" v-model="screenForm.specification" placeholder="请输入规格" />
  550. </el-form-item>
  551. </el-col>
  552. <el-col :xs="24" :sm="12" :lg="12" class="tr">
  553. <el-form-item label="">
  554. <el-button size="small" @click="resetScreenForm">清空 </el-button>
  555. <el-button size="small" type="primary" @click="submitScreenForm">搜索 </el-button>
  556. </el-form-item>
  557. </el-col>
  558. </el-row>
  559. </el-form>
  560. </div>
  561. <div class="mymain-container">
  562. <div class="table">
  563. <el-table
  564. ref="multipleTable"
  565. v-loading="listLoading"
  566. :data="dataList"
  567. element-loading-text="Loading"
  568. border
  569. fit
  570. highlight-current-row
  571. stripe
  572. @select-all="handleSelectionAllChange"
  573. @selection-change="handleSelectionChange"
  574. >
  575. <!-- :selectable="selectable"-->
  576. <el-table-column align="center" type="selection" width="55" />
  577. <el-table-column align="center" label="使用组织" prop="useOrgName" min-width="100" />
  578. <el-table-column
  579. align="center"
  580. label="物料编码"
  581. prop="number"
  582. min-width="100"
  583. label-class-name="bianma"
  584. class-name="fontstyle"
  585. />
  586. <el-table-column align="center" label="名称" prop="name" min-width="100" />
  587. <el-table-column align="center" label="规格型号" prop="specification" min-width="100" />
  588. <el-table-column align="center" label="数据状态" prop="forbidStatus" min-width="100">
  589. <template slot-scope="scope">
  590. <el-tag v-if="scope.row.forbidStatus == 'A'" type="success">正常 </el-tag>
  591. <el-tag v-else type="danger">禁用</el-tag>
  592. </template>
  593. </el-table-column>
  594. <el-table-column align="center" label="是否维护商城资料" prop="maintainData" min-width="100" />
  595. <el-table-column align="center" label="是否维护内外机档案" prop="maintainFiles" min-width="100" />
  596. <el-table-column align="center" label="基本单位" prop="baseUnitId" min-width="100" />
  597. <el-table-column align="center" label="已使用" prop="used" min-width="100" />
  598. </el-table>
  599. </div>
  600. <!-- 分页 -->
  601. <div class="fr">
  602. <el-pagination
  603. :current-page="currentPage"
  604. :page-sizes="[10]"
  605. :page-size="10"
  606. layout="total, sizes, prev, pager, next, jumper"
  607. :total="listTotal"
  608. @size-change="handleSizeChange"
  609. @current-change="handleCurrentChange"
  610. />
  611. </div>
  612. </div>
  613. <span slot="footer" class="dialog-footer">
  614. <el-button @click="centerDialogVisible = false">取 消</el-button>
  615. <el-button type="primary" @click="handleDetermine">确 定</el-button>
  616. </span>
  617. </el-dialog>
  618. </div>
  619. </template>
  620. <script>
  621. import {
  622. getMaterialList,
  623. getProductRriceAdd,
  624. getProductRriceDetail,
  625. getRebate,
  626. getTypeList,
  627. getUserList,
  628. getWalletList,
  629. handleEdit
  630. } from '@/api/basic_data/material'
  631. import { downloadFiles, handleImport } from '@/utils/util'
  632. import Mixin from '@/mixin/index'
  633. export default {
  634. mixins: [Mixin],
  635. props: ['cid', 'show'],
  636. data() {
  637. return {
  638. baseURL: '',
  639. importFileList: [],
  640. listLoading: false,
  641. importLoading: false,
  642. screenForm: {
  643. keyword: '',
  644. specification: '',
  645. materialNumber: ''
  646. },
  647. base: {
  648. adminCompanyId: '',
  649. adminWebsitId: '',
  650. billId: '',
  651. examineNote: '',
  652. examineResult: true,
  653. examineStatus: '',
  654. id: null,
  655. serviceId: '',
  656. serviceName: '',
  657. remark: '',
  658. saleTypeId: ''
  659. },
  660. items: [],
  661. materialLis: [],
  662. materialId: '',
  663. rebateList: [],
  664. typeList: [],
  665. saleTypeId: '',
  666. serviceId: '',
  667. adminCompanyId: '',
  668. serviceName: '',
  669. adminCompanyName: '',
  670. adminWebsitId: '',
  671. remark: '',
  672. detail: [],
  673. form: {},
  674. startDate: '',
  675. userList: [],
  676. centerDialogVisible: false,
  677. selectData: [],
  678. walleList: [],
  679. fang: true,
  680. wall1: [],
  681. wall2: []
  682. }
  683. },
  684. mounted() {},
  685. methods: {
  686. handleSale(e, index, saleTypes) {
  687. // console.log(this.rebateList);
  688. this.$set(this.items[index], 'rebateList', [])
  689. const linshi = []
  690. let saleArr = []
  691. const rebateList = []
  692. this.rebateList.forEach(k => {
  693. k.saleTypes.forEach(j => {
  694. if (!linshi.includes(j.saleTypeId) && j.saleTypeId == e) {
  695. rebateList.push(k)
  696. }
  697. })
  698. })
  699. saleArr = this.typeList.filter(i => {
  700. return e == i.id
  701. })
  702. console.log(rebateList, '4444', this.rebateList, e)
  703. // this.items[index].mainName = saleArr[0].mainName;
  704. this.items[index].saleTypeId = e
  705. this.items[index].fang = false
  706. this.items[index].saleTypeName = saleArr[0].saleName
  707. this.$set(this.items[index], 'rebateList', rebateList)
  708. // this.fang = false;
  709. },
  710. resArr(arr1, arr2) {
  711. return arr1.filter(v => arr2.every(val => val.id != v.id))
  712. },
  713. // xua
  714. handelWallets(e, index, row) {
  715. // const id = row.cid || row.updPriceBillId
  716. // // if (e && e.length) {
  717. // for (let i = 0; i < e.length; i++) {
  718. // // if (!this.wall1.includes(e[e.length - 1])) {
  719. // this.$set(row, 'wallets', [
  720. // ...row.wallets,
  721. // {
  722. // type: 'COMMONLY',REBATE
  723. // id: '',
  724. // updPriceBillId: id,
  725. // updPriceBillItemId: id,
  726. // walletId: e[e.length - 1]
  727. // }
  728. // ])
  729. // // this.wall1.push(e[e.length - 1])
  730. // }
  731. // // }
  732. // // }
  733. },
  734. handelRebateList(e, index, row) {
  735. // const id = row.cid || row.updPriceBillId
  736. // if (e && e.length) {
  737. // for (let i = 0; i < e.length; i++) {
  738. // if (!this.wall2.includes(e[e.length - 1])) {
  739. // console.log(44544)
  740. // this.$set(row, 'wallets', [
  741. // ...row.wallets,
  742. // {
  743. // type: 'REBATE',
  744. // id: '',
  745. // updPriceBillId: id,
  746. // updPriceBillItemId: id,
  747. // walletId: e[e.length - 1]
  748. // }
  749. // ])
  750. // this.wall2.push(e[e.length - 1])
  751. // }
  752. // }
  753. // }
  754. },
  755. handleRemove(e, index, row) {
  756. // const copxyWall = JSON.parse(JSON.stringify(row.wallets))
  757. // if (row.wallets[0].walletId === e) {
  758. // copxyWall.splice(0, 1)
  759. // }
  760. // for (let i = 0; i < row.wallets.length; i++) {
  761. // if (this.wall1.includes(e) && row.wallets[i].walletId === e) {
  762. // this.wall1.splice(i, 1)
  763. // copxyWall.splice(i, 1)
  764. // }
  765. // }
  766. // this.$set(row, 'wallets', copxyWall)
  767. },
  768. handleRemove2(e, index, row) {
  769. // const copxyWall = JSON.parse(JSON.stringify(row.wallets))
  770. // for (let i = 0; i < row.wallets.length; i++) {
  771. // if (this.wall2.includes(e) && row.wallets[i].walletId == e) {
  772. // copxyWall.splice(i, 1)
  773. // this.wall2.splice(i, 1)
  774. // }
  775. // }
  776. // this.$set(row, 'wallets', copxyWall)
  777. },
  778. handleUser(e) {
  779. const adminCompany = this.userList.filter(k => {
  780. return e == k.roleId
  781. })[0]
  782. this.adminWebsitId = adminCompany.adminUserId
  783. this.adminCompanyName = adminCompany.adminCompanyName
  784. this.serviceName = adminCompany.nickName || 'd'
  785. this.serviceId = adminCompany.roleId
  786. },
  787. goBack() {
  788. // this.$parent.cid = ''
  789. // this.show = 1
  790. // 更新父组件数据
  791. // this.getList()
  792. this.$emit('back')
  793. },
  794. indexMethod(index) {
  795. console.log(index)
  796. },
  797. hanleDeleInd(index, id, materialId) {
  798. if (id || materialId) {
  799. const dataArr = JSON.parse(JSON.stringify(this.dataList))
  800. for (let j = 0; j < dataArr.length; j++) {
  801. if ((id || materialId) === dataArr[j].id) {
  802. // dataArr[j].disabled = false
  803. console.log(747)
  804. this.$set(dataArr[j], 'disabled', false)
  805. }
  806. }
  807. this.dataList = dataArr
  808. }
  809. this.items.splice(index, 1)
  810. },
  811. handleDetermine() {
  812. if (this.selectData.length) {
  813. for (let i = 0; i < this.selectData.length; i++) {
  814. for (let j = 0; j < this.dataList.length; j++) {
  815. if (this.selectData[i].id == this.dataList[j].id) {
  816. this.dataList[j].disabled = true
  817. }
  818. }
  819. this.items.push({
  820. baseUnitId: '',
  821. batchPrice: '',
  822. unit: this.selectData[i].baseUnitId,
  823. billId: '',
  824. endDate: '',
  825. isPromote: '',
  826. isPublish: '',
  827. materialId: this.selectData[i].id,
  828. materialName: this.selectData[i].name,
  829. materialNumber: this.selectData[i].number,
  830. discAmount: '',
  831. saleTypes: this.selectData[i].saleTypes,
  832. materialOldNumber: this.selectData[i].oldNumber,
  833. parentId: '',
  834. walletRebateName: '',
  835. walletRebateId: [],
  836. rebateRate: '',
  837. qty: '',
  838. rebateUseRate: '',
  839. retailPrice: '' || 0,
  840. saleTypeId: '',
  841. specification: this.selectData[i].specification,
  842. startDate: this.selectData[i].startDate,
  843. wallets: [],
  844. rebateWallets: [],
  845. rebateList: [],
  846. walletsId: [this.selectData[i].wallets[0].id],
  847. walleList: this.selectData[i].wallets,
  848. isPublishArr: [
  849. {
  850. value: '是',
  851. bool: true
  852. },
  853. {
  854. value: '否',
  855. bool: false
  856. }
  857. ],
  858. isPromoteArr: [
  859. {
  860. value: '是',
  861. bool: true
  862. },
  863. {
  864. value: '否',
  865. bool: false
  866. }
  867. ],
  868. cid: this.selectData[i].id,
  869. fang: true
  870. })
  871. }
  872. this.selectData = []
  873. this.$refs.multipleTable.clearSelection()
  874. this.centerDialogVisible = false
  875. } else {
  876. this.$errorMsg('请选择内容')
  877. }
  878. },
  879. getMaterialList() {
  880. const params = {
  881. pageNum: 1,
  882. pageSize: 10,
  883. keyword: '',
  884. bindMain: true
  885. }
  886. getMaterialList(params).then(res => {
  887. this.materialLis = res.data.records
  888. })
  889. },
  890. handleSelectionAllChange(e) {
  891. this.selectData = e
  892. },
  893. handleSelectionChange(e) {
  894. this.selectData = e
  895. },
  896. hanleAdd() {
  897. if (this.materialId) {
  898. this.centerDialogVisible = false
  899. } else {
  900. this.$errorMsg('请选择产品')
  901. }
  902. },
  903. async getList() {
  904. const params1 = {
  905. pageNum: 1,
  906. pageSize: -1,
  907. saleCode: '',
  908. saleName: '',
  909. status: ''
  910. }
  911. getTypeList(params1).then(res => {
  912. this.typeList = res.data.records
  913. })
  914. getUserList({
  915. pageNum: 1,
  916. pageSize: -1,
  917. adminWebsitId: '',
  918. isCustomer: 0,
  919. roleId: '',
  920. status: '',
  921. userName: ''
  922. }).then(res => {
  923. this.userList = res.data.records
  924. })
  925. this.listLoading = true
  926. const params = {
  927. pageNum: this.currentPage,
  928. pageSize: 10 || this.pageSize,
  929. keyword: this.screenForm.keyword,
  930. specification: this.screenForm.specification,
  931. number: this.screenForm.materialNumber,
  932. bindMain: true
  933. }
  934. getMaterialList(params).then(res => {
  935. this.dataList = res.data.records
  936. this.listTotal = res.data.total
  937. this.listLoading = false
  938. })
  939. const rebateParams = {
  940. pageNum: 1,
  941. pageSize: -1,
  942. mainName: '',
  943. saleTypeCode: '',
  944. saleTypeName: '',
  945. status: ''
  946. }
  947. const ress = await getRebate(rebateParams)
  948. this.rebateList = ress.data.records
  949. const wall = await getWalletList({ mainId: '', walletName: '' })
  950. for (let u = 0; u < wall.data.length; u++) {
  951. wall.data[u].walletId = wall.data[u].id
  952. wall.data[u].walletName = wall.data[u].name
  953. }
  954. this.walleList = wall.data
  955. if (this.show === 5) {
  956. getProductRriceDetail({ id: this.cid }).then(res => {
  957. for (let i = 0; i < res.data.items.length; i++) {
  958. const linshi = []
  959. const rebateList = []
  960. const walletIds = []
  961. const walletRebateIds = []
  962. res.data.items[i].isPublishArr = [
  963. {
  964. value: '是',
  965. bool: true
  966. },
  967. {
  968. value: '否',
  969. bool: false
  970. }
  971. ]
  972. res.data.items[i].isPromoteArr = [
  973. {
  974. value: '是',
  975. bool: true
  976. },
  977. {
  978. value: '否',
  979. bool: false
  980. }
  981. ]
  982. res.data.items[i].wallets = []
  983. res.data.items[i].walletsId = []
  984. res.data.items[i].walletRebateId = []
  985. res.data.items[i].rebateWallets = []
  986. for (let p = 0; p < res.data.items[i].wallets2.length; p++) {
  987. if (res.data.items[i].wallets2[p].type === 'COMMONLY') {
  988. walletIds.push(res.data.items[i].wallets2[p].walletId)
  989. this.$set(res.data.items[i], 'wallets', [
  990. ...res.data.items[i].wallets,
  991. {
  992. type: 'COMMONLY',
  993. id: '',
  994. updPriceBillId: res.data.items[i].updPriceBillId,
  995. updPriceBillItemId: res.data.items[i].updPriceBillId,
  996. walletId: res.data.items[i].wallets2[p].walletId
  997. }
  998. ])
  999. } else if (res.data.items[i].wallets2[p].type === 'REBATE') {
  1000. walletRebateIds.push(res.data.items[i].wallets2[p].walletId)
  1001. this.$set(res.data.items[i], 'wallets', [
  1002. ...res.data.items[i].wallets,
  1003. {
  1004. type: 'REBATE',
  1005. id: '',
  1006. updPriceBillId: res.data.items[i].updPriceBillId,
  1007. updPriceBillItemId: res.data.items[i].updPriceBillId,
  1008. walletId: res.data.items[i].wallets2[p].walletId
  1009. }
  1010. ])
  1011. }
  1012. }
  1013. console.log(res.data.items[i].wallets)
  1014. this.rebateList.forEach(k => {
  1015. k.saleTypes.forEach(j => {
  1016. if (!linshi.includes(j.saleTypeId) && j.saleTypeId === res.data.items[i].saleTypeId) {
  1017. for (let w = 0; w < walletRebateIds.length; w++) {
  1018. if (walletRebateIds[w] !== k.walletRebateId) {
  1019. // walletRebateIds.splice(w, 1)
  1020. }
  1021. }
  1022. rebateList.push(k)
  1023. }
  1024. })
  1025. })
  1026. if (this.dataList.length) {
  1027. for (let j = 0; j < res.data.items.length; j++) {
  1028. for (let k = 0; k < this.dataList.length; k++) {
  1029. if (res.data.items[j].materialId === this.dataList[k].id) {
  1030. this.dataList[k].disabled = true
  1031. }
  1032. }
  1033. }
  1034. // console.log(this.dataList)
  1035. }
  1036. this.$set(res.data.items[i], 'walletsId', walletIds)
  1037. this.$set(res.data.items[i], 'walletRebateId', walletRebateIds)
  1038. res.data.items[i].walleList = this.walleList
  1039. res.data.items[i].rebateList = rebateList
  1040. res.data.items[i].fang = false
  1041. }
  1042. this.items = res.data.items
  1043. this.base = res.data
  1044. this.listLoading = false
  1045. })
  1046. } else {
  1047. }
  1048. },
  1049. /**
  1050. * 根据条件禁用行复选框
  1051. * 函数返回值为false则禁用选择(反之亦然)
  1052. * @param {Object} row - 行数据
  1053. * @param {String} index - 索引值
  1054. * @return Boolean
  1055. */
  1056. // selectable: function(row, index) {
  1057. // // row.disabled == undefined 才能被选中
  1058. // if (row.disabled == undefined || row.disabled == false) {
  1059. // return true
  1060. // } else {
  1061. // return false
  1062. // }
  1063. // // 函数必须有返回值且是布尔值
  1064. // // 页面刷新后该函数会执行 N 次进行判断(N 为表格行数)
  1065. // // 如果没有返回值则默认返回false(全部无法选中)
  1066. // },
  1067. hanleSbumit() {
  1068. this.filterWallets(this.items)
  1069. // return
  1070. const params = {
  1071. ...this.base,
  1072. items: this.items,
  1073. saleTypeId: this.saleTypeId,
  1074. adminWebsitId: this.adminWebsitId,
  1075. serviceId: this.serviceId,
  1076. adminCompanyName: this.adminCompanyName,
  1077. serviceName: this.nickName,
  1078. billType: 'HOME'
  1079. }
  1080. getProductRriceAdd(params)
  1081. .then(res => {
  1082. // console.log(res.code, 'klkk')
  1083. this.$successMsg('成功')
  1084. // this.$parent.show = 1
  1085. // this.$parent.getList()
  1086. this.goBack()
  1087. })
  1088. .catch(err => {
  1089. // console.log(err)
  1090. for (let j = 0; j < this.items.length; j++) {
  1091. this.$set(this.items[j], 'wallets', [])
  1092. }
  1093. })
  1094. },
  1095. hanleSave() {
  1096. this.filterWallets(this.items)
  1097. handleEdit({
  1098. ...this.base,
  1099. items: this.items,
  1100. saleTypeId: this.saleTypeId,
  1101. adminWebsitId: this.adminWebsitId,
  1102. serviceId: this.serviceId,
  1103. adminCompanyName: this.adminCompanyName,
  1104. serviceName: this.nickName,
  1105. billType: 'HOME'
  1106. })
  1107. .then(res => {
  1108. this.$successMsg('成功')
  1109. // this.$parent.cid = ''
  1110. // this.$parent.show = 1
  1111. // this.$parent.getList()
  1112. this.goBack()
  1113. })
  1114. .catch(err => {
  1115. for (let j = 0; j < this.items.length; j++) {
  1116. this.$set(this.items[j], 'wallets', [])
  1117. }
  1118. })
  1119. },
  1120. handleReseat() {
  1121. this.base = {
  1122. adminCompanyId: '',
  1123. adminWebsitId: '',
  1124. billId: '',
  1125. examineNote: '',
  1126. examineResult: true,
  1127. examineStatus: '',
  1128. id: null,
  1129. serviceId: '',
  1130. serviceName: '',
  1131. remark: '',
  1132. saleTypeId: ''
  1133. }
  1134. this.saleTypeId = ''
  1135. this.items = []
  1136. },
  1137. // 导入
  1138. async handleImport(param) {
  1139. this.importLoading = true
  1140. const file = param.file
  1141. const formData = new FormData()
  1142. formData.append('file', file)
  1143. const result = await handleImport('/product-upd-price/material/import', formData)
  1144. this.importLoading = false
  1145. this.importFileList = []
  1146. if (result.code === 200) {
  1147. this.$alert(result.message, '导入成功', {
  1148. confirmButtonText: '确定'
  1149. })
  1150. for (let i = 0; i < result.data.length; i++) {
  1151. const linshi = []
  1152. const rebateList = []
  1153. const walletIds = []
  1154. const walletRebateIds = []
  1155. // result.data[i].id = result.data[i].materialId
  1156. result.data[i].isPublishArr = [
  1157. {
  1158. value: '是',
  1159. bool: true
  1160. },
  1161. {
  1162. value: '否',
  1163. bool: false
  1164. }
  1165. ]
  1166. result.data[i].isPromoteArr = [
  1167. {
  1168. value: '是',
  1169. bool: true
  1170. },
  1171. {
  1172. value: '否',
  1173. bool: false
  1174. }
  1175. ]
  1176. result.data[i].wallets = []
  1177. result.data[i].walletsId = []
  1178. result.data[i].walletRebateId = []
  1179. result.data[i].rebateWallets = []
  1180. result.data[i].saleTypes = this.typeList
  1181. result.data[i].mainId = result.data[i].saleTypeId
  1182. for (let p = 0; p < result.data[i].wallets2.length; p++) {
  1183. if (result.data[i].wallets2[p].type === 'COMMONLY') {
  1184. walletIds.push(result.data[i].wallets2[p].walletId)
  1185. this.$set(result.data[i], 'wallets', [
  1186. ...result.data[i].wallets,
  1187. {
  1188. type: 'COMMONLY',
  1189. id: '',
  1190. updPriceBillId: result.data[i].updPriceBillId,
  1191. updPriceBillItemId: result.data[i].updPriceBillId,
  1192. walletId: result.data[i].wallets2[p].walletId
  1193. }
  1194. ])
  1195. } else if (result.data[i].wallets2[p].type === 'REBATE') {
  1196. walletRebateIds.push(result.data[i].wallets2[p].walletId)
  1197. this.$set(result.data[i], 'wallets', [
  1198. ...result.data[i].wallets,
  1199. {
  1200. type: 'REBATE',
  1201. id: '',
  1202. updPriceBillId: result.data[i].updPriceBillId,
  1203. updPriceBillItemId: result.data[i].updPriceBillId,
  1204. walletId: result.data[i].wallets2[p].walletId
  1205. }
  1206. ])
  1207. }
  1208. }
  1209. this.rebateList.forEach(k => {
  1210. k.saleTypes.forEach(j => {
  1211. if (!linshi.includes(j.saleTypeId) && j.saleTypeId === result.data[i].saleTypeId) {
  1212. for (let w = 0; w < walletRebateIds.length; w++) {
  1213. if (walletRebateIds[w] !== k.walletRebateId) {
  1214. // walletRebateIds.splice(w, 1)
  1215. }
  1216. }
  1217. rebateList.push(k)
  1218. }
  1219. })
  1220. })
  1221. this.$set(result.data[i], 'walletsId', walletIds)
  1222. this.$set(result.data[i], 'walletRebateId', walletRebateIds)
  1223. result.data[i].walleList = this.walleList
  1224. result.data[i].rebateList = rebateList
  1225. result.data[i].fang = false
  1226. }
  1227. // if (this.dataList.length) {
  1228. // for (let j = 0; j < result.data.length; j++) {
  1229. // for (let k = 0; k < this.dataList.length; k++) {
  1230. // if (result.data[j].materialId === this.dataList[k].id) {
  1231. // this.dataList[k].disabled = true
  1232. // }
  1233. // }
  1234. // }
  1235. // }
  1236. // this.items = [...this.items,...result.data]
  1237. // let newArr = [];
  1238. // let obj = {};
  1239. // for (var i = 0; i < this.items.length; i++) {
  1240. // if (!obj[this.items[i].materialId]) {
  1241. // newArr.push(this.items[i])
  1242. // obj[this.items[i].materialId] = true
  1243. // }
  1244. // }
  1245. // console.log(newArr,454 ,obj)
  1246. this.items = [...this.items, ...result.data]
  1247. // console.log(resArrs(result.data,this.dataList),'55555')
  1248. } else {
  1249. this.$alert(result.message, '导入失败', {
  1250. confirmButtonText: '确定'
  1251. })
  1252. }
  1253. },
  1254. // 下载经销商模板
  1255. hanleDownloadFiles() {
  1256. downloadFiles('product-upd-price/download')
  1257. },
  1258. filterWallets(array) {
  1259. for (let i = 0; i < array.length; i++) {
  1260. const wallets = []
  1261. if (array[i].walletsId.length) {
  1262. for (let j = 0; j < array[i].walleList.length; j++) {
  1263. for (let k = 0; k < array[i].walletsId.length; k++) {
  1264. if (array[i].walleList[j].id === array[i].walletsId[k]) {
  1265. wallets.push({
  1266. type: 'COMMONLY',
  1267. id: '',
  1268. updPriceBillId: array[i].cid || array[i].updPriceBillId,
  1269. updPriceBillItemId: array[i].cid || array[i].updPriceBillId,
  1270. walletId: array[i].walletsId[k]
  1271. })
  1272. }
  1273. }
  1274. }
  1275. array[i].wallets = wallets
  1276. }
  1277. if (array[i].walletRebateId.length) {
  1278. for (let k = 0; k < array[i].rebateList.length; k++) {
  1279. if (!array[i].walletRebateId.length) return
  1280. for (let j = 0; j < array[i].walletRebateId.length; j++) {
  1281. if (array[i].rebateList[k].walletRebateId === array[i].walletRebateId[j]) {
  1282. wallets.push({
  1283. type: 'REBATE',
  1284. id: '',
  1285. updPriceBillId: array[i].cid || array[i].updPriceBillId,
  1286. updPriceBillItemId: array[i].cid || array[i].updPriceBillId,
  1287. walletId: array[i].walletRebateId[j]
  1288. })
  1289. }
  1290. }
  1291. array[i].wallets = wallets
  1292. }
  1293. }
  1294. }
  1295. }
  1296. }
  1297. }
  1298. </script>
  1299. <style lang="scss" scoped>
  1300. ::v-deep .el-date-editor--date {
  1301. width: 100%;
  1302. }
  1303. .dia .el-select--normal {
  1304. width: 100%;
  1305. }
  1306. .clearfixs {
  1307. display: flex;
  1308. }
  1309. .import-btn {
  1310. margin-right: 10px;
  1311. }
  1312. </style>