protected override EmptyResponseData ProcessRequest(DTO.Base.APIRequest <ExportSalesReturnExcelRD> pRequest) { var rd = new EmptyResponseData(); var para = pRequest.Parameters; var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; T_RefundOrderBLL T_RefundOrderBLL = new T_RefundOrderBLL(loggingSessionInfo); ExcelHelper ExcelHelper = new ExcelHelper(); //获取退款单数据 DataSet ds = T_RefundOrderBLL.GetWhereRefundOrder(para.Status, loggingSessionInfo.ClientID); //导出操作 string flieName = "D://导出退款单" + DateTime.Now.ToString("yyyymmddhhmmss") + ".xls"; ExcelHelper.RenderToExcel(ds.Tables[0], flieName); return(rd); }
/// <summary> /// 导出退款单 /// </summary> /// <param name="pContext"></param> private void ExportDownLoadRefund(HttpContext pContext) { try { var reqContent = pContext.Request["para"]; var commonRequest = JsonHelper.JsonDeserialize <ExportRefundRP>(reqContent); var T_RefundOrderBLL = new T_RefundOrderBLL(CurrentUserInfo); var ExcelHelper = new ExcelHelper(); #region 获取信息 //获取退款单数据 DataSet ds = T_RefundOrderBLL.GetWhereRefundOrder(commonRequest.RefundNo, commonRequest.paymentcenterId, commonRequest.payId, commonRequest.Status, CurrentUserInfo.ClientID); string filename = ""; #endregion if (filename == null || filename == "") { filename = "交易订单"; } string filesrc = @"~/Framework/Upload/" + filename + "/"; if (!System.IO.Directory.Exists(pContext.Server.MapPath(filesrc))) { System.IO.Directory.CreateDirectory(pContext.Server.MapPath(filesrc)); } //导出操作 string ExcelflieName = "退款订单" + DateTime.Now.ToString("yyyyMMddhhmmssfff"); string MapUrl = pContext.Server.MapPath(filesrc + ExcelflieName + ".xls"); ExcelHelper.RenderToExcel(ds.Tables[0], MapUrl); Utils.OutputExcel(pContext, MapUrl);//输出Excel文件 } catch (Exception ex) { throw (ex); } }
protected override GetRefundOrderDetailRD ProcessRequest(DTO.Base.APIRequest <GetRefundOrderDetailRP> pRequest) { var rd = new GetRefundOrderDetailRD(); var para = pRequest.Parameters; var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; var refundOrderBLL = new T_RefundOrderBLL(loggingSessionInfo); var inoutService = new InoutService(loggingSessionInfo); var tInoutDetailBll = new TInoutDetailBLL(loggingSessionInfo); var t_InoutBLL = new T_InoutBLL(loggingSessionInfo); var PaymentTtpeBLL = new T_Payment_TypeBLL(loggingSessionInfo); var refundEntity = refundOrderBLL.GetByID(para.RefundID); if (refundEntity != null) { rd.RefundID = refundEntity.RefundID; rd.RefundNo = refundEntity.RefundNo; rd.Status = refundEntity.Status; rd.OrderNo = refundEntity.OrderNo; rd.Contacts = refundEntity.Contacts; rd.Phone = refundEntity.Phone; rd.ConfirmAmount = refundEntity.ConfirmAmount; rd.ActualRefundAmount = refundEntity.ActualRefundAmount; rd.Points = refundEntity.Points == null ? 0 : refundEntity.Points; rd.PointsAmount = refundEntity.PointsAmount == null ? 0 : refundEntity.PointsAmount; rd.ReturnAmount = refundEntity.ReturnAmount == null ? 0 : refundEntity.RefundAmount; rd.Amount = refundEntity.Amount == null ? 0 : refundEntity.Amount; //支付方式名称 var OrderData = t_InoutBLL.GetByID(refundEntity.OrderID); string m_PayTypeName = ""; if (OrderData != null) { var PayTypeData = PaymentTtpeBLL.GetByID(OrderData.pay_id); if (PayTypeData != null) { m_PayTypeName = PayTypeData.Payment_Type_Name; } } rd.PayTypeName = m_PayTypeName; rd.PayOrderID = refundEntity.PayOrderID; rd.OrderID = refundEntity.OrderID; rd.ItemID = refundEntity.ItemID; if (!string.IsNullOrEmpty(refundEntity.ItemID)) //取消订单时,直接跳转到订单详情 { //根据订单ID获取订单明细[复用] DataRow drItem = inoutService.GetOrderDetailByOrderId(refundEntity.OrderID).Tables[0].Select(" item_id= '" + refundEntity.ItemID + "'").FirstOrDefault(); //获取商品的图片[复用] string itemImage = string.Empty; DataSet ds = tInoutDetailBll.GetOrderDetailImageList("'" + refundEntity.ItemID + "'"); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { itemImage = ds.Tables[0].Rows[0]["imageUrl"].ToString(); } //获取订单详细列表中的商品规格[复用] DataRow[] drSku = inoutService.GetInoutDetailGgByOrderId(refundEntity.OrderID).Tables[0].Select(" sku_id='" + refundEntity.SkuID + "'"); //订单的商品信息 var orderDetail = new OrderInfoDetail(); orderDetail.ItemName = drItem["item_name"].ToString(); orderDetail.SalesPrice = Convert.ToDecimal(drItem["enter_price"]); orderDetail.Qty = Convert.ToInt32(drItem["enter_qty"]); if (!string.IsNullOrEmpty(itemImage)) { orderDetail.ImageUrl = ImagePathUtil.GetImagePathStr(itemImage, "240"); } rd.OrderDetail = orderDetail; //订单的商品规格 if (drSku.Count() > 0) { SkuDetailInfo skuDetail = new SkuDetailInfo(); skuDetail.PropName1 = drSku[0]["prop_1_name"].ToString(); skuDetail.PropDetailName1 = drSku[0]["prop_1_detail_name"].ToString(); skuDetail.PropName2 = drSku[0]["prop_2_name"].ToString(); skuDetail.PropDetailName2 = drSku[0]["prop_2_detail_name"].ToString(); skuDetail.PropName3 = drSku[0]["prop_3_name"].ToString(); skuDetail.PropDetailName3 = drSku[0]["prop_3_detail_name"].ToString(); rd.OrderDetail.SkuDetail = skuDetail; } } } return(rd); }
protected override GetRefundOrderListRD ProcessRequest(DTO.Base.APIRequest <GetRefundOrderListRP> pRequest) { var rd = new GetRefundOrderListRD(); var para = pRequest.Parameters; var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; var refundOrderBLL = new T_RefundOrderBLL(loggingSessionInfo); //查询参数 List <IWhereCondition> complexCondition = new List <IWhereCondition> { }; complexCondition.Add(new EqualsCondition() { FieldName = "a.CustomerID", Value = loggingSessionInfo.ClientID }); if (!string.IsNullOrEmpty(para.RefundNo)) { complexCondition.Add(new LikeCondition() { FieldName = "a.RefundNo", Value = "%" + para.RefundNo + "%" }); } if (para.Status > 0) { complexCondition.Add(new EqualsCondition() { FieldName = "a.Status", Value = para.Status }); } if (!string.IsNullOrEmpty(para.paymentcenterId)) { complexCondition.Add(new EqualsCondition() { FieldName = "t.paymentcenterId", Value = para.paymentcenterId }); } if (!string.IsNullOrEmpty(para.payId)) { complexCondition.Add(new EqualsCondition() { FieldName = "t.pay_Id", Value = para.payId }); } //排序参数 List <OrderBy> lstOrder = new List <OrderBy> { }; lstOrder.Add(new OrderBy() { FieldName = "a.CreateTime", Direction = OrderByDirections.Desc }); var tempList = refundOrderBLL.PagedQuery(complexCondition.ToArray(), lstOrder.ToArray(), para.PageSize, para.PageIndex); rd.RefundOrderList = tempList.Entities.Select(t => new RefundOrderInfo() { OrderNo = t.OrderNo, RefundID = t.RefundID, RefundNo = t.RefundNo, VipName = t.VipName, ActualRefundAmount = t.ActualRefundAmount, Status = t.Status, CreateTime = t.CreateTime.Value.ToString("yyyy-MM-dd HH:mm"), paymentcenterId = t.PayOrderID, paymentName = t.PayTypeName }).ToArray(); rd.TotalCount = tempList.RowCount; rd.TotalPageCount = tempList.PageCount; return(rd); }
protected override EmptyResponseData ProcessRequest(DTO.Base.APIRequest <GetRefundOrderDetailRP> pRequest) { var rd = new EmptyResponseData(); var para = pRequest.Parameters; var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; var salesReturnBLL = new T_SalesReturnBLL(loggingSessionInfo); var historyBLL = new T_SalesReturnHistoryBLL(loggingSessionInfo); var refundOrderBLL = new T_RefundOrderBLL(loggingSessionInfo); var vipAmountBLL = new VipAmountBLL(loggingSessionInfo); //余额返现BLL实例化 var vipAmountDetailBLL = new VipAmountDetailBLL(loggingSessionInfo); //余额返现BLL实例化 var pTran = salesReturnBLL.GetTran();//事务 T_SalesReturnEntity salesReturnEntity = null; T_SalesReturnHistoryEntity historyEntity = null; T_RefundOrderEntity refundEntity = null; var vipBll = new VipBLL(loggingSessionInfo); //会员BLL实例化 var userBll = new T_UserBLL(loggingSessionInfo); //店员BLL实例化 T_UserEntity userEntity = null; //店员信息 var unitBLL = new t_unitBLL(loggingSessionInfo); refundEntity = refundOrderBLL.GetByID(para.RefundID); userEntity = userBll.GetByID(loggingSessionInfo.UserID); using (pTran.Connection) { try { if (refundEntity != null) { //获取会员信息 var vipInfo = vipBll.GetByID(refundEntity.VipID); //获取会员的会员上线 VipEntity userInfo = vipBll.GetByID(vipInfo.HigherVipID); if (userInfo == null) { //获取会员的员工上线 var tempUser = userBll.GetByID(vipInfo.SetoffUserId); if (tempUser != null) { userInfo = new VipEntity(); userInfo.VIPID = tempUser.user_id; } } //获取门店信息 t_unitEntity unitInfo = null; if (!string.IsNullOrEmpty(refundEntity.UnitID)) { unitInfo = unitBLL.GetByID(refundEntity.UnitID); } userEntity = userBll.GetByID(loggingSessionInfo.UserID); refundEntity.Status = 2;//已退款 refundOrderBLL.Update(refundEntity, pTran); salesReturnEntity = salesReturnBLL.GetByID(refundEntity.SalesReturnID); if (salesReturnEntity != null) { salesReturnEntity.Status = 7;//已完成 salesReturnBLL.Update(salesReturnEntity, pTran); historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 7, OperationDesc = "退款", OperatorID = loggingSessionInfo.UserID, HisRemark = "您的服务单财务已退款,请注意查收", OperatorName = userEntity.user_name, OperatorType = 1 }; historyBLL.Create(historyEntity, pTran); } #region 退回集客订单分润 //上线员工和线上会员不为空 if (userInfo != null) { var vipAmountEntity = vipAmountBLL.QueryByEntity(new VipAmountEntity() { VipId = userInfo.VIPID, VipCardCode = userInfo.VipCode }, null).FirstOrDefault(); var vipAmountDetail = vipAmountDetailBLL.QueryByEntity(new VipAmountDetailEntity() { ObjectId = refundEntity.OrderID, AmountSourceId = "20" }, null).FirstOrDefault(); if (vipAmountDetail != null) { var detailInfo = new VipAmountDetailEntity() { Amount = -vipAmountDetail.Amount.Value, ObjectId = refundEntity.RefundID.ToString(), AmountSourceId = "25" }; var vipAmountDetailId = vipAmountBLL.AddVipAmount(userInfo, unitInfo, ref vipAmountEntity, detailInfo, pTran, loggingSessionInfo); } } #endregion } pTran.Commit(); //提交事物 } catch (Exception ex) { pTran.Rollback();//回滚事务 throw new APIException(ex.Message); } } return(rd); }
protected override EmptyResponseData ProcessRequest(DTO.Base.APIRequest <SetSalesReturnRP> pRequest) { var rd = new EmptyResponseData(); var para = pRequest.Parameters; var loggingSessionInfo = new SessionManager().CurrentUserLoginInfo; var salesReturnBLL = new T_SalesReturnBLL(loggingSessionInfo); var historyBLL = new T_SalesReturnHistoryBLL(loggingSessionInfo); var refundOrderBLL = new T_RefundOrderBLL(loggingSessionInfo); var inoutBLL = new T_InoutBLL(loggingSessionInfo); var inoutService = new InoutService(loggingSessionInfo); var vipAmountBLL = new VipAmountBLL(loggingSessionInfo); //余额返现BLL实例化 var vipIntegralBLL = new VipIntegralBLL(loggingSessionInfo); //积分BLL实例化 var pTran = salesReturnBLL.GetTran(); //事务 T_SalesReturnEntity salesReturnEntity = null; T_SalesReturnHistoryEntity historyEntity = null; T_RefundOrderEntity refundEntity = null; var vipBll = new VipBLL(loggingSessionInfo); //会员BLL实例化 var userBll = new T_UserBLL(loggingSessionInfo); //店员BLL实例化 T_UserEntity userEntity = null; //店员信息 var unitBLL = new t_unitBLL(loggingSessionInfo); salesReturnEntity = salesReturnBLL.GetByID(para.SalesReturnID); //获取订单信息 var inoutInfo = inoutBLL.GetInoutInfo(salesReturnEntity.OrderID, loggingSessionInfo); //获取会员信息 var vipInfo = vipBll.GetByID(inoutInfo.vip_no); //获取门店信息 t_unitEntity unitInfo = null; if (!string.IsNullOrEmpty(inoutInfo.sales_unit_id)) { unitInfo = unitBLL.GetByID(inoutInfo.sales_unit_id); } userEntity = userBll.GetByID(loggingSessionInfo.UserID); using (pTran.Connection) { try { switch (para.OperationType) { case 1: #region 审核通过 salesReturnEntity.Status = 4; //审核通过 #region 计算应退金额 decimal payable = 0; //计算后应退金额 //根据订单ID获取订单明细[复用] DataRow drItem = inoutService.GetOrderDetailByOrderId(salesReturnEntity.OrderID).Tables[0].Select(" item_id= '" + salesReturnEntity.ItemID + "'").FirstOrDefault(); decimal salesPrice = Convert.ToDecimal(drItem["enter_price"]); if (inoutInfo != null) { //订单总金额-运费 decimal tempAmount = inoutInfo.total_amount.Value - inoutInfo.DeliveryAmount; //计算会员折扣 decimal discount = 1; if (inoutInfo.discount_rate.Value > 0) { discount = inoutInfo.discount_rate.Value / 100; } //计算后应退金额 //payable = (((tempAmount - inoutInfo.CouponAmount) * discount) / tempAmount) * (salesPrice * salesReturnEntity.ActualQty.Value); //公式:比例 =(应付金额 * 会员折扣 - 优惠券)/ 应付金额 // 应退金额 = 退货数量 * 销售价 * 比例 payable = ((tempAmount * discount - inoutInfo.CouponAmount) / tempAmount) * (salesPrice * salesReturnEntity.ActualQty.Value); } salesReturnEntity.RefundAmount = payable; //应退金额 salesReturnEntity.ConfirmAmount = payable; //实退金额,默认为应退金额,可支持修改 #endregion salesReturnBLL.Update(salesReturnEntity, pTran); historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 4, OperationDesc = "审核", OperatorID = loggingSessionInfo.UserID, HisRemark = "您的服务单已审核通过,请将商品寄回", OperatorName = userEntity.user_name, OperatorType = 1 }; historyBLL.Create(historyEntity, pTran); #endregion break; case 2: #region 审核不通过 salesReturnEntity.Status = 3; //审核不通过 salesReturnBLL.Update(salesReturnEntity, pTran); historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 3, OperationDesc = "审核", OperatorID = loggingSessionInfo.UserID, HisRemark = para.Desc, OperatorName = userEntity.user_name, OperatorType = 1 }; historyBLL.Create(historyEntity, pTran); break; #endregion case 3: #region 确认收货 salesReturnEntity.Status = 6; //确认收货 salesReturnBLL.Update(salesReturnEntity, pTran); historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 6, OperationDesc = "收货", OperatorID = loggingSessionInfo.UserID, HisRemark = "您的服务单" + salesReturnEntity.SalesReturnNo + "的商品已经收到", OperatorName = userEntity.user_name, OperatorType = 1 }; historyBLL.Create(historyEntity, pTran); //退货时生成退款单 if (salesReturnEntity.ServicesType == 1) { refundEntity = new T_RefundOrderEntity(); refundEntity.SalesReturnID = salesReturnEntity.SalesReturnID; refundEntity.RefundNo = DateTime.Now.ToString("yyyyMMddhhmmfff"); refundEntity.VipID = salesReturnEntity.VipID; refundEntity.DeliveryType = salesReturnEntity.DeliveryType; refundEntity.OrderID = salesReturnEntity.OrderID; refundEntity.ItemID = salesReturnEntity.ItemID; refundEntity.SkuID = salesReturnEntity.SkuID; refundEntity.Qty = salesReturnEntity.Qty; refundEntity.ActualQty = salesReturnEntity.ActualQty; refundEntity.UnitID = salesReturnEntity.UnitID; refundEntity.UnitName = salesReturnEntity.UnitName; refundEntity.UnitTel = salesReturnEntity.UnitTel; refundEntity.Address = salesReturnEntity.Address; refundEntity.Contacts = salesReturnEntity.Contacts; refundEntity.Phone = salesReturnEntity.Phone; refundEntity.RefundAmount = salesReturnEntity.RefundAmount; //退款金额 refundEntity.ConfirmAmount = salesReturnEntity.ConfirmAmount; //确认退款金额 #region 计算应退现金金额、余额、积分、返现 var inoutDetail = inoutBLL.GetInoutInfo(salesReturnEntity.OrderID, loggingSessionInfo); if (inoutDetail != null) { //订单实付金额-运费 >= 应退金额 if (inoutDetail.actual_amount - inoutDetail.DeliveryAmount >= salesReturnEntity.ConfirmAmount) { refundEntity.ActualRefundAmount = salesReturnEntity.ConfirmAmount; } //订单实付金额-运费+余额抵扣 >= 应退金额 else if (inoutDetail.actual_amount - inoutDetail.DeliveryAmount + inoutDetail.VipEndAmount >= salesReturnEntity.ConfirmAmount) { refundEntity.ActualRefundAmount = inoutDetail.actual_amount - inoutDetail.DeliveryAmount; //实付金额 //refundEntity.Amount = salesReturnEntity.ConfirmAmount - inoutDetail.actual_amount; //退回余额 refundEntity.Amount = salesReturnEntity.ConfirmAmount - refundEntity.ActualRefundAmount; //退回余额 } //订单实付金额-运费+余额抵扣+积分抵扣 >= 应退金额 else if (inoutDetail.actual_amount - inoutDetail.DeliveryAmount + inoutDetail.VipEndAmount + inoutDetail.IntegralAmount >= salesReturnEntity.ConfirmAmount) { refundEntity.ActualRefundAmount = inoutDetail.actual_amount - inoutDetail.DeliveryAmount; //实付金额 refundEntity.Amount = inoutDetail.VipEndAmount; //退回余额 //退回积分抵扣金额 refundEntity.PointsAmount = salesReturnEntity.ConfirmAmount.Value - (inoutDetail.actual_amount.Value - inoutDetail.DeliveryAmount) - inoutDetail.VipEndAmount; //退回积分 refundEntity.Points = (int)Math.Round(refundEntity.PointsAmount.Value * (inoutDetail.pay_points.Value / inoutDetail.IntegralAmount), 1); } else //订单实付金额-运费+余额抵扣+积分抵扣 < 应退金额 { refundEntity.Points = (int)Math.Round(inoutDetail.pay_points.Value, 1); //退回积分 refundEntity.PointsAmount = inoutDetail.IntegralAmount; //退回积分抵扣金额 refundEntity.Amount = inoutDetail.VipEndAmount; //退回余额 refundEntity.ActualRefundAmount = salesReturnEntity.ConfirmAmount; //实付金额 } //订单实付金额-运费+余额抵扣+积分抵扣 >= 应退金额 //取消返现 //else if (inoutDetail.actual_amount - inoutDetail.DeliveryAmount + inoutDetail.VipEndAmount + inoutDetail.IntegralAmount + inoutDetail.ReturnAmount >= salesReturnEntity.ConfirmAmount) //{ // refundEntity.ActualRefundAmount = inoutDetail.actual_amount - inoutDetail.DeliveryAmount;//实付金额 // refundEntity.Amount = inoutDetail.VipEndAmount; //退回余额 // refundEntity.Points = (int)Math.Round(inoutDetail.pay_points.Value, 1);//退回积分 // refundEntity.PointsAmount = inoutDetail.IntegralAmount; //退回积分抵扣金额 // //退回的返现 // refundEntity.ReturnAmount = salesReturnEntity.ConfirmAmount.Value - (inoutDetail.actual_amount.Value - inoutDetail.DeliveryAmount) - inoutDetail.VipEndAmount - inoutDetail.IntegralAmount; //} } #endregion refundEntity.Status = 1; //待退款 refundEntity.CustomerID = loggingSessionInfo.ClientID; refundOrderBLL.Create(refundEntity, pTran); var vipAmountEntity = vipAmountBLL.QueryByEntity(new VipAmountEntity() { VipId = vipInfo.VIPID, VipCardCode = vipInfo.VipCode }, null).FirstOrDefault(); //退货返回余额 if (refundEntity.Amount > 0) { //变更余额和余额记录 var detailInfo = new VipAmountDetailEntity() { Amount = refundEntity.Amount.Value, AmountSourceId = "21", ObjectId = refundEntity.RefundID.ToString() }; var vipAmountDetailId = vipAmountBLL.AddVipAmount(vipInfo, unitInfo, ref vipAmountEntity, detailInfo, pTran, loggingSessionInfo); if (!string.IsNullOrWhiteSpace(vipAmountDetailId)) { //发送微信账户余额变动模板消息 var CommonBLL = new CommonBLL(); CommonBLL.BalanceChangedMessage(inoutInfo.order_no, vipAmountEntity, detailInfo, vipInfo.WeiXinUserId, vipInfo.VIPID, loggingSessionInfo); } } //退货返回返现 if (refundEntity.ReturnAmount > 0) { var detailInfo = new VipAmountDetailEntity() { Amount = refundEntity.ReturnAmount.Value, ObjectId = refundEntity.RefundID.ToString(), AmountSourceId = "22" }; var vipAmountDetailId = vipAmountBLL.AddReturnAmount(vipInfo, unitInfo, vipAmountEntity, ref detailInfo, pTran, loggingSessionInfo); if (!string.IsNullOrWhiteSpace(vipAmountDetailId)) { //发送返现到账通知微信模板消息 var CommonBLL = new CommonBLL(); CommonBLL.CashBackMessage(salesReturnEntity.OrderNo, detailInfo.Amount, vipInfo.WeiXinUserId, vipInfo.VIPID, loggingSessionInfo); } } //退货返回积分 if (refundEntity.Points > 0) { var IntegralDetail = new VipIntegralDetailEntity() { Integral = refundEntity.Points.Value, IntegralSourceID = "26", ObjectId = refundEntity.RefundID.ToString() }; if (IntegralDetail.Integral != 0) { //变动前积分 string OldIntegral = (vipInfo.Integration ?? 0).ToString(); //变动积分 string ChangeIntegral = (IntegralDetail.Integral ?? 0).ToString(); var vipIntegralDetailId = vipIntegralBLL.AddIntegral(ref vipInfo, unitInfo, IntegralDetail, pTran, loggingSessionInfo); //发送微信积分变动通知模板消息 if (!string.IsNullOrWhiteSpace(vipIntegralDetailId)) { var CommonBLL = new CommonBLL(); CommonBLL.PointsChangeMessage(OldIntegral, vipInfo, ChangeIntegral, vipInfo.WeiXinUserId, loggingSessionInfo); } } } //确认收货时退回订单奖励积分、返现和佣金 vipIntegralBLL.CancelReward(inoutInfo, vipInfo, pTran); } #endregion break; case 4: #region 拒绝收货 salesReturnEntity.Status = 5; //拒绝收货 salesReturnBLL.Update(salesReturnEntity, pTran); historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 5, OperationDesc = "收货", OperatorID = loggingSessionInfo.UserID, HisRemark = para.Desc, OperatorName = userEntity.user_name, OperatorType = 1 }; historyBLL.Create(historyEntity, pTran); #endregion break; case 5: #region 修改信息 if (para.ServicesType > 0) //修改服务方式 { salesReturnEntity.ServicesType = para.ServicesType; string servicesTypeDesc = para.ServicesType == 1 ? "退货" : "换货"; historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 11, OperationDesc = "修改信息", OperatorID = loggingSessionInfo.UserID, HisRemark = "修改服务方式为" + servicesTypeDesc, OperatorName = userEntity.user_name, OperatorType = 1, IsDelete = 1 }; historyBLL.Create(historyEntity, pTran); } if (para.ActualQty > 0) //修改申请数量 { salesReturnEntity.ActualQty = para.ActualQty; historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 11, OperationDesc = "修改信息", OperatorID = loggingSessionInfo.UserID, HisRemark = "修改确认退货数量为" + para.ActualQty, OperatorName = userEntity.user_name, OperatorType = 1, IsDelete = 1 }; historyBLL.Create(historyEntity, pTran); } if (para.ConfirmAmount >= 0) //处理实退金额 { salesReturnEntity.ConfirmAmount = para.ConfirmAmount; historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 13, OperationDesc = "修改信息", OperatorID = loggingSessionInfo.UserID, HisRemark = "修改实退金额为" + para.ConfirmAmount, OperatorName = userEntity.user_name, OperatorType = 1, IsDelete = 1 }; historyBLL.Create(historyEntity, pTran); } salesReturnBLL.Update(salesReturnEntity, pTran); #endregion break; case 6: #region 取消 salesReturnEntity.Status = 2; //取消申请 salesReturnBLL.Update(salesReturnEntity, pTran); historyEntity = new T_SalesReturnHistoryEntity() { SalesReturnID = salesReturnEntity.SalesReturnID, OperationType = 2, OperationDesc = "取消申请", OperatorID = CurrentUserInfo.UserID, HisRemark = para.Desc, OperatorName = userEntity.user_name, OperatorType = 0 }; historyBLL.Create(historyEntity, pTran); #endregion break; default: break; } pTran.Commit(); //提交事物 } catch (Exception ex) { pTran.Rollback();//回滚事务 throw new APIException(ex.Message); } } return(rd); }