Browse Source

【修改】根据身份证号更新照片接口:图片下载设置超时时间为5秒;

新疆影视学院高职
dyy 2 years ago
parent
commit
a1b90b685c
1 changed files with 102 additions and 80 deletions
  1. +102
    -80
      Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/EmpInfoApi.cs

+ 102
- 80
Learun.Framework.Ultimate V7/Learun.Application.WebApi/Modules/EmpInfoApi.cs View File

@@ -30,19 +30,20 @@ namespace Learun.Application.WebApi
/// 注册接口
/// <summary>
public EmpInfoApi()
: base("/Learun/adms/EducationalAdministration/EmpRegister")
//: base("/Learun/adms/EducationalAdministration/EmpRegister")
: base()
{
Get["/pagelist"] = GetPageList;
Get["/list"] = GetList;
Get["/form"] = GetForm;
Get["/formForNo"] = GetFormForNo;
Post["/delete"] = DeleteForm;
Post["/save"] = SaveForm;
Post["/savePhoto"] = GetSavePhoto;
Get["/registerbutton"] = RegisterButton;
Post["/signon"] = Signon;
Get["/Learun/adms/EducationalAdministration/EmpRegister/pagelist"] = GetPageList;
Get["/Learun/adms/EducationalAdministration/EmpRegister/list"] = GetList;
Get["/Learun/adms/EducationalAdministration/EmpRegister/form"] = GetForm;
Get["/Learun/adms/EducationalAdministration/EmpRegister/formForNo"] = GetFormForNo;
Post["/Learun/adms/EducationalAdministration/EmpRegister/delete"] = DeleteForm;
Post["/Learun/adms/EducationalAdministration/EmpRegister/save"] = SaveForm;
Post["/Learun/adms/EducationalAdministration/EmpRegister/savePhoto"] = GetSavePhoto;
Get["/Learun/adms/EducationalAdministration/EmpRegister/registerbutton"] = RegisterButton;
Post["/Learun/adms/EducationalAdministration/EmpRegister/signon"] = Signon;
//根据身份证号更新学生和老师的照片
Post["/updatePhotoByIdCard"] = UpdatePhotoByIdCard;
Post["/EducationalAdministration/EmpRegister/updatePhotoByIdCard"] = UpdatePhotoByIdCard;
}

