Compare commits

...

1269 Commits

Author SHA1 Message Date
omair saleh 0e7469f1cd new registration ui flow 2022-03-29 23:15:42 +08:00
omair saleh 32476afdd4 fix vt warehouse list 2022-03-27 12:56:31 +08:00
omair saleh 8b6db1fb68 temp test vt warehouse list 2022-03-27 12:55:06 +08:00
omair saleh 43f3fbff07 temp test vt warehouse list 2022-03-27 12:54:06 +08:00
omair saleh caf8624d4c temp test vt warehouse list 2022-03-27 12:51:43 +08:00
omair saleh eb417cf389 temp test vt warehouse list 2022-03-27 12:50:23 +08:00
omair saleh 276a87ff0d temp test vt warehouse list 2022-03-27 12:49:08 +08:00
omair saleh 6d2f179025 Merge branch 'development' into 'master'
Development

See merge request CIEFWorldwideSdnBhd/shipping-portal!116
2022-03-27 03:54:48 +00:00
omair saleh 8609c926f9 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-27 11:53:18 +08:00
omair saleh 368a055bb4 add chat box to development 2022-03-27 11:50:27 +08:00
omair saleh d617001412 fix vt YW orders 2022-03-27 11:49:32 +08:00
omair saleh c932cb00cc add chat widget 2022-03-25 17:36:27 +08:00
omair saleh 1be62a5f77 fix vt order number to filter yw 2022-03-25 16:54:10 +08:00
omair saleh 445bcb3864 small clean up 2022-03-24 13:33:04 +08:00
omair saleh d489775924 small clean up 2022-03-24 13:32:34 +08:00
omair saleh fff428882d small clean up 2022-03-24 13:31:37 +08:00
omair saleh 42205ddbc3 small clean up 2022-03-24 13:29:59 +08:00
omair saleh 722e502b3b tidy up invoices details descriptions 2022-03-24 13:26:55 +08:00
omair saleh 4f93569b4c Merge branch 'development' into 'master'
Development

See merge request CIEFWorldwideSdnBhd/shipping-portal!115
2022-03-24 05:22:35 +00:00
omair saleh e1abebc66c Merge branch 'transaction-invoice' into 'development'
transaction detail over weight

See merge request CIEFWorldwideSdnBhd/shipping-portal!114
2022-03-24 05:18:22 +00:00
omair saleh 2424882cfe Merge branch 'development' into 'transaction-invoice'
# Conflicts:
#   app/Classes/Modules/Transactions/ControllersLogic/CreateShippingInvoiceTransactionLogic.php
2022-03-24 05:18:17 +00:00
omair saleh 23f50faa84 release create warehouse arrival parcel module 2022-03-24 13:11:22 +08:00
edmondlang edc510681e Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-24 11:40:20 +08:00
omair saleh db03836ef5 add new way of detecting yd container rescheduling 2022-03-24 10:59:59 +08:00
edmondlang 3a5f404294 Tidy Up Export Customer activity details, add new filter - minOrders and minCbm 2022-03-23 00:53:16 +08:00
edmondlang 9b79f16faa Merge branch 'api-to-update-segment-constants' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-22 21:55:24 +08:00
edmondlang 4ff4418f7f Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-19 13:35:09 +08:00
glovetleong 19c8f1e658 transaction detail over weight 2022-03-18 20:46:40 +08:00
omair saleh e1c4d674b6 smc report for specific containers 2022-03-18 17:48:18 +08:00
omair saleh 3326de9c4f smc report for specific containers 2022-03-18 17:44:28 +08:00
omair saleh 54dd6d407d revert invoice changes 2022-03-18 16:18:44 +08:00
omair saleh 9ee81d9385 update rfm to table 2022-03-18 16:18:12 +08:00
omair saleh aa1ba03415 update rfm to table 2022-03-18 16:16:25 +08:00
omair saleh fb6b2173b5 update rfm to table 2022-03-18 16:14:42 +08:00
omair saleh f18e4a882f update container reschedule for yd 2022-03-17 17:47:34 +08:00
omair saleh 8edc91bb61 update container reschedule for yd 2022-03-17 17:46:24 +08:00
omair saleh 6122c288df update container reschedule for yd 2022-03-17 17:45:10 +08:00
omair saleh 9650877819 update container reschedule for yd 2022-03-17 17:43:03 +08:00
omair saleh c65d875a3d update container reschedule for yd 2022-03-17 17:41:39 +08:00
omair saleh c1bc610549 update container reschedule for yd 2022-03-17 17:41:06 +08:00
omair saleh 82d406abfc update container reschedule for yd 2022-03-17 17:39:47 +08:00
omair saleh 701610978d update container reschedule for yd 2022-03-17 17:37:07 +08:00
omair saleh f7e1665a02 update container reschedule for yd 2022-03-17 17:36:24 +08:00
omair saleh d389b87609 update container reschedule for yd 2022-03-17 17:34:51 +08:00
omair saleh 987fdcfba2 update container reschedule for yd 2022-03-17 17:33:23 +08:00
omair saleh 6214a2b723 update container reschedule for yd 2022-03-17 17:31:39 +08:00
omair saleh fe00b1fab7 update container reschedule for yd 2022-03-17 17:22:02 +08:00
omair saleh 41df3e6ae7 update container reschedule for yd 2022-03-17 17:18:47 +08:00
omair saleh cf7d9ccca5 update container reschedule for yd 2022-03-17 17:17:01 +08:00
omair saleh 384d234b50 update container reschedule for yd 2022-03-17 17:16:35 +08:00
omair saleh 3fbfa44a04 update container reschedule for yd 2022-03-17 17:14:02 +08:00
omair saleh cbc294054e update container reschedule for yd 2022-03-17 17:12:47 +08:00
omair saleh 324556985a update container reschedule for yd 2022-03-17 17:08:23 +08:00
omair saleh 1b8c6ca317 update container reschedule for yd 2022-03-17 17:08:12 +08:00
omair saleh bbd09d300c update container reschedule for yd 2022-03-17 17:07:33 +08:00
omair saleh 47c97d6151 update container reschedule for yd 2022-03-17 17:05:04 +08:00
omair saleh 435e3a8f7a update container reschedule for yd 2022-03-17 17:03:40 +08:00
omair saleh 151032bb66 update container reschedule for yd 2022-03-17 17:02:40 +08:00
omair saleh f32335d57b update container reschedule for yd 2022-03-17 16:58:52 +08:00
omair saleh 2deddc4e03 update container reschedule for yd 2022-03-17 16:57:49 +08:00
omair saleh 32e665e4f7 update container reschedule for yd 2022-03-17 16:57:03 +08:00
omair saleh a987419040 update container reschedule for yd 2022-03-17 16:36:50 +08:00
omair saleh b0a65f870c update container reschedule for yd 2022-03-17 16:33:00 +08:00
omair saleh 33a75eca7d smc monthly report 2022-03-17 13:53:50 +08:00
Leong Chee Siong deb68dc723 Merge branch 'transaction-invoice' into 'development'
billpliz callback

See merge request CIEFWorldwideSdnBhd/shipping-portal!113
2022-03-17 02:13:19 +00:00
omair saleh 519408c2b5 lawas and Limbang show kk warehouse 2022-03-17 09:55:46 +08:00
omair saleh 53907e2463 lawas and Limbang show kk warehouse 2022-03-17 09:52:24 +08:00
omair saleh 10e6f6045e lawas and Limbang show kk warehouse 2022-03-17 09:51:36 +08:00
omair saleh c06cec5b41 lawas and Limbang show kk warehouse 2022-03-17 09:47:31 +08:00
omair saleh cfe611d05d lawas and Limbang show kk warehouse 2022-03-17 09:45:24 +08:00
ahmedsophyudden b9b79ca65a Shipping Portal - Api to update segment (general, state, postcode) 2022-03-17 01:01:01 +08:00
glovetleong 9a1562386f billpliz callback 2022-03-16 23:01:38 +08:00
omair saleh 22700893a2 fix qr remark 2022-03-16 10:03:47 +08:00
omair saleh 550c9480a4 fix qr remark 2022-03-16 10:02:17 +08:00
omair saleh 48bab9998c fix qr remark 2022-03-16 09:47:26 +08:00
omair saleh 3ff81d4f00 fix qr remark 2022-03-16 09:46:23 +08:00
omair saleh cc7edfc784 sort deliveries by date 2022-03-16 01:24:37 +08:00
omair saleh 72448d656c sort deliveries by date 2022-03-16 01:20:13 +08:00
omair saleh c941f679b6 sort deliveries by date 2022-03-16 01:19:31 +08:00
omair saleh 78f6c70cad sort deliveries by date 2022-03-16 01:18:53 +08:00
omair saleh 1575d62e0f sort deliveries by date 2022-03-16 01:17:21 +08:00
omair saleh 43f4bc533a sort deliveries by date 2022-03-16 01:16:13 +08:00
omair saleh 9ae36dc400 sort deliveries by date 2022-03-16 01:14:27 +08:00
omair saleh 02c55d97b7 sort deliveries by date 2022-03-16 01:00:27 +08:00
omair saleh baeaa0f31a sort deliveries by date 2022-03-16 00:58:16 +08:00
omair saleh dadc786f1f Merge branch 'development' into 'master'
Development

See merge request CIEFWorldwideSdnBhd/shipping-portal!112
2022-03-15 16:32:13 +00:00
omair saleh bd9dab0029 hide invoice button for production 2022-03-16 00:31:24 +08:00
omair saleh e2b795c872 Merge remote-tracking branch 'origin/development' into development 2022-03-16 00:30:55 +08:00
omair saleh 9a79c6dd1d Merge branch 'development' into 'master'
Warehouse Profile

See merge request CIEFWorldwideSdnBhd/shipping-portal!111
2022-03-15 16:28:58 +00:00
omair saleh d8e1c38429 hide invoice button for production 2022-03-16 00:24:18 +08:00
Leong Chee Siong aa28afb9f0 Merge branch 'transaction-invoice' into 'development'
soft delete user

See merge request CIEFWorldwideSdnBhd/shipping-portal!110
2022-03-14 05:45:21 +00:00
glovetleong 7ec109eb3e soft delete user 2022-03-14 13:42:48 +08:00
omair saleh 7151616b04 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-14 13:19:04 +08:00
omair saleh f2007b25e4 fix delivery list filter 2022-03-14 11:32:22 +08:00
omair saleh 6389fc6600 fix delivery list filter 2022-03-14 11:24:33 +08:00
omair saleh eb6b2943af fix delivery list filter 2022-03-14 11:21:20 +08:00
omair saleh 5fb7ddb0ec fix delivery list filter 2022-03-14 11:20:16 +08:00
omair saleh 91feb5b8fa fix delivery list filter 2022-03-14 11:19:45 +08:00
omair saleh 9c98693071 Merge remote-tracking branch 'origin/development' into development 2022-03-14 11:14:29 +08:00
omair saleh 56fb250e6f fix delivery list filter 2022-03-14 11:14:14 +08:00
Leong Chee Siong eabfeb6724 Merge branch 'transaction-invoice' into 'development'
payment transaction

See merge request CIEFWorldwideSdnBhd/shipping-portal!109
2022-03-14 03:10:20 +00:00
omair saleh 8902a09337 fix delivery list filter 2022-03-14 10:59:44 +08:00
omair saleh 0a69faeb3b fix delivery list filter 2022-03-14 10:58:48 +08:00
omair saleh bea9507dae fix delivery list filter 2022-03-14 10:57:43 +08:00
edmondlang a1a9ab76bb tidy up route and put reports route inside report.php 2022-03-13 22:06:11 +08:00
glovetleong 5d9e621920 payment document approve 2022-03-12 20:06:10 +08:00
omair saleh 5b1f4eff0d Merge remote-tracking branch 'origin/development' into development 2022-03-12 17:20:49 +08:00
omair saleh ac41229f8b notifiable 2022-03-12 17:20:32 +08:00
azumiru 2fb12d3a7c container-export-pdf-ui add export button and call api 2022-03-11 20:54:49 +08:00
omair saleh 28088f7d9a fix mysql crash on supplier update api 2022-03-11 14:43:21 +08:00
edmondlang ced07a293e update the createRemarkLogic, so all modules are able to use it
create a RemarkFormComponent
update order page to use this API
clean up old remark API
2022-03-10 19:39:47 +08:00
edmondlang 59ee063186 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-10 16:48:13 +08:00
omair saleh 8cd63e93c3 show order search to admin 2022-03-10 14:27:17 +08:00
omair saleh d3bf6b0dee show order search to admin 2022-03-10 14:25:01 +08:00
omair saleh 093ea075f0 show order search to admin 2022-03-10 14:24:14 +08:00
omair saleh 62066a5be5 show order search to admin 2022-03-10 14:22:24 +08:00
omair saleh 88c0ba31d7 show order search to admin 2022-03-10 14:21:31 +08:00
edmondlang 36236144ce update downloadQrPdfController 2022-03-09 20:06:31 +08:00
omair saleh 69e4f83919 Merge remote-tracking branch 'origin/development' into development 2022-03-09 20:02:20 +08:00
omair saleh 6338fdf771 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-09 20:01:48 +08:00
edmondlang 83091caa46 create company module remark and ui 2022-03-09 18:51:23 +08:00
edmondlang 99f5dcf8ab update indentation 2022-03-09 18:34:26 +08:00
edmondlang eb6f313c77 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-09 18:33:18 +08:00
omair saleh 3b60a90435 fix yd to vt error 2022-03-09 11:14:25 +08:00
omair saleh 3a9fe2b6af fix yd to vt error 2022-03-09 11:10:27 +08:00
omair saleh 603b807225 fix yd to vt error 2022-03-09 11:09:36 +08:00
omair saleh 0ae05f05b6 update qr for yd orders 2022-03-09 11:03:57 +08:00
edmondlang 290e531d12 update delivery-list api filters 2022-03-08 19:17:10 +08:00
edmondlang a44ad3df3a Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-08 19:05:46 +08:00
glovetleong de56c21734 payment transaction 2022-03-08 16:55:31 +08:00
omair saleh 89aa52e9c2 add enter trigger to search containers 2022-03-08 12:27:29 +08:00
omair saleh 072e65c00c fix claim packinglist status 2022-03-08 12:06:59 +08:00
omair saleh 8701620dcf add warehouse remark to qr pdf 2022-03-08 10:12:59 +08:00
ahmedsophyudden e9f86f0603 Shipping Portal - Create filter for pending arrangement, pending delivery, delivered 2022-03-07 16:56:38 +08:00
omair saleh 6d77fe171a fix yd exemption list 2022-03-07 15:36:34 +08:00
omair saleh 073250ce43 fix yd exemption list 2022-03-07 15:36:08 +08:00
edmondlang 07d3b4b7a3 update shipping invoice 2022-03-06 21:19:44 +08:00
edmondlang 3b86a50bed update shipping-invoice 2022-03-06 21:12:09 +08:00
edmondlang 35cf8a20c3 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-06 16:08:21 +08:00
Leong Chee Siong a17534ae6d Merge branch 'transaction-invoice' into 'development'
notification

See merge request CIEFWorldwideSdnBhd/shipping-portal!106
2022-03-06 06:46:50 +00:00
glovetleong ab12494ba5 pdf generate 2022-03-06 14:44:49 +08:00
omair saleh b6834ac6f5 fix active customer list 2022-03-06 12:33:49 +08:00
omair saleh 200a954730 fix active customer list 2022-03-06 12:21:51 +08:00
glovetleong 499837b135 Merge branch 'development' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into transaction-invoice 2022-03-06 10:21:45 +08:00
edmondlang 537dbd4564 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-06 10:12:42 +08:00
omair saleh a4365e5c33 fix active customer list 2022-03-05 18:06:21 +08:00
omair saleh 98424eacf4 fix active customer list 2022-03-05 18:04:11 +08:00
omair saleh eb905e7176 fix active customer list 2022-03-05 17:59:02 +08:00
omair saleh 7998f6e43f show packing list receive date 2022-03-05 16:51:30 +08:00
omair saleh eb41d7c2ef show packing list receive date 2022-03-05 16:49:19 +08:00
edmondlang fd8f8d6cb4 Update copyright year using php to get current year 2022-03-05 16:47:19 +08:00
edmondlang fafd145bca Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-05 16:39:02 +08:00
edmondlang d9a3f42e87 Update copyright year using php to get current year 2022-03-05 16:38:17 +08:00
omair saleh 686ef83f31 group container packing lists by customer 2022-03-05 16:38:12 +08:00
omair saleh 5fab8224c6 group container packing lists by customer 2022-03-05 16:36:03 +08:00
omair saleh 9e95da84c4 group container packing lists by customer 2022-03-05 16:34:41 +08:00
omair saleh a54aefcf9f missing orders 2022-03-05 16:25:20 +08:00
omair saleh d217cf0ef2 missing orders 2022-03-05 16:24:39 +08:00
omair saleh 1978cf017b missing orders 2022-03-05 16:24:04 +08:00
omair saleh ea381e0bf5 missing orders 2022-03-05 16:23:32 +08:00
omair saleh de26957532 missing orders 2022-03-05 16:22:54 +08:00
omair saleh 715d26c9d2 missing orders 2022-03-05 16:18:32 +08:00
omair saleh f1432388d8 missing orders 2022-03-05 16:07:06 +08:00
omair saleh 5ca53c2124 missing orders 2022-03-05 16:02:02 +08:00
omair saleh 48dbe00744 missing orders 2022-03-05 16:00:58 +08:00
omair saleh e2df3af9cd missing orders 2022-03-05 16:00:10 +08:00
omair saleh df0b67d9b9 missing orders 2022-03-05 15:55:35 +08:00
omair saleh a28a5a0c29 missing orders 2022-03-05 15:53:56 +08:00
omair saleh 1560bdfcf8 missing orders 2022-03-05 15:48:47 +08:00
omair saleh 585e4705a4 missing orders 2022-03-05 15:47:41 +08:00
omair saleh 2e41499fd1 missing orders 2022-03-05 15:44:57 +08:00
omair saleh f3688385eb missing orders 2022-03-05 15:44:04 +08:00
omair saleh fdfae861c6 missing orders 2022-03-05 15:38:31 +08:00
omair saleh b16eddf13a missing orders 2022-03-05 15:37:43 +08:00
omair saleh dd78be57fe missing orders 2022-03-05 15:34:19 +08:00
omair saleh 49042f5507 missing orders 2022-03-05 15:29:33 +08:00
omair saleh a97faa0024 missing orders 2022-03-05 15:28:35 +08:00
omair saleh 99d7aeac5f missing orders 2022-03-05 15:26:54 +08:00
omair saleh fe340b1246 missing orders 2022-03-05 15:25:49 +08:00
omair saleh e79206a681 missing orders 2022-03-05 15:25:33 +08:00
omair saleh 1838e46d1b missing orders 2022-03-05 15:23:45 +08:00
omair saleh 6bfbac6494 missing orders 2022-03-05 15:21:34 +08:00
omair saleh 266fd7302b missing orders 2022-03-05 15:20:58 +08:00
omair saleh f7b081eb94 missing orders 2022-03-05 15:20:13 +08:00
omair saleh 388a1024b4 missing orders 2022-03-05 15:19:09 +08:00
omair saleh 899f84aed0 missing orders 2022-03-05 15:18:17 +08:00
omair saleh 4a497dd61b missing orders 2022-03-05 15:17:14 +08:00
edmondlang 02f3686768 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-03-05 14:42:18 +08:00
omair saleh 826840f992 missing orders 2022-03-05 13:51:02 +08:00
omair saleh bd5d9fe520 missing orders 2022-03-05 13:47:52 +08:00
omair saleh 34d4aeed1c missing order 2022-03-05 13:45:02 +08:00
omair saleh 6d5b6a206f missing order 2022-03-05 13:43:23 +08:00
omair saleh c9678b5be3 active customers filter list 2022-03-05 11:27:39 +08:00
omair saleh f4c252546a active customers filter list 2022-03-05 11:10:56 +08:00
omair saleh 24c8f5acbc active customers filter list 2022-03-05 10:14:13 +08:00
omair saleh 5f2d5c36a1 active customers filter list 2022-03-05 10:08:24 +08:00
omair saleh eed71a4696 Merge remote-tracking branch 'origin/development' into development 2022-03-05 09:46:47 +08:00
omair saleh d947caa1e0 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	resources/views/pages/warehouse_list.blade.php
2022-03-05 09:46:33 +08:00
omair saleh d3b6e56f76 fix missing order issue 2022-03-04 13:56:09 +08:00
omair saleh 5b692fa7a5 fix claim packing list 2022-03-03 16:49:43 +08:00
omair saleh 1413b619f6 fix claim packing list 2022-03-03 16:48:08 +08:00
omair saleh 46e49b7e5b fix container attach packing list 2022-03-02 21:06:43 +08:00
omair saleh 5201874111 show estimated parcel cbm 2022-03-02 20:43:22 +08:00
omair saleh 7426d6dff2 show estimated parcel cbm 2022-03-02 20:41:51 +08:00
omair saleh ede4231676 show estimated parcel cbm 2022-03-02 20:40:09 +08:00
omair saleh bc1a7c04db show estimated parcel cbm 2022-03-02 20:39:02 +08:00
omair saleh 5356098cc4 show estimated parcel cbm 2022-03-02 20:37:51 +08:00
omair saleh e83206ceab show estimated parcel cbm 2022-03-02 20:35:03 +08:00
omair saleh 251d44912f show estimated parcel cbm 2022-03-02 20:31:05 +08:00
omair saleh 7e4b5d8528 update yiwu warehouse west malaysia notice 2022-03-02 11:20:07 +08:00
omair saleh 9ab0133e00 debug release button 2022-03-01 20:14:40 +08:00
omair saleh 87d7a7572f debug release button 2022-03-01 20:13:25 +08:00
omair saleh 56c71e1500 debug release button 2022-03-01 20:12:04 +08:00
omair saleh d37dfa2aa8 debug release button 2022-03-01 20:11:02 +08:00
omair saleh 2fad8a5994 debug release button 2022-03-01 20:08:59 +08:00
omair saleh f3c7422e6c update announcements 2022-03-01 13:33:34 +08:00
omair saleh 22da7b5efd update announcements 2022-03-01 13:31:07 +08:00
omair saleh 5b7d6b0a2f update announcements 2022-03-01 13:26:30 +08:00
omair saleh 788b632285 update announcements 2022-03-01 13:22:46 +08:00
edmondlang 35d0d9e97b Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into development 2022-02-28 13:36:48 +08:00
omair saleh 0ef2c9bf6d fix yd yiwu warehouse selection 2022-02-28 10:51:57 +08:00
omair saleh 34532d0f68 fix detached containers 2022-02-27 15:37:25 +08:00
omair saleh 50a545595f fix detached containers 2022-02-27 15:34:13 +08:00
edmondlang 3462430474 Delivery List, Pending Delivery List
Customer Profile
2022-02-26 16:55:56 +08:00
edmondlang 60a263c508 change warehouse-list page to parcel page
add on hold parcel
2022-02-26 11:20:31 +08:00
edmondlang 5829d9c0a1 Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into shipping-updates 2022-02-26 10:43:05 +08:00
edmondlang 9a061d2f37 Warehouse Profile
settings - warehouse - view details-> warehouse details / warehouse profile page
2022-02-26 10:40:45 +08:00
omair saleh 564bac38b9 remove receive date notice, for order form 2022-02-25 13:09:27 +08:00
omair saleh ad2be90c3b exception ley key to use vt gz warehouse 2022-02-25 12:53:26 +08:00
omair saleh 47624ed8f2 fix address approval bug 2022-02-25 12:29:02 +08:00
edmondlang 528cc2f68d Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into shipping-updates
# Conflicts:
#	routes/web.php
2022-02-24 21:32:10 +08:00
omair saleh 69ede16fe9 fix address approval bug 2022-02-24 17:39:12 +08:00
omair saleh 6060c7966a fix address approval bug 2022-02-24 17:32:02 +08:00
omair saleh f8f470078c fix address approval bug 2022-02-24 17:28:11 +08:00
omair saleh e5f4068bc0 fix address approval bug 2022-02-24 17:25:40 +08:00
omair saleh e0504c8d79 fix address approval bug 2022-02-24 17:24:25 +08:00
omair saleh 3a8f64719d fix address approval bug 2022-02-24 17:16:51 +08:00
omair saleh 1d86949d54 fix container search 2022-02-24 14:37:41 +08:00
omair saleh 74b363fb12 revert temp hide setting button 2022-02-24 12:45:51 +08:00
omair saleh 1212372515 temp hide setting button 2022-02-24 12:35:35 +08:00
omair saleh e17c4cb014 temp hide setting button 2022-02-24 12:34:44 +08:00
omair saleh e4c32b5ad2 Merge branch 'development' into 'master'
hide all setting until the set up is complete

