周红军 3 weeks ago
parent
commit
9942f290a3
  1. 2
      API/CherryTaskManager/appsettings.json
  2. 4
      API/TaskManager.Entity/Entity.cs
  3. 68
      API/TaskManager.EntityFramework/JobDbContext.cs
  4. 455
      API/TaskManager.EntityFramework/Migrations/20250528092555_init.Designer.cs
  5. 171
      API/TaskManager.EntityFramework/Migrations/20250528092555_init.cs
  6. 451
      API/TaskManager.EntityFramework/Migrations/JobDbContextModelSnapshot.cs
  7. 4
      API/TaskManager.EntityFramework/TaskManager.EntityFramework.csproj
  8. 5
      API/Wood.Admin.WebApi/Startup.cs
  9. 2
      API/Wood.Admin.WebApi/appsettings.json
  10. 14
      API/Wood.Service/Controllers/RecurringJobOutPageController.cs
  11. 698
      API/Wood.Service/Controllers/TaskConifgureController.cs

2
API/CherryTaskManager/appsettings.json

@ -4,7 +4,7 @@
},
"ConnectionStrings": {
"Default": "Server=192.168.1.228;Database=TaskManager;User ID=sa;Password=ChangkeTec@2021;TrustServerCertificate=True"
"Default": "Server=192.168.1.228;Database=TaskManager2;User ID=sa;Password=ChangkeTec@2021;TrustServerCertificate=True"
},

4
API/TaskManager.Entity/Entity.cs

@ -15,7 +15,7 @@ namespace TaskManager.Entity
{
Task ExecuteAsync(string url, string path, string takName);
}
public class TaskConifgure
public class TaskConifgure:BaseEntity
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
@ -69,7 +69,7 @@ namespace TaskManager.Entity
public string RequestDate { get; set; }
public string Id { get; set; }
public string TaskId { get; set; }
}

68
API/TaskManager.EntityFramework/JobDbContext.cs

