@axelor/aos-mobile-manufacturing 7.1.3 → 7.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/lib/api/prod-product-api.d.ts +3 -0
  2. package/lib/api/prod-product-api.js +8 -1
  3. package/lib/api/prod-product-api.js.map +1 -1
  4. package/lib/components/molecules/ManufacturingOrderDatesCard/ManufacturingOrderDatesCard.d.ts +3 -0
  5. package/lib/components/molecules/ManufacturingOrderDatesCard/ManufacturingOrderDatesCard.js +39 -0
  6. package/lib/components/molecules/ManufacturingOrderDatesCard/ManufacturingOrderDatesCard.js.map +1 -0
  7. package/lib/components/molecules/index.d.ts +1 -0
  8. package/lib/components/molecules/index.js +1 -0
  9. package/lib/components/molecules/index.js.map +1 -1
  10. package/lib/components/organisms/ConsumedProductCard/ConsumedProductCard.js +49 -52
  11. package/lib/components/organisms/ConsumedProductCard/ConsumedProductCard.js.map +1 -1
  12. package/lib/components/organisms/LinkedManufacturingOrderCard/LinkedManufacturingOrderCard.js +9 -19
  13. package/lib/components/organisms/LinkedManufacturingOrderCard/LinkedManufacturingOrderCard.js.map +1 -1
  14. package/lib/components/organisms/ManufacturingOrderButtons/ManufacturingOrderButtons.d.ts +2 -0
  15. package/lib/components/organisms/{ManufacturingOrderIconButtonList/ManufacturingOrderIconButtonList.js → ManufacturingOrderButtons/ManufacturingOrderButtons.js} +8 -8
  16. package/lib/components/organisms/ManufacturingOrderButtons/ManufacturingOrderButtons.js.map +1 -0
  17. package/lib/components/organisms/ManufacturingOrderCard/ManufacturingOrderCard.d.ts +5 -1
  18. package/lib/components/organisms/ManufacturingOrderCard/ManufacturingOrderCard.js +43 -52
  19. package/lib/components/organisms/ManufacturingOrderCard/ManufacturingOrderCard.js.map +1 -1
  20. package/lib/components/organisms/OperationOrderCard/OperationOrderCard.js +22 -37
  21. package/lib/components/organisms/OperationOrderCard/OperationOrderCard.js.map +1 -1
  22. package/lib/components/organisms/OperationOrderDetailsCard/OperationOrderDetailsCard.js +37 -44
  23. package/lib/components/organisms/OperationOrderDetailsCard/OperationOrderDetailsCard.js.map +1 -1
  24. package/lib/components/organisms/OperationOrderLabelTextList/OperationOrderLabelTextList.d.ts +3 -1
  25. package/lib/components/organisms/OperationOrderLabelTextList/OperationOrderLabelTextList.js +3 -1
  26. package/lib/components/organisms/OperationOrderLabelTextList/OperationOrderLabelTextList.js.map +1 -1
  27. package/lib/components/organisms/ProducedProductCard/ProducedProductCard.js +22 -27
  28. package/lib/components/organisms/ProducedProductCard/ProducedProductCard.js.map +1 -1
  29. package/lib/components/organisms/WasteProductCard/WasteProductCard.js +11 -23
  30. package/lib/components/organisms/WasteProductCard/WasteProductCard.js.map +1 -1
  31. package/lib/components/organisms/index.d.ts +1 -1
  32. package/lib/components/organisms/index.js +1 -1
  33. package/lib/components/organisms/index.js.map +1 -1
  34. package/lib/features/asyncFunctions-index.d.ts +1 -1
  35. package/lib/features/asyncFunctions-index.js +1 -1
  36. package/lib/features/asyncFunctions-index.js.map +1 -1
  37. package/lib/features/prodProductSlice.d.ts +36 -0
  38. package/lib/features/prodProductSlice.js +56 -2
  39. package/lib/features/prodProductSlice.js.map +1 -1
  40. package/lib/i18n/en.json +10 -5
  41. package/lib/i18n/fr.json +6 -1
  42. package/lib/models/objectFields.js +10 -1
  43. package/lib/models/objectFields.js.map +1 -1
  44. package/lib/screens/manufactoringOrder/ManufacturingOrderDetailsScreen.js +17 -7
  45. package/lib/screens/manufactoringOrder/ManufacturingOrderDetailsScreen.js.map +1 -1
  46. package/lib/screens/manufactoringOrder/ManufacturingOrderListSaleOrderScreen.js +7 -5
  47. package/lib/screens/manufactoringOrder/ManufacturingOrderListSaleOrderScreen.js.map +1 -1
  48. package/lib/screens/manufactoringOrder/ManufacturingOrderListScreen.js +1 -1
  49. package/lib/screens/manufactoringOrder/ManufacturingOrderListScreen.js.map +1 -1
  50. package/lib/screens/manufactoringOrder/consumedProduct/ChildrenManufOrderListScreen.js +1 -1
  51. package/lib/screens/manufactoringOrder/consumedProduct/ChildrenManufOrderListScreen.js.map +1 -1
  52. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductDetailsScreen.js +41 -29
  53. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductDetailsScreen.js.map +1 -1
  54. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductListScreen.js +2 -2
  55. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductListScreen.js.map +1 -1
  56. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductSelectProductScreen.js +1 -1
  57. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductSelectProductScreen.js.map +1 -1
  58. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductSelectTrackingScreen.js +1 -1
  59. package/lib/screens/manufactoringOrder/consumedProduct/ConsumedProductSelectTrackingScreen.js.map +1 -1
  60. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductDetailsScreen.js +35 -24
  61. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductDetailsScreen.js.map +1 -1
  62. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductListScreen.js +2 -2
  63. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductListScreen.js.map +1 -1
  64. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductSelectProductScreen.js +1 -1
  65. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductSelectProductScreen.js.map +1 -1
  66. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductSelectTrackingScreen.js +1 -1
  67. package/lib/screens/manufactoringOrder/producedProduct/ProducedProductSelectTrackingScreen.js.map +1 -1
  68. package/lib/screens/manufactoringOrder/wasteProduct/WasteProductDetailsScreen.js +34 -18
  69. package/lib/screens/manufactoringOrder/wasteProduct/WasteProductDetailsScreen.js.map +1 -1
  70. package/lib/screens/manufactoringOrder/wasteProduct/WasteProductListScreen.js +9 -4
  71. package/lib/screens/manufactoringOrder/wasteProduct/WasteProductListScreen.js.map +1 -1
  72. package/lib/screens/manufactoringOrder/wasteProduct/WasteProductSelectProductScreen.js +1 -1
  73. package/lib/screens/manufactoringOrder/wasteProduct/WasteProductSelectProductScreen.js.map +1 -1
  74. package/lib/screens/operationOrder/OperationOrderDetailsScreen.js +9 -12
  75. package/lib/screens/operationOrder/OperationOrderDetailsScreen.js.map +1 -1
  76. package/lib/screens/operationOrder/OperationOrderPlanningScreen.js +14 -34
  77. package/lib/screens/operationOrder/OperationOrderPlanningScreen.js.map +1 -1
  78. package/lib/types/manufacturing-order.d.ts +4 -0
  79. package/lib/types/manufacturing-order.js +49 -0
  80. package/lib/types/manufacturing-order.js.map +1 -1
  81. package/package.json +4 -4
  82. package/lib/components/organisms/ManufacturingOrderIconButtonList/ManufacturingOrderIconButtonList.d.ts +0 -2
  83. package/lib/components/organisms/ManufacturingOrderIconButtonList/ManufacturingOrderIconButtonList.js.map +0 -1
