private string AddUserPayment(FlashDealItem item, int userId, miniAppBuyMode payWay, int payPrice, int payOrderId = 0, int buyCount = 0) { FlashDeal deal = FlashDealBLL.SingleModel.GetModel(item.DealId); DealSnapshot snapshot = JsonConvert.DeserializeObject <DealSnapshot>(JsonConvert.SerializeObject(deal)); //支付方式 snapshot.PayWay = payWay.ToString(); //支付物品 snapshot.ItemTitle = item.Title; //物品原价 snapshot.OrigPrice = item.OrigPrice; //插入支付记录 FlashDealPayment payRecord = new FlashDealPayment { AddTime = DateTime.Now, DealId = deal.Id, ItemId = item.Id, UserId = userId, Aid = item.Aid, PayWay = (int)payWay, PayPrice = payPrice, PayOrderId = payOrderId, Snapshot = JsonConvert.SerializeObject(snapshot), BuyCount = buyCount, }; return(BuildAddSql(payRecord)); }
public bool AddByFlashItem(FlashDealItem flashItem, C_UserInfo user, TmpType pageType = TmpType.小程序电商模板) { FlashDeal flashDeal = FlashDealBLL.SingleModel.GetModel(flashItem.DealId); object sendContent = new { keyword1 = new { value = "限时秒杀开始啦!", color = "#000000" }, //交易类型 keyword2 = new { value = flashDeal.Title, color = "#000000" }, //活动信息 keyword3 = new { value = flashItem.Title, color = "#000000" }, //商品信息 keyword4 = new { value = flashDeal.End.ToString(), color = "#000000" }, //到期日 }; SubscribeMessage newMsg = new SubscribeMessage { State = (int)SubscribeMsgState.等待发送, Template = (int)SendTemplateMessageTypeEnum.秒杀开始通知, ContentType = (int)SubscribeMsgType.小程序模板消息, UserId = user.Id, SourceId = flashDeal.Id, OpenId = user.OpenId, PageType = (int)pageType, SendTime = flashDeal.Begin, SendContent = JsonConvert.SerializeObject(sendContent) }; int newId = 0; return(int.TryParse(Add(newMsg).ToString(), out newId) && newId > 0); }
public JsonResult DeleteItem(XcxAppAccountRelation authData, int flashDealId = 0, List <FlashDealItem> deleteItem = null) { if (deleteItem == null) { return(ReturnJson(message: "请完善填写秒杀商品设置")); } FlashDeal belongDeal = FlashDealBLL.SingleModel.GetModel(flashDealId); if (belongDeal == null) { return(ReturnJson(message: "秒杀活动不存在")); } if (!FlashDealBLL.SingleModel.Editable(belongDeal)) { return(ReturnJson(message: "秒杀活动未下架,不可编辑")); } if (FlashDealItemBLL.SingleModel.GetByDealId(flashDealId)?.Count == 1) { return(ReturnJson(message: "不可删除,活动需要至少一个秒杀商品")); } string errorMsg = string.Empty; if (deleteItem.Exists(item => item.Aid != belongDeal.Aid || item.DealId != belongDeal.Id)) { return(ReturnJson(message: "非法操作")); } bool result = FlashDealItemBLL.SingleModel.DelItems(items: deleteItem); return(ReturnJson(isOk: result, message: result ? "删除成功" : "删除失败")); }
public JsonResult AddItem(XcxAppAccountRelation authData, int flashDealId = 0, List <FlashDealItem> newItem = null) { if (newItem == null) { return(ReturnJson(message: "请完善填写秒杀商品设置")); } FlashDeal belongDeal = FlashDealBLL.SingleModel.GetModel(flashDealId); if (belongDeal == null) { return(ReturnJson(message: "秒杀活动不存在")); } if (!FlashDealBLL.SingleModel.Editable(belongDeal)) { return(ReturnJson(message: "秒杀活动未下架,不可编辑")); } string errorMsg = string.Empty; if (newItem.Exists(item => !FlashDealItemBLL.SingleModel.CheckInputVaild(item, out errorMsg))) { return(ReturnJson(message: errorMsg)); } if (FlashDealItemBLL.SingleModel.CheckRepeatItem(newItems: newItem, authData: authData)) { return(ReturnJson(message: "添加失败,活动商品重复")); } bool result = FlashDealItemBLL.SingleModel.AddItems(newItems: newItem, deal: belongDeal); return(ReturnJson(isOk: result, message: result ? "添加成功" : "添加失败")); }
public JsonResult onShelf(XcxAppAccountRelation authData, int?flashDealId = null) { if (!flashDealId.HasValue || flashDealId.Value <= 0) { return(ReturnJson(message: "非法参数")); } FlashDeal updateDeal = FlashDealBLL.SingleModel.GetModel(flashDealId.Value); if (!FlashDealBLL.SingleModel.CheckAuth(authData, updateDeal) || !FlashDealBLL.SingleModel.CheckOnShelf(updateDeal)) { return(ReturnJson(message: "非法操作")); } if (updateDeal.End <= DateTime.Now) { return(ReturnJson(message: "活动结束日期小于当前时间,请重新调整")); } bool result = false; if (updateDeal.Begin <= DateTime.Now) { result = FlashDealBLL.SingleModel.StartNow(updateDeal); } else { result = FlashDealBLL.SingleModel.UpdateOnShelf(updateDeal); } return(ReturnJson(isOk: result, message: result ? "更新成功" : "更新失败")); }
public JsonResult Add(XcxAppAccountRelation authData = null, FlashDeal inputDeal = null, List <FlashDealItem> inputItem = null) { if (inputDeal == null || inputItem == null || inputItem.Count == 0) { return(ReturnJson(message: "请完善填写秒杀设置")); } string errorMsg = string.Empty; if (!FlashDealBLL.SingleModel.CheckInputVaild(inputDeal, out errorMsg)) { return(ReturnJson(message: errorMsg)); } if (inputItem.Exists(item => !FlashDealItemBLL.SingleModel.CheckInputVaild(item, out errorMsg))) { return(ReturnJson(message: errorMsg)); } inputDeal.Aid = authData.Id; inputItem.ForEach(item => { item.Aid = authData.Id; }); var result = FlashDealBLL.SingleModel.AddNewDeal(inputDeal, inputItem); return(ReturnJson(isOk: result, message: result ? "添加成功" : "添加失败")); }
public bool UpdateSendTime(FlashDeal flashDeal) { List <FlashDealItem> updateItems = FlashDealItemBLL.SingleModel.GetByDealId(flashDeal.Id); List <string> updateSql = new List <string>(); updateItems.ForEach(flashItem => { List <string> sql = BuildUpdateSendTimeSql(flashItem.Id, SendTemplateMessageTypeEnum.秒杀开始通知, flashDeal.Begin); if (sql?.Count > 0) { updateSql.AddRange(sql); } }); TransactionModel tran = new TransactionModel(); tran.Add(updateSql.ToArray()); return(ExecuteTransactionDataCorect(tran.sqlArray, tran.ParameterArray)); }
public JsonResult Delete(XcxAppAccountRelation authData, int flashDealId = 0) { if (flashDealId <= 0) { return(ReturnJson(message: "无效参数_flashDealId")); } string errorMsg = string.Empty; FlashDeal deleteDeal = FlashDealBLL.SingleModel.GetModel(flashDealId); if (!FlashDealBLL.SingleModel.Editable(deleteDeal)) { return(ReturnJson(message: "不可删除")); } bool result = FlashDealBLL.SingleModel.DeleteDeal(deleteDeal); return(ReturnJson(isOk: result, message: result ? "更新成功" : "更新失败")); }
public JsonResult Start(XcxAppAccountRelation authData, int?flashDealId = null) { if (!flashDealId.HasValue || flashDealId.Value <= 0) { return(ReturnJson(message: "非法参数")); } string errorMsg = string.Empty; FlashDeal updateDeal = FlashDealBLL.SingleModel.GetModel(flashDealId.Value); if (!FlashDealBLL.SingleModel.CheckAuth(authData, updateDeal) || !FlashDealBLL.SingleModel.CheckForStart(updateDeal)) { return(ReturnJson(message: "非法操作")); } bool result = FlashDealBLL.SingleModel.StartNow(updateDeal); return(ReturnJson(isOk: result, message: result ? "更新成功" : "更新失败")); }
public JsonResult UpdateItem(XcxAppAccountRelation authData, FlashDealItem dealItem = null) { if (dealItem == null || dealItem.DealId <= 0) { return(ReturnJson(message: "请完善填写秒杀商品设置")); } FlashDeal belongDeal = FlashDealBLL.SingleModel.GetModel(dealItem.DealId); if (belongDeal == null) { return(ReturnJson(message: "秒杀活动数据异常:NULL")); } if (!FlashDealBLL.SingleModel.Editable(belongDeal)) { return(ReturnJson(message: "秒杀活动未下架,不可编辑")); } string errorMsg = string.Empty; if (!FlashDealItemBLL.SingleModel.CheckInputVaild(dealItem, out errorMsg)) { return(ReturnJson(message: errorMsg)); } bool result = false; if (dealItem.Id > 0) { result = FlashDealItemBLL.SingleModel.UpdateItem(dealItem); } else { result = FlashDealItemBLL.SingleModel.AddItem(item: dealItem, deal: belongDeal); } return(ReturnJson(isOk: result, message: result ? "添加成功" : "添加失败")); }
public JsonResult Update(XcxAppAccountRelation authData, FlashDeal updateDeal = null) { if (updateDeal == null) { return(ReturnJson(message: "请完善填写秒杀设置")); } string errorMsg = string.Empty; if (!FlashDealBLL.SingleModel.CheckInputVaild(updateDeal, out errorMsg)) { return(ReturnJson(message: errorMsg)); } if (!FlashDealBLL.SingleModel.Editable(FlashDealBLL.SingleModel.GetModel(updateDeal.Id))) { return(ReturnJson(message: "非法操作")); } bool result = FlashDealBLL.SingleModel.UpdateDeal(updateDeal); return(ReturnJson(isOk: result, message: result ? "更新成功" : "更新失败")); }
//public bool UpdateSendTime(FlashDealItem flashItem, DateTime newSendTime) //{ // List<string> updateSql = BuildUpdateSendTimeSql(flashItem.Id, SendTemplateMessageTypeEnum.秒杀开始通知, newSendTime); // if (updateSql == null || updateSql.Count == 0) // { // return true; // } // TransactionModel tran = new TransactionModel(); // tran.Add(updateSql.ToArray()); // return ExecuteTransactionDataCorect(tran.sqlArray, tran.ParameterArray); //} public bool DeleteSubscribe(FlashDeal flashDeal) { return(DeleteSubscribe(flashDeal.Id, SendTemplateMessageTypeEnum.秒杀开始通知)); }