333
This commit is contained in:
parent
113989577d
commit
82a7d3e6aa
|
|
@ -33,13 +33,15 @@ namespace ZR.Admin.WebApi.Controllers.Business
|
||||||
|
|
||||||
private OptionsSetting OptionsSetting;
|
private OptionsSetting OptionsSetting;
|
||||||
private IWebHostEnvironment WebHostEnvironment;
|
private IWebHostEnvironment WebHostEnvironment;
|
||||||
|
private readonly ICamWorkerService _CamWorkerService;
|
||||||
|
|
||||||
|
public CamWorkrecordController(ICamWorkrecordService CamWorkrecordService, IOptions<OptionsSetting> options, IWebHostEnvironment webHostEnvironment,
|
||||||
public CamWorkrecordController(ICamWorkrecordService CamWorkrecordService, IOptions<OptionsSetting> options, IWebHostEnvironment webHostEnvironment)
|
ICamWorkerService camWorkerService)
|
||||||
{
|
{
|
||||||
_CamWorkrecordService = CamWorkrecordService;
|
_CamWorkrecordService = CamWorkrecordService;
|
||||||
OptionsSetting = options.Value;
|
OptionsSetting = options.Value;
|
||||||
WebHostEnvironment = webHostEnvironment;
|
WebHostEnvironment = webHostEnvironment;
|
||||||
|
_CamWorkerService = camWorkerService;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -68,6 +70,11 @@ namespace ZR.Admin.WebApi.Controllers.Business
|
||||||
var response = _CamWorkrecordService.GetInfo(Id);
|
var response = _CamWorkrecordService.GetInfo(Id);
|
||||||
|
|
||||||
var info = response.Adapt<CamWorkrecordDto>();
|
var info = response.Adapt<CamWorkrecordDto>();
|
||||||
|
if (info != null)
|
||||||
|
{
|
||||||
|
var names = _CamWorkerService.AsQueryable().Where(it => it.WorkrecordId == info.Id).Select(it => it.WorkerName).ToList();
|
||||||
|
info.Worker = names != null && names.Count > 0 ? string.Join(",", names) : "";
|
||||||
|
}
|
||||||
return SUCCESS(info);
|
return SUCCESS(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -81,7 +88,8 @@ namespace ZR.Admin.WebApi.Controllers.Business
|
||||||
public IActionResult AddCamWorkrecord([FromBody] CamWorkrecordDto parm)
|
public IActionResult AddCamWorkrecord([FromBody] CamWorkrecordDto parm)
|
||||||
{
|
{
|
||||||
var modal = parm.Adapt<CamWorkrecord>().ToCreate(HttpContext);
|
var modal = parm.Adapt<CamWorkrecord>().ToCreate(HttpContext);
|
||||||
|
modal.CreateTime = DateTime.Now;
|
||||||
|
modal.UpdateTime = DateTime.Now;
|
||||||
var response = _CamWorkrecordService.AddCamWorkrecord(modal);
|
var response = _CamWorkrecordService.AddCamWorkrecord(modal);
|
||||||
|
|
||||||
return SUCCESS(response);
|
return SUCCESS(response);
|
||||||
|
|
@ -97,6 +105,7 @@ namespace ZR.Admin.WebApi.Controllers.Business
|
||||||
public IActionResult UpdateCamWorkrecord([FromBody] CamWorkrecordDto parm)
|
public IActionResult UpdateCamWorkrecord([FromBody] CamWorkrecordDto parm)
|
||||||
{
|
{
|
||||||
var modal = parm.Adapt<CamWorkrecord>().ToUpdate(HttpContext);
|
var modal = parm.Adapt<CamWorkrecord>().ToUpdate(HttpContext);
|
||||||
|
modal.UpdateTime = DateTime.Now;
|
||||||
var response = _CamWorkrecordService.UpdateCamWorkrecord(modal);
|
var response = _CamWorkrecordService.UpdateCamWorkrecord(modal);
|
||||||
|
|
||||||
return ToResponse(response);
|
return ToResponse(response);
|
||||||
|
|
@ -148,7 +157,7 @@ namespace ZR.Admin.WebApi.Controllers.Business
|
||||||
});
|
});
|
||||||
ExcelHelper excelHelper = new ExcelHelper(WebHostEnvironment);
|
ExcelHelper excelHelper = new ExcelHelper(WebHostEnvironment);
|
||||||
ExcelPackage.License.SetNonCommercialPersonal("pnaa");
|
ExcelPackage.License.SetNonCommercialPersonal("pnaa");
|
||||||
var result = ExportWorkRecordExcel(list, "工作记录", 200, 70,60);
|
var result = ExportWorkRecordExcel(list, "工作记录", 200, 70, 60);
|
||||||
//ExportExcelMini(list, "工作记录", "工作记录");
|
//ExportExcelMini(list, "工作记录", "工作记录");
|
||||||
//ExportExcelWithImagesInBatches(result.Item2, "工作记录", urlList, 10);
|
//ExportExcelWithImagesInBatches(result.Item2, "工作记录", urlList, 10);
|
||||||
//loadExcel();
|
//loadExcel();
|
||||||
|
|
|
||||||
|
|
@ -132,7 +132,7 @@ namespace ZR.Admin.WebApi.Controllers
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[ActionPermissionFilter(Permission = "common")]
|
[ActionPermissionFilter(Permission = "common")]
|
||||||
public async Task<IActionResult> UploadFile([FromForm] UploadDto uploadDto, IFormFile file, StoreType storeType = StoreType.ALIYUN)
|
public async Task<IActionResult> UploadFile([FromForm] UploadDto uploadDto, IFormFile file, StoreType storeType = StoreType.LOCAL)
|
||||||
{
|
{
|
||||||
if (file == null) throw new CustomException(ResultCode.PARAM_ERROR, "上传文件不能为空");
|
if (file == null) throw new CustomException(ResultCode.PARAM_ERROR, "上传文件不能为空");
|
||||||
SysFile sysfile = new();
|
SysFile sysfile = new();
|
||||||
|
|
@ -270,12 +270,13 @@ namespace ZR.Admin.WebApi.Controllers
|
||||||
{
|
{
|
||||||
return ToResponse(ResultCode.PARAM_ERROR, "请上传图片");
|
return ToResponse(ResultCode.PARAM_ERROR, "请上传图片");
|
||||||
}
|
}
|
||||||
|
|
||||||
//-当日所有照片
|
//-当日所有照片
|
||||||
//- 当日根据【人名】分类的照片
|
//- 当日根据【人名】分类的照片
|
||||||
//- 当日根据【工作内容】分类的照片
|
//- 当日根据【工作内容】分类的照片
|
||||||
//- 当日根据【部门】分类的照片
|
//- 当日根据【部门】分类的照片
|
||||||
var imageprx = ImageConverter.GetFileExtensionFromBase64(parm.Image);
|
var imageprx = ImageConverter.GetFileExtensionFromBase64(parm.Image);
|
||||||
|
|
||||||
var filePath = "/workfiles/" + DateTime.Now.ToString("yyyyMM/yyyyMMdd");
|
var filePath = "/workfiles/" + DateTime.Now.ToString("yyyyMM/yyyyMMdd");
|
||||||
string savePath = Path.Combine(WebHostEnvironment.WebRootPath);
|
string savePath = Path.Combine(WebHostEnvironment.WebRootPath);
|
||||||
var path = savePath + filePath;
|
var path = savePath + filePath;
|
||||||
|
|
@ -284,6 +285,67 @@ namespace ZR.Admin.WebApi.Controllers
|
||||||
{
|
{
|
||||||
return ToResponse(ResultCode.CUSTOM_ERROR, "图片上传失败");
|
return ToResponse(ResultCode.CUSTOM_ERROR, "图片上传失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (parm.Id != null && parm.Id > 0)
|
||||||
|
{
|
||||||
|
//删除之前的人员照片
|
||||||
|
var m = await _CamWorkrecordService.AsQueryable().Where(it => it.Id == parm.Id).FirstAsync();
|
||||||
|
var m_workers = await _CamWorkerService.AsQueryable().Where(it => it.WorkrecordId == parm.Id).ToListAsync();
|
||||||
|
if (m == null)
|
||||||
|
{
|
||||||
|
return ToResponse(ResultCode.PARAM_ERROR, "未找到该记录");
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(m.ImageUrl))
|
||||||
|
{
|
||||||
|
//m.ImageUrl http://localhost:8888/workfiles/202508/20250819/当日照片/1755617080_7078.jpg
|
||||||
|
var imagePath = m.ImageUrl.Substring(m.ImageUrl.IndexOf("workfiles"));
|
||||||
|
var fullImagePath = Path.Combine(WebHostEnvironment.WebRootPath, imagePath);
|
||||||
|
|
||||||
|
// 获取文件名
|
||||||
|
var fileName = Path.GetFileName(fullImagePath);
|
||||||
|
var directoryPath = Path.GetDirectoryName(fullImagePath);
|
||||||
|
|
||||||
|
// 删除当日照片
|
||||||
|
if (File.Exists(fullImagePath))
|
||||||
|
{
|
||||||
|
File.Delete(fullImagePath);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除参与人员照片
|
||||||
|
var participantsPath = Path.Combine(WebHostEnvironment.WebRootPath, "workfiles", DateTime.Now.ToString("yyyyMM/yyyyMMdd"), "参与人员");
|
||||||
|
if (Directory.Exists(participantsPath))
|
||||||
|
{
|
||||||
|
foreach (var workerDir in Directory.GetDirectories(participantsPath))
|
||||||
|
{
|
||||||
|
var workerImagePath = Path.Combine(workerDir, fileName);
|
||||||
|
if (File.Exists(workerImagePath))
|
||||||
|
{
|
||||||
|
File.Delete(workerImagePath);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除工作内容照片
|
||||||
|
var jobContentPath = Path.Combine(WebHostEnvironment.WebRootPath, "workfiles", DateTime.Now.ToString("yyyyMM/yyyyMMdd"), "工作内容", m.Content);
|
||||||
|
var jobContentImagePath = Path.Combine(jobContentPath, fileName);
|
||||||
|
if (File.Exists(jobContentImagePath))
|
||||||
|
{
|
||||||
|
File.Delete(jobContentImagePath);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除部门照片
|
||||||
|
var departmentPath = Path.Combine(WebHostEnvironment.WebRootPath, "workfiles", DateTime.Now.ToString("yyyyMM/yyyyMMdd"), "部门", m.DeptName);
|
||||||
|
var departmentImagePath = Path.Combine(departmentPath, fileName);
|
||||||
|
if (File.Exists(departmentImagePath))
|
||||||
|
{
|
||||||
|
File.Delete(departmentImagePath);
|
||||||
|
}
|
||||||
|
|
||||||
|
//删除施工人员数据
|
||||||
|
await _CamWorkerService.DeleteAsync(it => it.WorkrecordId == parm.Id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int MaxSize = 300 * 1024; // 300KB = 307200 字节
|
int MaxSize = 300 * 1024; // 300KB = 307200 字节
|
||||||
// 如果图片大于300KB才压缩
|
// 如果图片大于300KB才压缩
|
||||||
if (images.Length > MaxSize)
|
if (images.Length > MaxSize)
|
||||||
|
|
@ -348,7 +410,16 @@ namespace ZR.Admin.WebApi.Controllers
|
||||||
modal.CreateTime = DateTime.Now;
|
modal.CreateTime = DateTime.Now;
|
||||||
modal.UpdateTime = DateTime.Now;
|
modal.UpdateTime = DateTime.Now;
|
||||||
modal.ImageUrl = $"{domainUrl}{filePath}/当日照片/{imageName}";
|
modal.ImageUrl = $"{domainUrl}{filePath}/当日照片/{imageName}";
|
||||||
modal = await _CamWorkrecordService.Insertable(modal).ExecuteReturnEntityAsync();
|
if (parm.Id != null && parm.Id > 0)
|
||||||
|
{
|
||||||
|
//修改实体类
|
||||||
|
await _CamWorkrecordService.UpdateAsync(modal);
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
modal = await _CamWorkrecordService.Insertable(modal).ExecuteReturnEntityAsync();
|
||||||
|
}
|
||||||
var workid = modal.Id;
|
var workid = modal.Id;
|
||||||
var workers = new List<CamWorker>();
|
var workers = new List<CamWorker>();
|
||||||
foreach (var item in parm.Workers)
|
foreach (var item in parm.Workers)
|
||||||
|
|
|
||||||
|
|
@ -65,6 +65,7 @@ namespace ZR.Model.Business.Dto
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class CamRecordWorkDto
|
public class CamRecordWorkDto
|
||||||
{
|
{
|
||||||
|
public int? Id { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 部门名称
|
/// 部门名称
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user