public void Cancel(string id) { var entity = TrainingOrderBLL.Instance.GetEntity(id); if (entity != null) { entity.TrainingOrderId = id; entity.Status = (int)QX360.Model.Enums.TrainingStatus.已取消; this.Update(entity); //修改预约时间状态 var detail = TrainingOrderDetailBLL.Instance.GetList(new TrainingOrderDetailEntity() { TrainingOrderId = id }); detail.ForEach((o) => { TrainingFreeTimeEntity freetime = new TrainingFreeTimeEntity(); freetime.TrainingFreeTimeId = o.TrainingFreeTimeId; freetime.FreeStatus = (int)QX360.Model.Enums.FreeTimeStatus.空闲; TrainingFreeTimeBLL.Instance.Update(freetime); }); } }
public bool Delete(string keyValue) { var detail = TrainingOrderDetailBLL.Instance.GetList(new TrainingOrderDetailEntity() { TrainingOrderId = keyValue }); detail.ForEach((o) => { //修改系统预约时间状态 TrainingFreeTimeEntity freetime = new TrainingFreeTimeEntity(); freetime.TrainingFreeTimeId = o.TrainingFreeTimeId; freetime.FreeStatus = (int)QX360.Model.Enums.FreeTimeStatus.空闲; TrainingFreeTimeBLL.Instance.Update(freetime); //删除加班时间明细 var customtime = TrainingCustomFreeTimeBLL.Instance.GetEntity(o.TrainingFreeTimeId); if (customtime != null) { TrainingCustomFreeTimeBLL.Instance.Delete(customtime.TrainingCustomFreeTimeId); } TrainingOrderDetailBLL.Instance.Delete(o.TrainingOrderDetailId); }); return(InstanceDAL.Delete(keyValue)); }
public JsonResult CreateOrder2(string data) { var result = new ReturnMessage(false) { Message = "创建订单失败!" }; try { lock (objLock) { var order = JsonConvert.DeserializeObject <TrainingOrderEntity>(data); if (order == null) { return(Json(result)); } //验证时间段是否有预约 var hasflag = false; foreach (var item in order.DetailList) { var freetime = TrainingFreeTimeBLL.Instance.GetEntity(item.TrainingFreeTimeId); if (freetime != null) { if (freetime.FreeStatus != (int)RCHL.Model.Enums.FreeTimeStatus.空闲) { hasflag = true; break; } } } if (hasflag) { result.Message = "您下手晚了,请重新选择预约时间"; return(Json(result)); } int _TrainingStatus = (int)Model.Enums.TrainingStatus.待支付; int _FreeTimeStatus = (int)Model.Enums.FreeTimeStatus.已预约; //判断教练师傅黑名单,黑名单需要审核 var blackList = BlackListBLL.Instance.GetList(new BlackListEntity() { ObjectId = LoginTeacher.UserId }); if (blackList != null && blackList.Count > 0) { _TrainingStatus = (int)Model.Enums.TrainingStatus.待审核; _FreeTimeStatus = (int)Model.Enums.FreeTimeStatus.锁定; } order.TrainingOrderId = Util.NewUpperGuid(); order.TrainingOrderNo = TrainingOrderBLL.Instance.GetOrderNo(); order.CreateTime = DateTime.Now; order.Status = _TrainingStatus; order.MemberId = LoginTeacher.UserId; order.MemberName = LoginTeacher.UserName; order.MemberMobile = LoginTeacher.Mobile; order.UserType = (int)RCHL.Model.Enums.TrainingUserType.教练; string _ServiceTime = ""; if (TrainingOrderBLL.Instance.Add(order)) { if (order.DetailList != null) { foreach (var item in order.DetailList) { TrainingOrderDetailEntity detail = new TrainingOrderDetailEntity(); detail.TrainingOrderDetailId = Util.NewUpperGuid(); detail.ServiceTime = item.ServiceTime; detail.ServiceDate = item.ServiceDate; detail.TrainingOrderId = order.TrainingOrderId; detail.TrainingFreeTimeId = item.TrainingFreeTimeId; if (TrainingOrderDetailBLL.Instance.Add(detail)) { _ServiceTime += detail.ServiceTime + ","; //修改预约时间状态 TrainingFreeTimeEntity freetime = new TrainingFreeTimeEntity(); freetime.TrainingFreeTimeId = detail.TrainingFreeTimeId; freetime.FreeStatus = _FreeTimeStatus; TrainingFreeTimeBLL.Instance.Update(freetime); } } } } result.IsSuccess = true; result.Message = "创建成功"; //写消息 string servicetime = string.Format("{0} {1}", DateTime.Parse(order.ServiceDate.ToString()).ToString("yyyy-MM-dd"), _ServiceTime.TrimEnd(',')); string tex = "预约实训," + order.SchoolName + order.TrainingTypeName + "考场实训"; if (_TrainingStatus == (int)Model.Enums.TrainingStatus.待审核) { tex = "预约实训," + order.SchoolName + order.TrainingTypeName + "考场实训,该订单等待管理员审核。"; } SendSysMessageBLL.SendMessageTeacher(RCHL.Model.Enums.NoticeType.预约提醒, LoginTeacher.UserId, servicetime, tex, order.TrainingOrderNo); } } catch (Exception ex) { ex.Data["Method"] = "TrainingCarController>>CreateOrder"; new ExceptionHelper().LogException(ex); } return(Json(result)); }
public ActionResult ChangeTime(string keyValue, string json) { try { var detaillist = Serializer.DeserializeJson <List <TrainingOrderDetailEntity> >(json, true); if (detaillist != null && detaillist.Count == 0) { return(Error("请选择预约时间")); } var entity = TrainingOrderBLL.Instance.GetEntity(keyValue); if (entity != null) { var _OldServiceTime = ""; var _OldServiceDate = ""; //修改之前状态 var olddetail = TrainingOrderDetailBLL.Instance.GetList(new TrainingOrderDetailEntity() { TrainingOrderId = entity.TrainingOrderId }); olddetail.ForEach((o) => { //更改之前预约时间状态 TrainingFreeTimeEntity freetime = new TrainingFreeTimeEntity(); freetime.TrainingFreeTimeId = o.TrainingFreeTimeId; freetime.FreeStatus = (int)RCHL.Model.Enums.FreeTimeStatus.空闲; TrainingFreeTimeBLL.Instance.Update(freetime); //删除明细 TrainingOrderDetailBLL.Instance.Delete(o.TrainingOrderDetailId); _OldServiceTime += o.ServiceTime + ","; _OldServiceDate = DateTime.Parse(o.ServiceDate.ToString()).ToString("yyyy-MM-dd"); }); //插入新的预约 var _ServiceTime = ""; foreach (var item in detaillist) { TrainingOrderDetailEntity detail = new TrainingOrderDetailEntity(); detail.TrainingOrderDetailId = Util.Util.NewUpperGuid(); detail.ServiceTime = item.ServiceTime; detail.ServiceDate = item.ServiceDate; detail.TrainingOrderId = entity.TrainingOrderId; detail.TrainingFreeTimeId = item.TrainingFreeTimeId; if (TrainingOrderDetailBLL.Instance.Add(detail)) { _ServiceTime += detail.ServiceTime + ","; //修改预约时间状态 TrainingFreeTimeEntity freetime = new TrainingFreeTimeEntity(); freetime.TrainingFreeTimeId = detail.TrainingFreeTimeId; freetime.FreeStatus = (int)RCHL.Model.Enums.FreeTimeStatus.已预约; TrainingFreeTimeBLL.Instance.Update(freetime); } } //发送取消微信通知 string servicetime = string.Format("{0} {1}", DateTime.Parse(entity.ServiceDate.ToString()).ToString("yyyy-MM-dd"), _ServiceTime.TrimEnd(',')); string text = "预约实训,预约时间调整,原预约时间:" + string.Format("{0} {1}", _OldServiceDate.ToString(), _OldServiceTime.TrimEnd(',')); if (entity.UserType == (int)RCHL.Model.Enums.TrainingUserType.学员) { SendSysMessageBLL.SendMessage(RCHL.Model.Enums.MessageAlterType.实训预约提示, RCHL.Model.Enums.NoticeType.更改提醒, entity.MemberId, entity.MemberName, servicetime, text, entity.TrainingOrderNo); } else if (entity.UserType == (int)RCHL.Model.Enums.TrainingUserType.教练) { SendSysMessageBLL.SendMessageTeacher(RCHL.Model.Enums.NoticeType.预约提醒, entity.MemberId, servicetime, text, entity.TrainingOrderNo); } } return(Success("操作成功")); } catch (Exception ex) { ex.Data["Method"] = "TrainingOrderController>>ChangeTime"; new ExceptionHelper().LogException(ex); return(Error("操作失败")); } }
public ActionResult Audit(string keyValue) { try { string[] keys = keyValue.Split(','); if (keys != null) { bool flag = true; foreach (var key in keys) { var entity = TrainingOrderBLL.Instance.GetEntity(key); if (entity != null && entity.Status != (int)RCHL.Model.Enums.TrainingStatus.待审核) { flag = false; return(Error("非待审核状态的订单不能审核操作")); } } if (flag) { foreach (var key in keys) { var order = TrainingOrderBLL.Instance.GetEntity(key); if (order != null) { if (order.Status == (int)RCHL.Model.Enums.TrainingStatus.待审核) { order.Status = (int)RCHL.Model.Enums.TrainingStatus.待支付; TrainingOrderBLL.Instance.Update(order); var _ServiceTime = ""; var detail = TrainingOrderDetailBLL.Instance.GetList(new TrainingOrderDetailEntity() { TrainingOrderId = order.TrainingOrderId }); detail.ForEach((o) => { _ServiceTime += o.ServiceTime + ","; //修改预约状态为已预约 TrainingFreeTimeEntity freetime = new TrainingFreeTimeEntity(); freetime.TrainingFreeTimeId = o.TrainingFreeTimeId; freetime.FreeStatus = (int)RCHL.Model.Enums.FreeTimeStatus.已预约; TrainingFreeTimeBLL.Instance.Update(freetime); }); string servicetime = string.Format("{0} {1}", DateTime.Parse(order.ServiceDate.ToString()).ToString("yyyy-MM-dd"), _ServiceTime.TrimEnd(',')); if (order.UserType == (int)RCHL.Model.Enums.TrainingUserType.学员) { SendSysMessageBLL.SendMessage(RCHL.Model.Enums.MessageAlterType.实训预约提示, RCHL.Model.Enums.NoticeType.预约提醒, order.MemberId, order.MemberName, servicetime, "预约实训,单据已审核。请前往机构缴费完成实训", order.TrainingOrderNo); } else if (order.UserType == (int)RCHL.Model.Enums.TrainingUserType.教练) { SendSysMessageBLL.SendMessageTeacher(RCHL.Model.Enums.NoticeType.预约提醒, order.MemberId, servicetime, "预约实训,单据已审核。请前往机构缴费完成实训", order.TrainingOrderNo); } } } } } } return(Success("操作成功")); } catch (Exception ex) { ex.Data["Method"] = "TrainingOrderController>>Audit"; new ExceptionHelper().LogException(ex); return(Error("操作失败")); } }
public ActionResult SaveForm(string keyValue, string issend, string json) { try { if (keyValue != "") { } else { var order = Serializer.DeserializeJson <TrainingOrderEntity>(json, true); if (order == null) { return(Error("无效对象")); } if (order.DetailList == null || order.DetailList.Count == 0) { return(Error("请选择预约时间")); } var hasflag = false; foreach (var item in order.DetailList) { var freetime = TrainingFreeTimeBLL.Instance.GetEntity(item.TrainingFreeTimeId); if (freetime != null) { if (freetime.FreeStatus != (int)RCHL.Model.Enums.FreeTimeStatus.空闲) { hasflag = true; break; } } } if (hasflag) { return(Error("您下手晚了,请重新选择预约时间")); } order.TrainingOrderId = Util.Util.NewUpperGuid(); order.TrainingOrderNo = TrainingOrderBLL.Instance.GetOrderNo(); order.CreateTime = DateTime.Now; order.Status = (int)RCHL.Model.Enums.TrainingStatus.待支付; //order.Price = order.Price * order.DetailList.Count; string _ServiceTime = ""; if (TrainingOrderBLL.Instance.Add(order)) { if (order.DetailList != null) { foreach (var item in order.DetailList) { TrainingOrderDetailEntity detail = new TrainingOrderDetailEntity(); detail.TrainingOrderDetailId = Util.Util.NewUpperGuid(); detail.ServiceTime = item.ServiceTime; detail.ServiceDate = item.ServiceDate; detail.TrainingOrderId = order.TrainingOrderId; if (item.SubritTimeType == (int)RCHL.Model.Enums.SubritFreeTimeStatus.自定义) { detail.SubritTimeType = (int)RCHL.Model.Enums.SubritFreeTimeStatus.自定义; } detail.TrainingFreeTimeId = item.TrainingFreeTimeId == "-1" ? Util.Util.NewUpperGuid() : item.TrainingFreeTimeId; if (TrainingOrderDetailBLL.Instance.Add(detail)) { _ServiceTime += detail.ServiceTime + ","; //修改预约时间状态 TrainingFreeTimeEntity freetime = new TrainingFreeTimeEntity(); freetime.TrainingFreeTimeId = detail.TrainingFreeTimeId; freetime.FreeStatus = (int)RCHL.Model.Enums.FreeTimeStatus.已预约; TrainingFreeTimeBLL.Instance.Update(freetime); //插入自定义时间段 if (item.SubritTimeType == (int)RCHL.Model.Enums.SubritFreeTimeStatus.自定义) { TrainingCustomFreeTimeBLL.Instance.Add(new TrainingCustomFreeTimeEntity() { TrainingCustomFreeTimeId = detail.TrainingFreeTimeId,// TrainingFreeDateId = item.FreedateId, TimeSection = item.ServiceTime }); } } } } } if (issend == "1") { //发送短信提醒 string servicetime = string.Format("{0} {1}", DateTime.Parse(order.ServiceDate.ToString()).ToString("yyyy-MM-dd"), _ServiceTime.TrimEnd(',')); string txt = string.Format("考场实训,预约考场:{0},预约车辆:{1}请您提前30分钟到达办理相关手续", order.SchoolName, order.TrainingCarName + order.TrainingCarNumber); SendSmsMessageBLL.SendSubricNotice(order.MemberId, order.MemberMobile, order.MemberName, servicetime, txt, order.TrainingOrderNo); } } return(Success("创建成功")); } catch (Exception ex) { ex.Data["Method"] = "TrainingOrderController>>Register"; new ExceptionHelper().LogException(ex); return(Error("保存失败")); } }