/// <summary> /// 更新某个收货商信息对象. /// </summary> /// <param name="rec">收货商对象.</param> /// <returns>通过布尔类型判断操作是否成功.</returns> public bool updateReceiver(Model.Receiver rec) { string sqltext = "update receiver set receiverName=@receiverName,staffName=@staffName,contact=@contact,contactNumber=@contactNumber,receiverAddress=@receiverAddress,createTime=@createTime,updateTime=@updateTime where receiverNum=@receiverNum"; List <SqlParameter> para = new List <SqlParameter>(); SqlParameter sqlpara1 = new SqlParameter("@receiverNum", rec.ReceiverNum); SqlParameter sqlpara2 = new SqlParameter("@receiverName", rec.ReceiverName); SqlParameter sqlpara3 = new SqlParameter("@staffName", rec.StaffName); SqlParameter sqlpara4 = new SqlParameter("@contact", rec.Contact); SqlParameter sqlpara5 = new SqlParameter("@contactNumber", rec.ContactNumber); SqlParameter sqlpara6 = new SqlParameter("@receiverAddress", rec.ReceiverAddress); SqlParameter sqlpara7 = new SqlParameter("@createTime", rec.CreateTime.ToString()); SqlParameter sqlpara8 = new SqlParameter("@updateTime", rec.UpdateTime.ToString()); para.Add(sqlpara2); para.Add(sqlpara3); para.Add(sqlpara4); para.Add(sqlpara5); para.Add(sqlpara6); para.Add(sqlpara7); para.Add(sqlpara8); para.Add(sqlpara1); int i = DBTools.exenonquerySQL(sqltext, para); if (i == 1) { return(true); } else { return(false); } }
public Message SendAnswerMessage(Message message, string receivers) { List <Nimbus.Model.Receiver> listReceiver = new List <Nimbus.Model.Receiver>(); if (!string.IsNullOrEmpty(receivers)) { using (var db = DatabaseFactory.OpenDbConnection()) { Nimbus.Model.Receiver receiver = new Model.Receiver(); var listIds = System.Web.Helpers.Json.Decode(receivers); foreach (var item in listIds) { int id = Convert.ToInt32(item); var user = db.SelectParam <User>(u => u.Id == id).FirstOrDefault(); if (user != null) { receiver.IsOwner = true; //a msg é enviada para o perfil, logo não importa esse item receiver.UserId = user.Id; receiver.Name = user.FirstName + " " + user.LastName; receiver.AvatarUrl = user.AvatarUrl; listReceiver.Add(receiver); } } } } return(SendMessageToList(message, listReceiver)); }
/// <summary> /// 根据编号,获取某个收货商. /// </summary> /// <returns>收货商对象</returns> public Model.Receiver getReceiverByNum(string recenum) { Model.Receiver rece = null; string sqltext = "select * from receiver where receiverNum=@receiverNum"; List <SqlParameter> para = new List <SqlParameter>(); SqlParameter sqlpara1 = new SqlParameter("@receiverNum", recenum); para.Add(sqlpara1); SqlDataReader sdr = DBTools.exereaderSQL(sqltext, para); while (sdr.Read()) { rece = new Model.Receiver(); rece.ReceiverNum = sdr["receiverNum"].ToString(); rece.ReceiverName = sdr["receiverName"].ToString(); rece.StaffName = sdr["staffName"].ToString(); rece.Contact = sdr["contact"].ToString(); rece.ContactNumber = sdr["contactNumber"].ToString(); rece.ReceiverAddress = sdr["receiverAddress"].ToString(); rece.CreateTime = DateTime.Parse(sdr["createTime"].ToString()); rece.UpdateTime = DateTime.Parse(sdr["updateTime"].ToString()); } sdr.Close(); DBTools.DBClose(); return(rece); }
/// <summary> /// 是否有某个名称的收货商. /// </summary> /// <param name="nname">收货商名称</param> /// <returns>如果有,则返回True;如果没有,则返回False.</returns> public bool hasReceiverOfName(string nname) { Model.Receiver rece = new Model.Receiver(); string sqltext = "select * from receiver where receiverName=@receiverName"; List <SqlParameter> para = new List <SqlParameter>(); SqlParameter sqlpara1 = new SqlParameter("@receiverName", nname); para.Add(sqlpara1); SqlDataReader sdr = DBTools.exereaderSQL(sqltext, para); while (sdr.Read()) { sdr.Close(); DBTools.DBClose(); return(true); } return(false); }
public Message SendMessageUser(Message message, int id) { List <Nimbus.Model.Receiver> listReceiver = new List <Nimbus.Model.Receiver>(); if (id != 0) { using (var db = DatabaseFactory.OpenDbConnection()) { Nimbus.Model.Receiver receiver = new Model.Receiver(); var user = db.SelectParam <User>(u => u.Id == id).FirstOrDefault(); if (user != null) { receiver.IsOwner = true; //a msg é enviada para o perfil, logo não importa esse item receiver.UserId = id; receiver.Name = user.FirstName + " " + user.LastName; receiver.AvatarUrl = user.AvatarUrl; listReceiver.Add(receiver); } } } return(SendMessageToList(message, listReceiver)); }
/// <summary> /// 获取所有的收货商对象. /// </summary> /// <returns>所有收货商对象的泛型集合.</returns> public List <Model.Receiver> getAllReceivers() { List <Model.Receiver> rece = new List <Model.Receiver>(); string sqltext = "select * from receiver"; SqlDataReader sdr = DBTools.exereaderSQL(sqltext, new List <SqlParameter> ()); while (sdr.Read()) { Model.Receiver r = new Model.Receiver(); r.ReceiverNum = sdr["receiverNum"].ToString(); r.ReceiverName = sdr["receiverName"].ToString(); r.StaffName = sdr["staffName"].ToString(); r.Contact = sdr["contact"].ToString(); r.ContactNumber = sdr["contactNumber"].ToString(); r.ReceiverAddress = sdr["receiverAddress"].ToString(); r.CreateTime = DateTime.Parse(sdr["createTime"].ToString()); r.UpdateTime = DateTime.Parse(sdr["updateTime"].ToString()); rece.Add(r); } sdr.Close(); DBTools.DBClose(); return(rece); }
public Message SendMessageChannel(Message message) { //Lembrar: se owner = true, quando mostrar na view colocar: Nimbus List <Nimbus.Model.Receiver> listReceiver = new List <Model.Receiver>(); using (var db = DatabaseFactory.OpenDbConnection()) { var roles = db.SelectParam <Role>(r => r.ChannelId == message.ChannelId && (r.MessageManager == true || r.ChannelMagager == true || r.IsOwner == true)); //add todos os destinatarios dono + moderadores do canal foreach (var item in roles) { Nimbus.Model.Receiver receiver = new Model.Receiver(); var user = db.SelectParam <User>(u => u.Id == item.UserId).FirstOrDefault(); receiver.IsOwner = item.IsOwner; receiver.UserId = item.UserId; receiver.Name = user.FirstName + " " + user.LastName; receiver.AvatarUrl = user.AvatarUrl; listReceiver.Add(receiver); } } return(SendMessageToList(message, listReceiver)); }
internal Message SendMessageToList(Message message, List <Model.Receiver> listReceiver) { using (var db = DatabaseFactory.OpenDbConnection()) { using (var trans = db.OpenTransaction(System.Data.IsolationLevel.ReadCommitted)) { try { //add a msg para o 'sender' Nimbus.Model.Receiver sender = new Model.Receiver(); sender.IsOwner = db.SelectParam <Role>(r => r.ChannelId == message.ChannelId && r.UserId == NimbusUser.UserId) .Select(c => c.IsOwner).FirstOrDefault(); sender.UserId = NimbusUser.UserId; sender.Name = NimbusUser.FirstName + " " + NimbusUser.LastName; sender.AvatarUrl = NimbusUser.AvatarUrl; listReceiver.Add(sender); //add a msg Message dadosMsg = new Message { SenderId = message.SenderId > 0 ? message.SenderId : NimbusUser.UserId, ChannelId = message.ChannelId, Date = DateTime.Now, Text = message.Text, Title = message.Title, Visible = true, Receivers = listReceiver }; db.Save(dadosMsg); int idMesg = (int)db.GetLastInsertId(); message.Id = idMesg; dadosMsg.Id = idMesg; foreach (var item in listReceiver.Distinct()) { if (item.UserId == NimbusUser.UserId && dadosMsg.SenderId == NimbusUser.UserId) //qm está enviando: garante que mesmo que ele envie msg para ele mesmo, //tera apenas uma cópia em enviadas e apenas uma em 'recebidas' { db.Insert(new ReceiverMessage { IsOwner = item.IsOwner, MessageId = idMesg, UserId = item.UserId, NameUser = item.Name, UserReadStatus = true, Visible = true, Status = Nimbus.Model.Enums.MessageType.send }); } else { //qm vai receber db.Insert(new ReceiverMessage { IsOwner = item.IsOwner, MessageId = idMesg, UserId = item.UserId, NameUser = item.Name, UserReadStatus = false, Visible = true, Status = Nimbus.Model.Enums.MessageType.received }); } } trans.Commit(); //Notificação var notification = new Notifications.MessageNotification(); Task.Run(() => notification.NewMessage(dadosMsg)); } catch (Exception ex) { trans.Rollback(); throw; } } } return(message); }
/// <summary> /// 更新某个收货商的信息. /// </summary> /// <param name="rec">收货商对象</param> /// <returns>通过布尔类型判断操作是否成功.</returns> public bool updateReceiver(Model.Receiver rec) { throw new System.NotImplementedException(); }