/// <summary> /// 验证基础数据 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForProductQueryRequest(ProductQueryRequest request) { var result = new DataValidResult { Status = false }; if (request.Body.Type > 2 || request.Body.Type < 0) { result.Code = "111002"; result.Message = "获取产品异常,分页的形式超出范围"; return(result); } if (request.Body.Type == 2 && request.Body.ProductId <= 0) { result.Code = "111003"; result.Message = "获取产品异常,产品id不合法"; return(result); } if (request.Body.Type == 1 && request.Body.PageSize <= 0) { result.Code = "111004"; result.Message = "获取产品异常,每页记录数不能小于1"; return(result); } if (request.Body.Type == 1 && request.Body.CurrentPage <= 0) { result.Code = "111004"; result.Message = "获取产品异常,当前页数不能小于1"; return(result); } result.Status = true; return(result); }
/// <summary> /// 检查订单详情的状态,是否还能取消。--小径平台 /// </summary> /// <param name="orderDetailId">订单详情id</param> /// <returns></returns> public Tbl_OrderDetail XJ_CheckOrderDetailIsCanncel(int otaOrderDetailId) { var result = new DataValidResult <Tbl_OrderDetail>() { Status = false }; var orderDetail = _orderDetailRepository.FirstOrDefault(a => a.OtaOrderDetailId == otaOrderDetailId); if (orderDetail == null) { //130001=订单不存在 return(null); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Canncel) { //订单已取消 return(null); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Consume) { //订单已消费 return(null); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.NoPay) { //订单未支付 return(null); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Refund) { //订单已退款 return(null); } return(orderDetail); }
/// <summary> /// 取消订单基础数据验证 /// </summary> /// <param name="request"></param> /// <param name="otaBusinessId"></param> /// <returns></returns> public DataValidResult ValidDataForOrderCancelRequest(OrderCancelRequest request, int otaBusinessId) { var result = new DataValidResult { Status = false }; if (string.IsNullOrEmpty(request.Body.OrderInfo.OrderId)) { result.Code = "114001"; result.Message = "订单取消失败,订单id不能为空"; return(result); } if (request.Body.OrderInfo.OrderQuantity <= 0) { result.Code = "114003"; result.Message = "订单取消失败,订单总票数不能小于1"; return(result); } var tbl_Order = Get(request.Body.OrderInfo.OrderId); if (tbl_Order == null) { result.Code = "114004"; result.Message = "订单取消失败,订单不存在"; return(result); } if (tbl_Order.OTABusinessId != otaBusinessId) { result.Code = "114005"; result.Message = "订单取消失败,订单存在,但不属于该调用者"; return(result); } result.Status = true; return(result); }
/// <summary> /// 检查单个订单详情的状态,是否还能取消。 /// </summary> /// <param name="orderDetailId">订单详情id</param> /// <returns></returns> public DataValidResult <Tbl_OrderDetail> CheckOrderDetailIsCanncel(int orderDetailId) { var result = new DataValidResult <Tbl_OrderDetail>() { Status = false }; var orderDetail = _orderDetailRepository.FirstOrDefault(a => a.OrderDetailId == orderDetailId); if (orderDetail == null) { //130001=订单不存在 result.Code = "130001"; result.Message = "取消订单异常,订单不存在"; return(result); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Canncel) { //订单已取消 result.Code = "130002"; result.Message = "取消订单异常,订单已取消"; return(result); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Consume) { //订单已消费 result.Code = "130003"; result.Message = "取消订单异常,订单已消费"; return(result); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.NoPay) { //订单未支付 result.Code = "130004"; result.Message = "取消订单异常,订单未支付"; return(result); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Refund) { //订单已退款 result.Code = "130005"; result.Message = "取消订单异常,订单已退款"; return(result); } if ((orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Success) || (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Activate)) { if (orderDetail.CanRefund && orderDetail.CanRefundTime < DateTime.Now.Date) { //"门票已过了最后取消时间"; result.Code = "130006"; result.Message = "取消订单异常,未消费但已过期"; return(result); } result.Status = true; result.Item = orderDetail; return(result); } result.Code = "130007"; result.Message = "取消订单异常,取消失败!"; return(result); }
/// <summary> /// (重)发送入园凭证短信 基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForMessageSendRequest(MessageSendRequest request) { var orderInfo = request.Body.OrderInfo; var result = new DataValidResult { Status = false }; if (string.IsNullOrEmpty(orderInfo.OrderId)) { result.Code = "117001"; result.Message = "(重)发送入园凭证短信异常,订单id不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.phoneNumber)) { result.Code = "117002"; result.Message = "(重)发送入园凭证短信异常,重发手机号码不能为空"; return(result); } if (!RegexValidation.IsCellPhone(orderInfo.phoneNumber)) { result.Code = "117003"; result.Message = "(重)发送入园凭证短信异常,重发手机号码异常"; return(result); } result.Status = true; return(result); }
/// <summary> /// 检查订单详情的状态,是否还能取消。 /// </summary> /// <param name="orderDetailId">订单详情id</param> /// <returns></returns> public DataValidResult <Tbl_OrderDetail> CheckOrderDetailIsCanncel(string orderNo) { var result = new DataValidResult <Tbl_OrderDetail>() { Status = false }; var list = GetList(orderNo); var canncel = list.FirstOrDefault(a => (a.OrderStatus == (int)OrderDetailsDataStatus.Canncel || a.OrderStatus == (int)OrderDetailsDataStatus.Refund)); if (canncel != null) { result.Code = "000000"; result.Message = "订单已取消,重复取消"; return(result); } var consume = list.FirstOrDefault(a => a.OrderStatus == (int)OrderDetailsDataStatus.Consume); if (consume != null) { result.Code = "114009"; result.Message = "订单取消失败,订单已消费,订单不能取消"; return(result); } var noPay = list.FirstOrDefault(a => a.OrderStatus == (int)OrderDetailsDataStatus.IsTaken); if (noPay != null) { result.Code = "114013"; result.Message = "订单取消失败,订单已取票,不能取消"; return(result); } var canRefund = list.FirstOrDefault(a => a.CanRefund == false); if (canRefund != null) { result.Code = "114010"; result.Message = "订单取消失败,订单中包含不支持取消的产品,订单不能取消"; return(result); } var canRefundTime = list.FirstOrDefault(a => a.CanRefundTime < DateTime.Now.Date); if (canRefundTime != null) { result.Code = "114011"; result.Message = "订单取消失败,未消费但已过期,订单不能取消"; return(result); } var count = list.Count(a => (a.OrderStatus == (int)OrderDetailsDataStatus.Success) || (a.OrderStatus == (int)OrderDetailsDataStatus.Activate)); if (count == list.Count) { result.Status = true; result.List = list; return(result); } result.Code = "114012"; result.Message = "订单取消失败,系统出错"; return(result); }
/// <summary> /// 验证单个订单数据 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderSingleCreateRequest( OrderSingleCreateRequest request, Tbl_OTABusiness business, Tbl_Ticket tbl_Ticket, OrderSingleCreateResponse response) { var result = new DataValidResult { Status = false }; var ticket = request.Body.OrderInfo.Ticket; if (tbl_Ticket == null) { result.Code = "113019"; result.Message = "创建订单失败,选择的游玩日期超出选购产品的有效期或者选购的产品无效"; return(result); } var existence = _otaTicketRelationService.CheckIsTicketId(business.Id, tbl_Ticket.TicketId); if (!existence) { result.Code = "113019"; result.Message = "创建订单失败,选择的游玩日期超出选购产品的有效期或者选购的产品无效"; return(result); } if (tbl_Ticket.SalePrice != ticket.SellPrice) { result.Code = "113020"; result.Message = "创建订单失败,价格不一致"; return(result); } //日销售限额为空或者0 为不限制 if (tbl_Ticket.StockCount.HasValue && tbl_Ticket.StockCount.Value > 0) { if (!tbl_Ticket.LastUpdateTime.HasValue || tbl_Ticket.LastUpdateTime.Value.Date != DateTime.Now.Date) { tbl_Ticket.SellCount = 0; } var sellCount = tbl_Ticket.SellCount.HasValue ? tbl_Ticket.SellCount.Value : 0;//库存 response.Body.Inventory = tbl_Ticket.StockCount.Value - sellCount; if (sellCount + ticket.Quantity > tbl_Ticket.StockCount.Value) { //开启了库存限制,购买数量超过了库存 result.Code = "113026"; result.Message = "创建订单失败,库存不足"; return(result); } } else { response.Body.Inventory = 50000; } result.Status = true; return(result); }
/// <summary> /// 查询订单基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderQueryRequest(OrderQueryRequest request) { var result = new DataValidResult { Status = false }; if (string.IsNullOrEmpty(request.Body.OrderId)) { result.Code = "115001"; result.Message = "查询订单异常,订单id不能为空"; return(result); } result.Status = true; return(result); }
/// <summary> /// 验证订单数据 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderCreateRequest(OrderCreateRequest request, List <Tbl_Ticket> tbl_Tickets) { var result = new DataValidResult { Status = false }; if (tbl_Tickets.Count <= 0) { result.Code = "113019"; result.Message = "创建订单异常,选择的游玩日期超出选购产品的有效期或者选购的产品无效"; return(result); } if (tbl_Tickets.Count != request.Body.OrderInfo.TicketList.Count) { result.Code = "113025"; result.Message = "创建订单异常,选购的产品中包含已超出产品有效期或无效的产品"; return(result); } foreach (var row in request.Body.OrderInfo.TicketList) { var ticket = tbl_Tickets.FirstOrDefault(a => a.TicketId == row.ProductId && a.SalePrice == row.SellPrice); if (ticket == null) { result.Code = "113020"; result.Message = "创建订单异常,选购产品的价格与原始产品价格不一致"; return(result); } var sCount = ticket == null ? 0 : ticket.StockCount; var sellCount = ticket == null ? 0 : ticket.SellCount; if (sCount > 0 && (sellCount + row.Quantity) > sCount) { //开启了库存限制,购买数量超过了库存 result.Code = "113026"; result.Message = "创建订单异常,选购产品的数量超过了购买限制"; return(result); } } result.Status = true; return(result); }
/// <summary> /// 修改订单基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderUpdateRequest(OrderUpdateRequest request) { var orderInfo = request.Body.OrderInfo; var result = new DataValidResult { Status = false }; if (orderInfo.ContactPerson == null) { result.Code = "116001"; result.Message = "修改订单异常,取票人信息为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Name)) { result.Code = "116002"; result.Message = "修改订单异常,取票人姓名不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Mobile)) { result.Code = "116003"; result.Message = "修改订单异常,取票人手机号码不能为空"; return(result); } if (!RegexValidation.IsCellPhone(orderInfo.ContactPerson.Mobile)) { result.Code = "116004"; result.Message = "修改订单异常,取票人手机号码异常"; return(result); } if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardType)) { switch (orderInfo.ContactPerson.CardType.ToUpper()) { case "ID_CARD": if (string.IsNullOrEmpty(orderInfo.ContactPerson.CardNo)) { result.Code = "116005"; result.Message = "修改订单异常,游客身份证信息不能为空"; return(result); } if (!RegexValidation.IsIdCard(orderInfo.ContactPerson.CardNo)) { result.Code = "116006"; result.Message = "修改订单异常,游客身份证信息输入有误"; return(result); } break; case "HUZHAO": case "TAIBAO": case "GANGAO": case "OTHER": break; default: result.Code = "116007"; result.Message = "修改订单异常,取票人证件类型异常"; return(result); } } else { result.Code = "116008"; result.Message = "修改订单异常,取票人证件类型不能为空"; return(result); } if (!orderInfo.VisitDate.IsDataTime()) { result.Code = "116009"; result.Message = "修改订单异常,游玩日期格式不合法"; return(result); } if (orderInfo.VisitDate.ToDataTime() < DateTime.Now.Date) { result.Code = "116010"; result.Message = "修改订单异常,游玩日期不能小于今天"; return(result); } result.Status = true; return(result); }
/// <summary> /// 创建单个订单基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderSingleCreateRequest(OrderSingleCreateRequest request, OrderSingleCreateResponse response) { var orderInfo = request.Body.OrderInfo; var result = new DataValidResult { Status = false }; if (orderInfo.ContactPerson == null) { result.Code = "113001"; result.Message = "创建订单异常,取票人信息为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Name)) { result.Code = "113002"; result.Message = "创建订单异常,取票人姓名不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Mobile)) { result.Code = "113003"; result.Message = "创建订单异常,取票人手机号码不能为空"; return(result); } if (!RegexValidation.IsCellPhone(orderInfo.ContactPerson.Mobile)) { result.Code = "113004"; result.Message = "创建订单异常,取票人手机号码异常"; return(result); } if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardType)) { switch (orderInfo.ContactPerson.CardType.ToUpper()) { case "ID_CARD": if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardNo)) { if (!RegexValidation.IsIdCard(orderInfo.ContactPerson.CardNo)) { result.Code = "113005"; result.Message = "创建订单异常,游客身份证信息输入有误"; return(result); } } break; case "HUZHAO": case "TAIBAO": case "GANGAO": case "OTHER": break; } } if (string.IsNullOrEmpty(orderInfo.OrderOtaId)) { result.Code = "113006"; result.Message = "创建订单异常,OTA订单id不能为空"; return(result); } if (orderInfo.OrderQuantity <= 0) { result.Code = "113008"; result.Message = "创建订单异常,订票总数量不能小于1"; return(result); } if (!orderInfo.VisitDate.IsDataTime()) { result.Code = "113009"; result.Message = "创建订单异常,游玩日期格式不合法"; return(result); } if (orderInfo.VisitDate.ToDataTime() < DateTime.Now.Date) { result.Code = "113009"; result.Message = "创建订单异常,游玩日期不合法"; return(result); } if (orderInfo.Ticket == null) { result.Code = "113015"; result.Message = "创建订单异常,购买产品的数据不合法"; return(result); } if (orderInfo.Ticket.Quantity != orderInfo.OrderQuantity) { result.Code = "113011"; result.Message = "创建订单异常,购买产品的总数量和订票总数量不符"; return(result); } if (orderInfo.Ticket.Quantity <= 0) { result.Code = "113013"; result.Message = "创建订单异常,购买产品的游客人数不能小于1"; return(result); } if (orderInfo.Ticket.ProductId <= 0) { result.Code = "113014"; result.Message = "创建订单异常,购买产品的id不合法"; return(result); } //验证OTA订单id是否已存在 var tbl_Order = GetOrderBy(request.Body.OrderInfo.OrderOtaId); if (tbl_Order != null) { var tbl_OrderDetail = _orderDetailService.Get(tbl_Order.OrderNo); result.Code = "000000"; result.Message = "成功,重复提交订单"; response.Body.OrderId = tbl_Order.OrderNo; response.Body.OtaOrderId = tbl_Order.OTAOrderNo; response.Body.CertificateNo = tbl_OrderDetail.CertificateNO; response.Body.Code = tbl_OrderDetail.QRcode; response.Body.OrderStatus = "OREDER_SUCCESS"; return(result); } result.Status = true; return(result); }
/// <summary> /// 下单验证基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForVerifyOrderRequest(OrderSingleCreateRequest request) { var orderInfo = request.Body.OrderInfo; var result = new DataValidResult { Status = false }; if (orderInfo.ContactPerson == null) { result.Code = "113001"; result.Message = "创建订单异常,取票人信息为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Name)) { result.Code = "113002"; result.Message = "创建订单异常,取票人姓名不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Mobile)) { result.Code = "113003"; result.Message = "创建订单异常,取票人手机号码不能为空"; return(result); } if (!RegexValidation.IsCellPhone(orderInfo.ContactPerson.Mobile)) { result.Code = "113004"; result.Message = "创建订单异常,取票人手机号码异常"; return(result); } if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardType)) { switch (orderInfo.ContactPerson.CardType.ToUpper()) { case "ID_CARD": if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardNo)) { if (!RegexValidation.IsIdCard(orderInfo.ContactPerson.CardNo)) { result.Code = "113005"; result.Message = "创建订单异常,游客身份证信息输入有误"; return(result); } } break; case "HUZHAO": case "TAIBAO": case "GANGAO": case "OTHER": break; } } if (orderInfo.OrderQuantity <= 0) { result.Code = "113008"; result.Message = "创建订单异常,订票总数量不能小于1"; return(result); } if (!orderInfo.VisitDate.IsDataTime()) { result.Code = "113009"; result.Message = "创建订单异常,游玩日期格式不合法"; return(result); } if (orderInfo.VisitDate.ToDataTime() < DateTime.Now.Date) { result.Code = "113009"; result.Message = "创建订单异常,游玩日期不合法"; return(result); } if (orderInfo.Ticket == null) { result.Code = "113015"; result.Message = "创建订单异常,购买产品的数据不合法"; return(result); } if (orderInfo.Ticket.Quantity <= 0) { result.Code = "113013"; result.Message = "创建订单异常,购买产品的游客人数不能小于1"; return(result); } if (orderInfo.Ticket.ProductId <= 0) { result.Code = "113014"; result.Message = "创建订单异常,购买产品的id不合法"; return(result); } result.Status = true; return(result); }
/// <summary> /// 创建订单基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderCreateRequest(OrderCreateRequest request) { var orderInfo = request.Body.OrderInfo; var result = new DataValidResult { Status = false }; if (orderInfo.ContactPerson == null) { result.Code = "113001"; result.Message = "创建订单异常,取票人信息为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Name)) { result.Code = "113002"; result.Message = "创建订单异常,取票人姓名不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Mobile)) { result.Code = "113003"; result.Message = "创建订单异常,取票人手机号码不能为空"; return(result); } if (!RegexValidation.IsCellPhone(orderInfo.ContactPerson.Mobile)) { result.Code = "113004"; result.Message = "创建订单异常,取票人手机号码异常"; return(result); } if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardType)) { switch (orderInfo.ContactPerson.CardType.ToUpper()) { case "ID_CARD": if (string.IsNullOrEmpty(orderInfo.ContactPerson.CardNo)) { result.Code = "113023"; result.Message = "创建订单异常,游客身份证信息不能为空"; return(result); } if (!RegexValidation.IsIdCard(orderInfo.ContactPerson.CardNo)) { result.Code = "113005"; result.Message = "创建订单异常,游客身份证信息输入有误"; return(result); } break; case "HUZHAO": case "TAIBAO": case "GANGAO": case "OTHER": break; default: result.Code = "113022"; result.Message = "创建订单异常,取票人证件类型异常"; return(result); } } else { result.Code = "113024"; result.Message = "创建订单异常,取票人证件类型不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.OrderOtaId)) { result.Code = "113006"; result.Message = "创建订单异常,OTA订单id不能为空"; return(result); } if (orderInfo.OrderPrice <= 0) { result.Code = "113007"; result.Message = "创建订单异常,订单总金额不能小于0"; return(result); } if (orderInfo.OrderQuantity <= 0) { result.Code = "113008"; result.Message = "创建订单异常,订票总数量不能小于1"; return(result); } if (!orderInfo.VisitDate.IsDataTime()) { result.Code = "113009"; result.Message = "创建订单异常,游玩日期格式不合法"; return(result); } if (orderInfo.TicketList == null || orderInfo.TicketList.Count <= 0) { result.Code = "113010"; result.Message = "创建订单异常,购买产品的数量不能小于1"; return(result); } if (orderInfo.TicketList.Sum(a => a.Quantity) != orderInfo.OrderQuantity) { result.Code = "113011"; result.Message = "创建订单异常,购买产品的总数量和订票总数量不符"; return(result); } if (orderInfo.TicketList.Sum(a => a.SellPrice * a.Quantity) != orderInfo.OrderPrice) { result.Code = "113012"; result.Message = "创建订单异常,购买产品的总金额和订票总金额不符"; return(result); } foreach (var row in orderInfo.TicketList) { if (row.Quantity <= 0) { result.Code = "113013"; result.Message = "创建订单异常,购买产品的游客人数不能小于1"; return(result); } if (row.ProductId <= 0) { result.Code = "113014"; result.Message = "创建订单异常,购买产品的id不合法"; return(result); } if (orderInfo.TicketList == null) { result.Code = "113015"; result.Message = "创建订单异常,购买产品的数据不合法"; return(result); } if (row.SellPrice <= 0) { result.Code = "113016"; result.Message = "创建订单异常,购买产品的金额不合法"; return(result); } } if (orderInfo.OrderPayStatus > 1 || orderInfo.OrderPayStatus < 0) { result.Code = "113017"; result.Message = "创建订单异常,是否收款超出范围"; return(result); } //验证OTA订单id是否已存在 var otaOrder = GetOrderBy(request.Body.OrderInfo.OrderOtaId); if (otaOrder != null) { result.Code = "113018"; result.Message = "创建订单异常,OTA订单id已存在"; return(result); } result.Status = true; return(result); }
/// <summary> /// 检查订单详情的状态,是否还能取消。 /// </summary> /// <param name="orderDetailId">订单编号</param> /// <returns></returns> public DataValidResult <Tbl_OrderDetail> CheckOrderDetailIsCanncel(OrderCancelRequest orderCancelRequest, string orderNo) { var result = new DataValidResult <Tbl_OrderDetail>() { Status = false, List = new List <Tbl_OrderDetail>() }; var list = GetList(orderNo); var items = orderCancelRequest.Body.OrderInfo.Items; if (items == null || items.Count <= 0) { result.Code = "114012"; result.Message = "订单取消失败,系统出错"; return(result); } foreach (var row in items) { var orderDetail = list.FirstOrDefault(a => a.OtaOrderDetailId == row.ItemId); if (orderDetail == null) { result.Code = "114004"; result.Message = "订单取消失败,订单不存在"; return(result); } if (orderDetail.Quantity != row.Quantity) { result.Code = "114014"; result.Message = "订单取消失败,订单取消数量不正确"; return(result); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Canncel || orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Refund) { continue; } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Consume) { result.Code = "114009"; result.Message = "订单取消失败,订单已消费,订单不能取消"; return(result); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.IsTaken) { result.Code = "114013"; result.Message = "订单取消失败,订单已取票,不能取消"; return(result); } if (orderDetail.CanRefund == false) { result.Code = "114010"; result.Message = "订单取消失败,订单不支持取消"; return(result); } if (orderDetail.CanRefundTime < DateTime.Now.Date) { result.Code = "114011"; result.Message = "订单取消失败,订单已过期,不可退"; return(result); } if (orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Success || orderDetail.OrderStatus == (int)OrderDetailsDataStatus.Activate) { result.List.Add(orderDetail); continue; } result.Code = "114012"; result.Message = "订单取消失败,系统出错"; return(result); } result.Status = true; return(result); }
/// <summary> /// 创建订单基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderCreateRequest(OrderCreateRequest request, OrderCreateResponse response) { var orderInfo = request.Body.OrderInfo; var result = new DataValidResult { Status = false }; if (orderInfo.ContactPerson == null) { result.Code = "113001"; result.Message = "创建订单异常,取票人信息为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Name)) { result.Code = "113002"; result.Message = "创建订单异常,取票人姓名不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Mobile)) { result.Code = "113003"; result.Message = "创建订单异常,取票人手机号码不能为空"; return(result); } if (!RegexValidation.IsCellPhone(orderInfo.ContactPerson.Mobile)) { result.Code = "113004"; result.Message = "创建订单异常,取票人手机号码异常"; return(result); } if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardType)) { if (orderInfo.ContactPerson.CardType.ToUpper() == "ID_CARD" && !string.IsNullOrEmpty(orderInfo.ContactPerson.CardNo)) { if (!RegexValidation.IsIdCard(orderInfo.ContactPerson.CardNo)) { result.Code = "113005"; result.Message = "创建订单异常,游客身份证信息输入有误"; return(result); } } } if (string.IsNullOrEmpty(orderInfo.OrderOtaId)) { result.Code = "113006"; result.Message = "创建订单异常,OTA订单id不能为空"; return(result); } if (orderInfo.OrderPrice <= 0) { result.Code = "113007"; result.Message = "创建订单异常,订单总金额不能小于0"; return(result); } if (orderInfo.OrderQuantity <= 0) { result.Code = "113008"; result.Message = "创建订单异常,订票总数量不能小于1"; return(result); } if (!orderInfo.VisitDate.IsDataTime()) { result.Code = "113009"; result.Message = "创建订单异常,游玩日期格式不合法"; return(result); } if (orderInfo.TicketList == null || orderInfo.TicketList.Count <= 0) { result.Code = "113010"; result.Message = "创建订单异常,购买产品的数量不能小于1"; return(result); } if (orderInfo.TicketList.Sum(a => a.Quantity) != orderInfo.OrderQuantity) { result.Code = "113011"; result.Message = "创建订单异常,购买产品的总数量和订票总数量不符"; return(result); } if (orderInfo.TicketList.Sum(a => a.SellPrice * a.Quantity) != orderInfo.OrderPrice) { result.Code = "113012"; result.Message = "创建订单异常,购买产品的总金额和订票总金额不符"; return(result); } foreach (var row in orderInfo.TicketList) { if (row.Quantity <= 0) { result.Code = "113013"; result.Message = "创建订单异常,购买产品的游客人数不能小于1"; return(result); } if (row.ProductId <= 0) { result.Code = "113014"; result.Message = "创建订单异常,购买产品的id不合法"; return(result); } if (orderInfo.TicketList == null) { result.Code = "113015"; result.Message = "创建订单异常,购买产品的数据不合法"; return(result); } if (row.SellPrice <= 0) { result.Code = "113016"; result.Message = "创建订单异常,购买产品的金额不合法"; return(result); } } if (orderInfo.OrderPayStatus > 1 || orderInfo.OrderPayStatus < 0) { result.Code = "113017"; result.Message = "创建订单异常,是否收款超出范围"; return(result); } //验证OTA订单id是否已存在 var tbl_Order = GetOrderBy(request.Body.OrderInfo.OrderOtaId); if (tbl_Order != null) { var tbl_OrderDetails = _orderDetailService.GetList(tbl_Order.OrderNo); result.Code = "000000"; result.Message = "成功,重复提交订单"; response.Body = new OrderCreateInfo { OtaOrderId = tbl_Order.OTAOrderNo, OrderId = tbl_Order.OrderNo, OrderStatus = "OREDER_SUCCESS", Item = new List <OrderCreateItem>() }; foreach (var row in tbl_OrderDetails) { response.Body.Item.Add(new OrderCreateItem { OtaOrderDetailId = row.OtaOrderDetailId, ProductId = row.TicketId.ToString(), useDate = row.ValidityDateStart.ToString("yyyy-MM-dd"), CertificateNo = row.CertificateNO, quantity = 500000 }); } return(result); } result.Status = true; return(result); }
/// <summary> /// 验证订单基础数据验证 /// </summary> /// <param name="request"></param> /// <returns></returns> public DataValidResult ValidDataForOrderVerifyRequest(OrderCreateRequest request) { var orderInfo = request.Body.OrderInfo; var result = new DataValidResult { Status = false }; if (orderInfo.ContactPerson == null) { result.Code = "113001"; result.Message = "创建订单异常,取票人信息为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Name)) { result.Code = "113002"; result.Message = "创建订单异常,取票人姓名不能为空"; return(result); } if (string.IsNullOrEmpty(orderInfo.ContactPerson.Mobile)) { result.Code = "113003"; result.Message = "创建订单异常,取票人手机号码不能为空"; return(result); } if (!RegexValidation.IsCellPhone(orderInfo.ContactPerson.Mobile)) { result.Code = "113004"; result.Message = "创建订单异常,取票人手机号码异常"; return(result); } if (!string.IsNullOrEmpty(orderInfo.ContactPerson.CardType)) { if (orderInfo.ContactPerson.CardType.ToUpper() == "ID_CARD" && !string.IsNullOrEmpty(orderInfo.ContactPerson.CardNo)) { if (!RegexValidation.IsIdCard(orderInfo.ContactPerson.CardNo)) { result.Code = "113005"; result.Message = "创建订单异常,游客身份证信息输入有误"; return(result); } } } if (orderInfo.OrderPrice <= 0) { result.Code = "113007"; result.Message = "创建订单异常,订单总金额不能小于0"; return(result); } if (orderInfo.OrderQuantity <= 0) { result.Code = "113008"; result.Message = "创建订单异常,订票总数量不能小于1"; return(result); } if (!orderInfo.VisitDate.IsDataTime()) { result.Code = "113009"; result.Message = "创建订单异常,游玩日期格式不合法"; return(result); } if (orderInfo.TicketList == null || orderInfo.TicketList.Count <= 0) { result.Code = "113010"; result.Message = "创建订单异常,购买产品的数量不能小于1"; return(result); } if (orderInfo.TicketList.Sum(a => a.Quantity) != orderInfo.OrderQuantity) { result.Code = "113011"; result.Message = "创建订单异常,购买产品的总数量和订票总数量不符"; return(result); } if (orderInfo.TicketList.Sum(a => a.SellPrice * a.Quantity) != orderInfo.OrderPrice) { result.Code = "113012"; result.Message = "创建订单异常,购买产品的总金额和订票总金额不符"; return(result); } foreach (var row in orderInfo.TicketList) { if (row.Quantity <= 0) { result.Code = "113013"; result.Message = "创建订单异常,购买产品的游客人数不能小于1"; return(result); } if (row.ProductId <= 0) { result.Code = "113014"; result.Message = "创建订单异常,购买产品的id不合法"; return(result); } if (orderInfo.TicketList == null) { result.Code = "113015"; result.Message = "创建订单异常,购买产品的数据不合法"; return(result); } if (row.SellPrice <= 0) { result.Code = "113016"; result.Message = "创建订单异常,购买产品的金额不合法"; return(result); } } if (orderInfo.OrderPayStatus > 1 || orderInfo.OrderPayStatus < 0) { result.Code = "113017"; result.Message = "创建订单异常,是否收款超出范围"; return(result); } result.Status = true; return(result); }