columns.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616
  1. const validate_budget_price = (rule, value, callback) => {
  2. if (value === "") {
  3. callback(new Error("预算单价不能为空!"));
  4. } else if (
  5. value === "0" ||
  6. value === "0." ||
  7. value === "0.0" ||
  8. value === "0.00"
  9. ) {
  10. callback(new Error("预算单价不能为零!"));
  11. } else {
  12. callback();
  13. }
  14. };
  15. const validate_num = (rule, value, callback) => {
  16. if (value === "") {
  17. callback(new Error("购买数量不能为空!"));
  18. } else if (
  19. value === "0") {
  20. callback(new Error("购买数量不能为零!"));
  21. } else {
  22. callback();
  23. }
  24. };
  25. const validate_total_weight = (rule, value, callback) => {
  26. const { required } = rule
  27. if (required && value === "") {
  28. callback(new Error("商品重量不能为空!"));
  29. } else if (required && (
  30. value === "0" ||
  31. value === "0." ||
  32. value === "0.0" ||
  33. value === "0.00" ||
  34. value === "0.000"
  35. )) {
  36. callback(new Error("商品重量不能为零!"));
  37. } else {
  38. callback();
  39. }
  40. };
  41. const validate_specs_weight = (rule, value, callback) => {
  42. const { required } = rule
  43. if (required && value === "") {
  44. callback(new Error("金属克重不能为空!"));
  45. } else if (required && (
  46. value === "0" ||
  47. value === "0." ||
  48. value === "0.0" ||
  49. value === "0.00" ||
  50. value === "0.000")) {
  51. callback(new Error("金属克重不能为零!"));
  52. } else {
  53. callback();
  54. }
  55. };
  56. const rules = {
  57. arrival_time: [
  58. {
  59. required: true,
  60. message: "到货时间不能为空",
  61. trigger: "change",
  62. },
  63. ],
  64. budget_price: [
  65. {
  66. required: true,
  67. validator: validate_budget_price,
  68. trigger: "change",
  69. },
  70. ],
  71. num: [
  72. {
  73. required: true,
  74. validator: validate_num,
  75. trigger: "change",
  76. },
  77. ],
  78. brand_id: [
  79. {
  80. type: "array",
  81. required: true,
  82. message: "请选择品牌",
  83. trigger: "change",
  84. },
  85. ],
  86. unit: [
  87. {
  88. type: "array",
  89. required: true,
  90. message: "请选择单位",
  91. trigger: "change",
  92. },
  93. ],
  94. cat_id: [
  95. {
  96. type: "array",
  97. required: true,
  98. message: "请选择商品分类",
  99. trigger: "change",
  100. },
  101. ],
  102. good_img: [
  103. {
  104. required: true,
  105. message: "商品图片不能为空",
  106. trigger: "change",
  107. },
  108. ],
  109. good_name: [
  110. { required: true, message: "商品名称不能为空", trigger: "blur" },
  111. ],
  112. model: [
  113. {
  114. required: true,
  115. message: "型号不能为空",
  116. trigger: "blur",
  117. },
  118. ],
  119. color: [
  120. {
  121. required: true,
  122. message: "颜色不能为空",
  123. trigger: "blur",
  124. },
  125. ],
  126. material: [
  127. {
  128. required: true,
  129. message: "材质不能为空",
  130. trigger: "blur",
  131. },
  132. ],
  133. total_weight: [
  134. {
  135. required: false,
  136. validator: validate_total_weight,
  137. trigger: "blur",
  138. },
  139. ],
  140. is_addrs: [
  141. {
  142. required: true,
  143. message: "请选择是否多地",
  144. trigger: "change",
  145. },
  146. ],
  147. is_custom: [
  148. {
  149. required: true,
  150. message: "请选择是否定制",
  151. trigger: "change",
  152. },
  153. ],
  154. is_gold_price: [
  155. {
  156. required: true,
  157. message: "请选择是否启用实时金价",
  158. trigger: "change",
  159. },
  160. ],
  161. config: [
  162. {
  163. required: true,
  164. type: "array",
  165. message: "至少选择一个配置",
  166. trigger: "change",
  167. },
  168. ],
  169. specs_weight: [
  170. {
  171. required: true,
  172. validator: validate_specs_weight,
  173. trigger: "blur",
  174. },
  175. ],
  176. other_config: [
  177. {
  178. required: true,
  179. message: "其他要求不能为空",
  180. trigger: "blur",
  181. },
  182. ],
  183. cost_desc: [
  184. {
  185. required: false,
  186. message: "工艺说明不能为空",
  187. trigger: "blur",
  188. },
  189. ],
  190. use_desc: [
  191. {
  192. required: true,
  193. message: "产品用途不能为空",
  194. trigger: "blur",
  195. },
  196. ],
  197. remark: [
  198. {
  199. required: true,
  200. message: "商品备注不能为空",
  201. trigger: "blur",
  202. },
  203. ],
  204. metal_id: [
  205. {
  206. required: true,
  207. message: "贵金属种类不能为空",
  208. trigger: "blur",
  209. },
  210. ],
  211. gold_price: [
  212. {
  213. required: true,
  214. message: "当前金价不能为空",
  215. trigger: "blur",
  216. },
  217. ],
  218. enclosure_file: [
  219. {
  220. required: false,
  221. message: "请上传附件",
  222. trigger: "change",
  223. },
  224. ],
  225. };
  226. const edutRules = {
  227. companyNo: [
  228. {
  229. required: true,
  230. message: "请选择销售方公司",
  231. trigger: "change",
  232. },
  233. ],
  234. khNo: [
  235. {
  236. type: "array",
  237. required: true,
  238. message: "请选择购买方公司",
  239. trigger: "change",
  240. },
  241. ],
  242. platform_code: [
  243. {
  244. // type: "array",
  245. required: true,
  246. message: "请选择所属平台",
  247. trigger: "change",
  248. },
  249. ],
  250. endtime: [
  251. {
  252. required: true,
  253. message: "竞价截止时间不能为空",
  254. trigger: "change",
  255. },
  256. ],
  257. is_project: [
  258. {
  259. required: true,
  260. message: "请选择竞价类型!",
  261. trigger: "change",
  262. },
  263. ],
  264. projectNo: [
  265. {
  266. type: "array",
  267. required: true,
  268. message: "请选择项目",
  269. trigger: "change",
  270. },
  271. ],
  272. arrival_time: [
  273. {
  274. required: true,
  275. message: "到货时间不能为空",
  276. trigger: "change",
  277. },
  278. ],
  279. budget_price: [
  280. {
  281. required: true,
  282. validator: validate_budget_price,
  283. trigger: "change",
  284. },
  285. ],
  286. num: [
  287. {
  288. required: true,
  289. validator: validate_num,
  290. trigger: "change",
  291. },
  292. ],
  293. brand_id: [
  294. {
  295. type: "array",
  296. required: true,
  297. message: "请选择品牌",
  298. trigger: "change",
  299. },
  300. ],
  301. unit: [
  302. {
  303. type: "array",
  304. required: true,
  305. message: "请选择单位",
  306. trigger: "change",
  307. },
  308. ],
  309. cat_id: [
  310. {
  311. type: "array",
  312. required: true,
  313. message: "请选择商品分类",
  314. trigger: "change",
  315. },
  316. ],
  317. good_img: [
  318. {
  319. required: true,
  320. message: "商品图片不能为空",
  321. trigger: "change",
  322. },
  323. ],
  324. good_name: [
  325. { required: true, message: "商品名称不能为空", trigger: "blur" },
  326. ],
  327. model: [
  328. {
  329. required: true,
  330. message: "型号不能为空",
  331. trigger: "blur",
  332. },
  333. ],
  334. color: [
  335. {
  336. required: true,
  337. message: "颜色不能为空",
  338. trigger: "blur",
  339. },
  340. ],
  341. material: [
  342. {
  343. required: true,
  344. message: "材质不能为空",
  345. trigger: "blur",
  346. },
  347. ],
  348. total_weight: [
  349. {
  350. required: true,
  351. validator: validate_total_weight,
  352. trigger: "blur",
  353. },
  354. ],
  355. is_addrs: [
  356. {
  357. required: true,
  358. message: "请选择是否多地",
  359. trigger: "change",
  360. },
  361. ],
  362. is_custom: [
  363. {
  364. required: true,
  365. message: "请选择是否定制",
  366. trigger: "change",
  367. },
  368. ],
  369. is_gold_price: [
  370. {
  371. required: true,
  372. message: "请选择是否启用实时金价",
  373. trigger: "change",
  374. },
  375. ],
  376. config: [
  377. {
  378. required: true,
  379. type: "array",
  380. message: "至少选择一个配置",
  381. trigger: "change",
  382. },
  383. ],
  384. specs_weight: [
  385. {
  386. required: true,
  387. validator: validate_specs_weight,
  388. trigger: "blur",
  389. },
  390. ],
  391. other_config: [
  392. {
  393. required: true,
  394. message: "其他要求不能为空",
  395. trigger: "blur",
  396. },
  397. ],
  398. cost_desc: [
  399. {
  400. required: false,
  401. message: "工艺说明不能为空",
  402. trigger: "blur",
  403. },
  404. ],
  405. use_desc: [
  406. {
  407. required: true,
  408. message: "产品用途不能为空",
  409. trigger: "blur",
  410. },
  411. ],
  412. remark: [
  413. {
  414. required: true,
  415. message: "商品备注不能为空",
  416. trigger: "blur",
  417. },
  418. ],
  419. metal_id: [
  420. {
  421. required: true,
  422. message: "贵金属种类不能为空",
  423. trigger: "blur",
  424. },
  425. ],
  426. gold_price: [
  427. {
  428. required: true,
  429. message: "当前金价不能为空",
  430. trigger: "blur",
  431. },
  432. ],
  433. };
  434. const feedbackListCol = [
  435. {
  436. prop: "bidNo",
  437. label: "反馈商品编号",
  438. width: "160"
  439. },
  440. {
  441. prop: " origin_price",
  442. label: "议价前销售单价",
  443. "width": "110"
  444. },
  445. {
  446. prop: "sale_price",
  447. label: "议价后销售单价",
  448. "width": "110"
  449. },
  450. {
  451. prop: "cost_fee",
  452. label: "议价前工艺费",
  453. "width": "110"
  454. },
  455. {
  456. prop: "sale_cost_fee",
  457. label: "议价后工艺费",
  458. "width": "110"
  459. },
  460. // {
  461. // prop: "good_img",
  462. // label: "图片",
  463. // _slot_: "good_img",
  464. // "width": "50"
  465. // },
  466. {
  467. prop: "good_name",
  468. label: "商品名称",
  469. "min-width": "100"
  470. },
  471. {
  472. prop: "specinfo",
  473. label: "型号",
  474. _slot_: "specinfo",
  475. "min-width": "100"
  476. },
  477. {
  478. prop: "status",
  479. label: "状态",
  480. _slot_: "status",
  481. width: "120px",
  482. },
  483. {
  484. prop: "expire_day",
  485. label: "信息有效期",
  486. "width": "85"
  487. },
  488. // {
  489. // prop: "origin_addr",
  490. // label: "产地",
  491. // "width": "135"
  492. // },
  493. {
  494. prop: "delivery_place_cn",
  495. label: "发货地",
  496. "width": "135"
  497. },
  498. {
  499. prop: "delivery_day",
  500. label: "物流时间",
  501. "width": "85"
  502. },
  503. {
  504. prop: "work_day",
  505. label: "生产工期",
  506. "width": "85"
  507. },
  508. {
  509. prop: "creater",
  510. label: "负责人",
  511. "width": "60"
  512. },
  513. {
  514. prop: "addtime",
  515. label: "添加时间",
  516. width: 142,
  517. },
  518. {
  519. prop: "",
  520. label: "操作",
  521. fixed: "right",
  522. _noset_: true,
  523. _slot_: "operation",
  524. width: 155,
  525. },
  526. ]
  527. const listCol = [
  528. {
  529. prop: "infoNo",
  530. label: "竞价编号",
  531. width: "160"
  532. },
  533. {
  534. prop: "good_img",
  535. label: "图片",
  536. _slot_: "good_img",
  537. "width": "50"
  538. },
  539. {
  540. prop: "good_name",
  541. label: "商品名称",
  542. "min-width": "120"
  543. },
  544. {
  545. prop: "status",
  546. label: "状态",
  547. _slot_: "status",
  548. width: "120px",
  549. },
  550. {
  551. prop: "is_project",
  552. label: "竞价单类型",
  553. _slot_: "is_project",
  554. width: "110px",
  555. },
  556. {
  557. prop: "khNo",
  558. label: "客户编号",
  559. "width": "160"
  560. },
  561. {
  562. prop: "khname",
  563. label: "客户名称",
  564. "min-width": "135"
  565. },
  566. {
  567. prop: "budget_price",
  568. label: "预算单价",
  569. width: 110,
  570. },
  571. {
  572. prop: "num",
  573. label: "竞价数量",
  574. width: 110,
  575. },
  576. {
  577. prop: "company_name",
  578. label: "申请人部门",
  579. minWidth: "150px",
  580. },
  581. {
  582. prop: "creater",
  583. label: "申请人",
  584. width: "60"
  585. },
  586. {
  587. prop: "addtime",
  588. label: "添加时间",
  589. width: 142,
  590. },
  591. {
  592. prop: "",
  593. label: "操作",
  594. fixed: "right",
  595. _noset_: true,
  596. _slot_: "operation",
  597. width: 50,
  598. },
  599. ]
  600. export { listCol, rules, edutRules, feedbackListCol }