@ -63,172 +63,172 @@ namespace TaskManager.EntityFramework
// // 配置SQL Server连接
// optionsBuilder.UseSqlServer("Server=192.168.1.228;Database=TaskManager;User ID=sa;Password=ChangkeTec@2021;TrustServerCertificate=True");
//}
optionsBuilder.UseSqlServer(GlobalContext.SystemConfig.CustomerDb);
optionsBuilder.UseSqlServer("Server = 192.168.1.228; Database = TaskManager2; User ID = sa; Password = ChangkeTec@2021; TrustServerCertificate = True");
}
/// <summary>
/// 来料检验数据
/// </summary>
public DbSet<SUPPLIER_PRO_MATERIAL_STOCK> SupplierProMaterialStock { get; set; }
public DbSet<SUPPLIER_PRO_MATERIAL_STOCK> SUPPLIER_PRO_MATERIAL_STOCK { get; set; } // 类名与属性名一致
/// <summary>
/// 排产数据
/// </summary>
public DbSet<SUPPLIER_PRO_SCHEDULING> SupplierProScheduling { get; set; }
public DbSet<SUPPLIER_PRO_SCHEDULING> SUPPLIER_PRO_SCHEDULING { get; set; }
/// <summary>
/// 供应商基础信息
/// </summary>
public DbSet<SUPPLIER_INFO> SupplierInfo { get; set; }
public DbSet<SUPPLIER_INFO> SUPPLIER_INFO { get; set; }
/// <summary>
/// 人员资质信息
/// </summary>
public DbSet<SUPPLIER_EMPLOYEE> SupplierEmployee { get; set; }
public DbSet<SUPPLIER_EMPLOYEE> SUPPLIER_EMPLOYEE { get; set; }
/// <summary>
/// BOM主数据
/// </summary>
public DbSet<SUPPLIER_BOM> SupplierBom { get; set; }
public DbSet<SUPPLIER_BOM> SUPPLIER_BOM { get; set; }
/// <summary>
/// 过程控制项质量数据
/// </summary>
public DbSet<SUPPLIER_PRO_CPS> SupplierProCps { get; set; }
public DbSet<SUPPLIER_PRO_CPS> SUPPLIER_PRO_CPS { get; set; }
/// <summary>
/// 生产过程数据
/// </summary>
public DbSet<SUPPLIER_PRO_DATA> SupplierProData { get; set; }
public DbSet<SUPPLIER_PRO_DATA> SUPPLIER_PRO_DATA { get; set; }
/// <summary>
/// 产品一次合格率
/// </summary>
public DbSet<SUPPLIER_PRO_FIRST_PASSYIELD> SupplierProFirstPassYield { get; set; }
public DbSet<SUPPLIER_PRO_FIRST_PASSYIELD> SUPPLIER_PRO_FIRST_PASSYIELD { get; set; }
/// <summary>
/// 工位一次合格率
/// </summary>
public DbSet<SUPPLIER_PRO_STATION_FIRST_PASSYIELD> SupplierProStationFirstPassYield { get; set; }
public DbSet<SUPPLIER_PRO_STATION_FIRST_PASSYIELD> SUPPLIER_PRO_STATION_FIRST_PASSYIELD { get; set; }
/// <summary>
/// 缺陷业务数据
/// </summary>
public DbSet<SUPPLIER_PRO_FLAW> SupplierProFlaw { get; set; }
public DbSet<SUPPLIER_PRO_FLAW> SUPPLIER_PRO_FLAW { get; set; }
/// <summary>
/// 环境业务数据
/// </summary>
public DbSet<SUPPLIER_PRO_ENVIRONMENT> SupplierProEnvironment { get; set; }
public DbSet<SUPPLIER_PRO_ENVIRONMENT> SUPPLIER_PRO_ENVIRONMENT { get; set; }
/// <summary>
/// 设备OEE达成率
/// </summary>
public DbSet<SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE> SupplierProOeeAchievementRate { get; set; }
public DbSet<SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE> SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE { get; set; }
/// <summary>
/// OEE时间明细
/// </summary>
public DbSet<SUPPLIER_PRO_OEE_TIME_DETAILS> SupplierProOeeTimeDetails { get; set; }
public DbSet<SUPPLIER_PRO_OEE_TIME_DETAILS> SUPPLIER_PRO_OEE_TIME_DETAILS { get; set; }
/// <summary>
/// 物料主数据
/// </summary>
public DbSet<SUPPLIER_PRO_MATERIAL_DATA> SupplierProMaterialData { get; set; }
public DbSet<SUPPLIER_PRO_MATERIAL_DATA> SUPPLIER_PRO_MATERIAL_DATA { get; set; }
/// <summary>
/// 附件类数据
/// </summary>
public DbSet<SUPPLIER_PRO_ATTACHMENT_DATA> SupplierProAttachmentData { get; set; }
public DbSet<SUPPLIER_PRO_ATTACHMENT_DATA> SUPPLIER_PRO_ATTACHMENT_DATA { get; set; }
/// <summary>
/// 工艺装备
/// </summary>
public DbSet<SUPPLIER_PRO_PROCESS_EQUIPMENT> SupplierProProcessEquipment { get; set; }
public DbSet<SUPPLIER_PRO_PROCESS_EQUIPMENT> SUPPLIER_PRO_PROCESS_EQUIPMENT { get; set; }
/// <summary>
/// 工艺
/// </summary>
public DbSet<SUPPLIER_PRO_PROCESS> SupplierProProcess { get; set; }
public DbSet<SUPPLIER_PRO_PROCESS> SUPPLIER_PRO_PROCESS { get; set; }
/// <summary>
/// 整车月度生产计划-2
/// </summary>
public DbSet<SUPPLIER_PRO_PLANING> SupplierProPlaning { get; set; }
public DbSet<SUPPLIER_PRO_PLANING> SUPPLIER_PRO_PLANING { get; set; }
/// <summary>
/// M+6月物料需求计划
/// </summary>
public DbSet<SUPPLIER_MRP_MONTH> SupplierMrpMonth { get; set; }
public DbSet<SUPPLIER_MRP_MONTH> SUPPLIER_MRP_MONTH { get; set; }
/// <summary>
/// M+6月物料需求计划风险确认
/// </summary>
public DbSet<SUPPLIER_CON_MMRP> SupplierConMmrP { get; set; }
public DbSet<SUPPLIER_CON_MMRP> SUPPLIER_CON_MMRP { get; set; }
/// <summary>
/// 日物料需求计划
/// </summary>
public DbSet<SUPPLIER_MRP_DATE> SupplierMrpDate { get; set; }
public DbSet<SUPPLIER_MRP_DATE> SUPPLIER_MRP_DATE { get; set; }
/// <summary>
/// 日物料需求计划风险确认
/// </summary>
public DbSet<SUPPLIER_CON_DATE> SupplierConDate { get; set; }
public DbSet<SUPPLIER_CON_DATE> SUPPLIER_CON_DATE { get; set; }
/// <summary>
/// 计划协议
/// </summary>
public DbSet<SUPPLIER_SA_WEEK> SupplierSaWeek { get; set; }
public DbSet<SUPPLIER_SA_WEEK> SUPPLIER_SA_WEEK { get; set; }
/// <summary>
/// 采购订单
/// </summary>
public DbSet<SUPPLIER_PO> SupplierPo { get; set; }
public DbSet<SUPPLIER_PO> SUPPLIER_PO { get; set; }
/// <summary>
/// 采购订单风险确认
/// </summary>
public DbSet<SUPPLIER_CON_PO> SupplierConPo { get; set; }
public DbSet<SUPPLIER_CON_PO> SUPPLIER_CON_PO { get; set; }
/// <summary>
/// 过焊装未过总装
/// </summary>
public DbSet<SUPPLIER_PRO_HSCHEDUL> SupplierProHSchedul { get; set; }
public DbSet<SUPPLIER_PRO_HSCHEDUL> SUPPLIER_PRO_HSCHEDUL { get; set; }
/// <summary>
/// 过涂装未过总装
/// </summary>
public DbSet<SUPPLIER_PRO_TSCHEDUL> SupplierProTSchedul { get; set; }
public DbSet<SUPPLIER_PRO_TSCHEDUL> SUPPLIER_PRO_TSCHEDUL { get; set; }
/// <summary>
/// 排序供货
/// </summary>
public DbSet<SUPPLIER_PRO_CSCHEDUL> SupplierProCSchedul { get; set; }
public DbSet<SUPPLIER_PRO_CSCHEDUL> SUPPLIER_PRO_CSCHEDUL { get; set; }
/// <summary>
/// 看板配送单
/// </summary>
public DbSet<SUPPLIER_DEL_STATE> SupplierDelState { get; set; }
public DbSet<SUPPLIER_DEL_STATE> SUPPLIER_DEL_STATE { get; set; }
/// <summary>
/// 退货单
/// </summary>
public DbSet<SUPPLIER_RETURN> SupplierReturn { get; set; }
public DbSet<SUPPLIER_RETURN> SUPPLIER_RETURN { get; set; }
/// <summary>
/// 奇瑞RDC共享库存
/// </summary>
public DbSet<SUPPLIER_INV_DATA> SupplierInvData { get; set; }
public DbSet<SUPPLIER_INV_DATA> SUPPLIER_INV_DATA { get; set; }
/// <summary>
/// 供应商共享库存
/// </summary>
public DbSet<SUPPLIER_SINV_DATA> SupplierSInvData { get; set; }
public DbSet<SUPPLIER_SINV_DATA> SUPPLIER_SINV_DATA { get; set; }
/// <summary>
/// 日MRP状态监控
/// </summary>
public DbSet<SUPPLIER_MRP_STATE> SupplierMrpState { get; set; }
public DbSet<SUPPLIER_MRP_STATE> SUPPLIER_MRP_STATE { get; set; }
public DbSet<TaskLog> TaskLogs { get; set; }

