12345678910111213141516171819202122232425262728293031323334353637 |
- package controller
- import (
- . "app.yhyue.com/moapp/jybase/api"
- "app.yhyue.com/moapp/jybase/common"
- "github.com/gogf/gf/v2/frame/g"
- "github.com/gogf/gf/v2/net/ghttp"
- "github.com/gogf/gf/v2/util/gconv"
- "github.com/pkg/errors"
- "jyOrderManager/internal/model"
- )
- // OrderSurplusPrice 订单详情
- func OrderSurplusPrice(r *ghttp.Request) {
- rData, err := func() (interface{}, error) {
- var param model.OrdersEditBatchReturn
- err := gconv.Struct(r.GetBody(), ¶m)
- if err != nil {
- return nil, errors.Wrap(err, "数据校验异常")
- }
- var price int
- for key, value := range param.OrderArr {
- orderData, _ := g.DB().GetOne(r.Context(), "SELECT (IFNULL(CASE WHEN a.is_backstage_order = 1 THEN a.pay_money ELSE a.order_money END, 0) - IFNULL(a.procedures_money, 0)) - (SELECT IFNULL(SUM(b.return_money), 0) FROM return_money_record b WHERE b.order_code = a.order_code AND b.state = 1) + (SELECT IFNULL(SUM(c.refund_money), 0) FROM refund_record c WHERE c.order_code = a.order_code) + (SELECT IFNULL(SUM(payMoney), 0) FROM moneyCorrection c WHERE c.orderCode = a.order_code) AS outstandingPayment, a.* FROM dataexport_order a WHERE a.id = ?", value["orderId"])
- if orderData.IsEmpty() {
- continue
- }
- param.OrderArr[key]["money"] = common.IntAll(orderData.Map()["outstandingPayment"])
- price += common.IntAll(orderData.Map()["outstandingPayment"])
- }
- return map[string]interface{}{"status": true, "orderArr": param.OrderArr, "price": price}, nil
- }()
- if err != nil {
- g.Log().Errorf(r.Context(), "订单详情异常 %v", err)
- }
- r.Response.WriteJson(NewResult(rData, err))
- }
|