优化确认订单

This commit is contained in:
启航 2025-10-04 22:20:20 +08:00
parent 8843d2dd84
commit 7a96b4f475
5 changed files with 91 additions and 66 deletions

View File

@ -18,6 +18,7 @@ import cn.qihangerp.security.common.BaseController;
import com.alibaba.fastjson2.JSONObject;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
@Slf4j
@ -60,19 +61,17 @@ public class DouOrderContoller extends BaseController {
@PostMapping("/confirmOrder")
public AjaxResult confirmOrder(@RequestBody DouOrderConfirmBo bo) {
log.info("=========确认订单======={}", JSONObject.toJSONString(bo));
// bo.setUpdateBy(getUsername());
if(bo.getOrderId()==null) return AjaxResult.error("订单id不能为空");
if(StringUtils.isEmpty(bo.getReceiver())) return AjaxResult.error("缺少参数receiver");
if(StringUtils.isEmpty(bo.getMobile())) return AjaxResult.error("缺少参数mobile");
if(StringUtils.isEmpty(bo.getProvince())) return AjaxResult.error("缺少参数province");
if(StringUtils.isEmpty(bo.getCity())) return AjaxResult.error("缺少参数city");
if(StringUtils.isEmpty(bo.getTown())) return AjaxResult.error("缺少参数town");
if(StringUtils.isEmpty(bo.getAddress())) return AjaxResult.error("缺少参数address");
var result = orderService.confirmOrder(bo);
if(result.getCode()==0) return success();
else return AjaxResult.error(result.getMsg());
// if(result == -1) return new AjaxResult(501,"已确认过了!请勿重复确认!");
// else if(result == -2) return new AjaxResult(502,"订单已存在!请勿重复确认!");
// else if(result == -3) return new AjaxResult(503,"请指定发货方式!");
// else if(result == -4) return new AjaxResult(504,"发货方式不支持!");
// else if(result == -11) return new AjaxResult(511,"商品SKU编码不存在");
// else if(result == -12) return new AjaxResult(512,"商品信息不存在!");
//
//
// return toAjax(result);
// return AjaxResult.error("未实现");
}
}

View File

