ordercancelled

This commit is contained in:
kimsanghoon1
2019-11-22 15:07:20 +09:00
parent 06f8a12abb
commit 5f14dfa2ad
4 changed files with 123 additions and 92 deletions

41
package-lock.json generated
View File

@@ -3560,8 +3560,7 @@
"ansi-regex": { "ansi-regex": {
"version": "2.1.1", "version": "2.1.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"aproba": { "aproba": {
"version": "1.2.0", "version": "1.2.0",
@@ -3582,14 +3581,12 @@
"balanced-match": { "balanced-match": {
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"brace-expansion": { "brace-expansion": {
"version": "1.1.11", "version": "1.1.11",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"balanced-match": "^1.0.0", "balanced-match": "^1.0.0",
"concat-map": "0.0.1" "concat-map": "0.0.1"
@@ -3604,20 +3601,17 @@
"code-point-at": { "code-point-at": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"concat-map": { "concat-map": {
"version": "0.0.1", "version": "0.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"console-control-strings": { "console-control-strings": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"core-util-is": { "core-util-is": {
"version": "1.0.2", "version": "1.0.2",
@@ -3734,8 +3728,7 @@
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"ini": { "ini": {
"version": "1.3.5", "version": "1.3.5",
@@ -3747,7 +3740,6 @@
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"number-is-nan": "^1.0.0" "number-is-nan": "^1.0.0"
} }
@@ -3762,7 +3754,6 @@
"version": "3.0.4", "version": "3.0.4",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"brace-expansion": "^1.1.7" "brace-expansion": "^1.1.7"
} }
@@ -3770,14 +3761,12 @@
"minimist": { "minimist": {
"version": "0.0.8", "version": "0.0.8",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"minipass": { "minipass": {
"version": "2.3.5", "version": "2.3.5",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"safe-buffer": "^5.1.2", "safe-buffer": "^5.1.2",
"yallist": "^3.0.0" "yallist": "^3.0.0"
@@ -3796,7 +3785,6 @@
"version": "0.5.1", "version": "0.5.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"minimist": "0.0.8" "minimist": "0.0.8"
} }
@@ -3877,8 +3865,7 @@
"number-is-nan": { "number-is-nan": {
"version": "1.0.1", "version": "1.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"object-assign": { "object-assign": {
"version": "4.1.1", "version": "4.1.1",
@@ -3890,7 +3877,6 @@
"version": "1.4.0", "version": "1.4.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"wrappy": "1" "wrappy": "1"
} }
@@ -3976,8 +3962,7 @@
"safe-buffer": { "safe-buffer": {
"version": "5.1.2", "version": "5.1.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"safer-buffer": { "safer-buffer": {
"version": "2.1.2", "version": "2.1.2",
@@ -4013,7 +3998,6 @@
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"code-point-at": "^1.0.0", "code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0", "is-fullwidth-code-point": "^1.0.0",
@@ -4033,7 +4017,6 @@
"version": "3.0.1", "version": "3.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"ansi-regex": "^2.0.0" "ansi-regex": "^2.0.0"
} }
@@ -4077,14 +4060,12 @@
"wrappy": { "wrappy": {
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
}, },
"yallist": { "yallist": {
"version": "3.0.3", "version": "3.0.3",
"bundled": true, "bundled": true,
"dev": true, "dev": true
"optional": true
} }
} }
}, },

View File

@@ -179,9 +179,9 @@
console.log(me.value) console.log(me.value)
if ((me.nameErrors.length == 0) && (me.addressErrors.length == 0) && (me.nameErrors.length == 0)) { if ((me.nameErrors.length == 0) && (me.addressErrors.length == 0) && (me.nameErrors.length == 0)) {
// http localhost:8081/orders productId=1 quantity=3 customerName="홍길동" customerAddr="서울시" // http localhost:8081/orders productId=1 quantity=3 customerName="홍길동" customerAddr="서울시"
// http localhost:8081/orders productId=1 quantity=3 customerId="1@uengine.org" customerName="홍길동" customerAddr="서울시"
let param = { let param = {
'orderId': 1, 'productId': me.value['@id'],
'productId': me.value.id,
'productName': me.value.name, 'productName': me.value.name,
'price': me.value.price, 'price': me.value.price,
'quantity': me.quantity, 'quantity': me.quantity,
@@ -189,7 +189,7 @@
'customerName': localStorage.getItem('nickname'), 'customerName': localStorage.getItem('nickname'),
'customerAddr': me.customerAddr 'customerAddr': me.customerAddr
} }
console.log(`${API_HOST}`)
me.$http.post(`${API_HOST}/orders`, param).then(function (e) { me.$http.post(`${API_HOST}/orders`, param).then(function (e) {
console.log(e) console.log(e)
setTimeout(function () { setTimeout(function () {
@@ -215,4 +215,4 @@
<style scoped> <style scoped>
</style> </style>

View File

@@ -24,30 +24,42 @@
v-else-if="item.deliveryStarted && !item.deliveryCompleted" v-else-if="item.deliveryStarted && !item.deliveryCompleted"
> 배송 시작 > 배송 시작
</v-chip> </v-chip>
<v-chip :color="'red'"
dark
v-else-if="item.deliveryCancelled"
> 주문 취소
</v-chip>
<v-chip :color="'red'" <v-chip :color="'red'"
dark dark
v-else v-else
> 배송 준비 > 배송 준비
</v-chip> </v-chip>
</template> </template>
<template v-slot:item.orderStatus="{ item }">
<v-btn text
v-if="!item.deliveryCancelled"
@click="orderCancelled(item)"
> 주문취소
</v-btn>
</template>
<!-- <template v-slot:item.Survey="{ item }">--> <!-- <template v-slot:item.Survey="{ item }">-->
<!-- <v-icon--> <!-- <v-icon-->
<!-- v-if="item.surveyCompleted"--> <!-- v-if="item.surveyCompleted"-->
<!-- small--> <!-- small-->
<!-- @click="openSurvey(item)"--> <!-- @click="openSurvey(item)"-->
<!-- >--> <!-- >-->
<!-- 리뷰보기--> <!-- 리뷰보기-->
<!-- </v-icon>--> <!-- </v-icon>-->
<!-- <v-icon--> <!-- <v-icon-->
<!-- v-else--> <!-- v-else-->
<!-- small--> <!-- small-->
<!-- @click="openSurvey(item)"--> <!-- @click="openSurvey(item)"-->
<!-- >--> <!-- >-->
<!-- 리뷰작성--> <!-- 리뷰작성-->
<!-- </v-icon>--> <!-- </v-icon>-->
<!-- </template>--> <!-- </template>-->
</v-data-table> </v-data-table>
</v-card> </v-card>
@@ -74,45 +86,44 @@
value: 'productName', value: 'productName',
}, },
{text: '구매수량', value: 'quantity', sortable: false, align: 'center'}, {text: '구매수량', value: 'quantity', sortable: false, align: 'center'},
{text: '결제금액', value: 'payment',sortable: false, align: 'center'}, {text: '결제금액', value: 'payment', sortable: false, align: 'center'},
{text: '배송상태', value: 'action', sortable: false, align: 'center'}, {text: '배송상태', value: 'action', sortable: false, align: 'center'},
// {text: '리뷰', value: 'Survey', sortable: false, align: 'center'}, {text: '주문상태', value: 'orderStatus', sortable: false, align: 'center'},
// {text: '결제시각', value: 'timestamp', align: 'center'},
], ],
orderList: [], orderList: [],
surveyList:[], surveyList: [],
}), }),
computed: { computed: {},
},
watch: { watch: {
dialog(val) { dialog(val) {
val || this.close() val || this.close()
}, },
}, },
created() { }, created() {
},
mounted() { mounted() {
this.mountedFunction() this.mountedFunction()
}, },
methods: { methods: {
getSurveyList(){ getSurveyList() {
var me = this var me = this
if(`${API_HOST}` == 'undefined') if (`${API_HOST}` == 'undefined')
window.API_HOST = localStorage.getItem('api_host') window.API_HOST = localStorage.getItem('api_host')
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
me.$http.get(`${API_HOST}/surveys`).then(function (e) { me.$http.get(`${API_HOST}/surveys`).then(function (e) {
resolve(e.data._embedded.surveys) resolve(e.data._embedded.surveys)
}).catch(function (error){ }).catch(function (error) {
reject() reject()
} ); });
}); });
}, },
getOrderList() { getOrderList() {
var me = this var me = this
if(`${API_HOST}` == 'undefined') if (`${API_HOST}` == 'undefined')
window.API_HOST = localStorage.getItem('api_host') window.API_HOST = localStorage.getItem('api_host')
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
@@ -122,6 +133,22 @@
}); });
}, },
orderCancelled(item) {
console.log(item)
console.log(`${API_HOST}`)
var me = this
me.$http.patch(`${API_HOST}/orders/${item.orderId}`, {
state: 'OrderCancelled'
}).then(function() {
me.$router.go({
path: me.$router.path,
query: {
t: + new Date()
}
})
})
},
async mountedFunction() { async mountedFunction() {
var me = this; var me = this;
@@ -139,43 +166,42 @@
// console.log(err) // console.log(err)
// } // }
me.orderList=order me.orderList = order
}, },
openSurvey(item) { openSurvey(item) {
var me = this var me = this
let check=false let check = false
this.$http.get(`${API_HOST}/surveys`).then(function (surveyList) { this.$http.get(`${API_HOST}/surveys`).then(function (surveyList) {
surveyList.data._embedded.surveys.some(function(select){ surveyList.data._embedded.surveys.some(function (select) {
if(select.orderId == item.orderId){ if (select.orderId == item.orderId) {
check = true check = true
return me.$router.push({ name: 'surveys', params: select }); return me.$router.push({name: 'surveys', params: select});
} }
}) })
if(check == false){ if (check == false) {
var data= { var data = {
'orderId' : item.orderId, 'orderId': item.orderId,
'customerId': item.userId, 'customerId': item.userId,
'customerName': item.nickName, 'customerName': item.nickName,
'productName': item.productName, 'productName': item.productName,
'productPrice': item.payment, 'productPrice': item.payment,
'productQty': item.quantity, 'productQty': item.quantity,
'surveyMessage': '', 'surveyMessage': '',
'surveyRecommend':2, 'surveyRecommend': 2,
'surveyDelivery':2, 'surveyDelivery': 2,
'productSatisfaction': 2, 'productSatisfaction': 2,
'surveyCompleted': false 'surveyCompleted': false
} }
me.$router.push({ name: 'surveys', params: data }); me.$router.push({name: 'surveys', params: data});
} }
}) })
}, },
}, },

