/// <summary> /// 获取申请单用户信息 /// </summary> /// <param name="dbContext"></param> /// <param name="orderNo">批量申请Id</param> /// <returns></returns> public IList <OrderUserModel> GetOrderUsers(MissionskyOAEntities dbContext, int orderNo) { IList <OrderUserModel> users = new List <OrderUserModel>(); var orders = dbContext.Orders.Where(it => it.OrderNo == orderNo); orders.ToList().ForEach(order => { var user = dbContext.Users.FirstOrDefault(it => it.Id == order.UserId); if (user != null) { //用户信息 var orderUser = new OrderUserModel() { Id = order.UserId, OrderId = order.Id, UserName = user.EnglishName, Gender = user.Gender.HasValue ? (Gender)user.Gender.Value : Gender.Privacy, }; //部门信息 var dept = dbContext.Departments.FirstOrDefault(it => it.Id == user.DeptId); orderUser.DeptName = (dept == null ? string.Empty : dept.Name); //项目名称 var project = dbContext.Projects.FirstOrDefault(it => it.Id == user.ProjectId); orderUser.ProjectName = (project == null ? string.Empty : project.Name); users.Add(orderUser); } }); return(users); }
/// <summary> /// 获取申请单用户信息 /// /// </summary> /// <param name="dbContext"></param> /// <param name="userIds">申请单用户</param> /// <returns></returns> public IList <OrderUserModel> GetOrderUsers(MissionskyOAEntities dbContext, int[] userIds) { // 1、新建一个OrderUserModel的IList变量,用于返回 IList <OrderUserModel> users = new List <OrderUserModel>(); // 2、判断UserIds是否为空 if (userIds != null && userIds.Count() > 0) { /* * 此设计Lamda表达式的使用 * * **/ userIds.ToList().ForEach(userId => { // 3、获取申请用户 根据userId 从User表中 var user = dbContext.Users.FirstOrDefault(it => it.Id == userId); // 判断获取的user是否为空 if (user != null) { //用户信息 // 4、将User 转换为 OrderUserModel var orderUser = new OrderUserModel() { Id = userId, UserName = user.EnglishName, /* * 三目运算 和 枚举类型的实例使用 * * **/ Gender = user.Gender.HasValue ? (Gender)user.Gender.Value : Gender.Privacy, }; // 5、获取部门信息,并添加到OrderUserModel var dept = dbContext.Departments.FirstOrDefault(it => it.Id == user.DeptId); orderUser.DeptName = (dept == null ? string.Empty : dept.Name); // 6、获取 项目名称,并添加到OrderUserModel var project = dbContext.Projects.FirstOrDefault(it => it.Id == user.ProjectId); orderUser.ProjectName = (project == null ? string.Empty : project.Name); // 添加到IList<OrderuserModel>中 users.Add(orderUser); } }); } return(users); }
public override void OnLoad(HttpContext context) { base.OnLoad(context); requestBody = new RequestBody(); requestBody.accessToken = context.Request["accessToken"]; requestBody.oid = context.Request["oid"]; requestBody.action = Convert.ToInt32(context.Request["action"]); requestBody.amount = Convert.ToDecimal(context.Request["money"]); if (requestBody.accessToken == null || requestBody.accessToken.Trim().Length == 0 || requestBody.oid.Length == 0 || requestBody.action == 0) { SystemResponse.Output(SystemResponse.TYPE_NULLPARAMETER, out statusCode, out responseJson); } else if (requestBody.action == 2 && requestBody.amount == 0) { SystemResponse.Output(SystemResponse.TYPE_NULLPARAMETER, out statusCode, out responseJson); } else { //验证用户 TokenHelper token = new TokenHelper(); UserTokenModel userTokenModel = token.getUserToken(requestBody.accessToken); if (userTokenModel == null) { SystemResponse.Output(SystemResponse.TYPE_EXPIRE, out statusCode, out responseJson); } else { ModelAdo <OrderUserModel> modelAdo = new ModelAdo <OrderUserModel>(); //核对有没有供应商已抢单 OrderUserModel sendOrder = modelAdo.GetModel(" oid =?oid AND status=2", "", new MySqlParameter("?oid", requestBody.oid)); //核对供应商与订单状态 OrderUserModel model = modelAdo.GetModel("oid=?oid AND uid=?uid", "", new MySqlParameter("?oid", requestBody.oid), new MySqlParameter("?uid", userTokenModel.uid)); //数据是否存在派单中间表 if (model != null) { #region 供应商确认抢单【派单中间表已存在,并且订单状态为2,派单中】 if (2 == requestBody.action && sendOrder == null) { model.status = 2; model.amount = requestBody.amount; model.createTime = StringHelper.ConvertDateTimeInt(DateTime.Now); model.remark = "被供应商抢单的订单"; //修改订单状态为3,并录入相关抢单数据 ModelAdo <OrderModel> orderModelAdo = new ModelAdo <OrderModel>(); OrderModel orderModel = orderModelAdo.GetModel("id=?id", "", new MySqlParameter("?id", requestBody.oid) ); if (orderModel != null) { orderModel.ostatus = 3; orderModel.sendUid = Convert.ToInt32(userTokenModel.uid); orderModel.sendTime = model.createTime; orderModel.sendRemark = "供应商抢单并输入价格 【待处理订单】"; orderModel.sendAmount = model.amount; if (orderModelAdo.Update(orderModel) >= 1) { if (modelAdo.Update(model) >= 1) { SystemResponse.Output(SystemResponse.TYPE_OK, out statusCode, out responseJson); } else { SystemResponse.Output(SystemResponse.TYPE_ERROR, out statusCode, out responseJson); } } } else { SystemResponse.Output(SystemResponse.TYPE_ERROR, out statusCode, out responseJson); } } #endregion #region 用户退回订单 【派单中间表已存在,并且订单状态为3,待处理订单】 else if (3 == requestBody.action && sendOrder != null && sendOrder.uid == Convert.ToInt32(userTokenModel.uid)) { //修改订单状态为2,并清除相关抢单数据 ModelAdo <OrderModel> orderModelAdo = new ModelAdo <OrderModel>(); OrderModel orderModel = orderModelAdo.GetModel("id=?id", "", new MySqlParameter("?id", requestBody.oid) ); if (orderModel != null) { orderModel.ostatus = 2; orderModel.sendUid = 0; orderModel.sendTime = 0; orderModel.sendRemark = "供应商退回抢单【派单中】"; orderModel.sendAmount = 0; if (orderModelAdo.Update(orderModel) >= 1) { model.status = 3; model.remark = "被供应商退回的订单"; modelAdo.Update(model); SystemResponse.Output(SystemResponse.TYPE_OK, out statusCode, out responseJson); } else { SystemResponse.Output(SystemResponse.TYPE_NO_PERMISSON, out statusCode, out responseJson); } } else { SystemResponse.Output(SystemResponse.TYPE_ERROR, out statusCode, out responseJson); } } #endregion #region 其他操作 else { SystemResponse.Output(SystemResponse.TYPE_NO_PERMISSON, out statusCode, out responseJson); } #endregion } else { SystemResponse.Output(SystemResponse.TYPE_NO_PERMISSON, out statusCode, out responseJson); } } } }
public override void OnLoad(HttpContext context) { base.OnLoad(context); requestBody = new RequestBody(); requestBody.accessToken = context.Request["accessToken"]; requestBody.oid = context.Request["oid"]; requestBody.action = Convert.ToInt32(context.Request["action"]); if (requestBody.accessToken == null || requestBody.accessToken.Trim().Length == 0 || requestBody.oid.Length == 0 || requestBody.action == 0) { SystemResponse.Output(SystemResponse.TYPE_NULLPARAMETER, out statusCode, out responseJson); } else { //验证用户 TokenHelper token = new TokenHelper(); UserTokenModel userTokenModel = token.getUserToken(requestBody.accessToken); if (userTokenModel == null) { SystemResponse.Output(SystemResponse.TYPE_EXPIRE, out statusCode, out responseJson); } else { #region 客服取消供应商抢单数据、修改订单状态回派单中 if (requestBody.action == 2) { //获取当前订单信息 ModelAdo <OrderModel> modelAdo = new ModelAdo <OrderModel>(); OrderModel order = modelAdo.GetModel("id=?oid AND ostatus=?ostatus", "", new MySqlParameter("?oid", requestBody.oid), new MySqlParameter("?ostatus", 3)); if (order != null) { //获取派单供应商对应订单中间表数据 ModelAdo <OrderUserModel> ouModelAdo = new ModelAdo <OrderUserModel>(); OrderUserModel orderUser = ouModelAdo.GetModel("oid=?oid AND uid=?uid", "", new MySqlParameter("?oid", requestBody.oid), new MySqlParameter("?uid", order.sendUid)); orderUser.amount = 0; orderUser.remark = "被供应商退回抢单数据"; orderUser.createTime = 0; orderUser.status = 1; if (ouModelAdo.Update(orderUser) >= 1) { order.ostatus = 2; order.sendUid = 0; order.sendTime = 0; order.sendRemark = "被供应商退回抢单数据"; order.sendAmount = 0; if (modelAdo.Update(order) >= 1) { SystemResponse.Output(SystemResponse.TYPE_OK, out statusCode, out responseJson); } else { SystemResponse.Output(SystemResponse.TYPE_NULL, out statusCode, out responseJson); } } } else { SystemResponse.Output(SystemResponse.TYPE_NULL, out statusCode, out responseJson); } } #endregion #region 客服确认供应商抢单数据 else if (requestBody.action == 4) { //获取当前订单信息 ModelAdo <OrderModel> modelAdo = new ModelAdo <OrderModel>(); OrderModel order = modelAdo.GetModel("id=?oid AND ostatus=?ostatus", "", new MySqlParameter("?oid", requestBody.oid), new MySqlParameter("?ostatus", 3)); order.ostatus = 4; order.sendRemark = "客服确认供应商抢单数据"; if (order != null) { if (modelAdo.Update(order) >= 1) { //删除派单供应商对应订单中间表数据 ModelAdo <OrderUserModel> ouModelAdo = new ModelAdo <OrderUserModel>(); int delCount = ouModelAdo.ExecuteSql("DELETE FROM ct_order_user WHERE oid=?oid", new MySqlParameter("?oid", requestBody.oid)); if (delCount >= 1) { SystemResponse.Output(SystemResponse.TYPE_OK, out statusCode, out responseJson); } else { SystemResponse.Output(SystemResponse.TYPE_NULL, out statusCode, out responseJson); } } } else { SystemResponse.Output(SystemResponse.TYPE_NULL, out statusCode, out responseJson); } } #endregion #region 客服确认关闭已确认数据 else if (requestBody.action == 5) { //获取当前订单信息 ModelAdo <OrderModel> closeModelAdo = new ModelAdo <OrderModel>(); OrderModel closeOrder = closeModelAdo.GetModel("id=?oid AND ostatus=?ostatus", "", new MySqlParameter("?oid", requestBody.oid), new MySqlParameter("?ostatus", 4)); closeOrder.ostatus = 5; closeOrder.sendRemark = "客服确认完成订单数据"; if (closeOrder != null) { if (closeModelAdo.Update(closeOrder) >= 1) { SystemResponse.Output(SystemResponse.TYPE_OK, out statusCode, out responseJson); //删除派单供应商对应订单中间表数据 ModelAdo <OrderUserModel> ouModelAdo = new ModelAdo <OrderUserModel>(); int delCount = ouModelAdo.ExecuteSql("DELETE FROM ct_order_user WHERE oid=?oid", new MySqlParameter("?oid", requestBody.oid)); //if (delCount >= 1) //{ //} //else //{ //} } else { SystemResponse.Output(SystemResponse.TYPE_NULL, out statusCode, out responseJson); } } else { SystemResponse.Output(SystemResponse.TYPE_NULL, out statusCode, out responseJson); } } #endregion #region 其他 else { SystemResponse.Output(SystemResponse.TYPE_NULLPARAMETER, out statusCode, out responseJson); } #endregion } } }
public List <OrderUserModel> GetTable(DateTime chuumon_tsuki, String hinmoku_cd) { List <OrderUserModel> orderUser = new List <OrderUserModel>(); var dataTable = (from a in _dbContext.TtWebHatsuchuumeisai // from b in _dbContext.TtWebKanjounengetsu.Where(x => x.FEdiKanjounengetsuNo == a.FChuumonMeisaiNo).DefaultIfEmpty() from c in _dbContext.TtWebShiiresaki.Where(x => x.FShiiresakiCd == a.FShiiresakiCd).DefaultIfEmpty() select new { a.FEdiHatsuchuumeisaiId, c.FToiawaseTantoushaMei, c.FToiawaseTel, c.FToiawaseFax, a.FChuumonMeisaiJoutaiKubun, a.FChuumonHi, a.FChuumonNo, a.FChuumonMeisaiGyou, a.FSeiban, a.FHinmokuCd, a.FHinmokuMei, a.FKoubaiKishumei, a.FSaizuW, a.FSaizuH, a.FSaizuL, a.FShiyouJouhou, a.FShiyouBikou, a.FKibouNouki, a.FSuuryou, a.FTaniMei, a.FChuumonTanka, a.FChuumonKingaku, a.FShouhizeiKingaku, a.FNounyuusakiMei, a.FTanaban, a.FChuumonMeisaiBikou1, a.FJushinNichiji, a.FKakuninNichiji, a.FKoushinTaimusutanpu, a.FKoushinYuzaId, a.FKoushinKonpyutaMei, a.FKoushinKinouId, a.FKoushinKontororuNo, a.FBajon }).ToList(); foreach (var item in dataTable) { OrderUserModel term = new OrderUserModel(); term.f_chuumon_tsuki = chuumon_tsuki; term.f_edi_hatsuchuumeisai_id = item.FEdiHatsuchuumeisaiId; term.f_toiawase_tel = item.FToiawaseTel; term.f_toiawase_fax = item.FToiawaseFax; term.f_toiawase_tantousha_mei = item.FToiawaseTantoushaMei; term.f_chuumon_meisai_joutai_kubun = item.FChuumonMeisaiJoutaiKubun; term.f_chuumon_hi = item.FChuumonHi; term.f_chuumon_no = item.FChuumonNo; term.f_chuumon_meisai_gyou = item.FChuumonMeisaiGyou; term.f_seiban = item.FSeiban; term.f_hinmoku_cd = item.FHinmokuCd; term.f_hinmoku_mei = item.FHinmokuMei; term.f_koubai_kishumei = item.FKoubaiKishumei; term.f_saizu_w = item.FSaizuW; term.f_saizu_h = item.FSaizuH; term.f_saizu_l = item.FSaizuL; term.f_shiyou_jouhou = item.FShiyouJouhou; term.f_shiyou_bikou = item.FShiyouBikou; term.f_kibou_nouki = item.FKibouNouki; term.f_suuryou = item.FSuuryou; term.f_tani_mei = item.FTaniMei; term.f_chuumon_tanka = item.FChuumonTanka; term.f_chuumon_kingaku = item.FChuumonKingaku; term.f_shouhizei_kingaku = item.FShouhizeiKingaku; term.f_nounyuusaki_mei = item.FNounyuusakiMei; term.f_tanaban = item.FTanaban; term.f_chuumon_meisai_bikou1 = item.FChuumonMeisaiBikou1; term.f_jushin_nichiji = item.FJushinNichiji; term.f_kakunin_nichiji = item.FKakuninNichiji; term.f_koushin_taimusutanpu = item.FKoushinTaimusutanpu; term.f_koushin_yuza_id = item.FKoushinYuzaId; term.f_koushin_konpyuta_mei = item.FKoushinKonpyutaMei; term.f_koushin_kinou_id = item.FKoushinKinouId; term.f_koushin_kontororu_no = item.FKoushinKontororuNo; term.f_bajon = item.FBajon; orderUser.Add(term); } return(orderUser); }