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

View File

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

View File

@@ -24,30 +24,42 @@
v-else-if="item.deliveryStarted && !item.deliveryCompleted"
> 배송 시작
</v-chip>
<v-chip :color="'red'"
dark
v-else-if="item.deliveryCancelled"
> 주문 취소
</v-chip>
<v-chip :color="'red'"
dark
v-else
> 배송 준비
</v-chip>
</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 }">-->
<!-- <v-icon-->
<!-- v-if="item.surveyCompleted"-->
<!-- small-->
<!-- @click="openSurvey(item)"-->
<!-- >-->
<!-- 리뷰보기-->
<!-- </v-icon>-->
<!-- <template v-slot:item.Survey="{ item }">-->
<!-- <v-icon-->
<!-- v-if="item.surveyCompleted"-->
<!-- small-->
<!-- @click="openSurvey(item)"-->
<!-- >-->
<!-- 리뷰보기-->
<!-- </v-icon>-->
<!-- <v-icon-->
<!-- v-else-->
<!-- small-->
<!-- @click="openSurvey(item)"-->
<!-- >-->
<!-- 리뷰작성-->
<!-- </v-icon>-->
<!-- </template>-->
<!-- <v-icon-->
<!-- v-else-->
<!-- small-->
<!-- @click="openSurvey(item)"-->
<!-- >-->
<!-- 리뷰작성-->
<!-- </v-icon>-->
<!-- </template>-->
</v-data-table>
</v-card>
@@ -74,45 +86,44 @@
value: 'productName',
},
{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: 'Survey', sortable: false, align: 'center'},
// {text: '결제시각', value: 'timestamp', align: 'center'},
{text: '주문상태', value: 'orderStatus', sortable: false, align: 'center'},
],
orderList: [],
surveyList:[],
surveyList: [],
}),
computed: {
},
computed: {},
watch: {
dialog(val) {
val || this.close()
},
},
created() { },
created() {
},
mounted() {
this.mountedFunction()
},
methods: {
getSurveyList(){
getSurveyList() {
var me = this
if(`${API_HOST}` == 'undefined')
if (`${API_HOST}` == 'undefined')
window.API_HOST = localStorage.getItem('api_host')
return new Promise(function (resolve, reject) {
me.$http.get(`${API_HOST}/surveys`).then(function (e) {
resolve(e.data._embedded.surveys)
}).catch(function (error){
}).catch(function (error) {
reject()
} );
});
});
},
getOrderList() {
var me = this
if(`${API_HOST}` == 'undefined')
if (`${API_HOST}` == 'undefined')
window.API_HOST = localStorage.getItem('api_host')
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() {
var me = this;
@@ -139,43 +166,42 @@
// console.log(err)
// }
me.orderList=order
me.orderList = order
},
openSurvey(item) {
var me = this
let check=false
let check = false
this.$http.get(`${API_HOST}/surveys`).then(function (surveyList) {
surveyList.data._embedded.surveys.some(function(select){
if(select.orderId == item.orderId){
check = true
return me.$router.push({ name: 'surveys', params: select });
}
})
surveyList.data._embedded.surveys.some(function (select) {
if (select.orderId == item.orderId) {
check = true
return me.$router.push({name: 'surveys', params: select});
}
})
if(check == false){
var data= {
'orderId' : item.orderId,
if (check == false) {
var data = {
'orderId': item.orderId,
'customerId': item.userId,
'customerName': item.nickName,
'productName': item.productName,
'productPrice': item.payment,
'productQty': item.quantity,
'surveyMessage': '',
'surveyRecommend':2,
'surveyDelivery':2,
'surveyRecommend': 2,
'surveyDelivery': 2,
'productSatisfaction': 2,
'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"
>
<template v-slot:item.delivery="{ item }" >
<template v-slot:item.delivery="{ item }">
<v-chip v-if="item.deli =='DeliveryCompleted'"
color="green"
dark
> {{ item.deli }}
</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'"
color="red"
dark
> {{ item.deli }}
</v-chip>
</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-card>
</template>
@@ -55,14 +66,14 @@
{text: '구매수량', value: 'quantity', sortable: false, align: 'center'},
{text: '결제금액', value: 'price', sortable: false, align: 'center'},
{text: '배송상태', value: 'delivery', sortable: false, align: 'center'},
{text: '주문상태', value: 'orderStatus', sortable: false, align: 'center'},
// {text: '결제시각', value: 'timestamp', align: 'center'},
],
orderList: [],
surveyList: [],
page:5,
page: 5,
}),
computed: {
},
computed: {},
watch: {
dialog(val) {
val || this.close()
@@ -78,17 +89,17 @@
async mountedFunction() {
var me = this;
try{
try {
await me.getOrderList();
await me.getDeliveryStatus();
console.log("Done")
}catch (err) {
} catch (err) {
console.log(err)
}
setTimeout(() => {
this.page=10
this.page = 10
}, 100);
// await me.updateList()
@@ -108,16 +119,29 @@
me.$http.get(`${API_HOST}/deliveries/search/findByOrderIdOrderByDeliveryIdDesc?orderId=` + item.orderId)
.then(function (e) {
if (e.data._embedded.deliveries.length != 0) {
item.deli = e.data._embedded.deliveries[0].deliveryState
} else {
item.deli = "DeliveryReady"
}
});
if (e.data._embedded.deliveries.length != 0) {
item.deli = e.data._embedded.deliveries[0].deliveryState
} else {
item.deli = "DeliveryReady"
}
});
})
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() {
var me = this