455
API/CherryTaskManager/Migrations/20250526065431_Init.Designer.cs → API/TaskManager.EntityFramework/Migrations/20250528092555_init.Designer.cs

File diff suppressed because it is too large

171
API/CherryTaskManager/Migrations/20250526065431_Init.cs → API/TaskManager.EntityFramework/Migrations/20250528092555_init.cs

@ -3,10 +3,10 @@ using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace CherryTaskManager.Migrations
namespace TaskManager.EntityFramework.Migrations
{
/// <inheritdoc />
public partial class Init : Migration
public partial class init : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
@ -20,7 +20,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -76,7 +77,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -113,7 +115,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -137,7 +140,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -150,7 +154,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
DeliveryNumber = table.Column<string>(type: "nvarchar(max)", nullable: false),
SerialNumber = table.Column<string>(type: "nvarchar(max)", nullable: false),
SerialSrate = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -172,7 +175,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -188,7 +194,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -204,7 +211,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -217,7 +225,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
PlantId = table.Column<string>(type: "nvarchar(max)", nullable: false),
PlantName = table.Column<string>(type: "nvarchar(max)", nullable: false),
MaterialCode = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -234,7 +241,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -247,7 +257,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
ReleaseEdition = table.Column<string>(type: "nvarchar(max)", nullable: false),
MaterialCode = table.Column<string>(type: "nvarchar(max)", nullable: false),
MaterialDescription = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -295,7 +304,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -308,7 +320,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
ReleaseEdition = table.Column<string>(type: "nvarchar(max)", nullable: false),
MaterialCode = table.Column<string>(type: "nvarchar(max)", nullable: false),
MaterialDescription = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -337,7 +348,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -350,7 +364,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
PlantId = table.Column<string>(type: "nvarchar(max)", nullable: false),
PlantName = table.Column<string>(type: "nvarchar(max)", nullable: false),
DemandSrate = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -379,7 +392,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -392,7 +408,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
PurchaseOrder = table.Column<string>(type: "nvarchar(max)", nullable: false),
SerialNumber = table.Column<string>(type: "nvarchar(max)", nullable: false),
PlantId = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -421,7 +436,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -437,7 +455,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -453,7 +472,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -466,7 +486,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
Models = table.Column<string>(type: "nvarchar(max)", nullable: false),
Vin = table.Column<string>(type: "nvarchar(max)", nullable: false),
ProductionLineId = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -490,7 +509,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -506,7 +528,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -522,7 +545,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -538,7 +562,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -554,7 +579,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -567,7 +593,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
Models = table.Column<string>(type: "nvarchar(max)", nullable: false),
Vin = table.Column<string>(type: "nvarchar(max)", nullable: false),
ProductionLineId = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -585,7 +610,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -601,7 +629,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -617,7 +646,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -633,7 +663,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -649,7 +680,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -683,12 +715,14 @@ namespace CherryTaskManager.Migrations
CreateTime = table.Column<DateTime>(type: "datetime2", nullable: true),
Plant = table.Column<string>(type: "nvarchar(max)", nullable: false),
Assembly = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true),
CreateByUser = table.Column<string>(type: "nvarchar(max)", nullable: false),
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -704,7 +738,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -720,7 +755,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -736,7 +772,8 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -749,10 +786,35 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
SupplierCode = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
SupplierName = table.Column<string>(type: "VARCHAR(64)", maxLength: 64, nullable: false),
PlantId = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
PlantName = table.Column<string>(type: "VARCHAR(64)", maxLength: 64, nullable: false),
WorkshopId = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
WorkshopName = table.Column<string>(type: "VARCHAR(64)", maxLength: 64, nullable: false),
ProductionLineId = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
ProductionLineName = table.Column<string>(type: "VARCHAR(100)", maxLength: 100, nullable: false),
StationId = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
StationName = table.Column<string>(type: "VARCHAR(64)", maxLength: 64, nullable: false),
CheryProductNo = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
CheryProductName = table.Column<string>(type: "VARCHAR(100)", maxLength: 100, nullable: false),
VendorProductNo = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
VendorProductName = table.Column<string>(type: "VARCHAR(100)", maxLength: 100, nullable: false),
ProductBatchNo = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
ManufactureNo = table.Column<string>(type: "VARCHAR(32)", maxLength: 32, nullable: false),
WorkOrderNumber = table.Column<decimal>(type: "DECIMAL(16,5)", precision: 16, scale: 5, nullable: false),
DefectiveNumber = table.Column<decimal>(type: "DECIMAL(16,5)", precision: 16, scale: 5, nullable: false),
AcceptableNumber = table.Column<decimal>(type: "DECIMAL(16,5)", precision: 16, scale: 5, nullable: false),
OncePassRateRealValue = table.Column<decimal>(type: "DECIMAL(16,5)", precision: 16, scale: 5, nullable: false),
OncePassRateTagValue = table.Column<decimal>(type: "DECIMAL(16,5)", precision: 16, scale: 5, nullable: false),
WorkShift = table.Column<string>(type: "VARCHAR(10)", maxLength: 10, nullable: false),
StatisticalTime = table.Column<string>(type: "CHAR(19)", maxLength: 19, nullable: false),
DateTime = table.Column<string>(type: "CHAR(19)", maxLength: 19, nullable: false),
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "NVarchar(500)", maxLength: 500, nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{
@ -765,7 +827,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
Models = table.Column<string>(type: "nvarchar(max)", nullable: false),
Vin = table.Column<string>(type: "nvarchar(max)", nullable: false),
ProductionLineId = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -784,7 +845,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -797,7 +861,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
ReturnNumber = table.Column<string>(type: "nvarchar(max)", nullable: false),
SerialNumber = table.Column<string>(type: "nvarchar(max)", nullable: false),
SerialSrate = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -822,7 +885,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -835,7 +901,6 @@ namespace CherryTaskManager.Migrations
{
UId = table.Column<long>(type: "bigint", nullable: false)
.Annotation("SqlServer:Identity", "1, 1"),
Id = table.Column<int>(type: "int", nullable: false),
ScheduleAgreement = table.Column<string>(type: "nvarchar(max)", nullable: false),
SerialNumber = table.Column<string>(type: "nvarchar(max)", nullable: false),
MaterialCode = table.Column<string>(type: "nvarchar(max)", nullable: false),
@ -853,7 +918,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -882,7 +950,10 @@ namespace CherryTaskManager.Migrations
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false)
Remark = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RequestDate = table.Column<string>(type: "nvarchar(max)", nullable: false),
Id = table.Column<string>(type: "nvarchar(max)", nullable: true)
},
constraints: table =>
{
@ -902,7 +973,11 @@ namespace CherryTaskManager.Migrations
TableName = table.Column<string>(type: "nvarchar(max)", nullable: false),
TaskName = table.Column<string>(type: "nvarchar(max)", nullable: false),
Url = table.Column<string>(type: "nvarchar(max)", nullable: false),
IsAuto = table.Column<bool>(type: "bit", nullable: false)
IsAuto = table.Column<bool>(type: "bit", nullable: false),
WriteState = table.Column<bool>(type: "bit", nullable: false),
ReadState = table.Column<bool>(type: "bit", nullable: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
TaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false)
},
constraints: table =>
{

451
API/CherryTaskManager/Migrations/JobDbContextModelSnapshot.cs → API/TaskManager.EntityFramework/Migrations/JobDbContextModelSnapshot.cs

File diff suppressed because it is too large

4
API/TaskManager.EntityFramework/TaskManager.EntityFramework.csproj

@ -24,4 +24,8 @@
<ProjectReference Include="..\Wood.Util\Wood.Util.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="Migrations\" />
</ItemGroup>
</Project>

5
API/Wood.Admin.WebApi/Startup.cs

@ -270,6 +270,11 @@ namespace Wood.Admin.WebApi
options.OperationFilter<SecurityRequirementsOperationFilter>();
#endregion
});
//services.BuildServiceProvider().GetRequiredService()
}
/// <summary>

