Ejemplo n.º 1
0
        public async Task <InitWorkFlowOutput> Create(CreateDocmentInput input)
        {
            var model = input.MapTo <DocmentList>();

            model.Id     = Guid.NewGuid();
            model.UserId = AbpSession.UserId.Value;
            model.No     = DateTime.Now.ToString("yyyyMMddHHmmss");
            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
                    });
                }
                await _abpFileRelationAppService.CreateAsync(new CreateFileRelationsInput()
                {
                    BusinessId   = model.Id.ToString(),
                    BusinessType = (int)AbpFileBusinessType.档案附件,
                    Files        = fileList
                });
            }
            if (input.QrCodeId.HasValue)
            {
                var qrcodeModel = new QrCode()
                {
                    Id   = input.QrCodeId.Value,
                    Type = QrCodeType.档案
                };
                _qrCodeManager.UpdateType(qrcodeModel);
                model.QrCodeId = input.QrCodeId;
            }
            else
            {
                model.QrCodeId = _qrCodeManager.GetCreateId(QrCodeType.档案);
            }

            _docmentRepository.Insert(model);
            //创建流转记录
            _docmentFlowingRepository.Insert(new DocmentFlowing()
            {
                DocmentId = model.Id,
                IsOut     = false,
                Des       = "创建了该资料"
            });
            return(new InitWorkFlowOutput()
            {
                InStanceId = model.Id.ToString()
            });
        }
Ejemplo n.º 2
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);
        }