Ejemplo n.º 1
0
        public TResult Print(int orderDetailId, string printKey)
        {
            var result          = new TResult();
            var printConfigData = _printGateway.Get(printKey);

            if (printConfigData == null)
            {
                return(result.FailureResult("打印机配置不正确"));
            }
            var tbl_OrderDetail = _orderDetailService.Get(orderDetailId);

            if (tbl_OrderDetail == null)
            {
                return(result.FailureResult("订单不存在"));
            }
            if ((tbl_OrderDetail.OrderStatus == (int)OrderDetailsDataStatus.Activate || tbl_OrderDetail.OrderStatus == (int)OrderDetailsDataStatus.IsTaken) && tbl_OrderDetail.ValidityDateEnd.Date >= DateTime.Now.Date)
            {
                var tbl_Scenic  = _scenicService.Get(tbl_OrderDetail.ScenicId);
                var printResult = Print(printConfigData, tbl_Scenic, tbl_OrderDetail);
                if (!printResult.Success)
                {
                    return(result.FailureResult(printResult.Message));
                }
                return(result.SuccessResult());
            }
            else
            {
                return(result.FailureResult("该订单,不能进行打印"));
            }
        }
Ejemplo n.º 2
0
        /// <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);
        }