public static bool DeleteBeautyServicePackageDetail(int pkid, BeautyServicePackageDetail oldValue, string operateUser) { bool result = false; try { result = BeautyServicePackageDal.DeleteBeautyServicePackageDetail(pkid); var log = new BeautyOprLog { LogType = "DeleteBeautyServicePackageDetail", IdentityID = $"{pkid}", OldValue = JsonConvert.SerializeObject(oldValue), NewValue = null, Remarks = $"删除集团客户礼包详情,详情ID:{pkid}", OperateUser = operateUser, }; LoggerManager.InsertLog("BeautyOprLog", log); } catch (Exception ex) { Logger.Error(ex.Message, ex); }; return(result); }
public static bool InsertBeautyServicePackageDetail(BeautyServicePackageDetail packageDetail) { bool result = false; try { var insertResult = BeautyServicePackageDal.InsertBeautyServicePackageDetail(packageDetail); result = insertResult.Item1; var log = new BeautyOprLog { LogType = "InsertBeautyServicePackageDetail", IdentityID = $"{insertResult.Item2}", OldValue = null, NewValue = JsonConvert.SerializeObject(packageDetail), Remarks = $"插入礼包详情,礼包ID:{packageDetail.PackageId}", OperateUser = packageDetail.CreateUser, }; LoggerManager.InsertLog("BeautyOprLog", log); } catch (Exception ex) { Logger.Error(ex.Message, ex); }; return(result); }
public static BeautyServicePackageDetail GetBeautyServicePackageDetail(int packageDetailId) { BeautyServicePackageDetail result = null; try { result = BeautyServicePackageDal.SelectBeautyServicePackageDetail(packageDetailId); } catch (Exception ex) { Logger.Error(ex.Message, ex); }; return(result); }
public static async Task <CreateOrderResult> CreateServiceCodeOrderForVip(MrCooperateUserConfig cooperateUser, BeautyServicePackageDetail packageDetail) { var vipuserInfo = await GetCompanyUserInfo(cooperateUser.VipUserId); var sumMoney = packageDetail.VipSettlementPrice * packageDetail.ServiceCodeNum; var createOrderRequest = new CreateOrderRequest { OrderChannel = orderChannel, OrderType = orderType, Status = OrderEnum.OrderStatus.New, Customer = new OrderCustomer() { UserId = cooperateUser.VipUserId, UserName = vipuserInfo.UserName,// wesureUser.Profile?.UserName, UserTel = vipuserInfo.UserMobile }, Delivery = new OrderDelivery { DeliveryStatus = OrderEnum.DeliveryStatus.NotStarted, DeliveryType = OrderEnum.DeliveryType.NoDelivery, InstallType = OrderEnum.InstallType.NoInstall, }, Payment = new OrderPayment { PayStatus = OrderEnum.PayStatus.Waiting, PayMothed = OrderEnum.PayMethod.MonthPay, PaymentType = "5Special", }, Money = new OrderMoney() { SumMoney = sumMoney, SumMarkedMoney = sumMoney }, Items = new List <OrderItem>() { new OrderItem() { Price = packageDetail.VipSettlementPrice, Pid = packageDetail.PID, Num = packageDetail.ServiceCodeNum, Name = packageDetail.Name, Category = (GetProduct(packageDetail.PID))?.Category } }, BigCustomerCompanyId = vipuserInfo.CompanyInfo?.Id, BigCustomerCompanyName = vipuserInfo.CompanyInfo?.Name, SumNum = packageDetail.ServiceCodeNum }; var result = await CreateOrder(createOrderRequest); if (result.OrderId > 0) { ExecuteOrderProcess(new ExecuteOrderProcessRequest() { CreateBy = vipuserInfo.UserName, OrderId = result.OrderId, OrderProcessEnum = OrderProcessEnum.GeneralCompleteToHome, PayMethod = OrderEnum.PayMethod.MonthPay }); } return(result); }
public ActionResult UpsertBeautyServicePackageDetail(BeautyServicePackageDetail packageDetail) { var isSuccess = false; var msg = string.Empty; var rawPackage = BeautyServicePackageManager.GetBeautyServicePackage(packageDetail.PackageId); if (rawPackage != null && rawPackage.IsPackageCodeGenerated) { if (packageDetail.PKID <= 0) { msg = "已生成兑换码不允许添加产品!"; return(Json(new { IsSuccess = false, Msg = msg }, JsonRequestBehavior.AllowGet)); } var rawPackageDetail = BeautyServicePackageManager.GetBeautyServicePackageDetails(packageDetail.PackageId).FirstOrDefault(); if (rawPackageDetail != null && (rawPackageDetail.ShopCommission != packageDetail.ShopCommission || rawPackageDetail.VipSettlementPrice != packageDetail.VipSettlementPrice || rawPackageDetail.ServiceCodeNum != packageDetail.ServiceCodeNum || rawPackageDetail.ServiceCodeStartTime != packageDetail.ServiceCodeStartTime || rawPackageDetail.ServiceCodeEndTime != packageDetail.ServiceCodeEndTime || rawPackageDetail.EffectiveDayAfterExchange != packageDetail.EffectiveDayAfterExchange || rawPackageDetail.Num != packageDetail.Num)) { msg = "已生成兑换码只允许修改名称!"; return(Json(new { IsSuccess = false, Msg = msg }, JsonRequestBehavior.AllowGet)); } } var user = HttpContext.User.Identity.Name; if (packageDetail != null && !string.IsNullOrEmpty(packageDetail.Name) && !string.IsNullOrEmpty(packageDetail.PID)) { if (packageDetail.Num > 20 || packageDetail.Num < 0) { msg = "兑换码包含的服务数量介于0~20之间"; return(Json(new { IsSuccess = false, Msg = msg }, JsonRequestBehavior.AllowGet)); } if (packageDetail.CooperateId <= 0)//兑换码的合作用户配置在外层 { var package = BeautyServicePackageManager.GetBeautyServicePackage(packageDetail.PackageId); packageDetail.CooperateId = package?.CooperateId ?? 0; } if (packageDetail.PKID > 0) { packageDetail.UpdateUser = user; var updateResult = BeautyServicePackageManager.UpdateBeautyServicePackageDetail(packageDetail); isSuccess = updateResult.Item1; msg = updateResult.Item2; } else { packageDetail.CreateUser = user; isSuccess = BeautyServicePackageManager.InsertBeautyServicePackageDetail(packageDetail); if (!isSuccess) { msg = "更新失败"; } } } else { msg = "信息不完善"; } return(Json(new { IsSuccess = isSuccess, Msg = msg }, JsonRequestBehavior.AllowGet)); }
public static Tuple <bool, string> UpdateBeautyServicePackageDetail(BeautyServicePackageDetail packageDetail) { bool result = false; var msg = string.Empty; var writeStr = BeautyServicePackageDal.GetTuhuGrouponWriteConnstr(); using (var dbhelper = new SqlDbHelper(writeStr)) { try { var oldValue = GetBeautyServicePackageDetail(packageDetail.PKID); dbhelper.BeginTransaction(); var updatePackageDetailResult = BeautyServicePackageDal.UpdateBeautyServicePackageDetail(dbhelper, packageDetail); if (!updatePackageDetailResult) { throw new Exception("更新服务码配置失败"); } if (packageDetail.IsServiceCodeGenerated && (oldValue.ServiceCodeStartTime != packageDetail.ServiceCodeStartTime || oldValue.ServiceCodeEndTime != packageDetail.ServiceCodeEndTime)) { if (oldValue.ServiceCodeNum > 10000) { throw new Exception("大于10000暂时不支持修改"); } var updateServiceCodeTimeResult = BeautyServicePackageDal.UpdateServiceCodeTime(dbhelper, packageDetail.PKID, packageDetail.ServiceCodeStartTime, packageDetail.ServiceCodeEndTime); if (!updateServiceCodeTimeResult) { throw new Exception("更新服务码时间失败"); } if (oldValue.ServiceCodeEndTime != packageDetail.ServiceCodeEndTime && packageDetail.ServiceCodeEndTime != null) { var serviceCodes = (GetBeautyServicePackageDetailCodesByPackageDetailId(packageDetail.PKID))?.Select(t => t.ServiceCode)?.ToList(); if (serviceCodes != null && serviceCodes.Any()) { using (var client = new ServiceCodeClient()) { var batchSize = 1000; var index = 0; while (index < serviceCodes.Count) { var batchCodes = serviceCodes.Skip(index).Take(batchSize).ToList(); var kxChangeCodeTimeModel = new ChangeCodeTimeRequest { ServiceCodes = batchCodes, OverdueTime = Convert.ToDateTime(packageDetail.ServiceCodeEndTime) }; var kxChangeResult = client.ChangeOverdueTime(kxChangeCodeTimeModel); if (!kxChangeResult.Success) { throw kxChangeResult.Exception; } if (kxChangeResult.Result != null && kxChangeResult.Result.FailServiceCode != null && kxChangeResult.Result.FailServiceCode.Any()) { var serviceCodeFailedLog = new BeautyOprLog { LogType = "ChangeOverdueTimeFailedCodes", IdentityID = $"{packageDetail.PKID}", OldValue = null, NewValue = JsonConvert.SerializeObject(kxChangeResult.Result.FailServiceCode), Remarks = $"修改服务码过期时间失败", OperateUser = packageDetail.UpdateUser, }; LoggerManager.InsertLog("BeautyOprLog", serviceCodeFailedLog); } index += batchSize; } } } } } dbhelper.Commit(); result = true; var log = new BeautyOprLog { LogType = "UpdateBeautyServicePackageDetail", IdentityID = $"{packageDetail.PKID}", OldValue = JsonConvert.SerializeObject(oldValue), NewValue = JsonConvert.SerializeObject(packageDetail), Remarks = $"修改集团客户礼包详情,详情ID为{packageDetail.PKID}", OperateUser = packageDetail.UpdateUser, }; LoggerManager.InsertLog("BeautyOprLog", log); } catch (Exception ex) { msg = ex.Message; dbhelper.Rollback(); Logger.Error(ex.Message, ex); }; } return(new Tuple <bool, string>(result, msg)); }