See merge request CIEFWorldwideSdnBhd/shipping-portal!107
2022-02-24 04:29:15 +00:00
omair saleh 6a86738f61 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
2022-02-24 12:27:41 +08:00
omair saleh 79d8acb50b Merge remote-tracking branch 'origin/development' into development 2022-02-24 12:24:19 +08:00
omair saleh 388973de4c Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
2022-02-24 12:24:06 +08:00
edmondlang 7292ce37e4 update function - update comapny name 2022-02-23 22:44:13 +08:00
omair saleh f2ad76a7ae Merge remote-tracking branch 'origin/development' into development 2022-02-23 21:37:21 +08:00
omair saleh 7d273b5ce6 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
2022-02-23 21:37:02 +08:00
edmondlang 15be2c14ab Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-02-23 19:08:16 +08:00
edmondlang a735885bbb cretae update comapny name function 2022-02-23 19:07:45 +08:00
omair saleh 1ed5a3e4a0 Merge remote-tracking branch 'origin/development' into development 2022-02-23 18:56:07 +08:00
omair saleh 816a40d647 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
2022-02-23 18:55:28 +08:00
edmondlang 0316b7c651 update form component file location 2022-02-23 18:44:30 +08:00
edmondlang 91415bd11d Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-02-23 18:15:27 +08:00
edmondlang f037352a28 cretae update document reference function 2022-02-23 18:13:57 +08:00
omair saleh 0f508aed3a Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
2022-02-23 18:12:03 +08:00
omair saleh 7d352a90e5 Merge remote-tracking branch 'origin/development' into development 2022-02-23 18:11:19 +08:00
omair saleh 95c37f1e1f Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
2022-02-23 17:34:41 +08:00
edmondlang a84e826c31 Create search function in container page 2022-02-23 17:26:26 +08:00
omair saleh c882450dce fix unclaimed packing lists 2022-02-23 13:57:14 +08:00
omair saleh 6fd8956892 fix unclaimed packing lists 2022-02-23 13:54:31 +08:00
omair saleh adb9a18651 fix unclaimed packing lists 2022-02-23 13:51:17 +08:00
omair saleh c932f2b86f fix unclaimed packing lists 2022-02-23 13:49:48 +08:00
omair saleh 1dc23b088e fix unclaimed packing lists 2022-02-23 13:48:34 +08:00
omair saleh 47704001dd fix unclaimed packing lists 2022-02-23 13:47:18 +08:00
omair saleh d02f395e72 fix unclaimed packing lists 2022-02-23 13:45:42 +08:00
omair saleh bdfccca2c8 fix unclaimed packing lists 2022-02-23 13:42:46 +08:00
omair saleh 97c900447f fix unclaimed packing lists 2022-02-23 13:42:12 +08:00
omair saleh 5db4b715e2 fix unclaimed packing lists 2022-02-23 13:39:16 +08:00
omair saleh 745cfef185 fix unclaimed packing lists 2022-02-23 13:37:19 +08:00
omair saleh 05aa23a645 fix unclaimed packing lists 2022-02-23 13:31:31 +08:00
omair saleh c7330fd051 fix unclaimed packing lists 2022-02-23 13:29:41 +08:00
omair saleh a4bb600a3c fix unclaimed packing lists 2022-02-23 13:29:09 +08:00
omair saleh 2631edc326 fix unclaimed packing lists 2022-02-23 13:28:44 +08:00
omair saleh c1faa710b4 fix unclaimed packing lists 2022-02-23 13:24:08 +08:00
omair saleh ab37914145 fix unclaimed packing lists 2022-02-23 13:20:35 +08:00
omair saleh c49ebe2836 fix unclaimed packing lists 2022-02-23 13:17:27 +08:00
omair saleh 85f67db797 Merge remote-tracking branch 'origin/development' into development 2022-02-23 13:12:53 +08:00
omair saleh 284b21ec51 fix unclaimed packing lists 2022-02-23 13:12:32 +08:00
edmondlang 7146600376 update service configuration form component 2022-02-21 20:53:55 +08:00
edmondlang b5b2ba59af add warehouse charges in settings 2022-02-21 20:34:25 +08:00
edmondlang fa29de775c update bugs 2022-02-21 20:00:09 +08:00
edmondlang 0496851286 update settings add state charges TAB 2022-02-21 16:11:39 +08:00
omair saleh 584fbccb93 fix yd bug 2022-02-21 14:55:58 +08:00
edmondlang 994d7ab4d9 update list postcode component 2022-02-21 14:42:10 +08:00
omair saleh 529cec7864 remove chinese new year announcement 2022-02-21 12:59:53 +08:00
edmondlang 6f30884a8c add page orders table 2022-02-20 16:38:46 +08:00
glovetleong f8a985035e notification 2022-02-18 21:57:25 +08:00
edmondlang ca3ecb0fda Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-02-17 21:50:55 +08:00
omair saleh f5a67f7e97 test vt do 2022-02-17 15:11:27 +08:00
omair saleh 288cced125 test vt do 2022-02-17 15:10:57 +08:00
omair saleh a76ce39830 test vt do 2022-02-17 15:09:40 +08:00
omair saleh 64467ea4be test vt do 2022-02-17 15:07:25 +08:00
edmondlang 09e0565988 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-02-15 21:56:22 +08:00
edmondlang 22ce6b8156 Update admin setting ui icons 2022-02-15 17:04:50 +08:00
edmondlang f810168dbb update postcodes area ui 2022-02-15 16:44:25 +08:00
omair saleh fc0809d9d2 add remark to yd address on release 2022-02-15 14:50:52 +08:00
omair saleh 29d1fb893d add remark to yd address on release 2022-02-15 11:33:10 +08:00
omair saleh f01640d9f2 add remark to yd address on release 2022-02-15 11:31:24 +08:00
omair saleh 753951a1d2 add remark to yd address on release 2022-02-15 11:30:43 +08:00
omair saleh 552b6f0e1e add remark to yd address on release 2022-02-15 11:28:42 +08:00
omair saleh 314575e2b6 add remark to yd address on release 2022-02-15 11:28:10 +08:00
omair saleh 2deea66f0a add remark to yd address on release 2022-02-15 11:25:40 +08:00
edmondlang aab739737c update code merge 2022-02-14 12:22:51 +08:00
edmondlang 595df401c2 update ui 2022-02-14 12:16:42 +08:00
edmondlang b03601cec5 Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into null_order_packing_list_ui 2022-02-14 00:09:15 +08:00
edmondlang c040dfe2c3 update null_order_packing_list_ul 2022-02-14 00:08:37 +08:00
edmondlang 0abf617a0d Merge branch 'admin-settings-ui' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into merge-dev-conflict
# Conflicts:
#	app/Classes/Modules/Announcements/DataTransferObjects/AnnouncementObject.php
#	app/Classes/Modules/Segments/ControllersLogic/CreateSegmentLogic.php
#	app/Classes/Modules/Segments/ControllersLogic/DeleteSegmentLogic.php
#	app/Classes/Modules/Segments/DataTransferObjects/SegmentObject.php
#	app/Classes/Modules/Segments/Services/CreatesSegment.php
#	app/Classes/Modules/Segments/Standards/Rules/CanCreateSegment.php
#	app/Classes/Modules/Segments/Standards/Rules/CanDeleteSegment.php
#	app/Classes/Modules/Segments/Standards/Validators/SegmentValidation.php
#	app/Http/Controllers/Announcements/AssignAnnouncementToSegmentController.php
#	app/Http/Controllers/Announcements/RemoveSegmentFromAnnouncementController.php
#	app/Http/Controllers/Segments/DeleteSegmentController.php
#	routes/announcement.php
#	routes/segment.php
#	routes/web.php
2022-02-12 20:16:33 +08:00
edmondlang ffe39f40ff Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into merge-dev-conflict 2022-02-12 20:06:27 +08:00
omair saleh 6f547b0a2f add remark to yd address on release 2022-02-12 19:53:01 +08:00
Leong Chee Siong 06785efe9b Merge branch 'transaction-invoice' into 'development'
Transaction invoice

See merge request CIEFWorldwideSdnBhd/shipping-portal!105
2022-02-12 04:00:37 +00:00
glovetleong 556c9352c8 shipping invoice 2022-02-12 11:35:12 +08:00
glovetleong d97357f33a Merge branch 'development' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into transaction-invoice 2022-02-11 14:38:57 +08:00
omair saleh 2691d7df33 fix $ is not a function bug 2022-02-10 11:26:55 +08:00
omair saleh 9df9e5bd7c fix $ is not a function bug 2022-02-10 11:13:58 +08:00
edmondlang 05b1aedda5 Merge branch 'admin-settings-ui' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/Announcements/DataTransferObjects/AnnouncementObject.php
#	app/Classes/Modules/Segments/ControllersLogic/CreateSegmentLogic.php
#	app/Classes/Modules/Segments/ControllersLogic/DeleteSegmentLogic.php
#	app/Classes/Modules/Segments/DataTransferObjects/SegmentObject.php
#	app/Classes/Modules/Segments/Services/CreatesSegment.php
#	app/Classes/Modules/Segments/Standards/Rules/CanCreateSegment.php
#	app/Classes/Modules/Segments/Standards/Rules/CanDeleteSegment.php
#	app/Classes/Modules/Segments/Standards/Validators/SegmentValidation.php
#	app/Http/Controllers/Announcements/AssignAnnouncementToSegmentController.php
#	app/Http/Controllers/Announcements/ListAnnouncementsController.php
#	app/Http/Controllers/Announcements/RemoveSegmentFromAnnouncementController.php
#	app/Http/Controllers/Announcements/UpdateAnnouncementController.php
#	app/Http/Controllers/Segments/CreateSegmentController.php
#	app/Http/Controllers/Segments/DeleteSegmentController.php
#	routes/announcement.php
#	routes/api.php
#	routes/segment.php
#	routes/web.php
2022-02-09 21:09:17 +08:00
edmondlang 7ece556475 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/Orders/Processors/ApproveChangeOrderAddressProcessor.php
#	app/Classes/Modules/Orders/Processors/UpdateDoFromYDPortalProcessor.php
#	app/Classes/Modules/PackingLists/ControllersLogic/UpdatePackingListStatusLogic.php
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
#	resources/assets/vue/components/containers/elements/ContainerComponent.vue
#	routes/web.php
2022-02-09 21:00:13 +08:00
edmondlang 919a48eb9a Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-02-09 19:30:17 +08:00
omair saleh 495574e60d Merge remote-tracking branch 'origin/development' into development 2022-02-09 19:29:06 +08:00
omair saleh c17c29ad06 add owner id filter 2022-02-09 19:28:50 +08:00
omair saleh 4c8d363e25 add owner id filter 2022-02-09 19:27:59 +08:00
omair saleh f5df10297e add yd reschedule container logic 2022-02-09 19:07:06 +08:00
Leong Chee Siong 9245793ebe Merge branch 'null_order_packing_list' into 'development'
bug

See merge request CIEFWorldwideSdnBhd/shipping-portal!104
2022-02-08 14:59:13 +00:00
edmondlang 5547e80993 Merge branch 'null_order_packing_list' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2022-02-08 22:59:02 +08:00
glovetleong 658a669a4d bug 2022-02-08 22:52:12 +08:00
Leong Chee Siong d6faaecb35 Merge branch 'null_order_packing_list' into 'development'
bug

See merge request CIEFWorldwideSdnBhd/shipping-portal!103
2022-02-08 14:16:32 +00:00
glovetleong fdc6a4adc1 bug 2022-02-08 22:15:18 +08:00
glovetleong 3dbcf81cc3 pull 2022-02-08 18:05:01 +08:00
omair saleh b3bf814d25 add yd reschedule container logic 2022-02-06 12:08:11 +08:00
omair saleh d489c0091f add yd reschedule container logic 2022-02-06 12:01:09 +08:00
omair saleh 46699784da fix yd tracking api json line break bug 2022-02-06 11:30:56 +08:00
omair saleh 1538994cc5 update chinese new year holiday announcement 2022-01-28 18:18:08 +08:00
omair saleh a5cb002b4e update chinese new year holiday announcement 2022-01-28 18:17:13 +08:00
omair saleh 7d23f86c0d update chinese new year holiday announcement 2022-01-28 18:08:40 +08:00
omair saleh 999d2f535d add over weight cbm to yd 2022-01-28 12:47:17 +08:00
omair saleh fcdf4e32d7 add over weight cbm to yd 2022-01-28 12:43:57 +08:00
omair saleh 96dd0ec72a add over weight cbm to yd 2022-01-28 12:40:20 +08:00
omair saleh 1b333e1061 add over weight cbm to yd 2022-01-28 12:38:22 +08:00
omair saleh 18a2ac1fd7 add over weight cbm to yd 2022-01-28 12:35:49 +08:00
omair saleh 52377d6ecb add over weight cbm to yd 2022-01-28 12:32:20 +08:00
omair saleh 2b956f4cfe add over weight cbm to yd 2022-01-28 12:26:05 +08:00
omair saleh e84995bcc7 add over weight cbm to yd 2022-01-28 12:25:51 +08:00
omair saleh 97bda44d61 add over weight cbm to yd 2022-01-28 12:24:10 +08:00
omair saleh fc2fe2c712 add over weight cbm to yd 2022-01-28 12:13:25 +08:00
omair saleh 983d7a5092 add over weight cbm to yd 2022-01-28 12:09:20 +08:00
omair saleh df1112f86f add over weight cbm to yd 2022-01-28 12:06:16 +08:00
omair saleh 1bfc44c1e0 add over weight cbm to yd 2022-01-28 12:05:22 +08:00
omair saleh f75d2235a2 add over weight cbm to yd 2022-01-28 12:03:20 +08:00
omair saleh 31ce575f5f add over weight cbm to yd 2022-01-28 11:57:51 +08:00
omair saleh cd6d86fb4b add over weight cbm to yd 2022-01-28 11:57:27 +08:00
omair saleh 7f7101cce5 add over weight cbm to yd 2022-01-28 11:37:54 +08:00
omair saleh a892656725 fix yd delivery address update api 2022-01-27 16:06:59 +08:00
omair saleh 86cc7faf30 fix yd delivery address update api 2022-01-27 16:03:14 +08:00
omair saleh c2ed6ce35e fix yd delivery address update api 2022-01-27 15:30:43 +08:00
omair saleh 579bcbb17f fix yd delivery address update api 2022-01-27 15:18:30 +08:00
omair saleh 4d4d9165ce fix yd delivery address update api 2022-01-27 15:16:10 +08:00
omair saleh bfcc3e1aae fix yd delivery address update api 2022-01-27 15:09:12 +08:00
omair saleh 199a18e8dd fix yd delivery address update api 2022-01-27 15:08:30 +08:00
omair saleh 33277d080a fix yd delivery address update api 2022-01-27 15:08:04 +08:00
omair saleh 5c86e7fda0 fix yd delivery address update api 2022-01-27 13:32:19 +08:00
omair saleh efdc235502 fix yd delivery address update api 2022-01-27 13:30:25 +08:00
omair saleh c89510dda7 fix yd delivery address update api 2022-01-27 13:28:05 +08:00
omair saleh a6ef50d350 fix yd delivery address update api 2022-01-27 13:23:56 +08:00
omair saleh e7164e903d fix yd delivery address update api 2022-01-27 13:21:20 +08:00
omair saleh 3eaeccc8d3 fix yd delivery address update api 2022-01-27 13:19:55 +08:00
omair saleh 8e4a6b3911 fix yd delivery address update api 2022-01-27 13:12:12 +08:00
omair saleh f9b657ab43 fix yd delivery address update api 2022-01-27 13:10:00 +08:00
omair saleh ada8117bd1 fix yd delivery address update api 2022-01-27 13:08:57 +08:00
omair saleh 402556d51b fix yd delivery address update api 2022-01-27 13:01:25 +08:00
omair saleh a60ab688da fix yd delivery address update api 2022-01-27 12:55:16 +08:00
omair saleh 5d9a08ea0b fix overlapping schedules for vt and yd 2022-01-27 12:48:55 +08:00
omair saleh e4ef885553 update order address in yd 2022-01-27 12:27:14 +08:00
omair saleh bdece13293 Merge branch 'customer_latest_order_date_export_master' into 'master'
customer export

See merge request CIEFWorldwideSdnBhd/shipping-portal!98
2022-01-27 03:50:45 +00:00
omair saleh e3cfb002a5 Merge branch 'master' into 'customer_latest_order_date_export_master'
# Conflicts:
#   app/Http/Controllers/Exports/ExportCustomersToExcelController.php
#   routes/web.php
2022-01-27 03:50:27 +00:00
omair saleh f5bace1c3b Merge branch 'null_order_packing_list' into 'development'
Null order packing list

See merge request CIEFWorldwideSdnBhd/shipping-portal!102
2022-01-27 03:48:30 +00:00
glovetleong 642e1b2d5a status 2022-01-26 17:44:36 +08:00
glovetleong d2321a3347 out 2022-01-26 17:33:58 +08:00
glovetleong 5cf7511c31 Merge branch 'development' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into null_order_packing_list 2022-01-26 17:33:15 +08:00
glovetleong 0a8109ae9e null order packing list, assign packing list 2022-01-26 17:32:14 +08:00
omair saleh 36289a3694 minor clean up 2022-01-26 13:44:38 +08:00
omair saleh 46b079462a confirm yd orders for release in china 2022-01-25 12:44:51 +08:00
omair saleh 3c83f91a27 confirm yd orders for release in china 2022-01-25 12:29:58 +08:00
omair saleh 0a51074064 confirm yd orders for release in china 2022-01-25 12:15:26 +08:00
omair saleh bd5e89e832 confirm yd orders for release in china 2022-01-25 12:11:33 +08:00
omair saleh 763cc2d38c add vue versions for cache issues 2022-01-21 19:23:15 +08:00
omair saleh a36adc7ca5 show warehouse reference to admin 2022-01-21 19:09:02 +08:00
omair saleh 950b3d168a show warehouse reference to admin 2022-01-21 19:07:11 +08:00
omair saleh a35cf282f6 show warehouse reference to admin 2022-01-21 19:06:23 +08:00
omair saleh 39408e08ca show warehouse reference to admin 2022-01-21 19:03:49 +08:00
omair saleh e472260db1 update replica packages logic and over weight price announcement 2022-01-21 17:09:15 +08:00
omair saleh 2428fac309 update replica packages logic and over weight price announcement 2022-01-21 17:08:16 +08:00
omair saleh aa681ecd93 update replica packages logic and over weight price announcement 2022-01-21 17:06:41 +08:00
omair saleh 611adf96e7 update replica packages logic and over weight price announcement 2022-01-21 16:46:27 +08:00
omair saleh d4f1184779 update replica packages logic and over weight price announcement 2022-01-21 16:42:42 +08:00
omair saleh 45acd797da update replica packages logic and over weight price announcement 2022-01-21 16:31:13 +08:00
omair saleh 4b411ddaf4 update replica packages logic and over weight price announcement 2022-01-21 16:29:15 +08:00
omair saleh c13d2ce219 update replica packages logic and over weight price announcement 2022-01-21 16:28:30 +08:00
omair saleh 412f4cc4b6 update replica packages logic and over weight price announcement 2022-01-21 16:26:15 +08:00
omair saleh 04650debbb update replica packages logic and over weight price announcement 2022-01-21 16:24:54 +08:00
omair saleh 3436ed37a1 update replica packages logic and over weight price announcement 2022-01-21 16:22:35 +08:00
omair saleh 980dd22c4b update replica packages logic and over weight price announcement 2022-01-21 16:21:55 +08:00
omair saleh 7cc43bcdd9 update replica packages logic and over weight price announcement 2022-01-21 16:20:27 +08:00
omair saleh 8487c6adf3 update replica packages logic and over weight price announcement 2022-01-21 16:00:53 +08:00
omair saleh ca5879cab0 update replica packages logic and over weight price announcement 2022-01-21 16:00:38 +08:00
omair saleh 2bb8adf175 update replica packages logic and over weight price announcement 2022-01-21 15:59:52 +08:00
omair saleh d0a873e065 update replica packages logic and over weight price announcement 2022-01-21 14:39:46 +08:00
omair saleh e6eb05739c update replica packages logic and over weight price announcement 2022-01-21 14:25:44 +08:00
omair saleh 5c4fbe2c52 fix release and hold button for packing lists 2022-01-20 11:16:52 +08:00
omair saleh 1854ca24de fix yd order number bug 2022-01-19 13:29:26 +08:00
omair saleh d93e6ea25e improve loading speed for container page 2022-01-18 15:42:24 +08:00
omair saleh 5c780ae0f9 improve loading speed for container page 2022-01-18 15:40:46 +08:00
omair saleh 5c374e2e19 improve loading speed for container page 2022-01-18 15:39:14 +08:00
edmondlang b6ed451b54 update route for warehouse details 2022-01-15 14:46:23 +08:00
edmondlang 74ede9e3dd shipping updates 2022-01-15 14:40:48 +08:00
omair saleh 438f7fdff5 fix yd fetch 2022-01-14 15:30:05 +08:00
omair saleh d6647b488f fix yd fetch 2022-01-14 15:23:00 +08:00
omair saleh 3fb7bc93d7 fix yd fetch 2022-01-14 15:17:00 +08:00
omair saleh f97fc04a2b fix yd fetch 2022-01-14 15:12:21 +08:00
omair saleh 77690cb607 fix yd fetch 2022-01-14 15:08:50 +08:00
omair saleh f876c59a0d fix yd fetch 2022-01-14 15:07:00 +08:00
omair saleh c5d5195d2d fix yd fetch 2022-01-14 15:05:36 +08:00
Leong Chee Siong 7ba48b07d1 Merge branch 'container-packing-list-export' into 'development'
export packing list

See merge request CIEFWorldwideSdnBhd/shipping-portal!101
2022-01-14 06:36:38 +00:00
glovetleong 96131c5b33 export packing list 2022-01-14 14:03:40 +08:00
edmondlang 3ae4b019ce update text-color for days ago in container page 2022-01-12 23:55:05 +08:00
edmondlang 2558e8f4f2 Revert "update text-color for days ago in container page"
This reverts commit fdec05ca45.
2022-01-12 23:11:42 +08:00
edmondlang fdec05ca45 update text-color for days ago in container page 2022-01-12 22:53:58 +08:00
edmondlang 9fe86c52bd update containers page add days ago 2022-01-12 22:26:28 +08:00
omair saleh ea34c74f6d fix monthly report 2022-01-11 19:46:18 +08:00
omair saleh 3a69ce6972 fix monthly report 2022-01-11 19:43:54 +08:00
omair saleh 83fc73acec fix monthly report 2022-01-11 19:42:13 +08:00
omair saleh e8613bd6d9 fix monthly report 2022-01-11 19:39:43 +08:00
omair saleh 3e4f627cbe fix monthly report 2022-01-11 19:37:05 +08:00
omair saleh a870d259f9 fix monthly report 2022-01-11 19:30:22 +08:00
omair saleh ed0db2e372 fix monthly report 2022-01-11 19:28:20 +08:00
omair saleh 80359cc23b fix monthly report 2022-01-11 19:26:56 +08:00
omair saleh 67867220ed fix monthly report 2022-01-11 19:26:16 +08:00
omair saleh 35206ca249 fix monthly report 2022-01-11 19:22:39 +08:00
omair saleh 394eadf6a2 remove the exempted customer list from yd warehouse 2022-01-11 18:03:43 +08:00
omair saleh 440271bc27 activate yd warehouses as default 2022-01-11 12:56:16 +08:00
omair saleh 7769a27a73 activate yd warehouses as default 2022-01-11 12:56:00 +08:00
omair saleh a28ad55508 activate yd warehouses as default 2022-01-11 12:55:05 +08:00
omair saleh 845873354f activate yd warehouses as default 2022-01-11 12:47:13 +08:00
omair saleh b065881715 activate yd warehouses as default 2022-01-11 00:55:26 +08:00
omair saleh fb5c5ad890 add yd yiwu warehouse seeder 2022-01-10 20:54:47 +08:00
omair saleh 1e37de379d update api routes 2022-01-10 15:52:51 +08:00
omair saleh be2b9d8759 update api routes 2022-01-10 15:51:20 +08:00
omair saleh aaf68b6368 fix monthly report 2022-01-08 11:01:32 +08:00
omair saleh c0577128ae fix monthly report 2022-01-08 10:53:12 +08:00
omair saleh 6a91da7b69 fix approve address change bug when doesn't exist on vt portal 2022-01-08 10:51:40 +08:00
omair saleh d6eda8a11d fix approve address change bug when doesn't exist on vt portal 2022-01-08 10:50:12 +08:00
omair saleh 5dec999cbf fix on hold and release status for packing list 2022-01-07 15:17:48 +08:00
omair saleh 99060ffa51 add new customer to yd warehouse list 2022-01-06 22:39:11 +08:00
omair saleh 73fdc2c0f4 add yiwu warehouse announcement 2022-01-06 11:28:06 +08:00
omair saleh 52038cb365 add yiwu warehouse announcement 2022-01-06 11:22:19 +08:00
omair saleh bb2f75d837 add yiwu warehouse announcement 2022-01-06 11:18:37 +08:00
Leong Chee Siong b94b87c1b7 Merge branch 'yd_sync_update' into 'development'
Yd sync update

See merge request CIEFWorldwideSdnBhd/shipping-portal!100
2022-01-05 01:17:25 +00:00
omair saleh 0aa1979611 fix yd fetch data 2022-01-04 21:32:16 +08:00
omair saleh 9e872dfb35 fix yd fetch data 2022-01-04 21:25:03 +08:00
omair saleh ff035c1f70 fix yd fetch data 2022-01-04 21:24:30 +08:00
omair saleh 8408add279 fix yd fetch data 2022-01-04 21:10:07 +08:00
omair saleh 47d6849dfa fix yd fetch data 2022-01-04 21:08:56 +08:00
omair saleh 56559d3daa fix yd fetch data 2022-01-04 21:08:45 +08:00
omair saleh bae61caae1 fix yd fetch data 2022-01-04 21:08:21 +08:00
omair saleh af07299bcf fix yd fetch data 2022-01-04 21:07:25 +08:00
omair saleh 3e26c7e8ef fix yd fetch data 2022-01-04 21:03:54 +08:00
omair saleh bac81b57f4 fix yd fetch data 2022-01-04 20:56:01 +08:00
omair saleh 1d64dc9984 fix yd fetch data 2022-01-04 20:53:49 +08:00
omair saleh bbadaa53ba fix yd fetch data 2022-01-04 20:53:01 +08:00
omair saleh e4f5210e83 fix yd fetch data 2022-01-04 20:52:26 +08:00
omair saleh 078e83477e fix yd fetch data 2022-01-04 20:50:56 +08:00
omair saleh ce6e6be2bf fix yd fetch data 2022-01-04 20:50:04 +08:00
omair saleh f608bb54f0 fix yd fetch data 2022-01-04 20:47:53 +08:00
omair saleh bb210f8583 fix yd fetch data 2022-01-04 20:46:17 +08:00
omair saleh d4016e869b fix yd fetch data 2022-01-04 20:45:20 +08:00
omair saleh e0d743b5a0 fix yd fetch data 2022-01-04 20:42:07 +08:00
omair saleh 8052ae3a11 fix yd fetch data 2022-01-04 20:41:31 +08:00
omair saleh 6a381446bc fix yd fetch data 2022-01-04 20:40:17 +08:00
omair saleh 1dbade82a7 fix yd fetch data 2022-01-04 20:39:02 +08:00
omair saleh e70d804c32 fix yd fetch data 2022-01-04 20:38:02 +08:00
omair saleh 39391990af fix yd fetch data 2022-01-04 20:37:19 +08:00
omair saleh b96dad37f5 fix yd fetch data 2022-01-04 20:26:34 +08:00
glovetleong 012904c522 yd sync update order address 2022-01-04 20:26:27 +08:00
omair saleh 90420cebe7 fix yd fetch data 2022-01-04 20:25:25 +08:00
omair saleh 04bd67573c fix yd fetch data 2022-01-04 20:23:47 +08:00
omair saleh f69c99b070 fix yd fetch data 2022-01-04 20:16:20 +08:00
omair saleh fdf4f21155 fix yd fetch data 2022-01-04 20:13:15 +08:00
omair saleh 95ab15df21 fix yd fetch data 2022-01-04 20:12:21 +08:00
omair saleh 2d885776dd fix yd fetch data 2022-01-04 20:10:55 +08:00
omair saleh 1f02b7247d fix yd fetch data 2022-01-04 20:08:09 +08:00
omair saleh ef3460f796 fix yd fetch data 2022-01-04 20:06:44 +08:00
omair saleh 8825e49b68 fix yd fetch data 2022-01-04 20:05:28 +08:00
omair saleh 7c17edc5fd fix yd fetch data 2022-01-04 20:03:12 +08:00
omair saleh 6423aa6345 fix yd fetch data 2022-01-04 20:01:34 +08:00
omair saleh d22e3884fa fix yd fetch data 2022-01-04 20:00:35 +08:00
omair saleh 263e122dea fix yd fetch data 2022-01-04 19:58:55 +08:00
omair saleh 6ecee81112 fix yd fetch data 2022-01-04 19:46:44 +08:00
omair saleh cee6ca4eee fix yd fetch data 2022-01-04 19:45:14 +08:00
omair saleh e2766c66a1 fix yd fetch data 2022-01-04 19:42:35 +08:00
glovetleong 6c94e39da8 Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal
# Conflicts:
#	app/Http/Controllers/Exports/ExportCustomersToExcelController.php
#	routes/web.php
2022-01-03 22:21:37 +08:00
omair saleh c7b6622a62 fix yd fetch data 2022-01-03 16:59:56 +08:00
omair saleh efe3a97f3e fix yd fetch data 2022-01-03 16:58:44 +08:00
omair saleh 2d167ef47e fix yd fetch data 2022-01-03 16:56:05 +08:00
omair saleh e504b31b15 fix yd fetch data 2022-01-03 16:52:51 +08:00
omair saleh 0469a725ed fix yd fetch data 2022-01-03 16:51:30 +08:00
omair saleh 68075186d4 fix yd fetch data 2022-01-03 16:50:25 +08:00
omair saleh 3897821cb7 fix yd fetch data 2022-01-03 16:47:00 +08:00
omair saleh 07d70af213 fix yd fetch data 2022-01-03 16:45:35 +08:00
omair saleh 6b491cc2e5 fix yd fetch data 2022-01-03 16:16:02 +08:00
omair saleh 53809af105 fix yd fetch data 2022-01-03 16:12:55 +08:00
omair saleh 1efbca15ec fix total cbm order component 2022-01-03 16:11:35 +08:00
omair saleh a331c659a8 debug yd orders 2022-01-03 16:08:47 +08:00
omair saleh 4a1d021b85 debug missing packages 2022-01-03 16:06:08 +08:00
omair saleh 87e155334b debug missing packages 2022-01-03 16:02:00 +08:00
omair saleh 4d594bb084 debug missing packages 2022-01-03 15:58:29 +08:00
omair saleh 5fdae14e01 debug missing packages 2022-01-03 15:57:12 +08:00
omair saleh 7b3793e6d7 debug missing packages 2022-01-03 15:54:11 +08:00
omair saleh d281017c24 fix order status count 2022-01-03 15:53:22 +08:00
omair saleh d08ded395a fix order status count 2022-01-03 15:50:17 +08:00
omair saleh 40c5692276 fix order status count 2022-01-03 15:40:38 +08:00
omair saleh 18554e9924 fix order status count 2022-01-03 15:19:15 +08:00
omair saleh 8a8fb3e03e update schedule for fetching data from api 2022-01-03 10:37:34 +08:00
omair saleh 396f9370ae set users list allowed to see original packing measurements 2022-01-03 10:13:14 +08:00
omair saleh 919cbc463b set users list allowed to see original packing measurements 2022-01-03 10:12:29 +08:00
omair saleh 78e223844f fix vt container transport bug 2022-01-03 09:46:04 +08:00
omair saleh dcfbbd63a7 fix vt container transport bug 2022-01-03 09:45:39 +08:00
omair saleh 1fc9330d98 fix vt container transport bug 2022-01-03 09:43:32 +08:00
omair saleh 9ff98196f0 fix package component bug 2022-01-03 09:32:45 +08:00
omair saleh d2fe2bfef4 adjust column size for order remark input 2022-01-03 09:28:03 +08:00
omair saleh ff0713f005 Merge branch 'development' into 'master'
Development

