diff --git a/src/components/modal/user/List.vue b/src/components/modal/user/List.vue
index b5586f7..332073d 100644
--- a/src/components/modal/user/List.vue
+++ b/src/components/modal/user/List.vue
@@ -114,13 +114,23 @@ export default {
},
async transfer() {
try {
- const result = await this.transferItem({
- itemId: this.getModalProperties.data.id,
- userId: this.selected.id,
- isUser: this.$hasRole('User')
- });
- this.setResultModal(result);
- this.closeModal();
+ let result = {}
+ if (this.getModalProperties.type && this.getModalProperties.type === 'item') {
+ result = await this.transferItem({
+ itemId: this.getModalProperties.data.id,
+ userId: this.selected.id,
+ isUser: this.$hasRole('User')
+ });
+ } else if (this.getModalProperties.type && this.getModalProperties.type === 'package') {
+ result = await ApiService.post(urls.transferPackage(this.getModalProperties.data.id), {
+ user_id: this.selected.id,
+ });
+ }
+ if (result && result.status === 200) {
+ this.setResultModal(result);
+ this.closeModal();
+ return result;
+ }
} catch (e) {
console.error("Transfer failed:", e);
}
diff --git a/src/config/urls.js b/src/config/urls.js
index 97d5000..b9dbcaa 100644
--- a/src/config/urls.js
+++ b/src/config/urls.js
@@ -183,6 +183,9 @@ const urls = {
transferItem: function (id) {
return `/transfer-items/${id}`;
},
+ transferPackage: function (id) {
+ return `/transfer-packages/${id}`;
+ },
removeItem: function (id) {
return `Items/${id}`;
},
diff --git a/src/views/Item/List.vue b/src/views/Item/List.vue
index 6c613d9..772dced 100644
--- a/src/views/Item/List.vue
+++ b/src/views/Item/List.vue
@@ -44,7 +44,8 @@
Filter
-
+
fas fa-share-square
EXPORT
@@ -288,8 +289,8 @@ export default {
getStatus(item) {
if (item.status === 'pending') {
return [
- {status: 'approved', label: 'approve', color: 'cyan', font_color : 'white', icon: 'fa-check'},
- {status: 'rejected', label: 'reject', color: 'light-gray',font_color : 'black', icon: 'fa-close'},
+ {status: 'approved', label: 'approve', color: 'cyan', font_color: 'white', icon: 'fa-check'},
+ {status: 'rejected', label: 'reject', color: 'light-gray', font_color: 'black', icon: 'fa-close'},
]
} else {
const nextStatus = item.status === 'rejected' ? 'approved' : 'rejected'
@@ -316,7 +317,7 @@ export default {
async transfer(data) {
this.changeCurrentModal({
modal: "modal-user-list",
- properties: {data},
+ properties: {data, type: 'item'},
});
},
},
diff --git a/src/views/MyItem/List.vue b/src/views/MyItem/List.vue
index bda7f0d..159bc57 100644
--- a/src/views/MyItem/List.vue
+++ b/src/views/MyItem/List.vue
@@ -235,7 +235,7 @@ export default {
async transfer(data) {
this.changeCurrentModal({
modal: "modal-user-list",
- properties: {data},
+ properties: {data, type: 'item'},
});
},
async generateBarcode(item, type = null) {
diff --git a/src/views/MyPackage/List.vue b/src/views/MyPackage/List.vue
index beb6800..3c30c88 100644
--- a/src/views/MyPackage/List.vue
+++ b/src/views/MyPackage/List.vue
@@ -22,17 +22,19 @@
-
+
fas fa-search
Filter
-
+
@@ -261,8 +263,8 @@ export default {
getStatus(item) {
if (item.status === 'pending') {
return [
- {status: 'approved', label: 'approve', color: 'cyan' , font_color : 'white', icon: 'fa-check'},
- {status: 'rejected', label: 'reject', color: 'light-gray' ,font_color : 'black', icon: 'fa-close'},
+ {status: 'approved', label: 'approve', color: 'cyan', font_color: 'white', icon: 'fa-check'},
+ {status: 'rejected', label: 'reject', color: 'light-gray', font_color: 'black', icon: 'fa-close'},
]
} else {
const nextStatus = item.status === 'rejected' ? 'approved' : 'rejected'
@@ -293,11 +295,18 @@ export default {
}
},
async transfer(data) {
- this.changeCurrentModal({
+ const result = this.changeCurrentModal({
modal: "modal-user-list",
- properties: {data},
+ properties: {data, type:'package'},
});
- }
+ if (result && result.status === 200) {
+ for (const key in this.items) {
+ if (this.items.hasOwnProperty(key) && this.items[key].id === data.id) {
+ this.items.splice(key, 1);
+ }
+ }
+ }
+ },
},
computed: {
...mapGetters("modal", ["getModalResult"])
diff --git a/src/views/Package/List.vue b/src/views/Package/List.vue
index f1314a7..ed50231 100644
--- a/src/views/Package/List.vue
+++ b/src/views/Package/List.vue
@@ -292,10 +292,17 @@ export default {
}
},
async transfer(data) {
- this.changeCurrentModal({
+ const result = this.changeCurrentModal({
modal: "modal-user-list",
- properties: {data},
+ properties: {data, type:'package'},
});
+ if (result && result.status === 200) {
+ for (const key in this.items) {
+ if (this.items.hasOwnProperty(key) && this.items[key].id === data.id) {
+ this.items.splice(key, 1);
+ }
+ }
+ }
},
async changeStatus(item, status) {
const result = await ApiService.post(urls.changePackageStatus(item.id), {status})