/// <summary> /// 退款 /// </summary> /// <param name="request"></param> /// <returns></returns> public ResultWithCodeEntity Refund(OrderHotelRequest.RefundRequest request) { var result = new ResultWithCodeEntity(); try { //1.获取退款订单的信息(request.Id) var detail = orderHotelRepository.GetInfo(request.Id); //2.更新退款订单信息(包括状态) if (detail != null) { ////验证确认码(点击退款的时候发送一个短信验证码给客户,客户报出短信验证码才允许退款) //if (detail.confirmCode != request.confirmCode) //{ // result.Code = ResultCode.ParameterError; // return result; //} var res = (OrderHotelModel)Mapper.Map(request, detail, request.GetType(), detail.GetType()); res.states = 3; //暂定退票状态为3 var editResult = orderHotelRepository.Update(res); if (editResult) { return(Result.Success(ResultCode.Success)); } } return(Result.Error(ResultCode.ParameterError)); } catch (Exception ex) { return(Result.Error(ResultCode.ExceptionError)); } }
/// <summary> /// 出票 /// </summary> /// <param name="Id"></param> /// <returns></returns> public ResultWithCodeEntity OutOfPlane(string Id) { var result = new ResultWithCodeEntity(); try { //1.获取退款订单的信息(request.Id) var detail = orderPlaneRepository.GetInfoById(Id); if (detail != null) { detail.states = 2; var editResult = orderPlaneRepository.Update(detail); if (editResult) { result.Code = ResultCode.Success; } else { result.Code = ResultCode.DefaultError; } } else { result.Code = ResultCode.ParameterError; } } catch (Exception ex) { result.Code = ResultCode.ExceptionError; } return(result); }
/// <summary> /// 查询各个分表单的详情 /// </summary> /// <param name="orderId"></param> /// <param name="type"></param> /// <returns></returns> public ResultWithCodeEntity <object> GetInfo(string orderId, int type) { var result = new ResultWithCodeEntity <object> { Code = ResultCode.Success }; try { //机票 switch (type) { case 1: var plist = orderPlaneRepository.GetList(orderId); result.Data = plist; break; case 2: var hlist = orderHotelRepository.GetList(orderId); result.Data = hlist; break; case 4: var tlist = orderTicketRepository.GetList(orderId); result.Data = tlist; break; case 3: default: var model = orderMainRepository.GetDetail(orderId); result.Data = model; break; } return(result); } catch (Exception ex) { return(Result.Error <object>(ResultCode.ExceptionError, ex.Message)); } }