@@ -6,6 +6,9 @@ export function fetchManufacturingOrderProducedProducts({ manufOrderId, manufOrd
6
6
  manufOrderId: any;
7
7
  manufOrderVersion: any;
8
8
  }): Promise<any>;
9
+ export function searchProdProductWithId({ productId }: {
10
+ productId: any;
11
+ }): Promise<any>;
9
12
  export function createProdProduct({ manufOrderId, manufOrderVersion, productId, trackingNumberId, qty, productType, }: {
10
13
  manufOrderId: any;
11
14
  manufOrderVersion: any;
@@ -15,7 +15,7 @@
15
15
  * You should have received a copy of the GNU Affero General Public License
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
- import { axiosApiProvider } from '@axelor/aos-mobile-core';
18
+ import { axiosApiProvider, createStandardFetch } from '@axelor/aos-mobile-core';
19
19
  export async function fetchManufacturingOrderConsumedProducts({ manufOrderId, manufOrderVersion, }) {
20
20
  return axiosApiProvider.post({
21
21
  url: '/ws/aos/manuf-order/consumed-products/fetch',
@@ -34,6 +34,13 @@ export async function fetchManufacturingOrderProducedProducts({ manufOrderId, ma
34
34
  },
35
35
  });
36
36
  }
37
+ export async function searchProdProductWithId({ productId }) {
38
+ return createStandardFetch({
39
+ model: 'com.axelor.apps.production.db.ProdProduct',
40
+ id: productId,
41
+ fieldKey: 'manufacturing_prodProduct',
42
+ });
43
+ }
37
44
  export async function createProdProduct({ manufOrderId, manufOrderVersion, productId, trackingNumberId, qty, productType, }) {
38
45
  return axiosApiProvider.post({
39
46
  url: `ws/aos/manuf-order/${manufOrderId}/add-product`,
@@ -1 +1 @@
1
- {"version":3,"file":"prod-product-api.js","sourceRoot":"","sources":["../../src/api/prod-product-api.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAAC,EAC5D,YAAY,EACZ,iBAAiB,GAClB;IACC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,6CAA6C;QAClD,IAAI,EAAE;YACJ,YAAY,EAAE,YAAY;YAC1B,iBAAiB,EAAE,iBAAiB;SACrC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAAC,EAC5D,YAAY,EACZ,iBAAiB,GAClB;IACC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,6CAA6C;QAClD,IAAI,EAAE;YACJ,YAAY,EAAE,YAAY;YAC1B,iBAAiB,EAAE,iBAAiB;SACrC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EACtC,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,GAAG,EACH,WAAW,GACZ;IACC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,sBAAsB,YAAY,cAAc;QACrD,IAAI,EAAE;YACJ,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,SAAS;YACpB,gBAAgB,EAAE,gBAAgB;YAClC,GAAG,EAAE,GAAG;YACR,WAAW,EAAE,WAAW;SACzB;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EACtC,oBAAoB,EACpB,eAAe,EACf,cAAc,GACf;IACC,OAAO,gBAAgB,CAAC,GAAG,CAAC;QAC1B,GAAG,EAAE,uCAAuC;QAC5C,IAAI,EAAE;YACJ,OAAO,EAAE,oBAAoB;YAC7B,eAAe,EAAE,eAAe;YAChC,cAAc,EAAE,cAAc;SAC/B;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"prod-product-api.js","sourceRoot":"","sources":["../../src/api/prod-product-api.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;AAE9E,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAAC,EAC5D,YAAY,EACZ,iBAAiB,GAClB;IACC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,6CAA6C;QAClD,IAAI,EAAE;YACJ,YAAY,EAAE,YAAY;YAC1B,iBAAiB,EAAE,iBAAiB;SACrC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uCAAuC,CAAC,EAC5D,YAAY,EACZ,iBAAiB,GAClB;IACC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,6CAA6C;QAClD,IAAI,EAAE;YACJ,YAAY,EAAE,YAAY;YAC1B,iBAAiB,EAAE,iBAAiB;SACrC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,EAAC,SAAS,EAAC;IACvD,OAAO,mBAAmB,CAAC;QACzB,KAAK,EAAE,2CAA2C;QAClD,EAAE,EAAE,SAAS;QACb,QAAQ,EAAE,2BAA2B;KACtC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EACtC,YAAY,EACZ,iBAAiB,EACjB,SAAS,EACT,gBAAgB,EAChB,GAAG,EACH,WAAW,GACZ;IACC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,sBAAsB,YAAY,cAAc;QACrD,IAAI,EAAE;YACJ,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,SAAS;YACpB,gBAAgB,EAAE,gBAAgB;YAClC,GAAG,EAAE,GAAG;YACR,WAAW,EAAE,WAAW;SACzB;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EACtC,oBAAoB,EACpB,eAAe,EACf,cAAc,GACf;IACC,OAAO,gBAAgB,CAAC,GAAG,CAAC;QAC1B,GAAG,EAAE,uCAAuC;QAC5C,IAAI,EAAE;YACJ,OAAO,EAAE,oBAAoB;YAC7B,eAAe,EAAE,eAAe;YAChC,cAAc,EAAE,cAAc;SAC/B;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare function ManufacturingOrderDatesCard({}: {}): JSX.Element;
3
+ export default ManufacturingOrderDatesCard;
@@ -0,0 +1,39 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import React, { useMemo } from 'react';
19
+ import { FromTo, TitledValue } from '@axelor/aos-mobile-ui';
20
+ import { isEmpty, useSelector, useTranslator } from '@axelor/aos-mobile-core';
21
+ import { ManufacturingOrder } from '../../../types';
22
+ function ManufacturingOrderDatesCard({}) {
23
+ const I18n = useTranslator();
24
+ const { manufOrder } = useSelector((state) => state.manufacturingOrder);
25
+ const [startDate, endDate] = useMemo(() => {
26
+ if (!isEmpty(manufOrder)) {
27
+ return ManufacturingOrder.getDates(manufOrder?.statusSelect, manufOrder?.plannedStartDateT, manufOrder?.plannedEndDateT, manufOrder?.realStartDateT, manufOrder?.realEndDateT, I18n);
28
+ }
29
+ return [];
30
+ }, [I18n, manufOrder]);
31
+ return (<FromTo fromComponent={<TitledValue title={manufOrder?.statusSelect === ManufacturingOrder.status.Draft ||
32
+ manufOrder?.statusSelect === ManufacturingOrder.status.Planned
33
+ ? I18n.t('Base_Estimated')
34
+ : I18n.t('Base_Real')} value={startDate?.value}/>} toComponent={<TitledValue title={manufOrder?.statusSelect === ManufacturingOrder.status.Finished
35
+ ? I18n.t('Base_Real')
36
+ : I18n.t('Base_Estimated')} value={endDate?.value}/>}/>);
37
+ }
38
+ export default ManufacturingOrderDatesCard;
39
+ //# sourceMappingURL=ManufacturingOrderDatesCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManufacturingOrderDatesCard.js","sourceRoot":"","sources":["../../../../src/components/molecules/ManufacturingOrderDatesCard/ManufacturingOrderDatesCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAElD,SAAS,2BAA2B,CAAC,EAAE;IACrC,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAE7B,MAAM,EAAC,UAAU,EAAC,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAE3E,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE;QACxC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACxB,OAAO,kBAAkB,CAAC,QAAQ,CAChC,UAAU,EAAE,YAAY,EACxB,UAAU,EAAE,iBAAiB,EAC7B,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,YAAY,EACxB,IAAI,CACL,CAAC;SACH;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEvB,OAAO,CACL,CAAC,MAAM,CACL,aAAa,CAAC,CACZ,CAAC,WAAW,CACV,KAAK,CAAC,CACJ,UAAU,EAAE,YAAY,KAAK,kBAAkB,CAAC,MAAM,CAAC,KAAK;gBAC5D,UAAU,EAAE,YAAY,KAAK,kBAAkB,CAAC,MAAM,CAAC,OAAO;gBAC5D,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC;gBAC1B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CACxB,CACD,KAAK,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,EACxB,CACH,CACD,WAAW,CAAC,CACV,CAAC,WAAW,CACV,KAAK,CAAC,CACJ,UAAU,EAAE,YAAY,KAAK,kBAAkB,CAAC,MAAM,CAAC,QAAQ;gBAC7D,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC;gBACrB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAC7B,CACD,KAAK,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EACtB,CACH,EACD,CACH,CAAC;AACJ,CAAC;AAED,eAAe,2BAA2B,CAAC"}
@@ -1 +1,2 @@
1
+ export { default as ManufacturingOrderDatesCard } from "./ManufacturingOrderDatesCard/ManufacturingOrderDatesCard";
1
2
  export { default as OperationOrderDatesCard } from "./OperationOrderDatesCard/OperationOrderDatesCard";
@@ -15,5 +15,6 @@
15
15
  * You should have received a copy of the GNU Affero General Public License
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
+ export { default as ManufacturingOrderDatesCard } from './ManufacturingOrderDatesCard/ManufacturingOrderDatesCard';
18
19
  export { default as OperationOrderDatesCard } from './OperationOrderDatesCard/OperationOrderDatesCard';
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/molecules/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,uBAAuB,EAAC,MAAM,mDAAmD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/molecules/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,2BAA2B,EAAC,MAAM,2DAA2D,CAAC;AACjH,OAAO,EAAC,OAAO,IAAI,uBAAuB,EAAC,MAAM,mDAAmD,CAAC"}
@@ -16,12 +16,13 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import React, { useMemo } from 'react';
19
- import { StyleSheet, View, TouchableOpacity } from 'react-native';
20
- import { Badge, Card, LabelText, Text, useThemeColor, } from '@axelor/aos-mobile-ui';
19
+ import { StyleSheet, View } from 'react-native';
20
+ import { ObjectCard, useDigitFormat, useThemeColor } from '@axelor/aos-mobile-ui';
21
21
  import { useTranslator } from '@axelor/aos-mobile-core';
22
22
  const ConsumedProductCard = ({ style, productName, plannedQty, consumedQty, missingQty, availableQty, unitName, trackingNumber = null, onPress = () => { }, increment = { addedQty: 0, incrementVisible: false }, }) => {
23
23
  const Colors = useThemeColor();
24
24
  const I18n = useTranslator();
25
+ const formatNumber = useDigitFormat();
25
26
  const borderStyle = useMemo(() => {
26
27
  if (missingQty > 0) {
27
28
  return getBorderStyles(Colors.errorColor.background)?.border;
@@ -35,58 +36,54 @@ const ConsumedProductCard = ({ style, productName, plannedQty, consumedQty, miss
35
36
  return getBorderStyles(Colors.primaryColor.background)?.border;
36
37
  }
37
38
  }, [Colors, consumedQty, missingQty, plannedQty]);
38
- return (<TouchableOpacity style={style} onPress={onPress} activeOpacity={0.9}>
39
- <Card style={[styles.cardContainer, borderStyle]}>
40
- <View style={styles.topContainer}>
41
- <Text style={styles.txtImportant}>{productName}</Text>
42
- {increment.incrementVisible && (<Badge title={`+ ${increment.addedQty}`} style={styles.badge} color={Colors.priorityColor} txtStyle={styles.badgeInfos}/>)}
43
- </View>
44
- <LabelText title={`${I18n.t('Manufacturing_PlannedQty')}:`} value={`${parseFloat(plannedQty.toString()).toFixed(2)} ${unitName != null ? unitName : ''}`}/>
45
- <LabelText title={`${I18n.t('Manufacturing_ConsumedQty')}:`} value={`${consumedQty == null
46
- ? parseFloat('0').toFixed(2)
47
- : parseFloat(consumedQty.toString()).toFixed(2)} ${unitName != null ? unitName : ''}`}/>
48
- {trackingNumber != null && (<LabelText iconName="qrcode" title={`${I18n.t('Manufacturing_TrackingNumber')}:`} value={trackingNumber}/>)}
49
- <Badge color={availableQty > 0
50
- ? missingQty > 0
51
- ? Colors.cautionColor
52
- : Colors.primaryColor
53
- : Colors.errorColor} title={availableQty > 0
54
- ? missingQty > 0
55
- ? I18n.t('Stock_Partially')
56
- : I18n.t('Stock_Available')
57
- : I18n.t('Stock_Unavailable')}/>
58
- </Card>
59
- </TouchableOpacity>);
39
+ return (<View style={style}>
40
+ <ObjectCard onPress={onPress} style={borderStyle} showArrow={false} upperTexts={{
41
+ items: [
42
+ { isTitle: true, displayText: productName },
43
+ {
44
+ indicatorText: `${I18n.t('Manufacturing_PlannedQty')}:`,
45
+ displayText: `${formatNumber(plannedQty)} ${unitName != null ? unitName : ''}`,
46
+ },
47
+ {
48
+ indicatorText: `${I18n.t('Manufacturing_ConsumedQty')}:`,
49
+ displayText: `${formatNumber(consumedQty)} ${unitName != null ? unitName : ''}`,
50
+ },
51
+ {
52
+ iconName: 'qrcode',
53
+ displayText: trackingNumber,
54
+ indicatorText: `${I18n.t('Manufacturing_TrackingNumber')}:`,
55
+ hideIf: trackingNumber == null,
56
+ },
57
+ ],
58
+ }} lowerBadges={{
59
+ items: [
60
+ {
61
+ showIf: increment.incrementVisible,
62
+ displayText: `+ ${increment.addedQty}`,
63
+ color: Colors.priorityColor,
64
+ },
65
+ {
66
+ displayText: availableQty > 0
67
+ ? missingQty > 0
68
+ ? I18n.t('Stock_Partially')
69
+ : I18n.t('Stock_Available')
70
+ : I18n.t('Stock_Unavailable'),
71
+ color: availableQty > 0
72
+ ? missingQty > 0
73
+ ? Colors.cautionColor
74
+ : Colors.primaryColor
75
+ : Colors.errorColor,
76
+ },
77
+ ],
78
+ }}/>
79
+ </View>);
60
80
  };
61
81
  const getBorderStyles = color => StyleSheet.create({
62
- border: { borderLeftWidth: 7, borderLeftColor: color },
63
- });
64
- const styles = StyleSheet.create({
65
- cardContainer: {
66
- flexDirection: 'column',
67
- paddingLeft: 10,
68
- paddingRight: 10,
69
- margin: 2,
70
- elevation: 0,
71
- shadowOpacity: 0,
72
- },
73
- topContainer: {
74
- flexDirection: 'row',
75
- justifyContent: 'space-between',
76
- alignItems: 'center',
77
- height: 20,
78
- },
79
- txtImportant: {
80
- fontSize: 18,
81
- fontWeight: 'bold',
82
- },
83
- badge: {
84
- height: 20,
85
- width: 40,
86
- borderRadius: 30,
87
- },
88
- badgeInfos: {
89
- fontWeight: 'bold',
82
+ border: {
83
+ borderLeftWidth: 7,
84
+ borderLeftColor: color,
85
+ marginHorizontal: 0,
86
+ marginVertical: 0,
90
87
  },
91
88
  });
92
89
  export default ConsumedProductCard;
@@ -1 +1 @@
1
- {"version":3,"file":"ConsumedProductCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/ConsumedProductCard/ConsumedProductCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConsumedProductCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/ConsumedProductCard/ConsumedProductCard.tsx"],"names":[],"mappings":"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"}
@@ -16,30 +16,20 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import React from 'react';
19
- import { StyleSheet, TouchableOpacity } from 'react-native';
20
- import { Badge, Card, LabelText, useThemeColor } from '@axelor/aos-mobile-ui';
19
+ import { ObjectCard, useThemeColor } from '@axelor/aos-mobile-ui';
21
20
  import { clipboardProvider, useTranslator } from '@axelor/aos-mobile-core';
22
21
  import ManufacturingOrder from '../../../types/manufacturing-order';
23
22
  const LinkedManufacturingOrderCard = ({ manufOrderSeq, statusSelect, }) => {
24
23
  const Colors = useThemeColor();
25
24
  const I18n = useTranslator();
26
- return (<TouchableOpacity activeOpacity={0.9} onPress={() => clipboardProvider.copyToClipboard(manufOrderSeq)}>
27
- <Card style={styles.itemContainer}>
28
- <LabelText title={manufOrderSeq} iconName="tag"/>
29
- <Badge title={ManufacturingOrder.getStatus(statusSelect, I18n)} color={ManufacturingOrder.getStatusColor(statusSelect, Colors)}/>
30
- </Card>
31
- </TouchableOpacity>);
25
+ return (<ObjectCard showArrow={false} onPress={() => clipboardProvider.copyToClipboard(manufOrderSeq)} sideBadges={{
26
+ items: [
27
+ {
28
+ displayText: ManufacturingOrder.getStatus(statusSelect, I18n),
29
+ color: ManufacturingOrder.getStatusColor(statusSelect, Colors),
30
+ },
31
+ ],
32
+ }} upperTexts={{ items: [{ iconName: 'tag', indicatorText: manufOrderSeq }] }}/>);
32
33
  };
33
- const styles = StyleSheet.create({
34
- itemContainer: {
35
- marginHorizontal: 12,
36
- marginVertical: 4,
37
- paddingHorizontal: 20,
38
- paddingVertical: 10,
39
- flexDirection: 'row',
40
- justifyContent: 'space-between',
41
- alignItems: 'center',
42
- },
43
- });
44
34
  export default LinkedManufacturingOrderCard;
45
35
  //# sourceMappingURL=LinkedManufacturingOrderCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LinkedManufacturingOrderCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/LinkedManufacturingOrderCard/LinkedManufacturingOrderCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AACzE,OAAO,kBAAkB,MAAM,oCAAoC,CAAC;AAEpE,MAAM,4BAA4B,GAAG,CAAC,EACpC,aAAa,EACb,YAAY,GAIb,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAE7B,OAAO,CACL,CAAC,gBAAgB,CACf,aAAa,CAAC,CAAC,GAAG,CAAC,CACnB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAChE;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAChC;QAAA,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,KAAK,EAC/C;QAAA,CAAC,KAAK,CACJ,KAAK,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CACxD,KAAK,CAAC,CAAC,kBAAkB,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,EAEnE;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,aAAa,EAAE;QACb,gBAAgB,EAAE,EAAE;QACpB,cAAc,EAAE,CAAC;QACjB,iBAAiB,EAAE,EAAE;QACrB,eAAe,EAAE,EAAE;QACnB,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,eAAe;QAC/B,UAAU,EAAE,QAAQ;KACrB;CACF,CAAC,CAAC;AAEH,eAAe,4BAA4B,CAAC"}
1
+ {"version":3,"file":"LinkedManufacturingOrderCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/LinkedManufacturingOrderCard/LinkedManufacturingOrderCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AACzE,OAAO,kBAAkB,MAAM,oCAAoC,CAAC;AAEpE,MAAM,4BAA4B,GAAG,CAAC,EACpC,aAAa,EACb,YAAY,GAIb,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAE7B,OAAO,CACL,CAAC,UAAU,CACT,SAAS,CAAC,CAAC,KAAK,CAAC,CACjB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAChE,UAAU,CAAC,CAAC;YACV,KAAK,EAAE;gBACL;oBACE,WAAW,EAAE,kBAAkB,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC;oBAC7D,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC;iBAC/D;aACF;SACF,CAAC,CACF,UAAU,CAAC,CAAC,EAAC,KAAK,EAAE,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAC,CAAC,EAAC,CAAC,EACvE,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,4BAA4B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export default ManufacturingOrderButtons;
2
+ declare function ManufacturingOrderButtons({}: {}): JSX.Element;
@@ -16,11 +16,11 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import React, { useCallback } from 'react';
19
- import { IconButton, useThemeColor } from '@axelor/aos-mobile-ui';
19
+ import { Button, useThemeColor } from '@axelor/aos-mobile-ui';
20
20
  import { useTranslator, useDispatch, useSelector } from '@axelor/aos-mobile-core';
21
21
  import ManufacturingOrder from '../../../types/manufacturing-order';
22
22
  import { updateStatusOfManufOrder } from '../../../features/manufacturingOrderSlice';
23
- const ManufacturingOrderIconButtonList = ({}) => {
23
+ const ManufacturingOrderButtons = ({}) => {
24
24
  const Colors = useThemeColor();
25
25
  const I18n = useTranslator();
26
26
  const dispatch = useDispatch();
@@ -33,18 +33,18 @@ const ManufacturingOrderIconButtonList = ({}) => {
33
33
  }));
34
34
  }, [dispatch, manufOrder]);
35
35
  if (manufOrder.statusSelect === ManufacturingOrder.status.Planned) {
36
- return (<IconButton title={I18n.t('Base_Start')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.InProgress)} iconName="play"/>);
36
+ return (<Button title={I18n.t('Base_Start')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.InProgress)} iconName="play"/>);
37
37
  }
38
38
  if (manufOrder.statusSelect === ManufacturingOrder.status.InProgress) {
39
39
  return (<>
40
- <IconButton title={I18n.t('Base_Pause')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.StandBy)} iconName="pause" color={Colors.secondaryColor}/>
41
- <IconButton title={I18n.t('Base_Finish')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.Finished)} iconName="power-off"/>
40
+ <Button title={I18n.t('Base_Pause')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.StandBy)} iconName="pause" color={Colors.secondaryColor}/>
41
+ <Button title={I18n.t('Base_Finish')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.Finished)} iconName="power-off"/>
42
42
  </>);
43
43
  }
44
44
  if (manufOrder.statusSelect === ManufacturingOrder.status.StandBy) {
45
- return (<IconButton title={I18n.t('Base_Continue')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.InProgress)} iconName="step-forward"/>);
45
+ return (<Button title={I18n.t('Base_Continue')} onPress={() => handleUpdateStatus(ManufacturingOrder.status.InProgress)} iconName="step-forward"/>);
46
46
  }
47
47
  return null;
48
48
  };
49
- export default ManufacturingOrderIconButtonList;
50
- //# sourceMappingURL=ManufacturingOrderIconButtonList.js.map
49
+ export default ManufacturingOrderButtons;
50
+ //# sourceMappingURL=ManufacturingOrderButtons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ManufacturingOrderButtons.js","sourceRoot":"","sources":["../../../../src/components/organisms/ManufacturingOrderButtons/ManufacturingOrderButtons.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAC,MAAM,OAAO,CAAC;AACzC,OAAO,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAC,aAAa,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,kBAAkB,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAC,wBAAwB,EAAC,MAAM,2CAA2C,CAAC;AAEnF,MAAM,yBAAyB,GAAG,CAAC,EAAE,EAAE,EAAE;IACvC,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,EAAC,UAAU,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAEpE,MAAM,kBAAkB,GAAG,WAAW,CACpC,YAAY,CAAC,EAAE;QACb,QAAQ,CACN,wBAAwB,CAAC;YACvB,YAAY,EAAE,UAAU,CAAC,EAAE;YAC3B,iBAAiB,EAAE,UAAU,CAAC,OAAO;YACrC,YAAY;SACb,CAAC,CACH,CAAC;IACJ,CAAC,EACD,CAAC,QAAQ,EAAE,UAAU,CAAC,CACvB,CAAC;IAEF,IAAI,UAAU,CAAC,YAAY,KAAK,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE;QACjE,OAAO,CACL,CAAC,MAAM,CACL,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAC5B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CACxE,QAAQ,CAAC,MAAM,EACf,CACH,CAAC;KACH;IAED,IAAI,UAAU,CAAC,YAAY,KAAK,kBAAkB,CAAC,MAAM,CAAC,UAAU,EAAE;QACpE,OAAO,CACL,EACE;QAAA,CAAC,MAAM,CACL,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAC5B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CACrE,QAAQ,CAAC,OAAO,CAChB,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,EAE/B;QAAA,CAAC,MAAM,CACL,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAC7B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CACtE,QAAQ,CAAC,WAAW,EAExB;MAAA,GAAG,CACJ,CAAC;KACH;IAED,IAAI,UAAU,CAAC,YAAY,KAAK,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE;QACjE,OAAO,CACL,CAAC,MAAM,CACL,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAC/B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CACxE,QAAQ,CAAC,cAAc,EACvB,CACH,CAAC;KACH;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -10,7 +10,11 @@ interface ManufacturingOrderCardProps {
10
10
  ordersRef: any[];
11
11
  client: any;
12
12
  };