private Response Signon(dynamic _)
@@ -235,9 +236,9 @@ namespace Learun.Application.WebApi
{
var pmodel = new ResponseModel()
{
IdCard=item.IdCard,
OperateFlag=false,
FailMsg="该身份证号的教师信息不存在!"
IdCard = item.IdCard,
OperateFlag = false,
FailMsg = "该身份证号的教师信息不存在!"
};
responseModels.Add(pmodel);
}
@@ -245,49 +246,63 @@ namespace Learun.Application.WebApi
{
//图片地址
var imgPath = string.Format("{0}/{1}{2}", directoryPathOfEmp, item.IdCard, FileEextension);
if (!System.IO.File.Exists(imgPath))
//下载图片到本地
//WebClient my = new WebClient();
//byte[] mybyte = my.DownloadData(item.PhotoUrl);
//FileInfo file = new FileInfo(imgPath);
//FileStream fs = file.Create();
//fs.Write(mybyte, 0, mybyte.Length);
//fs.Close();

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(item.PhotoUrl);
request.Timeout = 5000;
long len = 0;
try
{
//下载图片到本地
WebClient my = new WebClient();
byte[] mybyte = my.DownloadData(item.PhotoUrl);
FileInfo file = new FileInfo(imgPath);
FileStream fs = file.Create();
fs.Write(mybyte, 0, mybyte.Length);
fs.Close();
//图片地址保存到LR_Base_AnnexesFile表中
var folderId = Guid.NewGuid().ToString();
AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
fileAnnexesEntity.F_Id = Guid.NewGuid().ToString();
fileAnnexesEntity.F_FileName =string.Format("{0}{1}",item.IdCard,FileEextension);
fileAnnexesEntity.F_FilePath = imgPath;
fileAnnexesEntity.F_FileSize = mybyte.Length.ToString();
fileAnnexesEntity.F_FileExtensions = FileEextension;
fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
//更新EmpInfo表照片字段
entity.Photo = folderId;
empInfoIBLL.SaveEntity(entity.EmpId, entity);
//回参
var pmodel = new ResponseModel()
{
IdCard = item.IdCard,
OperateFlag = true
};
responseModels.Add(pmodel);
var wresp = (HttpWebResponse)request.GetResponse();
var stream = wresp.GetResponseStream();
System.Drawing.Image.FromStream(stream).Save(imgPath, System.Drawing.Imaging.ImageFormat.Png);
len = wresp.ContentLength;
stream.Close();
wresp.Close();
}
else
catch (Exception ex)
{
var pmodel = new ResponseModel()
//回参
var pmodel2 = new ResponseModel()
{
IdCard = item.IdCard,
OperateFlag = false,
FailMsg = "该身份证号的图片已存在!"
FailMsg = "请求图片地址失败!" + ex.Message
};
responseModels.Add(pmodel);
responseModels.Add(pmodel2);

continue;
}

//图片地址保存到LR_Base_AnnexesFile表中
var folderId = Guid.NewGuid().ToString();
AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
fileAnnexesEntity.F_Id = Guid.NewGuid().ToString();
fileAnnexesEntity.F_FileName = string.Format("{0}{1}", item.IdCard, FileEextension);
fileAnnexesEntity.F_FilePath = imgPath;
fileAnnexesEntity.F_FileSize = len.ToString();
fileAnnexesEntity.F_FileExtensions = FileEextension;
fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
//更新EmpInfo表照片字段
entity.Photo = folderId;
empInfoIBLL.SaveEntity(entity.EmpId, entity);
//回参
var pmodel = new ResponseModel()
{
IdCard = item.IdCard,
OperateFlag = true
};
responseModels.Add(pmodel);
}
}
else if(item.IdentityFlag == 2)//学生
else if (item.IdentityFlag == 2)//学生
{
var entity = stuInfoBasicIBLL.GetStuInfoBasicEntityByIdCard(item.IdCard);
if (entity == null)
@@ -304,46 +319,53 @@ namespace Learun.Application.WebApi
{
//图片地址
var imgPath = string.Format("{0}/{1}{2}", directoryPathOfStu, item.IdCard, FileEextension);
if (!System.IO.File.Exists(imgPath))
//下载图片到本地
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(item.PhotoUrl);
request.Timeout = 5000;
long len = 0;
try
{
//下载图片到本地
WebClient my = new WebClient();
byte[] mybyte = my.DownloadData(item.PhotoUrl);
FileInfo file = new FileInfo(imgPath);
FileStream fs = file.Create();
fs.Write(mybyte, 0, mybyte.Length);
fs.Close();
//图片地址保存到LR_Base_AnnexesFile表中
var folderId = Guid.NewGuid().ToString();
AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
fileAnnexesEntity.F_Id = Guid.NewGuid().ToString();
fileAnnexesEntity.F_FileName = string.Format("{0}{1}", item.IdCard, FileEextension);
fileAnnexesEntity.F_FilePath = imgPath;
fileAnnexesEntity.F_FileSize = mybyte.Length.ToString();
fileAnnexesEntity.F_FileExtensions = FileEextension;
fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
//更新StuInfoBasic表照片字段
entity.Photo = folderId;
stuInfoBasicIBLL.SaveEntity(entity.StuId, entity);
//回参
var pmodel = new ResponseModel()
{
IdCard = item.IdCard,
OperateFlag = true
};
responseModels.Add(pmodel);
var wresp = (HttpWebResponse)request.GetResponse();
var stream = wresp.GetResponseStream();
System.Drawing.Image.FromStream(stream).Save(imgPath, System.Drawing.Imaging.ImageFormat.Png);
len = wresp.ContentLength;
stream.Close();
wresp.Close();
}
else
catch (Exception ex)
{
var pmodel = new ResponseModel()
//回参
var pmodel2 = new ResponseModel()
{
IdCard = item.IdCard,
OperateFlag = false,
FailMsg = "该身份证号的图片已存在!"
FailMsg = "请求图片地址失败!" + ex.Message
};
responseModels.Add(pmodel);
responseModels.Add(pmodel2);

continue;
}

//图片地址保存到LR_Base_AnnexesFile表中
var folderId = Guid.NewGuid().ToString();
AnnexesFileEntity fileAnnexesEntity = new AnnexesFileEntity();
fileAnnexesEntity.F_Id = Guid.NewGuid().ToString();
fileAnnexesEntity.F_FileName = string.Format("{0}{1}", item.IdCard, FileEextension);
fileAnnexesEntity.F_FilePath = imgPath;
fileAnnexesEntity.F_FileSize = len.ToString();
fileAnnexesEntity.F_FileExtensions = FileEextension;
fileAnnexesEntity.F_FileType = FileEextension.Replace(".", "");
annexesFileIBLL.SaveEntity(folderId, fileAnnexesEntity);
//更新StuInfoBasic表照片字段
entity.Photo = folderId;
stuInfoBasicIBLL.SaveEntity(entity.StuId, entity);
//回参
var pmodel = new ResponseModel()
{
IdCard = item.IdCard,
OperateFlag = true
};
responseModels.Add(pmodel);
}
}
else
@@ -359,7 +381,7 @@ namespace Learun.Application.WebApi
}

return Success(responseModels);
}

#endregion


Loading…
Cancel
Save