public JsonResult IsLahei(string resId, string supplier, int?dataState) { if (dataState != OrderState.SCHEDULEDSUCCESS) { //先判断是否加载餐厅管理平台黑名单餐厅,再判断餐厅是否被拉黑 if (WebConfigHandler.IsLoadRestaurantData == "1") { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); string alertMessage = "此餐厅已下线,请您重新选择其他餐厅。"; var resLaheiLIst = baseDataChannel.LoadRestaurantState(); var lahei = resLaheiLIst.Where(p => p.ResId == resId && p.Status == 0); //if (lahei == null || lahei.Count() == 0) //{ // return Json(new { state = 0, txt = alertMessage }); //} //else //{ // lahei = lahei.Where(x => x.Status == 0); //} if (lahei.Count() > 0) { return(Json(new { state = 0, txt = alertMessage })); } } } return(Json(new { state = 1, data = "" })); }
public ActionResult SendTime(string formenu, string supplier, string changeOrder, string restaurantId, string businessHourStart, string businessHourEnd, string eveningHourStart, string eveningHourEnd, int?dataState, string changeSendTime, string restaurantName, string orderCreateDate) { ViewBag.isForMenu = formenu == "1"; ViewBag.hospitalId = PreApproval.HospitalAddressCode; ViewBag.meetingTime = String.Format("{0:yyyy-MM-dd HH:mm:ss}", PreApproval.MeetingDate); ViewBag.supplier = supplier; ViewBag.isChange = changeOrder == "1"; ViewBag.restaurantId = restaurantId; ViewBag.businessHourStart = businessHourStart; ViewBag.businessHourEnd = businessHourEnd; ViewBag.eveningHourStart = eveningHourStart; ViewBag.eveningHourEnd = eveningHourEnd; ViewBag.changeSendTime = changeSendTime; ViewBag.dataState = dataState != null? dataState:0; var channelBase = BaseDataClientChannelFactory.GetChannel(); var channelUser = UserInfoClientChannelFactory.GetChannel(); var userInfo = channelUser.FindByUserId(CurrentWxUser.UserId); var listGroup = channelBase.LoadUserGroup(CurrentWxUser.UserId).Select(a => a.GroupType).ToArray(); if (listGroup.Contains(GroupType.ServPause)) { userInfo.IsServPause = 1; } ViewBag.IsServPause = CurrentWxUser.IsServPause; ViewBag.restaurantName = restaurantName; return(View()); }
public JsonResult FindMeeting(string code) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listMeeting = baseDataChannel.FindMeeting(code); return(Json(new { state = 1, data = listMeeting })); }
public JsonResult LoadNextHoliday() { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var holiday = baseDataChannel.FindNextRange(DateTime.Now); return(Json(new { state = 1, data = new { holiday = holiday, now = DateTime.Now.Date } })); }
public ActionResult ChoosePreApproval() { WeChatOrderInfo = null; ChangeOrderID = null; var preApprovalClient = PreApprovalClientChannelFactory.GetChannel(); var userId = CurrentWxUser.UserId; var channelBase = BaseDataClientChannelFactory.GetChannel(); var channelUser = UserInfoClientChannelFactory.GetChannel(); var userInfo = channelUser.FindByUserId(userId); var listGroup = channelBase.LoadUserGroup(userId).Select(a => a.GroupType).ToArray(); if (listGroup.Contains(GroupType.ServPause)) { userInfo.IsServPause = 1; } var listHTCode = preApprovalClient.LoadHTCode(userId); //判断当前时间是否在可订当日单时间范围 var channel = BaseDataClientChannelFactory.GetChannel(); var config = channel.GetTimeConfig(); DateTime timeNow = DateTime.Now; if (!(DateTime.Compare(Convert.ToDateTime(config._4_2_ThatDayCanOrderMealTimeEnd), timeNow) >= 0)) { listHTCode = listHTCode.Where(p => p.MeetingDate.Value.Day != timeNow.Day).ToList(); } CurrentWxUser = userInfo; ViewBag.listHTCode = listHTCode; ViewBag.IsServPause = CurrentWxUser.IsServPause; return(View()); }
public JsonResult CalculateFee(string hospitalId, string resId, FoodRequest[] foods, string supplier, int?dataState, string sendTime) { //var openApiChannel = OpenApiChannelFactory.GetChannel(); //var res = openApiChannel.calculateFee(hospitalId, resId, foods); if (dataState != OrderState.SCHEDULEDSUCCESS) { //先判断是否加载餐厅管理平台黑名单餐厅,再判断餐厅是否被拉黑 if (WebConfigHandler.IsLoadRestaurantData == "1") { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); //var resLaheiLIst = baseDataChannel.LoadRestaurantState(); //var lahei = resLaheiLIst.Where(p => p.ResId == resId); string alertMessage = "此餐厅已下线,请您重新选择其他餐厅。"; var resLaheiLIst = baseDataChannel.LoadRestaurantState(); var lahei = resLaheiLIst.Where(p => p.ResId == resId && p.Status == 0); //if (lahei == null || lahei.Count() == 0) //{ // return Json(new { state = 0, txt = alertMessage }); //} //else //{ // lahei = lahei.Where(x => x.Status == 0); //} if (lahei.Count() > 0) { return(Json(new { state = 0, txt = alertMessage })); } } } var foodList = new List <iPathFeast.ApiEntity.Food>(); foreach (var item in foods) { foodList.Add(new iPathFeast.ApiEntity.Food() { foodId = item.foodId, foodName = item.foodName, count = Convert.ToInt32(item.count), }); } var req = new CalcFeeReq() { _Channels = supplier, resId = resId, hospitalId = PreApproval.HospitalAddressCode, longitude = WeChatOrderInfo.hospital.Latitude, latitude = WeChatOrderInfo.hospital.Longitude, phone = "", foods = foodList, sendTime = sendTime }; var res = apiClient.CalcFee(req); if (res != null) { return(Json(new { state = 1, data = res })); } return(Json(new { state = 0, txt = "预算餐费失败!", errCode = 9014 })); }
public ActionResult ResList(string formenu, string supplier, string changeOrder) { ViewBag.isForMenu = formenu == "1"; //20200211 if (ViewBag.isForMenu == false) { ViewBag.sendTime = ""; } ViewBag.hospitalId = HospitalInfo.addressCode; ViewBag.supplier = supplier; ViewBag.isChange = changeOrder == "1"; //ViewBag.hospitalId = "64942"; var channelBase = BaseDataClientChannelFactory.GetChannel(); var channelUser = UserInfoClientChannelFactory.GetChannel(); var userInfo = channelUser.FindByUserId(CurrentWxUser.UserId); var listGroup = channelBase.LoadUserGroup(CurrentWxUser.UserId).Select(a => a.GroupType).ToArray(); if (listGroup.Contains(GroupType.ServPause)) { userInfo.IsServPause = 1; } ViewBag.IsServPause = CurrentWxUser.IsServPause; return(View()); }
public JsonResult FindCity(int cityId) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var city = baseDataChannel.FindCity(cityId); return(Json(new { state = 1, data = city })); }
/// <summary> /// 根据market获取TA /// </summary> /// <param name="marketName"></param> /// <returns></returns> public JsonResult LoadTa(string Market, string UserId) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var res = baseDataChannel.LoadTACodeByMarketAndUser(Market, UserId); return(Json(new { state = 1, data = res })); }
/// <summary> /// 页面Js权限注入 /// </summary> /// <param name="url"></param> /// <param name="debug"></param> /// <returns></returns> public ActionResult QyConfigJs(string url, string debug) { LogHelper.Info("url:" + url); string noncestr = Guid.NewGuid().ToString(); string timestamp = DateTimeHelper.NowToJavaTimeMillis().ToString(); var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var ticket = baseDataChannel.GetJsApiTicket(); LogHelper.Info("ticket=" + ticket.Signature); if (DateTime.Compare(ticket.Timestamp, DateTime.Now) > 0) { string[] brr = new string[] { "noncestr=" + noncestr, "jsapi_ticket=" + ticket.Signature, "timestamp=" + timestamp, "url=" + url }; Array.Sort(brr); string p1 = string.Join("&", brr); string signature = SHA1Helper.SHA1_Hash(p1); ViewBag.debug = debug; ViewBag.appId = GlobalHandler.QyApiHandler.wxConfigManager.CorpID; ViewBag.noncestr = noncestr; ViewBag.timestamp = timestamp; ViewBag.url = url; ViewBag.signature = signature; } else { //string signature = GlobalHandler.QyApiHandler.GetJsapiSignature(noncestr, timestamp, url); var jsap_ticket = GlobalHandler.QyApiHandler.Get_jsapi_ticket(); baseDataChannel.UpdateJsApiTicket(jsap_ticket.ticket, DateTime.Now.AddSeconds(7200).ToString()); string[] arr = new string[] { "noncestr=" + noncestr, "jsapi_ticket=" + jsap_ticket.ticket, "timestamp=" + timestamp, "url=" + url }; Array.Sort(arr); string p1 = string.Join("&", arr); string signature = SHA1Helper.SHA1_Hash(p1); ViewBag.debug = debug; ViewBag.appId = GlobalHandler.QyApiHandler.wxConfigManager.CorpID; ViewBag.noncestr = noncestr; ViewBag.timestamp = timestamp; ViewBag.url = url; ViewBag.signature = signature; } return(View()); }
public ActionResult ChooseCN() { var nowDate = DateTime.Now.AddMonths(-1).ToString("yyyy-MM-dd HH:mm:ss"); var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listMeeting = baseDataChannel.LoadMeeting(CurrentWxUser.UserId, nowDate); ViewBag.listMeeting = listMeeting; ViewBag.P_ChooseHospital = HospitalInfo; return(View()); }
public JsonResult LoadHospital(int cityId, string market, string userid, string TA) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listHospital = baseDataChannel.LoadHospital(cityId, market, TA); //if (CurrentWxUser.TerritoryCode != null && CurrentWxUser.TerritoryCode != "") //{ // listHospital = baseDataChannel.LoadHospitalByTaUser(cityId, market, CurrentWxUser.UserId, CurrentWxUser.TerritoryCode); //} return(Json(new { state = 1, rows = listHospital })); }
public JsonResult LoadCity(int provinceId, string Type, string TA) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listCity = baseDataChannel.LoadCity(provinceId, Type, TA); //if (CurrentWxUser.TerritoryCode != null && CurrentWxUser.TerritoryCode != "") //{ // listCity = baseDataChannel.LoadCityByHos(provinceId, Type, CurrentWxUser.UserId, CurrentWxUser.TerritoryCode); //} return(Json(new { state = 1, rows = listCity })); }
public JsonResult LoadProvince(string Type, string TA) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listProvince = baseDataChannel.LoadProvince(Type, TA); //if (CurrentWxUser.TerritoryCode != null && CurrentWxUser.TerritoryCode != "") //{ // listProvince = baseDataChannel.LoadProvinceByHos(Type, CurrentWxUser.UserId); //} return(Json(new { state = 1, rows = listProvince })); }
public JsonResult LoadTA(string market) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listTA = baseDataChannel.LoadTAByMarket(market); //if (CurrentWxUser.TerritoryCode != null && CurrentWxUser.TerritoryCode != "") //{ // listTA = baseDataChannel.LoadTAByMarketUserId(market, CurrentWxUser.UserId); //} return(Json(new { state = 1, rows = listTA })); }
/// <summary> /// 根据医院编码搜索医院 /// </summary> /// <param name="keyword"></param> /// <param name="province"></param> /// <param name="city"></param> /// <param name="market"></param> /// <param name="userid"></param> /// <returns></returns> public JsonResult SearchHospitalByCode(string keyword, int province, int city, string market, string TA) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listHospital = baseDataChannel.SearchHospitalByCode(keyword, province, city, market, TA); //if (CurrentWxUser.TerritoryCode != null && CurrentWxUser.TerritoryCode != "") //{ // listHospital = baseDataChannel.SearchHospitalByCodeTA(keyword, province, city, market, CurrentWxUser.UserId, CurrentWxUser.TerritoryCode); //} return(Json(new { state = 1, rows = listHospital })); }
public ActionResult ChooseHospital() { SetResponseFlag(); // 标记当前是新单 ChangeOrderID = null; OrderInfo = null; var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listMarket = baseDataChannel.LoadMarket(); var channelUser = UserInfoClientChannelFactory.GetChannel(); var channelBase = BaseDataClientChannelFactory.GetChannel(); var userId = CurrentWxUser.UserId; var userInfo = channelUser.FindByUserId(userId); if (userInfo == null) { userInfo = new P_USERINFO() { UserId = userId }; } if (userInfo.IsCheckedStatement == 0) { return(RedirectToAction("Statement", "Other")); } var listGroup = channelBase.LoadUserGroup(userId).Select(a => a.GroupType).ToArray(); if (listGroup.Contains(GroupType.ServPause)) { userInfo.IsServPause = 1; } if (listGroup.Contains(GroupType.OutSideHT)) { userInfo.IsOutSideHT = 1; } CurrentWxUser = userInfo; var market = CurrentWxUser.Market; market = market ?? ""; ViewBag.Market = market; ViewBag.listMarket = listMarket.Where(a => a.Name == market).ToList(); ViewBag.IsServPause = CurrentWxUser.IsServPause; ViewBag.IsOutSideHT = CurrentWxUser.IsOutSideHT; ViewBag.CurrentUserId = CurrentWxUser.UserId; return(View()); }
public JsonResult FindRestaurant(string hospitalId, string restaurantId, string supplier, int?dataState, string sendTime) { //var openApiChannel = OpenApiChannelFactory.GetChannel(); //var res = openApiChannel.queryResFood(restaurantId); if (dataState != OrderState.SCHEDULEDSUCCESS) { //先判断是否加载餐厅管理平台黑名单餐厅,再判断餐厅是否被拉黑 if (WebConfigHandler.IsLoadRestaurantData == "1") { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); //var resLaheiLIst = baseDataChannel.LoadRestaurantState(); //var lahei = resLaheiLIst.Where(p => p.ResId == restaurantId); string alertMessage = "此餐厅已下线,请您重新选择其他餐厅。"; var resLaheiLIst = baseDataChannel.LoadRestaurantState(); var lahei = resLaheiLIst.Where(p => p.ResId == restaurantId && p.Status == 0); //if (lahei == null || lahei.Count() == 0) //{ // return Json(new { state = 0, txt = alertMessage }); //} //else //{ // lahei = lahei.Where(x => x.Status == 0); //} if (lahei.Count() > 0) { return(Json(new { state = 0, txt = alertMessage })); } } } var req = new LoadMenuReq() { _Channels = supplier, resId = restaurantId, resName = "", hospitalId = hospitalId, sendTime = sendTime }; var res = apiClient.LoadMenu(req); if (res != null) { return(Json(new { state = 1, data = res })); } return(Json(new { state = 0, txt = "操作失败!", errCode = 9008 })); }
public JsonResult _ChooseHospital(P_ChooseHospital entity) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var listMarket = baseDataChannel.LoadMarket(); var hospitalChannel = HospitalClientChannelFactory.GetChannel(); var Hospital = hospitalChannel.FindByCode(entity.addressCode); var market = listMarket.First(a => a.Name == entity.market); entity.hospital = Hospital.GskHospital; entity.invoiceTitle = market.InvoiceTitle; entity.dutyParagraph = market.DutyParagraph; entity.isExternal = Hospital.External; entity.longitude = Hospital.Longitude; entity.latitude = Hospital.Latitude; entity.addressCode = Hospital.HospitalCode; HospitalInfo = entity; return(Json(new { state = 1 })); }
//更新会议信息 public void ChangeMeeting(string code) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var meeting = baseDataChannel.FindMeeting(code); OrderInfo.meeting = new P_Meeting() { code = meeting.Code, title = meeting.Title, budgetTotal = meeting.BudgetTotal, submittedDate = meeting.SubmittedDate, approvedDate = meeting.ApprovedDate, status = meeting.Status, pendingWith = meeting.PendingWith, userId = meeting.UserId, userName = meeting.UserId }; }
public JsonResult _ChooseCN(string code) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var meeting = baseDataChannel.FindMeeting(code); OrderInfo.CnCode = code; OrderInfo.meeting = new P_Meeting() { code = meeting.Code, title = meeting.Title, budgetTotal = meeting.BudgetTotal, submittedDate = meeting.SubmittedDate, approvedDate = meeting.ApprovedDate, status = meeting.Status, pendingWith = meeting.PendingWith, userId = meeting.UserId, userName = meeting.UserId }; return(Json(new { state = 1 })); }
/// <summary> /// 加载时间配置 /// </summary> /// <returns></returns> public ActionResult Time() { var channel = BaseDataClientChannelFactory.GetChannel(); var config = channel.GetTimeConfig(); config._3_1_SysWorkTimeBegin = TimeFormatter(config._3_1_SysWorkTimeBegin); config._3_2_SysWorkTimeEnd = TimeFormatter(config._3_2_SysWorkTimeEnd); config._4_1_ThatDayCanOrderMealTimeBegin = TimeFormatter(config._4_1_ThatDayCanOrderMealTimeBegin); config._4_2_ThatDayCanOrderMealTimeEnd = TimeFormatter(config._4_2_ThatDayCanOrderMealTimeEnd); config._5_1_ThatDayCanSendMealTimeBegin = TimeFormatter(config._5_1_ThatDayCanSendMealTimeBegin); config._5_2_ThatDayCanSendMealTimeEnd = TimeFormatter(config._5_2_ThatDayCanSendMealTimeEnd); config._6_1_NotThatDayCanSendMealTimeBegin = TimeFormatter(config._6_1_NotThatDayCanSendMealTimeBegin); config._6_2_NotThatDayCanSendMealTimeEnd = TimeFormatter(config._6_2_NotThatDayCanSendMealTimeEnd); config._11_1_SysOperableTimeBegin = TimeFormatter(config._11_1_SysOperableTimeBegin); config._11_2_SysOperableTimeEnd = TimeFormatter(config._11_2_SysOperableTimeEnd); config._12_1_PreApprovalCanApplyMeetingTimeSpanBegin = TimeFormatter(config._12_1_PreApprovalCanApplyMeetingTimeSpanBegin); config._12_2_PreApprovalCanApplyMeetingTimeSpanEnd = TimeFormatter(config._12_2_PreApprovalCanApplyMeetingTimeSpanEnd); config._13_1_PreApprovalNextWorkDaySendTimeSpanBegin = TimeFormatter(config._13_1_PreApprovalNextWorkDaySendTimeSpanBegin); config._13_2_PreApprovalNextWorkDaySendTimeSpanEnd = TimeFormatter(config._13_2_PreApprovalNextWorkDaySendTimeSpanEnd); config._14_1_PreWorkTimeSpanBegin = TimeFormatter(config._14_1_PreWorkTimeSpanBegin); config._14_2_PreWorkTimeSpanEnd = TimeFormatter(config._14_2_PreWorkTimeSpanEnd); config._15_1_PreOperableTimeSpanBegin = TimeFormatter(config._15_1_PreOperableTimeSpanBegin); config._15_2_PreOperableTimeSpanEnd = TimeFormatter(config._15_2_PreOperableTimeSpanEnd); config._16_1_UploadWorkTimeSpanBegin = TimeFormatter(config._16_1_UploadWorkTimeSpanBegin); config._16_2_UploadWorkTimeSpanEnd = TimeFormatter(config._16_2_UploadWorkTimeSpanEnd); config._17_1_UploadOperableTimeSpanBegin = TimeFormatter(config._17_1_UploadOperableTimeSpanBegin); config._17_2_UploadOperableTimeSpanEnd = TimeFormatter(config._17_2_UploadOperableTimeSpanEnd); config._18_1_AddAddressTimeSpanBegin = TimeFormatter(config._18_1_AddAddressTimeSpanBegin); config._18_2_AddAddressTimeSpanEnd = TimeFormatter(config._18_2_AddAddressTimeSpanEnd); config._19_1_ResubmitAddressTimeSpanBegin = TimeFormatter(config._19_1_ResubmitAddressTimeSpanBegin); config._19_2_ResubmitAddressTimeSpanEnd = TimeFormatter(config._19_2_ResubmitAddressTimeSpanEnd); config._20_1_UpdateAddressTimeSpanBegin = TimeFormatter(config._20_1_UpdateAddressTimeSpanBegin); config._20_2_UpdateAddressTimeSpanEnd = TimeFormatter(config._20_2_UpdateAddressTimeSpanEnd); var _7_OrderingBufferMin = TimeFormatter($"0:{config._7_OrderingBufferMin}"); ViewBag._7_OrderingBufferMin = _7_OrderingBufferMin; return(View(config)); }
public ActionResult List(string formenu, string supplier, string changeOrder, string sendTime, string changeSendTime) { ViewBag.isForMenu = formenu == "1"; //20200214 if (ViewBag.isForMenu == false && (sendTime == "" || sendTime == null)) { ViewBag.sendTime = ""; } else { ViewBag.sendTime = sendTime; } ViewBag.hospitalId = PreApproval.HospitalAddressCode; ViewBag.supplier = supplier; ViewBag.isChange = changeOrder == "1"; ViewBag.changeSendTime = changeSendTime; ViewBag.restaurantId = ""; ViewBag.restaurantName = ""; if (changeOrder == "1") { var channelOrder = OrderApiClientChannelFactory.GetChannel(); var res = channelOrder.FindOrderByCN(PreApproval.HTCode); ViewBag.restaurantId = res.RestaurantId; ViewBag.restaurantName = res.RestaurantName; } //ViewBag.hospitalId = "64942"; var channelBase = BaseDataClientChannelFactory.GetChannel(); var channelUser = UserInfoClientChannelFactory.GetChannel(); var userInfo = channelUser.FindByUserId(CurrentWxUser.UserId); var listGroup = channelBase.LoadUserGroup(CurrentWxUser.UserId).Select(a => a.GroupType).ToArray(); if (listGroup.Contains(GroupType.ServPause)) { userInfo.IsServPause = 1; } ViewBag.IsServPause = CurrentWxUser.IsServPause; return(View()); }
public bool CheckApproveStep(string userid, string TA) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var preApprovalChannel = PreApprovalClientChannelFactory.GetChannel(); bool result = false; bool flag = preApprovalChannel.HasApproveByTA(userid, TA); if (flag) { return(true); } for (int i = 0; i < 6; i++) { var pre = baseDataChannel.GetNameUserId(userid); if (string.IsNullOrEmpty(pre.CurrentApproverMUDID) || pre == null) { result = false; break; } else { userid = pre.CurrentApproverMUDID; } bool flag1 = preApprovalChannel.HasApproveByTA(userid, TA); if (flag1) { result = true; break; } else { continue; } } return(result); }
public JsonResult IsOnLine(string RestaurantId) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var resstatelist = baseDataChannel.LoadRestaurantState(); var isCurrentDisable = resstatelist.Any(p => p.ResId == RestaurantId); if (!isCurrentDisable) { return(Json(new { state = 0 })); } else { var status = resstatelist.Where(x => x.ResId == RestaurantId && x.Status == 0); if (status != null && status.Count() > 0) { return(Json(new { state = 0 })); } else { return(Json(new { state = 1 })); } } }
public JsonResult OrderFeeChange() { try { StreamReader reader = new StreamReader(Request.InputStream); var req = reader.ReadToEnd(); LogHelper.Info(req); OrderFeeChangeCallBack request = JsonConvert.DeserializeObject <OrderFeeChangeCallBack>(req); var channel = OrderApiClientChannelFactory.GetChannel(); var res = request.requestData; var order = channel.FindByXmlOrderId(res.supplierOrderId); var detail = (JObject)JsonConvert.DeserializeObject(order.Detail); var timeNow = DateTime.Now; #region 判断是否超预算 var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var cBudget = baseDataChannel.FindCityBudget(order.HospitalId); if (cBudget.IsOut == 0) { if (res.totalFee / order.AttendCount > 60) { LogHelper.Info("code=802"); return(Json(new { code = 802, message = "人均实际金额超过60元" })); } } else { if (string.IsNullOrEmpty(cBudget.CityName)) { if (res.totalFee / order.AttendCount > 100) { LogHelper.Info("code=802"); return(Json(new { code = 802, message = "人均实际金额超过100元" })); } } //一二线城市 else { if (res.totalFee / order.AttendCount > 150) { LogHelper.Info("code=802"); return(Json(new { code = 802, message = "人均实际金额超过150元" })); } } } #endregion if (timeNow > DateTime.Parse(detail["details"]["deliverTime"].ToString())) { LogHelper.Info("code=803"); return(Json(new { code = 803, message = "修改实际金额时间超过送餐时间" })); } else if (res.totalFee > decimal.Parse(detail["preApproval"]["BudgetTotal"].ToString())) { LogHelper.Info("code=801"); return(Json(new { code = 801, message = "实际金额大于会议预算金额" })); } else if (res.totalFee > order.TotalPrice) { LogHelper.Info("code=804"); return(Json(new { code = 804, message = "实际金额大于会议预定金额" })); } //else if (res.totalFee / order.AttendCount > 60) //{ // LogHelper.Info("code=802"); // return Json(new { code = 802, message = "人均实际金额超过60元" }); //} else { int result = channel.XmsChangeTotalFee(res.supplierOrderId, res.totalFee, res.remark); if (result > 0) { if (order.IsNonHT == 0) { WxMessageHandler.GetInstance().SendMessageToUserForChangeFee(res.supplierOrderId); } else { WxMessageHandler.GetInstance().SendNonHTMessageToUserForChangeFee(res.supplierOrderId); } LogHelper.Info("code=200"); return(Json(new { code = 200, message = "ok" })); } else { LogHelper.Info("数据库连接超时,更改订单金额失败,code=500"); return(Json(new { code = 500, message = "fail" })); } } } catch (Exception exp) { LogHelper.Error("Exception OrderFeeChange", exp); return(Json(new { code = 500, message = "error" })); } }
/// <summary> /// 返回JsApi配置参数 /// </summary> /// <param name="url"></param> /// <returns></returns> public JsonResult QyConfig(string url) { LogHelper.Info("url=" + url); string noncestr = Guid.NewGuid().ToString(); string timestamp = DateTimeHelper.NowToJavaTimeMillis().ToString(); //string signature = GlobalHandler.QyApiHandler.GetJsapiSignature(noncestr, timestamp, url); var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var ticket = baseDataChannel.GetJsApiTicket(); if (DateTime.Compare(ticket.Timestamp, DateTime.Now) > 0) { string[] arr = new string[] { "noncestr=" + noncestr, "jsapi_ticket=" + ticket, "timestamp=" + timestamp, "url=" + url }; Array.Sort(arr); string p1 = string.Join("&", arr); string signature = SHA1Helper.SHA1_Hash(p1); return(Json( new { state = 1, config = new { appId = GlobalHandler.QyApiHandler.wxConfigManager.CorpID, timestamp = timestamp, nonceStr = noncestr, signature = signature } })); } else { var jsap_ticket = GlobalHandler.QyApiHandler.Get_jsapi_ticket(); baseDataChannel.UpdateJsApiTicket(jsap_ticket.ticket, DateTime.Now.AddSeconds(7200).ToString()); string[] arr = new string[] { "noncestr=" + noncestr, "jsapi_ticket=" + jsap_ticket.ticket, "timestamp=" + timestamp, "url=" + url }; Array.Sort(arr); string p1 = string.Join("&", arr); string signature = SHA1Helper.SHA1_Hash(p1); return(Json( new { state = 1, config = new { appId = GlobalHandler.QyApiHandler.wxConfigManager.CorpID, timestamp = timestamp, nonceStr = noncestr, signature = signature } })); } }
/// <summary> /// 判断是否超出预算 /// </summary> /// <param name="cityID"></param> /// <returns></returns> public JsonResult IsSubmit(string hospitalId, decimal budget, int attendance, int state) { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var res = baseDataChannel.FindCityBudget(hospitalId); var mss = ""; //院内会 if (res.IsOut == 0) { if (budget / attendance > 60) { if (state == 1) { mss = "您的预申请已超出人均60元标准,请修改预申请"; } else { mss = "您的订单已超出人均60元标准,请修改订单"; } return(Json(new { state = 1, data = false, txt = mss })); } else if (budget > 0 && budget / attendance <= 1) { mss = "您的订单人均<=1元,请修改订单"; return(Json(new { state = 1, data = false, txt = mss })); } return(Json(new { state = 1, data = true })); } //院外会 else { //非一二线城市 if (string.IsNullOrEmpty(res.CityName)) { if (budget / attendance > 100) { if (state == 1) { mss = "您的预申请已超出人均100元标准,请修改预申请"; } else { mss = "您的订单已超出人均100元标准,请修改订单"; } return(Json(new { state = 1, data = false, txt = mss })); } else if (budget > 0 && budget / attendance <= 1) { mss = "您的订单人均<=1元,请修改订单"; return(Json(new { state = 1, data = false, txt = mss })); } return(Json(new { state = 1, data = true })); } //一二线城市 else { if (budget / attendance > 150) { if (state == 1) { mss = "您的预申请已超出人均150元标准,请修改预申请"; } else { mss = "您的订单已超出人均150元标准,请修改订单"; } return(Json(new { state = 1, data = false, txt = mss })); } else if (budget > 0 && budget / attendance <= 1) { mss = "您的订单人均<=1元,请修改订单"; return(Json(new { state = 1, data = false, txt = mss })); } return(Json(new { state = 1, data = true })); } } }
/// <summary> /// 判断是否超出预算 /// </summary> /// <param name="cityID"></param> /// <returns></returns> public JsonResult IsBindRes(string hospitalId) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("zh-cn"); var channel = HospitalClientChannelFactory.GetChannel(); var hospital = channel.FindByCode(hospitalId); if (hospital == null || string.IsNullOrEmpty(hospital.Name)) { return(Json(new { state = 1, data = false, txt = "该目标医院暂不支持送餐服务,是否继续?" })); } //var openApiChannel = OpenApiChannelFactory.GetChannel(); //var res = openApiChannel.queryRes(hospital.ID.ToString(), hospital.Address, hospital.Latitude, hospital.Longitude); //if (string.IsNullOrEmpty(supplier)) //{ // supplier = ""; //} var req = new SearchRestaurantReq() { _Channels = "", hospitalId = hospital.HospitalCode, address = hospital.Address, latitude = hospital.Latitude, longitude = hospital.Longitude, keyword = "" }; var res = apiClient.SearchRestaurant(req); if (res == null) { return(Json(new { state = 1, data = false, txt = "该目标医院暂不支持送餐服务,是否继续?" })); } res = res.OrderBy(a => a.resName).ToList(); #region 对接餐厅管理平台,排除黑名单餐厅 //比对黑名单数据,对接餐厅管理平台 if (WebConfigHandler.IsLoadRestaurantData == "1") { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var resstatelist = baseDataChannel.LoadRestaurantState(); var resstateResID = resstatelist.Select(x => x.ResId).ToList(); res = res.Where(x => resstateResID.Contains(x.resId) || x.resName.Contains("堂食")).ToList(); resstatelist = resstatelist.Where(p => p.Status == 0).ToList(); foreach (var item in resstatelist) { var inlist = res.FirstOrDefault(p => p.resId == item.ResId); if (inlist != null) { res.Remove(inlist); } } } #endregion //IComparer<SearchRestaurantRes> comparer = new Restaurant(); //res.Sort(comparer); if (res.Count > 0) { return(Json(new { state = 1, data = true })); } else { return(Json(new { state = 1, data = false, txt = "该目标医院暂不支持送餐服务,是否继续?" })); } }
public JsonResult LoadRestaurant(string hospitalId, string supplier, string sendTime) { System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("zh-cn"); var channel = HospitalClientChannelFactory.GetChannel(); var hospital = channel.FindByCode(hospitalId); if (hospital == null || string.IsNullOrEmpty(hospital.Name)) { return(Json(new { state = 0, txt = "载入餐厅列表数据失败!", errCode = 9013 })); } //var openApiChannel = OpenApiChannelFactory.GetChannel(); //var res = openApiChannel.queryRes(hospital.ID.ToString(), hospital.Address, hospital.Latitude, hospital.Longitude); if (string.IsNullOrEmpty(supplier)) { supplier = ""; } if (string.IsNullOrEmpty(sendTime)) { sendTime = ""; } var req = new SearchRestaurantReq() { _Channels = supplier, hospitalId = hospital.HospitalCode, address = hospital.Address, latitude = hospital.Latitude, longitude = hospital.Longitude, sendTime = sendTime, keyword = "" }; var res = apiClient.SearchRestaurant(req); if (res == null) { return(Json(new { state = 0, txt = "载入餐厅列表数据失败!", errCode = 9013 })); } res = res.OrderBy(a => a.resName).ToList(); #region 对接餐厅管理平台,排除黑名单餐厅 //比对黑名单数据,对接餐厅管理平台 try { if (WebConfigHandler.IsLoadRestaurantData == "1") { var baseDataChannel = BaseDataClientChannelFactory.GetChannel(); var resstatelist = baseDataChannel.LoadRestaurantState(); var resstateResID = resstatelist.Select(x => x.ResId).ToList(); res = res.Where(x => resstateResID.Contains(x.resId) || x.resName.Contains("堂食")).ToList(); resstatelist = resstatelist.Where(p => p.Status == 0).ToList(); foreach (var item in resstatelist) { var inlist = res.FirstOrDefault(p => p.resId == item.ResId); if (inlist != null) { res.Remove(inlist); } } } } catch (Exception e) { return(Json(new { state = 1, rows = e.Message })); } #endregion //IComparer<SearchRestaurantRes> comparer = new Restaurant(); //res.Sort(comparer); //20200221 修改订单修改餐厅过滤原餐厅 if (ChangeOrderID != null) { var channelOrder = OrderApiClientChannelFactory.GetChannel(); var list = channelOrder.FindOrderByCN(PreApproval.HTCode); string restaurantId = list.RestaurantId; var re = res.Where(a => a.resId != restaurantId).ToList(); return(Json(new { state = 1, rows = re })); } return(Json(new { state = 1, rows = res })); }