13
+ plannedStartDate?: string;
14
+ plannedEndDate?: string;
15
+ realStartDate?: string;
16
+ realEndDate?: string;
13
17
  onPress: () => void;
14
18
  }
15
- declare const ManufacturingOrderCard: ({ style, reference, status, priority, productName, qty, unit, link, onPress, }: ManufacturingOrderCardProps) => JSX.Element;
19
+ declare const ManufacturingOrderCard: ({ style, reference, status, priority, productName, qty, unit, link, plannedStartDate, plannedEndDate, realStartDate, realEndDate, onPress, }: ManufacturingOrderCardProps) => JSX.Element;
16
20
  export default ManufacturingOrderCard;
@@ -16,68 +16,59 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import React, { useMemo } from 'react';
19
- import { StyleSheet, View, TouchableOpacity } from 'react-native';
20
- import { Badge, Card, Icon, LabelText, Text, useThemeColor, } from '@axelor/aos-mobile-ui';
19
+ import { StyleSheet } from 'react-native';
20
+ import { ObjectCard, useDigitFormat, useThemeColor } from '@axelor/aos-mobile-ui';
21
21
  import { useTranslator } from '@axelor/aos-mobile-core';
22
22
  import ManufacturingOrder from '../../../types/manufacturing-order';
23
- const ManufacturingOrderCard = ({ style, reference, status, priority, productName, qty, unit, link = { ordersRef: [null], client: null }, onPress, }) => {
23
+ const ManufacturingOrderCard = ({ style, reference, status, priority, productName, qty, unit, link = { ordersRef: [null], client: null }, plannedStartDate, plannedEndDate, realStartDate, realEndDate, onPress, }) => {
24
24
  const Colors = useThemeColor();
25
25
  const I18n = useTranslator();
26
+ const formatNumber = useDigitFormat();
26
27
  const borderStyle = useMemo(() => {
27
28
  return getStyles(ManufacturingOrder.getStatusColor(status, Colors).background)?.border;
28
29
  }, [Colors, status]);
29
- return (<TouchableOpacity onPress={onPress} activeOpacity={0.9}>
30
- <Card style={[styles.container, borderStyle, style]}>
31
- <View style={styles.textContainer}>
32
- <Text style={styles.txtImportant}>{reference}</Text>
33
- <Text style={styles.txtDetails}>{productName}</Text>
34
- <LabelText iconName="hammer" title={`${parseFloat(qty.toString()).toFixed(2)} ${unit != null ? unit.name : ''}`}/>
35
- {link.client != null && link.ordersRef?.length > 0 && (<View style={styles.origin}>
36
- <Icon name="tag" size={12} style={styles.icon}/>
37
- <Text style={styles.txtDetails}>
38
- {link.ordersRef[0].fullName}
39
- </Text>
40
- </View>)}
41
- </View>
42
- <View style={styles.rightContainer}>
43
- {priority == null ? null : (<Badge color={ManufacturingOrder.getPriorityColor(priority, Colors)} title={ManufacturingOrder.getPriority(priority, I18n)}/>)}
44
- <Icon name="chevron-right" color={Colors.secondaryColor.background_light} size={20}/>
45
- </View>
46
- </Card>
47
- </TouchableOpacity>);
30
+ const [startDate, endDate] = ManufacturingOrder.getDates(status, plannedStartDate, plannedEndDate, realStartDate, realEndDate, I18n);
31
+ return (<ObjectCard onPress={onPress} style={[borderStyle, style]} sideBadges={{
32
+ items: [
33
+ {
34
+ showIf: priority != null,
35
+ color: ManufacturingOrder.getPriorityColor(priority, Colors),
36
+ displayText: ManufacturingOrder.getPriority(priority, I18n),
37
+ },
38
+ ],
39
+ }} upperTexts={{
40
+ items: [
41
+ {
42
+ isTitle: true,
43
+ displayText: reference,
44
+ },
45
+ {
46
+ displayText: productName,
47
+ },
48
+ {
49
+ iconName: 'hammer',
50
+ indicatorText: `${formatNumber(qty)} ${unit != null ? unit.name : ''}`,
51
+ },
52
+ {
53
+ hideIf: link.client == null || link.ordersRef?.length <= 0,
54
+ iconName: 'tag',
55
+ indicatorText: link.ordersRef[0]?.fullName,
56
+ },
57
+ {
58
+ displayText: `${startDate.title} ${startDate.value}`,
59
+ hideIf: startDate == null,
60
+ },
61
+ {
62
+ displayText: `${endDate.title} ${endDate.value}`,
63
+ hideIf: status === ManufacturingOrder.status.InProgress ||
64
+ status === ManufacturingOrder.status.StandBy ||
65
+ endDate == null,
66
+ },
67
+ ],
68
+ }}/>);
48
69
  };
49
70
  const getStyles = color => StyleSheet.create({
50
71
  border: { borderLeftWidth: 7, borderLeftColor: color },
51
72
  });
52
- const styles = StyleSheet.create({
53
- rightContainer: {
54
- width: '20%',
55
- flexDirection: 'column',
56
- justifyContent: 'space-evenly',
57
- alignItems: 'center',
58
- },
59
- container: {
60
- flexDirection: 'row',
61
- },
62
- textContainer: {
63
- width: '80%',
64
- flexDirection: 'column',
65
- justifyContent: 'space-between',
66
- marginRight: 5,
67
- },
68
- txtImportant: {
69
- fontSize: 18,
70
- fontWeight: 'bold',
71
- },
72
- txtDetails: {
73
- fontSize: 14,
74
- },
75
- origin: {
76
- flexDirection: 'row',
77
- },
78
- icon: {
79
- marginRight: 5,
80
- },
81
- });
82
73
  export default ManufacturingOrderCard;
83
74
  //# sourceMappingURL=ManufacturingOrderCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ManufacturingOrderCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/ManufacturingOrderCard/ManufacturingOrderCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ManufacturingOrderCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/ManufacturingOrderCard/ManufacturingOrderCard.tsx"],"names":[],"mappings":"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"}
@@ -16,8 +16,8 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import React, { useMemo } from 'react';
19
- import { StyleSheet, View, TouchableOpacity } from 'react-native';
20
- import { Badge, Card, Icon, LabelText, Text, useThemeColor, } from '@axelor/aos-mobile-ui';
19
+ import { StyleSheet } from 'react-native';
20
+ import { ObjectCard, useThemeColor } from '@axelor/aos-mobile-ui';
21
21
  import { formatDuration } from '@axelor/aos-mobile-core';
22
22
  import ManufacturingOrder from '../../../types/manufacturing-order';
23
23
  const OperationOrderCard = ({ style, status, operationName, workcenter, plannedDuration, priority, onPress, }) => {
@@ -25,51 +25,36 @@ const OperationOrderCard = ({ style, status, operationName, workcenter, plannedD
25
25
  const borderStyle = useMemo(() => {
26
26
  return getStyles(ManufacturingOrder.getStatusColor(status, Colors).background)?.border;
27
27
  }, [Colors, status]);
28
- return (<TouchableOpacity onPress={onPress} activeOpacity={0.9}>
29
- <Card style={[styles.container, borderStyle, style]}>
30
- <View style={styles.textContainer}>
31
- <Text style={styles.txtImportant}>{operationName}</Text>
32
- <Text style={styles.txtDetails}>{workcenter}</Text>
33
- {plannedDuration != null && (<LabelText iconName="stopwatch" title={formatDuration(plannedDuration)}/>)}
34
- </View>
35
- <View style={styles.rightContainer}>
36
- {priority == null ? null : (<Badge color={Colors.priorityColor} title={priority.toString()} style={styles.badge}/>)}
37
- <Icon name="chevron-right" color={Colors.secondaryColor.background_light} size={20}/>
38
- </View>
39
- </Card>
40
- </TouchableOpacity>);
28
+ return (<ObjectCard onPress={onPress} style={[borderStyle, style]} sideBadges={{
29
+ items: [
30
+ {
31
+ displayText: priority.toString(),
32
+ color: Colors.priorityColor,
33
+ style: styles.badge,
34
+ },
35
+ ],
36
+ }} upperTexts={{
37
+ items: [
38
+ { isTitle: true, displayText: operationName },
39
+ { displayText: workcenter },
40
+ {
41
+ hideIf: plannedDuration == null,
42
+ indicatorText: formatDuration(plannedDuration),
43
+ iconName: 'stopwatch',
44
+ },
45
+ ],
46
+ }}/>);
41
47
  };
42
48
  const getStyles = color => StyleSheet.create({
43
49
  border: { borderLeftWidth: 7, borderLeftColor: color },
44
50
  });
45
51
  const styles = StyleSheet.create({
46
- rightContainer: {
47
- width: '10%',
48
- flexDirection: 'column',
49
- justifyContent: 'space-evenly',
50
- alignItems: 'center',
51
- },
52
- container: {
53
- flexDirection: 'row',
54
- },
55
- textContainer: {
56
- width: '90%',
57
- flexDirection: 'column',
58
- justifyContent: 'space-between',
59
- marginRight: 5,
60
- },
61
- txtImportant: {
62
- fontSize: 18,
63
- fontWeight: 'bold',
64
- },
65
- txtDetails: {
66
- fontSize: 14,
67
- },
68
52
  badge: {
69
53
  borderRadius: 50,
70
54
  width: 35,
71
55
  height: 35,
72
56
  marginBottom: 10,
57
+ alignSelf: 'flex-end',
73
58
  },
74
59
  });
75
60
  export default OperationOrderCard;
@@ -1 +1 @@
1
- {"version":3,"file":"OperationOrderCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/OperationOrderCard/OperationOrderCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperationOrderCard.js","sourceRoot":"","sources":["../../../../src/components/organisms/OperationOrderCard/OperationOrderCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AACvD,OAAO,kBAAkB,MAAM,oCAAoC,CAAC;AAYpE,MAAM,kBAAkB,GAAG,CAAC,EAC1B,KAAK,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,eAAe,EACf,QAAQ,EACR,OAAO,GACiB,EAAE,EAAE;IAC5B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,OAAO,SAAS,CACd,kBAAkB,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,UAAU,CAC7D,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAErB,OAAO,CACL,CAAC,UAAU,CACT,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,KAAK,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAC5B,UAAU,CAAC,CAAC;YACV,KAAK,EAAE;gBACL;oBACE,WAAW,EAAE,QAAQ,CAAC,QAAQ,EAAE;oBAChC,KAAK,EAAE,MAAM,CAAC,aAAa;oBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB;aACF;SACF,CAAC,CACF,UAAU,CAAC,CAAC;YACV,KAAK,EAAE;gBACL,EAAC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAC;gBAC3C,EAAC,WAAW,EAAE,UAAU,EAAC;gBACzB;oBACE,MAAM,EAAE,eAAe,IAAI,IAAI;oBAC/B,aAAa,EAAE,cAAc,CAAC,eAAe,CAAC;oBAC9C,QAAQ,EAAE,WAAW;iBACtB;aACF;SACF,CAAC,EACF,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,CAAC,EAAE,CACxB,UAAU,CAAC,MAAM,CAAC;IAChB,MAAM,EAAE,EAAC,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,KAAK,EAAC;CACrD,CAAC,CAAC;AAEL,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE;QACL,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,UAAU;KACtB;CACF,CAAC,CAAC;AAEH,eAAe,kBAAkB,CAAC"}