View File

@@ -14,20 +14,31 @@
class="elevation-1" class="elevation-1"
> >
<template v-slot:item.delivery="{ item }" > <template v-slot:item.delivery="{ item }">
<v-chip v-if="item.deli =='DeliveryCompleted'" <v-chip v-if="item.deli =='DeliveryCompleted'"
color="green" color="green"
dark dark
> {{ item.deli }} > {{ item.deli }}
</v-chip> </v-chip>
<v-chip :color="'red'"
dark
v-else-if="item.deli == 'DeliveryCancelled'"
>
{{ item.deli }}
</v-chip>
<v-chip v-else-if="item.deli =='DeliveryReady'" <v-chip v-else-if="item.deli =='DeliveryReady'"
color="red" color="red"
dark dark
> {{ item.deli }} > {{ item.deli }}
</v-chip> </v-chip>
</template> </template>
<template v-slot:item.orderStatus="{ item }">
<v-btn text
v-if="!(item.deli == 'DeliveryCancelled')"
@click="orderCancelled(item)"
> 주문취소
</v-btn>
</template>
</v-data-table> </v-data-table>
</v-card> </v-card>
</template> </template>
@@ -55,14 +66,14 @@
{text: '구매수량', value: 'quantity', sortable: false, align: 'center'}, {text: '구매수량', value: 'quantity', sortable: false, align: 'center'},
{text: '결제금액', value: 'price', sortable: false, align: 'center'}, {text: '결제금액', value: 'price', sortable: false, align: 'center'},
{text: '배송상태', value: 'delivery', sortable: false, align: 'center'}, {text: '배송상태', value: 'delivery', sortable: false, align: 'center'},
{text: '주문상태', value: 'orderStatus', sortable: false, align: 'center'},
// {text: '결제시각', value: 'timestamp', align: 'center'}, // {text: '결제시각', value: 'timestamp', align: 'center'},
], ],
orderList: [], orderList: [],
surveyList: [], surveyList: [],
page:5, page: 5,
}), }),
computed: { computed: {},
},
watch: { watch: {
dialog(val) { dialog(val) {
val || this.close() val || this.close()
@@ -78,17 +89,17 @@
async mountedFunction() { async mountedFunction() {
var me = this; var me = this;
try{ try {
await me.getOrderList(); await me.getOrderList();
await me.getDeliveryStatus(); await me.getDeliveryStatus();
console.log("Done") console.log("Done")
}catch (err) { } catch (err) {
console.log(err) console.log(err)
} }
setTimeout(() => { setTimeout(() => {
this.page=10 this.page = 10
}, 100); }, 100);
// await me.updateList() // await me.updateList()
@@ -108,16 +119,29 @@
me.$http.get(`${API_HOST}/deliveries/search/findByOrderIdOrderByDeliveryIdDesc?orderId=` + item.orderId) me.$http.get(`${API_HOST}/deliveries/search/findByOrderIdOrderByDeliveryIdDesc?orderId=` + item.orderId)
.then(function (e) { .then(function (e) {
if (e.data._embedded.deliveries.length != 0) { if (e.data._embedded.deliveries.length != 0) {
item.deli = e.data._embedded.deliveries[0].deliveryState item.deli = e.data._embedded.deliveries[0].deliveryState
} else { } else {
item.deli = "DeliveryReady" item.deli = "DeliveryReady"
} }
}); });
}) })
resolve(me.orderList) resolve(me.orderList)
}) })
}, },
orderCancelled(item) {
var me = this
me.$http.patch(`${API_HOST}/orders/${item.orderId}`, {
state: 'OrderCancelled'
}).then(function() {
me.$router.go({
path: me.$router.path,
query: {
t: + new Date()
}
})
})
},
getOrderList() { getOrderList() {
var me = this var me = this