Example #1
0
        private DocmentListDto GetChangeModel(DocmentList model)
        {
            /// 如果有外键数据 在这里转换
            var ret = model.MapTo <DocmentListDto>();

            return(ret);
        }
Example #2
0
        /// <summary>
        /// 旧档案导入
        /// </summary>
        /// <param name="fildId"></param>
        /// <returns></returns>
        public async Task <int> Export(Guid fileId)
        {
            var fileModel = _abpFilerepository.Get(fileId);
            var ds        = this.LoadXlsx(fileModel.FilePath);

            // var ds = this.LoadXlsx(@"e:\doc.xlsx");
            foreach (var dt in ds)
            {
                for (var i = 1; i < dt.Rows.Count; i++)
                {
                    var row = dt.Rows[i];
                    var obj = new DocmentList()
                    {
                        IsOld  = true,
                        No     = DateTime.Now.ToString("yyyyMMddHHmmss") + i,
                        Status = -1,
                        IsOut  = false,
                        Type   = new Guid("e919d963-f6f7-4491-73a0-08d5c079b809"),//档案袋
                        UserId = AbpSession.UserId.Value
                    };
                    obj.Name = row[0].ToString();
                    if (obj.Name.Length > 20)
                    {
                        throw new UserFriendlyException((int)ErrorCode.DataAccessErr, $"行{i}:档案名称长度不能大于20");
                    }
                    obj.Location = row[1].ToString();
                    if (obj.Location.Length > 200)
                    {
                        throw new UserFriendlyException((int)ErrorCode.DataAccessErr, $"行{i}:存放位置长度不能大于200");
                    }
                    obj.Des = row[2].ToString();
                    if (obj.Des.Length > 200)
                    {
                        throw new UserFriendlyException((int)ErrorCode.DataAccessErr, $"行{i}:档案备注长度不能大于200");
                    }
                    obj.Attr = DocmentAttr.纸质;
                    var attr = row[2].ToString().Trim();
                    if (attr == "电子")
                    {
                        obj.Attr = DocmentAttr.电子;
                    }
                    if (string.IsNullOrWhiteSpace(obj.Name))
                    {
                        return(i);
                    }
                    else
                    {
                        if (_docmentRepository.GetAll().Count(ite => ite.Name == obj.Name) == 0)
                        {
                            _docmentRepository.Insert(obj);
                        }
                    }
                }
            }
            return(0);
        }
Example #3
0
        /// <summary>
        /// 档案管理员新增档案
        /// </summary>
        /// <param name="inptu"></param>
        /// <returns></returns>
        public Guid Add(CreateDocmentInput input)
        {
            DocmentList model = null;

            if (input.QrCodeId.HasValue)
            {
                model = _docmentRepository.FirstOrDefault(ite => ite.QrCodeId == input.QrCodeId.Value);
            }
            if (model == null)
            {
                model        = input.MapTo <DocmentList>();
                model.Status = -10;
                if (input.Status.HasValue)
                {
                    model.Status = (int)input.Status.Value;
                }
                model.No = DateTime.Now.ToString("yyyyMMddHHmmss");
                model.Id = Guid.NewGuid();
                if (input.Type == Guid.Empty)
                {
                    model.Type = new Guid("E919D963-F6F7-4491-73A0-08D5C079B809");
                }
                else
                {
                    model.Type = input.Type;
                }
                if (input.QrCodeId.HasValue)
                {
                    model.QrCodeId = input.QrCodeId;
                }
                else
                {
                    model.QrCodeId = _qrCodeManager.GetCreateId(QrCodeType.档案);
                }
                model.UserId = AbpSession.UserId.Value;
                if (input.FileList != null)
                {
                    var fileList = new List <AbpFileListInput>();
                    foreach (var ite in input.FileList)
                    {
                        fileList.Add(new AbpFileListInput()
                        {
                            Id = ite.Id, Sort = ite.Sort
                        });
                    }
                    _abpFileRelationAppService.Create(new CreateFileRelationsInput()
                    {
                        BusinessId   = model.Id.ToString(),
                        BusinessType = (int)AbpFileBusinessType.档案附件,
                        Files        = fileList
                    });
                }
                _docmentRepository.Insert(model);
                //创建流转记录
                _docmentFlowingRepository.Insert(new DocmentFlowing()
                {
                    DocmentId = model.Id,
                    IsOut     = false,
                    Des       = "创建了该资料"
                });
            }
            else
            {
                model.Name = input.Name;
                model.Attr = input.Attr;
                model.Des  = input.Des;
                if (input.FileList != null)
                {
                    var fileList = new List <AbpFileListInput>();
                    foreach (var ite in input.FileList)
                    {
                        fileList.Add(new AbpFileListInput()
                        {
                            Id = ite.Id, Sort = ite.Sort
                        });
                    }
                    _abpFileRelationAppService.Update(new CreateFileRelationsInput()
                    {
                        BusinessId   = model.Id.ToString(),
                        BusinessType = (int)AbpFileBusinessType.档案附件,
                        Files        = fileList
                    });
                }
                _docmentRepository.Update(model);
            }
            return(model.Id);
        }