You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

237 lines
8.5 KiB

using Hangfire;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TaskManager.Controllers;
using TaskManager.Entity;
using TaskManager.EntityFramework;
using Wood.Util.Filters;
namespace Wood.Service.Controllers
{
/// <summary>
/// 读取日志服务
/// </summary>
public class CustomLogService : NormalBaseController<TaskLog>
{
private readonly string _logDirectory;
public CustomLogService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository<TaskLog> repository) : base(context, builder, configuration, repository)
{
_logDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "CustomLogs");
}
/// <summary>
/// 获取请求文件
/// </summary>
/// <param name="uId"></param>
/// <returns></returns>
[HttpGet]
public async Task<IActionResult> GetLogRequestJsonList(int uId)
{
var first = _context.TaskLogs.FirstOrDefault(x => x.UId == uId);
if (!string.IsNullOrEmpty(first.Path))
{
string fullDatePath = Path.Combine(_logDirectory, first.Path);
string jsonContent = await System.IO.File.ReadAllTextAsync(fullDatePath);
return new JsonResult(new { Code = 200, Message = jsonContent });
}
return new JsonResult(new { Code = 400, Message = "没找到文件!" });
}
[HttpGet]
public async Task<IActionResult> GetLogReponseList([FromBody] RequestInputBase requestInputBase)
{
var uid = requestInputBase.Condition.Filters.FirstOrDefault(p => p.Column == "Uid").Value;
var first = _context.TaskLogs.FirstOrDefault(x => x.UId == long.Parse(uid));
switch (first.TaskName)
{
//case "来料检验数据":
// var stockservice = _builder.GetRequiredService<CherySupplierProSchedulingService>();
// requestInputBase.Condition.Filters.Add(new Filter());
// var stockresult = await stockservice.GetTaskDataPaged(requestInputBase);
//
// break;
//case "排产数据":
//
// break;
//case "供应商基础信息":
//
// break;
//case "人员资质信息":
//
// break;
//case "BOM主数据":
//
// break;
//case "过程控制项质量数据":
//
// break;
//case "生产过程数据":
//
// break;
//case "产品一次合格率":
//
// break;
//case "工位一次合格率":
//
// break;
//case "缺陷业务数据":
//
// break;
//case "环境业务数据":
//
// break;
//case "设备OEE达成率":
//
// break;
//case "OEE时间明细":
//
// break;
//case "物料主数据":
//
// break;
//case "工艺装备":
//
// break;
//case "工艺":
//
//break;
//case "M+6月物料需求计划风险确认":
// break;
//case "日物料需求计划风险确认":
// break;
//case "采购订单风险确认":
// break;
//case "供应商共享库存-上午":
// break;
//case "供应商共享库存-晚上":
// break;
case "整车月度生产计划1":
var service1 = _builder.GetRequiredService<SupplierProPlaningService>();
var result1 = await service1.GetLogDataPaged(requestInputBase);
return Ok(result1);
break;
case "M+6月物料需求计划1":
var service2 = _builder.GetRequiredService<CherySupplierMrpMonthService>();
var result2 = await service2.GetLogDataPaged(requestInputBase);
return Ok(result2);
break;
case "整车月度生产计划2":
var service3 = _builder.GetRequiredService<SupplierProPlaningService>();
var result3= await service3.GetLogDataPaged(requestInputBase);
return Ok(result3);
break;
case "M+6月物料需求计划2":
var service4 = _builder.GetRequiredService<CherySupplierMrpMonthService>();
var result4= await service4.GetLogDataPaged(requestInputBase);
return Ok(result4);
break;
case "日物料需求计划":
var service5 = _builder.GetRequiredService<CherySupplierMrpDataService>();
var result5 = await service5.GetLogDataPaged(requestInputBase);
return Ok(result5);
break;
case "计划协议":
var service6 = _builder.GetRequiredService<CherySupplierSaWeekService>();
var result6 = await service6.GetLogDataPaged(requestInputBase);
return Ok(result6);
break;
case "采购订单":
var service7 = _builder.GetRequiredService<CherySupplierPoService>();
var result7 = await service7.GetLogDataPaged(requestInputBase);
return Ok(result7);
break;
case "过焊装未过总装":
var service8 = _builder.GetRequiredService<CherySupplierPorHSCHEDULService>();
var result8 = await service8.GetLogDataPaged(requestInputBase);
return Ok(result8);
break;
case "过涂装未过总装":
var service9 = _builder.GetRequiredService<CherySupplierProTSCHEDULService>();
var result9 = await service9.GetLogDataPaged(requestInputBase);
return Ok(result9);
break;
case "排序供货":
var service10 = _builder.GetRequiredService<CherySupplierProCSCHEDULService>();
var result10 = await service10.GetLogDataPaged(requestInputBase);
return Ok(result10);
break;
case "看板配送单":
var service11 = _builder.GetRequiredService<CherySupplierDelStateService>();
var result11 = await service11.GetLogDataPaged(requestInputBase);
return Ok(result11);
break;
case "退货单":
var service12 = _builder.GetRequiredService<CherySupplierReturnService>();
var result12 = await service12.GetLogDataPaged(requestInputBase);
return Ok(result12);
break;
case "奇瑞RDC共享库存":
var service13 = _builder.GetRequiredService<SupplierInvDataService>();
var result13 = await service13.GetLogDataPaged(requestInputBase);
return Ok(result13);
break;
case "日MRP状态监控":
var service14 = _builder.GetRequiredService<CherySupplierMrpService>();
var result14 = await service14.GetLogDataPaged(requestInputBase);
return Ok(result14);
break;
case "日MRP预警推移":
var service15 = _builder.GetRequiredService<CherySupplierMrpWarningService>();
var result15 = await service15.GetLogDataPaged(requestInputBase);
return Ok(result15);
break;
}
return Ok();
}
}
}