See merge request CIEFWorldwideSdnBhd/shipping-portal!99
2022-01-03 01:22:12 +00:00
omair saleh 7bd24b6547 clean up before production 2022-01-03 08:36:41 +08:00
omair saleh 33086eb1a6 sort customers orders by latest 2021-12-31 17:04:00 +08:00
omair saleh 82517e3cb3 sort customers orders by latest 2021-12-31 17:02:49 +08:00
omair saleh 41d9769d04 fix package component before loading to container 2021-12-29 03:30:42 +08:00
omair saleh 906623bad3 fix package component before loading to container 2021-12-29 03:29:16 +08:00
omair saleh 898205ec9d fix package component before loading to container 2021-12-29 03:28:17 +08:00
omair saleh 7b791abf80 YD curl request 2021-12-29 03:22:08 +08:00
omair saleh 27f2367e88 YD curl request 2021-12-29 03:19:28 +08:00
omair saleh 6874d09ced YD curl request 2021-12-29 03:17:44 +08:00
omair saleh eeaba20fb0 YD curl request 2021-12-29 03:16:06 +08:00
omair saleh 5599c1ba71 YD curl request 2021-12-29 02:54:49 +08:00
omair saleh 0220f876c4 YD curl request 2021-12-29 01:23:35 +08:00
omair saleh 1f0f5e8afd YD curl request 2021-12-29 01:22:47 +08:00
omair saleh 1426d6f13c YD curl request 2021-12-29 01:21:19 +08:00
omair saleh 187411237d YD curl request 2021-12-29 01:20:18 +08:00
omair saleh dac4470f72 YD curl request 2021-12-29 01:20:04 +08:00
omair saleh 65b49d4d61 YD curl request 2021-12-29 01:19:17 +08:00
omair saleh bfbe07dc8e YD curl request 2021-12-29 01:18:17 +08:00
omair saleh 4ef90f7cf2 YD curl request 2021-12-29 01:15:49 +08:00
omair saleh c07aa6c1f1 YD curl request 2021-12-29 01:13:51 +08:00
omair saleh 28ad88900e YD curl request 2021-12-29 01:05:23 +08:00
omair saleh b707717418 YD curl request 2021-12-29 01:02:11 +08:00
omair saleh 6b4d2736c5 YD curl request 2021-12-29 00:53:04 +08:00
omair saleh 9ebacae701 YD curl request 2021-12-29 00:50:32 +08:00
omair saleh e18f49b5b7 YD curl request 2021-12-29 00:48:00 +08:00
omair saleh 81a7d79e0c YD curl request 2021-12-29 00:47:07 +08:00
omair saleh c698466b3d YD curl request 2021-12-29 00:46:52 +08:00
omair saleh 8e3be2747f YD curl request 2021-12-29 00:45:44 +08:00
omair saleh 8dafa7d678 YD curl request 2021-12-29 00:44:11 +08:00
omair saleh f36bb9d090 YD curl request 2021-12-29 00:43:20 +08:00
omair saleh 87c60dc488 YD curl request 2021-12-29 00:29:38 +08:00
omair saleh e11e0307af add packing list replica 2021-12-28 22:03:11 +08:00
omair saleh 78fcb6c111 add packing list replica 2021-12-28 21:50:30 +08:00
omair saleh f0bc306ebd Merge remote-tracking branch 'origin/development' into development 2021-12-28 21:45:50 +08:00
omair saleh 0671e24916 add packing list replica 2021-12-28 21:45:16 +08:00
glovetleong a328be683e customer export 2021-12-28 17:48:50 +08:00
Leong Chee Siong 4854e9b095 Merge branch 'customer_latest_order_date_export' into 'development'
Customer latest order date export

See merge request CIEFWorldwideSdnBhd/shipping-portal!97
2021-12-28 09:37:07 +00:00
glovetleong 64a4e4b45f customer order latest date export 2021-12-28 17:35:16 +08:00
omair saleh 9774f4b823 add packing list replica 2021-12-28 15:42:42 +08:00
glovetleong 2365ad10cf Merge branch 'development' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into development
# Conflicts:
#	app/Classes/Modules/Orders/Services/FetchesDataFromYDPortal.php
#	app/Classes/Modules/PackingLists/Processors/FetchOrderListsFromYdPortalProcessor.php
#	app/Console/Commands/CurlYdOrderListCommand.php
2021-12-28 15:31:01 +08:00
omair saleh 47eb9262ad add packing list replica 2021-12-28 01:19:26 +08:00
omair saleh 9f6d0fbc79 Merge branch 'development'
# Conflicts:
#	resources/views/pages/orders/index.blade.php
2021-12-21 19:36:46 +08:00
omair saleh 22a2d7d7a1 sync vt do with shipping portal 2021-12-21 19:10:03 +08:00
omair saleh 5339799312 Merge remote-tracking branch 'origin/development' into development 2021-12-20 14:48:07 +08:00
omair saleh 565fd5eae3 fix create address logic 2021-12-20 14:47:52 +08:00
omair saleh 1156f437df Merge branch 'order-search-function' into 'development'
Order search function

See merge request CIEFWorldwideSdnBhd/shipping-portal!94
2021-12-19 05:46:09 +00:00
omair saleh c5ffe372cc Merge branch 'yb-job' into 'development'
yd-job connect

See merge request CIEFWorldwideSdnBhd/shipping-portal!91
2021-12-19 05:19:18 +00:00
omair saleh 12a51722b3 Merge branch 'announcement-backend' into 'development'
Announcement backend

See merge request CIEFWorldwideSdnBhd/shipping-portal!92
2021-12-19 05:19:09 +00:00
omair saleh 82f45007d1 update chinese new year annoucement 2021-12-17 21:54:04 +08:00
omair saleh 048cd52fc8 fix warehouse name 2021-12-17 15:07:01 +08:00
omair saleh 4a7c4f51a5 debug address contact 2021-12-17 12:23:09 +08:00
omair saleh 3f9874a0bd debug address contact 2021-12-17 12:21:44 +08:00
omair saleh c972bc87a3 debug address contact 2021-12-17 12:19:43 +08:00
omair saleh b057cd91c3 debug address contact 2021-12-17 12:17:53 +08:00
omair saleh d29ead2144 debug address contact 2021-12-17 12:16:48 +08:00
omair saleh 71eb8db3f3 debug address contact 2021-12-17 12:15:23 +08:00
omair saleh 7b1df81649 debug address contact 2021-12-17 12:14:17 +08:00
omair saleh ce1a2556b7 debug address contact 2021-12-17 12:12:34 +08:00
omair saleh bec9f121ab add packing list relationship in packing list model 2021-12-17 12:02:01 +08:00
omair saleh 1d479f6f79 Merge branch 'copy_packinglists' into 'development'
Duplicate packing list for admin CIEF reference

See merge request CIEFWorldwideSdnBhd/shipping-portal!89
2021-12-17 02:26:38 +00:00
omair saleh 550f6c6b77 Merge branch 'order-contact-remark' into 'development'
Order contact remark

See merge request CIEFWorldwideSdnBhd/shipping-portal!88
2021-12-17 02:25:17 +00:00
omair saleh 5caac091aa remove refresh orders button 2021-12-17 09:57:39 +08:00
glovetleong 1d3ab4ab2a yd-job connect 2021-12-16 21:48:59 +08:00
glovetleong 5e11b8ebdf job connect YD portal 2021-12-16 21:46:33 +08:00
edmondlang 4a158b8dac update order profile section - only super admin can edit the order reference number 2021-12-16 18:17:27 +08:00
edmondlang 280f5f4974 update order profile section - only admins can edit the order reference number 2021-12-16 13:50:04 +08:00
glovetleong 926cb61ca3 Vt sync update 2021-12-13 21:23:04 +08:00
Fairuz 3aec23525c Duplicate packing list for admin CIEF reference 2021-12-13 11:45:48 +08:00
glovetleong 992e5b0008 Merge branch 'development' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into order-contact-remark
# Conflicts:
#	routes/web.php
2021-12-09 16:01:17 +08:00
omair saleh 0f0e99af35 fix announcement position 2021-12-08 15:53:47 +08:00
omair saleh da1c653570 debug loaded container job 2021-12-07 13:08:20 +08:00
omair saleh f86f129949 debug loaded container job 2021-12-07 13:06:47 +08:00
omair saleh ec24033209 debug loaded container job 2021-12-07 13:05:20 +08:00
omair saleh e3dd8440df debug loaded container job 2021-12-07 13:01:38 +08:00
omair saleh 7647dc0e23 debug loaded container job 2021-12-07 12:58:53 +08:00
omair saleh 3bfb67b55a debug loaded container job 2021-12-07 12:55:01 +08:00
omair saleh a26368b728 debug loaded container job 2021-12-07 12:36:59 +08:00
omair saleh a1a9ffa0aa debug loaded container job 2021-12-07 12:32:44 +08:00
omair saleh c3050445e1 debug loaded container job 2021-12-07 12:32:16 +08:00
omair saleh 3620e4c4b5 debug loaded container job 2021-12-07 12:30:39 +08:00
omair saleh 3dafe41c33 debug loaded container job 2021-12-07 12:04:38 +08:00
omair saleh e28cc43b18 debug loaded container job 2021-12-07 12:00:13 +08:00
omair saleh 80873a14e2 debug loaded container job 2021-12-07 11:56:32 +08:00
omair saleh 799936fd8b debug loaded container job 2021-12-07 11:55:05 +08:00
omair saleh c6d4a6ffae debug loaded container job 2021-12-07 11:49:35 +08:00
omair saleh bc5a8bce47 debug loaded container job 2021-12-07 11:47:27 +08:00
omair saleh 2c03e68242 update chinese new year announcment 2021-12-06 11:35:00 +08:00
omair saleh 857004a6a5 update chinese new year announcment 2021-12-06 10:37:05 +08:00
omair saleh 35b2d526ed list yiwu to sabah or srawak orders 2021-12-03 14:16:26 +08:00
omair saleh 7e7290acc5 list yiwu to sabah or srawak orders 2021-12-03 14:02:27 +08:00
omair saleh 5256d5b2f9 list yiwu to sabah or srawak orders 2021-12-03 14:00:50 +08:00
omair saleh e8c33e46c4 list yiwu to sabah or srawak orders 2021-12-03 13:55:58 +08:00
omair saleh 5afd37652c list yiwu to sabah or srawak orders 2021-12-03 13:55:28 +08:00
omair saleh aeb0dfb025 list yiwu to sabah or srawak orders 2021-12-03 13:54:16 +08:00
omair saleh 1a591c0404 list yiwu to sabah or srawak orders 2021-12-03 13:53:13 +08:00
omair saleh 22c07b19ad list yiwu to sabah or srawak orders 2021-12-03 13:52:10 +08:00
omair saleh 9d2dceab2e Merge remote-tracking branch 'origin/master' 2021-12-03 13:45:27 +08:00
omair saleh d00be021bc list yiwu to sabah or srawak orders 2021-12-03 13:45:12 +08:00
omair saleh 3d89a25f5c remove list yiwu to sabah or srawak orders 2021-12-03 13:44:42 +08:00
omair saleh 13c4b173d3 list yiwu to sabah or srawak orders 2021-12-03 13:44:08 +08:00
edmondlang 0bbf0f9138 move admin setting ui components from exchange 2021-12-02 18:45:59 +08:00
edmondlang 2c39c66a2d update setting page enable team settings 2021-11-30 17:23:14 +08:00
omair saleh 3a74fa5e12 add contact and remark to address 2021-11-29 11:46:43 +08:00
omair saleh 098297188d add contact and remark to address 2021-11-29 11:44:02 +08:00
omair saleh 4440f229d9 add contact and remark to address 2021-11-29 11:33:26 +08:00
omair saleh 32465e2170 add contact and remark to address 2021-11-28 21:03:04 +08:00
omair saleh 5d9782d1c9 package tracking page 2021-11-28 20:19:09 +08:00
omair saleh 036f389308 package tracking page 2021-11-28 19:29:06 +08:00
omair saleh 3de95f7019 package tracking page 2021-11-28 19:27:02 +08:00
omair saleh 0dc1a3c289 package tracking page 2021-11-28 19:24:18 +08:00
omair saleh 4302b42ad8 package tracking page 2021-11-28 19:22:28 +08:00
omair saleh 95daebb8f1 package tracking page 2021-11-28 19:21:27 +08:00
omair saleh 2cc0465165 package tracking page 2021-11-28 19:19:18 +08:00
omair saleh d626c0bb51 package tracking page 2021-11-28 16:49:40 +08:00
edmondlang a56b5c64ba update admin setting - change email address 2021-11-28 14:51:06 +08:00
omair saleh 4601d5191b package tracking page 2021-11-28 14:31:05 +08:00
omair saleh 13fa349605 package tracking page 2021-11-28 14:28:17 +08:00
omair saleh bb2e6f0c67 package tracking page 2021-11-28 14:21:36 +08:00
omair saleh c681e89d34 Merge remote-tracking branch 'origin/development' into development 2021-11-28 13:55:27 +08:00
omair saleh fd686d9ca5 fix contact processor and remarks database 2021-11-28 13:55:13 +08:00
edmondlang 86401cdad6 hide all setting until the set up is complete
update user reset password
2021-11-27 22:34:56 +08:00
edmondlang 327c2958c4 adjust alignment for order remarks 2021-11-27 21:37:40 +08:00
edmondlang 92c086a5bc clear merge bug dupplicated code 2021-11-27 17:24:30 +08:00
edmondlang cc5b39e457 Merge branch 'development' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into development 2021-11-27 17:06:59 +08:00
omair saleh 42883b3723 Merge branch 'remark-create-api' into 'master'
remark for order, container, packing list

See merge request CIEFWorldwideSdnBhd/shipping-portal!80
2021-11-26 07:23:42 +00:00
omair saleh 634d4b8b7d Merge branch 'master' into 'remark-create-api'
# Conflicts:
#   app/Models/Container.php
#   app/Models/PackingList.php
#   routes/order.php
#   routes/packing_list.php
2021-11-26 07:23:35 +00:00
omair saleh 6255936cd1 Merge branch 'container-profile-forms-ui' into 'master'
Container profile forms ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!86
2021-11-26 07:14:27 +00:00
omair saleh b31c8d508c Merge branch 'update-id-number' into 'development'
Update id number

See merge request CIEFWorldwideSdnBhd/shipping-portal!85
2021-11-26 07:10:16 +00:00
omair saleh 90c1c037ca Merge branch 'development' into 'update-id-number'
# Conflicts:
#   resources/assets/vue/components/orders/sections/OrderProfileSectionComponent.vue
2021-11-26 07:10:09 +00:00
omair saleh 20289c7f1e Merge branch 'order-remark-backend' into 'development'
Order remark backend

See merge request CIEFWorldwideSdnBhd/shipping-portal!83
2021-11-26 02:34:25 +00:00
omair saleh ac1fc3103b add customer to new warehouse list 2021-11-26 10:11:13 +08:00
omair saleh cf6bebcde2 Merge branch 'development' into 'master'
Development

See merge request CIEFWorldwideSdnBhd/shipping-portal!82
2021-11-26 01:56:02 +00:00
omair saleh a6fc5dd1a5 change warehouse address format 2021-11-25 17:08:44 +08:00
omair saleh fa88ffca49 add marking to new warehouse special list 2021-11-25 03:18:12 +08:00
omair saleh 2b6a2810e5 clean up company module un used dependencies 2021-11-25 03:11:20 +08:00
omair saleh c67ee25654 add new yd Guangzhou warehouse 2021-11-25 03:08:32 +08:00
omair saleh f1cde19261 hide login as exchange 2021-11-20 10:47:03 +08:00
omair saleh b7e5475014 hide login as exchange 2021-11-20 10:42:18 +08:00
omair saleh a75c05fdae update container shortage announcement 2021-11-09 23:58:17 +08:00
omair saleh 3327b8a4f5 update container shortage announcement 2021-11-09 23:54:39 +08:00
omair saleh 604413d978 update container shortage announcement 2021-11-09 23:54:14 +08:00
edmondlang 558868d859 update setting edit full name 2021-11-06 20:43:39 +08:00
omair saleh a25feacf53 categorise containers 2021-11-03 20:42:35 +08:00
omair saleh 1090de9060 categorise containers 2021-11-02 23:08:41 +08:00
omair saleh 1c721f7f10 categorise containers 2021-11-02 23:05:42 +08:00
omair saleh 4813c54e6d categorise containers 2021-11-02 23:03:45 +08:00
omair saleh b79ecdc6a9 categorise containers 2021-11-02 22:41:39 +08:00
omair saleh 7fa70becde categorise containers 2021-11-02 22:39:24 +08:00
omair saleh 57a0ea535a categorise containers 2021-11-02 22:38:41 +08:00
omair saleh f84415ce89 categorise containers 2021-11-02 22:37:32 +08:00
omair saleh 0b79ff5521 categorise containers 2021-11-02 22:29:46 +08:00
omair saleh d0f209b006 categorise containers 2021-11-02 22:28:23 +08:00
omair saleh 8cec7b436f categorise containers 2021-11-02 22:25:59 +08:00
omair saleh d2468769df categorise containers 2021-11-02 22:24:39 +08:00
omair saleh 884f4b33d1 categorise containers 2021-11-02 22:20:47 +08:00
omair saleh c15f67e304 order container by loading date 2021-11-02 21:40:35 +08:00
omair saleh f5ea06e3fe show packages quantity loaded into container 2021-11-02 21:32:20 +08:00
edmondlang 6fcf952967 update order remark ui 2021-11-02 00:00:31 +08:00
edmondlang b0a2ab08c9 tody up container forms component 2021-10-31 19:10:16 +08:00
edmondlang e0a78cc126 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into order-remark-backend 2021-10-31 15:45:55 +08:00
edmondlang 5e7cfd4da0 tidy up the order remark backend api 2021-10-31 15:43:57 +08:00
edmondlang feec49318b update container profile comment section with api 2021-10-30 17:11:28 +08:00
omair saleh 9977d516e1 fix order by arrival date 2021-10-30 12:49:22 +08:00
omair saleh c9131b3c3d order warehouse parcels by arrival date 2021-10-30 12:37:52 +08:00
omair saleh 2675fd8704 Merge branch 'create-new-filter-to-order-by-arrival-dates'
# Conflicts:
#	routes/api.php
2021-10-30 12:30:58 +08:00
omair saleh 02c6825c4a Merge branch 'create-new-filter-to-order-by-arrival-dates'
# Conflicts:
#	routes/api.php
2021-10-30 12:24:44 +08:00
omair saleh 908e0a49f9 Merge branch 'create-new-filter-to-order-by-arrival-dates'
# Conflicts:
#	routes/api.php
2021-10-30 12:23:58 +08:00
edmondlang 9252134cc4 wip update container comments(remarks) section and implement api 2021-10-29 16:20:05 +08:00
edmondlang 6444f471e8 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into order-remark-backend
# Conflicts:
#	app/Classes/Modules/PackingLists/ControllersLogic/Containers/CreateContainerRemarkLogic.php
#	app/Models/Order.php
2021-10-28 00:31:48 +08:00
omair saleh cf03a032e5 create container remark 2021-10-27 21:20:01 +08:00
edmondlang 149029bc24 change settings page input label design 2021-10-26 18:46:43 +08:00
edmondlang ab84ca4719 move settings ui from exchange 2021-10-26 11:46:49 +08:00
omair saleh 2cb8f9f407 show change ratio for profit model calculator 2021-10-26 10:51:06 +08:00
edmondlang a846028919 wip 2021-10-25 22:49:42 +08:00
edmondlang 274cd83c81 order search funtion 2021-10-25 22:26:19 +08:00
omair saleh ef1759379e disable customer order scope to temp fix pdf download issue 2021-10-25 14:54:46 +08:00
omair saleh ad9b983325 optimise order queries 2021-10-25 14:29:24 +08:00
omair saleh fc36a193e9 optimise order queries 2021-10-25 14:28:55 +08:00
omair saleh 86d26edb72 Merge branch 'improve-responsive-ui' into 'master'
improve responsive ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!78
2021-10-25 05:56:44 +00:00
omair saleh 052218b621 Merge branch 'delivery-packing-list-ui' into 'master'
Delivery packing list ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!76
2021-10-25 05:54:58 +00:00
omair saleh da52ddd3ac Merge branch 'cross-login' into 'master'
Cross login

See merge request CIEFWorldwideSdnBhd/shipping-portal!75
2021-10-25 05:54:01 +00:00
omair saleh 6cfed45ffe Merge branch 'create-deliver-packing-list-api' into 'master'
create deliver packing list api

See merge request CIEFWorldwideSdnBhd/shipping-portal!74
2021-10-25 05:53:33 +00:00
omair saleh a048a79ca8 Merge branch 'cbm_calc' into 'master'
Shipping Cost Calculations

See merge request CIEFWorldwideSdnBhd/shipping-portal!70
2021-10-25 05:49:04 +00:00
edmondlang 487d024039 wip 2021-10-23 15:00:16 +08:00
edmondlang 6a4e2926b9 wip 2021-10-23 13:55:38 +08:00
omair saleh e7afc0bc10 profit model calculator 2021-10-22 14:28:30 +08:00
omair saleh 999c29411f profit model calculator 2021-10-22 14:27:02 +08:00
omair saleh c5183ac0a7 create container remark 2021-10-21 21:25:13 +08:00
omair saleh 896a101fad fix createRemark service class 2021-10-21 21:21:26 +08:00
omair saleh 0d6df7ec0c add remarkable interface 2021-10-21 21:04:41 +08:00
edmondlang 25c36d085f code review update id number, min length 2021-10-21 15:50:31 +08:00
omair saleh dd38f41f47 show order numbers with shipped more than received 2021-10-21 13:40:35 +08:00
omair saleh 062b2fb908 show orders with shipping packing list more than warehouse received list 2021-10-21 13:29:22 +08:00
omair saleh 7c027ef62f remove typhoon announcement 2021-10-21 13:11:55 +08:00
omair saleh 6137012a35 remove report web route 2021-10-21 12:43:57 +08:00
omair saleh c79f4cfdab update reference eloquent filter to small letters 2021-10-21 12:42:13 +08:00
edmondlang ba0dbf80a1 update order no 2021-10-21 00:38:16 +08:00
edmondlang afba2d6880 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into update-id-number 2021-10-20 22:16:08 +08:00
edmondlang 39771a42b6 Merge branch 'update-id-number' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into update-id-number 2021-10-20 22:14:37 +08:00
omair saleh 073f89be12 fix package component buy when they shipping schedule is not set 2021-10-20 14:59:15 +08:00
omair saleh 3752d71b4f fix package component bug when the schedule is not set 2021-10-20 14:57:08 +08:00
omair saleh b82f3b9f45 update sales report, show unloaded cbm 2021-10-19 18:28:37 +08:00
Obenny 624df67ca5 copied modules, resources, and updated route files 2021-10-18 19:38:56 +08:00
ahmedsophyudden 3f73848c18 Create new filter to order by arrival dates 2021-10-18 11:22:56 +08:00
Fairuz 63aae14b28 Shipping Cost Calculations 2021-10-18 10:04:33 +08:00
Obenny ea6711f06b copied controllers, models, migrations 2021-10-17 21:43:25 +08:00
Obenny 8c23d178e8 copied migrations, model, controllers, routes 2021-10-17 21:33:40 +08:00
glovetleong aae9f160e6 simplify order resource 2021-10-17 17:55:16 +08:00
ahmedsophyudden ba61f7f3ab add & delete segment api 2021-10-15 19:18:09 +08:00
omair saleh 4a3b3344e7 customer notice 2021-10-15 16:00:11 +08:00
omair saleh ae42e1e03b update notice to customer profiles 2021-10-15 15:55:22 +08:00
omair saleh 8ba5f95690 reference lik eloquent filter 2021-10-13 21:05:08 +08:00
edmondlang 04117754db Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into improve-responsive-ui 2021-10-13 20:33:18 +08:00
edmondlang 821a39e5ff improve responsive ui 2021-10-13 20:23:59 +08:00
glovetleong 05cb3dd35e cross login 2021-10-13 14:10:32 +08:00
omair saleh 70cc67a559 reposition the order refresh button 2021-10-13 11:26:42 +08:00
omair saleh 149376e4b5 don't show rejected company identifications 2021-10-13 11:17:59 +08:00
omair saleh d5dd880d9e customer report 2021-10-12 19:09:00 +08:00
omair saleh fa628e81ac customer reports 2021-10-12 19:07:41 +08:00
omair saleh 51a6569cf0 show received cbm in sales report 2021-10-12 18:30:00 +08:00
omair saleh 886f091f6a customer report 2021-10-12 17:16:47 +08:00
omair saleh b22b4c374a customer report 2021-10-12 17:12:53 +08:00
omair saleh 2b065cb4a8 customer report 2021-10-12 17:12:26 +08:00
omair saleh bcf7ae4098 fix daily cbm report 2021-10-12 14:07:21 +08:00
omair saleh b355df27db fix daily cbm report 2021-10-12 13:57:35 +08:00
omair saleh c33649fda2 fix daily cbm report 2021-10-12 13:54:46 +08:00
omair saleh 4615843e17 fix daily cbm report 2021-10-12 13:44:31 +08:00
omair saleh 40f51a0f60 ui fix 2021-10-12 13:16:41 +08:00
omair saleh 2c3dff7e77 update datepicker vue component 2021-10-12 13:15:09 +08:00
omair saleh 8178cda2b4 create sales report range frontend 2021-10-12 13:13:12 +08:00
omair saleh 04215916f5 add report from to filters 2021-10-12 12:25:26 +08:00
ahmedsophyudden 5b5bf1bb06 add & delete segment api 2021-10-12 11:29:09 +08:00
glovetleong 3d7090758d Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into cross-login 2021-10-12 08:53:57 +08:00
ahmedsophyudden e546825520 New add & delete company connection to connection segment api 2021-10-11 22:28:11 +08:00
omair saleh 25f9db99c7 temp show specific report period 2021-10-11 15:13:27 +08:00
omair saleh 04f248e88d temp show specific report period 2021-10-11 15:12:36 +08:00
omair saleh 70e53c197c temp show specific report period 2021-10-11 15:04:11 +08:00
omair saleh 642731b680 temp show specific report period 2021-10-11 15:02:53 +08:00
omair saleh 7bd3ae056d temp show specific report period 2021-10-11 15:00:18 +08:00
omair saleh e58805a023 temp show specific report period 2021-10-11 14:58:45 +08:00
omair saleh fdce49ea82 temp show specific report period 2021-10-11 14:56:40 +08:00
omair saleh 90a0c4ddf5 temp show specific report period 2021-10-11 14:54:52 +08:00
omair saleh f963b012ec temp show specific report period 2021-10-11 14:53:02 +08:00
omair saleh d8289599c9 temp show specific report period 2021-10-11 14:52:30 +08:00
omair saleh 7965398c5a temp show specific report period 2021-10-11 14:51:57 +08:00
omair saleh a1b5737935 temp show specific report period 2021-10-11 14:51:15 +08:00
omair saleh 72400f2ab2 temp show specific report period 2021-10-11 14:48:12 +08:00
omair saleh 6badfadd2d temp show specific report period 2021-10-11 14:47:40 +08:00
omair saleh b9a65005e6 temp show specific report period 2021-10-11 14:44:56 +08:00
omair saleh 190ed6c5f9 temp show specific report period 2021-10-11 14:43:39 +08:00
omair saleh 7c96f3039a temp show specific report period 2021-10-11 14:42:45 +08:00
omair saleh fbb7d31726 temp show specific report period 2021-10-11 14:41:37 +08:00
omair saleh 3d1fb48cfb temp show specific report period 2021-10-11 14:39:30 +08:00
omair saleh f2e944cc0b temp show specific report period 2021-10-11 14:38:23 +08:00
omair saleh 44d7507cbd temp show specific report period 2021-10-11 14:37:13 +08:00
omair saleh 0a32d64e8d temp show specific report period 2021-10-11 14:35:15 +08:00
omair saleh f1edf72fb8 temp show specific report period 2021-10-11 14:32:54 +08:00
omair saleh c85248bc0f temp show specific report period 2021-10-11 14:31:02 +08:00
omair saleh 1aad4de653 temp show specific report period 2021-10-11 14:29:05 +08:00
omair saleh ae031078bc temp show specific report period 2021-10-11 14:28:05 +08:00
omair saleh d5d2a13e31 temp show specific report period 2021-10-11 14:25:47 +08:00
omair saleh 6809bfc693 temp show specific report period 2021-10-11 14:24:44 +08:00
omair saleh a21465992f temp show specific report period 2021-10-11 14:23:14 +08:00
omair saleh f844f5d879 show delivery status in container component 2021-10-11 13:17:05 +08:00
omair saleh 959e5dc970 remove duplicated try catch from logic 2021-10-11 11:01:43 +08:00
omair saleh 149469598e remove unused dependencies from route file 2021-10-11 11:00:53 +08:00
omair saleh fce976ff6b show refresh orders button only in orders page 2021-10-11 10:58:18 +08:00
omair saleh 4b0e1b4b78 change the definition of destination warehouse arrival 2021-10-11 10:53:34 +08:00
omair saleh e6f13fd3d0 change the definition of destination warehouse arrival 2021-10-11 10:39:37 +08:00
edmondlang f6af7c5f4f code review remove d-flex 2021-10-10 15:42:26 +08:00
edmondlang 6ea51d56c1 improve responsive ui
fix order status bar width problem
2021-10-10 15:38:48 +08:00
glovetleong b36313e24c remark for order, container, packing list 2021-10-10 15:22:49 +08:00
edmondlang f2422ea45c improve responsive ui 2021-10-09 20:59:23 +08:00
edmondlang d26c90136b improve responsive 2021-10-09 20:43:40 +08:00
edmondlang c10e78ad51 imporve respnsive ui 2021-10-09 17:32:44 +08:00
omair saleh 8a40ea35ee show daily target 2021-10-08 23:23:18 +08:00
omair saleh 19d0802d0e show daily target 2021-10-08 23:21:15 +08:00
omair saleh 95bd1ca6af add customer without orders list 2021-10-08 22:35:54 +08:00
omair saleh e6c42ef55c add customer without orders list 2021-10-08 22:34:54 +08:00
omair saleh a9c914b41c add customer without orders list 2021-10-08 21:45:37 +08:00
omair saleh c00239c959 add customer without orders list 2021-10-08 21:43:55 +08:00
omair saleh b4844874bb add customer without orders list 2021-10-08 21:42:26 +08:00
omair saleh 1b3c63e05d add customer without orders list 2021-10-08 21:41:06 +08:00
omair saleh c3b0e55271 add customer without orders list 2021-10-08 21:37:45 +08:00
omair saleh 9463bc9478 add customer without orders list 2021-10-08 21:17:49 +08:00
edmondlang e4c8c021ec implement api from create-delivery-packing-list-api 2021-10-07 20:02:56 +08:00
edmondlang 46891669f1 Merge branch 'create-deliver-packing-list-api' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into delivery-packing-list-ui 2021-10-07 10:58:09 +08:00
glovetleong c281beb87a create deliver packing list api 2021-10-07 09:20:04 +08:00
omair saleh 500917fbba make the service chart thinner 2021-10-06 21:56:37 +08:00
omair saleh 9af8dd0d0e fix sales report decimals 2021-10-06 21:54:08 +08:00
omair saleh 2895acc8fc fix sales report decimals 2021-10-06 21:52:28 +08:00
omair saleh 33cd2cef7d fix sales report decimals 2021-10-06 21:50:26 +08:00
omair saleh d2485eaae7 fix sales report decimals 2021-10-06 21:49:05 +08:00
omair saleh 0a5aa9843d show current months sales report 2021-10-06 21:40:58 +08:00
omair saleh 0dbdeba0d2 show september sales report 2021-10-06 21:38:03 +08:00
omair saleh fbd108e8e8 increase fetch container date range limit 2021-10-06 21:34:48 +08:00
omair saleh 52ec457b52 service report 2021-10-06 15:18:40 +08:00
omair saleh f159bf7982 service report 2021-10-06 15:17:06 +08:00
omair saleh 5386700762 service report 2021-10-06 14:15:41 +08:00
omair saleh 5aefef5366 service report 2021-10-05 20:54:19 +08:00
edmondlang 0d53a61f18 update select all packing list funtion 2021-10-05 20:40:48 +08:00
omair saleh 943ec5f7f7 service report 2021-10-05 17:02:17 +08:00
edmondlang 6d0e7dd51d delivery-packing-list-ui 2021-10-05 17:00:00 +08:00
omair saleh 647103f387 service report 2021-10-05 14:57:52 +08:00
omair saleh 9340d4360e update monthly report 2021-10-05 14:24:43 +08:00
omair saleh ebbe2c7863 hide buttons create container button 2021-10-04 16:32:34 +08:00
omair saleh 73dbb41044 hide buttons for packing lists 2021-10-04 16:28:27 +08:00
omair saleh 3dfceeaf37 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	app/Http/Resources/OrderResource.php
#	resources/assets/vue/components/orders/sections/OrderProfileSectionComponent.vue
2021-10-04 16:21:44 +08:00
omair saleh 509f14c790 improve load speed by cleaning the resources to reduce the number of queries submitted per request 2021-10-04 16:17:10 +08:00
omair saleh 33a8d370c5 Merge branch 'container-profile-ui' into 'master'
add 'ADD Container' button

