initColumn.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. import { Columns, TabColumns } from "../add/column";
  2. import { initColumns, initParams } from "@/utils/init";
  3. import deepCopy from "@gby/deep-copy";
  4. // import {deepCopy} from "../dist/deep-copy.es"
  5. export const editColumns = initColumns(Columns);
  6. export const editTabColumns = TabColumns.map((element) => ({
  7. ...element,
  8. tableColumns: initColumns(element.tableColumns),
  9. }));
  10. export const SelectColumns = editColumns.filter(column => column.inputType === 'Select')
  11. editTabColumns.forEach(column => {
  12. SelectColumns.push(...column.tableColumns.filter(cColumn => cColumn.inputType === 'Select'))
  13. });
  14. // 禁用项
  15. export const forbidden = (isEdit) => {
  16. let updateColumns = deepCopy(editColumns);
  17. let updateTabColumns = deepCopy(editTabColumns);
  18. console.log(isEdit, 'isEdit');
  19. if(!isEdit){
  20. console.log('修订');
  21. // 修订
  22. updateColumns.forEach(item => {
  23. if (item.key == 'buyerName' || item.key == 'puDeptName' || item.key == 'deductionMoney' ||
  24. item.key == 'supplierContactsName' || item.key == 'agentName' || item.key == 'isInvoice' ||
  25. item.key == 'rebateMoney') {
  26. item.disabled = false;
  27. item.readonly = false;
  28. } else {
  29. item.disabled = true;
  30. item.readonly = true;
  31. }
  32. })
  33. updateTabColumns.forEach(item => {
  34. item.tableColumns.forEach(t => {
  35. if (t.key == 'unit' || t.key == 'qty' ||
  36. t.key == 'place' || t.key == 'arrivalDatePlan' || t.key == 'storageCondition' ||
  37. t.key == 'carriageCondition' || t.key == 'customerName' || t.key == 'isBatchLock' ||
  38. t.key == 'isReplenishment' || t.key == 'originalQty' || t.key == 'originalMoney'
  39. ) {
  40. t.disabled = false;
  41. t.readonly = false;
  42. } else {
  43. t.disabled = true;
  44. t.readonly = true;
  45. }
  46. })
  47. })
  48. }
  49. return { updateColumns, updateTabColumns }
  50. }