public static List <BxMessage> ConvertToViewModel(this List <bx_message> msgList) { List <BxMessage> list = new List <BxMessage>(); BxMessage msg; foreach (var item in msgList) { msg = new BxMessage(); msg.Id = item.Id; msg.MsgLevel = item.Msg_Level.HasValue ? item.Msg_Level.Value : 0; msg.MsgStatus = item.Msg_Status.HasValue ? item.Msg_Status.Value : 0; msg.MsgType = item.Msg_Type; msg.SendTime = item.Send_Time.HasValue ? item.Send_Time.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; msg.Title = item.Title; msg.Body = item.Body; msg.UpdateTime = item.Update_Time.HasValue ? item.Update_Time.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; msg.Url = item.Url; msg.AgentId = item.Agent_Id.HasValue ? item.Agent_Id.Value : 0; msg.CreateAgentId = item.Create_Agent_Id; msg.CreateTime = item.Create_Time.HasValue ? item.Create_Time.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; list.Add(msg); } return(list); }
public static List <BxMessage> ConvertToViewModel(this List <TableMessage> msgList) { List <BxMessage> list = new List <BxMessage>(); BxMessage msg; foreach (var item in msgList) { msg = new BxMessage(); msg.StrId = item.StrId; msg.Id = item.Id; msg.MsgLevel = item.Msg_Level; msg.MsgStatus = item.Msg_Status; msg.MsgType = item.Msg_Type; msg.SendTime = item.SendTime; msg.Title = item.Title; msg.Body = item.Body; msg.UpdateTime = item.Update_Time; msg.Url = item.Url; msg.AgentId = item.Agent_Id; msg.AgentName = item.AgentName; msg.CreateAgentId = item.Create_Agent_Id; msg.CreateAgentName = item.CreateAgentName; msg.CreateTime = item.Create_Time.ToString("yyyy-MM-dd HH:mm:ss"); msg.Buid = item.Buid.HasValue?item.Buid.Value:0; msg.LicenseNo = item.LicenseNo; msg.LastForceEndDate = item.Last_Force_End_Date; msg.LastBizEndDate = item.Last_Biz_End_Date; msg.NextForceStartDate = item.Last_Force_End_Date; msg.NextBizStartDate = item.Last_Biz_End_Date; msg.Source = item.Source.HasValue?item.Source.Value:0; msg.Days = item.Days.HasValue?item.Days.Value:0; msg.OwnerAgent = item.OwnerAgent.HasValue?item.OwnerAgent.Value:0; list.Add(msg); } return(list); }
public MessageListResponse MessageList(MessageListRequest request, IEnumerable <KeyValuePair <string, string> > pairs) { var response = new MessageListResponse(); //bhToken校验 if (!AppTokenValidateReqest(request.BhToken, request.ChildAgent)) { response.ErrCode = -300; response.ErrMsg = "登录信息已过期,请重新登录"; return(response); } IBxAgent agentModel = GetAgentModelFactory(request.Agent); //参数校验 if (!agentModel.AgentCanUse()) { response.ErrCode = -10001; response.ErrMsg = "参数校验错误,请检查您的校验码"; return(response); } if (!AppValidateReqest(pairs, request.SecCode)) { response.ErrCode = -10001; response.ErrMsg = "参数校验错误,请检查您的校验码"; return(response); } var msgList = new List <BxMessage>(); BxMessage bmsg; bx_agent bxAgent; bx_userinfo bxUserinfo; int totalmsg = 0; //消息表的记录数 int totalxb = 0; //续保表的记录数 int totalrw = 0; //回访通知表的记录数 //从bx_message里取数据 List <bx_message> listMsg = _messageRepository.FindNoReadList(request.ChildAgent, out totalmsg); //从bx_noticexb里取数据 List <bx_notice_xb> listXb = _noticexbRepository.FindNoReadList(request.ChildAgent, out totalxb); //从bx_consumer_review里取数据 List <bx_consumer_review> listRw = _consumerReviewRepository.FindNoReadList(request.ChildAgent, out totalrw); #region bx_message表数据 if (listMsg.Any()) { foreach (var itemMsg in listMsg) { bmsg = new BxMessage { StrId = "Msg_" + itemMsg.Id, Id = itemMsg.Id, MsgLevel = itemMsg.Msg_Level.HasValue ? itemMsg.Msg_Level.Value : 0, MsgStatus = itemMsg.Msg_Status.HasValue ? itemMsg.Msg_Status.Value : 0, MsgType = itemMsg.Msg_Type, SendTime = itemMsg.Send_Time.HasValue ? itemMsg.Send_Time.Value.ToString("yyyy-MM-dd HH:mm:ss") : "", Title = itemMsg.Title, Body = itemMsg.Body, UpdateTime = itemMsg.Update_Time.HasValue ? itemMsg.Update_Time.Value.ToString("yyyy-MM-dd HH:mm:ss") : "", Url = itemMsg.Url, AgentId = itemMsg.Agent_Id.HasValue ? itemMsg.Agent_Id.Value : 0 }; //Agent bxAgent = _agentRepository.GetAgent(bmsg.AgentId); bmsg.AgentName = bxAgent != null ? bxAgent.AgentName : ""; //CreateAgent bmsg.CreateAgentId = itemMsg.Create_Agent_Id; bxAgent = _agentRepository.GetAgent(bmsg.CreateAgentId); bmsg.CreateAgentName = bxAgent != null ? bxAgent.AgentName : ""; bmsg.CreateTime = itemMsg.Create_Time.HasValue ? itemMsg.Create_Time.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; if (itemMsg.Buid.HasValue) { bmsg.Buid = itemMsg.Buid.Value; bmsg.LicenseNo = itemMsg.License_No; bxUserinfo = new bx_userinfo(); bxUserinfo = _userInfoRepository.FindByBuid(itemMsg.Buid.Value); bmsg.OwnerAgent = bxUserinfo != null?int.Parse(bxUserinfo.Agent) : 0; } msgList.Add(bmsg); } } #endregion #region bx_noticexb表数据 if (listXb.Any()) { foreach (var itemXb in listXb) { bmsg = new BxMessage { StrId = "Xb_" + itemXb.id, Id = itemXb.id, MsgLevel = 1, MsgStatus = itemXb.stauts, MsgType = 1, SendTime = itemXb.create_time.ToString("yyyy-MM-dd HH:mm:ss"), Title = "到期通知", Body = string.Format("{0},车险{1}天后到期", itemXb.license_no, itemXb.day_num.Value.ToString()), UpdateTime = "", Url = "", AgentId = itemXb.agent_id }; //Agent bxAgent = _agentRepository.GetAgent(bmsg.AgentId); bmsg.AgentName = bxAgent != null ? bxAgent.AgentName : ""; //CreateAgent bmsg.CreateAgentId = itemXb.agent_id; bmsg.CreateAgentName = bxAgent != null ? bxAgent.AgentName : ""; bmsg.CreateTime = itemXb.create_time.ToString("yyyy-MM-dd HH:mm:ss"); bmsg.LicenseNo = itemXb.license_no; bmsg.LastForceEndDate = itemXb.last_force_end_date.HasValue ? itemXb.last_force_end_date.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; bmsg.LastBizEndDate = itemXb.Last_biz_end_date.HasValue ? itemXb.Last_biz_end_date.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; bmsg.NextForceStartDate = itemXb.next_force_start_date.HasValue ? itemXb.next_force_start_date.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; bmsg.NextBizStartDate = itemXb.next_biz_start_date.HasValue ? itemXb.next_biz_start_date.Value.ToString("yyyy-MM-dd HH:mm:ss") : ""; bmsg.Source = itemXb.source; bmsg.Days = itemXb.days.HasValue ? itemXb.days.Value : 0; bmsg.Buid = itemXb.b_uid; //根据buid获取当前的userinfo的agent,方便查看详情 bxUserinfo = new bx_userinfo(); bxUserinfo = _userInfoRepository.FindByBuid(itemXb.b_uid); bmsg.OwnerAgent = bxUserinfo != null?int.Parse(bxUserinfo.Agent) : 0; msgList.Add(bmsg); } } #endregion #region bx_consumer_review表数据 if (listRw.Any()) { foreach (var itemRw in listRw) { bmsg = new BxMessage { StrId = "Rw_" + itemRw.id, Id = itemRw.id, MsgLevel = 1, MsgStatus = itemRw.read_status.Value, MsgType = 2, SendTime = itemRw.create_time.Value.ToString("yyyy-MM-dd HH:mm:ss"), Title = "回访通知" }; if (itemRw.b_uid.HasValue) { bmsg.Buid = itemRw.b_uid.Value; bxUserinfo = new bx_userinfo(); bxUserinfo = _userInfoRepository.FindByBuid(itemRw.b_uid.Value); bmsg.LicenseNo = bxUserinfo != null ? bxUserinfo.LicenseNo : ""; bmsg.OwnerAgent = bxUserinfo != null?int.Parse(bxUserinfo.Agent) : 0; } DateTime dt = itemRw.next_review_date.Value; bmsg.Body = string.Format("{0}月{1}日{2} 需回访{3}", dt.Month, dt.Day, dt.ToString("hh:mm"), bmsg.LicenseNo); bmsg.UpdateTime = ""; bmsg.Url = ""; //Agent bmsg.AgentId = itemRw.operatorId.Value; bmsg.AgentName = itemRw.operatorName; //CreateAgent bmsg.CreateAgentId = itemRw.operatorId.Value; bmsg.CreateAgentName = itemRw.operatorName; bmsg.CreateTime = itemRw.create_time.Value.ToString("yyyy-MM-dd HH:mm:ss"); bmsg.Buid = itemRw.b_uid.Value; msgList.Add(bmsg); } } #endregion response.MsgList = msgList.OrderByDescending(o => o.CreateTime) .Take(request.PageSize * request.CurPage) .Skip(request.PageSize * (request.CurPage - 1)) .ToList(); response.TotalCount = totalmsg + totalxb + totalrw; return(response); }