See merge request CIEFWorldwideSdnBhd/shipping-portal!68
2021-10-04 05:27:58 +00:00
omair saleh ad4b8a821c Merge branch 'packaging-list-schedule' into 'master'
create package list ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!66
2021-10-04 05:26:18 +00:00
omair saleh 6c276b59b1 Merge branch 'package-ui-create' into 'master'
create package list ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!55
2021-10-04 05:25:35 +00:00
omair saleh b57a511bb6 Merge branch 'task/EXC-338' into 'master'
Inbound custom cleared

See merge request CIEFWorldwideSdnBhd/shipping-portal!67
2021-10-04 05:25:04 +00:00
glovetleong 8314820204 packing schedule, transport, complete 2021-10-03 21:22:59 +08:00
glovetleong a2cc1e5e4f Merge branch 'package-ui-create' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into packaging-list-schedule 2021-10-03 20:42:46 +08:00
glovetleong 17fb297942 pull 2021-10-03 20:42:35 +08:00
edmondlang b12da6ff44 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into container-profile-ui
# Conflicts:
#	resources/assets/vue/components/containers/elements/ContainerProfileSectionComponent.vue
#	routes/web.php
2021-10-03 18:13:20 +08:00
edmondlang cf78e92c5f update container profile section component 2021-10-03 18:07:25 +08:00
edmondlang 7db7553dca Update container profile forms 2021-10-03 18:00:58 +08:00
edmondlang fa1871d712 modify modal add data-dismiss="modal" 2021-10-03 17:06:11 +08:00
omair saleh 16b35b34b3 customer report 2021-10-02 15:24:02 +08:00
omair saleh 33f152ae9c customer report 2021-10-02 15:22:28 +08:00
omair saleh 93c9412298 customer report 2021-10-02 15:17:22 +08:00
omair saleh c74e2927ad customer report 2021-10-02 15:15:27 +08:00
omair saleh 95f52b3a62 customer report 2021-10-02 15:06:10 +08:00
omair saleh 24a286a5a2 customer report 2021-10-02 15:00:49 +08:00
omair saleh bbc247d67e customer report 2021-10-02 14:59:15 +08:00
omair saleh 019073afc5 customer report 2021-10-01 21:25:02 +08:00
omair saleh feb04e8498 customer report 2021-10-01 21:14:33 +08:00
omair saleh 557d85ef8d customer report 2021-10-01 20:45:00 +08:00
omair saleh 1e5df1d64b customer report 2021-10-01 19:50:44 +08:00
omair saleh 186d6f71c6 customer report 2021-10-01 19:48:04 +08:00
omair saleh 2f11666539 customer report 2021-10-01 19:46:00 +08:00
omair saleh 87e9dbe3ec customer report 2021-10-01 19:43:50 +08:00
omair saleh 626ba6bbf4 customer report 2021-10-01 19:40:12 +08:00
omair saleh 8b5ac008d3 customer report 2021-10-01 19:37:12 +08:00
omair saleh ccd7d91076 customer report 2021-10-01 19:35:55 +08:00
omair saleh 7bde77036d customer report 2021-10-01 19:34:25 +08:00
omair saleh bf7443887c customer report 2021-10-01 19:26:42 +08:00
omair saleh 933f39d280 container monthly report 2021-10-01 18:33:29 +08:00
omair saleh 463d342441 container monthly report 2021-10-01 18:33:19 +08:00
omair saleh 27e856bc4d container monthly report 2021-10-01 18:23:10 +08:00
omair saleh 8f381b42f3 container monthly report 2021-10-01 18:18:40 +08:00
omair saleh 1af45e5132 container monthly report 2021-10-01 18:17:17 +08:00
omair saleh 6c5bbf842e container report 2021-10-01 18:16:56 +08:00
omair saleh 96d701bc80 container monthly report 2021-10-01 18:14:46 +08:00
omair saleh 9221bd094c count total containers 2021-10-01 18:11:15 +08:00
omair saleh c76271d8ab loaded cbm monthly report 2021-10-01 18:02:09 +08:00
omair saleh 26a0bc186e total loaded cbm monthly report 2021-10-01 18:00:07 +08:00
omair saleh 2305ddb39d fix container component ui 2021-10-01 17:55:06 +08:00
omair saleh c66273874d marking container loading date as a timestamp in the modal 2021-10-01 17:52:28 +08:00
omair saleh 9ef636c5d5 add container loading date 2021-10-01 17:49:59 +08:00
omair saleh 9b9292546b test updating loading date for containers from vt portal 2021-10-01 17:45:37 +08:00
omair saleh 2974fe4e9a test updating loading date for containers from vt portal 2021-10-01 17:44:20 +08:00
omair saleh e93da67ec1 test updating loading date for containers from vt portal 2021-10-01 17:43:46 +08:00
omair saleh 7c14b74dd1 test updating loading date for containers from vt portal 2021-10-01 17:42:44 +08:00
omair saleh b9b05dfdbe test updating loading date for containers from vt portal 2021-10-01 17:41:42 +08:00
omair saleh e5e00bb9ac test updating loading date for containers from vt portal 2021-10-01 17:40:19 +08:00
omair saleh c6e222caf2 add loading date for container table 2021-10-01 17:35:19 +08:00
omair saleh 973ab58818 hint claim id 2021-09-30 16:12:48 +08:00
glovetleong 592e8c489b env 2021-09-29 14:24:37 +08:00
glovetleong ee77fd236a cross login 2021-09-29 14:23:50 +08:00
Fairuz 2ae879fd51 Inbound custom cleared 2021-09-29 04:38:41 +08:00
glovetleong ee87443ca4 pull 2021-09-28 22:23:51 +08:00
glovetleong 31105cfcef Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into cross-login 2021-09-28 22:09:05 +08:00
glovetleong 5d34201579 pull 2021-09-28 22:07:19 +08:00
Haziq Danial 61a75a4ee1 update order reference id 2021-09-28 18:51:43 +08:00
omair saleh 8e9db507f6 fix template routes, and hide report button temp 2021-09-28 15:55:24 +08:00
omair saleh 943f5ce64e add custom clearance routes 2021-09-28 13:24:29 +08:00
omair saleh 2c3ea9e3f1 order component address tooltip layout fixes 2021-09-28 13:23:56 +08:00
glovetleong f385407804 debug 2021-09-28 12:07:05 +08:00
edmondlang a69ecc2825 update create load container form 2021-09-27 23:56:13 +08:00
edmondlang d13aad9566 container profile forms ui 2021-09-27 21:56:04 +08:00
omair saleh 579200fd61 Merge branch 'task/EXC-337' into 'master'
Task/exc 337

See merge request CIEFWorldwideSdnBhd/shipping-portal!65
2021-09-27 09:10:51 +00:00
omair saleh 37d06798aa Merge branch 'master' into 'task/EXC-337'
# Conflicts:
#   routes/web.php
2021-09-27 09:10:46 +00:00
omair saleh 09a3654e2f add packing list inbound custom route 2021-09-27 17:05:58 +08:00
omair saleh 1c5fbec0b9 Merge branch 'task/EXC-338' into 'master'
Inbound custom cleared

See merge request CIEFWorldwideSdnBhd/shipping-portal!64
2021-09-27 09:04:39 +00:00
omair saleh c8820ad39e Merge branch 'master' into 'task/EXC-338'
# Conflicts:
#   routes/packing_list.php
2021-09-27 09:04:15 +00:00
omair saleh 4122ac4153 Merge branch 'assign-packing-list' into 'master'
assign packing list to container

See merge request CIEFWorldwideSdnBhd/shipping-portal!63
2021-09-27 09:01:15 +00:00
omair saleh 6959370b7a Merge branch 'package-switch-packing-list' into 'master'
package switch packing list

See merge request CIEFWorldwideSdnBhd/shipping-portal!62
2021-09-27 09:00:22 +00:00
omair saleh d7b4e716d8 Merge remote-tracking branch 'origin/master' 2021-09-27 16:59:23 +08:00
omair saleh d7f3b656f7 Merge branch 'container-profile-ui'
# Conflicts:
#	routes/web.php
2021-09-27 16:59:08 +08:00
omair saleh 3b20e240ee Merge branch 'shipping-queue-ui' into 'master'
Shipping queue ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!59
2021-09-27 08:49:55 +00:00
omair saleh aa39adaeb8 clean web routes 2021-09-27 16:43:29 +08:00
omair saleh f0ebd20c5e Merge branch 'payment-and-billing-ui' into 'master'
Payment and billing ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!57
2021-09-27 08:41:18 +00:00
omair saleh 0b3ae1f8df Merge branch 'master' into 'payment-and-billing-ui'
# Conflicts:
#   routes/web.php
2021-09-27 08:41:13 +00:00
Fairuz 27684a2940 Changes to inline report 2021-09-27 11:06:38 +08:00
Fairuz ed637739cc Inbound custom cleared 2021-09-27 09:48:00 +08:00
edmondlang a0531e344c add 'ADD Container' button
update add container form
2021-09-25 16:13:31 +08:00
edmondlang 9073d86859 Merge branch 'package-ui-create' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into container-profile-forms-ui 2021-09-24 21:59:39 +08:00
glovetleong ce20a941cd tidy 2021-09-24 21:56:50 +08:00
glovetleong b98ab2749a eta and etd in create container 2021-09-24 21:54:06 +08:00
edmondlang 5363034649 Merge branch 'package-ui-create' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into container-profile-forms-ui 2021-09-24 19:56:31 +08:00
edmondlang e83ed7a339 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into container-profile-forms-ui
# Conflicts:
#	routes/web.php
2021-09-24 19:56:07 +08:00
omair saleh 09f598ffe5 show container total cbm 2021-09-23 18:35:58 +08:00
omair saleh 9719f1da77 show container total cbm 2021-09-23 18:34:53 +08:00
glovetleong 0c63a9e7ca complete container 2021-09-23 15:04:04 +08:00
glovetleong 7d332f01e5 update drop date
update dispatch date
2021-09-23 14:40:12 +08:00
glovetleong 24ea9d381e Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into package-ui-create 2021-09-22 18:14:55 +08:00
glovetleong 9aec13da74 reschedule container 2021-09-22 18:14:36 +08:00
glovetleong 16573e9e00 container create with n/a eta and etd 2021-09-22 15:39:33 +08:00
omair saleh 8039446db5 tooltip for copying invitation link 2021-09-22 14:57:29 +08:00
omair saleh a8e26c4dd6 invitation link registration 2021-09-22 14:20:50 +08:00
omair saleh 65493e6c90 invitation link registration 2021-09-22 14:14:47 +08:00
edmondlang 36018f48b4 Merge branch 'package-ui-create' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into container-profile-forms-ui 2021-09-21 23:12:17 +08:00
edmondlang bf07a92873 container profile page ui 2021-09-21 22:37:08 +08:00
omair saleh fd8d9bd0db show claimed accounts in company profile 2021-09-21 02:51:50 +08:00
omair saleh 5b105caf0b show claimed accounts in company profile 2021-09-21 02:50:48 +08:00
omair saleh 1c5d814790 show claimed accounts in company profile 2021-09-21 02:39:58 +08:00
omair saleh c7b4b75982 exchange user table seeder 2021-09-21 02:31:04 +08:00
omair saleh fbfe68c1c2 exchange user table seeder 2021-09-21 02:19:41 +08:00
glovetleong 06b1258b55 merge branch 2021-09-20 16:54:16 +08:00
glovetleong b668708bd5 Merge branch 'package-switch-packing-list' into package-ui-create 2021-09-20 16:48:25 +08:00
glovetleong 13719d56a4 Merge branch 'assign-packing-list' into package-ui-create 2021-09-20 16:47:46 +08:00
glovetleong 26b4f012a8 Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into package-ui-create 2021-09-20 16:46:15 +08:00
glovetleong ad2d54cf0e package switch packing list 2021-09-20 15:34:28 +08:00
glovetleong e84f9d8bef assign packing list to container 2021-09-18 13:40:15 +08:00
glovetleong d7e2366fed container load 2021-09-18 09:56:41 +08:00
omair saleh f7c6873316 update vt portal url 2021-09-17 17:59:37 +08:00
Fairuz b8a145cb5c Excel library, controllers 2021-09-17 07:12:08 +08:00
Fairuz b5076a6f9d Excel library, controllers 2021-09-16 20:47:33 +08:00
glovetleong 2f6055c577 Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into package-ui-create 2021-09-15 21:31:13 +08:00
glovetleong 05ee6b3e98 create warehouse packing list
create shipping packing list
2021-09-15 21:30:49 +08:00
omair saleh 4626eb937e change container list to 5 per page 2021-09-15 18:29:34 +08:00
omair saleh 2be9a3dcfe remove logger from logout logic 2021-09-15 18:26:54 +08:00
omair saleh 1f05c4b56f remove timer from vt fetch jobs 2021-09-15 18:17:03 +08:00
omair saleh a3ecda8f8e round up cbm in container component 2021-09-14 17:26:33 +08:00
glovetleong 174992cc65 create package list ui
edit create package list api
2021-09-14 17:02:42 +08:00
omair saleh 3e23fa6809 revert changes for join table 2021-09-14 12:40:37 +08:00
omair saleh 41554be892 revert changes for join table 2021-09-14 12:32:18 +08:00
omair saleh a7c6c29c25 delete packages change migration 2021-09-14 12:15:17 +08:00
omair saleh 31c0b315b0 Merge branch 'task/EXC-328' into 'master'
Task/exc 328

See merge request CIEFWorldwideSdnBhd/shipping-portal!54
2021-09-14 03:45:35 +00:00
omair saleh 465c111bf1 Merge branch 'task/EXC-324' into 'master'
Join table from frontend

See merge request CIEFWorldwideSdnBhd/shipping-portal!53
2021-09-14 03:45:02 +00:00
omair saleh 0884bcf47a fix long reload issue for container on packing list status update 2021-09-12 17:12:59 +08:00
glovetleong 64f108163a package ui 2021-09-12 14:27:17 +08:00
Fairuz e80dbf4b49 Add timer, moved schedule to commands 2021-09-12 12:48:28 +08:00
Fairuz a203c5bf12 Add timer, moved schedule to commands 2021-09-12 12:46:26 +08:00
Fairuz 18b19fd90a Join table from frontend 2021-09-11 17:26:02 +08:00
omair saleh 2d1ec679eb fix delivery list job 2021-09-11 01:14:32 +08:00
omair saleh e43f7e2880 update packing list to complete after delivery updated 2021-09-11 00:39:39 +08:00
omair saleh 335a9f845e limit delivery list to first 50 2021-09-11 00:09:02 +08:00
omair saleh a5c652ef91 fix address resource loop 2021-09-10 23:55:20 +08:00
omair saleh 00c9fbfdca add db transactions back to packing lists 2021-09-10 23:48:35 +08:00
omair saleh 69180ef937 update delivery list for on hold goods 2021-09-10 23:20:19 +08:00
omair saleh bcffe4ef3e remove packing list database transactions 2021-09-10 23:10:26 +08:00
omair saleh b9794c8ff3 round up cbm 2021-09-10 23:07:24 +08:00
omair saleh 47f00e135b fix order resource loop 2021-09-10 18:26:28 +08:00
omair saleh f0c5ea8617 fix address resource owner bug 2021-09-10 18:18:48 +08:00
edmondlang 688832445a add the route for shipping queue 2021-09-10 16:41:30 +08:00
edmondlang f064ef2eff Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into shipping-queue-ui
# Conflicts:
#	routes/web.php
2021-09-10 16:22:29 +08:00
edmondlang c652d8df1a shipping queue ui 2021-09-10 15:58:28 +08:00
omair saleh fa5f129af0 add container ref in the package component 2021-09-10 13:38:35 +08:00
omair saleh 06ac4c4e62 merge marking and order number in the container list 2021-09-10 13:12:02 +08:00
omair saleh b57f56dd8f change order address 2021-09-09 23:07:48 +08:00
omair saleh 1939f64cdf change order address 2021-09-09 22:57:02 +08:00
omair saleh 1ba5282244 Merge branch '319_order_address_change_ui' into 'master'
319 order address change ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!52
2021-09-09 12:45:41 +00:00
omair saleh 1c9fba7f19 Merge branch '293_order_address_change' into 'master'
293 order address change

See merge request CIEFWorldwideSdnBhd/shipping-portal!51
2021-09-09 12:45:31 +00:00
omair saleh 512cca3445 fix redirect bug 2021-09-09 15:31:39 +08:00
weichien00 54211a5b72 feat: add approve change prder address component - admin access only. 2021-09-09 13:48:57 +08:00
omair saleh ade8b0fe4f fix cbm calculation bug 2021-09-09 13:26:05 +08:00
omair saleh 3d46895328 fix cbm calculation bug 2021-09-09 13:25:14 +08:00
omair saleh 9970277411 show company create date 2021-09-09 13:18:29 +08:00
omair saleh d77c0b1c06 show company create date 2021-09-09 13:17:32 +08:00
omair saleh ea08d1d998 show company create date 2021-09-09 13:13:59 +08:00
omair saleh d6915bc22f hold and release goods for delivery 2021-09-09 06:43:35 +08:00
omair saleh b4215a5bde hold and release goods for delivery 2021-09-09 06:22:06 +08:00
omair saleh ac3e6fba20 hold and release goods for delivery 2021-09-09 05:47:51 +08:00
omair saleh ee30ebb05d hold and release goods for delivery 2021-09-09 05:35:02 +08:00
omair saleh f21eb73f4a hold and release goods for delivery 2021-09-09 05:09:10 +08:00
omair saleh aa26fb97a0 hold and release goods for delivery 2021-09-09 04:31:32 +08:00
omair saleh 502b702a0a hold and release goods for delivery 2021-09-09 04:26:18 +08:00
omair saleh e426550c73 hold and release goods for delivery 2021-09-09 04:18:49 +08:00
omair saleh fab262a959 hold and release goods for delivery 2021-09-09 04:15:40 +08:00
omair saleh e9b8815f08 hold and release goods for delivery 2021-09-09 04:10:20 +08:00
omair saleh 8dab2a09ff hold and release goods for delivery 2021-09-09 04:05:51 +08:00
weichien00 a4b2e02ec3 wip-feat: request change order shipping address ui. 2021-09-09 01:49:44 +08:00
LEE WC 97adb6b03d Merge branch 'master' into '319_order_address_change_ui'
Master to 319_order_address_change_ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!50
2021-09-08 15:36:17 +00:00
omair saleh a531361514 refresh orders button 2021-09-08 23:23:11 +08:00
omair saleh b24fbc36f9 refresh orders button 2021-09-08 23:19:04 +08:00
omair saleh 600a154714 List containers 2021-09-08 23:06:25 +08:00
omair saleh 0a4753579c Merge branch 'debug_api' into 'master'
Debug api

See merge request CIEFWorldwideSdnBhd/shipping-portal!49
2021-09-08 11:11:55 +00:00
omair saleh 5c021a4e2e Merge branch 'task/EXC-317' into 'master'
Updates on Packing List & Package

See merge request CIEFWorldwideSdnBhd/shipping-portal!46
2021-09-08 11:10:05 +00:00
omair saleh 0045fc22e6 Merge branch 'container-page-ui' into 'master'
Container page ui

See merge request CIEFWorldwideSdnBhd/shipping-portal!48
2021-09-08 11:09:19 +00:00
omair saleh 77e3641be9 add delivery address to warehouse list 2021-09-08 19:06:58 +08:00
edmondlang 536833fd93 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into container-page-ui 2021-09-08 16:57:24 +08:00
edmondlang f6115c4012 hide container in menu 2021-09-08 16:56:54 +08:00
edmondlang 5e416f1760 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into payment-and-billing-ui 2021-09-08 16:45:36 +08:00
edmondlang d23b59b8e9 payment and billing ui 2021-09-08 16:44:24 +08:00
LEE WC 9a047faece Merge branch '293_order_address_change' into '319_order_address_change_ui'
merge change order address api