@ -18,6 +18,7 @@ import cn.qihangerp.security.common.BaseController;
import com.alibaba.fastjson2.JSONObject;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
@Slf4j
@ -62,7 +63,13 @@ public class PddOrderController extends BaseController {
@PostMapping("/confirmOrder")
public AjaxResult confirmOrder(@RequestBody PddOrderConfirmBo bo) {
log.info("=========确认订单======={}", JSONObject.toJSONString(bo));
if(bo.getOrderId()==null) return AjaxResult.error("订单id不能为空");
if(StringUtils.isEmpty(bo.getReceiver())) return AjaxResult.error("缺少参数receiver");
if(StringUtils.isEmpty(bo.getMobile())) return AjaxResult.error("缺少参数mobile");
if(StringUtils.isEmpty(bo.getProvince())) return AjaxResult.error("缺少参数province");
if(StringUtils.isEmpty(bo.getCity())) return AjaxResult.error("缺少参数city");
if(StringUtils.isEmpty(bo.getTown())) return AjaxResult.error("缺少参数town");
if(StringUtils.isEmpty(bo.getAddress())) return AjaxResult.error("缺少参数address");
var result = orderService.confirmOrder(bo);
if(result.getCode()==0) return success();
else return AjaxResult.error(result.getMsg());

View File

@ -18,6 +18,7 @@ import cn.qihangerp.security.common.BaseController;
import com.alibaba.fastjson2.JSONObject;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
@Slf4j
@ -62,6 +63,13 @@ public class TaoOrderController extends BaseController {
@PostMapping("/confirmOrder")
public AjaxResult confirmOrder(@RequestBody TaoOrderConfirmBo bo) {
log.info("=========确认订单======={}", JSONObject.toJSONString(bo));
if(bo.getOrderId()==null) return AjaxResult.error("订单id不能为空");
if(StringUtils.isEmpty(bo.getReceiver())) return AjaxResult.error("缺少参数receiver");
if(StringUtils.isEmpty(bo.getMobile())) return AjaxResult.error("缺少参数mobile");
if(StringUtils.isEmpty(bo.getProvince())) return AjaxResult.error("缺少参数province");
if(StringUtils.isEmpty(bo.getCity())) return AjaxResult.error("缺少参数city");
if(StringUtils.isEmpty(bo.getTown())) return AjaxResult.error("缺少参数town");
if(StringUtils.isEmpty(bo.getAddress())) return AjaxResult.error("缺少参数address");
var result = orderService.confirmOrder(bo);
if(result.getCode()==0) return success();

View File

@ -17,6 +17,7 @@ import cn.qihangerp.security.common.BaseController;
import com.alibaba.fastjson2.JSONObject;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
@Slf4j
@ -53,7 +54,13 @@ public class WeiOrderController extends BaseController {
@PostMapping("/confirmOrder")
public AjaxResult confirmOrder(@RequestBody WeiOrderConfirmBo bo) {
log.info("=========确认订单======={}", JSONObject.toJSONString(bo));
if(bo.getOrderId()==null) return AjaxResult.error("订单id不能为空");
if(StringUtils.isEmpty(bo.getReceiver())) return AjaxResult.error("缺少参数receiver");
if(StringUtils.isEmpty(bo.getMobile())) return AjaxResult.error("缺少参数mobile");
if(StringUtils.isEmpty(bo.getProvince())) return AjaxResult.error("缺少参数province");
if(StringUtils.isEmpty(bo.getCity())) return AjaxResult.error("缺少参数city");
if(StringUtils.isEmpty(bo.getTown())) return AjaxResult.error("缺少参数town");
if(StringUtils.isEmpty(bo.getAddress())) return AjaxResult.error("缺少参数address");
var result = orderService.confirmOrder(bo);
if(result.getCode()==0) return success();
else return AjaxResult.error(result.getMsg());

View File

@ -218,57 +218,56 @@
<el-form ref="form" :model="form" :rules="rules" label-width="100px" inline>
<el-descriptions title="订单信息">
<el-descriptions-item label="ID">{{form.id}}</el-descriptions-item>
<el-descriptions-item label="订单号">{{form.orderId}}</el-descriptions-item>
<el-descriptions-item label="订单号">{{form.tid}}</el-descriptions-item>
<el-descriptions-item label="店铺">
{{ shopList.find(x=>x.id === form.shopId)?shopList.find(x=>x.id === form.shopId).name:'' }}
</el-descriptions-item>
<el-descriptions-item label="订单来源">
<el-tag size="small" >{{form.btypeDesc}}</el-tag>
<el-descriptions-item label="订单类型">
<el-tag size="small" v-if="form.type==='fixed'">一口价订单</el-tag>
</el-descriptions-item>
<el-descriptions-item label="订单状态">
<el-tag size="small" >{{ form.orderStatusDesc }}</el-tag>
<el-tag v-if="form.status === 'WAIT_BUYER_PAY'">等待买家付款</el-tag>
<el-tag v-if="form.status === 'SELLER_CONSIGNED_PART'">卖家部分发货</el-tag>
<el-tag v-if="form.status === 'WAIT_SELLER_SEND_GOODS'">待发货</el-tag>
<el-tag v-if="form.status === 'WAIT_BUYER_CONFIRM_GOODS'">待买家收货</el-tag>
<el-tag v-if="form.status === 'TRADE_FINISHED'">交易成功</el-tag>
<el-tag v-if="form.status === 'TRADE_CLOSED'">交易自动关闭</el-tag>
<el-tag v-if="form.status === 'TRADE_CLOSED_BY_TAOBAO'">关闭交易</el-tag>
<el-tag v-if="form.status === 'PAID_FORBID_CONSIGN'">禁止发货</el-tag>
</el-descriptions-item>
<el-descriptions-item label="主状态">
<el-tag size="small" >{{ form.mainStatusDesc }}</el-tag>
<el-descriptions-item label="是否有买家留言">
<el-tag size="small" v-if="form.hasBuyerMessage ==='false' "></el-tag>
<el-tag size="small" v-if="form.hasBuyerMessage ==='true' "></el-tag>
</el-descriptions-item>
<!-- <el-descriptions-item label="成团状态">-->
<!-- <el-tag size="small" v-if="form.groupStatus ===0 ">拼团中</el-tag>-->
<!-- <el-tag size="small" v-if="form.groupStatus ===1 ">已成团</el-tag>-->
<!-- <el-tag size="small" v-if="form.groupStatus ===2 ">团失败</el-tag>-->
<!-- </el-descriptions-item>-->
<el-descriptions-item label="买家备注">
{{form.buyerWords}}
{{form.buyerMessage}}
</el-descriptions-item>
<el-descriptions-item label="卖家备注">
{{form.sellerWords}}
{{form.sellerMemo}}
</el-descriptions-item>
<el-descriptions-item label="取消原因">
{{form.cancelReason}}
</el-descriptions-item>
<el-descriptions-item label="创建时间">
{{ parseTime(form.createTime*1000) }}
</el-descriptions-item>
<el-descriptions-item label="支付时间"> {{ parseTime(form.payTime*1000) }}</el-descriptions-item>
<el-descriptions-item label="更新时间"> {{ parseTime(form.updateTime*1000) }}</el-descriptions-item>
<el-descriptions-item label="创建时间">{{ form.created }}</el-descriptions-item>
<el-descriptions-item label="支付时间"> {{form.payTime}}</el-descriptions-item>
<el-descriptions-item label="更新时间"> {{ form.modified }}</el-descriptions-item>
</el-descriptions>
<el-descriptions title="付款信息">
<!-- <el-descriptions-item label="商品总额">{{form.goodsAmount}}</el-descriptions-item>-->
<!-- <el-descriptions-item label="团长免单金额">{{form.capitalFreeDiscount}}</el-descriptions-item>-->
<el-descriptions-item label="商家优惠金额">{{form.promotionShopAmount}}</el-descriptions-item>
<el-descriptions-item label="平台优惠金额">{{form.promotionTalentAmount}}</el-descriptions-item>
<el-descriptions-item label="运费">{{form.postAmount}}</el-descriptions-item>
<el-descriptions-item label="实际支付金额">{{form.orderAmount}}</el-descriptions-item>
<el-descriptions-item label="支付方式"> {{ form.payAmount }}</el-descriptions-item>
<el-descriptions-item label="优惠金额">{{amountFormatter(null,null,form.discountFee) }}</el-descriptions-item>
<el-descriptions-item label="手工调整金额">{{amountFormatter(null,null,form.adjustFee) }}</el-descriptions-item>
<el-descriptions-item label="运费">{{amountFormatter(null,null,form.postFee) }}</el-descriptions-item>
<el-descriptions-item label="订单金额">{{amountFormatter(null,null,form.totalFee) }}</el-descriptions-item>
<el-descriptions-item label="支付金额"> {{ amountFormatter(null,null,form.payment) }}</el-descriptions-item>
</el-descriptions>
<el-descriptions title="收货信息">
<el-descriptions-item label="收件人姓名">{{form.maskPostReceiver}}</el-descriptions-item>
<el-descriptions-item label="收件人手机号">{{form.maskPostTel}}</el-descriptions-item>
<el-descriptions-item label="省市区">{{form.provinceName}}{{form.cityName}}{{form.townName}}</el-descriptions-item>
<el-descriptions-item label="详细地址">{{form.maskPostAddress}}</el-descriptions-item>
<el-descriptions-item label="收件人姓名">{{form.receiverName}}</el-descriptions-item>
<el-descriptions-item label="收件人手机号">{{form.receiverMobile}}</el-descriptions-item>
<el-descriptions-item label="省市区">{{form.receiverState}}{{form.receiverCity}}{{form.receiverDistrict}}{{form.receiverTown}}</el-descriptions-item>
<el-descriptions-item label="详细地址">{{form.receiverAddress}}</el-descriptions-item>
</el-descriptions>
<!-- <el-descriptions title="发货信息">-->
<!-- &lt;!&ndash; <el-descriptions-item label="发货方式">-->
@ -283,26 +282,26 @@
<el-table :data="form.items" style="margin-bottom: 10px;">
<el-table-column label="序号" align="center" type="index" width="50"/>
<el-table-column label="商品图片" width="80">
<el-table-column label="图片" width="50">
<template slot-scope="scope">
<el-image style="width: 70px; height: 70px" :src="scope.row.productPic"></el-image>
<el-image style="width: 45px; height: 45px" :src="scope.row.picPath"></el-image>
</template>
</el-table-column>
<el-table-column label="商品标题" prop="productName" ></el-table-column>
<el-table-column label="SKU" prop="goodsSpec" width="150"></el-table-column>
<el-table-column label="sku编码" prop="specNum"></el-table-column>
<el-table-column label="单价" prop="goodsPrice"></el-table-column>
<el-table-column label="数量" prop="comboNum"></el-table-column>
<el-table-column label="商品金额" prop="totalAmount"></el-table-column>
<el-table-column label="标题" prop="title" ></el-table-column>
<el-table-column label="规格" prop="skuPropertiesName" width="150"></el-table-column>
<el-table-column label="sku编码" prop="outerSkuId"></el-table-column>
<el-table-column label="单价" prop="price" :formatter="amountFormatter"></el-table-column>
<el-table-column label="数量" prop="num"></el-table-column>
<el-table-column label="实付金额" prop="payment" :formatter="amountFormatter"></el-table-column>
</el-table>
<el-divider content-position="center" v-if="isAudit" >收件人</el-divider>
<el-form-item label="收件人姓名" prop="maskPostReceiver" v-if="isAudit">
<el-input v-model="form.maskPostReceiver" placeholder="请输入收件人姓名" style="width:350px" />
<el-form-item label="收件人姓名" prop="receiverName" v-if="isAudit">
<el-input v-model="form.receiverName" placeholder="请输入收件人姓名" style="width:350px" />
</el-form-item>
<el-form-item label="收件人电话" prop="maskPostTel" v-if="isAudit">
<el-input v-model="form.maskPostTel" placeholder="请输入收件人电话" style="width:350px" />
<el-form-item label="收件人电话" prop="receiverMobile" v-if="isAudit">
<el-input v-model="form.receiverMobile" placeholder="请输入收件人电话" style="width:350px" />
</el-form-item>
<el-form-item label="省市区" prop="provinces" v-if="isAudit">
<el-cascader style="width:350px"
@ -311,8 +310,8 @@
v-model="form.provinces">
</el-cascader>
</el-form-item>
<el-form-item label="详细地址" prop="maskPostAddress" v-if="isAudit">
<el-input v-model="form.maskPostAddress" placeholder="请输入收件地址" style="width:350px" />
<el-form-item label="详细地址" prop="receiverAddress" v-if="isAudit">
<el-input v-model="form.receiverAddress" placeholder="请输入收件地址" style="width:350px" />
</el-form-item>
<!-- <el-form-item label="发货方式" prop="shipType" v-if="isAudit">-->
<!-- <el-select v-model="form.shipType" placeholder="发货类型" style="width:350px">-->
@ -338,6 +337,7 @@ import {MessageBox} from "element-ui";
import {isRelogin} from "../../../utils/request";
import Clipboard from "clipboard";
import {pcaTextArr} from "element-china-area-data";
import {float} from "quill/ui/icons";
export default {
name: "OrderTao",
data() {
@ -376,6 +376,10 @@ export default {
form: {
},
rules: {
receiverName:[{ required: true, message: "不能为空", trigger: "blur" }],
receiverMobile:[{ required: true, message: "不能为空", trigger: "blur" }],
provinces:[{ required: true, message: "不能为空", trigger: "blur" }],
receiverAddress:[{ required: true, message: "不能为空", trigger: "blur" }],
}
};
},
@ -406,6 +410,7 @@ export default {
})
},
amountFormatter(row, column, cellValue, index) {
cellValue = parseFloat(cellValue)
return '¥' + cellValue.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
},
/** 查询淘宝订单列表 */
@ -517,7 +522,6 @@ export default {
const id = row.id || this.ids
getOrder(id).then(response => {
this.form = response.data;
this.goodsList = response.data.taoOrderItemList;
this.detailOpen = true;
this.detailTitle = "订单详情";
});
@ -546,9 +550,9 @@ export default {
getOrder(id).then(response => {
this.form = response.data;
this.form.provinces = []
this.form.provinces.push(response.data.provinceName)
this.form.provinces.push(response.data.cityName)
this.form.provinces.push(response.data.townName)
this.form.provinces.push(response.data.receiverState)
this.form.provinces.push(response.data.receiverCity)
this.form.provinces.push(response.data.receiverDistrict)
this.detailOpen = true;
this.detailTitle = "确认订单";
this.isAudit = true
@ -562,9 +566,9 @@ export default {
province:this.form.provinces[0],
city:this.form.provinces[1],
town:this.form.provinces[2],
address:this.form.maskPostAddress,
receiver:this.form.maskPostReceiver,
mobile:this.form.maskPostTel
address:this.form.receiverAddress,
receiver:this.form.receiverName,
mobile:this.form.receiverMobile
}
confirmOrder(form).then(response => {