|
|
@@ -0,0 +1,147 @@
|
|
|
+<template>
|
|
|
+ <div>
|
|
|
+ <el-form :model="formData" :rules="rules" ref="form" label-width="80px"
|
|
|
+ label-position="right" size="small">
|
|
|
+ <el-form-item prop="id" label="订单ID">{{formData.id}}</el-form-item>
|
|
|
+ <el-form-item prop="userId" label="用户ID">{{formData.userId}}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="createdAt" label="创建时间">
|
|
|
+ <el-date-picker v-model="formData.createdAt" type="datetime"
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss" disabled>
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="productId" label="商品ID">
|
|
|
+ <el-input v-model="formData.productId"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="商品名称" style="width:100%;">
|
|
|
+ {{formData.product?formData.product.name:''}}</el-form-item>
|
|
|
+ <el-form-item prop="productSpecId" label="规格ID">
|
|
|
+ <el-input v-model="formData.productSpecId"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="规格名称">
|
|
|
+ {{formData.productSpec?formData.productSpec.name:''}}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="amount" label="购买数量">
|
|
|
+ <el-input-number v-model="formData.amount"></el-input-number>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="money" label="付款">
|
|
|
+ <el-input-number v-model="formData.money"></el-input-number>
|
|
|
+ 元
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="coin" label="商城币">
|
|
|
+ <el-input-number v-model="formData.coin"></el-input-number>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="payTime" label="创建时间" v-if="formData.payTime">
|
|
|
+ <el-date-picker v-model="formData.payTime" type="datetime"
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss" disabled>
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="contactName" label="联系人">
|
|
|
+ <el-input v-model="formData.contactName"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="phone" label="电话">
|
|
|
+ <el-input v-model="formData.phone"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="address" label="地址">
|
|
|
+ <el-input v-model="formData.address"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="status" label="状态">
|
|
|
+ <el-select v-model="formData.status">
|
|
|
+ <el-option v-for="item in statusOptions" :key="item.value"
|
|
|
+ :label="item.label" :value="item.value"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item prop="trackingNo" label="物流单号"
|
|
|
+ v-if="formData.status === 'DELIVERING'">
|
|
|
+ <el-input v-model="formData.trackingNo"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button @click="save" :loading="loading" type="primary"
|
|
|
+ size="small">保存</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+export default {
|
|
|
+ created() {
|
|
|
+ if (this.$route.params.formData) {
|
|
|
+ this.formData = this.$route.params.formData;
|
|
|
+ } else {
|
|
|
+ this.$http.get(`/order/${this.$route.query.id}`).then(res => {
|
|
|
+ if (res.success) {
|
|
|
+ this.formData = res.data;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ rules: {},
|
|
|
+ formData: {},
|
|
|
+ statusOptions: [
|
|
|
+ {
|
|
|
+ label: '待付款',
|
|
|
+ value: 'NOT_PAID',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '已付款',
|
|
|
+ value: 'PAID',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '待收货',
|
|
|
+ value: 'DELIVERING',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '待评价',
|
|
|
+ value: 'NOT_RATED',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '已完成',
|
|
|
+ value: 'RATED',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '已取消',
|
|
|
+ value: 'CANCELED',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ loading: false,
|
|
|
+ };
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ save() {
|
|
|
+ this.loading = true;
|
|
|
+ this.$axios
|
|
|
+ .post('/order/save', this.formData)
|
|
|
+ .then(res => {
|
|
|
+ this.loading = false;
|
|
|
+ if (res.data.success) {
|
|
|
+ this.$message.success('保存成功');
|
|
|
+ } else {
|
|
|
+ this.$message.error(res.data.error);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch(e => {
|
|
|
+ this.loading = false;
|
|
|
+ console.log(e);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less">
|
|
|
+// .el-form-item {
|
|
|
+// width: 50%;
|
|
|
+// box-sizing: border-box;
|
|
|
+// padding-right: 10px;
|
|
|
+// display: inline-block;
|
|
|
+// }
|
|
|
+// @media screen and (max-width: 1000px) {
|
|
|
+// .el-form-item {
|
|
|
+// width: auto;
|
|
|
+// display: block;
|
|
|
+// }
|
|
|
+// }
|
|
|
+</style>
|