See merge request CIEFWorldwideSdnBhd/shipping-portal!47
2021-09-07 06:04:10 +00:00
LEE WC c6865bb5f6 Merge branch '319_order_address_change_ui' into '293_order_address_change'
# Conflicts:
#   app/Http/Resources/OrderResource.php
2021-09-07 06:01:11 +00:00
Fairuz cdaa395824 Updates on Packing List & Package 2021-09-07 09:51:04 +08:00
glovetleong c96a2b71d1 update api 2021-09-06 15:22:28 +08:00
glovetleong 102905df06 Container, Transport, Schedule Api Debug 2021-09-06 14:52:56 +08:00
omair saleh 7f8a4af3fe add marking to arrived parcel components 2021-09-06 13:03:45 +08:00
omair saleh a2f4e1f3fd Revert "add marking to arrived parcel components"
This reverts commit 91c8424dc5.
2021-09-06 13:00:31 +08:00
omair saleh 1933030e9a Revert "add marking to arrived parcel components"
This reverts commit 50cbafce25.
2021-09-06 12:59:11 +08:00
omair saleh 50cbafce25 add marking to arrived parcel components 2021-09-06 12:52:27 +08:00
omair saleh 91c8424dc5 add marking to arrived parcel components 2021-09-06 12:52:11 +08:00
omair saleh 6009e82994 add marking to arrived parcel components 2021-09-06 12:48:57 +08:00
omair saleh 7d67e13b9e change schedule for vt portal fetch 2021-09-05 20:12:52 +08:00
glovetleong 0554cc895f checkout 2021-09-05 12:55:11 +08:00
edmondlang b9ab2e9f36 Merge branch 'master' of gitlab.com:CIEFWorldwideSdnBhd/shipping-portal into container-page-ui
# Conflicts:
#	resources/views/partials/menu.blade.php
2021-09-04 16:30:55 +08:00
edmondlang 51d999e3c8 add container page ui 2021-09-04 16:22:09 +08:00
omair saleh b049c95ca2 change schedule for vt portal fetch 2021-09-03 17:25:17 +08:00
omair saleh 3ee8afc4a4 add new schedule for fetching from vt at 11:30 am 2021-09-03 13:07:31 +08:00
omair saleh 1edcb296f3 sort orders by latest 2021-09-02 22:39:37 +08:00
omair saleh 51f1b3adcb change scheduled jobs into a chain 2021-09-02 22:32:01 +08:00
omair saleh 8e05c287b8 frontend suggested changes 2021-09-02 22:25:03 +08:00
omair saleh 050dc8ac7b frontend suggested changes 2021-09-02 22:20:01 +08:00
omair saleh 842fc52b4e fix warehouse list bugs 2021-09-02 16:51:10 +08:00
omair saleh 7008a01b11 fix reschedule containers etd bug 2021-09-02 12:27:40 +08:00
glovetleong afcb1277f1 Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into cross-login
# Conflicts:
#	routes/web.php
2021-09-01 20:30:08 +08:00
omair saleh 7d47ac14d0 fix reschedule containers etd bug 2021-09-01 17:15:06 +08:00
omair saleh 5083ee83ad disable email verification temp 2021-09-01 15:55:15 +08:00
omair saleh 8363b8ca10 debug registration 2021-09-01 15:54:30 +08:00
omair saleh 0a89451889 debug registration 2021-09-01 15:33:34 +08:00
omair saleh 59730e21d2 debug registration 2021-09-01 15:32:35 +08:00
omair saleh 3887512721 debug registration 2021-09-01 15:29:35 +08:00
omair saleh e11cc64f89 debug registration 2021-09-01 15:27:47 +08:00
omair saleh 5ca3a927c1 debug registration 2021-09-01 15:26:07 +08:00
omair saleh 4246795e14 debug registration 2021-09-01 15:24:29 +08:00
omair saleh d0a9f1aa9f debug registration 2021-09-01 15:23:54 +08:00
omair saleh e8a7812583 debug registration 2021-09-01 15:23:19 +08:00
omair saleh c651b6ca09 debug registration 2021-09-01 15:22:28 +08:00
omair saleh d9f3ad74ca change registration loading section 2021-09-01 15:18:57 +08:00
omair saleh 278145e211 regenerate customers marking 2021-08-30 19:16:14 +08:00
omair saleh 7f0236d8d5 regenerate customers marking 2021-08-30 19:14:37 +08:00
omair saleh 414a042199 regenerate customers marking 2021-08-30 18:56:14 +08:00
omair saleh a85aeb00d7 regenerate customers marking 2021-08-30 18:55:12 +08:00
omair saleh a31d7b7b8b regenerate customers marking 2021-08-30 18:54:01 +08:00
omair saleh aa210c0b6f regenerate customers marking 2021-08-30 18:32:02 +08:00
omair saleh bf0d61c862 regenerate customers marking 2021-08-30 18:31:25 +08:00
omair saleh fae47f4a75 regenerate customers marking 2021-08-30 17:52:10 +08:00
omair saleh 53575cf59a regenerate customers marking 2021-08-30 16:58:49 +08:00
omair saleh 06db3ddf7b regenerate customers marking 2021-08-30 16:57:50 +08:00
omair saleh 15650f53ad regenerate customers marking 2021-08-30 16:56:52 +08:00
omair saleh 514364bb08 regenerate customers marking 2021-08-30 16:35:45 +08:00
omair saleh 46bfe78b77 regenerate customers marking 2021-08-30 16:23:13 +08:00
omair saleh 64ab158991 regenerate customers marking 2021-08-30 16:12:17 +08:00
omair saleh 0255b39f4b regenerate customers marking 2021-08-30 16:09:33 +08:00
omair saleh 94cf4dee1b regenerate customers marking 2021-08-30 16:08:35 +08:00
omair saleh 0a32af0dab regenerate customers marking 2021-08-30 16:07:10 +08:00
omair saleh 3f48d85e31 update packinglists from vt portal jobs and schedule 2021-08-30 01:46:56 +08:00
omair saleh 5e44386b24 update packinglists from vt portal jobs and schedule 2021-08-30 01:41:47 +08:00
omair saleh 11572a5627 update packinglists from vt portal jobs and schedule 2021-08-30 01:40:05 +08:00
omair saleh 30224f9114 update packinglists from vt portal jobs and schedule 2021-08-30 01:27:54 +08:00
omair saleh bf99141304 update packinglists from vt portal jobs and schedule 2021-08-30 01:23:54 +08:00
omair saleh 5b8bfa32d3 update packinglists from vt portal jobs and schedule 2021-08-30 01:22:17 +08:00
omair saleh dd4ecbe743 update packinglists from vt portal jobs and schedule 2021-08-30 01:21:23 +08:00
omair saleh 52cae7f877 update packinglists from vt portal jobs and schedule 2021-08-30 01:16:21 +08:00
omair saleh 5355b31bcb update packinglists from vt portal jobs and schedule 2021-08-30 01:09:16 +08:00
omair saleh c71727c9c0 update packinglists from vt portal jobs and schedule 2021-08-30 00:57:04 +08:00
omair saleh c6e621c4ab update packinglists from vt portal jobs and schedule 2021-08-30 00:52:23 +08:00
omair saleh 7279779377 update packinglists from vt portal jobs and schedule 2021-08-30 00:44:17 +08:00
omair saleh f90f5f7370 update packinglists from vt portal jobs and schedule 2021-08-30 00:40:54 +08:00
omair saleh d353a8629f update packinglists from vt portal jobs and schedule 2021-08-30 00:32:59 +08:00
omair saleh 9c62a792b7 update packinglists from vt portal jobs and schedule 2021-08-30 00:31:29 +08:00
omair saleh 32d3523190 update packinglists from vt portal jobs and schedule 2021-08-30 00:23:22 +08:00
omair saleh b5e2f47b31 update packinglists from vt portal jobs and schedule 2021-08-30 00:03:26 +08:00
omair saleh 82162026b3 update packinglists from vt portal jobs and schedule 2021-08-29 23:55:09 +08:00
omair saleh 3582654861 update packinglists from vt portal jobs and schedule 2021-08-29 23:46:00 +08:00
omair saleh 0772173dd9 update packinglists from vt portal jobs and schedule 2021-08-29 23:40:38 +08:00
omair saleh 61c11aef26 update packinglists from vt portal jobs and schedule 2021-08-29 21:20:49 +08:00
omair saleh 66c3b532cb update packinglists from vt portal jobs and schedule 2021-08-29 19:57:27 +08:00
omair saleh eac5c6d104 update packinglists from vt portal jobs and schedule 2021-08-29 19:50:35 +08:00
omair saleh 46b5d19331 update packinglists from vt portal jobs and schedule 2021-08-29 19:44:52 +08:00
omair saleh bea3836df8 update packinglists from vt portal jobs and schedule 2021-08-29 19:33:04 +08:00
glovetleong 2d49f4aabf cross login 2021-08-25 10:01:32 +08:00
omair saleh c07bcb6334 update packinglists from vt portal jobs and schedule 2021-08-23 10:52:25 +08:00
omair saleh c79443eb62 update packinglists from vt portal jobs and schedule 2021-08-23 10:45:06 +08:00
omair saleh 572cb4ac1d update packinglists from vt portal jobs and schedule 2021-08-23 10:43:02 +08:00
omair saleh 25c95f0843 update packinglists from vt portal jobs and schedule 2021-08-23 09:36:00 +08:00
omair saleh a3cdae6815 update packinglists from vt portal jobs and schedule 2021-08-23 09:35:37 +08:00
omair saleh 276e12679d update packinglists from vt portal 2021-08-23 08:39:59 +08:00
glovetleong 2095c18871 cross login 2021-08-22 13:55:51 +08:00
omair saleh d24fea2910 add wechat id to registration form, and fix loading bug on registration 2021-08-19 23:48:23 +08:00
omair saleh b15dce4fde run old companies migration only in production 2021-08-19 12:35:34 +08:00
weichien00 e0405bca1e swagger: add show order, request address change, and approve address change api endpoint. 2021-08-19 01:35:23 +08:00
weichien00 6fb5d66631 feat: add route for request and approve address change. 2021-08-19 01:33:50 +08:00
weichien00 5a043e89a0 feat: API to approve order address change. 2021-08-19 01:33:16 +08:00
weichien00 3c20386875 feat: API to request change order address 2021-08-19 01:31:27 +08:00
omair saleh ab747b3403 large commit 2021-08-18 15:54:38 +08:00
omair saleh 9e9de73d65 large commit 2021-08-18 06:57:29 +08:00
omair saleh 2033ef9ef6 large commit 2021-08-18 06:13:58 +08:00
omair saleh 14cbcfd6f5 large commit 2021-08-18 06:02:14 +08:00
omair saleh bdf3759dd5 update address form reference input label, and add login about us 2021-08-17 15:07:55 +08:00
omair saleh 94dde7bf7b update favicons 2021-08-16 09:17:02 +08:00
omair saleh d8c767c670 Large commit 2021-08-16 08:59:43 +08:00
Fairuz e2874f7199 Merge branch 'responsive-dashboard' into 'master'
responsive banner dashboard

See merge request CIEFWorldwideSdnBhd/shipping-portal!43
2021-08-15 12:00:39 +00:00
Amirul Amin 9cfc6e7cdf responsive banner dashboard 2021-08-15 16:29:52 +08:00
omair saleh 3c1ba6a780 temp fix destination warehouse reference 2021-08-15 14:58:47 +08:00
omair saleh 75be0ab0cc temp fix destination warehouse reference 2021-08-15 14:57:11 +08:00
omair saleh da8259ab4d Merge branch 'scrap-cookie' into 'master'
Scrap cookie

See merge request CIEFWorldwideSdnBhd/shipping-portal!42
2021-08-14 17:33:22 +00:00
omair saleh 2edb793765 Merge branch 'pdf-demo' into 'master'
demo

See merge request CIEFWorldwideSdnBhd/shipping-portal!41
2021-08-14 17:32:42 +00:00
Fairuz 05bdb9b91d Merge branch 'responsive-login' into 'master'
responsive login

See merge request CIEFWorldwideSdnBhd/shipping-portal!40
2021-08-14 14:29:28 +00:00
Amirul Amin c0e596a1eb responsive login 2021-08-14 21:46:22 +08:00
glovetleong cea018220f demo 2021-08-14 11:05:12 +08:00
omair saleh 8c4bac81e6 General fixes to table design, added state and district seeder for china, made changes to create order process, and ui and vue js components changes for registration, dashboard and registration 2021-08-14 09:28:36 +08:00
omair saleh dda0cf0b02 Merge remote-tracking branch 'origin/master' 2021-08-12 15:01:38 +08:00
omair saleh fc0786264a fix dashboard and order ui & fix address select component and added reference to addresses 2021-08-12 15:01:16 +08:00
Fairuz 7010bd3574 Merge branch 'modify_order_step' into 'master'
Modify order step relationship

See merge request CIEFWorldwideSdnBhd/shipping-portal!39
2021-08-12 06:45:32 +00:00
Fairuz c49136a94d Update order step, nullable relationship 2021-08-12 14:16:38 +08:00
Fairuz b0246ccfda Update relation for order steps 2021-08-12 13:41:27 +08:00
glovetleong 8ff3d73227 scrap job 2021-08-12 09:19:35 +08:00
glovetleong 984b486cfd scrap cookie script 2021-08-11 09:29:40 +08:00
Fairuz f876cc5822 Merge branch 'tracking' into 'master'
wip tracking page responsive

See merge request CIEFWorldwideSdnBhd/shipping-portal!38
2021-08-10 01:42:11 +00:00
Amirul Amin 25789deefd wip tracking page responsive 2021-08-09 22:38:54 +08:00
Fairuz 5e26fa7a82 Merge branch '284-address' into 'master'
feat: address component

See merge request CIEFWorldwideSdnBhd/shipping-portal!37
2021-08-09 09:12:52 +00:00
weichien00 053760701b feat: add addressComponent and related action component ex. deleteAddress and setDefaultAddress component. add new/edit form/ 2021-08-09 02:25:01 +08:00
weichien00 4f5054c55f feat: add addresslist component and include in address index.blade 2021-08-09 02:19:19 +08:00
weichien00 7a2f2e87b2 update: change to save default address based on company module id 2021-08-09 02:16:24 +08:00
Fairuz db12b2f26c Merge branch 'order-details' into 'master'
responsive order details

See merge request CIEFWorldwideSdnBhd/shipping-portal!36
2021-08-07 04:23:00 +00:00
Amirul Amin 4e910203d0 wip responsive order details 2021-08-06 21:19:51 +08:00
Fairuz efdc6c0e46 Merge branch '272-dashboard-first-order' into 'master'
272 dashboard first order

See merge request CIEFWorldwideSdnBhd/shipping-portal!35
2021-08-05 03:25:50 +00:00
weichien00 1005ec9c83 fix: getterstate. 2021-08-05 11:18:43 +08:00
weichien00 7c1f5ffaf8 revert tab active show manipulation. 2021-08-05 11:17:00 +08:00
Fairuz 1139c77101 Merge branch '248_order_steps_apis' into 'master'
Completes Order Steps on Unity

See merge request CIEFWorldwideSdnBhd/shipping-portal!34
2021-08-05 02:54:27 +00:00
Fairuz 06efb4c169 Completes Order Steps on Unity 2021-08-05 10:52:26 +08:00
weichien00 93e5371882 fix: order list tab visibility based on condition. 2021-08-05 03:38:24 +08:00
weichien00 e0df8ac524 fix: remove new-order param in localstorage when logout 2021-08-05 03:36:57 +08:00
weichien00 a18c9afe3e update: routes and it respective blade files/ 2021-08-05 03:05:51 +08:00
weichien00 efae44cfb0 update: add onboarding create order flow component. 2021-08-05 03:02:26 +08:00
weichien00 3b1218e1ea style: validation component. - remove border. 2021-08-05 02:59:43 +08:00
weichien00 6d3b4bc4f0 update: vuex module for order operation. 2021-08-05 02:59:14 +08:00
weichien00 96342f6e01 add: component of create order. 2021-08-05 02:58:35 +08:00
weichien00 60210fc676 fix: save address with companyModule polymorph relationship. 2021-08-05 02:49:20 +08:00
weichien00 73505b140c add: eloquent polymorph with companyModule filter. 2021-08-05 02:45:58 +08:00
Fairuz d9935ff6a1 Merge branch 'address-form' into 'master'
responsive radio customize design for address

See merge request CIEFWorldwideSdnBhd/shipping-portal!32
2021-08-04 05:49:13 +00:00
LEE WC b128a92740 Merge branch '248_order_steps_apis' into '272-dashboard-first-order'
merge 248_order_steps_apis to my working branch

See merge request CIEFWorldwideSdnBhd/shipping-portal!33
2021-08-03 16:45:59 +00:00
Amirul Amin cc9bb9976f responsive radio customize design for address 2021-08-04 00:18:00 +08:00
Fairuz fe52f0471b Merge branch '248_order_steps_apis' into 'master'
Add address to create order resources

See merge request CIEFWorldwideSdnBhd/shipping-portal!31
2021-08-03 02:57:49 +00:00
Fairuz 503a550637 Add address to create order resources 2021-08-03 10:57:11 +08:00
Fairuz 49f58659f6 Merge branch '248_order_steps_apis' into 'master'
248 order steps apis

See merge request CIEFWorldwideSdnBhd/shipping-portal!30
2021-08-02 18:07:27 +00:00
Fairuz 3427ad025c Merge branch 'master' into 248_order_steps_apis 2021-08-03 02:04:58 +08:00
Fairuz ec673e7d02 Add company id to address 2021-08-03 02:03:57 +08:00
Fairuz 3f70ead69a Activate contract 2021-08-03 02:01:20 +08:00
Fairuz ec1e338870 Activate contract 2021-08-03 01:43:22 +08:00
Fairuz 7e9b3259c3 Added contract entity, address to Orders 2021-08-03 01:18:34 +08:00
Fairuz af38004595 Added contract entity, address to Orders 2021-08-03 01:17:54 +08:00
LEE WC 4f896fe1cf Merge branch 'master' into '272-dashboard-first-order'
merge Master to my working branch

See merge request CIEFWorldwideSdnBhd/shipping-portal!29
2021-08-02 15:44:43 +00:00
weichien00 decb6265eb add: list order api. 2021-08-02 23:42:51 +08:00
omair saleh 2b3cdb3290 fix dashboard web route 2021-08-02 13:40:13 +08:00
omair saleh 6466c4724e fix dashboard web route 2021-08-02 13:39:41 +08:00
omair saleh a2d050e072 fix dashboard web route 2021-08-02 13:38:43 +08:00
omair saleh 79cc00a37f registration ui fixes, and clean up header menu and footer 2021-08-02 12:15:58 +08:00
omair saleh aab1da6c12 Merge remote-tracking branch 'origin/master' 2021-08-02 12:08:57 +08:00
omair saleh dfbfd04d31 registration ui fixes, and clean up header menu and footer 2021-08-02 12:08:30 +08:00
Fairuz 8e9a3ef05f Merge branch '248_order_steps_apis' into 'master'
248 order steps apis

See merge request CIEFWorldwideSdnBhd/shipping-portal!28
2021-08-02 03:51:04 +00:00
Fairuz fa5d063ea2 Merge branch 'master' into 248_order_steps_apis 2021-08-02 11:49:24 +08:00
Fairuz 58d8367bc7 WIP Unity Order APIs 2021-08-02 11:48:29 +08:00
Fairuz 1c8caac730 Merge branch 'data-table' into 'master'
Data table

See merge request CIEFWorldwideSdnBhd/shipping-portal!27
2021-08-02 02:26:55 +00:00
Amirul Amin 5d09b66e78 wip : data table responsive 2021-08-02 01:20:33 +08:00
Amirul Amin a7c1ac9982 Merge branch 'master' of https://gitlab.com/CIEFWorldwideSdnBhd/shipping-portal into data-table 2021-08-02 01:18:02 +08:00
Amirul Amin 817c30fe19 wip : data table container responsive 2021-08-02 01:17:38 +08:00
omair saleh ea9955c269 Merge remote-tracking branch 'origin/master' 2021-07-30 21:23:59 +08:00
omair saleh 41d59d9a80 fix migration files and add admin user seeder 2021-07-30 21:23:43 +08:00
Fairuz 2ad01a4195 Merge branch 'master' into 248_order_steps_apis 2021-07-30 19:07:59 +08:00
Fairuz e5814fcd01 Assign contract obligations at Unity 2021-07-30 19:06:38 +08:00
Fairuz 126c75df19 Merge branch '252/253/254-account-registration-vue' into 'master'
252/253/254 account registration vue

See merge request CIEFWorldwideSdnBhd/shipping-portal!26
2021-07-30 06:56:04 +00:00
weichien00 a3daef7203 add: vue emailVerification component. 2021-07-30 14:47:05 +08:00
weichien00 3e8265fe3a update: return company_module_id after login success. 2021-07-30 14:45:45 +08:00
weichien00 0dc68cea5a update: return number of order when login. 2021-07-30 14:26:11 +08:00
weichien00 7fe6009669 add: missing blade for email verification and reset password. 2021-07-30 03:37:23 +08:00
weichien00 8b5dd24a14 update: integrate header,side menu to blade+vuejs. 2021-07-30 02:10:37 +08:00
LEE WC ad7dae69c6 Merge branch 'side-menu' into '252/253/254-account-registration-vue'
Side menu to my working branch

See merge request CIEFWorldwideSdnBhd/shipping-portal!25
2021-07-29 05:01:01 +00:00
Fairuz 0681738d58 Merge branch 'side-menu' into 'master'
add side menu and header skeleton

See merge request CIEFWorldwideSdnBhd/shipping-portal!24
2021-07-29 03:26:02 +00:00
Amirul Amin dd51cf4f4c add side menu and header skeleton 2021-07-29 00:15:41 +08:00
weichien00 40af7bb690 fix: add missing class. 2021-07-26 15:04:51 +08:00
weichien00 693bd68726 fix: bank migration file typo. 2021-07-26 15:04:21 +08:00
Fairuz 238897e3eb Merge branch 'master' into 248_order_steps_apis 2021-07-26 14:21:07 +08:00
Fairuz 9edbdc3744 Merge branch '252/253/254-account-registration-vue' into 'master'
252/253/254 account registration vue

See merge request CIEFWorldwideSdnBhd/shipping-portal!22
2021-07-26 06:18:56 +00:00
LEE WC 04778859c4 Merge branch 'master' into '252/253/254-account-registration-vue'
Master to my working branch

See merge request CIEFWorldwideSdnBhd/shipping-portal!23
2021-07-26 05:17:35 +00:00
Fairuz fde433d60c Created contract at Unity 2021-07-26 13:14:43 +08:00
weichien00 bcdcac2382 fix: login and registration. 2021-07-26 12:50:16 +08:00
weichien00 a55272f556 update: add create acount link below login form 2021-07-26 12:13:22 +08:00
omair saleh 97ec698983 update gitignore 2021-07-25 14:36:09 +08:00
Fairuz 06de032867 Merge branch '248_order_steps_apis' into 'master'
248 Remaining APIs

See merge request CIEFWorldwideSdnBhd/shipping-portal!21
2021-07-24 08:25:01 +00:00
Fairuz 51e1127fd6 Merge branch 'master' into 248_order_steps_apis 2021-07-24 16:22:29 +08:00
Fairuz e12e5a460e WIP - Order steps & remaining APIs 2021-07-24 16:21:11 +08:00
Fairuz 9296c321f3 WIP - Order steps & remaining APIs 2021-07-24 15:17:54 +08:00
Fairuz 805ae4ff2b WIP - Order steps & remaining APIs 2021-07-24 13:40:21 +08:00
Fairuz 7ae581300d WIP - Order steps & remaining APIs 2021-07-24 11:39:40 +08:00
Fairuz 1281990b08 WIP - Order steps & remaining APIs 2021-07-24 00:11:59 +08:00
weichien00 a2e16193aa fix: resolve merge issue. 2021-07-23 23:44:29 +08:00
LEE WC 684a34c3f3 Merge branch 'master-merge-252/253/254-account-registration-vue' into '252/253/254-account-registration-vue'
Master merge 252/253/254 account registration vue

See merge request CIEFWorldwideSdnBhd/shipping-portal!20
2021-07-23 15:08:14 +00:00
weichien00 7106a44432 update to match master. 2021-07-23 23:06:11 +08:00
Fairuz 4eaf1917fa WIP - Order steps & remaining APIs 2021-07-23 21:27:18 +08:00
Fairuz d5dd26ae73 WIP - Order steps & remaining APIs 2021-07-23 18:31:52 +08:00
Fairuz 6ae3c64b3b WIP - Order steps & remaining APIs 2021-07-23 16:36:37 +08:00
Fairuz d65b630560 WIP - Order steps & remaining APIs 2021-07-23 16:14:54 +08:00
Fairuz 1fe25476ce WIP - Order steps & remaining APIs 2021-07-23 15:07:05 +08:00
Fairuz d7131dd5f8 WIP - Order steps & remaining APIs 2021-07-23 12:41:06 +08:00
Fairuz 67e104d7e7 WIP - Order steps & remaining APIs 2021-07-23 01:25:48 +08:00
Fairuz d74d12da96 WIP - Order steps & remaining APIs 2021-07-23 01:16:19 +08:00
Fairuz d87c4f7df4 WIP - Order steps & remaining APIs 2021-07-22 16:53:52 +08:00
Fairuz 3dfa087831 WIP - Order steps & remaining APIs 2021-07-22 14:28:02 +08:00
Fairuz adf9896410 WIP - Order steps & remaining APIs 2021-07-22 13:00:11 +08:00
Fairuz 6278ddb16b WIP - Order steps & remaining APIs 2021-07-22 11:28:58 +08:00
Fairuz d308ab4045 WIP - Order steps & remaining APIs 2021-07-22 11:25:00 +08:00
omair saleh e61bda751b Merge remote-tracking branch 'origin/master' 2021-07-21 16:10:27 +08:00
omair saleh 8b51cdc1dc login page, and forget password page 2021-07-21 16:10:07 +08:00
omair saleh 4f7b4ab9aa clean public folder 2021-07-21 16:09:25 +08:00
weichien00 398ceaa14f update: add filecomponent to registrationForm component 2021-07-21 09:53:46 +08:00
weichien00 fbb21df45b add: registration section and related component - 1 checkemail , 2 register form. 2021-07-21 02:58:55 +08:00
weichien00 54daf59e7c add: login form component. 2021-07-21 02:53:54 +08:00
weichien00 8d56e3af63 update: add login.blade file. 2021-07-21 02:48:09 +08:00
Fairuz ed157150e7 Merge branch '229_order_apis' into 'master'
Order APIs & Unity Service

See merge request CIEFWorldwideSdnBhd/shipping-portal!18
2021-07-17 10:55:48 +00:00
Fairuz 95660069c9 Order APIs & Unity services 2021-07-17 18:44:22 +08:00
Fairuz 9c0772bf65 Orders APIs WIP 2021-07-15 17:30:12 +08:00
Fairuz ac288981f5 Resolved conflict with Master branch 2021-07-15 10:50:03 +08:00
Fairuz d4acea78c0 Merge branch '223-company-api' into 'master'
223 company api

See merge request CIEFWorldwideSdnBhd/shipping-portal!17
2021-07-15 02:38:56 +00:00
Fairuz a7eec812c9 Orders APIs WIP 2021-07-15 10:33:12 +08:00
Fairuz 562ea1ff7b Orders APIs WIP 2021-07-14 15:18:25 +08:00
weichien00 b0a02a8c27 swagger - Add create company API. 2021-07-14 11:01:01 +08:00
weichien00 3715e9128d swagger: add new tag "Flow - Registration" and include related api. 2021-07-14 10:50:19 +08:00
Fairuz 4bae6e063e Merge branch 'hotfix-user-model-typo' into 'master'
hotfix: typo issue that cause login failed.

See merge request CIEFWorldwideSdnBhd/shipping-portal!15
2021-07-14 02:10:01 +00:00
weichien00 13b99f01ee fix: company list api - parameter "filter" change to "filters". update description. 2021-07-13 23:54:11 +08:00
LEE WC a8ac1b8cb1 Merge branch 'hotfix-user-model-typo' into '223-company-api'
hotfix: typo issue that cause login failed.

See merge request CIEFWorldwideSdnBhd/shipping-portal!16
2021-07-13 15:38:09 +00:00
weichien00 5fca745e58 hotfix: typo issue that cause login failed. 2021-07-13 23:32:03 +08:00
weichien00 8cde051869 fix: User Model - typo on companyModule. 2021-07-13 23:25:31 +08:00
weichien00 fa2f0bb56f update: account registration api - add new input field : business_type. 2021-07-13 23:07:36 +08:00
weichien00 d254b56629 fix: include business_type for company_module process in create_customer logic. 2021-07-13 22:23:56 +08:00
weichien00 b0b3f27738 update: add create company_module processsor in create company logic. #7 2021-07-13 22:22:45 +08:00
weichien00 a9c921b8cf fix: save businessType as type in company_module table. 2021-07-13 22:20:54 +08:00
weichien00 7700d863d6 update: CompanyModule Model - add belongto relationship with company. 2021-07-13 22:09:00 +08:00
Fairuz ddbf83465e Orders APIs WIP 2021-07-13 11:58:03 +08:00
weichien00 bbfd905e5d update: add company relationship with company module. 2021-07-12 16:51:43 +08:00
weichien00 ab5202d8bb fix: company seeder create company module along with creating new compaany 2021-07-12 16:50:12 +08:00
weichien00 7acda23f3d new: eloquent filter for company_module.type. 2021-07-12 16:48:39 +08:00
Fairuz e6fa91f696 Merge branch 'master' into 229_order_apis 2021-07-12 14:24:03 +08:00
Fairuz 1ada18c33f Order API progress 2021-07-12 10:19:05 +08:00
Fairuz ec2896fbbe Merge branch 'swagger_registration_flow' into 'master'
Swagger registration flow

See merge request CIEFWorldwideSdnBhd/shipping-portal!14
2021-07-12 02:18:41 +00:00
Fairuz ccb8e630ce Merge branch 'master' into 229_order_apis 2021-07-11 13:59:45 +08:00
Fairuz 0fa316a7ce Merge branch 'swagger_address' into 'master'
Missing resources address, district & swagger docs for it

See merge request CIEFWorldwideSdnBhd/shipping-portal!10
2021-07-09 10:55:58 +00:00
Fairuz 3cf303f33f Merge branch 'master' into swagger_address 2021-07-09 18:54:49 +08:00
weichien00 9c66821135 update swagger: default set to 2 and put remark on type field in account registration api. 2021-07-09 11:36:14 +08:00
weichien00 785a3a5a85 swagger - add check email existance, company list api 2021-07-09 02:11:13 +08:00
LEE WC a9bcf46d2f Merge branch 'swagger_address' into 'swagger_registration_flow'
Missing resources address, district & swagger docs for it

