Ejemplo n.º 1
0
 /// <summary>
 /// 更新一个记录
 /// </summary>
 /// <param name="P_Entity"></param>
 /// <returns></returns>
 public async Task <int> UpdateAsync(PlanFileEntity PEntity)
 {
     if (PEntity == null)
     {
         return(0);
     }
     PEntity.UpDateTime = DateTime.Now;
     _GhDbContext.dsPlanFiles.Update(PEntity);
     return(await _GhDbContext.SaveChangesAsync().ConfigureAwait(false));
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 向数据库表添加一个新的记录,如果该记录已经存在,返回-2。
 /// </summary>
 /// <param name="P_Entity"></param>
 /// <returns></returns>
 public async Task <int> AddAsync(PlanFileEntity PEntity, string FileId)
 {
     if (PEntity == null || PEntity.Id != null)
     {
         return(-2);
     }
     PEntity.Id         = FileId;
     PEntity.UpDateTime = DateTime.Now;
     _GhDbContext.dsPlanFiles.Add(PEntity);
     return(await _GhDbContext.SaveChangesAsync().ConfigureAwait(false));
 }
        public async Task <string> PutAsync([FromBody] PlanFileEntity PEntity)
        {
            ExcuteResult actResult = new ExcuteResult();

            if (await _FileRepository.UpdateAsync(PEntity).ConfigureAwait(false) > 0)
            {
                actResult.SetValues(p_state: 0, p_msg: "文件信息更新成功", p_tag: PEntity?.Id);
            }
            else
            {
                actResult.SetValues(1, "文件信息更新失败!");
            }
            return(JsonConvert.SerializeObject(actResult));
        }
        public async Task <string> PostUpLoadFileAsync([FromForm] PlanFileEntity PFile)
        {
            ExcuteResult actResult = new ExcuteResult();

            if (Request.Form.Files.Count > 0 && PFile != null)
            {
                try
                {
                    string FileId = AppCodes.AppStaticClass.GetIdOfDateTime();
                    if (!System.IO.Directory.Exists(_FileBaseDir))
                    {
                        System.IO.Directory.CreateDirectory(_FileBaseDir);
                    }
                    string FileName = Path.Combine(_FileBaseDir, $"{FileId}{PFile.ExtendName}");// _configuration["StaticFileDir"] + $"\\WorkFiles\\{pfile.Id}{pfile.ExtendName}";
                    using (FileStream fs = System.IO.File.Create(FileName))
                    {
                        await Request.Form.Files[0].CopyToAsync(fs).ConfigureAwait(false);
                        fs.Flush();
                    }
                    if (System.IO.File.Exists(FileName))
                    {
                        //文件写入成功后,再保存文件信息到数据表
                        PFile.UpDateTime = DateTime.Now;
                        if (await _FileRepository.AddAsync(PFile, FileId).ConfigureAwait(false) > 0)
                        {
                            actResult.SetValues(0, "上传成功", p_tag: FileId);
                        }
                        else
                        {
                            actResult.SetValues(-3, "文件保存到服务器数据库时出错。");
                        }
                    }
                    else
                    {
                        actResult.SetValues(-1, "文件保存到服务器磁盘时出错。");
                    }
                }
                catch (System.Exception err)
                {
                    actResult.SetValues(1, err.Message);
                }
            }
            return(JsonConvert.SerializeObject(actResult));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 删除一个记录
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        public async Task <int> DeleteByIdAsync(string FileBaseDir, string Id)
        {
            int DelCount = 0;

            if (Id == null)
            {
                return(0);
            }
            PlanFileEntity CurFile = _GhDbContext.dsPlanFiles.Find(Id);

            _GhDbContext.dsPlanFiles.Remove(CurFile);
            DelCount = await _GhDbContext.SaveChangesAsync().ConfigureAwait(false);

            if (DelCount > 0)
            {
                //删除硬盘上的文件
                var fileName = Path.Combine(FileBaseDir, $"{CurFile.Id}{CurFile.ExtendName}");
                if (System.IO.File.Exists(fileName))
                {
                    System.IO.File.Delete(fileName);
                }
            }
            return(DelCount);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 根据Id获取一个对象
        /// </summary>
        /// <param name="P_Id"></param>
        /// <returns></returns>
        public async Task <PlanFileDto> GetOneByIdAsync(string Id)
        {
            PlanFileEntity RecordEntity = await _GhDbContext.dsPlanFiles.FindAsync(Id).ConfigureAwait(false);

            return(_Mapper.Map <PlanFileDto>(RecordEntity));
        }