コード例 #1
0
ファイル: UserMemberEMRService.cs プロジェクト: radtek/XuHos
        public UserMemberEMRDTO GetUserMemberEMR(string id)
        {
            UserMemberEMRDTO ret = null;

            using (var db = new DBEntities())
            {
                ret = (from m in db.UserMemberEMRs
                       join a in db.UserMembers on m.MemberID equals a.MemberID
                       join userfile in db.UserFiles.Where(a => a.IsDeleted == false).GroupBy(a => a.OutID) on m.UserMemberEMRID equals userfile.Key into leftJoinUserFiles
                       from userfileIfEmpty in leftJoinUserFiles.DefaultIfEmpty()
                       where m.UserMemberEMRID == id
                       select new UserMemberEMRDTO
                {
                    MemberID = m.MemberID,
                    Date = m.Date,
                    EMRName = m.EMRName,
                    UserMemberEMRID = m.UserMemberEMRID,
                    HospitalName = m.HospitalName,
                    MemberName = a.MemberName,
                    Remark = m.Remark,
                    ModifyTime = m.ModifyTime ?? m.CreateTime,
                    Files = userfileIfEmpty.OrderBy(a => a.CreateTime).Select(a => new UserFileDTO
                    {
                        FileName = a.FileName,
                        FileUrl = a.FileUrl,
                    }).ToList()
                }).FirstOrDefault();
            }
            return(ret);
        }
コード例 #2
0
ファイル: UserMemberEMRService.cs プロジェクト: radtek/XuHos
        public ApiResult Save(UserMemberEMRDTO request)
        {
            ApiResult result = new ApiResult();

            if (string.IsNullOrEmpty(request.UserMemberEMRID))
            {
                var model = request.Map <UserMemberEMRDTO, XuHos.Entity.UserMemberEMR>();
                if (Insert(model) && request.Files != null)
                {
                    request.UserMemberEMRID = model.UserMemberEMRID;
                    XuHos.BLL.Sys.Implements.FileService fService = new XuHos.BLL.Sys.Implements.FileService();
                    foreach (var f in request.Files)
                    {
                        f.FileUrl = f.FileUrl;
                        f.Remark  = "-";//必填项?
                        var file = f.Map <UserFileDTO, UserFile>();
                        file.OutID     = model.UserMemberEMRID;
                        file.UserID    = this.CurrentOperatorUserID;
                        file.AccessKey = file.ResourceID = string.Empty;
                        fService.Insert(file);
                    }
                }
            }
            else
            {
                var model = this.DBEntities.UserMemberEMRs.Where(m => m.UserMemberEMRID == request.UserMemberEMRID).FirstOrDefault();
                if (model != null)
                {
                    model.EMRName      = request.EMRName;
                    model.HospitalName = request.HospitalName;
                    model.MemberID     = request.MemberID;
                    model.Remark       = request.Remark;
                    model.Date         = request.Date;

                    if (Update(model))
                    {
                        XuHos.BLL.Sys.Implements.FileService fService = new Sys.Implements.FileService();
                        var ids = request.Files.Select(m => m.FileID);
                        fService.Delete(m => ids.Contains(m.FileID) == false && m.OutID == model.UserMemberEMRID && m.IsDeleted == false);
                        if (request.Files != null)
                        {
                            foreach (var f in request.Files)
                            {
                                if (string.IsNullOrEmpty(f.FileID))
                                {
                                    f.FileUrl = f.FileUrl;
                                    f.Remark  = "-";//必填项?
                                    var file = f.Map <UserFileDTO, UserFile>();
                                    file.OutID     = model.UserMemberEMRID;
                                    file.UserID    = this.CurrentOperatorUserID;
                                    file.AccessKey = file.ResourceID = string.Empty;
                                    fService.Insert(file);
                                }
                            }
                        }
                    }
                }
            }
            result.Data = GetUserMemberEMR(request.UserMemberEMRID);
            return(result);
        }