See merge request CIEFWorldwideSdnBhd/shipping-portal!12
2021-07-08 17:50:06 +00:00
Fairuz 861341ce3a Migration file for orders 2021-07-08 16:30:10 +08:00
Fairuz f603ef53c4 Missing resources address, district & swagger docs for it 2021-07-07 17:17:56 +08:00
1057 changed files with 52536 additions and 43368 deletions
+6
View File
@@ -49,3 +49,9 @@ PUSHER_APP_CLUSTER=mt1
MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
UNITY_APP_URL="https://unity.izyim.com"
EXCHANGE_URL=https://dev.exchange.cief-malaysia.com/
MIX_EXCHANGE_URL="${EXCHANGE_URL}"
YD_API_CODE=''
+4 -1
View File
@@ -22,4 +22,7 @@ rebuild_docker.sh
docker/*
db/*
docker-compose.yml
package-lock.json
package-lock.json
public/*
/public/*
storage/framework/laravel-excel/*
@@ -63,7 +63,7 @@ abstract class AbstractControllerLogic
} catch (ErrorException|GeneralExceptions|TypeError $exception){
return (new ApiResponseObject($this->getNotificationTitle().' failed', $exception->getMessage(),
$exception->getCode() ? $exception->getCode() : HttpStatus::SERVER_ERROR))->handler();
!in_array($exception->getCode(), [0, 42000]) ? $exception->getCode() : HttpStatus::SERVER_ERROR))->handler();
}
}
@@ -43,4 +43,4 @@ abstract class AbstractListRecord extends AbstractGetRecord
}
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class ClaimantId implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('claimant_id', $value);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class CompanyModuleId implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('company_module_id', $value);
}
}
@@ -0,0 +1,21 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Builder;
class CreatedAfter implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('created_at', '>', Carbon::parse($value));
}
}
@@ -0,0 +1,32 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\PackingListType;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
class Delivered implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('packingList', function($packingList){
return $packingList->where('type', PackingListType::SHIPPING_PACKING_LIST)->where('status', ApprovalStatus::APPROVED);
})->whereHas('container',
function($container) {
return $container->where('containers.status', ApprovalStatus::COMPLETED);
}
)->whereHas('deliverySchedules',
function($schedule) {
return $schedule->where('eta', '<', Carbon::now())->whereIn('schedules.status', [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED]);
}
);
}
}
@@ -0,0 +1,22 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class HasBusinessModuleType implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('companyModules', function (Builder $query) use($value) {
$query->where('type', $value);
});
}
}
@@ -0,0 +1,22 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class HasMorphCompanyModule implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHasMorph('owner', ['App\Models\CompanyModule'], function ($query) use($value) {
$query->where('id',$value);
});
}
}
@@ -0,0 +1,24 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class HasPendingDelivery implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $value ? $builder->whereHas('packingLists', function (Builder $query) use($value) {
$query->whereDoesntHave('transports');
}) : $builder->whereDoesntHave('packingLists', function (Builder $query) use($value) {
$query->whereDoesntHave('transports');
});
}
}
@@ -0,0 +1,32 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\PackingListType;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
class InDestinationWarehouse implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('packingList', function($packingList){
return $packingList->where('type', PackingListType::SHIPPING_PACKING_LIST)->where('status', ApprovalStatus::APPROVED);
})->whereHas('container',
function($container) {
return $container->where('containers.status', ApprovalStatus::COMPLETED);
}
)->whereDoesntHave('deliverySchedules',
function($schedule) {
return $schedule->where('etd', '<', Carbon::now())->whereIn('schedules.status', [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED]);
}
);
}
}
@@ -0,0 +1,29 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\PackingListType;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
class InOriginWarehouse implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('packingList', function($packingList){
return $packingList->where('type', PackingListType::SHIPPING_PACKING_LIST)->where('status', ApprovalStatus::APPROVED);
})->whereDoesntHave('shippingSchedules',
function($schedule) {
return $schedule->where('etd', '<', Carbon::now())
->whereIn('schedules.status', [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED]);
}
);
}
}
@@ -0,0 +1,33 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\PackingListType;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
class InTransit implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('packingList', function($packingList){
return $packingList->where('type', PackingListType::SHIPPING_PACKING_LIST)->where('status', ApprovalStatus::APPROVED);
})->whereHas('container',
function($container) {
return $container->where('containers.status', ApprovalStatus::PENDING_VERIFICATION);
}
)->whereHas('shippingSchedules',
function($schedule) {
return $schedule->where('etd', '<', Carbon::now())
->whereIn('schedules.status', [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED]);
}
);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class OwnerId implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('owner_id', $value);
}
}
@@ -0,0 +1,31 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use Illuminate\Support\Carbon;
use Illuminate\Database\Eloquent\Builder;
class PackingListDeliveryStatus implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $value == 1 ? $builder->whereHas('containers', function ($query){
$query->where('containers.status', ApprovalStatus::COMPLETED);
})->whereDoesntHave('transports') : ($value == 2 ? $builder->whereHas('transports', function (Builder $query) use ($value) {
$query->whereDoesntHave('schedules', function (Builder $query) use ($value) {
$query->where('status', '!=', ApprovalStatus::EXPIRED)->where('eta', '<=', Carbon::now());
});
}) : $builder->whereHas('transports', function (Builder $query) use ($value) {
$query->whereHas('schedules', function (Builder $query) use ($value) {
$query->where('status', '!=', ApprovalStatus::EXPIRED)->where('eta', '<=', Carbon::now());
});
}));
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class PackingListStatus implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('packing_lists.status', $value);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class PackingListType implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('packing_lists.type', $value);
}
}
@@ -14,7 +14,7 @@ class Reference implements Filter
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('Reference', '=', $value);
return $builder->where('reference', '=', $value);
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class ReferenceLike implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->where('reference', 'LIKE', '%'.$value.'%');
}
}
@@ -0,0 +1,24 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\PackingListType;
use Illuminate\Database\Eloquent\Builder;
class WarehouseParcels implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('packingList', function ($query){
return $query->where('type', PackingListType::WAREHOUSE_RECEIVE_LIST)->where('status', ApprovalStatus::APPROVED);
});
}
}
@@ -0,0 +1,22 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Facades\DB;
class WithArrivalDate implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->leftJoin('transport_arrangements', function ($join) {
$join->on('packing_lists.id', '=', 'transport_arrangements.owner_id')->where('transport_arrangements.owner_type', 'App\Models\PackingList');
})->addSelect(['packing_lists.*', DB::raw('transport_arrangements.drop_date as arrival_date')]);
}
}
@@ -0,0 +1,22 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class WithCompanyModuleType implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('companyModule', function ($query) use ($value) {
$query->where('company_modules.type', '=', $value);
});
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class WithConfirmedOrders implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereHas('parcels');
}
}
@@ -5,7 +5,7 @@ namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class WithBookings implements Filter
class WithOrders implements Filter
{
/**
@@ -15,6 +15,6 @@ class WithBookings implements Filter
*/
public static function apply(Builder $builder, $value)
{
return $builder->with('bookings');
return $builder->with('orders');
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class WithOwner implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->with('owner');
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class WithPackingLists implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->with('packingLists');
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class WithParcels implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->with('parcels');
}
}
@@ -0,0 +1,20 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class WithoutConfirmedOrders implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereDoesntHave('parcels');
}
}
@@ -0,0 +1,13 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphMany;
interface Addressable
{
public function addresses(): morphMany;
}
@@ -0,0 +1,13 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphMany;
interface ContainerOwner
{
public function containers(): morphMany;
}
@@ -0,0 +1,15 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphTo;
interface Notifiable
{
public function subject(): MorphTo;
public function target(): MorphTo;
public function causer(): MorphTo;
}
@@ -0,0 +1,12 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphMany;
interface Packable
{
public function packingLists(): morphMany;
}
@@ -0,0 +1,13 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphMany;
interface Remarkable
{
public function remarks(): morphMany;
}
@@ -0,0 +1,13 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphMany;
interface Steppable
{
public function steps(): morphMany;
}
@@ -0,0 +1,13 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphMany;
interface Transactionable
{
public function transactions(): morphMany;
}
@@ -0,0 +1,13 @@
<?php
namespace App\Classes\General\Interfaces;
use Illuminate\Database\Eloquent\Relations\MorphMany;
interface Transportable
{
public function transports(): morphMany;
}
@@ -0,0 +1,29 @@
<?php
namespace App\Classes\Jobs;
use App\Classes\Modules\PackingLists\Processors\FetchContainersStatusUpdateFromVTPortalProcessor;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class FetchContainersStatusUpdateFromVTPortalJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $timeout = 900;
/**
* Execute the job.
*
* @return void
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
public function handle()
{
(App()->make(FetchContainersStatusUpdateFromVTPortalProcessor::class))->execute();
}
}
@@ -0,0 +1,31 @@
<?php
namespace App\Classes\Jobs;
use App\Classes\Modules\PackingLists\Processors\FetchDeliveryListFromVTPortalProcessor;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class FetchDeliveryListFromVTPortalJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $timeout = 900;
/**
* Execute the job.
*
* @return void
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
public function handle()
{
(App()->make(FetchDeliveryListFromVTPortalProcessor::class))->execute();
}
}
@@ -0,0 +1,31 @@
<?php
namespace App\Classes\Jobs;
use App\Classes\Modules\PackingLists\Processors\FetchLoadedContainersFromVTPortalProcessor;
use Carbon\Carbon;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class FetchLoadedContainersFromVTPortalJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $timeout = 900;
/**
* Execute the job.
*
* @return void
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
public function handle()
{
(App()->make(FetchLoadedContainersFromVTPortalProcessor::class))->execute();
}
}
@@ -0,0 +1,32 @@
<?php
namespace App\Classes\Jobs;
use App\Classes\Modules\PackingLists\Processors\FetchOrderListsFromYdPortalProcessor;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class FetchOrdersFromYDPortalJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $timeout = 900;
/**
* Execute the job.
*
* @return void
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
public function handle()
{
(App()->make(FetchOrderListsFromYdPortalProcessor::class))->execute();
}
}
@@ -0,0 +1,30 @@
<?php
namespace App\Classes\Jobs;
use App\Classes\Modules\PackingLists\Processors\FetchPackingListFromVTPortalProcessor;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class FetchPackingListFromVTPortalJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $timeout = 1800;
/**
* Execute the job.
*
* @return void
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
public function handle()
{
(App()->make(FetchPackingListFromVTPortalProcessor::class))->execute();
}
}
@@ -0,0 +1,31 @@
<?php
namespace App\Classes\Jobs;
use App\Classes\Modules\PackingLists\Processors\FetchWarehouseReceiveListFromVTPortalProcessor;
use Carbon\Carbon;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
class FetchWarehouseReceiveListFromVTPortalJob implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
public $timeout = 900;
/**
* Execute the job.
*
* @return void
* @throws \Illuminate\Contracts\Container\BindingResolutionException
*/
public function handle()
{
(App()->make(FetchWarehouseReceiveListFromVTPortalProcessor::class))->execute();
}
}
@@ -0,0 +1,78 @@
<?php
namespace App\Classes\Modules\Accounts\ControllersLogic;
use App\Classes\Exceptions\ResourceConflictException;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Accounts\Processors\CreateUserProcessor;
use App\Classes\Modules\Accounts\Processors\GenerateEmailVerificationAttemptProcessor;
use App\Classes\Modules\Companies\DataTransferObjects\EmploymentObject;
use App\Classes\Modules\Companies\Processors\AssignEmployeeProcessor;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Http\Resources\UserResource;
use Illuminate\Database\QueryException;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class AddNewMemberLogic extends AbstractControllerLogic
{
public function notification(): array
{
return [
'title' => 'Updated Email',
'message' => 'Successfully updated email'
];
}
/**
* @var AssignEmployeeProcessor
*/
private $assignEmployeeProcessor;
/**
* @var GenerateEmailVerificationAttemptProcessor
*/
private $generateEmailVerificationAttemptProcessor;
/**
* AddNewMemberLogic constructor.
* @param AssignEmployeeProcessor $assignEmployeeProcessor
* @param GenerateEmailVerificationAttemptProcessor $generateEmailVerificationAttemptProcessor
*/
public function __construct(AssignEmployeeProcessor $assignEmployeeProcessor, GenerateEmailVerificationAttemptProcessor $generateEmailVerificationAttemptProcessor)
{
$this->assignEmployeeProcessor = $assignEmployeeProcessor;
$this->generateEmailVerificationAttemptProcessor = $generateEmailVerificationAttemptProcessor;
}
/**
* @param Request $request
* @return JsonResponse
* @throws ResourceConflictException
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
try {
$user = Auth::user()->replicate();
$user->email = $request->input('email');
$user->status = ApprovalStatus::PENDING_VERIFICATION;
$user->save();
} catch (QueryException $exception){
throw new ResourceConflictException('Unable to change your email address as it already exists');
}
if($company = Auth::user()->companyModule()->first()){
$Object = new EmploymentObject($company, $user);
$this->assignEmployeeProcessor->execute($Object);
}
$this->generateEmailVerificationAttemptProcessor->execute($user);
return $this->resourceResponse(new UserResource($user));
}
}
@@ -35,7 +35,6 @@ class AuthenticateUserLogic extends AbstractControllerLogic
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\AccessUnauthorisedException
* @throws \App\Classes\Exceptions\InternalServerErrorException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
protected function logic(Request $request): JsonResponse {
@@ -4,21 +4,28 @@ namespace App\Classes\Modules\Accounts\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\General\Services\GeneratesInitials;
use App\Classes\Modules\Accounts\Processors\AuthenticationProcessor;
use App\Classes\Modules\Accounts\Processors\CreateUserProcessor;
use App\Classes\Modules\Accounts\Processors\GenerateEmailVerificationAttemptProcessor;
use App\Classes\Modules\Companies\DataTransferObjects\CompanyConnectionObject;
use App\Classes\Modules\Companies\Processors\AssignEmployeeProcessor;
use App\Classes\Modules\Companies\Processors\AssignSegmentProcessor;
use App\Classes\Modules\Companies\Processors\CreateCompanyProcessor;
use App\Classes\Modules\Companies\Processors\CreateCompanyModuleProcessor;
use App\Classes\Modules\Companies\DataTransferObjects\EmploymentObject;
use App\Classes\Modules\Companies\Services\ApprovesCompanyConnection;
use App\Classes\Modules\Companies\Services\CreatesCompanyConnection;
use App\Classes\Modules\Contacts\DataTransferObjects\ContactObject;
use App\Classes\Modules\Contacts\Processors\CreateContactProcessor;
use App\Classes\Modules\Documents\Processors\UploadIdentityDocumentProcessor;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\BusinessType;
use App\Classes\ValueObjects\Constants\CompanyType;
use App\Classes\ValueObjects\Constants\RoleTypes;
use App\Models\Company;
use App\Models\CompanyModule;
use App\Models\User;
use Illuminate\Http\JsonResponse;
@@ -51,15 +58,18 @@ class CreateCustomerLogic extends AbstractControllerLogic
/** @var CreateContactProcessor */
private $createContactProcessor;
/** @var CreatesCompanyConnection */
private $createsCompanyConnection;
/** @var ApprovesCompanyConnection */
private $approvesCompanyConnection;
/** @var AssignEmployeeProcessor */
private $assignEmployeeProcessor;
/** @var UploadIdentityDocumentProcessor */
private $uploadIdentityDocumentProcessor;
/** @var AssignSegmentProcessor */
private $assignSegmentProcessor;
/** @var AuthenticationProcessor */
private $authenticationProcessor;
@@ -72,20 +82,22 @@ class CreateCustomerLogic extends AbstractControllerLogic
* @param CreateCompanyProcessor $createCompanyProcessor
* @param CreateCompanyModuleProcessor $createCompanyModuleProcessor
* @param CreateContactProcessor $createContactProcessor
* @param CreatesCompanyConnection $createsCompanyConnection
* @param ApprovesCompanyConnection $approvesCompanyConnection
* @param AssignEmployeeProcessor $assignEmployeeProcessor
* @param AssignSegmentProcessor $assignSegmentProcessor
* @param UploadIdentityDocumentProcessor $uploadIdentityDocumentProcessor
* @param AuthenticationProcessor $authenticationProcessor
* @param GenerateEmailVerificationAttemptProcessor $generateEmailVerificationAttemptProcessor
*/
public function __construct(CreateUserProcessor $createUserProcessor, CreateCompanyProcessor $createCompanyProcessor, CreateCompanyModuleProcessor $createCompanyModuleProcessor, CreateContactProcessor $createContactProcessor, AssignEmployeeProcessor $assignEmployeeProcessor, AssignSegmentProcessor $assignSegmentProcessor, AuthenticationProcessor $authenticationProcessor, GenerateEmailVerificationAttemptProcessor $generateEmailVerificationAttemptProcessor, UploadIdentityDocumentProcessor $uploadIdentityDocumentProcessor)
public function __construct(CreateUserProcessor $createUserProcessor, CreateCompanyProcessor $createCompanyProcessor, CreateCompanyModuleProcessor $createCompanyModuleProcessor, CreateContactProcessor $createContactProcessor, CreatesCompanyConnection $createsCompanyConnection, ApprovesCompanyConnection $approvesCompanyConnection, AssignEmployeeProcessor $assignEmployeeProcessor, UploadIdentityDocumentProcessor $uploadIdentityDocumentProcessor, AuthenticationProcessor $authenticationProcessor, GenerateEmailVerificationAttemptProcessor $generateEmailVerificationAttemptProcessor)
{
$this->createUserProcessor = $createUserProcessor;
$this->createCompanyProcessor = $createCompanyProcessor;
$this->createCompanyModuleProcessor = $createCompanyModuleProcessor;
$this->createContactProcessor = $createContactProcessor;
$this->createsCompanyConnection = $createsCompanyConnection;
$this->approvesCompanyConnection = $approvesCompanyConnection;
$this->assignEmployeeProcessor = $assignEmployeeProcessor;
$this->assignSegmentProcessor = $assignSegmentProcessor;
$this->uploadIdentityDocumentProcessor = $uploadIdentityDocumentProcessor;
$this->authenticationProcessor = $authenticationProcessor;
$this->generateEmailVerificationAttemptProcessor = $generateEmailVerificationAttemptProcessor;
@@ -96,30 +108,37 @@ class CreateCustomerLogic extends AbstractControllerLogic
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\AccessUnauthorisedException
* @throws \App\Classes\Exceptions\InternalServerErrorException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
/** @var User $user */
$user = $this->createUserProcessor->execute($request, RoleTypes::USER, App::environment(['local']) ? ApprovalStatus::APPROVED : ApprovalStatus::PENDING_VERIFICATION);
$user = $this->createUserProcessor->execute($request, RoleTypes::USER, !App::environment(['production']) ? ApprovalStatus::APPROVED : ApprovalStatus::PENDING_VERIFICATION);
/** @var Company $company */
$company = $this->createCompanyProcessor->execute($request, $request->input('type'), ApprovalStatus::PENDING_SUBMISSION);
$company = $this->createCompanyProcessor->execute($request->input('type') === CompanyType::COMPANY_BUSINESS ? $request->input('company_name') : $request->input('name'), $request->input('type'), ApprovalStatus::PENDING_SUBMISSION);
$this->createContactProcessor->execute($request, $company);
$contactObject = new ContactObject($request->input('name'), $request->input('phone'), $request->input('contact_email'), $request->input('wechat_id'));
$companyModule = $this->createCompanyModuleProcessor->execute($company);
$this->createContactProcessor->execute($contactObject, $company);
/** @var CompanyModule $companyModule */
$companyModule = $this->createCompanyModuleProcessor->execute($company, BusinessType::IMPORTER);
$connectionObject = new CompanyConnectionObject($companyModule, 'CIEF', mt_rand(1000, 9999).(new GeneratesInitials())->name($company->name)->length(3)->generate());
$connection = $this->createsCompanyConnection->execute($connectionObject);
$this->approvesCompanyConnection->execute($connection);
$Object = new EmploymentObject($companyModule, $user);
$this->assignEmployeeProcessor->execute($Object);
//$this->assignSegmentProcessor->execute($company);
$this->assignEmployeeProcessor->execute($Object);
$this->uploadIdentityDocumentProcessor->execute($request, $company);
$this->generateEmailVerificationAttemptProcessor->execute($user);
// $this->generateEmailVerificationAttemptProcessor->execute($user);
return $this->response($this->authenticationProcessor->execute($request));
}
@@ -0,0 +1,105 @@
<?php
namespace App\Classes\Modules\Accounts\ControllersLogic;
use App\Classes\Exceptions\AccessForbiddenException;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Accounts\Processors\AuthenticationProcessor;
use App\Classes\Modules\Accounts\Processors\CreateUserProcessor;
use App\Classes\Modules\Companies\Processors\AssignEmployeeProcessor;
use App\Classes\Modules\Companies\DataTransferObjects\EmploymentObject;
use App\Classes\Modules\Companies\Services\FetchesCompany;
use App\Classes\Modules\Contacts\DataTransferObjects\ContactObject;
use App\Classes\Modules\Contacts\Processors\CreateContactProcessor;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\RoleTypes;
use App\Models\Company;
use App\Models\CompanyModule;
use App\Models\User;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\App;
class CreateInvitedCustomerLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification(): array
{
return [
'title' => 'Created User',
'message' => 'You have successfully created a new User'
];
}
/** @var CreateUserProcessor */
private $createUserProcessor;
/** @var CreateContactProcessor */
private $createContactProcessor;
/** @var FetchesCompany */
private $fetchesCompany;
/** @var AssignEmployeeProcessor */
private $assignEmployeeProcessor;
/** @var AuthenticationProcessor */
private $authenticationProcessor;
/**
* CreateInvitedCustomerLogic constructor.
* @param CreateUserProcessor $createUserProcessor
* @param CreateContactProcessor $createContactProcessor
* @param FetchesCompany $fetchesCompany
* @param AssignEmployeeProcessor $assignEmployeeProcessor
* @param AuthenticationProcessor $authenticationProcessor
*/
public function __construct(CreateUserProcessor $createUserProcessor, CreateContactProcessor $createContactProcessor, FetchesCompany $fetchesCompany, AssignEmployeeProcessor $assignEmployeeProcessor, AuthenticationProcessor $authenticationProcessor)
{
$this->createUserProcessor = $createUserProcessor;
$this->createContactProcessor = $createContactProcessor;
$this->fetchesCompany = $fetchesCompany;
$this->assignEmployeeProcessor = $assignEmployeeProcessor;
$this->authenticationProcessor = $authenticationProcessor;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\AccessUnauthorisedException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
/** @var Company $company */
$company = $this->fetchesCompany->execute(['id' => $request->input('company_id')]);
/** @var CompanyModule $companyModule */
$companyModule = $company->companyModules()->first();
if($companyModule->employees()->exists()){
throw new AccessForbiddenException('This company\'s account has been claimed by another user already!');
}
/** @var User $user */
$user = $this->createUserProcessor->execute($request, RoleTypes::USER, !App::environment(['production']) ? ApprovalStatus::APPROVED : ApprovalStatus::PENDING_VERIFICATION);
$contactObject = new ContactObject($request->input('name'), $request->input('phone'), $request->input('contact_email'), $request->input('wechat_id'));
$this->createContactProcessor->execute($contactObject, $company);
$Object = new EmploymentObject($companyModule, $user);
$this->assignEmployeeProcessor->execute($Object);
return $this->response($this->authenticationProcessor->execute($request));
}
}
@@ -0,0 +1,44 @@
<?php
namespace App\Classes\Modules\Accounts\ControllersLogic;
use App\Classes\Modules\Accounts\Processors\CrossAuthenticationProcessor;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CrossAuthenticateUserLogic extends AbstractControllerLogic
{
protected function notification():array {
return [
'title' => 'Cross Authentication',
'message' => 'You have successfully logged in to your account'
];
}
/** @var CrossAuthenticationProcessor */
private $crossAuthenticationProcessor;
/**
* CrossAuthenticateUserLogic constructor.
* @param CrossAuthenticationProcessor $authenticationProcessor
*/
public function __construct(CrossAuthenticationProcessor $crossAuthenticationProcessor)
{
$this->crossAuthenticationProcessor = $crossAuthenticationProcessor;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\AccessUnauthorisedException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
protected function logic(Request $request): JsonResponse {
return $this->response($this->crossAuthenticationProcessor->execute($request));
}
}
@@ -27,7 +27,6 @@ class LogoutUserLogic extends AbstractControllerLogic
*/
public function __construct(InvalidatesAuthenticationToken $invalidatesAuthenticationToken)
{
logger("logout user logic");
$this->invalidatesAuthenticationToken = $invalidatesAuthenticationToken;
}
@@ -37,7 +36,6 @@ class LogoutUserLogic extends AbstractControllerLogic
*/
protected function logic(Request $request): JsonResponse {
logger("logout");
$this->invalidatesAuthenticationToken->execute();
return $this->response();
@@ -0,0 +1,43 @@
<?php
namespace App\Classes\Modules\Accounts\DataTransferObjects;
use App\Classes\General\Interfaces\DataTransferObject;
class CrossAuthenticationCredentialsObject implements DataTransferObject
{
/** @var string */
private $access_token;
/** @var string */
private $platform;
/**
* CrossAuthenticationCredentialsObject constructor.
* @param string $access_token
* @param string $platform
*/
public function __construct(string $access_token, int $platform)
{
$this->access_token = $access_token;
$this->platform = $platform;
}
/**
* @return string
*/
public function getAccessToken(): string
{
return $this->access_token;
}
/**
* @return string
*/
public function getPlatform(): int
{
return $this->platform;
}
}
@@ -4,19 +4,14 @@ namespace App\Classes\Modules\Accounts\DataTransferObjects;
use App\Classes\General\Interfaces\DataTransferObject;
class FullnameObject implements DataTransferObject
class FullNameObject implements DataTransferObject
{
/** @var string */
private $name;
/**
* UserObject constructor.
* FullNameObject constructor.
* @param string $name
* @param string $email
* @param string $password
* @param string $passwordConfirmation
* @param int|null $type
* @param int|null $status
*/
public function __construct(string $name)
{
@@ -0,0 +1,54 @@
<?php
namespace App\Classes\Modules\Accounts\DataTransferObjects;
use App\Classes\General\Interfaces\DataTransferObject;
use App\Models\User;
class UserSocialAccountObject implements DataTransferObject
{
/** @var String */
private $app_id;
/** @var User */
private $user;
/** @var integer */
private $platform;
/**
* UserSocialAccountObject constructor.
* @param String $token
* @param String $app_id
*/
public function __construct(String $app_id, User $user, int $platform)
{
$this->app_id = $app_id;
$this->user = $user;
$this->platform = $platform;
}
/**
* @return string
*/
public function getAppId(): String
{
return $this->app_id;
}
/**
* @return User
*/
public function getUser(): User
{
return $this->user;
}
/**
* @return int
*/
public function getPlatform(): int
{
return $this->platform;
}
}
@@ -0,0 +1,211 @@
<?php
namespace App\Classes\Modules\Accounts\Processors;
use App\Classes\Modules\Accounts\DataTransferObjects\CrossAuthenticationCredentialsObject;
use App\Classes\Modules\Companies\DataTransferObjects\CompanyConnectionObject;
use App\Classes\Modules\Companies\DataTransferObjects\EmploymentObject;
use App\Classes\Modules\Accounts\DataTransferObjects\UserSocialAccountObject;
use App\Classes\Modules\Accounts\Services\CrossAuthenticatesUser;
use App\Classes\Modules\Accounts\Services\AuthenticationRedirect;
use App\Classes\Modules\Accounts\Services\FetchesUser;
use App\Classes\Modules\Accounts\Services\GeneratesAuthenticationToken;
use App\Classes\Modules\Accounts\Standards\Rules\CanCrossAuthenticateUser;
use App\Classes\Modules\Contacts\DataTransferObjects\ContactObject;
use App\Classes\Modules\Accounts\Processors\CreateUserProcessor;
use App\Classes\Modules\Companies\Processors\CreateCompanyProcessor;
use App\Classes\Modules\Contacts\Processors\CreateContactProcessor;
use App\Classes\Modules\Companies\Processors\CreateCompanyModuleProcessor;
use App\Classes\Modules\Companies\Services\CreatesCompanyConnection;
use App\Classes\General\Services\GeneratesInitials;
use App\Classes\Modules\Companies\Services\ApprovesCompanyConnection;
use App\Classes\Modules\Companies\Processors\AssignEmployeeProcessor;
use App\Classes\Modules\Documents\Processors\UploadIdentityDocumentProcessor;
use App\Classes\Modules\Accounts\Services\CreatesUserSocialAccount;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\BusinessType;
use App\Classes\ValueObjects\Constants\CompanyType;
use App\Classes\ValueObjects\Constants\RoleTypes;
use Illuminate\Http\Request;
use App\Models\UserSocialAccount;
class CrossAuthenticationProcessor
{
/** @var CanCrossAuthenticateUser */
private $canCrossAuthenticateUser;
/** @var CrossAuthenticatesUser */
private $authenticatesUser;
/** @var GeneratesAuthenticationToken */
private $generatesAuthenticationToken;
/** @var FetchesUser */
private $fetchesUser;
/** @var AuthenticationRedirect */
private $authenticationRedirect;
/** @var CreateUserProcessor */
private $createUserProcessor;
/** @var CreateCompanyProcessor */
private $createCompanyProcessor;
/** @var CreateContactProcessor */
private $createContactProcessor;
/** @var CreateCompanyModuleProcessor */
private $createCompanyModuleProcessor;
/** @var CreatesCompanyConnection */
private $createsCompanyConnection;
/** @var ApprovesCompanyConnection */
private $approvesCompanyConnection;
/** @var AssignEmployeeProcessor */
private $assignEmployeeProcessor;
/** @var UploadIdentityDocumentProcessor */
private $uploadIdentityDocumentProcessor;
/** @var CreatesUserSocialAccount */
private $createsUserSocialAccount;
/**
* CrossAuthenticationProcessor constructor.
* @param CanCrossAuthenticateUser $canCrossAuthenticateUser
* @param CrossAuthenticatesUser $crossAuthenticatesUser
* @param GeneratesAuthenticationToken $generatesAuthenticationToken
* @param FetchesUser $fetchesUser
* @param AuthenticationRedirect $authenticationRedirect
* @param CreateUserProcessor $createUserProcessor
* @param CreateCompanyProcessor $createCompanyProcessor
* @param CreateContactProcessor $createContactProcessor
* @param CreateCompanyModuleProcessor $createCompanyModuleProcessor
* @param CreatesCompanyConnection $createsCompanyConnection
* @param ApprovesCompanyConnection $approvesCompanyConnection
* @param AssignEmployeeProcessor $assignEmployeeProcessor
* @param UploadIdentityDocumentProcessor $uploadIdentityDocumentProcessor
* @param CreatesUserSocialAccount $createsUserSocialAccount
*/
public function __construct(
CanCrossAuthenticateUser $canCrossAuthenticateUser,
CrossAuthenticatesUser $crossAuthenticatesUser,
GeneratesAuthenticationToken $generatesAuthenticationToken,
FetchesUser $fetchesUser,
AuthenticationRedirect $authenticationRedirect,
CreateUserProcessor $createUserProcessor,
CreateCompanyProcessor $createCompanyProcessor,
CreateContactProcessor $createContactProcessor,
CreateCompanyModuleProcessor $createCompanyModuleProcessor,
CreatesCompanyConnection $createsCompanyConnection,
ApprovesCompanyConnection $approvesCompanyConnection,
AssignEmployeeProcessor $assignEmployeeProcessor,
UploadIdentityDocumentProcessor $uploadIdentityDocumentProcessor,
CreatesUserSocialAccount $createsUserSocialAccount
)
{
$this->canCrossAuthenticateUser = $canCrossAuthenticateUser;
$this->crossAuthenticatesUser = $crossAuthenticatesUser;
$this->generatesAuthenticationToken = $generatesAuthenticationToken;
$this->fetchesUser = $fetchesUser;
$this->authenticationRedirect = $authenticationRedirect;
$this->createUserProcessor = $createUserProcessor;
$this->createCompanyProcessor = $createCompanyProcessor;
$this->createContactProcessor = $createContactProcessor;
$this->createCompanyModuleProcessor = $createCompanyModuleProcessor;
$this->createsCompanyConnection = $createsCompanyConnection;
$this->createsCompanyConnection = $createsCompanyConnection;
$this->approvesCompanyConnection = $approvesCompanyConnection;
$this->assignEmployeeProcessor = $assignEmployeeProcessor;
$this->uploadIdentityDocumentProcessor = $uploadIdentityDocumentProcessor;
$this->createsUserSocialAccount = $createsUserSocialAccount;
}
/**
* @param Request $request
* @return array
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\AccessUnauthorisedException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function execute(Request $request): array {
$object = new CrossAuthenticationCredentialsObject($request->input('access_token'), $request->input('platform'));
$this->canCrossAuthenticateUser->passes($object);
$cross = $this->crossAuthenticatesUser->execute($object);
$user_social_account = UserSocialAccount::where('app_id', $cross->token->user->id)->first();
if (!$user_social_account) {
$request->request->add([
'name' => $cross->token->user->name,
'email' => $cross->token->user->email,
'password' => 'pass123',
'password_confirmation' => 'pass123',
]);
$user = $this->createUserProcessor->execute(
$request,
RoleTypes::USER,
env('APP_ENV') != 'production' ? ApprovalStatus::APPROVED : ApprovalStatus::PENDING_VERIFICATION
);
$company = $this->createCompanyProcessor->execute(
$cross->payload->data->name,
CompanyType::COMPANY_BUSINESS,
ApprovalStatus::PENDING_SUBMISSION
);
$contactObject = new ContactObject(
$cross->payload->data->contact->reference,
$cross->payload->data->contact->phone,
$cross->payload->data->contact->email,
$cross->payload->data->contact->wechat_id
);
$contact = $this->createContactProcessor->execute($contactObject, $company);
$companyModule = $this->createCompanyModuleProcessor->execute($company, BusinessType::IMPORTER);
$connectionObject = new CompanyConnectionObject(
$companyModule, 'CIEF',
mt_rand(1000, 9999).(new GeneratesInitials())->name($company->name)->length(3)->generate()
);
$connection = $this->createsCompanyConnection->execute($connectionObject);
$this->approvesCompanyConnection->execute($connection);
$object = new EmploymentObject($companyModule, $user);
$this->assignEmployeeProcessor->execute($object);
$request->request->add([
'files' => [$cross->document->src],
'identification_no' => $cross->payload->data->identification->reference,
]);
$this->uploadIdentityDocumentProcessor->execute($request, $company);
$object = new UserSocialAccountObject(
$cross->token->user->id,
$user,
$request->input('platform')
);
$this->createsUserSocialAccount->execute($object);
}
else {
$user = $user_social_account->user()->first();
}
return ['access_token' => $this->generatesAuthenticationToken->execute($user), 'redirect_url' => $this->authenticationRedirect->url($user)];
}
}
@@ -56,4 +56,4 @@ class GenerateEmailVerificationAttemptProcessor
}
}
}
@@ -2,9 +2,9 @@
namespace App\Classes\Modules\Accounts\Services;
use App\Classes\Exceptions\AccessUnauthorisedException;
use App\Classes\Modules\Accounts\DataTransferObjects\AuthenticationCredentialsObject;
class AuthenticatesUser
{
@@ -0,0 +1,24 @@
<?php
namespace App\Classes\Modules\Accounts\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\Modules\Accounts\DataTransferObjects\UserSocialAccountObject;
use App\Models\UserSocialAccount;
class CreatesUserSocialAccount extends AbstractUpdateRecord
{
/**
* @param UserSocialAccountObject $object
* @return \Illuminate\Database\Eloquent\Model
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function execute(UserSocialAccountObject $object) {
$model = new UserSocialAccount();
$model->user_id = $object->getUser()->id;
$model->app_id = $object->getAppId();
$model->platform = $object->getPlatform();
return $this->handler($model);
}
}
@@ -0,0 +1,40 @@
<?php
namespace App\Classes\Modules\Accounts\Services;
use Illuminate\Support\Facades\Http;
use App\Classes\Exceptions\AccessUnauthorisedException;
use App\Classes\Modules\Accounts\DataTransferObjects\CrossAuthenticationCredentialsObject;
use App\Classes\ValueObjects\Constants\PlatformType;
class CrossAuthenticatesUser
{
/**
* @param CrossAuthenticationCredentialsObject $object
* @return false|string
* @throws AccessUnauthorisedException
*/
public function execute(CrossAuthenticationCredentialsObject $object){
if ($object->getPlatform() == PlatformType::EXCHANGE) {
$token = $object->getAccessToken();
$tokenParts = explode(".", $token);
$tokenPayload = base64_decode($tokenParts[1]);
$jwtPayload = json_decode($tokenPayload);
$response = Http::withToken($object->getAccessToken())->get(env('EXCHANGE_URL') . 'api/v1/company/' . $jwtPayload->user->company_id . '/show')->object();
$response_document = Http::withToken($object->getAccessToken())->get(env('EXCHANGE_URL') . 'api/v1/storage/' . $response->payload->data->identification->files[0]->file->file_info[0]->original->file . '/fetch')->object();
$response->token = $jwtPayload;
$response->document = $response_document->payload;
}
return $response;
}
}
@@ -0,0 +1,28 @@
<?php
namespace App\Classes\Modules\Accounts\Services;
use App\Classes\Exceptions\MalformedRequestException;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Models\PasswordReset;
class ExpiresPasswordReset extends AbstractUpdateRecord
{
/**
* @param PasswordReset $model
* @return \Illuminate\Database\Eloquent\Model
* @throws MalformedRequestException
*/
public function execute(PasswordReset $model){
$model->is_expired = true;
return $this->handler($model);
}
}
@@ -0,0 +1,33 @@
<?php
namespace App\Classes\Modules\Accounts\Services;
use App\Classes\General\Eloquent\AbstractFetchRecord;
use Illuminate\Database\Eloquent\Builder;
use App\Models\UserSocialAccount;
class FetchesUserSocialAccount extends AbstractFetchRecord
{
/** @var UserSocialAccount */
private $repository;
/**
* FetchesUser constructor.
* @param UserSocialAccount $repository
*/
public function __construct(UserSocialAccount $repository)
{
$this->repository = $repository;
}
/**
* @return Builder
*/
public function getRepository(): Builder
{
return $this->repository->newQuery();
}
}
@@ -3,6 +3,7 @@
namespace App\Classes\Modules\Accounts\Services;
use App\Classes\Exceptions\InternalServerErrorException;
use App\Classes\ValueObjects\Constants\OrderRoleTypes;
use App\Classes\ValueObjects\Constants\RoleTypes;
use App\Models\Company;
use App\Models\Role;
@@ -53,9 +54,6 @@ class GeneratesAuthenticationToken {
*/
private function setTokenClaims(User $user): void {
/** @var Company $companyModule */
$companyModule = $user->companyModule()->first();
$claims = [
'id' => $user->id,
'name' => $user->name,
@@ -65,6 +63,10 @@ class GeneratesAuthenticationToken {
];
if($user->type === RoleTypes::USER) {
/** @var Company $companyModule */
$companyModule = $user->companyModule()->first();
$claims = array_merge($claims, [
'company_id' => $companyModule->company_id
]);
@@ -3,7 +3,7 @@
namespace App\Classes\Modules\Accounts\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\Modules\Accounts\DataTransferObjects\FullnameObject;
use App\Classes\Modules\Accounts\DataTransferObjects\FullNameObject;
use App\Models\User;
class UpdatesUser extends AbstractUpdateRecord
@@ -11,7 +11,7 @@ class UpdatesUser extends AbstractUpdateRecord
/**
* @param User $model
* @param UserObject $object
* @param FullNameObject $object
* @return \Illuminate\Database\Eloquent\Model
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
@@ -0,0 +1,54 @@
<?php
namespace App\Classes\Modules\Accounts\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Exceptions\RequestValidationException;
use App\Classes\Modules\Accounts\DataTransferObjects\AuthenticationCredentialsObject;
use App\Classes\Modules\Accounts\Standards\Validators\UserCrossAuthenticationValidation;
class CanCrossAuthenticateUser extends AbstractRule
{
/** @var UserCrossAuthenticationValidation */
private $userCrossAuthenticationValidation;
/**
* CanCrossAuthenticateUser constructor.
* @param UserCrossAuthenticationValidation $userCrossAuthenticationValidation
*/
public function __construct(UserCrossAuthenticationValidation $userCrossAuthenticationValidation)
{
$this->userCrossAuthenticationValidation = $userCrossAuthenticationValidation;
}
/**
* @return bool
*/
protected function authorized(): bool
{
return true;
}
/**
* @param AuthenticationCredentialsObject $object
* @return bool
* @throws RequestValidationException
*/
protected function validators($object): bool
{
return $this->userCrossAuthenticationValidation->validate($object);
}
/**
* @param AuthenticationCredentialsObject $object
* @return bool
*/
protected function criteria($object): bool
{
return true;
}
}
@@ -0,0 +1,43 @@
<?php
namespace App\Classes\Modules\Accounts\Standards\Validators;
use App\Classes\General\Abstracts\AbstractValidation;
use App\Classes\Modules\Accounts\DataTransferObjects\CrossAuthenticationCredentialsObject;
class UserCrossAuthenticationValidation extends AbstractValidation
{
/**
* @param CrossAuthenticationCredentialsObject $object
* @return array
*/
protected function data($object): array {
return [
'access_token' => $object->getAccesstoken(),
'platform' => $object->getPlatform()
];
}
/**
* @return array
*/
protected function rules(): array {
return [
'access_token' => 'required',
'platform' => 'required'
];
}
/**
* @return array
*/
protected function messages(): array {
return [];
}
}
@@ -4,12 +4,18 @@ namespace App\Classes\Modules\Addresses\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\General\Interfaces\Contactable;
use App\Classes\Modules\Addresses\Services\CreatesAddress;
use App\Classes\Modules\Addresses\Services\FetchesDistrict;
use App\Classes\Modules\Addresses\Standards\Rules\CanCreateAddress;
use App\Classes\Modules\Addresses\DataTransferObjects\AddressObject;
use App\Classes\Modules\Companies\Services\FetchesCompany;
use App\Classes\Modules\Companies\Services\FetchesCompanyModule;
use App\Classes\Modules\Contacts\DataTransferObjects\ContactObject;
use App\Classes\Modules\Contacts\Processors\CreateContactProcessor;
use App\Classes\Modules\Remarks\DataTransferObjects\RemarkObject;
use App\Classes\Modules\Remarks\Processors\CreateRemarkProcessor;
use App\Http\Resources\AddressResource;
use App\Models\Address;
use ErrorException;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
@@ -33,25 +39,35 @@ class CreateAddressLogic extends AbstractControllerLogic
/** @var FetchesDistrict */
private $fetchesDistrict;
/** @var FetchesCompany */
private $fetchesCompany;
/** @var FetchesCompanyModule */
private $fetchesCompanyModule;
/** @var CreatesAddress */
private $createsAddress;
/** @var CreateContactProcessor */
private $createContactProcessor;
/** @var CreateRemarkProcessor */
private $createRemarkProcessor;
/**
* CreateAddressLogic constructor.
* @param CanCreateAddress $canCreateAddress
* @param FetchesDistrict $fetchesDistrict
* @param FetchesCompany $fetchesCompany
* @param FetchesCompanyModule $fetchesCompanyModule
* @param CreatesAddress $createsAddress
* @param CreateContactProcessor $createContactProcessor
* @param CreateRemarkProcessor $createRemarkProcessor
*/
public function __construct(CanCreateAddress $canCreateAddress, FetchesDistrict $fetchesDistrict, FetchesCompany $fetchesCompany, CreatesAddress $createsAddress)
public function __construct(CanCreateAddress $canCreateAddress, FetchesDistrict $fetchesDistrict, FetchesCompanyModule $fetchesCompanyModule, CreatesAddress $createsAddress, CreateContactProcessor $createContactProcessor, CreateRemarkProcessor $createRemarkProcessor)
{
$this->canCreateAddress = $canCreateAddress;
$this->fetchesDistrict = $fetchesDistrict;
$this->fetchesCompany = $fetchesCompany;
$this->fetchesCompanyModule = $fetchesCompanyModule;
$this->createsAddress = $createsAddress;
$this->createContactProcessor = $createContactProcessor;
$this->createRemarkProcessor = $createRemarkProcessor;
}
/**
@@ -66,13 +82,24 @@ class CreateAddressLogic extends AbstractControllerLogic
$district = $this->fetchesDistrict->execute(['id' => $request->input('district_id')]);
$object = new AddressObject($request->input('street_one'), $request->input('street_two'), $district->country_id, $district->state_id, $district->id, $request->input('post_code'));
$object = new AddressObject($request->input('street_one'), $request->input('street_two'), $district->country_id, $district->state_id, $district->id, $request->input('post_code'), $request->input('reference'));
$this->canCreateAddress->passes($object);
$query = $this->createsAddress->execute($this->fetchesCompany->execute(['id' => $request->input('company_id')]), $object);
/** @var Address $address */
$address = $this->createsAddress->execute($this->fetchesCompanyModule->execute(['id' => $request->input('company_module_id')]), $object);
return $this->resourceResponse(new AddressResource($query));
if($request->input('phone')){
$contactObject = new ContactObject($request->input('person_in_charge'), $request->input('phone'), '', '');
$this->createContactProcessor->execute($contactObject, $address);
}
if($request->input('remark')){
$remarkObject = new RemarkObject($request->input('remark'), Auth()->user()->id);
$this->createRemarkProcessor->execute($address, $remarkObject);
}
return $this->resourceResponse(new AddressResource($address));
}
@@ -50,23 +50,20 @@ class DeleteAddressLogic extends AbstractControllerLogic
/**
* @param Request $request
* @return JsonResponse
* @throws ErrorException
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request) : JsonResponse
{
try {
$this->canDeleteAddress->passes();
$this->canDeleteAddress->passes();
$query = $this->fetchesAddress->execute(['id' => $request->route('id')]);
$query = $this->fetchesAddress->execute(['id' => $request->route('id')]);
$this->deletesAddress->execute($query);
$this->deletesAddress->execute($query);
return $this->response([]);
} catch (\Exception $exception){
throw new ErrorException($exception->getMessage(), $exception->getCode());
}
return $this->response([]);
}
@@ -45,21 +45,16 @@ class FetchAddressLogic extends AbstractControllerLogic
/**
* @param Request $request
* @return JsonResponse
* @throws ErrorException
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request) : JsonResponse
{
try {
$this->canFetchAddress->passes();
$this->canFetchAddress->passes();
$query = $this->fetchesAddress->execute(['id' => $request->route('id')]);
$query = $this->fetchesAddress->execute(['id' => $request->route('id')]);
return $this->resourceResponse(new AddressResource($query));
} catch (\Exception $exception){
throw new ErrorException($exception->getMessage(), $exception->getCode());
}
return $this->resourceResponse(new AddressResource($query));
}
@@ -45,21 +45,18 @@ class ListAddressesLogic extends AbstractControllerLogic
/**
* @param Request $request
* @return JsonResponse
* @throws ErrorException
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request) : JsonResponse
{
try {
$this->canListAddresses->passes();
$this->canListAddresses->passes();
$query = $this->listsAddresses->execute($this->listsAddresses->deserializeFilters($request->input('filters')));
$query = $this->listsAddresses->execute($this->listsAddresses->deserializeFilters($request->input('filters')));
return $this->collectionResponse(AddressResource::collection($query));
} catch (\Exception $exception){
throw new ErrorException($exception->getMessage(), $exception->getCode());
}
return $this->collectionResponse(AddressResource::collection($query));
}
@@ -0,0 +1,54 @@
<?php
namespace App\Classes\Modules\Addresses\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Addresses\Services\ListsAddresses;
use App\Classes\Modules\Addresses\Services\ListsStates;
use App\Classes\Modules\Addresses\Standards\Rules\CanListAddresses;
use App\Http\Resources\AddressResource;
use App\Http\Resources\StateResource;
use ErrorException;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListStatesLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification():array {
return [
'title' => 'Retrieved Addresses',
'message' => 'You have successfully retrieved a list of Addresses'
];
}
/** @var ListsStates */
private $listStates;
/**
* ListStatesLogic constructor.
* @param ListsStates $listStates
*/
public function __construct(ListsStates $listStates)
{
$this->listStates = $listStates;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function logic(Request $request) : JsonResponse
{
$query = $this->listStates->execute($this->listStates->deserializeFilters($request->input('filters')));
return $this->collectionResponse(StateResource::collection($query));
}
}
@@ -2,15 +2,13 @@
namespace App\Classes\Modules\Addresses\ControllersLogic;
use App\Classes\General\Interfaces\Addressable;
use App\Http\Resources\AddressResource;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Addresses\Services\FetchesAddress;
use App\Classes\Modules\Addresses\Standards\Rules\CanUpdateAddress;
use App\Classes\Modules\Addresses\Services\ResetsAddressesDefault;
use App\Classes\Modules\Addresses\Services\SetsAddressToDefault;
use App\Models\Address;
use ErrorException;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
@@ -29,25 +27,26 @@ class SetAddressToDefaultLogic extends AbstractControllerLogic
];
}
/** @var ResetsAddressesDefault */
private $resetsAddressesDefault;
/** @var FetchesAddress */
private $fetchesAddress;
/** @var ResetsAddressesDefault */
private $resetsAddressesDefault;
/** @var SetsAddressToDefault*/
private $setsAddressToDefault;
/**
* SetAddressToDefaultLogic constructor.
* @param ResetsAddressesDefault $resetsAddressesDefault
* @param FetchesAddress $fetchesAddress
* @param ResetsAddressesDefault $resetsAddressesDefault
* @param SetsAddressToDefault $setsAddressToDefault
*/
public function __construct(ResetsAddressesDefault $resetsAddressesDefault, FetchesAddress $fetchesAddress, SetsAddressToDefault $setsAddressToDefault)
public function __construct(FetchesAddress $fetchesAddress, ResetsAddressesDefault $resetsAddressesDefault, SetsAddressToDefault $setsAddressToDefault)
{
$this->resetsAddressesDefault = $resetsAddressesDefault;
$this->fetchesAddress = $fetchesAddress;
$this->resetsAddressesDefault = $resetsAddressesDefault;
$this->setsAddressToDefault = $setsAddressToDefault;
}
@@ -63,8 +62,9 @@ class SetAddressToDefaultLogic extends AbstractControllerLogic
$address = $this->fetchesAddress->execute(['id' => $request->route('id')]);
$this->resetsAddressesDefault->execute($address);
$this->resetsAddressesDefault->execute($address->owner, $address->type);
return $this->resourceResponse(new AddressResource($this->setsAddressToDefault->execute($address)));
}
}
@@ -9,8 +9,12 @@ use App\Classes\Modules\Addresses\Services\FetchesAddress;
use App\Classes\Modules\Addresses\Services\FetchesDistrict;
use App\Classes\Modules\Addresses\Standards\Rules\CanUpdateAddress;
use App\Classes\Modules\Addresses\DataTransferObjects\AddressObject;
use App\Classes\Modules\Contacts\DataTransferObjects\ContactObject;
use App\Classes\Modules\Contacts\Processors\CreateContactProcessor;
use App\Classes\Modules\Remarks\DataTransferObjects\RemarkObject;
use App\Classes\Modules\Remarks\Processors\CreateRemarkProcessor;
use App\Http\Resources\AddressResource;
use ErrorException;
use App\Models\Address;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
@@ -39,48 +43,65 @@ class UpdateAddressLogic extends AbstractControllerLogic
/** @var FetchesDistrict */
private $fetchesDistrict;
/** @var CreateContactProcessor */
private $createContactProcessor;
/** @var CreateRemarkProcessor */
private $createRemarkProcessor;
/**
* UpdateAddressLogic constructor.
* @param CanUpdateAddress $canUpdateAddress
* @param UpdatesAddress $updatesAddress
* @param FetchesAddress $fetchesAddress
* @param FetchesDistrict $fetchesDistrict
* @param CreateContactProcessor $createContactProcessor
* @param CreateRemarkProcessor $createRemarkProcessor
*/
public function __construct(CanUpdateAddress $canUpdateAddress, UpdatesAddress $updatesAddress, FetchesAddress $fetchesAddress, FetchesDistrict $fetchesDistrict)
public function __construct(CanUpdateAddress $canUpdateAddress, UpdatesAddress $updatesAddress, FetchesAddress $fetchesAddress, FetchesDistrict $fetchesDistrict, CreateContactProcessor $createContactProcessor, CreateRemarkProcessor $createRemarkProcessor)
{
$this->canUpdateAddress = $canUpdateAddress;
$this->updatesAddress = $updatesAddress;
$this->fetchesAddress = $fetchesAddress;
$this->fetchesDistrict = $fetchesDistrict;
$this->createContactProcessor = $createContactProcessor;
$this->createRemarkProcessor = $createRemarkProcessor;
}
/**
* @param Request $request
* @return JsonResponse
* @throws ErrorException
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request) : JsonResponse
{
try {
$district = $this->fetchesDistrict->execute(['id' => $request->input('district_id')]);
$district = $this->fetchesDistrict->execute(['id' => $request->input('district_id')]);
$object = new AddressObject($request->input('street_one'), $request->input('street_two'), $district->country_id, $district->state_id, $district->id, $request->input('post_code'));
//$object = new AddressObject($request->input('company_id'), $request->input('street_one'), $request->input('street_two'), $request->input('city'), $request->input('state'), $request->input('post_code'), $request->input('country'), $request->input('default'), $request->input('billing'));
$object = new AddressObject($request->input('street_one'), $request->input('street_two'), $district->country_id, $district->state_id, $district->id, $request->input('post_code'), $request->input('reference'));
$this->canUpdateAddress->passes($object);
$this->canUpdateAddress->passes($object);
$query = $this->fetchesAddress->execute(['id' => $request->route('id')]);
$address = $this->fetchesAddress->execute(['id' => $request->route('id')]);
$query = $this->updatesAddress->execute($query, $object);
/** @var Address $address */
$address = $this->updatesAddress->execute($address, $object);
return $this->resourceResponse(new AddressResource($query));
$address->contacts()->delete(); $address->remarks()->delete();
} catch (\Exception $exception){
throw new ErrorException($exception->getMessage(), $exception->getCode());
if($request->input('phone')){
$contactObject = new ContactObject($request->input('person_in_charge'), $request->input('phone'), '', '');
$this->createContactProcessor->execute($contactObject, $address);
}
if($request->input('remark')){
$remarkObject = new RemarkObject($request->input('remark'), Auth()->user()->id);
$this->createRemarkProcessor->execute($address, $remarkObject);
}
return $this->resourceResponse(new AddressResource($address));
}
}
@@ -3,6 +3,7 @@
namespace App\Classes\Modules\Addresses\DataTransferObjects;
use App\Classes\General\Interfaces\DataTransferObject;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
class AddressObject implements DataTransferObject
{
@@ -25,6 +26,9 @@ class AddressObject implements DataTransferObject
/** @var int */
private $postCode;
/** @var string|null */
private $reference;
/**
* AddressObject constructor.
* @param string $streetOne
@@ -33,8 +37,9 @@ class AddressObject implements DataTransferObject
* @param int $stateId
* @param int $districtId
* @param int $postCode
* @param null|string $reference
*/
public function __construct(string $streetOne, ?string $streetTwo, int $countryId, int $stateId, int $districtId, int $postCode)
public function __construct(string $streetOne, ?string $streetTwo, int $countryId, int $stateId, int $districtId, int $postCode, ?string $reference = null, ?int $status = ApprovalStatus::APPROVED)
{
$this->streetOne = $streetOne;
$this->streetTwo = $streetTwo;
@@ -42,6 +47,8 @@ class AddressObject implements DataTransferObject
$this->stateId = $stateId;
$this->districtId = $districtId;
$this->postCode = $postCode;
$this->reference = $reference;
$this->status = $status;
}
/**
@@ -92,5 +99,21 @@ class AddressObject implements DataTransferObject
return $this->postCode;
}
/**
* @return null|string
*/
public function getReference(): ?string
{
return $this->reference;
}
/**
* @return int
*/
public function getStatus(): int
{
return $this->status;
}
}
@@ -0,0 +1,56 @@
<?php
namespace App\Classes\Modules\Addresses\Processors;
use App\Classes\General\Interfaces\Addressable;
use App\Classes\Modules\Addresses\Services\CleansOldAddress;
use App\Classes\Modules\Addresses\Services\CreatesAddress;
use App\Classes\Modules\Addresses\Services\FetchesAddress;
use App\Models\OldAddress;
use App\Models\Order;
use Illuminate\Database\Eloquent\Model;
class CreateAddressFromOldAddressProcessor
{
/** @var CleansOldAddress */
private $cleansOldAddress;
/** @var CreatesAddress */
private $createsAddress;
/**
* CreateAddressFromOldAddressProcessor constructor.
* @param CleansOldAddress $cleansOldAddress
* @param CreatesAddress $createsAddress
*/
public function __construct(CleansOldAddress $cleansOldAddress, CreatesAddress $createsAddress)
{
$this->cleansOldAddress = $cleansOldAddress;
$this->createsAddress = $createsAddress;
}
/**
* @param OldAddress $address
* @param Addressable $addressable
* @return Model|null
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function execute(OldAddress $address, Addressable $addressable): ?Model {
if(!$object = $this->cleansOldAddress->execute($address)){
return null;
}
if(!$addressable instanceof Order && $address = $addressable->addresses()->where('street_one', $object->getStreetOne())->first()) {
return $address;
}
return $this->createsAddress->execute($addressable, $object);
}
}
@@ -0,0 +1,54 @@
<?php
namespace App\Classes\Modules\Addresses\Processors;
use App\Classes\Modules\Addresses\Services\CreatesOrderAddress;
use App\Classes\Modules\Addresses\Services\FetchesAddress;
use App\Classes\Modules\Addresses\Standards\Rules\CanCreateAddress;
use Illuminate\Database\Eloquent\Model;
use App\Models\Order;
class CreateOrderAddressProcessor
{
/** @var CanCreateAddress */
private $canCreateAddress;
/** @var CreatesAddress */
private $createsOrderAddress;
private $fetchesAddress;
/**
* CreateAddressProcessor constructor.
* @param CanCreateAddress $canCreateAddress
* @param CreatesOrderAddress $createsOrderAddress
* @param FetchesAddress $fetchesAddress
*/
public function __construct(CanCreateAddress $canCreateAddress, CreatesOrderAddress $createsOrderAddress, FetchesAddress $fetchesAddress)
{
$this->fetchesAddress = $fetchesAddress;
$this->canCreateAddress = $canCreateAddress;
$this->createsOrderAddress = $createsOrderAddress;
}
/**
* @param EmploymentObject $object
* @return Model
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function execute(int $address, Order $order): Model {
$address = $this->fetchesAddress->execute(['id' => $address_id]);
// $this->canCreateAddress->passes($object);
//Fetches Address & duplicate
return $this->createsOrderAddress->execute($address, $order);
}
}
@@ -0,0 +1,52 @@
<?php
/**
* Created by PhpStorm.
* User: Omair Saleh
* Date: 20/8/2021
* Time: 1:05 AM
*/
namespace App\Classes\Modules\Addresses\Services;
use App\Classes\Modules\Addresses\DataTransferObjects\AddressObject;
use App\Models\District;
use App\Models\OldAddress;
class CleansOldAddress
{
public function execute(OldAddress $address){
if($address->street_one === '' && $address->street_two === ''){
return null;
}
if(!$address->post_code){
return null;
}
$district = District::where('postcode', 'like', '%'. $address->post_code .'%')->first();
if(!$district) {
return null;
}
return new AddressObject($this->cleanAddress($address->street_one, $district, $address->post_code), $this->cleanAddress($address->street_two, $district, $address->post_code), $district->country_id, $district->state_id, $district->id, $address->post_code, 'Delivery Address');
}
public function cleanAddress($address, $district, $postcode){
$address = str_replace('Malaysia', '', str_replace('malaysia', '', str_replace('MALAYSIA', '', $address)));
$address = str_replace($district->state->name, '',str_replace($district->name, '', $address));
$address = str_replace(strtolower($district->state->name), '',str_replace(strtolower($district->name), '', $address));
$address = str_replace(strtoupper($district->state->name), '',str_replace(strtoupper($district->name), '', $address));
$address = str_replace($postcode, '', $address);
$address = str_replace(', ,', ',', str_replace(', ,', ',', str_replace(', ,', ',', $address)));
$address = str_replace(',', ', ', $address);
$address = preg_replace('!\s+!', ' ', $address);
$address = preg_replace("/,+/", ",", $address);
return rtrim(rtrim(rtrim(rtrim($address, '.')), ','));
}
}
@@ -2,31 +2,35 @@
namespace App\Classes\Modules\Addresses\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\General\Eloquent\AbstractUpdateRelationshipRecord;
use App\Classes\General\Interfaces\Addressable;
use App\Classes\Modules\Addresses\DataTransferObjects\AddressObject;
use App\Models\Address;
use App\Models\Company;
use App\Models\CompanyModule;
class CreatesAddress extends AbstractUpdateRelationshipRecord
{
/**
* @param Company $company
* @param Addressable $addressable
* @param AddressObject $object
* @return \Illuminate\Database\Eloquent\Model
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function execute(Company $company, AddressObject $object) {
public function execute(Addressable $addressable, AddressObject $object) {
$model = new Address();
$model->reference = $object->getReference();
$model->street_one = $object->getStreetOne();
$model->street_two = $object->getStreetTwo();
$model->country_id = $object->getCountryId();
$model->state_id = $object->getStateId();
$model->district_id = $object->getDistrictId();
$model->postcode = $object->getPostCode();
$model->status = $object->getStatus();
return $this->handler($company->addresses(), $model);
return $this->handler($addressable->addresses(), $model);
}
}
@@ -0,0 +1,27 @@
<?php
namespace App\Classes\Modules\Addresses\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\General\Eloquent\AbstractUpdateRelationshipRecord;
use App\Classes\Modules\Schedules\DataTransferObjects\ScheduleObject;
use App\Models\Order;
use App\Models\Address;
class CreatesOrderAddress extends AbstractUpdateRelationshipRecord
{
public function execute(Address $address, Order $order) {
$model = new Address();
$model->street_one = $address->street_one;
$model->street_two = $address->street_two;
$model->country_id = $address->country_id;
$model->state_id = $address->state_id;
$model->district_id = $address->district_id;
$model->postcode = $address->postcode;
return $this->handler($order->addresses(), $model);
}
}
@@ -0,0 +1,33 @@
<?php
namespace App\Classes\Modules\Addresses\Services;
use App\Classes\General\Eloquent\AbstractListRecord;
use App\Models\State;
use Illuminate\Database\Eloquent\Builder;
class ListsStates extends AbstractListRecord
{
/** @var State */
private $repository;
/**
* ListsStates constructor.
* @param State $repository
*/
public function __construct(State $repository)
{
$this->repository = $repository;
}
/**
* @return Builder
*/
function getRepository(): Builder
{
return $this->repository->newQuery();
}
}
@@ -3,17 +3,20 @@
namespace App\Classes\Modules\Addresses\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\General\Interfaces\Addressable;
use App\Models\Address;
use App\Models\CompanyModule;
class ResetsAddressesDefault extends AbstractUpdateRecord
{
/**
* @param Address $address
* @param Addressable $addressable
* @param int $type
* @return void
*/
public function execute(Address $address)
public function execute(Addressable $addressable, int $type)
{
$address->company->addresses()->update(['billing' => false]);
$addressable->addresses()->where('type', $type)->update(['default' => false]);
}
}
@@ -15,7 +15,7 @@ class SetsAddressToDefault extends AbstractUpdateRecord
*/
public function execute(Address $model)
{
$model->billing = true;
$model->default = true;
return $this->handler($model);
}
@@ -17,15 +17,13 @@ class UpdatesAddress extends AbstractUpdateRecord
*/
public function execute(Address $model, AddressObject $object) {
//$model->company_id = $object->getCompanyId();
$model->reference = $object->getReference();
$model->street_one = $object->getStreetOne();
$model->street_two = $object->getStreetTwo();
$model->district_id = $object->getDistrictId();
$model->state_id = $object->getStateId();
$model->postcode = $object->getPostCode();
$model->country_id = $object->getCountryId();
//$model->default = $object->getDefault();
//$model->billing = $object->getBilling();
return $this->handler($model);
@@ -0,0 +1,61 @@
<?php
namespace App\Classes\Modules\Announcements\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Announcements\Services\FetchesAnnouncement;
use App\Classes\Modules\Announcements\Processors\AssignAnnouncementToSegmentProcessor;
use App\Http\Resources\AnnouncementResource;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class AssignAnnouncementToSegmentLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification(): array
{
return [
'title' => 'Assign Announcement To Segment',
'message' => 'You have successfully assigned Announcement to segment'
];
}
/** @var FetchesAnnouncement */
private $fetchesAnnouncement;
/** @var AssignAnnouncementToSegmentProcessor */
private $assignAnnouncementToSegmentProcessor;
/**
* AssignAnnouncementToSegmentLogic constructor.
* @param FetchesAnnouncement $fetchesAnnouncement
* @param AssignAnnouncementToSegmentProcessor $assignAnnouncementToSegmentProcessor
*/
public function __construct(FetchesAnnouncement $fetchesAnnouncement, AssignAnnouncementToSegmentProcessor $assignAnnouncementToSegmentProcessor)
{
$this->fetchesAnnouncement = $fetchesAnnouncement;
$this->assignAnnouncementToSegmentProcessor = $assignAnnouncementToSegmentProcessor;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
$announcement = $this->fetchesAnnouncement->execute(['id' => $request->route('id')]);
$this->assignAnnouncementToSegmentProcessor->execute($announcement, $request->input('segment_id'));
return $this->resourceResponse(new AnnouncementResource($announcement));
}
}
@@ -0,0 +1,82 @@
<?php
namespace App\Classes\Modules\Announcements\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Announcements\DataTransferObjects\AnnouncementObject;
use App\Classes\Modules\Announcements\Standards\Rules\CanCreateAnnouncement;
use App\Classes\Modules\Announcements\Services\CreatesAnnouncement;
use App\Classes\Modules\Announcements\Processors\AssignAnnouncementToSegmentProcessor;
use App\Http\Resources\AnnouncementResource;
use ErrorException;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreateAnnouncementLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification(): array
{
return [
'title' => 'Created Annoucement',
'message' => 'You have successfully created a new Annoucements'
];
}
/** @var CanCreateAnnouncement */
private $canCreateAnnouncement;
/** @var CreatesAnnoucement */
private $createsAnnoucement;
/** @var AssignAnnouncementToSegmentProcessor */
private $assignAnnouncementToSegmentProcessor;
/**
* CreateAnnouncementLogic constructor.
* @param CanCreateAnnoucement $canCreateAnnoucement
* @param CreatesAnnoucement $createsAnnoucement
* @param AssignAnnouncementToSegmentProcessor $assignAnnouncementToSegmentProcessor
*/
public function __construct(
CanCreateAnnouncement $canCreateAnnouncement,
CreatesAnnouncement $createsAnnoucement,
AssignAnnouncementToSegmentProcessor $assignAnnouncementToSegmentProcessor
) {
$this->canCreateAnnouncement = $canCreateAnnouncement;
$this->createsAnnoucement = $createsAnnoucement;
$this->assignAnnouncementToSegmentProcessor = $assignAnnouncementToSegmentProcessor;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
$annoucement_object = new AnnouncementObject(
$request->input('title'),
$request->input('description'),
$request->input('starting_on'),
$request->input('ending_on')
);
$this->canCreateAnnouncement->passes($annoucement_object);
$announcement = $this->createsAnnoucement->execute($annoucement_object);
$this->assignAnnouncementToSegmentProcessor->execute($announcement);
return $this->resourceResponse(new AnnouncementResource($announcement));
}
}
@@ -0,0 +1,71 @@
<?php
namespace App\Classes\Modules\Announcements\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Announcements\Standards\Rules\CanDeleteAnnouncement;
use App\Classes\Modules\Announcements\Services\FetchesAnnouncement;
use App\Classes\Modules\Announcements\Services\DeletesAnnouncement;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class DeleteAnnouncementLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification(): array
{
return [
'title' => 'Delete Announcement',
'message' => 'You have successfully deleted the Announcement'
];
}
/** @var CanDeleteAnnouncement */
private $canDeleteAnnouncement;
/** @var FetchesAnnouncement */
private $fetchesAnnouncement;
/** @var DeletesAnnouncement */
private $deletesAnnouncement;
/**
* DeleteAnnouncementLogic constructor.
* @param CanDeleteAnnouncement $canDeleteAnnouncement
* @param FetchesAnnouncement $fetchesAnnouncement
* @param DeletesAnnouncement $deletesAnnouncement
*/
public function __construct(
CanDeleteAnnouncement $canDeleteAnnoucement,
FetchesAnnouncement $fetchesAnnoucement,
DeletesAnnouncement $deletesAnnoucement
) {
$this->canDeleteAnnoucement = $canDeleteAnnoucement;
$this->fetchesAnnoucement = $fetchesAnnoucement;
$this->deletesAnnoucement = $deletesAnnoucement;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
$this->canDeleteAnnoucement->passes();
$annoucement = $this->fetchesAnnoucement->execute(['id' => $request->route('id')]);
$this->deletesAnnoucement->execute($annoucement);
return $this->response([]);
}
}
@@ -0,0 +1,60 @@
<?php
namespace App\Classes\Modules\Announcements\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Announcements\Services\ListsAnnouncements;
use App\Classes\Modules\Announcements\Standards\Rules\CanListAnnouncements;
use App\Http\Resources\AnnouncementResource;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class ListAnnouncementsLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification(): array
{
return [
'title' => 'Retrieve Announcements',
'message' => 'You have successfully retrieved a list of Announcements'
];
}
/** @var CanListAnnouncements */
private $canListAnnouncements;
/** @var ListsAnnouncements */
private $listsAnnouncements;
/**
* ListAnnouncementsLogic constructor.
* @param CanListAnnouncements $canListAnnouncements
* @param ListsAnnouncements $listsAnnouncements
*/
public function __construct(CanListAnnouncements $canListAnnouncements, ListsAnnouncements $listsAnnouncements)
{
$this->canListAnnouncements = $canListAnnouncements;
$this->listsAnnouncements = $listsAnnouncements;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
$this->canListAnnouncements->passes();
$annoucements = $this->listsAnnouncements->execute($this->listsAnnouncements->deserializeFilters($request->input('filters')));
return $this->collectionResponse(AnnouncementResource::collection($annoucements));
}
}
@@ -0,0 +1,68 @@
<?php
namespace App\Classes\Modules\Announcements\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Announcements\Services\FetchesAnnouncement;
use App\Classes\Modules\Segments\Services\FetchesSegment;
use App\Classes\Modules\Announcements\Services\RemovesAnnouncementFromSegment;
use App\Http\Resources\AnnouncementResource;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class RemoveSegmentFromAnnouncementLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification(): array
{
return [
'title' => 'Detach Announcement From Segment',
'message' => 'You have successfully detached Announcement from segment'
];
}
/** @var FetchesAnnouncement */
private $fetchesAnnnouncement;
/** @var FetchesSegment */
private $fetchesSegment;
/** @var RemovesAnnouncementFromSegment */
private $removesAnnouncementFromSegment;
/**
* RemoveSegmentFromAnnouncementLogic constructor.
* @param FetchesAnnouncement $fetchesAnnnouncement
* @param FetchesSegment $fetchesSegment
* @param RemovesAnnouncementFromSegment $removesAnnouncementFromSegment
*/
public function __construct(FetchesAnnouncement $fetchesAnnnouncement, FetchesSegment $fetchesSegment, RemovesAnnouncementFromSegment $removesAnnouncementFromSegment)
{
$this->fetchesAnnnouncement = $fetchesAnnnouncement;
$this->fetchesSegment = $fetchesSegment;
$this->removesAnnouncementFromSegment = $removesAnnouncementFromSegment;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function logic(Request $request): JsonResponse
{
$announcement = $this->fetchesAnnnouncement->execute(['id' => $request->route('id')]);
$segment = $this->fetchesSegment->execute(['id' => $request->route('segment_id')]);
$this->removesAnnouncementFromSegment->execute($announcement, $segment);
return $this->resourceResponse(new AnnouncementResource($announcement));
}
}
@@ -0,0 +1,83 @@
<?php
namespace App\Classes\Modules\Announcements\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Announcements\DataTransferObjects\AnnouncementObject;
use App\Classes\Modules\Announcements\Standards\Rules\CanUpdateAnnouncement;
use App\Classes\Modules\Announcements\Services\FetchesAnnouncement;
use App\Classes\Modules\Announcements\Services\UpdatesAnnouncement;
use App\Http\Resources\AnnouncementResource;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class UpdateAnnouncementLogic extends AbstractControllerLogic
{
/**
* @return array
*/
protected function notification(): array
{
return [
'title' => 'Update Announcement',
'message' => 'You have successfully updated the Announcement'
];
}
/** @var CanUpdateAnnouncement */
private $canUpdateAnnouncement;
/** @var FetchesAnnouncement */
private $fetchesAnnouncement;
/** @var UpdatesAnnouncement */
private $updatesAnnouncement;
/**
* UpdateAnnouncementLogic constructor.
* @param CanUpdateAnnouncement $canUpdateAnnouncement
* @param FetchesAnnouncement $fetchesAnnouncement
* @param UpdatesAnnouncement $updatesAnnouncement
*/
public function __construct(
CanUpdateAnnouncement $canUpdateAnnouncement,
FetchesAnnouncement $fetchesAnnouncement,
UpdatesAnnouncement $updatesAnnouncement
) {
$this->canUpdateAnnouncement = $canUpdateAnnouncement;
$this->fetchesAnnouncement = $fetchesAnnouncement;
$this->updatesAnnouncement = $updatesAnnouncement;
}
/**
* @param Request $request
* @return JsonResponse
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function logic(Request $request): JsonResponse
{
$annoucement_object = new AnnouncementObject(
$request->input('title'),
$request->input('description'),
$request->input('starting_on'),
$request->input('ending_on')
);
$this->canUpdateAnnouncement->passes($annoucement_object);
$annoucement = $this->fetchesAnnouncement->execute(['id' => $request->route('id')]);
$announcement_query = $this->updatesAnnouncement->execute($annoucement, $annoucement_object);
//$announcement_query->segments()->sync($request->input('segment_id'));
return $this->resourceResponse(new AnnouncementResource($announcement_query));
}
}
@@ -0,0 +1,69 @@
<?php
namespace App\Classes\Modules\Announcements\DataTransferObjects;
use App\Classes\General\Interfaces\DataTransferObject;
class AnnouncementObject implements DataTransferObject
{
/** @var string */
private $title;
/** @var string */
private $description;
/** @var string */
private $starting_on;
/** @var string */
private $ending_on;
/**
* AnnouncementObject constructor.
* @param string $title
* @param string $description
* @param string $start_date
* @param string $end_date
*/
public function __construct(string $title, string $description, string $starting_on, string $ending_on)
{
$this->title = $title;
$this->description = $description;
$this->starting_on = $starting_on;
$this->ending_on = $ending_on;
}
/**
* @return string
*/
public function getTitle(): string
{
return $this->title;
}
/**
* @return string
*/
public function getDescription(): string
{
return $this->description;
}
/**
* @return string
*/
public function getStartingOn(): string
{
return $this->starting_on;
}
/**
* @return string
*/
public function getEndingOn(): string
{
return $this->ending_on;
}
}
@@ -0,0 +1,56 @@
<?php
namespace App\Classes\Modules\Announcements\Processors;
use App\Classes\Modules\Announcements\Services\AssignsAnnouncementToSegment;
use App\Classes\Modules\Announcements\Standards\Rules\CanAssignSegment;
use App\Classes\Modules\Segments\Services\FetchesSegment;
use App\Classes\ValueObjects\Constants\SegmentConstants;
use App\Models\Announcement;
use Illuminate\Database\Eloquent\Model;
class AssignAnnouncementToSegmentProcessor
{
/** @var CanAssignSegment */
private $canAssignSegment;
/** @var FetchesSegment */
private $fetchesSegment;
/** @var AssignAnnouncementToSegment */
private $assignsAnnouncementToSegment;
/**
* AssignAnnouncementToSegmentProcessor constructor.
* @param CanAssignSegment $canAssignSegment
* @param AssignAnnouncementToSegment $assignsAnnouncementToSegment
* @param FetchesSegment $fetchesSegment
*/
public function __construct(CanAssignSegment $canAssignSegment, FetchesSegment $fetchesSegment, AssignsAnnouncementToSegment $assignsAnnouncementToSegment)
{
$this->canAssignSegment = $canAssignSegment;
$this->assignsAnnouncementToSegment = $assignsAnnouncementToSegment;
$this->fetchesSegment = $fetchesSegment;
}
/**
* @param Announcement $announcement
* @param int|null $segmentId
* @return Model
* @throws \App\Classes\Exceptions\AccessForbiddenException
* @throws \App\Classes\Exceptions\MalformedRequestException
* @throws \App\Classes\Exceptions\RequestValidationException
*/
public function execute(Announcement $announcement, ?int $segmentId = SegmentConstants::STANDARD_SEGMENT): Model
{
$this->canAssignSegment->passes();
$segment = $this->fetchesSegment->execute(['id' => $segmentId]);
return $this->assignsAnnouncementToSegment->execute($announcement, $segment);
}
}
@@ -0,0 +1,33 @@
<?php
namespace App\Classes\Modules\Announcements\Services;
use App\Classes\Exceptions\MalformedRequestException;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Models\Announcement;
use App\Models\Segment;
use Illuminate\Database\QueryException;
class AssignsAnnouncementToSegment extends AbstractUpdateRecord
{
/**
* @param Announcement $announcement
* @param Segment $segment
* @return \Illuminate\Database\Eloquent\Model
* @throws MalformedRequestException
*/
public function execute(Announcement $announcement, Segment $segment)
{
try {
$announcement->segments()->attach($segment);
return $announcement;
} catch (QueryException $exception){
throw new MalformedRequestException($exception);
}
}
}
@@ -0,0 +1,26 @@
<?php
namespace App\Classes\Modules\Announcements\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\Modules\Announcements\DataTransferObjects\AnnouncementObject;
use App\Models\Announcement;
class CreatesAnnouncement extends AbstractUpdateRecord
{
/**
* @param AnnouncementObject $object
* @return \Illuminate\Database\Eloquent\Model
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function execute(AnnouncementObject $object)
{
$model = new Announcement();
$model->title = $object->getTitle();
$model->description = $object->getDescription();
$model->starting_on = $object->getStartingOn();
$model->ending_on = $object->getEndingOn();
return $this->handler($model);
}
}
@@ -0,0 +1,19 @@
<?php
namespace App\Classes\Modules\Announcements\Services;
use App\Classes\General\Eloquent\AbstractDeleteRecord;
use App\Models\Announcement;
class DeletesAnnouncement extends AbstractDeleteRecord
{
/**
* @param Announcement $model
* @return mixed
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function execute(Announcement $model) {
return $this->handler($model);
}
}
@@ -0,0 +1,34 @@
<?php
namespace App\Classes\Modules\Announcements\Services;
use App\Classes\General\Eloquent\AbstractFetchRecord;
use Illuminate\Database\Eloquent\Builder;
use App\Models\Announcement;
class FetchesAnnouncement extends AbstractFetchRecord
{
/** @var Announcement */
private $repository;
/**
* FetchesAnnouncement constructor.
* @param Announcement $repository
*/
public function __construct(Announcement $repository)
{
$this->repository = $repository;
}
/**
* @return Builder
*/
public function getRepository(): Builder
{
return $this->repository->newQuery();
}
}
@@ -0,0 +1,32 @@
<?php
namespace App\Classes\Modules\Announcements\Services;
use App\Classes\General\Eloquent\AbstractListRecord;
use Illuminate\Database\Eloquent\Builder;
use App\Models\Announcement;
class ListsAnnouncements extends AbstractListRecord
{
/** @var Announcement */
private $repository;
/**
* ListsAnnouncement constructor.
* @param Announcement $repository
*/
public function __construct(Announcement $repository)
{
$this->repository = $repository;
}
/**
* @return Builder
*/
function getRepository(): Builder
{
return $this->repository->newQuery();
}
}
@@ -0,0 +1,33 @@
<?php
namespace App\Classes\Modules\Announcements\Services;
use App\Classes\Exceptions\MalformedRequestException;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Models\Announcement;
use App\Models\Segment;
use Illuminate\Database\QueryException;
class RemovesAnnouncementFromSegment extends AbstractUpdateRecord
{
/**
* @param Announcement $announcement
* @param Segment $segment
* @return \Illuminate\Database\Eloquent\Model
* @throws MalformedRequestException
*/
public function execute(Announcement $announcement, Segment $segment)
{
try {
$announcement->segments()->detach($segment);
return $announcement;
} catch (QueryException $exception){
throw new MalformedRequestException($exception);
}
}
}
@@ -0,0 +1,27 @@
<?php
namespace App\Classes\Modules\Announcements\Services;
use App\Classes\General\Eloquent\AbstractUpdateRecord;
use App\Classes\Modules\Announcements\DataTransferObjects\AnnouncementObject;
use App\Models\Announcement;
class UpdatesAnnouncement extends AbstractUpdateRecord
{
/**
* @param Announcement $model
* @param AnnouncementObject $object
* @return \Illuminate\Database\Eloquent\Model
* @throws \App\Classes\Exceptions\MalformedRequestException
*/
public function execute(Announcement $model, AnnouncementObject $object)
{
$model->title = $object->getTitle();
$model->description = $object->getDescription();
$model->starting_on = $object->getStartingOn();
$model->ending_on = $object->getEndingOn();
return $this->handler($model);
}
}
@@ -0,0 +1,40 @@
<?php
namespace App\Classes\Modules\Announcements\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Modules\SegmentConstants\DataTransferObjects\SegmentConstantObject;
use App\Classes\Modules\Segments\DataTransferObjects\ConstantObject;
class CanAssignSegment extends AbstractRule
{
/**
* @return bool
*/
protected function authorized(): bool
{
// TODO Set Authorization rules
return true;
}
/**
* @param ConstantObject $object
* @return bool
*/
protected function validators($object): bool
{
return true;
}
/**
* @param ConstantObject $object
* @return bool
*/
protected function criteria($object): bool
{
return true;
}
}
@@ -0,0 +1,50 @@
<?php
namespace App\Classes\Modules\Announcements\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Modules\Announcements\Standards\Validators\AnnouncementValidation;
use App\Classes\Modules\Companies\DataTransferObjects\AnnouncementObject;
class CanCreateAnnouncement extends AbstractRule
{
/** @var AnnouncementValidation */
private $AnnouncementValidation;
/**
* CanCreateAnnouncement constructor.
* @param AnnouncementValidation $AnnouncementValidation
*/
public function __construct(AnnouncementValidation $AnnouncementValidation)
{
$this->AnnouncementValidation = $AnnouncementValidation;
}
/**
* @return bool
*/
protected function authorized(): bool
{
return true;
}
/**
* @param AnnouncementObject $object
* @return bool
* @throws \App\Classes\Exceptions\RequestValidationException
*/
protected function validators($object): bool
{
return $this->AnnouncementValidation->validate($object);
}
/**
* @param AnnouncementObject $object
* @return bool
*/
protected function criteria($object): bool
{
return true;
}
}
@@ -0,0 +1,40 @@
<?php
namespace App\Classes\Modules\Announcements\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Modules\Announcement\DataTransferObjects\AnnouncementObject;
class CanDeleteAnnouncement extends AbstractRule
{
/**
* @return bool
*/
protected function authorized(): bool
{
// TODO Set Authorization rules
return true;
}
/**
* @param AnnouncementObject $object
* @return bool
*/
protected function validators($object): bool
{
return true;
}
/**
* @param AnnouncementObject $object
* @return bool
*/
protected function criteria($object): bool
{
return true;
}
}
@@ -0,0 +1,36 @@
<?php
namespace App\Classes\Modules\Announcements\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Modules\Announcements\DataTransferObjects\AnnouncementObject;
class CanListAnnouncements extends AbstractRule
{
/**
* @return bool
*/
protected function authorized(): bool
{
return true;
}
/**
* @param AnnouncementObject $object
* @return bool
*/
protected function validators($object): bool
{
return true;
}
/**
* @param AnnouncementObject $object
* @return bool
*/
protected function criteria($object): bool
{
return true;
}
}
@@ -0,0 +1,54 @@
<?php
namespace App\Classes\Modules\Announcements\Standards\Rules;
use App\Classes\General\Abstracts\AbstractRule;
use App\Classes\Modules\Announcements\DataTransferObjects\AnnouncementObject;
use App\Classes\Modules\Announcements\Standards\Validators\AnnouncementValidation;
class CanUpdateAnnouncement extends AbstractRule
{
/** @var AnnouncementValidation */
private $AnnouncementValidation;
/**
* CanUpdateAnnouncement constructor.
* @param AnnouncementValidation $AnnouncementValidation
*/
public function __construct(AnnouncementValidation $AnnouncementValidation)
{
$this->AnnouncementValidation = $AnnouncementValidation;
}
/**
* @return bool
*/
protected function authorized(): bool
{
// TODO Set Authorization rules
return true;
}
/**
* @param AnnouncementObject $object
* @return bool
* @throws \App\Classes\Exceptions\RequestValidationException
*/
protected function validators($object): bool
{
return $this->AnnouncementValidation->validate($object);
}
/**
* @param AnnouncementObject $object
* @return bool
*/
protected function criteria($object): bool
{
return true;
}
}

Some files were not shown because too many files have changed in this diff Show More