2
API/Wood.Admin.WebApi/appsettings.json

@ -20,7 +20,7 @@
"DBEnableDiffLog": true, //
"LogDays": 90, //
"RunAutoJob": true, //job
"CustomerDb": "Server = 192.168.1.228; Database = TaskManager1; User ID = sa; Password = ChangkeTec@2021; TrustServerCertificate = True"
"CustomerDb": "Server=192.168.1.228; Database=TaskManager1; User ID = sa; Password=ChangkeTec@2021; TrustServerCertificate = True"
},
"JwtConfig": {
"SecretKey": "3c1cac3f546eda35168c3aa3cn91780fbe703f0996c6d123ea96dc85c70bbc0a", // string 16

14
API/Wood.Service/Controllers/RecurringJobOutPageController.cs

@ -197,7 +197,7 @@ namespace TaskManager.Controllers
}
[NonAction]
public async Task TestAsync(string url, string path, string taskName, string inputdate)
public virtual async Task TestAsync(string url, string path, string taskName, string inputdate)
{
Url = url;
Path = path;
@ -229,6 +229,7 @@ namespace TaskManager.Controllers
[HttpPost]
public async Task<ActionResult<T>> Create(T entity)
{
entity.CreationTime=DateTime.Now;
var createdEntity = await _repository.AddAsync(entity);
return CreatedAtAction(nameof(GetById), new { id = createdEntity.Id }, createdEntity);
}
@ -239,22 +240,19 @@ namespace TaskManager.Controllers
var _first=await _repository.GetByIdAsync(entity.UId);
if (_first == null)
{
return BadRequest();
return new JsonResult(new { Code = 400, Message = "修改失败!" });
}
await _repository.UpdateAsync(entity);
return NoContent();
return new JsonResult(new { Code = 200, Message = "修改成功!" });
}
[HttpDelete("{id}")]
public async Task<IActionResult> Delete(int id)
{
await _repository.DeleteAsync(id);
return NoContent();
return new JsonResult(new { Code = 200, Message = "删除成功!" }); ;
}
[HttpGet]
public async Task<ActionResult<PagedResult<T>>> GetPaged(

698
API/Wood.Service/Controllers/TaskConifgureController.cs

@ -7,27 +7,32 @@ using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using System;
using System.IO;
using System.Linq.Expressions;
using System.Threading.Tasks;
using TaskManager.Controllers;
using TaskManager.Entity;
using TaskManager.EntityFramework;
using TaskManager.EntityFramework.Repository;
namespace TaskManager.Controllers
{
//[ApiController]
//[Route("[controller]")]
public class TaskConifgureController :ControllerBase
public class TaskConifgureController : ControllerBase
{
private readonly JobDbContext _context;
private readonly IServiceProvider _builder;
private readonly IConfiguration _configuration;
public TaskConifgureController(JobDbContext context, IServiceProvider builder, IConfiguration configuration)
private readonly IRepository<TaskConifgure> _repository;
public TaskConifgureController(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository<TaskConifgure> repository)
{
_builder = builder;
_context = context;
_configuration = configuration;
_repository = repository;
}
/// <summary>
/// 请除所有任务
@ -49,22 +54,22 @@ namespace TaskManager.Controllers
/// </summary>
/// <param name="taskName"></param>
/// <returns></returns>
[HttpPost(Name = "ExecuteTask")]
[NonAction]
public async Task ExecuteTask(string taskName)
{
var first=await _context.TaskConifgure.FirstOrDefaultAsync(p => p.TaskName == taskName);
var first = await _context.TaskConifgure.FirstOrDefaultAsync(p => p.TaskName == taskName);
var url = first.Url;
var path = first.Api;
var controller = _builder.GetRequiredService<SupplierProPlaningService>();
await controller.ExecuteAsync(url,path, taskName);
await controller.ExecuteAsync(url, path, taskName);
}
/// <summary>
@ -72,7 +77,7 @@ namespace TaskManager.Controllers
/// </summary>
/// <param name="taskName"></param>
/// <returns></returns>
[HttpGet(Name = "testTask")]
[NonAction]
public async Task testTask(string taskName)
{
var first = await _context.TaskConifgure.FirstOrDefaultAsync(p => p.TaskName == taskName);
@ -80,7 +85,7 @@ namespace TaskManager.Controllers
var path = first.Api;
var controller = _builder.GetRequiredService<SupplierProPlaningService>();
await controller.TestAsync(url, path, taskName,"2025-04-21");
await controller.TestAsync(url, path, taskName, "2025-04-21");
@ -93,17 +98,14 @@ namespace TaskManager.Controllers
public async Task RefreshTaskConfig()
{
// 从数据库加载所有任务配置
var tasks = _context.TaskConifgure.Where(p => p.IsAuto == true && !string.IsNullOrEmpty(p.Corn)
&& !string.IsNullOrEmpty(p.Api) && !string.IsNullOrEmpty(p.Url)).ToList();
var delTasks = _context.TaskConifgure.Where(p => p.IsAuto == false || string.IsNullOrEmpty(p.Corn)
var delTasks = _context.TaskConifgure.Where(p => p.IsAuto == false || string.IsNullOrEmpty(p.Corn)
|| string.IsNullOrEmpty(p.Api) || string.IsNullOrEmpty(p.Url)
).ToList();
@ -111,304 +113,304 @@ namespace TaskManager.Controllers
{
var url = task.Url;
var path = task.Api;
switch (task.TaskName)
{
//case "来料检验数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_MATERIAL_STOCK_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url,path,task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "排产数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_SCHEDULING_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "供应商基础信息":
// RecurringJob.AddOrUpdate<SUPPLIER_INFO_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "人员资质信息":
// RecurringJob.AddOrUpdate<SUPPLIER_EMPLOYEE_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "BOM主数据":
// RecurringJob.AddOrUpdate<SUPPLIER_BOM_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "过程控制项质量数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_CPS_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "生产过程数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_DATA_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "产品一次合格率":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_FIRST_PASSYIELD_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "工位一次合格率":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_STATION_FIRST_PASSYIELD_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "缺陷业务数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_FLAW_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "环境业务数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_ENVIRONMENT_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "设备OEE达成率":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "OEE时间明细":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_OEE_TIME_DETAILS_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "物料主数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_MATERIAL_DATA_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "工艺装备":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_PROCESS_EQUIPMENT_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "工艺":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_PROCESS_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
case "整车月度生产计划1":
RecurringJob.AddOrUpdate<SupplierProPlaningService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "M+6月物料需求计划1":
RecurringJob.AddOrUpdate<SupplierMrpMonthService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "整车月度生产计划2":
RecurringJob.AddOrUpdate<SupplierProPlaningService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "M+6月物料需求计划2":
RecurringJob.AddOrUpdate<SupplierMrpMonthService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日物料需求计划":
RecurringJob.AddOrUpdate<SupplierMrpDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "计划协议":
RecurringJob.AddOrUpdate<SupplierSaWeekService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "采购订单":
RecurringJob.AddOrUpdate<SupplierPoService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "过焊装未过总装":
RecurringJob.AddOrUpdate<SupplierPorHSCHEDULService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "过涂装未过总装":
RecurringJob.AddOrUpdate<supplierProTSCHEDULService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "排序供货":
RecurringJob.AddOrUpdate<SupplierProCSCHEDULService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "看板配送单":
RecurringJob.AddOrUpdate<SupplierDelStateService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "退货单":
RecurringJob.AddOrUpdate<SupplierReturnService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "奇瑞RDC共享库存":
RecurringJob.AddOrUpdate<SupplierInvDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日MRP状态监控":
RecurringJob.AddOrUpdate<SupplierMrpDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日MRP预警推移":
RecurringJob.AddOrUpdate<SupplierMrpWarningService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "M+6月物料需求计划风险确认":
RecurringJob.AddOrUpdate<SUPPLIER_CON_MMRP_CONTROLLER>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日物料需求计划风险确认":
RecurringJob.AddOrUpdate<SUPPLIER_CON_DATE_CONTROLLER>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "采购订单风险确认":
RecurringJob.AddOrUpdate<SUPPLIER_CON_PO_CONTROLLER>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "供应商共享库存-上午":
RecurringJob.AddOrUpdate<SupplierSinvDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "供应商共享库存-晚上":
RecurringJob.AddOrUpdate<SupplierSinvDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
}
switch (task.TaskName)
{
//case "来料检验数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_MATERIAL_STOCK_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url,path,task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "排产数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_SCHEDULING_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "供应商基础信息":
// RecurringJob.AddOrUpdate<SUPPLIER_INFO_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "人员资质信息":
// RecurringJob.AddOrUpdate<SUPPLIER_EMPLOYEE_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "BOM主数据":
// RecurringJob.AddOrUpdate<SUPPLIER_BOM_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "过程控制项质量数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_CPS_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "生产过程数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_DATA_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "产品一次合格率":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_FIRST_PASSYIELD_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "工位一次合格率":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_STATION_FIRST_PASSYIELD_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "缺陷业务数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_FLAW_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "环境业务数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_ENVIRONMENT_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "设备OEE达成率":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "OEE时间明细":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_OEE_TIME_DETAILS_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "物料主数据":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_MATERIAL_DATA_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "工艺装备":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_PROCESS_EQUIPMENT_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
//case "工艺":
// RecurringJob.AddOrUpdate<SUPPLIER_PRO_PROCESS_CONTROLLER>(
// task.TaskName,
// x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
// task.Corn,
// TimeZoneInfo.Local
// );
// break;
case "整车月度生产计划1":
RecurringJob.AddOrUpdate<SupplierProPlaningService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "M+6月物料需求计划1":
RecurringJob.AddOrUpdate<SupplierMrpMonthService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "整车月度生产计划2":
RecurringJob.AddOrUpdate<SupplierProPlaningService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "M+6月物料需求计划2":
RecurringJob.AddOrUpdate<SupplierMrpMonthService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日物料需求计划":
RecurringJob.AddOrUpdate<SupplierMrpDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "计划协议":
RecurringJob.AddOrUpdate<SupplierSaWeekService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "采购订单":
RecurringJob.AddOrUpdate<SupplierPoService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "过焊装未过总装":
RecurringJob.AddOrUpdate<SupplierPorHSCHEDULService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "过涂装未过总装":
RecurringJob.AddOrUpdate<supplierProTSCHEDULService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "排序供货":
RecurringJob.AddOrUpdate<SupplierProCSCHEDULService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "看板配送单":
RecurringJob.AddOrUpdate<SupplierDelStateService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "退货单":
RecurringJob.AddOrUpdate<SupplierReturnService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "奇瑞RDC共享库存":
RecurringJob.AddOrUpdate<SupplierInvDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日MRP状态监控":
RecurringJob.AddOrUpdate<SupplierMrpDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日MRP预警推移":
RecurringJob.AddOrUpdate<SupplierMrpWarningService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "M+6月物料需求计划风险确认":
RecurringJob.AddOrUpdate<SUPPLIER_CON_MMRP_CONTROLLER>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "日物料需求计划风险确认":
RecurringJob.AddOrUpdate<SUPPLIER_CON_DATE_CONTROLLER>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "采购订单风险确认":
RecurringJob.AddOrUpdate<SUPPLIER_CON_PO_CONTROLLER>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "供应商共享库存-上午":
RecurringJob.AddOrUpdate<SupplierSinvDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
case "供应商共享库存-晚上":
RecurringJob.AddOrUpdate<SupplierSinvDataService>(
task.TaskName,
x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName),
task.Corn,
TimeZoneInfo.Local
);
break;
}
}
foreach (var task in delTasks)
{
@ -559,7 +561,7 @@ namespace TaskManager.Controllers
// 移除指定的定时任务
RecurringJob.RemoveIfExists(task.TaskName);
break;
}
}
@ -568,11 +570,79 @@ namespace TaskManager.Controllers
}
[HttpGet]
public async Task<ActionResult<IEnumerable<TaskConifgure>>> GetAll()
{
return await _repository.GetAllAsync() as List<TaskConifgure>;
}
// 使用 Hangfire 注册定时任务
// Console.WriteLine($"已注册定时任务: {task.TaskName}, Cron: {task.Corn}");
[HttpGet("{id}")]
public async Task<ActionResult<TaskConifgure>> GetById(int id)
{
var entity = await _repository.GetByIdAsync(id);
if (entity == null) return NotFound();
return entity;
}
[HttpPost]
public async Task<ActionResult<TaskConifgure>> Create(TaskConifgure entity)
{
entity.CreationTime = DateTime.Now;
var createdEntity = await _repository.AddAsync(entity);
return new JsonResult(new { Code = 200, Message = "创建成功!" });
}
[HttpPut("{id}")]
public async Task<IActionResult> Update(TaskConifgure entity)
{
var _first = await _repository.GetByIdAsync(entity.UId);
if (_first == null)
{
return new JsonResult(new { Code = 400, Message = "修改失败!" });
}
await _repository.UpdateAsync(entity);
return new JsonResult(new { Code = 200, Message = "修改成功!" });
}
[HttpDelete("{id}")]
public async Task<IActionResult> Delete(int id)
{
await _repository.DeleteAsync(id);
return new JsonResult(new { Code = 200, Message = "删除成功!" }); ;
}
[HttpGet]
public async Task<ActionResult<PagedResult<TaskConifgure>>> GetPaged(
[FromQuery] int pageNumber = 1,
[FromQuery] int pageSize = 10,
[FromQuery] string sortBy = "",
[FromQuery] bool isAscending = true,
[FromQuery] Dictionary<string, string> filters = null)
{
var pagingParams = new PagingParams
{
PageNumber = pageNumber,
PageSize = pageSize,
SortBy = sortBy,
IsAscending = isAscending,
Filters = filters
};
// 可以在这里构建表达式树过滤条件
Expression<Func<TaskConifgure, bool>> filter = null;
var pagedResult = await _repository.GetPagedAsync(filter, pagingParams);
return Ok(pagedResult);
}
// 使用 Hangfire 注册定时任务
// Console.WriteLine($"已注册定时任务: {task.TaskName}, Cron: {task.Corn}");
}
}

Loading…
Cancel
Save