public void Get(BaseModel <List <DialogueRecordResponse> > model, DialogueRecordRequest request) { if (onlineCustomerServiceContext == null) { return; } IQueryable <DialogueRecord> queryable = onlineCustomerServiceContext.DialogueRecord.Where( record => (request.AdminId < 1 || record.AdminId == request.AdminId) && (request.UserId < 1 || record.UserId == request.UserId) ).Select(column => new DialogueRecord() { Id = column.Id, UserId = column.UserId, UserName = column.UserName, Question = column.Question, CreateTime = column.CreateTime }); Int32 pageCount = queryable.Count(); List <DialogueRecordResponse> result = new List <DialogueRecordResponse>(); foreach (DialogueRecord record in queryable.Pagination(model.PageIndex, model.PageSize)) { result.Add(Mapper(record)); } model.Success = true; model.PageCount = pageCount; model.Result = result; }
private void SaveDialogue() { if (!work) { return; } /* 取出快取對話紀錄 */ BaseModel <List <String> > model = new BaseModel <List <String> >(); DialogueRecordCacheRequest request = new DialogueRecordCacheRequest(); request.Id = WebSocketClientId; dialogueRecordCacheDAO.Get(model, request); if (!model.Success) { return; } /* 保存對話至資料庫 */ BaseModel <String> model2 = new BaseModel <String>(); DialogueRecordRequest request2 = new DialogueRecordRequest(); request2.AdminId = AdminId; request2.UserName = clientName; request2.Mail = clientMail; request2.Phone = clientPhone; request2.Question = clientQuestion; request2.Record = JsonConvert.SerializeObject(model.Result); dialogueRecordDAO.Add(model2, request2); if (!model2.Success) { return; } /* 刪除快取對話紀錄 */ BaseModel <String> model3 = new BaseModel <String>(); dialogueRecordCacheDAO.Delete(model3, request); if (!model3.Success) { return; } }
public void Add(BaseModel <String> model, DialogueRecordRequest request) { if (onlineCustomerServiceContext == null) { return; } DialogueRecord dialogueRecord = Mapper(request); onlineCustomerServiceContext.DialogueRecord.Add(dialogueRecord); onlineCustomerServiceContext.SaveChanges(); model.Success = true; model.Result = Convert.ToString(dialogueRecord.Id); }
private DialogueRecord Mapper(DialogueRecordRequest request) { DialogueRecord model = new DialogueRecord(); model.Id = request.Id; model.AdminId = request.AdminId; model.UserId = request.UserId; model.UserName = request.UserName; model.Mail = request.Mail; model.Phone = request.Phone; model.Question = request.Question; model.Record = request.Record; return(model); }
public void Detail(BaseModel <DialogueRecordResponse> model, DialogueRecordRequest request) { if (onlineCustomerServiceContext == null) { return; } if (request.Id < 1) { return; } IQueryable <DialogueRecord> queryable = onlineCustomerServiceContext.DialogueRecord.Where(record => record.Id == request.Id); model.Success = true; model.Result = Mapper(queryable.First()); }