init 初始化订单管理
This commit is contained in:
parent
c296eca347
commit
81573d783d
141
ARW.Model/Dto/Business/OrderManage/Orders/OrderDto.cs
Normal file
141
ARW.Model/Dto/Business/OrderManage/Orders/OrderDto.cs
Normal file
@ -0,0 +1,141 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using ARW.Model.Models.Business.OrderManage.Orders;
|
||||
|
||||
namespace ARW.Model.Dto.Business.OrderManage.Orders
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单输入对象
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
public class OrderDto
|
||||
{
|
||||
|
||||
public int OrderId { get; set; }
|
||||
|
||||
public long OrderGuid { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "商品guid不能为空")]
|
||||
public long GoodsGuid { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "订单流水guid不能为空")]
|
||||
public long PaymentGuid { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "客户guid不能为空")]
|
||||
public long CustomerGuid { get; set; }
|
||||
|
||||
public long? ShopGuid { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "订单号不能为空")]
|
||||
public string OrderNumber { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "商品总金额不能为空")]
|
||||
public decimal GoodsTotalAmoun { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "订单金额不能为空")]
|
||||
public decimal OrderAmount { get; set; }
|
||||
|
||||
public long? CouponGuid { get; set; }
|
||||
|
||||
public decimal CouponMoney { get; set; }
|
||||
|
||||
public decimal PointsMoney { get; set; }
|
||||
|
||||
public decimal PointsNum { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "实际付款金额(包含运费)不能为空")]
|
||||
public decimal PayPrice { get; set; }
|
||||
|
||||
public decimal UpdatePrice { get; set; }
|
||||
|
||||
public string OrderRemark { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "支付方式(1微信支付 2余额支付)不能为空")]
|
||||
public int PayType { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "付款状态(1未付款 2已付款)不能为空")]
|
||||
public int PayStatus { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "付款时间不能为空")]
|
||||
public DateTime? PayTime { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "配送方式(1快递配送)不能为空")]
|
||||
public int DeliveryType { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "运费金额不能为空")]
|
||||
public decimal ExpressPrice { get; set; }
|
||||
|
||||
public long? LogisticsCompanyGuid { get; set; }
|
||||
|
||||
public string LogisticsCompany { get; set; }
|
||||
|
||||
public string LogisticsTrackingNumber { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "发货状态(1未发货 2已发货)不能为空")]
|
||||
public int DeliveryStatus { get; set; }
|
||||
|
||||
public DateTime? DeliveryTime { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "收货状态(1未收货 2已收货)不能为空")]
|
||||
public int ReceiptStatus { get; set; }
|
||||
|
||||
public DateTime? ReceiptTime { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "订单状态(1进行中 2取消 3待取消 4已完成)不能为空")]
|
||||
public int OrderStatus { get; set; }
|
||||
|
||||
public decimal PointsBonus { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "订单是否已结算(1未结算 2已结算)不能为空")]
|
||||
public int IsSettled { get; set; }
|
||||
|
||||
public string TransactionId { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "是否已评价(1否 2是)不能为空")]
|
||||
public int IsComment { get; set; }
|
||||
|
||||
[Required(ErrorMessage = "订单来源(1普通订单)不能为空")]
|
||||
public int OrderSource { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 订单查询对象
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
public class OrderQueryDto : PagerInfo
|
||||
{
|
||||
|
||||
public string OrderNumber { get; set; }
|
||||
|
||||
public int? PayType { get; set; }
|
||||
|
||||
public int? PayStatus { get; set; }
|
||||
|
||||
public int? DeliveryType { get; set; }
|
||||
|
||||
public string LogisticsTrackingNumber { get; set; }
|
||||
|
||||
public int? DeliveryStatus { get; set; }
|
||||
|
||||
public int? ReceiptStatus { get; set; }
|
||||
|
||||
public int? OrderStatus { get; set; }
|
||||
|
||||
public string ids { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
337
ARW.Model/Models/Business/OrderManage/Orders/Order.cs
Normal file
337
ARW.Model/Models/Business/OrderManage/Orders/Order.cs
Normal file
@ -0,0 +1,337 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using SqlSugar;
|
||||
using OfficeOpenXml.Attributes;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace ARW.Model.Models.Business.OrderManage.Orders
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单,数据实体对象
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
[SugarTable("tb_order")]
|
||||
public class Order : BusinessBase
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "OrderId")]
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnName = "order_id")]
|
||||
public int OrderId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "OrderGuid")]
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = false, ColumnName = "order_guid")]
|
||||
public long OrderGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :商品guid
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "商品guid")]
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[SugarColumn(ColumnName = "goods_guid")]
|
||||
public long GoodsGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单流水guid
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单流水guid")]
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[SugarColumn(ColumnName = "payment_guid")]
|
||||
public long PaymentGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :客户guid
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "客户guid")]
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[SugarColumn(ColumnName = "customer_guid")]
|
||||
public long CustomerGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :店铺guid
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "店铺guid")]
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[SugarColumn(ColumnName = "shop_guid")]
|
||||
public long? ShopGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单号
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单号")]
|
||||
[SugarColumn(ColumnName = "order_number")]
|
||||
public string OrderNumber { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :商品总金额
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "商品总金额")]
|
||||
[SugarColumn(ColumnName = "goods_total_amoun")]
|
||||
public decimal GoodsTotalAmoun { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单金额
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单金额")]
|
||||
[SugarColumn(ColumnName = "order_amount")]
|
||||
public decimal OrderAmount { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :优惠券guid
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "优惠券guid")]
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[SugarColumn(ColumnName = "coupon_guid")]
|
||||
public long? CouponGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :优惠券抵扣金额
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "优惠券抵扣金额")]
|
||||
[SugarColumn(ColumnName = "coupon_money")]
|
||||
public decimal CouponMoney { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :积分抵扣金额
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "积分抵扣金额")]
|
||||
[SugarColumn(ColumnName = "points_money")]
|
||||
public decimal PointsMoney { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :积分抵扣数量
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "积分抵扣数量")]
|
||||
[SugarColumn(ColumnName = "points_num")]
|
||||
public decimal PointsNum { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :实际付款金额(包含运费)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "实际付款金额(包含运费)")]
|
||||
[SugarColumn(ColumnName = "pay_price")]
|
||||
public decimal PayPrice { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :后台修改的订单金额(差价)
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "后台修改的订单金额(差价)")]
|
||||
[SugarColumn(ColumnName = "update_price")]
|
||||
public decimal UpdatePrice { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :买家留言
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "买家留言")]
|
||||
[SugarColumn(ColumnName = "order_remark")]
|
||||
public string OrderRemark { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :支付方式(1微信支付 2余额支付)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "支付方式(1微信支付 2余额支付)")]
|
||||
[SugarColumn(ColumnName = "pay_type")]
|
||||
public int PayType { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :付款状态(1未付款 2已付款)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "付款状态(1未付款 2已付款)")]
|
||||
[SugarColumn(ColumnName = "pay_status")]
|
||||
public int PayStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :付款时间
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "付款时间", NumberFormat = "yyyy-MM-dd HH:mm:ss")]
|
||||
[SugarColumn(ColumnName = "pay_time")]
|
||||
public DateTime? PayTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :配送方式(1快递配送)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "配送方式(1快递配送)")]
|
||||
[SugarColumn(ColumnName = "delivery_type")]
|
||||
public int DeliveryType { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :运费金额
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "运费金额")]
|
||||
[SugarColumn(ColumnName = "express_price")]
|
||||
public decimal ExpressPrice { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :物流公司guid
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "物流公司guid")]
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[SugarColumn(ColumnName = "logistics_company_guid")]
|
||||
public long? LogisticsCompanyGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :物流公司
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "物流公司")]
|
||||
[SugarColumn(ColumnName = "logistics_company")]
|
||||
public string LogisticsCompany { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :物流单号
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "物流单号")]
|
||||
[SugarColumn(ColumnName = "logistics_tracking_number")]
|
||||
public string LogisticsTrackingNumber { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :发货状态(1未发货 2已发货)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "发货状态(1未发货 2已发货)")]
|
||||
[SugarColumn(ColumnName = "delivery_status")]
|
||||
public int DeliveryStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :发货时间
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "发货时间", NumberFormat = "yyyy-MM-dd HH:mm:ss")]
|
||||
[SugarColumn(ColumnName = "delivery_time")]
|
||||
public DateTime? DeliveryTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :收货状态(1未收货 2已收货)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "收货状态(1未收货 2已收货)")]
|
||||
[SugarColumn(ColumnName = "receipt_status")]
|
||||
public int ReceiptStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :收货时间
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "收货时间", NumberFormat = "yyyy-MM-dd HH:mm:ss")]
|
||||
[SugarColumn(ColumnName = "receipt_time")]
|
||||
public DateTime? ReceiptTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单状态(1进行中 2取消 3待取消 4已完成)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单状态(1进行中 2取消 3待取消 4已完成)")]
|
||||
[SugarColumn(ColumnName = "order_status")]
|
||||
public int OrderStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :赠送的积分数量
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "赠送的积分数量")]
|
||||
[SugarColumn(ColumnName = "points_bonus")]
|
||||
public decimal PointsBonus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单是否已结算(1未结算 2已结算)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单是否已结算(1未结算 2已结算)")]
|
||||
[SugarColumn(ColumnName = "is_settled")]
|
||||
public int IsSettled { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :微信支付交易号
|
||||
/// 空值 : true
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "微信支付交易号")]
|
||||
[SugarColumn(ColumnName = "transaction_id")]
|
||||
public string TransactionId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :是否已评价(1否 2是)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "是否已评价(1否 2是)")]
|
||||
[SugarColumn(ColumnName = "is_comment")]
|
||||
public int IsComment { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单来源(1普通订单)
|
||||
/// 空值 : false
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单来源(1普通订单)")]
|
||||
[SugarColumn(ColumnName = "order_source")]
|
||||
public int OrderSource { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
263
ARW.Model/Vo/Business/OrderManage/Orders/OrderVo.cs
Normal file
263
ARW.Model/Vo/Business/OrderManage/Orders/OrderVo.cs
Normal file
@ -0,0 +1,263 @@
|
||||
using Newtonsoft.Json;
|
||||
using OfficeOpenXml.Attributes;
|
||||
using SqlSugar;
|
||||
using System;
|
||||
|
||||
namespace ARW.Model.Vo.Business.OrderManage.Orders
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单展示对象
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
public class OrderVo
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public int OrderId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[EpplusIgnore]
|
||||
public long OrderGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :商品guid
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[EpplusTableColumn(Header = "商品guid")]
|
||||
public long GoodsGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单流水guid
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[EpplusTableColumn(Header = "订单流水guid")]
|
||||
public long PaymentGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :客户guid
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[EpplusTableColumn(Header = "客户guid")]
|
||||
public long CustomerGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :店铺guid
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[EpplusIgnore]
|
||||
public long? ShopGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单号
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单号")]
|
||||
public string OrderNumber { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :商品总金额
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "商品总金额")]
|
||||
public decimal GoodsTotalAmoun { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单金额
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单金额")]
|
||||
public decimal OrderAmount { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :优惠券guid
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[EpplusIgnore]
|
||||
public long? CouponGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :优惠券抵扣金额
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public decimal CouponMoney { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :积分抵扣金额
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public decimal PointsMoney { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :积分抵扣数量
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public decimal PointsNum { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :实际付款金额(包含运费)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "实际付款金额(包含运费)")]
|
||||
public decimal PayPrice { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :后台修改的订单金额(差价)
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public decimal UpdatePrice { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :买家留言
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public string OrderRemark { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :支付方式(1微信支付 2余额支付)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "支付方式(1微信支付 2余额支付)")]
|
||||
public int PayType { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :付款状态(1未付款 2已付款)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "付款状态(1未付款 2已付款)")]
|
||||
public int PayStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :付款时间
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "付款时间", NumberFormat = "yyyy-MM-dd HH:mm:ss")]
|
||||
public DateTime? PayTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :配送方式(1快递配送)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "配送方式(1快递配送)")]
|
||||
public int DeliveryType { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :运费金额
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "运费金额")]
|
||||
public decimal ExpressPrice { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :物流公司guid
|
||||
/// </summary>
|
||||
[JsonConverter(typeof(ValueToStringConverter))]
|
||||
[EpplusIgnore]
|
||||
public long? LogisticsCompanyGuid { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :物流公司
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public string LogisticsCompany { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :物流单号
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public string LogisticsTrackingNumber { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :发货状态(1未发货 2已发货)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "发货状态(1未发货 2已发货)")]
|
||||
public int DeliveryStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :发货时间
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public DateTime? DeliveryTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :收货状态(1未收货 2已收货)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "收货状态(1未收货 2已收货)")]
|
||||
public int ReceiptStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :收货时间
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public DateTime? ReceiptTime { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单状态(1进行中 2取消 3待取消 4已完成)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单状态(1进行中 2取消 3待取消 4已完成)")]
|
||||
public int OrderStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :赠送的积分数量
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public decimal PointsBonus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单是否已结算(1未结算 2已结算)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单是否已结算(1未结算 2已结算)")]
|
||||
public int IsSettled { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :微信支付交易号
|
||||
/// </summary>
|
||||
[EpplusIgnore]
|
||||
public string TransactionId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :是否已评价(1否 2是)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "是否已评价(1否 2是)")]
|
||||
public int IsComment { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 描述 :订单来源(1普通订单)
|
||||
/// </summary>
|
||||
[EpplusTableColumn(Header = "订单来源(1普通订单)")]
|
||||
public int OrderSource { get; set; }
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using Infrastructure.Attribute;
|
||||
using ARW.Repository.System;
|
||||
using ARW.Model.Models.Business.OrderManage.Orders;
|
||||
|
||||
namespace ARW.Repository.Business.OrderManage.Orders
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单仓储
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
[AppService(ServiceLifetime = LifeTime.Transient)]
|
||||
public class OrderRepository : BaseRepository<Order>
|
||||
{
|
||||
#region 业务逻辑代码
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -0,0 +1,137 @@
|
||||
using Infrastructure.Attribute;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using SqlSugar;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Infrastructure;
|
||||
using ARW.Model;
|
||||
using ARW.Repository;
|
||||
using ARW.Repository.Business.OrderManage.Orders;
|
||||
using ARW.Service.Business.IBusinessService.OrderManage.Orders;
|
||||
using ARW.Model.Dto.Business.OrderManage.Orders;
|
||||
using ARW.Model.Models.Business.OrderManage.Orders;
|
||||
using ARW.Model.Vo.Business.OrderManage.Orders;
|
||||
|
||||
namespace ARW.Service.Business.BusinessService.OrderManage.Orders
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单接口实现类
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
[AppService(ServiceType = typeof(IOrderService), ServiceLifetime = LifeTime.Transient)]
|
||||
public class OrderServiceImpl : BaseService<Order>, IOrderService
|
||||
{
|
||||
private readonly OrderRepository _OrderRepository;
|
||||
|
||||
public OrderServiceImpl(OrderRepository OrderRepository)
|
||||
{
|
||||
this._OrderRepository = OrderRepository;
|
||||
}
|
||||
|
||||
#region 业务逻辑代码
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 查询订单分页列表
|
||||
/// </summary>
|
||||
public async Task<PagedInfo<OrderVo>> GetOrderList(OrderQueryDto parm)
|
||||
{
|
||||
//开始拼装查询条件d
|
||||
var predicate = Expressionable.Create<Order>();
|
||||
|
||||
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.OrderNumber), s => s.OrderNumber.Contains(parm.OrderNumber));
|
||||
predicate = predicate.AndIF(parm.PayType != null, s => s.PayType == parm.PayType);
|
||||
predicate = predicate.AndIF(parm.PayStatus != null, s => s.PayStatus == parm.PayStatus);
|
||||
predicate = predicate.AndIF(parm.DeliveryType != null, s => s.DeliveryType == parm.DeliveryType);
|
||||
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.LogisticsTrackingNumber), s => s.LogisticsTrackingNumber.Contains(parm.LogisticsTrackingNumber));
|
||||
predicate = predicate.AndIF(parm.DeliveryStatus != null, s => s.DeliveryStatus == parm.DeliveryStatus);
|
||||
predicate = predicate.AndIF(parm.ReceiptStatus != null, s => s.ReceiptStatus == parm.ReceiptStatus);
|
||||
predicate = predicate.AndIF(parm.OrderStatus != null, s => s.OrderStatus == parm.OrderStatus);
|
||||
var query = _OrderRepository
|
||||
.Queryable()
|
||||
.Where(predicate.ToExpression())
|
||||
.OrderBy(s => s.Create_time,OrderByType.Desc)
|
||||
.Select(s => new OrderVo
|
||||
{
|
||||
OrderId = s.OrderId,
|
||||
OrderGuid = s.OrderGuid,
|
||||
GoodsGuid = s.GoodsGuid,
|
||||
PaymentGuid = s.PaymentGuid,
|
||||
CustomerGuid = s.CustomerGuid,
|
||||
ShopGuid = s.ShopGuid,
|
||||
OrderNumber = s.OrderNumber,
|
||||
GoodsTotalAmoun = s.GoodsTotalAmoun,
|
||||
OrderAmount = s.OrderAmount,
|
||||
CouponGuid = s.CouponGuid,
|
||||
CouponMoney = s.CouponMoney,
|
||||
PointsMoney = s.PointsMoney,
|
||||
PointsNum = s.PointsNum,
|
||||
PayPrice = s.PayPrice,
|
||||
UpdatePrice = s.UpdatePrice,
|
||||
OrderRemark = s.OrderRemark,
|
||||
PayType = s.PayType,
|
||||
PayStatus = s.PayStatus,
|
||||
PayTime = s.PayTime,
|
||||
DeliveryType = s.DeliveryType,
|
||||
ExpressPrice = s.ExpressPrice,
|
||||
LogisticsCompanyGuid = s.LogisticsCompanyGuid,
|
||||
LogisticsCompany = s.LogisticsCompany,
|
||||
LogisticsTrackingNumber = s.LogisticsTrackingNumber,
|
||||
DeliveryStatus = s.DeliveryStatus,
|
||||
DeliveryTime = s.DeliveryTime,
|
||||
ReceiptStatus = s.ReceiptStatus,
|
||||
ReceiptTime = s.ReceiptTime,
|
||||
OrderStatus = s.OrderStatus,
|
||||
PointsBonus = s.PointsBonus,
|
||||
IsSettled = s.IsSettled,
|
||||
TransactionId = s.TransactionId,
|
||||
IsComment = s.IsComment,
|
||||
OrderSource = s.OrderSource,
|
||||
});
|
||||
|
||||
|
||||
return await query.ToPageAsync(parm);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 添加或修改订单
|
||||
/// </summary>
|
||||
public async Task<string> AddOrUpdateOrder(Order model)
|
||||
{
|
||||
if (model.OrderId != 0)
|
||||
{
|
||||
var response = await _OrderRepository.UpdateAsync(model);
|
||||
return "修改成功!";
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
var response = await _OrderRepository.InsertReturnSnowflakeIdAsync(model);
|
||||
return "添加成功!";
|
||||
}
|
||||
}
|
||||
|
||||
#region Excel处理
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Excel数据导出处理
|
||||
/// </summary>
|
||||
public async Task<List<OrderVo>> HandleExportData(List<OrderVo> data)
|
||||
{
|
||||
return data;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using ARW.Model;
|
||||
using ARW.Model.Dto.Business.OrderManage.Orders;
|
||||
using ARW.Model.Models.Business.OrderManage.Orders;
|
||||
using ARW.Model.Vo.Business.OrderManage.Orders;
|
||||
|
||||
namespace ARW.Service.Business.IBusinessService.OrderManage.Orders
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单接口类
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
public interface IOrderService : IBaseService<Order>
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取订单分页列表
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
Task<PagedInfo<OrderVo>> GetOrderList(OrderQueryDto parm);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 添加或修改订单
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
Task<string> AddOrUpdateOrder(Order parm);
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Excel导出
|
||||
/// </summary>
|
||||
Task<List<OrderVo>> HandleExportData(List<OrderVo> data);
|
||||
|
||||
|
||||
}
|
||||
}
|
@ -0,0 +1,132 @@
|
||||
using Infrastructure;
|
||||
using Infrastructure.Attribute;
|
||||
using Infrastructure.Enums;
|
||||
using Infrastructure.Model;
|
||||
using Mapster;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using ARW.Admin.WebApi.Extensions;
|
||||
using ARW.Admin.WebApi.Filters;
|
||||
using ARW.Common;
|
||||
using ARW.Model.Dto.Business.OrderManage.Orders;
|
||||
using ARW.Service.Business.IBusinessService.OrderManage.Orders;
|
||||
using ARW.Admin.WebApi.Controllers;
|
||||
using ARW.Model.Models.Business.OrderManage.Orders;
|
||||
using ARW.Model.Vo.Business.OrderManage.Orders;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using ARW.Admin.WebApi.Framework;
|
||||
|
||||
|
||||
namespace ARW.WebApi.Controllers.Business.OrderManage.Orders
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单控制器
|
||||
///
|
||||
/// @author lwh
|
||||
/// @date 2023-08-29
|
||||
/// </summary>
|
||||
[Verify]
|
||||
[Route("business/[controller]")]
|
||||
public class OrderController : BaseController
|
||||
{
|
||||
private readonly IOrderService _OrderService;
|
||||
|
||||
/// <summary>
|
||||
/// 依赖注入
|
||||
/// </summary>
|
||||
/// <param name="OrderService">订单服务</param>
|
||||
public OrderController(IOrderService OrderService)
|
||||
{
|
||||
_OrderService = OrderService;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取订单列表
|
||||
/// </summary>
|
||||
/// <param name="parm">查询参数</param>
|
||||
/// <returns></returns>
|
||||
[HttpGet("getOrderList")]
|
||||
[ActionPermissionFilter(Permission = "business:order:list")]
|
||||
public async Task<IActionResult> GetOrderList([FromQuery] OrderQueryDto parm)
|
||||
{
|
||||
var res = await _OrderService.GetOrderList(parm);
|
||||
return SUCCESS(res);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 添加或修改订单
|
||||
/// </summary>
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost("addOrUpdateOrder")]
|
||||
[ActionPermissionFilter(Permission = "business:order:addOrUpdate")]
|
||||
[Log(Title = "添加或修改订单", BusinessType = BusinessType.ADDORUPDATE)]
|
||||
public async Task<IActionResult> AddOrUpdateOrder([FromBody] OrderDto parm)
|
||||
{
|
||||
if (parm == null) { throw new CustomException("请求参数错误"); }
|
||||
|
||||
var modal = new Order();
|
||||
if (parm.OrderId != 0) modal = parm.Adapt<Order>().ToUpdate(HttpContext);
|
||||
else modal = parm.Adapt<Order>().ToCreate(HttpContext);
|
||||
|
||||
var res = await _OrderService.AddOrUpdateOrder(modal);
|
||||
return SUCCESS(res);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 删除订单
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpDelete("{ids}")]
|
||||
[ActionPermissionFilter(Permission = "business:order:delete")]
|
||||
[Log(Title = "订单删除", BusinessType = BusinessType.DELETE)]
|
||||
public IActionResult Delete(string ids)
|
||||
{
|
||||
long[] idsArr = Tools.SpitLongArrary(ids);
|
||||
if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); }
|
||||
var response = _OrderService.Delete(idsArr);
|
||||
return SUCCESS("删除成功!");
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 导出订单
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[Log(Title = "订单导出", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)]
|
||||
[HttpGet("exportOrder")]
|
||||
[ActionPermissionFilter(Permission = "business:order:export")]
|
||||
public async Task<IActionResult> ExportExcel([FromQuery] OrderQueryDto parm)
|
||||
{
|
||||
parm.PageSize = 10000;
|
||||
var list = await _OrderService.GetOrderList(parm);
|
||||
var data = list.Result;
|
||||
|
||||
// 选中数据
|
||||
if (!string.IsNullOrEmpty(parm.ids))
|
||||
{
|
||||
int[] idsArr = Tools.SpitIntArrary(parm.ids);
|
||||
var selectDataList = new List<OrderVo>();
|
||||
foreach (var item in idsArr)
|
||||
{
|
||||
var select_data = data.Where(s => s.OrderId == item).First();
|
||||
selectDataList.Add(select_data);
|
||||
}
|
||||
data = selectDataList;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 导出数据处理
|
||||
var handleData = await _OrderService.HandleExportData(data);
|
||||
|
||||
string sFileName = ExportExcel(handleData, "Order", "订单列表");
|
||||
return SUCCESS(new { path = "/export/" + sFileName, fileName = sFileName });
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user