This commit is contained in:
wyw 2025-12-18 11:32:05 +08:00
commit e49f8fbc06
80 changed files with 967224 additions and 139185 deletions

View File

@ -463,24 +463,24 @@ namespace APT.BaseData.Services.Services.FM
if (detail.APPROVE_USER_ID != null)
appdetails.Add(detail);
});
appdetails.OrderBy(t => t.NUM);
var loginUser = users.FirstOrDefault(t => t.ID == loginUserId);
var departUser = this.GetEntity<T_FM_DEPARTMENT>(t => (t.USER_ID == loginUserId || t.CHARGEUSER_ID == loginUserId) && (t.NAME.Contains("安全环保") || t.NAME.Contains("安环部")));
if (departUser != null || (loginUser.Nav_ApproveRole != null && loginUser.Nav_ApproveRole.NAME.Contains("安环部负责人")) || (loginUser.Nav_ApproveRole != null && loginUser.Nav_ApproveRole.NAME.Contains("安环部安全员")))
{
var tempSafeD = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("部门安全员"));
var tempSafe = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("安环部安全员"));
if (tempSafe != null && tempSafeD != null && appdetails.Count() > 1 && tempSafeD.APPROVE_USER_ID == tempSafe.APPROVE_USER_ID)
{
appdetails.Remove(tempSafe);
}
var tempChargeD = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("部门负责人"));
var tempCharge = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("安环部负责人"));
if (tempCharge != null && tempChargeD != null && appdetails.Count() > 1 && tempChargeD.APPROVE_USER_ID == tempCharge.APPROVE_USER_ID)
{
appdetails.Remove(tempCharge);
}
}
appdetails = appdetails.OrderBy(t => t.NUM).GroupBy(m=>m.APPROVE_USER_ID).Select(n=>n.LastOrDefault()).ToList();
//var loginUser = users.FirstOrDefault(t => t.ID == loginUserId);
//var departUser = this.GetEntity<T_FM_DEPARTMENT>(t => (t.USER_ID == loginUserId || t.CHARGEUSER_ID == loginUserId) && (t.NAME.Contains("安全环保") || t.NAME.Contains("安环部")));
//if (departUser != null || (loginUser.Nav_ApproveRole != null && loginUser.Nav_ApproveRole.NAME.Contains("安环部负责人")) || (loginUser.Nav_ApproveRole != null && loginUser.Nav_ApproveRole.NAME.Contains("安环部安全员")))
//{
// var tempSafeD = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("部门安全员"));
// var tempSafe = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("安环部安全员"));
// if (tempSafe != null && tempSafeD != null && appdetails.Count() > 1 && tempSafeD.APPROVE_USER_ID == tempSafe.APPROVE_USER_ID)
// {
// appdetails.Remove(tempSafe);
// }
// var tempChargeD = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("部门负责人"));
// var tempCharge = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("安环部负责人"));
// if (tempCharge != null && tempChargeD != null && appdetails.Count() > 1 && tempChargeD.APPROVE_USER_ID == tempCharge.APPROVE_USER_ID)
// {
// appdetails.Remove(tempCharge);
// }
//}
appdetails.ForEach(i => i.Nav_ApproveRole = null);
appdetails.Where(i => i.NUM == appdetails.Min(x => x.NUM)).ForEach(i => i.IS_CURRENT = true);
@ -1572,7 +1572,50 @@ namespace APT.BaseData.Services.Services.FM
}
}
}
/// <summary>
/// 根据部门树查找审核人(新)去除层级
/// </summary>
/// <param name="approveDetails"></param>
/// <param name="approveNode"></param>
/// <returns></returns>
private Guid? GetApproveUserNew(T_PF_APPROVE_TEMP_DETAIL approveTempDetail, List<T_FM_USER> users, List<T_FM_DEPARTMENT> departs, Guid loginUserId)
{
Guid? approveId = null;
var user = users.FirstOrDefault(t => t.ID == loginUserId);
var approveIds = users.Where(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID).Select(t => t.ID).ToList();
if (approveIds.Count() == 0)
{
//当前审批节点未配人员返回Null
return approveId;
}
else if (approveIds.Count() == 1)
{
//当前节点只有一个人
approveId = approveIds.FirstOrDefault();
}
else
{
//当前节点很多人,按当前登录人的层级及上级组织,只会取到一个
if (user.DEPARTMENT_ID != null)
{
List<Guid> departmentIds = new List<Guid>();
GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
if (departmentIds.Any())
{
var userTemp = users.FirstOrDefault(x => x.DEPARTMENT_ID!=null && x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID) && approveIds.Contains(x.ID));
if (userTemp != null)
{
approveId = userTemp.ID;
}
else
{
return approveId;
}
}
}
}
return approveId;
}
/// <summary>
/// 根据部门树查找审核人
/// </summary>
@ -1582,7 +1625,37 @@ namespace APT.BaseData.Services.Services.FM
private Guid? GetApproveUser(T_PF_APPROVE_TEMP_DETAIL approveTempDetail, List<T_FM_USER> users, Guid loginUserId)
{
Guid? approveId = null;
if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.Company)
var approveRole = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.ID == approveTempDetail.APPROVE_ROLE_ID);
if (approveRole != null && approveRole.NAME == "分管领导")
{
var user = users.FirstOrDefault(t => t.ID == loginUserId);
if (user.DEPARTMENT_ID != null)
{
List<Guid> departmentIds = new List<Guid>();
GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
if (departmentIds.Any())
{
var dep = GetEntity<T_FM_DEPARTMENT>(t => departmentIds.Contains(t.ID) && t.DEPARTMENT_TYPE == approveRole.DEPARTMENT_TYPE);
if (dep != null && dep.CHARGEUSER_ID != null)
{
approveId = dep.CHARGEUSER_ID;
}
else
{
return approveId;
}
}
else
{
return approveId;
}
}
else
{
return approveId;
}
}
else if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.Company)
{
var approveIds = users.Where(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID).Select(t => t.ID).ToList();
if (approveIds.Count() == 0)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,244 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class hmr2025120301 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_T_FM_USER_POST_POST_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST");
migrationBuilder.DropForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_T_FM_USER_POST_POST_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST");
migrationBuilder.RenameColumn(
name: "POST_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
newName: "DEPARTMENT_ID");
migrationBuilder.RenameIndex(
name: "IX_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_POST_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
newName: "IX_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DEPARTMENT_ID");
migrationBuilder.RenameColumn(
name: "POST_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
newName: "DEPARTMENT_ID");
migrationBuilder.RenameIndex(
name: "IX_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_POST_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
newName: "IX_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DEPARTMENT_ID");
migrationBuilder.AddColumn<int>(
name: "DEPARTMENT_TYPE",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<int>(
name: "DEPARTMENT_TYPE",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.CreateTable(
name: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL",
columns: table => new
{
ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
RISK_IDENTIFY_DETAIL_RESULT_POST_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
POST_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IS_DELETED = table.Column<bool>(type: "bit", nullable: false),
ORG_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
ENTITY_ORG_TPYE = table.Column<int>(type: "int", nullable: false),
FORM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
FLOW_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_SEND_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CREATE_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
MODIFY_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
CREATER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
MODIFIER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL", x => x.ID);
table.ForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL_T_FM_ORGANIZATION_ORG_ID",
column: x => x.ORG_ID,
principalTable: "T_FM_ORGANIZATION",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL_T_FM_USER_POST_POST_ID",
column: x => x.POST_ID,
principalTable: "T_FM_USER_POST",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_RISK_IDENTIFY_DETAIL_RESULT_POST_ID",
column: x => x.RISK_IDENTIFY_DETAIL_RESULT_POST_ID,
principalTable: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateTable(
name: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL",
columns: table => new
{
ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IDENTIFY_RESULT_SUMMARY_POST_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
POST_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IS_DELETED = table.Column<bool>(type: "bit", nullable: false),
ORG_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
ENTITY_ORG_TPYE = table.Column<int>(type: "int", nullable: false),
FORM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
FLOW_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_SEND_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CREATE_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
MODIFY_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
CREATER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
MODIFIER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL", x => x.ID);
table.ForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL_T_FM_ORGANIZATION_ORG_ID",
column: x => x.ORG_ID,
principalTable: "T_FM_ORGANIZATION",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL_T_FM_USER_POST_POST_ID",
column: x => x.POST_ID,
principalTable: "T_FM_USER_POST",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_IDENTIFY_RESULT_SUMMARY_POST_ID",
column: x => x.IDENTIFY_RESULT_SUMMARY_POST_ID,
principalTable: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateIndex(
name: "IX_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL_ORG_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL",
column: "ORG_ID");
migrationBuilder.CreateIndex(
name: "IX_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL_POST_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL",
column: "POST_ID");
migrationBuilder.CreateIndex(
name: "IX_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL_RISK_IDENTIFY_DETAIL_RESULT_POST_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL",
column: "RISK_IDENTIFY_DETAIL_RESULT_POST_ID");
migrationBuilder.CreateIndex(
name: "IX_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL_IDENTIFY_RESULT_SUMMARY_POST_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL",
column: "IDENTIFY_RESULT_SUMMARY_POST_ID");
migrationBuilder.CreateIndex(
name: "IX_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL_ORG_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL",
column: "ORG_ID");
migrationBuilder.CreateIndex(
name: "IX_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL_POST_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL",
column: "POST_ID");
migrationBuilder.AddForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_T_FM_DEPARTMENT_DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
column: "DEPARTMENT_ID",
principalTable: "T_FM_DEPARTMENT",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
migrationBuilder.AddForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_T_FM_DEPARTMENT_DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
column: "DEPARTMENT_ID",
principalTable: "T_FM_DEPARTMENT",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_T_FM_DEPARTMENT_DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST");
migrationBuilder.DropForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_T_FM_DEPARTMENT_DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST");
migrationBuilder.DropTable(
name: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL");
migrationBuilder.DropTable(
name: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL");
migrationBuilder.DropColumn(
name: "DEPARTMENT_TYPE",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST");
migrationBuilder.DropColumn(
name: "DEPARTMENT_TYPE",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST");
migrationBuilder.RenameColumn(
name: "DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
newName: "POST_ID");
migrationBuilder.RenameIndex(
name: "IX_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
newName: "IX_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_POST_ID");
migrationBuilder.RenameColumn(
name: "DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
newName: "POST_ID");
migrationBuilder.RenameIndex(
name: "IX_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DEPARTMENT_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
newName: "IX_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_POST_ID");
migrationBuilder.AddForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_T_FM_USER_POST_POST_ID",
table: "T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST",
column: "POST_ID",
principalTable: "T_FM_USER_POST",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
migrationBuilder.AddForeignKey(
name: "FK_T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_T_FM_USER_POST_POST_ID",
table: "T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST",
column: "POST_ID",
principalTable: "T_FM_USER_POST",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,194 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class hmr2025120501 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "T_FO_TECH_DISCLOSURE_FILE",
columns: table => new
{
ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TECH_DISCLOSURE_FROM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IMG_FILE_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IS_DELETED = table.Column<bool>(type: "bit", nullable: false),
ORG_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
ENTITY_ORG_TPYE = table.Column<int>(type: "int", nullable: false),
FORM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
FLOW_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_SEND_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CREATE_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
MODIFY_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
CREATER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
MODIFIER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_FO_TECH_DISCLOSURE_FILE", x => x.ID);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FILE_T_FM_ORGANIZATION_ORG_ID",
column: x => x.ORG_ID,
principalTable: "T_FM_ORGANIZATION",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FILE_T_FO_TECH_DISCLOSURE_FROM_TECH_DISCLOSURE_FROM_ID",
column: x => x.TECH_DISCLOSURE_FROM_ID,
principalTable: "T_FO_TECH_DISCLOSURE_FROM",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FILE_T_PF_IMG_FILE_IMG_FILE_ID",
column: x => x.IMG_FILE_ID,
principalTable: "T_PF_IMG_FILE",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateTable(
name: "T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE",
columns: table => new
{
ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TECH_DISCLOSURE_FROM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IMG_FILE_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IS_DELETED = table.Column<bool>(type: "bit", nullable: false),
ORG_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
ENTITY_ORG_TPYE = table.Column<int>(type: "int", nullable: false),
FORM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
FLOW_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_SEND_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CREATE_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
MODIFY_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
CREATER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
MODIFIER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE", x => x.ID);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE_T_FM_ORGANIZATION_ORG_ID",
column: x => x.ORG_ID,
principalTable: "T_FM_ORGANIZATION",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE_T_FO_TECH_DISCLOSURE_FROM_SAFE_TECH_DISCLOSURE_FROM_ID",
column: x => x.TECH_DISCLOSURE_FROM_ID,
principalTable: "T_FO_TECH_DISCLOSURE_FROM_SAFE",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE_T_PF_IMG_FILE_IMG_FILE_ID",
column: x => x.IMG_FILE_ID,
principalTable: "T_PF_IMG_FILE",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateTable(
name: "T_FO_TECH_DISCLOSURE_FROM_TECH_FILE",
columns: table => new
{
ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TECH_DISCLOSURE_FROM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IMG_FILE_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IS_DELETED = table.Column<bool>(type: "bit", nullable: false),
ORG_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
ENTITY_ORG_TPYE = table.Column<int>(type: "int", nullable: false),
FORM_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
FLOW_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_SEND_STATUS = table.Column<int>(type: "int", nullable: false),
FLOW_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CREATE_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
MODIFY_TIME = table.Column<DateTime>(type: "datetime2", nullable: true),
CREATER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
MODIFIER_ID = table.Column<Guid>(type: "uniqueidentifier", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_T_FO_TECH_DISCLOSURE_FROM_TECH_FILE", x => x.ID);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_TECH_FILE_T_FM_ORGANIZATION_ORG_ID",
column: x => x.ORG_ID,
principalTable: "T_FM_ORGANIZATION",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_TECH_FILE_T_FO_TECH_DISCLOSURE_FROM_TECH_TECH_DISCLOSURE_FROM_ID",
column: x => x.TECH_DISCLOSURE_FROM_ID,
principalTable: "T_FO_TECH_DISCLOSURE_FROM_TECH",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_TECH_FILE_T_PF_IMG_FILE_IMG_FILE_ID",
column: x => x.IMG_FILE_ID,
principalTable: "T_PF_IMG_FILE",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FILE_IMG_FILE_ID",
table: "T_FO_TECH_DISCLOSURE_FILE",
column: "IMG_FILE_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FILE_ORG_ID",
table: "T_FO_TECH_DISCLOSURE_FILE",
column: "ORG_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FILE_TECH_DISCLOSURE_FROM_ID",
table: "T_FO_TECH_DISCLOSURE_FILE",
column: "TECH_DISCLOSURE_FROM_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE_IMG_FILE_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE",
column: "IMG_FILE_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE_ORG_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE",
column: "ORG_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE_TECH_DISCLOSURE_FROM_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE",
column: "TECH_DISCLOSURE_FROM_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_TECH_FILE_IMG_FILE_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_TECH_FILE",
column: "IMG_FILE_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_TECH_FILE_ORG_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_TECH_FILE",
column: "ORG_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_TECH_FILE_TECH_DISCLOSURE_FROM_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_TECH_FILE",
column: "TECH_DISCLOSURE_FROM_ID");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "T_FO_TECH_DISCLOSURE_FILE");
migrationBuilder.DropTable(
name: "T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE");
migrationBuilder.DropTable(
name: "T_FO_TECH_DISCLOSURE_FROM_TECH_FILE");
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,125 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class hmr2025120601 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<Guid>(
name: "USER_ID",
table: "T_FO_SCHEDULING",
type: "uniqueidentifier",
nullable: true,
oldClrType: typeof(Guid),
oldType: "uniqueidentifier");
migrationBuilder.AddColumn<Guid>(
name: "CLASS_ID",
table: "T_FO_SCHEDULING",
type: "uniqueidentifier",
nullable: true);
migrationBuilder.AddColumn<Guid>(
name: "DRIVER_ID",
table: "T_FO_SCHEDULING",
type: "uniqueidentifier",
nullable: true);
migrationBuilder.AddColumn<Guid>(
name: "TECH_ID",
table: "T_FO_SCHEDULING",
type: "uniqueidentifier",
nullable: true);
migrationBuilder.CreateIndex(
name: "IX_T_FO_SCHEDULING_CLASS_ID",
table: "T_FO_SCHEDULING",
column: "CLASS_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_SCHEDULING_DRIVER_ID",
table: "T_FO_SCHEDULING",
column: "DRIVER_ID");
migrationBuilder.CreateIndex(
name: "IX_T_FO_SCHEDULING_TECH_ID",
table: "T_FO_SCHEDULING",
column: "TECH_ID");
migrationBuilder.AddForeignKey(
name: "FK_T_FO_SCHEDULING_T_FM_CLASS_CLASS_ID",
table: "T_FO_SCHEDULING",
column: "CLASS_ID",
principalTable: "T_FM_CLASS",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
migrationBuilder.AddForeignKey(
name: "FK_T_FO_SCHEDULING_T_FM_USER_DRIVER_ID",
table: "T_FO_SCHEDULING",
column: "DRIVER_ID",
principalTable: "T_FM_USER",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
migrationBuilder.AddForeignKey(
name: "FK_T_FO_SCHEDULING_T_FM_USER_TECH_ID",
table: "T_FO_SCHEDULING",
column: "TECH_ID",
principalTable: "T_FM_USER",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_T_FO_SCHEDULING_T_FM_CLASS_CLASS_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropForeignKey(
name: "FK_T_FO_SCHEDULING_T_FM_USER_DRIVER_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropForeignKey(
name: "FK_T_FO_SCHEDULING_T_FM_USER_TECH_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropIndex(
name: "IX_T_FO_SCHEDULING_CLASS_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropIndex(
name: "IX_T_FO_SCHEDULING_DRIVER_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropIndex(
name: "IX_T_FO_SCHEDULING_TECH_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropColumn(
name: "CLASS_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropColumn(
name: "DRIVER_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.DropColumn(
name: "TECH_ID",
table: "T_FO_SCHEDULING");
migrationBuilder.AlterColumn<Guid>(
name: "USER_ID",
table: "T_FO_SCHEDULING",
type: "uniqueidentifier",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
oldClrType: typeof(Guid),
oldType: "uniqueidentifier",
oldNullable: true);
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,46 @@
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class hmr2025120602 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<string>(
name: "PHONE",
table: "T_FO_SCHEDULING",
type: "nvarchar(50)",
maxLength: 50,
nullable: true,
oldClrType: typeof(string),
oldType: "nvarchar(500)",
oldMaxLength: 500,
oldNullable: true);
migrationBuilder.AddColumn<string>(
name: "REMARK",
table: "T_FO_SCHEDULING",
type: "nvarchar(500)",
maxLength: 500,
nullable: true);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "REMARK",
table: "T_FO_SCHEDULING");
migrationBuilder.AlterColumn<string>(
name: "PHONE",
table: "T_FO_SCHEDULING",
type: "nvarchar(500)",
maxLength: 500,
nullable: true,
oldClrType: typeof(string),
oldType: "nvarchar(50)",
oldMaxLength: 50,
oldNullable: true);
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,83 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class hmr2025120701 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IS_AUTO",
table: "T_SK_CHECK_SET",
type: "bit",
nullable: false,
defaultValue: false);
migrationBuilder.AddColumn<bool>(
name: "IS_HOLIDAY",
table: "T_FO_FIRE_JOB_WB",
type: "bit",
nullable: false,
defaultValue: false);
migrationBuilder.AddColumn<bool>(
name: "IS_HOLIDAY",
table: "T_FO_FIRE_JOB",
type: "bit",
nullable: false,
defaultValue: false);
migrationBuilder.AlterColumn<Guid>(
name: "NEXT_CLASS_TEAM_ID",
table: "T_FO_CURRENT_CLASS_RECORD",
type: "uniqueidentifier",
nullable: true,
oldClrType: typeof(Guid),
oldType: "uniqueidentifier");
migrationBuilder.AlterColumn<Guid>(
name: "CLASS_TEAM_ID",
table: "T_FO_CURRENT_CLASS_RECORD",
type: "uniqueidentifier",
nullable: true,
oldClrType: typeof(Guid),
oldType: "uniqueidentifier");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "IS_AUTO",
table: "T_SK_CHECK_SET");
migrationBuilder.DropColumn(
name: "IS_HOLIDAY",
table: "T_FO_FIRE_JOB_WB");
migrationBuilder.DropColumn(
name: "IS_HOLIDAY",
table: "T_FO_FIRE_JOB");
migrationBuilder.AlterColumn<Guid>(
name: "NEXT_CLASS_TEAM_ID",
table: "T_FO_CURRENT_CLASS_RECORD",
type: "uniqueidentifier",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
oldClrType: typeof(Guid),
oldType: "uniqueidentifier",
oldNullable: true);
migrationBuilder.AlterColumn<Guid>(
name: "CLASS_TEAM_ID",
table: "T_FO_CURRENT_CLASS_RECORD",
type: "uniqueidentifier",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
oldClrType: typeof(Guid),
oldType: "uniqueidentifier",
oldNullable: true);
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,133 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class hmr2025121001 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_SECURITY_INSPECTION_RECORD_SUMMARY",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_SECURITY_INSPECTION_RECORD",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_SECURITY_INSPECTION_NOTICE",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_REPORT",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_RECTIFY_RECORD",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_RECTIFY_NOTICE",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_HAND_REPORT",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<string>(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_CONFIRM",
type: "nvarchar(50)",
maxLength: 50,
nullable: true);
migrationBuilder.AddColumn<Guid>(
name: "FIRE_JOB_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE",
type: "uniqueidentifier",
nullable: true);
migrationBuilder.CreateIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_SAFE_FIRE_JOB_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE",
column: "FIRE_JOB_ID");
migrationBuilder.AddForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_SAFE_T_FO_FIRE_JOB_FIRE_JOB_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE",
column: "FIRE_JOB_ID",
principalTable: "T_FO_FIRE_JOB",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_T_FO_TECH_DISCLOSURE_FROM_SAFE_T_FO_FIRE_JOB_FIRE_JOB_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE");
migrationBuilder.DropIndex(
name: "IX_T_FO_TECH_DISCLOSURE_FROM_SAFE_FIRE_JOB_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_SECURITY_INSPECTION_RECORD_SUMMARY");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_SECURITY_INSPECTION_RECORD");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_SECURITY_INSPECTION_NOTICE");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_REPORT");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_RECTIFY_RECORD");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_RECTIFY_NOTICE");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_HAND_REPORT");
migrationBuilder.DropColumn(
name: "NOTICE_CODE",
table: "T_SK_HIDDEN_DANGER_CONFIRM");
migrationBuilder.DropColumn(
name: "FIRE_JOB_ID",
table: "T_FO_TECH_DISCLOSURE_FROM_SAFE");
}
}
}

View File

@ -32558,7 +32558,7 @@ namespace APT.Data.Migrations.Migrations
b.Property<Guid?>("CLASS_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("CLASS_TEAM_ID")
b.Property<Guid?>("CLASS_TEAM_ID")
.HasColumnType("uniqueidentifier");
b.Property<string>("CODE")
@ -32648,7 +32648,7 @@ namespace APT.Data.Migrations.Migrations
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<Guid>("NEXT_CLASS_TEAM_ID")
b.Property<Guid?>("NEXT_CLASS_TEAM_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("ORG_ID")
@ -33013,6 +33013,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<int?>("IS_FIRE")
.HasColumnType("int");
b.Property<bool>("IS_HOLIDAY")
.HasColumnType("bit");
b.Property<int?>("IS_LEAVE")
.HasColumnType("int");
@ -33679,6 +33682,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<int?>("IS_FIRE")
.HasColumnType("int");
b.Property<bool>("IS_HOLIDAY")
.HasColumnType("bit");
b.Property<int?>("IS_LEAVE")
.HasColumnType("int");
@ -37668,6 +37674,9 @@ namespace APT.Data.Migrations.Migrations
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("CLASS_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("CREATER_ID")
.HasColumnType("uniqueidentifier");
@ -37677,6 +37686,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<DateTime>("DATE")
.HasColumnType("datetime2");
b.Property<Guid?>("DRIVER_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
@ -37706,10 +37718,17 @@ namespace APT.Data.Migrations.Migrations
.HasColumnType("uniqueidentifier");
b.Property<string>("PHONE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<string>("REMARK")
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<Guid>("USER_ID")
b.Property<Guid?>("TECH_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("USER_ID")
.HasColumnType("uniqueidentifier");
b.Property<string>("WEEK")
@ -37718,8 +37737,14 @@ namespace APT.Data.Migrations.Migrations
b.HasKey("ID");
b.HasIndex("CLASS_ID");
b.HasIndex("DRIVER_ID");
b.HasIndex("ORG_ID");
b.HasIndex("TECH_ID");
b.HasIndex("USER_ID");
b.ToTable("T_FO_SCHEDULING");
@ -38132,6 +38157,63 @@ namespace APT.Data.Migrations.Migrations
b.ToTable("T_FO_TEAM_SLOGAN");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FILE", b =>
{
b.Property<Guid>("ID")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("CREATER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("CREATE_TIME")
.HasColumnType("datetime2");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
b.Property<Guid?>("FLOW_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("FLOW_SEND_STATUS")
.HasColumnType("int");
b.Property<int>("FLOW_STATUS")
.HasColumnType("int");
b.Property<Guid?>("FORM_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("IMG_FILE_ID")
.HasColumnType("uniqueidentifier");
b.Property<bool>("IS_DELETED")
.HasColumnType("bit");
b.Property<Guid?>("MODIFIER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("MODIFY_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("TECH_DISCLOSURE_FROM_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
b.HasIndex("IMG_FILE_ID");
b.HasIndex("ORG_ID");
b.HasIndex("TECH_DISCLOSURE_FROM_ID");
b.ToTable("T_FO_TECH_DISCLOSURE_FILE");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM", b =>
{
b.Property<Guid>("ID")
@ -38263,6 +38345,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
b.Property<Guid?>("FIRE_JOB_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("FLOW_ID")
.HasColumnType("uniqueidentifier");
@ -38309,6 +38394,8 @@ namespace APT.Data.Migrations.Migrations
b.HasIndex("DEPARTMENT_ID");
b.HasIndex("FIRE_JOB_ID");
b.HasIndex("OPERATION_STEP_ID");
b.HasIndex("ORG_ID");
@ -38318,6 +38405,63 @@ namespace APT.Data.Migrations.Migrations
b.ToTable("T_FO_TECH_DISCLOSURE_FROM_SAFE");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE", b =>
{
b.Property<Guid>("ID")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("CREATER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("CREATE_TIME")
.HasColumnType("datetime2");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
b.Property<Guid?>("FLOW_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("FLOW_SEND_STATUS")
.HasColumnType("int");
b.Property<int>("FLOW_STATUS")
.HasColumnType("int");
b.Property<Guid?>("FORM_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("IMG_FILE_ID")
.HasColumnType("uniqueidentifier");
b.Property<bool>("IS_DELETED")
.HasColumnType("bit");
b.Property<Guid?>("MODIFIER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("MODIFY_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("TECH_DISCLOSURE_FROM_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
b.HasIndex("IMG_FILE_ID");
b.HasIndex("ORG_ID");
b.HasIndex("TECH_DISCLOSURE_FROM_ID");
b.ToTable("T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_SAFE_PERSON", b =>
{
b.Property<Guid>("ID")
@ -38462,6 +38606,63 @@ namespace APT.Data.Migrations.Migrations
b.ToTable("T_FO_TECH_DISCLOSURE_FROM_TECH");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_TECH_FILE", b =>
{
b.Property<Guid>("ID")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("CREATER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("CREATE_TIME")
.HasColumnType("datetime2");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
b.Property<Guid?>("FLOW_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("FLOW_SEND_STATUS")
.HasColumnType("int");
b.Property<int>("FLOW_STATUS")
.HasColumnType("int");
b.Property<Guid?>("FORM_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("IMG_FILE_ID")
.HasColumnType("uniqueidentifier");
b.Property<bool>("IS_DELETED")
.HasColumnType("bit");
b.Property<Guid?>("MODIFIER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("MODIFY_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("TECH_DISCLOSURE_FROM_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
b.HasIndex("IMG_FILE_ID");
b.HasIndex("ORG_ID");
b.HasIndex("TECH_DISCLOSURE_FROM_ID");
b.ToTable("T_FO_TECH_DISCLOSURE_FROM_TECH_FILE");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_TECH_PERSON", b =>
{
b.Property<Guid>("ID")
@ -76915,6 +77116,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<Guid?>("FORM_ID")
.HasColumnType("uniqueidentifier");
b.Property<bool>("IS_AUTO")
.HasColumnType("bit");
b.Property<bool>("IS_DELETED")
.HasColumnType("bit");
@ -79782,6 +79986,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -80122,6 +80330,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -80405,6 +80617,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -80935,6 +81151,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -81351,6 +81571,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -84989,6 +85213,12 @@ namespace APT.Data.Migrations.Migrations
b.Property<DateTime?>("CREATE_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("DEPARTMENT_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("DEPARTMENT_TYPE")
.HasColumnType("int");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
@ -85020,10 +85250,64 @@ namespace APT.Data.Migrations.Migrations
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("RISK_IDENTIFY_RESULT_DETAIL_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
b.HasIndex("DEPARTMENT_ID");
b.HasIndex("ORG_ID");
b.HasIndex("RISK_IDENTIFY_RESULT_DETAIL_ID");
b.ToTable("T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL", b =>
{
b.Property<Guid>("ID")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("CREATER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("CREATE_TIME")
.HasColumnType("datetime2");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
b.Property<Guid?>("FLOW_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("FLOW_SEND_STATUS")
.HasColumnType("int");
b.Property<int>("FLOW_STATUS")
.HasColumnType("int");
b.Property<Guid?>("FORM_ID")
.HasColumnType("uniqueidentifier");
b.Property<bool>("IS_DELETED")
.HasColumnType("bit");
b.Property<Guid?>("MODIFIER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("MODIFY_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("POST_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("RISK_IDENTIFY_RESULT_DETAIL_ID")
b.Property<Guid>("RISK_IDENTIFY_DETAIL_RESULT_POST_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
@ -85032,9 +85316,9 @@ namespace APT.Data.Migrations.Migrations
b.HasIndex("POST_ID");
b.HasIndex("RISK_IDENTIFY_RESULT_DETAIL_ID");
b.HasIndex("RISK_IDENTIFY_DETAIL_RESULT_POST_ID");
b.ToTable("T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST");
b.ToTable("T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_FILE", b =>
@ -85898,6 +86182,12 @@ namespace APT.Data.Migrations.Migrations
b.Property<DateTime?>("CREATE_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("DEPARTMENT_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("DEPARTMENT_TYPE")
.HasColumnType("int");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
@ -85932,18 +86222,72 @@ namespace APT.Data.Migrations.Migrations
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("POST_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
b.HasIndex("DEPARTMENT_ID");
b.HasIndex("IDENTIFY_RESULT_SUMMARY_DETAIL_ID");
b.HasIndex("ORG_ID");
b.ToTable("T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL", b =>
{
b.Property<Guid>("ID")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("CREATER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("CREATE_TIME")
.HasColumnType("datetime2");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
b.Property<Guid?>("FLOW_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("FLOW_SEND_STATUS")
.HasColumnType("int");
b.Property<int>("FLOW_STATUS")
.HasColumnType("int");
b.Property<Guid?>("FORM_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("IDENTIFY_RESULT_SUMMARY_POST_ID")
.HasColumnType("uniqueidentifier");
b.Property<bool>("IS_DELETED")
.HasColumnType("bit");
b.Property<Guid?>("MODIFIER_ID")
.HasColumnType("uniqueidentifier");
b.Property<DateTime?>("MODIFY_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("POST_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
b.HasIndex("IDENTIFY_RESULT_SUMMARY_POST_ID");
b.HasIndex("ORG_ID");
b.HasIndex("POST_ID");
b.ToTable("T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST");
b.ToTable("T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_REQUIRE", b =>
@ -86363,6 +86707,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -86717,6 +87065,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -87224,6 +87576,10 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("MineType")
.HasColumnType("int");
b.Property<string>("NOTICE_CODE")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
@ -108292,8 +108648,7 @@ namespace APT.Data.Migrations.Migrations
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_TEAM", "Nav_Team")
.WithMany()
.HasForeignKey("CLASS_TEAM_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_DEPARTMENT", "Nav_Department")
.WithMany()
@ -110345,20 +110700,40 @@ namespace APT.Data.Migrations.Migrations
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_SCHEDULING", b =>
{
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_CLASS", "Nav_Class")
.WithMany()
.HasForeignKey("CLASS_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_USER", "Nav_Driver")
.WithMany()
.HasForeignKey("DRIVER_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
.HasForeignKey("ORG_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_USER", "Nav_Tech")
.WithMany()
.HasForeignKey("TECH_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_USER", "Nav_User")
.WithMany()
.HasForeignKey("USER_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
.OnDelete(DeleteBehavior.Restrict);
b.Navigation("Nav_Class");
b.Navigation("Nav_Driver");
b.Navigation("Nav_Org");
b.Navigation("Nav_Tech");
b.Navigation("Nav_User");
});
@ -110512,6 +110887,33 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_Team");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FILE", b =>
{
b.HasOne("APT.BaseData.Domain.Entities.T_PF_IMG_FILE", "Nav_ImgFile")
.WithMany()
.HasForeignKey("IMG_FILE_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
.HasForeignKey("ORG_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM", "Nav_TechDisclosure")
.WithMany("Nav_Files")
.HasForeignKey("TECH_DISCLOSURE_FROM_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Nav_ImgFile");
b.Navigation("Nav_Org");
b.Navigation("Nav_TechDisclosure");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM", b =>
{
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_USER", "Nav_DisclosuredPerson")
@ -110565,6 +110967,11 @@ namespace APT.Data.Migrations.Migrations
.HasForeignKey("DEPARTMENT_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.MS.Domain.Entities.FO.T_FO_FIRE_JOB", "Nav_Job")
.WithMany()
.HasForeignKey("FIRE_JOB_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.MS.Domain.Entities.HM.T_HM_OPERATION_STEP", "Nav_OperationStep")
.WithMany()
.HasForeignKey("OPERATION_STEP_ID")
@ -110583,6 +110990,8 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_Department");
b.Navigation("Nav_Job");
b.Navigation("Nav_OperationStep");
b.Navigation("Nav_Org");
@ -110590,6 +110999,33 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_User");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE", b =>
{
b.HasOne("APT.BaseData.Domain.Entities.T_PF_IMG_FILE", "Nav_ImgFile")
.WithMany()
.HasForeignKey("IMG_FILE_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
.HasForeignKey("ORG_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_SAFE", "Nav_TechDisclosure")
.WithMany("Nav_Files")
.HasForeignKey("TECH_DISCLOSURE_FROM_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Nav_ImgFile");
b.Navigation("Nav_Org");
b.Navigation("Nav_TechDisclosure");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_SAFE_PERSON", b =>
{
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
@ -110648,6 +111084,33 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_User");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_TECH_FILE", b =>
{
b.HasOne("APT.BaseData.Domain.Entities.T_PF_IMG_FILE", "Nav_ImgFile")
.WithMany()
.HasForeignKey("IMG_FILE_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
.HasForeignKey("ORG_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_TECH", "Nav_TechDisclosure")
.WithMany("Nav_Files")
.HasForeignKey("TECH_DISCLOSURE_FROM_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Nav_ImgFile");
b.Navigation("Nav_Org");
b.Navigation("Nav_TechDisclosure");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_TECH_PERSON", b =>
{
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
@ -128224,6 +128687,32 @@ namespace APT.Data.Migrations.Migrations
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST", b =>
{
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_DEPARTMENT", "Nav_Department")
.WithMany()
.HasForeignKey("DEPARTMENT_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
.HasForeignKey("ORG_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_DETAIL", "Nav_IdentifyDetail")
.WithMany("Nav_DetailPosts")
.HasForeignKey("RISK_IDENTIFY_RESULT_DETAIL_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Nav_Department");
b.Navigation("Nav_IdentifyDetail");
b.Navigation("Nav_Org");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL", b =>
{
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
@ -128236,13 +128725,13 @@ namespace APT.Data.Migrations.Migrations
.HasForeignKey("POST_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_DETAIL", "Nav_IdentifyDetail")
.WithMany("Nav_DetailPosts")
.HasForeignKey("RISK_IDENTIFY_RESULT_DETAIL_ID")
b.HasOne("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST", "Nav_DetailPost")
.WithMany("Nav_ResultPostDets")
.HasForeignKey("RISK_IDENTIFY_DETAIL_RESULT_POST_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Nav_IdentifyDetail");
b.Navigation("Nav_DetailPost");
b.Navigation("Nav_Org");
@ -128622,6 +129111,11 @@ namespace APT.Data.Migrations.Migrations
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST", b =>
{
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_DEPARTMENT", "Nav_Department")
.WithMany()
.HasForeignKey("DEPARTMENT_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL", "Nav_SummaryDetail")
.WithMany("Nav_DetailPosts")
.HasForeignKey("IDENTIFY_RESULT_SUMMARY_DETAIL_ID")
@ -128634,6 +129128,27 @@ namespace APT.Data.Migrations.Migrations
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Nav_Department");
b.Navigation("Nav_Org");
b.Navigation("Nav_SummaryDetail");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL", b =>
{
b.HasOne("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST", "Nav_SummaryPost")
.WithMany("Nav_SumPostDets")
.HasForeignKey("IDENTIFY_RESULT_SUMMARY_POST_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
.HasForeignKey("ORG_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_USER_POST", "Nav_Post")
.WithMany()
.HasForeignKey("POST_ID")
@ -128643,7 +129158,7 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_Post");
b.Navigation("Nav_SummaryDetail");
b.Navigation("Nav_SummaryPost");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_REQUIRE", b =>
@ -134522,16 +135037,22 @@ namespace APT.Data.Migrations.Migrations
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM", b =>
{
b.Navigation("Nav_Files");
b.Navigation("Nav_Person");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_SAFE", b =>
{
b.Navigation("Nav_Files");
b.Navigation("Nav_Person");
});
modelBuilder.Entity("APT.MS.Domain.Entities.FO.T_FO_TECH_DISCLOSURE_FROM_TECH", b =>
{
b.Navigation("Nav_Files");
b.Navigation("Nav_Person");
});
@ -136064,6 +136585,11 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_DetailMeasures");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST", b =>
{
b.Navigation("Nav_ResultPostDets");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT", b =>
{
b.Navigation("Nav_Details");
@ -136100,6 +136626,11 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_DetailPosts");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST", b =>
{
b.Navigation("Nav_SumPostDets");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SK.T_SK_SECURITY_INSPECTION_NOTICE", b =>
{
b.Navigation("Nav_CheckNoticeDetails");

View File

@ -2114,8 +2114,12 @@ builder.HasOne(t => t.Nav_ImgFile).WithMany().HasForeignKey(t => t.IMG_FILE_ID).
{
base.Configure(builder);
builder.HasOne(t => t.Nav_User).WithMany().HasForeignKey(t => t.USER_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Tech).WithMany().HasForeignKey(t => t.TECH_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Driver).WithMany().HasForeignKey(t => t.DRIVER_ID).OnDelete(DeleteBehavior.Restrict);
builder.Property(t => t.WEEK).HasMaxLength(500);
builder.Property(t => t.PHONE).HasMaxLength(500);
builder.Property(t => t.PHONE).HasMaxLength(50);
builder.HasOne(t => t.Nav_Class).WithMany().HasForeignKey(t => t.CLASS_ID).OnDelete(DeleteBehavior.Restrict);
builder.Property(t => t.REMARK).HasMaxLength(500);
}
}
#endregion
@ -2195,6 +2199,17 @@ builder.Property(t => t.SLOGAN).HasMaxLength(500);
builder.Property(t => t.SAFETY_OATH).HasMaxLength(2000);
builder.Property(t => t.LOCATION).HasMaxLength(500);
}
}
#endregion
#region TechDisclosureFile
public partial class FOTechDisclosureFileMap :APTEntityBaseMap<T_FO_TECH_DISCLOSURE_FILE>
{
public override void Configure(EntityTypeBuilder<T_FO_TECH_DISCLOSURE_FILE> builder)
{
base.Configure(builder);
builder.HasOne(t => t.Nav_TechDisclosure).WithMany(t=>t.Nav_Files).HasForeignKey(t => t.TECH_DISCLOSURE_FROM_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_ImgFile).WithMany().HasForeignKey(t => t.IMG_FILE_ID).OnDelete(DeleteBehavior.Restrict);
}
}
#endregion
#region TechDisclosureFrom
@ -2230,6 +2245,18 @@ builder.HasOne(t => t.Nav_User).WithMany().HasForeignKey(t => t.USER_ID).OnDelet
builder.HasOne(t => t.Nav_Department).WithMany().HasForeignKey(t => t.DEPARTMENT_ID).OnDelete(DeleteBehavior.Restrict);
builder.Property(t => t.DisclosureContent).HasMaxLength(2000);
builder.Ignore(t => t.PUBLISH);
builder.HasOne(t => t.Nav_Job).WithMany().HasForeignKey(t => t.FIRE_JOB_ID).OnDelete(DeleteBehavior.Restrict);
}
}
#endregion
#region TechDisclosureFromSafeFile
public partial class FOTechDisclosureFromSafeFileMap :APTEntityBaseMap<T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE>
{
public override void Configure(EntityTypeBuilder<T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE> builder)
{
base.Configure(builder);
builder.HasOne(t => t.Nav_TechDisclosure).WithMany(t=>t.Nav_Files).HasForeignKey(t => t.TECH_DISCLOSURE_FROM_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_ImgFile).WithMany().HasForeignKey(t => t.IMG_FILE_ID).OnDelete(DeleteBehavior.Restrict);
}
}
#endregion
@ -2259,6 +2286,17 @@ builder.HasOne(t => t.Nav_Department).WithMany().HasForeignKey(t => t.DEPARTMENT
builder.Property(t => t.DisclosureContent).HasMaxLength(2000);
builder.Ignore(t => t.PUBLISH);
}
}
#endregion
#region TechDisclosureFromTechFile
public partial class FOTechDisclosureFromTechFileMap :APTEntityBaseMap<T_FO_TECH_DISCLOSURE_FROM_TECH_FILE>
{
public override void Configure(EntityTypeBuilder<T_FO_TECH_DISCLOSURE_FROM_TECH_FILE> builder)
{
base.Configure(builder);
builder.HasOne(t => t.Nav_TechDisclosure).WithMany(t=>t.Nav_Files).HasForeignKey(t => t.TECH_DISCLOSURE_FROM_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_ImgFile).WithMany().HasForeignKey(t => t.IMG_FILE_ID).OnDelete(DeleteBehavior.Restrict);
}
}
#endregion
#region TechDisclosureFromTechPerson
@ -13681,6 +13719,7 @@ builder.Ignore(t => t.CONTEXT);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.HIDDEN_REASON).HasMaxLength(200);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion
@ -13743,6 +13782,7 @@ builder.Property(t => t.HIDDEN_DESCRIPTION).HasMaxLength(500);
builder.Ignore(t => t.PUBLISH);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion
@ -13799,6 +13839,7 @@ builder.Property(t => t.ImplementUser).HasMaxLength(500);
builder.Property(t => t.AcceptUser).HasMaxLength(500);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion
@ -13905,6 +13946,7 @@ builder.Property(t => t.REMARK).HasMaxLength(500);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.HIDDEN_REASON).HasMaxLength(200);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion
@ -13978,6 +14020,7 @@ builder.Ignore(t => t.PUBLISH);
builder.Ignore(t => t.CONTEXT);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion
@ -14686,6 +14729,17 @@ builder.Property(t => t.EMERGENCY).HasMaxLength(500);
{
base.Configure(builder);
builder.HasOne(t => t.Nav_IdentifyDetail).WithMany(t=>t.Nav_DetailPosts).HasForeignKey(t => t.RISK_IDENTIFY_RESULT_DETAIL_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Department).WithMany().HasForeignKey(t => t.DEPARTMENT_ID).OnDelete(DeleteBehavior.Restrict);
}
}
#endregion
#region RiskIdentifyDetailResultPostDetail
public partial class SKRiskIdentifyDetailResultPostDetailMap :APTEntityBaseMap<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL>
{
public override void Configure(EntityTypeBuilder<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL> builder)
{
base.Configure(builder);
builder.HasOne(t => t.Nav_DetailPost).WithMany(t=>t.Nav_ResultPostDets).HasForeignKey(t => t.RISK_IDENTIFY_DETAIL_RESULT_POST_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Post).WithMany().HasForeignKey(t => t.POST_ID).OnDelete(DeleteBehavior.Restrict);
}
}
@ -14858,6 +14912,17 @@ builder.Property(t => t.EMERGENCY).HasMaxLength(500);
{
base.Configure(builder);
builder.HasOne(t => t.Nav_SummaryDetail).WithMany(t=>t.Nav_DetailPosts).HasForeignKey(t => t.IDENTIFY_RESULT_SUMMARY_DETAIL_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Department).WithMany().HasForeignKey(t => t.DEPARTMENT_ID).OnDelete(DeleteBehavior.Restrict);
}
}
#endregion
#region RiskIdentifyResultSummaryPostDetail
public partial class SKRiskIdentifyResultSummaryPostDetailMap :APTEntityBaseMap<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL>
{
public override void Configure(EntityTypeBuilder<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL> builder)
{
base.Configure(builder);
builder.HasOne(t => t.Nav_SummaryPost).WithMany(t=>t.Nav_SumPostDets).HasForeignKey(t => t.IDENTIFY_RESULT_SUMMARY_POST_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Post).WithMany().HasForeignKey(t => t.POST_ID).OnDelete(DeleteBehavior.Restrict);
}
}
@ -14943,6 +15008,7 @@ builder.Ignore(t => t.PUBLISH);
builder.Ignore(t => t.CONTEXT);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion
@ -15011,6 +15077,7 @@ builder.HasOne(t => t.Nav_Type).WithMany().HasForeignKey(t => t.TYPE_ID).OnDelet
builder.HasOne(t => t.Nav_RecordUser).WithMany().HasForeignKey(t => t.RECORD_USER_ID).OnDelete(DeleteBehavior.Restrict);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion
@ -15103,6 +15170,7 @@ builder.Property(t => t.CHECK_PERSON).HasMaxLength(500);
builder.Ignore(t => t.PUBLISH);
builder.Property(t => t.ApplyDepartmentName).HasMaxLength(50);
builder.Property(t => t.ApplyPostName).HasMaxLength(50);
builder.Property(t => t.NOTICE_CODE).HasMaxLength(50);
}
}
#endregion

View File

@ -11,7 +11,7 @@ namespace APT.MS.Domain.Entities.FO
/// 岗位当班工作记录表
/// </summary>
[Description("岗位当班工作记录表")]
[DataRuleField("Nav_Team.DEPARTMENT_ID")]
//[DataRuleField("Nav_Team.DEPARTMENT_ID")]
public class T_FO_CURRENT_CLASS_RECORD : MesEntityBase
{
/// <summary>
@ -292,14 +292,14 @@ namespace APT.MS.Domain.Entities.FO
/// 下个排班排班表ID
/// </summary>
[Description("下个排班排班表ID")]
public Guid NEXT_CLASS_TEAM_ID { get; set; }
public Guid? NEXT_CLASS_TEAM_ID { get; set; }
/// <summary>
/// 当前班组ID
/// </summary>
[Description("当前班组ID")]
[FormFieldTable]
[DataFieldForeignKey("Nav_Team")]
public Guid CLASS_TEAM_ID { get; set; }
public Guid? CLASS_TEAM_ID { get; set; }
/// <summary>
/// 班组
/// </summary>

View File

@ -247,5 +247,8 @@ namespace APT.MS.Domain.Entities.FO
public FOFireStatus FIRE_STATUS { get; set; }
[Description("是否已触发")]
public bool IS_RUN { get; set; } = false;
[Description("是否节假日")]
public bool IS_HOLIDAY { get; set; } = false;
}
}

View File

@ -261,5 +261,7 @@ namespace APT.MS.Domain.Entities.FO
[Description("是否已触发")]
public bool IS_RUN { get; set; } = false;
[Description("是否节假日")]
public bool IS_HOLIDAY { get; set; } = false;
}
}

View File

@ -13,17 +13,41 @@ namespace APT.MS.Domain.Entities.FO
[Description("日期")]
public DateTime DATE { get; set; }
[Description("人员")]
[Description("值班领导")]
[DataFieldForeignKey("Nav_User")]
public Guid USER_ID { get; set; }
[Description("导航:人员")]
public Guid? USER_ID { get; set; }
[Description("导航:值班领导")]
[FormFieldQuery]
public virtual T_FM_USER Nav_User { get; set; }
public virtual T_FM_USER Nav_User { get; set; }
[Description("技术人员")]
[DataFieldForeignKey("Nav_Tech")]
public Guid? TECH_ID { get; set; }
[Description("导航:技术人员")]
[FormFieldQuery]
public virtual T_FM_USER Nav_Tech { get; set; }
[Description("值班司机")]
[DataFieldForeignKey("Nav_Driver")]
public Guid? DRIVER_ID { get; set; }
[Description("导航:值班司机")]
[FormFieldQuery]
public virtual T_FM_USER Nav_Driver { get; set; }
[Description("星期")]
public string WEEK { get; set; }
[Description("电话")]
public string PHONE { get; set; }
[DataFieldLength(50)]
public string PHONE { get; set; }
[Description("班次")]
[DataFieldForeignKey("Nav_Class")]
public Guid? CLASS_ID { get; set; }
[Description("导航:班次")]
[FormFieldQuery]
public virtual T_FM_CLASS Nav_Class { get; set; }
[Description("备注")]
[DataFieldLength(500)]
public string REMARK { get; set; }
}
}

View File

@ -0,0 +1,27 @@
using APT.BaseData.Domain.Entities;
using APT.Infrastructure.Core;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace APT.MS.Domain.Entities.FO
{
[Description("附件")]
public class T_FO_TECH_DISCLOSURE_FILE : MesEntityBase
{
[Description("技术交底表ID")]
[DataFieldForeignKey("Nav_TechDisclosure", "Nav_Files")]
public Guid TECH_DISCLOSURE_FROM_ID { get; set; }
[Description("导航属性:技术交底表")]
public virtual T_FO_TECH_DISCLOSURE_FROM Nav_TechDisclosure { get; set; }
[DataFieldForeignKey("Nav_ImgFile")]
[Description("附件ID")]
public Guid IMG_FILE_ID { get; set; }
[Description("导航:附件文件表")]
public virtual T_PF_IMG_FILE Nav_ImgFile { get; set; }
}
}

View File

@ -139,6 +139,10 @@ namespace APT.MS.Domain.Entities.FO
/// 相关方
/// </summary>
[Description("相关方")]
public Guid? RELATED_ID { get; set; }
public Guid? RELATED_ID { get; set; }
[Description("附件")]
[FormFieldEdit]
public ICollection<T_FO_TECH_DISCLOSURE_FILE> Nav_Files { get; set; }
}
}

View File

@ -91,5 +91,21 @@ namespace APT.MS.Domain.Entities.FO
[Description("导航属性:被交底人")]
[FormFieldEdit]
public ICollection<T_FO_TECH_DISCLOSURE_FROM_SAFE_PERSON> Nav_Person { get; set; }
[Description("附件")]
[FormFieldEdit]
public ICollection<T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE> Nav_Files { get; set; }
/// <summary>
/// 关联工作票
/// </summary>
[Description("关联工作票")]
[DataFieldForeignKey("Nav_Job")]
public Guid? FIRE_JOB_ID { get; set; }
/// <summary>
/// 导航属性:关联工作票
/// </summary>
[Description("导航属性:关联工作票")]
public T_FO_FIRE_JOB Nav_Job { get; set; }
}
}

View File

@ -0,0 +1,27 @@
using APT.BaseData.Domain.Entities;
using APT.Infrastructure.Core;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace APT.MS.Domain.Entities.FO
{
[Description("附件")]
public class T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE : MesEntityBase
{
[Description("技术交底表ID")]
[DataFieldForeignKey("Nav_TechDisclosure", "Nav_Files")]
public Guid TECH_DISCLOSURE_FROM_ID { get; set; }
[Description("导航属性:技术交底表")]
public virtual T_FO_TECH_DISCLOSURE_FROM_SAFE Nav_TechDisclosure { get; set; }
[DataFieldForeignKey("Nav_ImgFile")]
[Description("附件ID")]
public Guid IMG_FILE_ID { get; set; }
[Description("导航:附件文件表")]
public virtual T_PF_IMG_FILE Nav_ImgFile { get; set; }
}
}

View File

@ -91,5 +91,9 @@ namespace APT.MS.Domain.Entities.FO
[Description("导航属性:被交底人")]
[FormFieldEdit]
public ICollection<T_FO_TECH_DISCLOSURE_FROM_TECH_PERSON> Nav_Person { get; set; }
[Description("附件")]
[FormFieldEdit]
public ICollection<T_FO_TECH_DISCLOSURE_FROM_TECH_FILE> Nav_Files { get; set; }
}
}

View File

@ -0,0 +1,27 @@
using APT.BaseData.Domain.Entities;
using APT.Infrastructure.Core;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace APT.MS.Domain.Entities.FO
{
[Description("附件")]
public class T_FO_TECH_DISCLOSURE_FROM_TECH_FILE : MesEntityBase
{
[Description("技术交底表ID")]
[DataFieldForeignKey("Nav_TechDisclosure", "Nav_Files")]
public Guid TECH_DISCLOSURE_FROM_ID { get; set; }
[Description("导航属性:技术交底表")]
public virtual T_FO_TECH_DISCLOSURE_FROM_TECH Nav_TechDisclosure { get; set; }
[DataFieldForeignKey("Nav_ImgFile")]
[Description("附件ID")]
public Guid IMG_FILE_ID { get; set; }
[Description("导航:附件文件表")]
public virtual T_PF_IMG_FILE Nav_ImgFile { get; set; }
}
}

View File

@ -79,6 +79,9 @@ namespace APT.MS.Domain.Entities.SK
[Description("检查人")]
[FormFieldEdit]
public ICollection<T_SK_CHECK_SET_USER> Nav_CheckUsers { get; set; }
public ICollection<T_SK_CHECK_SET_USER> Nav_CheckUsers { get; set; }
[Description("是否自动触发")]
public bool IS_AUTO { get; set; } = false;
}
}

View File

@ -233,6 +233,10 @@ namespace APT.MS.Domain.Entities.SK
public string HIDDEN_REASON { get; set; }
[Description("导航:隐患原因")]
public virtual ICollection<T_SK_HIDDEN_DANGER_CONFIRM_REASON> Nav_Reasons { get; set; }
public virtual ICollection<T_SK_HIDDEN_DANGER_CONFIRM_REASON> Nav_Reasons { get; set; }
[Description("检查通知编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -88,6 +88,10 @@ namespace APT.MS.Domain.Entities.SK
public string ApplyDepartmentName { get; set; }
[DataFieldLength(50)]
[Description("发起人岗位")]
public string ApplyPostName { get; set; }
public string ApplyPostName { get; set; }
[Description("编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -144,6 +144,10 @@ namespace APT.MS.Domain.Entities.SK
public string ApplyDepartmentName { get; set; }
[DataFieldLength(50)]
[Description("发起人岗位")]
public string ApplyPostName { get; set; }
public string ApplyPostName { get; set; }
[Description("检查通知编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -288,6 +288,10 @@ namespace APT.MS.Domain.Entities.SK
public string HIDDEN_REASON { get; set; }
[Description("导航:隐患原因")]
public virtual ICollection<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON> Nav_RectifyReasons { get; set; }
public virtual ICollection<T_SK_HIDDEN_DANGER_RECTIFY_RECORD_REASON> Nav_RectifyReasons { get; set; }
[Description("检查通知编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -114,6 +114,10 @@ namespace APT.MS.Domain.Entities.SK
public string ApplyDepartmentName { get; set; }
[DataFieldLength(50)]
[Description("发起人岗位")]
public string ApplyPostName { get; set; }
public string ApplyPostName { get; set; }
[Description("检查通知编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -1,5 +1,7 @@
using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums;
using APT.Infrastructure.Core;
using APT.MS.Domain.Enums.SK;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@ -21,17 +23,26 @@ namespace APT.MS.Domain.Entities.SK
/// 导航:安全风险辨识结果明细
/// </summary>
[Description("导航:安全风险辨识结果明细")]
public virtual T_SK_RISK_IDENTIFY_RESULT_DETAIL Nav_IdentifyDetail { get; set; }
public virtual T_SK_RISK_IDENTIFY_RESULT_DETAIL Nav_IdentifyDetail { get; set; }
[Description("序号")]
public int? NUM { get; set; }
[Description("岗位")]
[DataFieldForeignKey("Nav_Post")]
public Guid? POST_ID { get; set; }
[Description("辨识层级")]
[EnumName("SKDepartmentTypeEnum")]
public SKDepartmentTypeEnum DEPARTMENT_TYPE { get; set; }
[Description("导航属性:岗位")]
public virtual T_FM_USER_POST Nav_Post { get; set; }
[Description("部门")]
[DataFieldForeignKey("Nav_Department")]
public Guid? DEPARTMENT_ID { get; set; }
[Description("导航属性:部门")]
public virtual T_FM_DEPARTMENT Nav_Department { get; set; }
[Description("辨识岗位")]
[FormFieldEdit]
public ICollection<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL> Nav_ResultPostDets { get; set; }
}
}

View File

@ -0,0 +1,33 @@
using APT.BaseData.Domain.Entities.FM;
using APT.Infrastructure.Core;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace APT.MS.Domain.Entities.SK
{
[Description("辨识岗位")]
public class T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL : MesEntityBase
{
/// <summary>
/// 安全风险辨识结果明细
/// </summary>
[Description("安全风险辨识结果明细")]
[DataFieldForeignKey("Nav_DetailPost", "Nav_ResultPostDets")]
public Guid RISK_IDENTIFY_DETAIL_RESULT_POST_ID { get; set; }
/// <summary>
/// 导航:安全风险辨识结果明细
/// </summary>
[Description("导航:安全风险辨识结果明细")]
public virtual T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST Nav_DetailPost { get; set; }
[Description("岗位")]
[DataFieldForeignKey("Nav_Post")]
public Guid? POST_ID { get; set; }
[Description("导航属性:岗位")]
public virtual T_FM_USER_POST Nav_Post { get; set; }
}
}

View File

@ -1,5 +1,6 @@
using APT.BaseData.Domain.Entities.FM;
using APT.Infrastructure.Core;
using APT.MS.Domain.Enums.SK;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@ -26,11 +27,21 @@ namespace APT.MS.Domain.Entities.SK
[Description("序号")]
public int? NUM { get; set; }
[Description("岗位")]
[DataFieldForeignKey("Nav_Post")]
public Guid? POST_ID { get; set; }
[Description("辨识层级")]
[EnumName("SKDepartmentTypeEnum")]
public SKDepartmentTypeEnum DEPARTMENT_TYPE { get; set; }
[Description("导航属性:岗位")]
public virtual T_FM_USER_POST Nav_Post { get; set; }
[Description("部门")]
[DataFieldForeignKey("Nav_Department")]
public Guid? DEPARTMENT_ID { get; set; }
[Description("导航属性:部门")]
public virtual T_FM_DEPARTMENT Nav_Department { get; set; }
[Description("辨识岗位")]
[FormFieldEdit]
public ICollection<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL> Nav_SumPostDets { get; set; }
}
}

View File

@ -0,0 +1,33 @@
using APT.BaseData.Domain.Entities.FM;
using APT.Infrastructure.Core;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace APT.MS.Domain.Entities.SK
{
[Description("辨识岗位")]
public class T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL : MesEntityBase
{
/// <summary>
/// 安全风险辨识结果汇总明细
/// </summary>
[Description("安全风险辨识结果汇总明细")]
[DataFieldForeignKey("Nav_SummaryPost", "Nav_SumPostDets")]
public Guid IDENTIFY_RESULT_SUMMARY_POST_ID { get; set; }
/// <summary>
/// 导航:安全风险辨识结果汇总明细
/// </summary>
[Description("导航:安全风险辨识结果汇总明细")]
public virtual T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST Nav_SummaryPost { get; set; }
[Description("岗位")]
[DataFieldForeignKey("Nav_Post")]
public Guid? POST_ID { get; set; }
[Description("导航属性:岗位")]
public virtual T_FM_USER_POST Nav_Post { get; set; }
}
}

View File

@ -111,6 +111,10 @@ namespace APT.MS.Domain.Entities.SK
public string ApplyDepartmentName { get; set; }
[DataFieldLength(50)]
[Description("发起人岗位")]
public string ApplyPostName { get; set; }
public string ApplyPostName { get; set; }
[Description("编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -131,6 +131,9 @@ namespace APT.MS.Domain.Entities.SK
public string ApplyDepartmentName { get; set; }
[DataFieldLength(50)]
[Description("发起人岗位")]
public string ApplyPostName { get; set; }
public string ApplyPostName { get; set; }
[Description("检查通知编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -112,6 +112,10 @@ namespace APT.MS.Domain.Entities.SK
public string ApplyDepartmentName { get; set; }
[DataFieldLength(50)]
[Description("发起人岗位")]
public string ApplyPostName { get; set; }
public string ApplyPostName { get; set; }
[Description("检查通知编号")]
[DataFieldLength(50)]
public string NOTICE_CODE { get; set; }
}
}

View File

@ -140,7 +140,8 @@ namespace APT.MS.Domain.Enums
= 1,
= 2,
= 3,
= 4,
= 4,
= 5,
= 6,
}
/// <summary>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -773,7 +773,7 @@ namespace APT.FM.WebApi.Controllers.Api.FM
personTeam = teamPersons;
if (entity.APPROVE_ROLE_ID != null)
{
var isExist = userList.FirstOrDefault(t => t.APPROVE_ROLE_ID == entity.APPROVE_ROLE_ID && t.DEPARTMENT_ID == entity.DEPARTMENT_ID);
var isExist = userList.FirstOrDefault(t => t.APPROVE_ROLE_ID == entity.APPROVE_ROLE_ID && t.DEPARTMENT_ID == entity.DEPARTMENT_ID && t.ENABLE_STATUS == 0);
if (isExist != null)
this.ThrowError("070001");
}
@ -1433,6 +1433,7 @@ namespace APT.FM.WebApi.Controllers.Api.FM
else
{
user.ENABLE_STATUS = 1;
user.APPROVE_ROLE_ID = null;
}
T_FM_TEAM_PERSON teamPerson = new T_FM_TEAM_PERSON();
if (user.ENABLE_STATUS == 0 && department.DEPARTMENT_TYPE == (int)FMDepartmentType.Class)

View File

@ -85,7 +85,7 @@ namespace APT.FO.WebApi.Controllers
if (string.IsNullOrEmpty(id))
this.ThrowError("060010");
var result = this.GetEntity<T_FO_CRUCIAL_LICENSE_JOB>(id, new string[] { "Nav_CrucialLicensePerson", "Nav_CrucialLicensePerson.Nav_User","Nav_Files.Nav_ImgFile",
"Nav_CrucialLicensePerson.Nav_User.Nav_Department","Nav_OperationStep","Nav_ApplyUser","Nav_MonitorUser","Nav_JobScheme","Nav_Risks",
"Nav_CrucialLicensePerson.Nav_User.Nav_Department","Nav_OperationStep","Nav_ApplyUser","Nav_MonitorUser","Nav_JobScheme","Nav_Risks","Nav_Area",
"Nav_JobScheme.Nav_PreOperSchFile","Nav_JobScheme.Nav_PreOperSchFile.Nav_ImgFile","Nav_JobScheme.Nav_PreOperSchFile.Nav_ImgFile"});
if (result != null)
{
@ -161,7 +161,7 @@ namespace APT.FO.WebApi.Controllers
// "Nav_JobScheme.Nav_PreOperSchFile.Nav_ImgFile", "Nav_CrucialLicensePerson.Nav_User" };
//var entity = this.GetEntity<T_FO_CRUCIAL_LICENSE_JOB>(id);
var entity = this.GetEntity<T_FO_CRUCIAL_LICENSE_JOB>(id,
"Nav_OperationStep", "Nav_ApplyUser", "Nav_MonitorUser", "Nav_Files.Nav_ImgFile", "Nav_Department", "Nav_Risks");
"Nav_OperationStep", "Nav_ApplyUser", "Nav_MonitorUser", "Nav_Files.Nav_ImgFile", "Nav_Department", "Nav_Risks", "Nav_Area");
if (entity != null)
{
var newFilter = new BaseFilter(filter.OrgId);
@ -594,22 +594,8 @@ namespace APT.FO.WebApi.Controllers
return SafeGetPagedData<T_HM_OPERATION_STEP>((result) =>
{
var orgId = APT.Infrastructure.Api.AppContext.CurrentSession.OrgId.ToString();
var mineType = APT.Infrastructure.Api.AppContext.CurrentSession.MineType;
var tempList = mineType.Split(",").ToList();
Expression<Func<T_HM_OPERATION_STEP, bool>> expressionStep = e => !e.IS_DELETED && e.STATUS == STATUSEnum.;
Expression<Func<T_HM_OPERATION_LINK, bool>> expressionLink = t => !t.IS_DELETED && t.STATUS == (int)STATUSEnum.;
if (tempList != null && tempList.Any())
{
var temp = tempList.FirstOrDefault(t => t == "0" || t.Contains("公司"));
if (temp == null)
{
expressionLink = expressionLink.And(t => tempList.Contains(t.MineType.ToString()));
}
}
if (orgId == "8b3c41aa-51b1-7ce9-1879-248a038c1b5c" || orgId == "d9871ba8-0eec-9e4a-bb87-7d5a540d8913")
{
expressionLink = expressionLink.And(t => t.TASK_LEVEL == 3 && t.CYCLE_TYPE == HMCycleTypeEnum.Need);
}
Expression<Func<T_HM_OPERATION_LINK, bool>> expressionLink = t => !t.IS_DELETED && t.STATUS == (int)STATUSEnum. && t.TASK_LEVEL != 1;
var operationLink = this.GetEntities<T_HM_OPERATION_LINK>(expressionLink, new BaseFilter(pageFilter.OrgId)).Select(t=>t.OPERATION_STEP_ID).Distinct().ToList();
expressionStep = expressionStep.And(e => operationLink.Contains(e.ID));
var info = this.GetOrderPageEntities<T_HM_OPERATION_STEP>(expressionStep, pageFilter, null);
@ -865,7 +851,37 @@ namespace APT.FO.WebApi.Controllers
var zbRoles = roles.FirstOrDefault(t => t.NAME.Contains("值班"));
var sdRoles = roles.Where(t => t.NAME.Contains("属地")).ToList();
var roleIds = sdRoles.Select(t => t.ID).ToList();
if (zbRoles != null && approveTempDetail.APPROVE_ROLE_ID == zbRoles.ID)
var approveRole = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.ID == approveTempDetail.APPROVE_ROLE_ID);
if (approveRole != null && approveRole.NAME == "分管领导")
{
var user = users.FirstOrDefault(t => t.ID == loginUserId);
if (user.DEPARTMENT_ID != null)
{
List<Guid> departmentIds = new List<Guid>();
GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
if (departmentIds.Any())
{
var dep = GetEntity<T_FM_DEPARTMENT>(t => departmentIds.Contains(t.ID) && t.DEPARTMENT_TYPE == approveRole.DEPARTMENT_TYPE);
if (dep != null && dep.CHARGEUSER_ID != null)
{
approveId = dep.CHARGEUSER_ID;
}
else
{
return approveId;
}
}
else
{
return approveId;
}
}
else
{
return approveId;
}
}
else if (zbRoles != null && approveTempDetail.APPROVE_ROLE_ID == zbRoles.ID)
{
var job = this.GetEntity<T_FO_SCHEDULING>(t=>t.DATE.Date == DateTime.Now.Date);
if (job != null)

View File

@ -56,7 +56,7 @@ namespace APT.FO.WebApi.Controllers
if (string.IsNullOrEmpty(id))
this.ThrowError("060010");
var entity = this.GetEntity<T_FO_CRUCIAL_LICENSE_JOB_OUTSOURCE>(id,
"Nav_OperationStep", "Nav_ApplyUser", "Nav_MonitorUser", "Nav_Related", "Nav_Department","Nav_Risks");
"Nav_OperationStep", "Nav_ApplyUser", "Nav_MonitorUser", "Nav_Related", "Nav_Department","Nav_Risks", "Nav_Area");
if (entity != null)
{
var newFilter = new BaseFilter(filter.OrgId);
@ -576,7 +576,37 @@ namespace APT.FO.WebApi.Controllers
var zbRoles = roles.FirstOrDefault(t => t.NAME.Contains("值班"));
var sdRoles = roles.Where(t => t.NAME.Contains("属地")).ToList();
var roleIds = sdRoles.Select(t => t.ID).ToList();
if (zbRoles != null && approveTempDetail.APPROVE_ROLE_ID == zbRoles.ID)
var approveRole = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.ID == approveTempDetail.APPROVE_ROLE_ID);
if (approveRole != null && approveRole.NAME == "分管领导")
{
var user = users.FirstOrDefault(t => t.ID == loginUserId);
if (user.DEPARTMENT_ID != null)
{
List<Guid> departmentIds = new List<Guid>();
GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
if (departmentIds.Any())
{
var dep = GetEntity<T_FM_DEPARTMENT>(t => departmentIds.Contains(t.ID) && t.DEPARTMENT_TYPE == approveRole.DEPARTMENT_TYPE);
if (dep != null && dep.CHARGEUSER_ID != null)
{
approveId = dep.CHARGEUSER_ID;
}
else
{
return approveId;
}
}
else
{
return approveId;
}
}
else
{
return approveId;
}
}
else if (zbRoles != null && approveTempDetail.APPROVE_ROLE_ID == zbRoles.ID)
{
var job = this.GetEntity<T_FO_SCHEDULING>(t => t.DATE.Date == DateTime.Now.Date);
if (job != null)

View File

@ -87,7 +87,7 @@ namespace APT.FO.WebApi.Controllers.Api.FO
entity.CLASS_TEAM_ID = team.ID;
}
}
if (entity.CLASS_TEAM_ID == Guid.Empty || entity.DEPARTMENT_POST_ID == null)
if (entity.DEPARTMENT_POST_ID == Guid.Empty || entity.DEPARTMENT_POST_ID == null)
{
entity.DEPARTMENT_POST_ID = currFMUser.Nav_Person.POST_ID;
}

View File

@ -87,16 +87,50 @@ namespace APT.FO.WebApi.Controllers
}
if (string.IsNullOrEmpty(entity.CODE))
{
entity.CODE = "DHZY" + DateTime.Now.ToShortDateString().Replace("/", "") + new Random().Next(1, 999);
var num = "001";
var record = this.GetEntities<T_FO_FIRE_JOB>(t => t.CREATE_TIME.Value.Date == DateTime.Now.Date,new BaseFilter(entity.ORG_ID)).OrderByDescending(m => m.CREATE_TIME).FirstOrDefault();
if (record != null)
{
var codeTake = record.CODE.Substring(record.CODE.Length - 3).ToString();
var temp = int.Parse(codeTake) + 1;
num = temp.ToString().PadLeft(3, '0');
}
entity.CODE = "DHZY" + DateTime.Now.Date.ToString("yyyyMMdd") + num;
}
if (entity.FIRE_USER_ID == null)
{
throw new Exception("动火负责人必须填写");
throw new Exception("施工单位负责人必须填写");
}
if (entity.SAFE_USER_ID == null)
{
throw new Exception("安全管理人员必须填写");
}
if (entity.JOB_DATE == null)
{
throw new Exception("计划开始时间必须填写");
}
if (entity.JOB_END_DATE == null)
{
throw new Exception("计划结束时间必须填写");
}
entity.ACT_DATE = entity.JOB_DATE;
entity.ACT_END_DATE = entity.JOB_END_DATE;
if (entity.JOB_END_DATE > entity.JOB_DATE.Value.AddHours(8))
{
throw new Exception("计划开始和计划结束时间不能超过8小时");
}
if (entity.ACT_DATE != null && entity.ACT_DATE < entity.JOB_DATE)
{
throw new Exception("动火实际开始时间不能早于计划开始时间");
}
if (entity.ACT_END_DATE!=null && entity.ACT_END_DATE > entity.JOB_END_DATE)
{
throw new Exception("动火实际结束时间不能晚于计划结束时间");
}
if (entity.LEAVE_DATE!=null && entity.ACT_END_DATE != null && entity.LEAVE_DATE < entity.ACT_END_DATE.Value.AddHours(1))
{
throw new Exception("离开现场时间必须大于实际动火结束时间1小时以上");
}
var details = entity.Nav_Details;
if (details != null && details.Any())
{
@ -304,8 +338,8 @@ namespace APT.FO.WebApi.Controllers
throw new Exception("动火实际结束时间必须填写");
if (entity.LEAVE_DATE == null)
throw new Exception("离开现场时间必须填写");
if (monitorFileList == null || !monitorFileList.Any())
throw new Exception("必须上传完工验收附件");
//if (monitorFileList == null || !monitorFileList.Any())
// throw new Exception("必须上传完工验收附件");
var detailNeed = detailList.FirstOrDefault(t => (t.JOB_STEP == FOJobStepEnum.Ing && t.IS_CONFIRM_NEW == false) || (t.JOB_STEP == FOJobStepEnum.After && t.IS_CONFIRM_NEW == false));
if (detailNeed != null)
throw new Exception("作业中或作业后未全部确认!");
@ -336,8 +370,8 @@ namespace APT.FO.WebApi.Controllers
throw new Exception("不可动火请稍后再进行验收");
if (entity.ACT_DATE == null)
throw new Exception("动火实际开始时间必须填写");
if (fireFileList == null || !fireFileList.Any())
throw new Exception("必须上传现场条件验收附件");
//if (fireFileList == null || !fireFileList.Any())
// throw new Exception("必须上传现场条件验收附件");
var detailNeed = detailList.FirstOrDefault(t => t.JOB_STEP == FOJobStepEnum.Pre && t.IS_CONFIRM_NEW == false);
if (detailNeed != null)
throw new Exception("作业前未全部确认!");
@ -353,17 +387,17 @@ namespace APT.FO.WebApi.Controllers
}
else
{
//没有审阅人就触发给监护人填写
var monitorUser = this.GetEntity<T_FM_USER>(t => t.ID == entity.MONITOR_USER_ID);
//没有审阅人就触发给安全管理人员填写,原设计是监护人entity.MONITOR_USER_ID
var monitorUser = this.GetEntity<T_FM_USER>(t => t.ID == entity.SAFE_USER_ID);
if (monitorUser != null)
{
entity.FIRE_STATUS = FOFireStatus.Monitor;
notices.Add(NotificationTaskService.InsertUserNoticeTaskModel("动火作业全程监护", entity.ID, entity.ORG_ID, monitorUser.ID, monitorUser.NAME, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO043"));
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO043_2"));
}
else
{
throw new Exception("监护人不能为空,请联系管理员补充填写");
throw new Exception("安全管理人员不能为空,请联系管理员补充填写");
}
}
}
@ -379,11 +413,10 @@ namespace APT.FO.WebApi.Controllers
sysFilter.OrgId = entity.ORG_ID;
var codes = CodeRuleService.NewGenSerial(sysFilter);
var serialCode = codes.Split(new char[] { ',' });
var department = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == departmentId);
var param = Enum.GetName(typeof(FMDepartmentType), department.DEPARTMENT_TYPE);
if (department.DEPARTMENT_STATUS == 2)
var param = "工作日";
if (entity.IS_HOLIDAY == true)
{
param = "公司";
param = "节假日";
}
MFlowPermitService.InsertApprove(serialCode[0], "FO043", param, entity.ID, "FO043_SHOWPRINT", entity.TaskID, true, () =>
{
@ -516,17 +549,17 @@ namespace APT.FO.WebApi.Controllers
}
if (fire.USER_DEAL_STATUS == FOUserShiftStatusEnum. && fire.SAFE_DEAL_STATUS == FOUserShiftStatusEnum. && fire.DISPATCH_DEAL_STATUS == FOUserShiftStatusEnum.)
{
//触发给监护人填写
var monitorUser = this.GetEntity<T_FM_USER>(t => t.ID == fire.MONITOR_USER_ID);
//触发给安全管理人员填写
var monitorUser = this.GetEntity<T_FM_USER>(t => t.ID == fire.SAFE_USER_ID);
if (monitorUser != null)
{
fire.FIRE_STATUS = FOFireStatus.Monitor;
notice = NotificationTaskService.InsertUserNoticeTaskModel("动火作业全程监护", fire.ID, fire.ORG_ID, monitorUser.ID, monitorUser.NAME, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO043");
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO043_2");
}
else
{
throw new Exception("监护人不能为空,请联系管理员补充填写");
throw new Exception("安全管理人员不能为空,请联系管理员补充填写");
}
}
}

View File

@ -366,6 +366,10 @@ namespace APT.FO.WebApi.Controllers
users.ForEach(t => t.DEAL_STATUS = 1);
//触发完工验收
GetAutoNext(entity, ref notices);
if (notices != null && notices.Any())
{
entity.FORM_STATUS = (int)FOTeamActivityState.;
}
}
else
{
@ -389,20 +393,32 @@ namespace APT.FO.WebApi.Controllers
notices = NotificationTaskService.InsertUserNoticeTaskModels("作业活动记录表单(关键和许可作业)", entity.ID, entity.ORG_ID, userIds, UserNames, DateTime.Now,
dtEnd, (int)FMNoticeTypeEnum., "FO021_SHOWPRINT");
//触发完工验收
GetAutoNext(entity, ref notices);
GetAutoNext(entity, ref notices);
if (notices != null && notices.Any())
{
entity.FORM_STATUS = (int)FOTeamActivityState.;
}
}
else
{
entity.FORM_STATUS = (int)FOTeamActivityState.;
//触发完工验收
GetAutoNext(entity, ref notices);
GetAutoNext(entity, ref notices);
if (notices != null && notices.Any())
{
entity.FORM_STATUS = (int)FOTeamActivityState.;
}
}
}
}
else
{
//触发完工验收
GetAutoNext(entity,ref notices);
GetAutoNext(entity,ref notices);
if (notices != null && notices.Any())
{
entity.FORM_STATUS = (int)FOTeamActivityState.;
}
}
//查询消息表
//var userID = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
@ -615,12 +631,12 @@ namespace APT.FO.WebApi.Controllers
var user = this.GetEntity<T_FO_JOB_ACTIVITY_PERSON>(t => t.JOB_ACTIVITY_RECORD_ID == entity.ID && t.USER_ID == userID, new BaseFilter(orgId));
user.DEAL_STATUS = (int)FOUserShiftStatusEnum.;
var todoCount = this.GetCount<T_FO_JOB_ACTIVITY_PERSON>(t => t.JOB_ACTIVITY_RECORD_ID == entity.ID && t.DEAL_STATUS == 0 && t.USER_ID != userID, new BaseFilter(orgId));
T_FO_JOB_ACTIVITY_RECORD model = null;
//T_FO_JOB_ACTIVITY_RECORD model = null;
//List<T_FM_NOTIFICATION_TASK> notices = new List<T_FM_NOTIFICATION_TASK>();
if (todoCount == 0)
{
model = GetEntity<T_FO_JOB_ACTIVITY_RECORD>(entity.ID.ToString());
model.FORM_STATUS = (int)FOTeamActivityState.;
//model = GetEntity<T_FO_JOB_ACTIVITY_RECORD>(entity.ID.ToString());
//model.FORM_STATUS = (int)FOTeamActivityState.已归档;
//触发完工验收
//var userIds = new List<Guid>();
//var record = this.GetEntity<T_FO_JOB_ACTIVITY_RECORD>(t=>t.ID == entity.ID);
@ -663,8 +679,8 @@ namespace APT.FO.WebApi.Controllers
}
this.UnifiedCommit(() =>
{
if (model != null)
UpdateEntityNoCommit(model);
//if (model != null)
// UpdateEntityNoCommit(model);
if (task != null)
this.UpdateEntityNoCommit(task);
if (user != null)
@ -698,10 +714,18 @@ namespace APT.FO.WebApi.Controllers
task = NotificationTaskService.GetTaskFinishModel(entity.TaskID);
task.SOURCE_FORMCODE = "FO022_SHOWPRINT";
}
var record = this.GetEntity<T_FO_JOB_ACTIVITY_RECORD>(t => t.ID == entity.ID);
var taskFinish = GetEntity<T_FM_NOTIFICATION_TASK>(t => t.SOURCE_DATA_ID == entity.ID && t.ID != entity.TaskID && t.NOTICE_STATUS == 0 && t.NOTICE_TITLE.Contains("完工验收"));
if (taskFinish == null)
{
record.FORM_STATUS = (int)FOTeamActivityState.;
}
this.UnifiedCommit(() =>
{
if (task != null)
this.UpdateEntityNoCommit(task);
this.UpdateEntityNoCommit(task);
if (record != null)
this.UpdateEntityNoCommit(record);
});
return true;
});

View File

@ -110,10 +110,12 @@ namespace APT.FO.WebApi.Controllers
entity.Nav_Users = null;
if (users != null && users.Any())
{
foreach (var item in users)
foreach (var use in users.Where(t=>!t.IS_DELETED))
{
T_FO_LEADER_WELL_RECORD_USER item = new T_FO_LEADER_WELL_RECORD_USER();
item.ORG_ID = entity.ORG_ID;
item.LEADER_WELL_RECORD_ID = entity.ID;
item.USER_ID = use.USER_ID;
item.Nav_User = null;
if (item.USER_ID == loginUserId)
{
@ -123,16 +125,19 @@ namespace APT.FO.WebApi.Controllers
}
}
var afterUsers = entity.Nav_AfterUsers;
entity.Nav_AfterUsers = null;
if (afterUsers != null && afterUsers.Any())
{
afterUsers = afterUsers.Where(t => !t.IS_DELETED).ToList();
}
if (afterUsers != null && afterUsers.Any())
{
foreach (var item in afterUsers)
foreach (var after in afterUsers)
{
T_FO_LEADER_WELL_RECORD_AFTERUSER item = new T_FO_LEADER_WELL_RECORD_AFTERUSER();
item.ORG_ID = entity.ORG_ID;
item.LEADER_WELL_RECORD_ID = entity.ID;
item.AFTER_USER_ID = after.AFTER_USER_ID;
item.Nav_AfterUser = null;
afterUserList.Add(item);
}
@ -147,22 +152,42 @@ namespace APT.FO.WebApi.Controllers
{
foreach (var item in details)
{
T_FO_LEADER_WELL_RECORD_DETAIL de = new T_FO_LEADER_WELL_RECORD_DETAIL();
de.ORG_ID = entity.ORG_ID;
de.LEADER_WELL_RECORD_ID = entity.ID;
de.START_DATE = item.START_DATE;
de.END_DATE = item.END_DATE;
de.USER_ID = item.USER_ID;
de.DESCRIPTION = item.DESCRIPTION;
de.QUESTION = item.QUESTION;
de.MEASURE = item.MEASURE;
de.ITEM = item.ITEM;
de.PLACE = item.PLACE;
if (de.USER_ID == loginUserId)
{
de.USER_DEAL_STATUS = MS.Domain.Enums.FOUserShiftStatusEnum.;
}
detailList.Add(de);
if (item.Nav_DetailFiles != null && item.Nav_DetailFiles.Any())
{
foreach (var item2 in item.Nav_DetailFiles)
foreach (var file in item.Nav_DetailFiles.Where(t=>!t.IS_DELETED))
{
T_FO_LEADER_WELL_RECORD_DETAIL_FILE item2 = new T_FO_LEADER_WELL_RECORD_DETAIL_FILE();
item2.ORG_ID = entity.ORG_ID;
item2.LEADER_WELL_RECORD_DETAIL_ID = item.ID;
item2.LEADER_WELL_RECORD_DETAIL_ID = de.ID;
item2.Nav_ImgFile = null;
item2.IMG_FILE_ID = file.IMG_FILE_ID;
detailFileList.Add(item2);
}
}
if (item.Nav_DetailAreas != null && item.Nav_DetailAreas.Any())
{
foreach (var item2 in item.Nav_DetailAreas)
foreach (var area in item.Nav_DetailAreas.Where(t=>!t.IS_DELETED))
{
T_FO_LEADER_WELL_RECORD_DETAIL_AREA item2 = new T_FO_LEADER_WELL_RECORD_DETAIL_AREA();
item2.ORG_ID = entity.ORG_ID;
item2.LEADER_WELL_RECORD_DETAIL_ID = item.ID;
item2.LEADER_WELL_RECORD_DETAIL_ID = de.ID;
item2.AREA_ID = area.AREA_ID;
item2.Nav_Area = null;
detailAreaList.Add(item2);
}
@ -212,14 +237,7 @@ namespace APT.FO.WebApi.Controllers
// detailAfterUserList.Add(item2);
// }
//}
item.ORG_ID = entity.ORG_ID;
item.LEADER_WELL_RECORD_ID = entity.ID;
item.Nav_DetailFiles = null;
if (item.USER_ID == loginUserId)
{
item.USER_DEAL_STATUS = MS.Domain.Enums.FOUserShiftStatusEnum.;
}
detailList.Add(item);
}
}
var files = entity.Nav_Files;
@ -230,15 +248,18 @@ namespace APT.FO.WebApi.Controllers
entity.Nav_Files = null;
if (files != null && files.Any())
{
foreach (var item in files)
foreach (var file in files)
{
T_FO_LEADER_WELL_RECORD_FILE item = new T_FO_LEADER_WELL_RECORD_FILE();
item.ORG_ID = entity.ORG_ID;
item.LEADER_WELL_RECORD_ID = entity.ID;
item.IMG_FILE_ID = file.IMG_FILE_ID;
item.Nav_ImgFile = null;
fileList.Add(item);
}
}
entity.STATUS = FOStatusEnum.Draft;
T_FM_NOTIFICATION_TASK task = null;
var sendNotices = new List<T_FM_NOTIFICATION_TASK>();
if (entity.PUBLISH != null && entity.PUBLISH.Equals("SaveAndNotify"))
{
@ -263,7 +284,7 @@ namespace APT.FO.WebApi.Controllers
}
else
{
var sendAfterUserIds = afterUserList.Where(t => t.AFTER_USER_ID != loginUserId && t.AFTER_USER_ID != null).Select(m => (Guid)m.AFTER_USER_ID).Distinct().ToList();
var sendAfterUserIds = afterUserList.Where(t => t.AFTER_USER_ID != null).Select(m => (Guid)m.AFTER_USER_ID).Distinct().ToList();
if (sendAfterUserIds != null && sendAfterUserIds.Any())
{
//触发给接班人签字确认
@ -273,7 +294,12 @@ namespace APT.FO.WebApi.Controllers
}
}
}
if (entity.TaskID != Guid.Empty)
{
task = NotificationTaskService.GetTaskFinishModel(entity.TaskID);
task.SOURCE_FORMCODE = "FO041_SHOWPRINT";
}
}
this.UnifiedCommit(() =>
{
@ -309,6 +335,8 @@ namespace APT.FO.WebApi.Controllers
this.BantchSaveEntityNoCommit(fileList);
if (sendNotices != null && sendNotices.Any())
this.BantchSaveEntityNoCommit(sendNotices);
if (task != null)
this.UpdateEntityNoCommit(task);
});
return true;
});
@ -360,7 +388,7 @@ namespace APT.FO.WebApi.Controllers
}
else
{
var afterUserIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_AFTERUSER>(t => t.LEADER_WELL_RECORD_ID == record.ID && t.AFTER_USER_ID != userID && t.AFTER_USER_ID != null, new BaseFilter(orgId)).Select(m => (Guid)m.AFTER_USER_ID).Distinct().ToList();
var afterUserIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_AFTERUSER>(t => t.LEADER_WELL_RECORD_ID == record.ID && t.AFTER_USER_ID != null, new BaseFilter(orgId)).Select(m => (Guid)m.AFTER_USER_ID).Distinct().ToList();
if (afterUserIds != null && afterUserIds.Any())
{
//触发给接班人签字确认
@ -387,7 +415,7 @@ namespace APT.FO.WebApi.Controllers
if (todoCount == 0)
{
var detailIds = details.Select(m => m.ID).ToList();
var afterUserIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_AFTERUSER>(t => t.LEADER_WELL_RECORD_ID == record.ID && t.AFTER_USER_ID != userID && t.AFTER_USER_ID != null, new BaseFilter(orgId)).Select(m => (Guid)m.AFTER_USER_ID).Distinct().ToList();
var afterUserIds = this.GetEntities<T_FO_LEADER_WELL_RECORD_AFTERUSER>(t => t.LEADER_WELL_RECORD_ID == record.ID && t.AFTER_USER_ID != null, new BaseFilter(orgId)).Select(m => (Guid)m.AFTER_USER_ID).Distinct().ToList();
if (afterUserIds != null && afterUserIds.Any())
{
//触发给接班人签字确认

View File

@ -0,0 +1,290 @@
using APT.BaseData.Domain.ApiModel;
using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.FO;
using APT.MS.Domain.Entities.SC;
using APT.MS.Domain.Entities.SC.SC;
using APT.MS.Domain.Enums;
using APT.Utility;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
namespace APT.FO.WebApi.Controllers
{
/// <summary>
/// 工作票排班明细
/// </summary>
[Route("api/FO/FOScheduling")]
public partial class SchedulingController : AuthorizeApiController<T_FO_SCHEDULING>
{
/// <summary>
/// 获取导入数据
/// 参考 [Route("api/PF/Import")]
/// </summary>
/// <returns></returns>
[HttpPost, Route("GetImportData")]
public JsonActionResult<ImportDataModel> GetImportData()
{
return SafeExecute<ImportDataModel>(() =>
{
var orgId = APT.Infrastructure.Api.AppContext.CurrentSession.OrgId;
var httpRequest = this.HttpContext.Request;
string orgIdStr = httpRequest.Form["OrgId"];// 获取 组织
ImportDataModel result = new ImportDataModel();
var dic = Path.Combine(System.AppContext.BaseDirectory, "tempImportFiles");
if (!Directory.Exists(dic))
Directory.CreateDirectory(dic);
foreach (var key in httpRequest.Form.Files) // 文件键
{
var postedFile = key; // 获取文件键对应的文件对象
string filePath = Path.Combine(dic, DateTime.Now.ToString("yyyy_MM_dd_hh_mm_ss") + "_" + postedFile.FileName);
Byte[] fileData = new Byte[postedFile.Length];
Stream sr = postedFile.OpenReadStream();//创建数据流对象
sr.Read(fileData, 0, (int)postedFile.Length);
using (FileStream fs = new FileStream(filePath, FileMode.CreateNew))
{
fs.Write(fileData, 0, fileData.Length);
fs.Flush();
fs.Close();
}
//获取数据
Dictionary<int, int> startRowIndexs = new Dictionary<int, int>();
startRowIndexs.Add(0, 1);//根据Excel格式数据赋值
var dataTables = FileUtils.ReadExcelByOledb(filePath, startRowIndexs);
string Msg = string.Empty;
bool isOK = InsertModel(dataTables.Tables[0], orgId, ref Msg);
try
{
System.IO.File.Delete(filePath);
}
catch { }
result.Data = Msg;
result.MessageList = new List<string> { Msg };
}
return result;
});
}
/// <summary>
/// 数据插入
/// </summary>
/// <param name="dtSource"></param>
/// <param name="orgId"></param>
/// <param name="Msg"></param>
/// <param name="rowIndex"></param>
/// <returns></returns>
/// <exception cref="Exception"></exception>
public bool InsertModel(DataTable dtSource, Guid? orgId, ref string Msg, int rowIndex = 1)
{
if (dtSource == null || dtSource.Rows.Count < rowIndex)
{
Msg = "未获取到导入数据";
throw new Exception(Msg);
}
int rowAll = dtSource.Rows.Count;
if (!string.IsNullOrEmpty(Msg))
{
throw new Exception(Msg);
}
var newFilter = new BaseFilter(orgId);
newFilter.SelectField = new List<string> { "NAME" };
var fmClass = this.GetEntities<T_FM_CLASS>(t => !t.IS_DELETED, newFilter, "Nav_ClassDetail");
var users = GetEntities<T_FM_USER>(t => t.IS_DELETED == false && t.ENABLE_STATUS == 0, new BaseFilter(orgId));
if (dtSource.Rows.Count == 1)
{
throw new Exception("导入必须两条以上,一条请直接新增");
}
for (int i = 0; i < rowAll; i++)
{
if (string.IsNullOrEmpty(dtSource.Rows[i][0].ToString().Trim()))
{
if (string.IsNullOrEmpty(Msg))
Msg = "第"+(i+1)+"行第1列:日期不能为空";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第1列:日期不能为空";
}
if (string.IsNullOrEmpty(dtSource.Rows[i][1].ToString().Trim()))
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第2列:班次不能为空";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第2列:班次不能为空";
}
else
{
var firstClass = fmClass.FirstOrDefault(t => t.NAME == dtSource.Rows[i][1].ToString().Trim());
if (firstClass == null)
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第2列:班次未找到,请先到班次管理添加";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第2列:班次未找到,请先到班次管理添加";
}
}
if (string.IsNullOrEmpty(dtSource.Rows[i][2].ToString().Trim()))
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第3列:带班领导不能为空";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第3列:带班领导不能为空";
}
else
{
var firstUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][2].ToString().Trim());
if (firstUser == null)
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第3列:带班领导未找到,请先到用户列表添加";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第3列:带班领导未找到,请先到用户列表添加";
}
}
if (string.IsNullOrEmpty(dtSource.Rows[i][5].ToString().Trim()))
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第6列:班次不能为空";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第6列:班次不能为空";
}
else
{
var firstClass = fmClass.FirstOrDefault(t => t.NAME == dtSource.Rows[i][5].ToString().Trim());
if (firstClass == null)
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第6列:班次未找到,请先到班次管理添加";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第6列:班次未找到,请先到班次管理添加";
}
}
if (string.IsNullOrEmpty(dtSource.Rows[i][6].ToString().Trim()))
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第7列:带班领导不能为空";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第7列:带班领导不能为空";
}
else
{
var firstUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][6].ToString().Trim());
if (firstUser == null)
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第7列:带班领导未找到,请先到用户列表添加";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第7列:带班领导未找到,请先到用户列表添加";
}
}
if (string.IsNullOrEmpty(dtSource.Rows[i][9].ToString().Trim()))
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第10列:班次不能为空";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第10列:班次不能为空";
}
else
{
var firstClass = fmClass.FirstOrDefault(t => t.NAME == dtSource.Rows[i][9].ToString().Trim());
if (firstClass == null)
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第10列:班次未找到,请先到班次管理添加";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第10列:班次未找到,请先到班次管理添加";
}
}
if (string.IsNullOrEmpty(dtSource.Rows[i][10].ToString().Trim()))
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第11列:带班领导不能为空";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第11列:带班领导不能为空";
}
else
{
var firstUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][10].ToString().Trim());
if (firstUser == null)
{
if (string.IsNullOrEmpty(Msg))
Msg = "第" + (i + 1) + "行第11列:带班领导未找到,请先到用户列表添加";
else
Msg = Msg + "\n" + "第" + (i + 1) + "行第11列:带班领导未找到,请先到用户列表添加";
}
}
i++;
}
if (!string.IsNullOrEmpty(Msg))
{
throw new Exception(Msg);
}
var classFirst = fmClass.FirstOrDefault(t => t.NAME == dtSource.Rows[0][1].ToString().Trim());
var classScond = fmClass.FirstOrDefault(t => t.NAME == dtSource.Rows[0][5].ToString().Trim());
var classThird = fmClass.FirstOrDefault(t => t.NAME == dtSource.Rows[0][9].ToString().Trim());
List<T_FO_SCHEDULING> sches = new List<T_FO_SCHEDULING>();
string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
for (int i = 0; i < rowAll; i++)
{
var firstUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][2].ToString().Trim());
var techUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][3].ToString().Trim());
var driverUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][4].ToString().Trim());
var scondUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][6].ToString().Trim());
var techScondUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][7].ToString().Trim());
var driverScondUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][8].ToString().Trim());
var thirdUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][10].ToString().Trim());
var techThirdUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][11].ToString().Trim());
var driverThirdUser = users.FirstOrDefault(t => t.NAME == dtSource.Rows[i][12].ToString().Trim());
T_FO_SCHEDULING sche = new T_FO_SCHEDULING();
sche.ID = Guid.NewGuid();
sche.ORG_ID = orgId;
sche.DATE = Convert.ToDateTime(dtSource.Rows[i][0].ToString().Trim());
sche.USER_ID = firstUser.ID;
sche.TECH_ID = techUser?.ID;
sche.DRIVER_ID = driverUser?.ID;
sche.CLASS_ID = classFirst.ID;
sche.REMARK = dtSource.Rows[i][13].ToString().Trim();
sche.WEEK = Day[Convert.ToInt32(sche.DATE.DayOfWeek.ToString("d"))].ToString().Trim();
sches.Add(sche);
T_FO_SCHEDULING sche2 = new T_FO_SCHEDULING();
sche2.ID = Guid.NewGuid();
sche2.ORG_ID = orgId;
sche2.DATE = Convert.ToDateTime(dtSource.Rows[i][0].ToString().Trim());
sche2.USER_ID = scondUser.ID;
sche2.TECH_ID = techScondUser?.ID;
sche2.DRIVER_ID = driverScondUser?.ID;
sche2.CLASS_ID = classScond.ID;
sche2.REMARK = dtSource.Rows[i][13].ToString().Trim();
sche2.WEEK = Day[Convert.ToInt32(sche.DATE.DayOfWeek.ToString("d"))].ToString().Trim();
sches.Add(sche2);
T_FO_SCHEDULING sche3 = new T_FO_SCHEDULING();
sche3.ID = Guid.NewGuid();
sche3.ORG_ID = orgId;
sche3.DATE = Convert.ToDateTime(dtSource.Rows[i][0].ToString().Trim());
sche3.USER_ID = thirdUser.ID;
sche3.TECH_ID = techThirdUser?.ID;
sche3.DRIVER_ID = driverThirdUser?.ID;
sche3.CLASS_ID = classThird.ID;
sche3.REMARK = dtSource.Rows[i][13].ToString().Trim();
sche3.WEEK = Day[Convert.ToInt32(sche.DATE.DayOfWeek.ToString("d"))].ToString().Trim();
sches.Add(sche3);
}
UnifiedCommit(() =>
{
if (sches != null && sches.Any())
BantchAddEntityNoCommit(sches);
});
//Msg = "导入成功!";
return true;
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -68,7 +68,7 @@ namespace APT.FO.WebApi.Controllers
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
if (string.IsNullOrEmpty(id))
this.ThrowError("060010");
var entity = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM>(id, "Nav_OperationStep", "Nav_JobName", "Nav_JobNameOut", "Nav_DisclosurePerson");
var entity = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM>(id, "Nav_OperationStep", "Nav_JobName", "Nav_JobNameOut", "Nav_DisclosurePerson", "Nav_Files.Nav_ImgFile");
if (entity != null)
{
var newFilter = new BaseFilter(filter.OrgId);
@ -96,7 +96,14 @@ namespace APT.FO.WebApi.Controllers
{
persons = persons.Where(t => !t.IS_DELETED && t.USER_ID != null).ToList();
}
entity.Nav_Person = null;
entity.Nav_Person = null;
var files = entity.Nav_Files;
var deleteFileIds = this.GetEntities<T_FO_TECH_DISCLOSURE_FILE>(t => t.TECH_DISCLOSURE_FROM_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
if (files != null && files.Any())
{
files = files.Where(t => !t.IS_DELETED).ToList();
}
entity.Nav_Files = null;
List<T_FM_NOTIFICATION_TASK> notices = new List<T_FM_NOTIFICATION_TASK>();
T_FM_NOTIFICATION_TASK task = null;
T_FO_JOB_ACTIVITY_RECORD record = null;
@ -385,11 +392,15 @@ namespace APT.FO.WebApi.Controllers
this.UnifiedCommit(() =>
{
if (deleteIds != null && deleteIds.Any())
this.BantchDeleteEntityNoCommit<T_FO_TECH_DISCLOSURE_PERSON>(deleteIds);
this.BantchDeleteEntityNoCommit<T_FO_TECH_DISCLOSURE_PERSON>(deleteIds);
if (deleteFileIds != null && deleteFileIds.Any())
this.BantchDeleteEntityNoCommit<T_FO_TECH_DISCLOSURE_FILE>(deleteFileIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (persons != null && persons.Any())
this.BantchSaveEntityNoCommit(persons);
this.BantchSaveEntityNoCommit(persons);
if (files != null && files.Any())
this.BantchSaveEntityNoCommit(files);
if (notices != null && notices.Any())
this.BantchSaveEntityNoCommit(notices);
if (task != null)

View File

@ -4,6 +4,7 @@ using APT.BaseData.Domain.Enums;
using APT.BaseData.Domain.IServices.FM;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.FO;
using APT.MS.Domain.Entities.OG;
using APT.MS.Domain.Enums;
using APT.Utility;
using Microsoft.AspNetCore.Mvc;
@ -36,7 +37,7 @@ namespace APT.FO.WebApi.Controllers
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
if (string.IsNullOrEmpty(id))
this.ThrowError("060010");
var entity = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM_SAFE>(id, "Nav_OperationStep", "Nav_User.Nav_UserSignFiles.Nav_ImgFile", "Nav_Department");
var entity = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM_SAFE>(id, "Nav_OperationStep", "Nav_User.Nav_UserSignFiles.Nav_ImgFile", "Nav_Department","Nav_Files.Nav_ImgFile");
if (entity != null)
{
var newFilter = new BaseFilter(filter.OrgId);
@ -65,6 +66,14 @@ namespace APT.FO.WebApi.Controllers
persons = persons.Where(t => !t.IS_DELETED && t.USER_ID != null).ToList();
}
entity.Nav_Person = null;
var files = entity.Nav_Files;
var deleteFileIds = this.GetEntities<T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE>(t => t.TECH_DISCLOSURE_FROM_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
if (files != null && files.Any())
{
files = files.Where(t => !t.IS_DELETED).ToList();
}
entity.Nav_Files = null;
T_FO_FIRE_JOB job = null;
List<T_FM_NOTIFICATION_TASK> notices = new List<T_FM_NOTIFICATION_TASK>();
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departmentId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
@ -116,18 +125,43 @@ namespace APT.FO.WebApi.Controllers
else
{
entity.FORM_STATUS = (int)FOTeamActivityState.;
if (entity.FIRE_JOB_ID != null)
{
job = this.GetEntity<T_FO_FIRE_JOB>(t => t.ID == entity.FIRE_JOB_ID);
if (job != null)
{
job.IS_RUN = true;
job.FIRE_STATUS = FOFireStatus.Sign;
var jobUsers= this.GetEntities<T_FO_FIRE_JOB_USER>(t => t.FIRE_JOB_ID == job.ID,new BaseFilter(job.ORG_ID));
var userType = this.GetEntity<T_OG_RELATED_USER_TYPE>(t => t.NAME == "动火操作人员");
var sendUser = jobUsers.FirstOrDefault(t => t.USER_TYPE_ID == userType.ID);
if (sendUser != null)
{
var userName = this.GetEntity<T_FM_USER>(t => t.ID == sendUser.USER_ID)?.NAME;
var notice = NotificationTaskService.InsertUserNoticeTaskModel("动火作业现场条件验收", job.ID, job.ORG_ID, (Guid)sendUser.USER_ID, userName, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO043_1");
notices.Add(notice);
}
}
}
}
}
this.UnifiedCommit(() =>
{
if (deleteIds != null && deleteIds.Any())
this.BantchDeleteEntityNoCommit<T_FO_TECH_DISCLOSURE_FROM_SAFE_PERSON>(deleteIds);
if (deleteFileIds != null && deleteFileIds.Any())
this.BantchDeleteEntityNoCommit<T_FO_TECH_DISCLOSURE_FROM_SAFE_FILE>(deleteFileIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (persons != null && persons.Any())
this.BantchSaveEntityNoCommit(persons);
if (files != null && files.Any())
this.BantchSaveEntityNoCommit(files);
if (notices != null && notices.Any())
this.BantchSaveEntityNoCommit(notices);
if (job != null)
UpdateEntityNoCommit(job);
});
return true;
});
@ -153,13 +187,33 @@ namespace APT.FO.WebApi.Controllers
userID = currTask.USER_ID;
}
}
T_FO_FIRE_JOB job = null;
T_FM_NOTIFICATION_TASK notice = null;
var tech = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM_SAFE>(entity.ID);
var user = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM_SAFE_PERSON>(t => t.TECH_DISCLOSURE_FROM_ID == tech.ID && t.USER_ID == userID, new BaseFilter(orgId));
user.DEAL_STATUS = FOUserShiftStatusEnum.;
var todoCount = this.GetCount<T_FO_TECH_DISCLOSURE_FROM_SAFE_PERSON>(t => t.TECH_DISCLOSURE_FROM_ID == tech.ID && t.DEAL_STATUS == 0 && t.USER_ID != null && t.USER_ID != userID, new BaseFilter(orgId));
if (todoCount == 0 || todoCount == 1)
if (todoCount == 0)
{
tech.FORM_STATUS = (int)FOTeamActivityState.;
if (tech.FIRE_JOB_ID != null)
{
job = this.GetEntity<T_FO_FIRE_JOB>(t => t.ID == tech.FIRE_JOB_ID);
if (job != null)
{
job.IS_RUN = true;
job.FIRE_STATUS = FOFireStatus.Sign;
var jobUsers = this.GetEntities<T_FO_FIRE_JOB_USER>(t => t.FIRE_JOB_ID == job.ID, new BaseFilter(job.ORG_ID));
var userType = this.GetEntity<T_OG_RELATED_USER_TYPE>(t => t.NAME == "动火操作人员");
var sendUser = jobUsers.FirstOrDefault(t => t.USER_TYPE_ID == userType.ID);
if (sendUser != null)
{
var userName = this.GetEntity<T_FM_USER>(t => t.ID == sendUser.USER_ID)?.NAME;
notice = NotificationTaskService.InsertUserNoticeTaskModel("动火作业现场条件验收", job.ID, job.ORG_ID, (Guid)sendUser.USER_ID, userName, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO043_1");
}
}
}
}
T_FM_NOTIFICATION_TASK task = null;
if (entity.TaskID != Guid.Empty)
@ -175,6 +229,10 @@ namespace APT.FO.WebApi.Controllers
this.UpdateEntityNoCommit(user);
if (task != null)
this.UpdateEntityNoCommit(task);
if (job != null)
this.UpdateEntityNoCommit(job);
if (notice != null)
this.AddEntityNoCommit(notice);
});
return true;
});

View File

@ -38,7 +38,7 @@ namespace APT.FO.WebApi.Controllers
var id = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "ID").Value.ToString();
if (string.IsNullOrEmpty(id))
this.ThrowError("060010");
var entity = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM_TECH>(id, "Nav_OperationStep", "Nav_User.Nav_UserSignFiles.Nav_ImgFile", "Nav_Department");
var entity = this.GetEntity<T_FO_TECH_DISCLOSURE_FROM_TECH>(id, "Nav_OperationStep", "Nav_User.Nav_UserSignFiles.Nav_ImgFile", "Nav_Department", "Nav_Files.Nav_ImgFile");
if (entity != null)
{
var newFilter = new BaseFilter(filter.OrgId);
@ -67,6 +67,13 @@ namespace APT.FO.WebApi.Controllers
persons = persons.Where(t => !t.IS_DELETED && t.USER_ID != null).ToList();
}
entity.Nav_Person = null;
var files = entity.Nav_Files;
var deleteFileIds = this.GetEntities<T_FO_TECH_DISCLOSURE_FROM_TECH_FILE>(t => t.TECH_DISCLOSURE_FROM_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(m => m.ID).ToList();
if (files != null && files.Any())
{
files = files.Where(t => !t.IS_DELETED).ToList();
}
entity.Nav_Files = null;
List<T_FM_NOTIFICATION_TASK> notices = new List<T_FM_NOTIFICATION_TASK>();
var loginUserId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departmentId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
@ -124,10 +131,14 @@ namespace APT.FO.WebApi.Controllers
{
if (deleteIds != null && deleteIds.Any())
this.BantchDeleteEntityNoCommit<T_FO_TECH_DISCLOSURE_FROM_TECH_PERSON>(deleteIds);
if (deleteFileIds != null && deleteFileIds.Any())
this.BantchDeleteEntityNoCommit<T_FO_TECH_DISCLOSURE_FROM_TECH_FILE>(deleteFileIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (persons != null && persons.Any())
this.BantchSaveEntityNoCommit(persons);
if (files != null && files.Any())
this.BantchSaveEntityNoCommit(files);
if (notices != null && notices.Any())
this.BantchSaveEntityNoCommit(notices);
});

File diff suppressed because it is too large Load Diff

View File

@ -1,128 +1,137 @@

//------------------------------------------------------------------------------
// T4模板文件基础接口类
// 此代码由T4模板自动生成
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//------------------------------------------------------------------------------
using APT.Infrastructure.Core;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
using APT.Utility;
using APT.Infrastructure.Api;
using APT.BaseData.Domain.ApiModel.PF;
namespace APT.LG.WebApi.Controllers.Api
{

//------------------------------------------------------------------------------
// T4模板文件基础接口类
// 此代码由T4模板自动生成
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//------------------------------------------------------------------------------
using APT.Infrastructure.Core;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
using APT.Utility;
using APT.Infrastructure.Api;
using APT.BaseData.Domain.ApiModel.PF;
namespace APT.LG.WebApi.Controllers.Api
{
using APT.BaseData.Domain.Entities.LG;
#region Oprate-
/// <summary>
/// 表单操作日志表
/// </summary>
[Route("api/LG/Oprate")]
public partial class OprateController : AuthorizeApiController<T_LG_OPRATE>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_LG_OPRATE>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_LG_OPRATE>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_LG_OPRATE> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_LG_OPRATE> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_LG_OPRATE entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_LG_OPRATE> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_LG_OPRATE> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
}
#endregion
}
#region Oprate-
/// <summary>
/// 表单操作日志表
/// </summary>
[Route("api/LG/Oprate")]
public partial class OprateController : AuthorizeApiController<T_LG_OPRATE>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_LG_OPRATE>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_LG_OPRATE>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_LG_OPRATE> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_LG_OPRATE> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_LG_OPRATE entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_LG_OPRATE> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_LG_OPRATE> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
}
#endregion
}

View File

@ -1,356 +1,370 @@

//------------------------------------------------------------------------------
// T4模板文件基础接口类
// 此代码由T4模板自动生成
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//------------------------------------------------------------------------------
using APT.Infrastructure.Core;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
using APT.Utility;
using APT.Infrastructure.Api;
using APT.BaseData.Domain.ApiModel.PF;
namespace APT.NW.WebApi.Controllers.Api
{

//------------------------------------------------------------------------------
// T4模板文件基础接口类
// 此代码由T4模板自动生成
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//------------------------------------------------------------------------------
using APT.Infrastructure.Core;
using Microsoft.AspNetCore.Mvc;
using System.Collections.Generic;
using APT.Utility;
using APT.Infrastructure.Api;
using APT.BaseData.Domain.ApiModel.PF;
namespace APT.NW.WebApi.Controllers.Api
{
using APT.BaseData.Domain.Entities.NW;
#region Enterprise-
/// <summary>
/// 子企业表
/// </summary>
[Route("api/NW/Enterprise")]
public partial class EnterpriseController : AuthorizeTreeApiController<T_NW_ENTERPRISE>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_NW_ENTERPRISE>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_NW_ENTERPRISE>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_NW_ENTERPRISE> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_NW_ENTERPRISE> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_NW_ENTERPRISE entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_NW_ENTERPRISE> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_NW_ENTERPRISE> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
/// <summary>
/// 获得树形实体数据
/// </summary>
/// <param name="filter"></param>
/// <returns></returns>
[HttpPost, Route("TreeData")]
public JsonActionResult<IEnumerable<TreeNode<T_NW_ENTERPRISE>>> TreeData([FromBody] KeywordFilter filter)
{
return WitTreeOrderEntities(null, filter);
}
}
#endregion
#region RoleDataPerm-
/// <summary>
/// 子企业数据权限表
/// </summary>
[Route("api/NW/RoleDataPerm")]
public partial class RoleDataPermController : AuthorizeApiController<T_NW_ROLE_DATA_PERM>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_DATA_PERM>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_DATA_PERM>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_NW_ROLE_DATA_PERM> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_NW_ROLE_DATA_PERM> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_NW_ROLE_DATA_PERM entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_NW_ROLE_DATA_PERM> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_NW_ROLE_DATA_PERM> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
}
#endregion
#region RoleMenu-
/// <summary>
/// 子企业权限表
/// </summary>
[Route("api/NW/RoleMenu")]
public partial class RoleMenuController : AuthorizeApiController<T_NW_ROLE_MENU>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_MENU>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_MENU>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_NW_ROLE_MENU> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_NW_ROLE_MENU> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_NW_ROLE_MENU entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_NW_ROLE_MENU> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_NW_ROLE_MENU> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
}
#endregion
}
#region Enterprise-
/// <summary>
/// 子企业表
/// </summary>
[Route("api/NW/Enterprise")]
public partial class EnterpriseController : AuthorizeTreeApiController<T_NW_ENTERPRISE>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_NW_ENTERPRISE>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_NW_ENTERPRISE>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_NW_ENTERPRISE> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_NW_ENTERPRISE> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_NW_ENTERPRISE entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_NW_ENTERPRISE> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_NW_ENTERPRISE> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
/// <summary>
/// 获得树形实体数据
/// </summary>
/// <param name="filter"></param>
/// <returns></returns>
[HttpPost, Route("TreeData")]
public JsonActionResult<IEnumerable<TreeNode<T_NW_ENTERPRISE>>> TreeData([FromBody] KeywordFilter filter)
{
return WitTreeOrderEntities(null, filter);
}
}
#endregion
#region RoleDataPerm-
/// <summary>
/// 子企业数据权限表
/// </summary>
[Route("api/NW/RoleDataPerm")]
public partial class RoleDataPermController : AuthorizeApiController<T_NW_ROLE_DATA_PERM>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_DATA_PERM>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_DATA_PERM>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_NW_ROLE_DATA_PERM> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_NW_ROLE_DATA_PERM> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_NW_ROLE_DATA_PERM entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_NW_ROLE_DATA_PERM> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_NW_ROLE_DATA_PERM> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
}
#endregion
#region RoleMenu-
/// <summary>
/// 子企业权限表
/// </summary>
[Route("api/NW/RoleMenu")]
public partial class RoleMenuController : AuthorizeApiController<T_NW_ROLE_MENU>
{
/// <summary>
/// 查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Entities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_MENU>> Entities([FromBody]KeywordFilter filter)
{
return WitEntities(null, filter);
}
/// <summary>
/// 排序查询所有数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderEntities")]
public JsonActionResult<IEnumerable<T_NW_ROLE_MENU>> OrderEntities([FromBody]KeywordFilter filter)
{
return WitOrderEntities(null, filter);
}
/// <summary>
/// 分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Paged")]
public PagedActionResult<T_NW_ROLE_MENU> Paged([FromBody]KeywordPageFilter pageFilter)
{
return WitPaged(null, pageFilter);
}
/// <summary>
/// 排序分页查询数据
/// </summary>
/// <param name="pageFilter">分页过滤实体</param>
/// <returns></returns>
[HttpPost, Route("OrderPaged")]
public PagedActionResult<T_NW_ROLE_MENU> OrderPaged([FromBody]KeywordPageFilter pageFilter)
{
return WitOrderPaged(null, pageFilter);
}
/// <summary>
/// 根据主键删除数据
/// </summary>
/// <param name="id">主键ID</param>
/// <returns></returns>
[HttpGet, Route("Delete")]
public JsonActionResult<bool> Delete(string id)
{
return WitRealDelete(id);
}
/// <summary>
/// 更新或新增数据
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("Update")]
public JsonActionResult<bool> Update([FromBody]T_NW_ROLE_MENU entity)
{
return WitUpdate(entity);
}
/// <summary>
/// 批量更新
/// </summary>
/// <param name="entity">对象实体</param>
/// <returns></returns>
[HttpPost, Route("BatchUpdate")]
public JsonActionResult<bool> BatchUpdate([FromBody] BatchUpdateModel<T_NW_ROLE_MENU> entity)
{
return WitBantchUpdate(entity?.Data);
}
/// <summary>
/// 批量删除数据
/// </summary>
/// <param name="ids">id字符串id用逗号分隔</param>
/// <returns></returns>
[HttpGet, Route("BatchDelete")]
public JsonActionResult<bool> BatchDelete(string ids)
{
return WitRealBatchDelete(ids);
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<T_NW_ROLE_MENU> Get([FromBody] KeywordFilter filter)
{
return WitEntity(null, filter);
}
}
#endregion
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -19,11 +19,13 @@ using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using Microsoft.VisualBasic;
using NPOI.SS.Formula.Functions;
using NPOI.Util;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Numerics;
using static Microsoft.AspNetCore.Razor.Language.TagHelperMetadata;
using static NPOI.HSSF.Util.HSSFColor;
namespace APT.PP.WebApi.Controllers.Api.PP
{
@ -1974,6 +1976,184 @@ namespace APT.PP.WebApi.Controllers.Api.PP
throw new Exception("【" + HttpContext.Request.Path + "】错误日志:[Message]" + ex.Message);
}
return true;
});
}
/// <summary>
/// 触发领导带班下井记录
/// </summary>
/// <param name="pageFilter"></param>
/// <returns></returns>
[HttpPost, Route("LeaderWellRecordSync")]
public JsonActionResult<bool> LeaderWellRecordSync([FromBody] KeywordFilter filter)
{
return SafeExecute<bool>(() =>
{
try
{
var notices = new List<T_FM_NOTIFICATION_TASK>();
var wellRecords = new List<T_FO_LEADER_WELL_RECORD>();
var wellRecordUsers = new List<T_FO_LEADER_WELL_RECORD_USER>();
var dt = DateTime.Now;
if (filter.Parameter1 != null)
{
dt = DateTime.Parse(filter.Parameter1);
}
var company = this.GetEntity<T_FM_DEPARTMENT>(t => t.PARENT_ID == null && t.ENABLE_STATUS == 0);
var fmClass = this.GetEntities<T_FM_CLASS>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId), "Nav_ClassDetail");
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0 && !t.CODE.Contains("admin"), new BaseFilter(filter.OrgId),"Nav_Department");
var jobs = this.GetEntities<T_FO_SCHEDULING>(t => t.DATE.Date == dt.Date, new BaseFilter(filter.OrgId), "Nav_User");
var records = this.GetEntities<T_FO_LEADER_WELL_RECORD>(t => t.JOB_START_DATE.Value.Date == dt.Date, new BaseFilter(filter.OrgId));
if (jobs != null && jobs.Any())
{
foreach (var item in jobs)
{
var classFisrt = fmClass.FirstOrDefault(t => t.ID == item.CLASS_ID);
if (classFisrt != null && classFisrt.Nav_ClassDetail != null && classFisrt.Nav_ClassDetail.Any())
{
var firstRecord = records.FirstOrDefault(t => t.CLASS_ID == item.CLASS_ID);
var firstTime = classFisrt.Nav_ClassDetail.OrderBy(t => t.NUM).FirstOrDefault();
if (firstTime.STARTTIME.Hour == dt.AddHours(1).Hour && firstRecord == null)
{
var sendUser = users.FirstOrDefault(t => t.ID == item.USER_ID);
if (sendUser != null)
{
T_FO_LEADER_WELL_RECORD record = new T_FO_LEADER_WELL_RECORD();
record.ORG_ID = item.ORG_ID;
record.APPLY_USER_ID = sendUser.ID;
record.APPLY_DEPARTMENT_ID = sendUser.DEPARTMENT_ID;
record.JOB_START_DATE = Convert.ToDateTime(dt.Date.ToShortDateString() +" "+ firstTime.STARTTIME.ToShortTimeString());
record.JOB_END_DATE = Convert.ToDateTime(dt.Date.ToShortDateString() +" "+ firstTime.ENDTIME.ToShortTimeString());
record.APPLY_DEPARTMENT_ID = sendUser.DEPARTMENT_ID;
record.COMPANY_ID = company?.ID;
record.CLASS_ID = item.CLASS_ID;
record.PRODUCTION_UNIT_ID = sendUser?.Nav_Department?.PRODUCTION_UNIT_ID;
wellRecords.Add(record);
T_FO_LEADER_WELL_RECORD_USER ledUser = new T_FO_LEADER_WELL_RECORD_USER();
ledUser.ORG_ID = item.ORG_ID;
ledUser.LEADER_WELL_RECORD_ID = record.ID;
ledUser.USER_ID = sendUser.ID;
wellRecordUsers.Add(ledUser);
var notice = NotificationTaskService.InsertUserNoticeTaskModel("领导带班下井记录"+dt.Month.PadLeft(2,'0')+ dt.Day.PadLeft(2, '0') + "("+classFisrt.NAME+")", record.ID, item.ORG_ID, sendUser.ID, sendUser.NAME, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO041");
notices.Add(notice);
}
}
}
}
}
UnifiedCommit(() =>
{
if (wellRecords != null && wellRecords.Any())
BantchSaveEntityNoCommit(wellRecords);
if (wellRecordUsers != null && wellRecordUsers.Any())
BantchSaveEntityNoCommit(wellRecordUsers);
if (notices != null && notices.Any())
BantchSaveEntityNoCommit(notices);
});
}
catch (Exception ex)
{
if (!string.IsNullOrEmpty(ex.StackTrace))
throw new Exception("错误日志:[StackTrace]" + ex.StackTrace);
else
throw new Exception("【" + HttpContext.Request.Path + "】错误日志:[Message]" + ex.Message);
}
return true;
});
}
/// <summary>
/// 手动触发的班前会根据下班时间自动触发岗位当班
/// </summary>
/// <param name="pageFilter"></param>
/// <returns></returns>
[HttpPost, Route("CurrentClassSync")]
public JsonActionResult<bool> CurrentClassSync([FromBody] KeywordFilter filter)
{
return SafeExecute<bool>(() =>
{
try
{
var notices = new List<T_FM_NOTIFICATION_TASK>();
var wellRecords = new List<T_FO_CURRENT_CLASS_RECORD>();
var wellRecordUsers = new List<T_FO_CURRENT_CLASS_RECORD_USER>();
var dt = DateTime.Now;
if (filter.Parameter1 != null)
{
dt = DateTime.Parse(filter.Parameter1);
}
var newFilter = new KeywordFilter();
newFilter.OrgId = filter.OrgId;
newFilter.IgnoreDataRule = true;
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
var fmClass = this.GetEntities<T_FM_CLASS>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId), "Nav_ClassDetail");
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0 && !t.CODE.Contains("admin"), new BaseFilter(filter.OrgId), "Nav_Person.Nav_Post");
var records = this.GetEntities<T_FO_CURRENT_CLASS_RECORD>(t => t.RECORD_DATE.Date == dt.Date, newFilter);
var preClass = this.GetEntities<T_FO_PRE_SHIFT_MEETING_RECORD>(t => t.START_TIME.Date == dt.Date && t.DEPARTMENT_SCHEDULING_ID == null, newFilter);
var preClassIds = preClass.Select(t => t.ID).ToList();
var preClassUsers = this.GetEntities<T_FO_PRE_SHIFT_MEETING_RECORD_USER>(t => preClassIds.Contains(t.PRE_SHIFT_MEETING_RECORD_ID), newFilter);
if (preClass != null && preClass.Any())
{
foreach (var item in preClass)
{
if (item.END_TIME != DateTime.MinValue && item.END_TIME.Hour == dt.AddHours(1).Hour)
{
var userIds = preClassUsers.Where(t => t.PRE_SHIFT_MEETING_RECORD_ID == item.ID).Select(m => m.USER_ID).Distinct().ToList();
var sendUsers = users.Where(t => userIds.Contains(t.ID) && t.Nav_Person != null).ToList();
if (sendUsers != null && sendUsers.Any())
{
foreach (var user in sendUsers)
{
var firstRecord = records.FirstOrDefault(t => t.EDITOR_ID == user.ID);
if (firstRecord == null)
{
var depart = departs.FirstOrDefault(t => t.ID == user.DEPARTMENT_ID);
T_FO_CURRENT_CLASS_RECORD record = new T_FO_CURRENT_CLASS_RECORD();
record.ORG_ID = item.ORG_ID;
record.NAME = dt.ToShortDateString() + depart?.NAME + "-" + user?.Nav_Person?.Nav_Post?.NAME + "当班工作记录";
record.EDITOR_ID = user.ID;
record.RECORD_DATE = Convert.ToDateTime(dt.Date.ToShortDateString() + " " + item.END_TIME.ToShortTimeString());
record.CLASS_ID = item.CLASS_ID;
record.DEPARTMENT_ID = user.DEPARTMENT_ID;
record.DEPARTMENT_POST_ID = user?.Nav_Person?.POST_ID;
record.CHARGE_USER_ID = depart?.USER_ID;
wellRecords.Add(record);
T_FO_CURRENT_CLASS_RECORD_USER ledUser = new T_FO_CURRENT_CLASS_RECORD_USER();
ledUser.ORG_ID = item.ORG_ID;
ledUser.CURRENT_CLASS_RECORD_ID = record.ID;
ledUser.USER_ID = user.ID;
wellRecordUsers.Add(ledUser);
var notice = NotificationTaskService.InsertUserNoticeTaskModel(record.NAME, record.ID, item.ORG_ID, user.ID, user.NAME, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "FO005");
notices.Add(notice);
}
}
}
}
}
}
UnifiedCommit(() =>
{
if (wellRecords != null && wellRecords.Any())
BantchSaveEntityNoCommit(wellRecords);
if (wellRecordUsers != null && wellRecordUsers.Any())
BantchSaveEntityNoCommit(wellRecordUsers);
if (notices != null && notices.Any())
BantchSaveEntityNoCommit(notices);
});
}
catch (Exception ex)
{
if (!string.IsNullOrEmpty(ex.StackTrace))
throw new Exception("错误日志:[StackTrace]" + ex.StackTrace);
else
throw new Exception("【" + HttpContext.Request.Path + "】错误日志:[Message]" + ex.Message);
}
return true;
});
}

View File

@ -225,9 +225,18 @@ namespace APT.PP.WebApi.Controllers
}
}
//判断开始时间=当前时间的,为重新排班,删除该班组已有的排班
var deleteConfigs = configData.Where(t => t.START_TIME.Date == t.CURR_TIME.Date && t.CURR_TIME.Date == DateTime.Now.Date).ToList();
var deleteTeamIds = deleteConfigs.SelectMany(i => i.Nav_DepartmentCalendarConfigTeam).Select(i => i.TEAM_ID).ToArray();
var deleteShiftDataIds = this.GetEntities<T_FM_DEPARTMENT_SCHEDULING>(s => s.DATE_TIME.Date >= DateTime.Now.Date && deleteTeamIds.Contains(s.TEAM_ID), new BaseFilter(filter.OrgId)).Select(m=>m.ID).ToList();
var deleteShiftPersonIds = this.GetEntities<T_FM_DEPARTMENT_SCHEDULING_DETAIL>(s => deleteShiftDataIds.Contains(s.DEPARTMENT_SCHEDULING_ID), new BaseFilter(filter.OrgId)).Select(m => m.ID).ToList();
//统一提交数据
this.UnifiedCommit(() =>
{
{
if (deleteShiftPersonIds != null && deleteShiftPersonIds.Any())
this.BantchDeleteEntityNoCommit<T_FM_DEPARTMENT_SCHEDULING_DETAIL>(deleteShiftPersonIds);
if (deleteShiftDataIds != null && deleteShiftDataIds.Any())
this.BantchDeleteEntityNoCommit<T_FM_DEPARTMENT_SCHEDULING>(deleteShiftDataIds);
if (shiftList.Any())
this.BantchAddEntityNoCommit(shiftList);
if (shiftDetailList.Any())

View File

@ -591,7 +591,7 @@ namespace APT.PP.WebApi.Controllers.Api
filter.IgnoreDataRule = true;
var baseFilter = new BaseFilter(filter.GetOrgId());
baseFilter.IgnoreDataRule = true;
baseFilter.SelectField = new string[] { "ID", "PRODUCTION_UNIT_ID", "CHECK_TYPE_ID","APPLY_DEPARTMENT_ID","APPLY_USER_ID","PLANCHECKFREQUENCY","DEPARTMENT_TYPE","CHECK_TIME","CHECK_PERSON",
baseFilter.SelectField = new string[] { "ID", "PRODUCTION_UNIT_ID","NOTICE_CODE", "CHECK_TYPE_ID","APPLY_DEPARTMENT_ID","APPLY_USER_ID","PLANCHECKFREQUENCY","DEPARTMENT_TYPE","CHECK_TIME","CHECK_PERSON",
"Nav_CheckNoticeDetails.RISK_AREA_ID","Nav_CheckNoticeDetails.CHECK_CONTENTS_ID","Nav_CheckNoticeDetails.CHECKCONTENT","Nav_CheckNoticeDetails.CHECKPROOF","Nav_CheckNoticeDetails.CHECKSTANDARD",
"Nav_CheckNoticeFiles.IMG_FILE_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailUsers.USER_ID", "Nav_CheckNoticeDetails.Nav_CheckNoticeDetailBasics.LAW_ID" }; //指定字段,包括导航属性
Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && i.CHECK_TIME != null && i.CHECK_TIME.Value.Date == DateTime.Now.Date && i.CHECK_TIME.Value.Hour == dtNow.Hour && i.STATUS == PFStandardStatus.Archived;
@ -638,6 +638,7 @@ namespace APT.PP.WebApi.Controllers.Api
record.ISAUTO = true;
record.STATUS = PFStandardStatus.Draft;
record.RECORD_USER_ID = userItem;
record.NOTICE_CODE = item.NOTICE_CODE;
if (item.Nav_CheckNoticeFiles != null && item.Nav_CheckNoticeFiles.Any())
{
foreach (var item2 in item.Nav_CheckNoticeFiles)
@ -772,34 +773,169 @@ namespace APT.PP.WebApi.Controllers.Api
var week = dtNow.DayOfWeek;
filter.IgnoreDataRule = true;
//查记录表检查时间第二天12点自动转为已办
List<T_FM_NOTIFICATION_TASK> tasks = new List<T_FM_NOTIFICATION_TASK>();
List<T_FM_NOTIFICATION_TASK> tasks = new List<T_FM_NOTIFICATION_TASK>();
List<T_FM_NOTIFICATION_TASK> noticeTasks = new List<T_FM_NOTIFICATION_TASK>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY> summarys = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_FILE> summaryFiles = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_FILE>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL> summaryDetails = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER> summaryDetailUsers = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC> summaryDetailBasics = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC>();
List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE> summaryDetailFiles = new List<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE>();
var baseFilter = new BaseFilter(filter.GetOrgId());
baseFilter.IgnoreDataRule = true;
baseFilter.SelectField = new string[] { "ID", "MineType", "CHECK_TYPE_ID","APPLY_DEPARTMENT_ID","APPLY_USER_ID","PLANCHECKFREQUENCY","DEPARTMENT_TYPE","CHECK_TIME","CHECK_PERSON",
"SECURITY_INSPECTION_NOTICE_ID","STATUS","TYPE_ID", "Nav_CheckRecordDetails.SECURITY_INSPECTION_RECORD_ID","Nav_CheckRecordDetails.CHECK_RESULT","Nav_CheckRecordDetails.CHECK_QUESTION_ID",
"Nav_CheckRecordDetails.HIDDEN_DESCRIPTION","Nav_CheckRecordDetails.HIDDEN_LEVEL","Nav_CheckRecordDetails.HIDDEN_PLACE","Nav_CheckRecordDetails.MARK",
"Nav_CheckRecordDetails.RISK_AREA_ID","Nav_CheckRecordDetails.CHECK_CONTENTS_ID","Nav_CheckRecordDetails.CHECKCONTENT","Nav_CheckRecordDetails.CHECKPROOF","Nav_CheckRecordDetails.CHECKSTANDARD",
"Nav_CheckRecordFiles.IMG_FILE_ID","Nav_CheckRecordFiles.SECURITY_INSPECTION_RECORD_ID","Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles.IMG_FILE_ID",
"Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles.SECURITY_INSPECTION_RECORD_DETAIL_ID","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.USER_ID",
"Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.ISMAINCHECK","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.CHECKTIME","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.ISCHECK",
"Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.SECURITY_INSPECTION_RECORD_DETAIL_ID","Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics.SECURITY_INSPECTION_RECORD_DETAIL_ID",
"Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics.LAW_ID" }; //指定字段,包括导航属性
var records = GetEntities<T_SK_SECURITY_INSPECTION_RECORD>(i => i.CHECK_TIME.Value.AddDays(1).Date == DateTime.Now.Date && DateTime.Now.Hour == 12, baseFilter).ToList();
if (records != null && records.Any())
{
var noticeIds = records.Select(i => i.ID).ToList();
tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => noticeIds.Contains((Guid)t.SOURCE_DATA_ID) && t.NOTICE_STATUS == 0, new BaseFilter(filter.OrgId)).ToList();
tasks.ForEach(t => t.NOTICE_STATUS = 4);
var sourceIds = tasks.Select(i => i.SOURCE_DATA_ID).ToList();
records.Where(t => sourceIds.Contains(t.ID)).ForEach(m => m.STATUS = PFStandardStatus.Close);
records.Where(t => !sourceIds.Contains(t.ID)).ForEach(m => m.STATUS = PFStandardStatus.Archived);
//baseFilter.SelectField = new string[] { "ID", "MineType", "CHECK_TYPE_ID","APPLY_DEPARTMENT_ID","APPLY_USER_ID","PLANCHECKFREQUENCY","DEPARTMENT_TYPE","CHECK_TIME","CHECK_PERSON",
// "SECURITY_INSPECTION_NOTICE_ID","STATUS","TYPE_ID", "Nav_CheckRecordDetails.SECURITY_INSPECTION_RECORD_ID","Nav_CheckRecordDetails.CHECK_RESULT","Nav_CheckRecordDetails.CHECK_QUESTION_ID",
// "Nav_CheckRecordDetails.HIDDEN_DESCRIPTION","Nav_CheckRecordDetails.HIDDEN_LEVEL","Nav_CheckRecordDetails.HIDDEN_PLACE","Nav_CheckRecordDetails.MARK",
// "Nav_CheckRecordDetails.RISK_AREA_ID","Nav_CheckRecordDetails.CHECK_CONTENTS_ID","Nav_CheckRecordDetails.CHECKCONTENT","Nav_CheckRecordDetails.CHECKPROOF","Nav_CheckRecordDetails.CHECKSTANDARD",
// "Nav_CheckRecordFiles.IMG_FILE_ID","Nav_CheckRecordFiles.SECURITY_INSPECTION_RECORD_ID","Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles.IMG_FILE_ID",
// "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles.SECURITY_INSPECTION_RECORD_DETAIL_ID","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.USER_ID",
// "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.ISMAINCHECK","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.CHECKTIME","Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.ISCHECK",
// "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers.SECURITY_INSPECTION_RECORD_DETAIL_ID","Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics.SECURITY_INSPECTION_RECORD_DETAIL_ID",
// "Nav_CheckRecordDetails.Nav_CheckRecordDetailBasics.LAW_ID" }; //指定字段,包括导航属性
var notices = GetEntities<T_SK_SECURITY_INSPECTION_NOTICE>(i => i.CHECK_TIME.Value.AddDays(1).Date == dtNow.Date && i.CHECK_TIME.Value.AddDays(1).Hour == dtNow.Hour && i.Nav_CheckType != null && !i.Nav_CheckType.NAME.Contains("岗位排查"), baseFilter);
var noticeIds = notices.Select(t => t.ID).ToList();
var sumRecords = GetEntities<T_SK_SECURITY_INSPECTION_RECORD_SUMMARY>(t => t.SECURITY_INSPECTION_NOTICE_ID != null && noticeIds.Contains((Guid)t.SECURITY_INSPECTION_NOTICE_ID), baseFilter);
var sumNoticeIds = sumRecords.Select(m => m.SECURITY_INSPECTION_NOTICE_ID).Distinct().ToList();
var needDealIds = noticeIds.Where(t => !sumNoticeIds.Contains(t)).ToList();
var records = GetEntities<T_SK_SECURITY_INSPECTION_RECORD>(i => i.SECURITY_INSPECTION_NOTICE_ID != null && needDealIds.Contains((Guid)i.SECURITY_INSPECTION_NOTICE_ID), baseFilter, "Nav_CheckRecordFiles", "Nav_CheckRecordDetails.Nav_CheckRecordDetailUsers", "Nav_CheckRecordDetails.Nav_CheckRecordDetailFiles").ToList();
if (records != null && records.Any())
{
var recordIds = records.Select(i => i.ID).ToList();
//处理未提交的待办
tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => recordIds.Contains((Guid)t.SOURCE_DATA_ID) && t.NOTICE_STATUS == 0, null).ToList();
tasks.ForEach(t => t.NOTICE_STATUS = 4);
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0 && !t.CODE.Contains("admin"), null, "Nav_Department");
//处理记录表状态
var sourceIds = tasks.Select(i => i.SOURCE_DATA_ID).ToList();
records.Where(t => sourceIds.Contains(t.ID)).ForEach(m => m.STATUS = PFStandardStatus.Close);
//触发汇总表
foreach (var id in needDealIds)
{
var noticeFirst = notices.FirstOrDefault(t => t.ID == id);
var user = users.FirstOrDefault(t => t.ID == noticeFirst?.APPLY_USER_ID);
if (user != null)
{
T_SK_SECURITY_INSPECTION_RECORD_SUMMARY sum = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY();
sum.ORG_ID = noticeFirst.ORG_ID;
sum.SECURITY_INSPECTION_NOTICE_ID = id;
sum.APPLY_DEPARTMENT_ID = noticeFirst.APPLY_DEPARTMENT_ID;
sum.APPLY_USER_ID = noticeFirst.APPLY_USER_ID;
sum.CHECK_PERSON = noticeFirst.CHECK_PERSON;
sum.CHECK_TIME = noticeFirst.CHECK_TIME;
sum.SECURITY_INSPECTION_RECORD_ID = records.FirstOrDefault(t => t.SECURITY_INSPECTION_NOTICE_ID == id)?.ID;
sum.MineType = noticeFirst.MineType;
sum.CHECK_TYPE_ID = noticeFirst.CHECK_TYPE_ID;
sum.PLANCHECKFREQUENCY = noticeFirst.PLANCHECKFREQUENCY;
sum.DEPARTMENT_TYPE = noticeFirst.DEPARTMENT_TYPE;
sum.STATUS = PFStandardStatus.Draft;
sum.NOTICE_CODE = noticeFirst.NOTICE_CODE;
summarys.Add(sum);
var files = records.Where(t => t.SECURITY_INSPECTION_NOTICE_ID == id).SelectMany(m => m.Nav_CheckRecordFiles).ToList();
if (files != null && files.Any())
{
var fileNews = files.GroupBy(t => t.IMG_FILE_ID).Select(g => g.FirstOrDefault()).ToList();
foreach (var item in fileNews)
{
T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_FILE fi = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_FILE();
fi.SECURITY_INSPECTION_RECORD_SUMMARY_ID = sum.ID;
fi.ORG_ID = sum.ORG_ID;
fi.IMG_FILE_ID = item.IMG_FILE_ID;
summaryFiles.Add(fi);
}
}
var details = records.Where(t => t.SECURITY_INSPECTION_NOTICE_ID == id).SelectMany(m => m.Nav_CheckRecordDetails).ToList();
if (details != null && details.Any())
{
var detailTempNews = details.Where(t => t.CHECK_RESULT == SKCheckResultEnum.Yes).ToList();
var detailTemps = details.Where(t => t.CHECK_RESULT != SKCheckResultEnum.Yes).GroupBy(m => new { m.RISK_AREA_ID, m.CHECK_CONTENTS_ID }).Select(g => g.FirstOrDefault()).ToList();
foreach (var itemDetail in detailTemps)
{
var hasRecord = detailTempNews.FirstOrDefault(t => t.RISK_AREA_ID == itemDetail.RISK_AREA_ID && t.CHECK_CONTENTS_ID == itemDetail.CHECK_CONTENTS_ID);
if (hasRecord == null)
{
detailTempNews.Add(itemDetail);
}
}
foreach (var itemDetail in detailTempNews)
{
T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL summaryDetail = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL();
summaryDetail.ORG_ID = sum.ORG_ID;
summaryDetail.SECURITY_INSPECTION_RECORD_SUMMARY_ID = sum.ID;
summaryDetail.RISK_AREA_ID = itemDetail.RISK_AREA_ID;
summaryDetail.CHECK_CONTENTS_ID = itemDetail.CHECK_CONTENTS_ID;
summaryDetail.CHECK_QUESTION_ID = itemDetail.CHECK_QUESTION_ID;
summaryDetail.CHECKCONTENT = itemDetail.CHECKCONTENT;
summaryDetail.CHECKPROOF = itemDetail.CHECKPROOF;
summaryDetail.CHECKSTANDARD = itemDetail.CHECKSTANDARD;
summaryDetail.CHECK_RESULT = itemDetail.CHECK_RESULT;
summaryDetail.HIDDEN_DESCRIPTION = string.IsNullOrEmpty(itemDetail.HIDDEN_DESCRIPTION) ? itemDetail.Nav_Question?.DESCREPTION : itemDetail.HIDDEN_DESCRIPTION;
summaryDetail.HIDDEN_LEVEL = itemDetail.HIDDEN_LEVEL;
summaryDetail.HIDDEN_PLACE = itemDetail.HIDDEN_PLACE;
summaryDetail.MARK = itemDetail.MARK;
summaryDetails.Add(summaryDetail);
if (itemDetail.Nav_CheckRecordDetailUsers != null && itemDetail.Nav_CheckRecordDetailUsers.Any())
{
foreach (var itemUser in itemDetail.Nav_CheckRecordDetailUsers)
{
T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER summaryUser = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_USER();
summaryUser.ORG_ID = sum.ORG_ID;
summaryUser.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = summaryDetail.ID;
summaryUser.Nav_User = null;
summaryUser.USER_ID = itemUser.USER_ID;
summaryDetailUsers.Add(summaryUser);
}
}
if (itemDetail.Nav_CheckRecordDetailBasics != null && itemDetail.Nav_CheckRecordDetailBasics.Any())
{
foreach (var itemBasic in itemDetail.Nav_CheckRecordDetailBasics)
{
T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC summaryBasic = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_BASIC();
summaryBasic.ORG_ID = sum.ORG_ID;
summaryBasic.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = summaryDetail.ID;
summaryBasic.Nav_Law = null;
summaryBasic.LAW_ID = itemBasic.LAW_ID;
summaryDetailBasics.Add(summaryBasic);
}
}
if (itemDetail.Nav_CheckRecordDetailFiles != null && itemDetail.Nav_CheckRecordDetailFiles.Any())
{
foreach (var itemFile in itemDetail.Nav_CheckRecordDetailFiles)
{
T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE summaryFile = new T_SK_SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_FILE();
summaryFile.ORG_ID = sum.ORG_ID;
summaryFile.SECURITY_INSPECTION_RECORD_SUMMARY_DETAIL_ID = summaryDetail.ID;
summaryFile.Nav_ImgFile = null;
summaryFile.IMG_FILE_ID = itemFile.IMG_FILE_ID;
summaryDetailFiles.Add(summaryFile);
}
}
}
}
var noticeTask = NotificationTaskService.InsertUserNoticeTaskModel("安全检查记录汇总表-" + user.Nav_Department?.NAME + DateTime.Now.Month.PadLeft(2, '0') + DateTime.Now.Day.PadLeft(2, '0'), sum.ID, sum.ORG_ID, user.ID, user.NAME, DateTime.Now, DateTime.Now.AddDays(1), (int)FMNoticeTypeEnum., "SK012");
noticeTasks.Add(noticeTask);
}
}
}
UnifiedCommit(() =>
{
if (records != null && records.Any())
BantchSaveEntityNoCommit(records);
BantchSaveEntityNoCommit(records);
if (summarys != null && summarys.Any())
BantchSaveEntityNoCommit(summarys);
if (summaryFiles != null && summaryFiles.Any())
BantchSaveEntityNoCommit(summaryFiles);
if (summaryDetails != null && summaryDetails.Any())
BantchSaveEntityNoCommit(summaryDetails);
if (summaryDetailUsers != null && summaryDetailUsers.Any())
BantchSaveEntityNoCommit(summaryDetailUsers);
if (summaryDetailBasics != null && summaryDetailBasics.Any())
BantchSaveEntityNoCommit(summaryDetailBasics);
if (summaryDetailFiles != null && summaryDetailFiles.Any())
BantchSaveEntityNoCommit(summaryDetailFiles);
if (tasks != null && tasks.Any())
BantchSaveEntityNoCommit(tasks);
BantchSaveEntityNoCommit(tasks);
if (noticeTasks != null && noticeTasks.Any())
BantchSaveEntityNoCommit(noticeTasks);
});
}
catch (Exception ex)
@ -980,7 +1116,7 @@ namespace APT.PP.WebApi.Controllers.Api
}
}
}
var noticeTask = NotificationTaskService.InsertUserNoticeTaskModel("安全风险辨识与评估计划(" + DateTime.Now.ToShortDateString().Replace("/", "") + ")", plan.ID, filter.OrgId, userInfo.ID, userInfo.NAME, DateTime.Now, dtEnd, (int)FMNoticeTypeEnum., "SK031");
var noticeTask = NotificationTaskService.InsertUserNoticeTaskModel("安全风险辨识与评估计划" + DateTime.Now.Month.PadLeft(2,'0')+ DateTime.Now.Day.PadLeft(2, '0'), plan.ID, filter.OrgId, userInfo.ID, userInfo.NAME, DateTime.Now, dtEnd, (int)FMNoticeTypeEnum., "SK031");
notices.Add(noticeTask);
}
}
@ -1389,7 +1525,7 @@ namespace APT.PP.WebApi.Controllers.Api
mes.NUM = detais.NUM;
mes.MEASURE = detais.MEASURES_NAME;
mesList.Add(mes);
var temp = (detais.NUM == null || detais.NUM == 0) ? "1" : detais.NUM + "、" + detais.MEASURES_NAME +"";
var temp = (detais.NUM == null || detais.NUM == 0) ? "1" : detais.NUM + "、" + detais.MEASURES_NAME;
ideDetail.MEASURE = ideDetail.MEASURE + temp;
}
}
@ -1403,7 +1539,7 @@ namespace APT.PP.WebApi.Controllers.Api
{
endtime = Convert.ToDateTime(plan.END_DATE.ToString().Replace("0:00:00", "23:59:59"));
}
var noticeTask = NotificationTaskService.InsertUserNoticeTaskModel("安全风险辨识表(" + DateTime.Now.ToShortDateString().Replace("/", "") + ")", ide.ID, filter.OrgId, user.ID, user.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum., "SK033");
var noticeTask = NotificationTaskService.InsertUserNoticeTaskModel("安全风险辨识表" + DateTime.Now.Month.PadLeft(2,'0') + DateTime.Now.Day.PadLeft(2, '0'), ide.ID, filter.OrgId, user.ID, user.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum., "SK033");
notices.Add(noticeTask);
//}
}
@ -1464,7 +1600,9 @@ namespace APT.PP.WebApi.Controllers.Api
List<T_SK_RISK_IDENTIFY_RESULT> results = new List<T_SK_RISK_IDENTIFY_RESULT>();
List<T_SK_RISK_IDENTIFY_RESULT_DETAIL> resultDetails = new List<T_SK_RISK_IDENTIFY_RESULT_DETAIL>();
List<T_SK_RISK_IDENTIFY_RESULT_REQUIRE> resultRequires = new List<T_SK_RISK_IDENTIFY_RESULT_REQUIRE>();
//List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE> resultDetailMes = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE> resultDetailMes = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST> resultDetailPosts = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL> resultDetailPostDets = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL>();
var requre = this.GetEntity<T_SK_REQUEST>(t => !t.IS_DELETED);
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0 && !t.CODE.Contains("admin"), new BaseFilter(filter.OrgId), "Nav_ApproveRole", "Nav_Person");
var departs = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
@ -1486,7 +1624,8 @@ namespace APT.PP.WebApi.Controllers.Api
var identityPlanIds = identitys.Select(t => t.IDENTIFY_EVALUATION_PLAN_ID).Distinct().ToList();
//plans = planTemps.Where(t => identityPlanIds.Contains(t.ID)).ToList();
var identityIds = identitys.Select(i => i.ID).ToList();
tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => identityIds.Contains((Guid)t.SOURCE_DATA_ID) && t.NOTICE_STATUS == 0, new BaseFilter(filter.OrgId)).ToList();
var approvIds = this.GetEntities<T_PF_APPROVE>(t => identityIds.Contains(t.DATA_ID), new BaseFilter(filter.OrgId)).Select(m => m.ID).ToList();
tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => (identityIds.Contains((Guid)t.SOURCE_DATA_ID) || approvIds.Contains((Guid)t.SOURCE_DATA_ID)) && t.NOTICE_STATUS == 0, new BaseFilter(filter.OrgId)).ToList();
var identityTempIds = identityTemps.Select(t => t.ID).ToList();
var details = GetEntities<T_SK_RISK_IDENTIFY_DETAIL>(i => identityTempIds.Contains(i.RISK_IDENTIFY_ID), new BaseFilter(filter.OrgId)).ToList();
var identityDetailIds = details.Select(t => t.ID).ToList();
@ -1591,68 +1730,60 @@ namespace APT.PP.WebApi.Controllers.Api
var i = 1;
foreach (var mm in mesTemps)
{
//T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE mes = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE();
//mes.ORG_ID = filter.OrgId;
//mes.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
//mes.NUM = i;
//mes.MEASURE = mm;
//resultDetailMes.Add(mes);
var mtemp = i + "、" + mm + "";
T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE mes = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE();
mes.ORG_ID = filter.OrgId;
mes.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
mes.NUM = i;
mes.MEASURE = mm;
resultDetailMes.Add(mes);
var mtemp = i + "、" + mm;
ideDetail.MEASURE = ideDetail.MEASURE + mtemp;
i++;
}
}
//应急处置
var emergeTemps = temp.OrderBy(t => t.NUM).Select(m => m.EMERGENCY).Distinct().ToList();
if (emergeTemps != null && emergeTemps.Any())
{
var i = 1;
foreach (var mm in emergeTemps)
{
var mtemp = i + "、" + mm +"";
ideDetail.EMERGENCY = ideDetail.EMERGENCY + mtemp;
i++;
}
}
ideDetail.EMERGENCY = temp.FirstOrDefault().EMERGENCY;
//var emergeTemps = temp.OrderBy(t => t.NUM).Select(m => m.EMERGENCY).Distinct().ToList();
//if (emergeTemps != null && emergeTemps.Any())
//{
// var i = 1;
// foreach (var mm in emergeTemps)
// {
// var mtemp = i + "、" + mm +"";
// ideDetail.EMERGENCY = ideDetail.EMERGENCY + mm;
// i++;
// }
//}
//辨识部门
var identifyIds = temp.Select(t => t.RISK_IDENTIFY_ID).ToList();
var departIdss = identityTemps.Where(t => identifyIds.Contains(t.ID)).Select(m => m.APPLY_DEPARTMENT_ID).Distinct().ToList();
var userIdss = identityTemps.Where(t => identifyIds.Contains(t.ID)).Select(m => m.APPLY_USER_ID).Distinct().ToList();
if (departIdss.Any())
{
var departTemps = departs.Where(t => departIdss.Contains(t.ID)).Select(m => m.DEPARTMENT_TYPE).Distinct().ToList();
var departTemps = departs.Where(t => departIdss.Contains(t.ID)).OrderBy(m=>m.DEPARTMENT_TYPE).ToList();
if (departTemps.Any())
{
var i = 1;
foreach (var ite in departTemps)
{
var departType = "公司级";
if (ite == 10)
{
departType = "部门级";
}
if (ite == 15)
{
departType = "车间级";
}
if (ite == 20)
{
departType = "班组级";
}
var temp2 = i == 1 ? i + "、" + departType + "" : i + "、" + departType + "";
ideDetail.DEPARTMENT_TYPE = ideDetail.DEPARTMENT_TYPE + temp2;
var deTemps = departs.Where(t => departIdss.Contains(t.ID) && t.DEPARTMENT_TYPE == ite).Select(m => m.NAME).ToList();
var deTempIds = departs.Where(t => departIdss.Contains(t.ID) && t.DEPARTMENT_TYPE == ite).Select(m => m.ID).ToList();
var temp3 = i == 1 ? i + "、" + string.Join(",", deTemps) + "" : i + "、" + string.Join(",", deTemps) + "";
ideDetail.IDENTIFY_DEPARTMENT = ideDetail.IDENTIFY_DEPARTMENT + temp3;
var postIdss = users.Where(t => t.DEPARTMENT_ID != null && deTempIds.Contains((Guid)t.DEPARTMENT_ID) && userIdss.Contains(t.ID) && t.Nav_Person != null).ToList();
var postIds = postIdss.Where(t => t.Nav_Person != null && t.Nav_Person.POST_ID != null).Select(m => m.Nav_Person.POST_ID).ToList();
var postTemps = userPosts.Where(t => postIds.Contains(t.ID)).Select(m => m.NAME).ToList();
if (postTemps.Any())
{
var tempPosts = string.Join("", postTemps);
var temp4 = i == 1 ? i + "、" + tempPosts + "" : i + "、" + tempPosts + "";
ideDetail.IDENTIFY_POST = ideDetail.IDENTIFY_POST + temp4;
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST depart = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST();
depart.ORG_ID = ite.ORG_ID;
depart.DEPARTMENT_ID = ite.ID;
depart.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
depart.DEPARTMENT_TYPE = (SKDepartmentTypeEnum)ite.DEPARTMENT_TYPE;
depart.NUM = i;
resultDetailPosts.Add(depart);
var postIds = users.Where(t => t.DEPARTMENT_ID != null && t.DEPARTMENT_ID == ite.ID && userIdss.Contains(t.ID) && t.Nav_Person != null && t.Nav_Person.POST_ID != null).Select(m=>m.Nav_Person?.POST_ID).ToList();
if (postIds.Any())
{
foreach (var poId in postIds)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL poDet = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL();
poDet.ORG_ID = ite.ORG_ID;
poDet.RISK_IDENTIFY_DETAIL_RESULT_POST_ID = depart.ID;
poDet.POST_ID = poId;
resultDetailPostDets.Add(poDet);
}
}
i++;
}
@ -1766,72 +1897,64 @@ namespace APT.PP.WebApi.Controllers.Api
var i = 1;
foreach (var mm in mesTemps)
{
//T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE mes = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE();
//mes.ORG_ID = filter.OrgId;
//mes.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
//mes.NUM = i;
//mes.MEASURE = mm;
//resultDetailMes.Add(mes);
var mtemp = i + "、" + mm + "";
T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE mes = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE();
mes.ORG_ID = filter.OrgId;
mes.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
mes.NUM = i;
mes.MEASURE = mm;
resultDetailMes.Add(mes);
var mtemp = i + "、" + mm;
ideDetail.MEASURE = ideDetail.MEASURE + mtemp;
i++;
}
}
//应急处置
var emergeTemps = temp.OrderBy(t => t.NUM).Select(m => m.EMERGENCY).Distinct().ToList();
if (emergeTemps != null && emergeTemps.Any())
{
var i = 1;
foreach (var mm in emergeTemps)
{
var mtemp = i + "、" + mm + "";
ideDetail.EMERGENCY = ideDetail.EMERGENCY + mtemp;
i++;
}
}
ideDetail.EMERGENCY = temp.FirstOrDefault().EMERGENCY;
//var emergeTemps = temp.OrderBy(t => t.NUM).Select(m => m.EMERGENCY).Distinct().ToList();
//if (emergeTemps != null && emergeTemps.Any())
//{
// var i = 1;
// foreach (var mm in emergeTemps)
// {
// var mtemp = i + "、" + mm + "";
// ideDetail.EMERGENCY = ideDetail.EMERGENCY + mtemp;
// i++;
// }
//}
//辨识部门
var identifyIds = temp.Select(t => t.RISK_IDENTIFY_ID).ToList();
var departIdss = identityTemps.Where(t => identifyIds.Contains(t.ID)).Select(m => m.APPLY_DEPARTMENT_ID).Distinct().ToList();
var userIdss = identityTemps.Where(t => identifyIds.Contains(t.ID)).Select(m => m.APPLY_USER_ID).Distinct().ToList();
if (departIdss.Any())
{
var departTemps = departs.Where(t => departIdss.Contains(t.ID)).Select(m => m.DEPARTMENT_TYPE).Distinct().ToList();
if (departTemps.Any())
{
var i = 1;
foreach (var ite in departTemps)
{
var departType = "公司级";
if (ite == 10)
{
departType = "部门级";
}
if (ite == 15)
{
departType = "车间级";
}
if (ite == 20)
{
departType = "班组级";
}
var temp2 = i == 1 ? i + "、" + departType + "" : i + "、" + departType + "";
ideDetail.DEPARTMENT_TYPE = ideDetail.DEPARTMENT_TYPE + temp2;
var deTemps = departs.Where(t => departIdss.Contains(t.ID) && t.DEPARTMENT_TYPE == ite).Select(m => m.NAME).ToList();
var deTempIds = departs.Where(t => departIdss.Contains(t.ID) && t.DEPARTMENT_TYPE == ite).Select(m => m.ID).ToList();
var temp3 = i == 1 ? i + "、" + string.Join(",", deTemps) + "" : i + "、" + string.Join(",", deTemps) + "" ;
ideDetail.IDENTIFY_DEPARTMENT = ideDetail.IDENTIFY_DEPARTMENT + temp3;
var postIdss = users.Where(t => t.DEPARTMENT_ID != null && deTempIds.Contains((Guid)t.DEPARTMENT_ID) && userIdss.Contains(t.ID) && t.Nav_Person != null).ToList();
var postIds = postIdss.Where(t => t.Nav_Person != null && t.Nav_Person.POST_ID != null).Select(m => m.Nav_Person.POST_ID).ToList();
var postTemps = userPosts.Where(t => postIds.Contains(t.ID)).Select(m => m.NAME).ToList();
if (postTemps.Any())
{
var tempPosts = string.Join("", postTemps);
var temp4 = i == 1 ? i + "、" + tempPosts + "" : i + "、" + tempPosts + "";
ideDetail.IDENTIFY_POST = ideDetail.IDENTIFY_POST + temp4;
}
i++;
}
}
var userIdss = identityTemps.Where(t => identifyIds.Contains(t.ID)).Select(m => m.APPLY_USER_ID).Distinct().ToList();
if (departIdss.Any())
{
var departTemps = departs.Where(t => departIdss.Contains(t.ID)).OrderBy(m => m.DEPARTMENT_TYPE).ToList();
if (departTemps.Any())
{
var i = 1;
foreach (var ite in departTemps)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST depart = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST();
depart.ORG_ID = ite.ORG_ID;
depart.DEPARTMENT_ID = ite.ID;
depart.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
depart.DEPARTMENT_TYPE = (SKDepartmentTypeEnum)ite.DEPARTMENT_TYPE;
depart.NUM = i;
resultDetailPosts.Add(depart);
var postIds = users.Where(t => t.DEPARTMENT_ID != null && t.DEPARTMENT_ID == ite.ID && userIdss.Contains(t.ID) && t.Nav_Person != null && t.Nav_Person.POST_ID != null).Select(m => m.Nav_Person?.POST_ID).ToList();
if (postIds.Any())
{
foreach (var poId in postIds)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL poDet = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL();
poDet.ORG_ID = ite.ORG_ID;
poDet.RISK_IDENTIFY_DETAIL_RESULT_POST_ID = depart.ID;
poDet.POST_ID = poId;
resultDetailPostDets.Add(poDet);
}
}
i++;
}
}
}
resultDetails.Add(ideDetail);
}
@ -1969,72 +2092,64 @@ namespace APT.PP.WebApi.Controllers.Api
var i = 1;
foreach (var mm in mesTemps)
{
//T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE mes = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE();
//mes.ORG_ID = filter.OrgId;
//mes.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
//mes.NUM = i;
//mes.MEASURE = mm;
//resultDetailMes.Add(mes);
var mtemp = i + "、" + mm + "";
T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE mes = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE();
mes.ORG_ID = filter.OrgId;
mes.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
mes.NUM = i;
mes.MEASURE = mm;
resultDetailMes.Add(mes);
var mtemp = i + "、" + mm;
ideDetail.MEASURE = ideDetail.MEASURE + mtemp;
i++;
}
}
//应急处置
var emergeTemps = temp.OrderBy(t => t.NUM).Select(m => m.EMERGENCY).Distinct().ToList();
if (emergeTemps != null && emergeTemps.Any())
{
var i = 1;
foreach (var mm in emergeTemps)
{
var mtemp = i + "、" + mm + "";
ideDetail.EMERGENCY = ideDetail.EMERGENCY + mtemp;
i++;
}
}
ideDetail.EMERGENCY = temp.FirstOrDefault().EMERGENCY;
//var emergeTemps = temp.OrderBy(t => t.NUM).Select(m => m.EMERGENCY).Distinct().ToList();
//if (emergeTemps != null && emergeTemps.Any())
//{
// var i = 1;
// foreach (var mm in emergeTemps)
// {
// var mtemp = i + "、" + mm + "";
// ideDetail.EMERGENCY = ideDetail.EMERGENCY + mtemp;
// i++;
// }
//}
//辨识部门
var identifyIds = temp.Select(t => t.RISK_IDENTIFY_ID).ToList();
var departIdss = identityTemps.Where(t => identifyIds.Contains(t.ID)).Select(m => m.APPLY_DEPARTMENT_ID).Distinct().ToList();
var userIdss = identityTemps.Where(t => identifyIds.Contains(t.ID)).Select(m => m.APPLY_USER_ID).Distinct().ToList();
if (departIdss.Any())
{
var departTemps = departs.Where(t => departIdss.Contains(t.ID)).Select(m => m.DEPARTMENT_TYPE).Distinct().ToList();
if (departTemps.Any())
{
var i = 1;
foreach (var ite in departTemps)
{
var departType = "公司级";
if (ite == 10)
{
departType = "部门级";
}
if (ite == 15)
{
departType = "车间级";
}
if (ite == 20)
{
departType = "班组级";
}
var temp2 = i == 1 ? i + "、" + departType + "" : i + "、" + departType + "";
ideDetail.DEPARTMENT_TYPE = ideDetail.DEPARTMENT_TYPE + temp2;
var deTemps = departs.Where(t => departIdss.Contains(t.ID) && t.DEPARTMENT_TYPE == ite).Select(m => m.NAME).ToList();
var deTempIds = departs.Where(t => departIdss.Contains(t.ID) && t.DEPARTMENT_TYPE == ite).Select(m => m.ID).ToList();
var temp3 = i == 1 ? i + "、" + string.Join(",", deTemps) + "" : i + "、" + string.Join(",", deTemps) + "";
ideDetail.IDENTIFY_DEPARTMENT = ideDetail.IDENTIFY_DEPARTMENT + temp3;
var postIdss = users.Where(t => t.DEPARTMENT_ID != null && deTempIds.Contains((Guid)t.DEPARTMENT_ID) && userIdss.Contains(t.ID) && t.Nav_Person != null).ToList();
var postIds = postIdss.Where(t => t.Nav_Person != null && t.Nav_Person.POST_ID != null).Select(m => m.Nav_Person.POST_ID).ToList();
var postTemps = userPosts.Where(t => postIds.Contains(t.ID)).Select(m => m.NAME).ToList();
if (postTemps.Any())
{
var tempPosts = string.Join("", postTemps);
var temp4 = i == 1 ? i + "、" + tempPosts + "" : i + "、" + tempPosts + "";
ideDetail.IDENTIFY_POST = ideDetail.IDENTIFY_POST + temp4;
}
i++;
}
}
if (departIdss.Any())
{
var departTemps = departs.Where(t => departIdss.Contains(t.ID)).OrderBy(m => m.DEPARTMENT_TYPE).ToList();
if (departTemps.Any())
{
var i = 1;
foreach (var ite in departTemps)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST depart = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST();
depart.ORG_ID = ite.ORG_ID;
depart.DEPARTMENT_ID = ite.ID;
depart.RISK_IDENTIFY_RESULT_DETAIL_ID = ideDetail.ID;
depart.DEPARTMENT_TYPE = (SKDepartmentTypeEnum)ite.DEPARTMENT_TYPE;
depart.NUM = i;
resultDetailPosts.Add(depart);
var postIds = users.Where(t => t.DEPARTMENT_ID != null && t.DEPARTMENT_ID == ite.ID && userIdss.Contains(t.ID) && t.Nav_Person != null && t.Nav_Person.POST_ID != null).Select(m => m.Nav_Person?.POST_ID).ToList();
if (postIds.Any())
{
foreach (var poId in postIds)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL poDet = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL();
poDet.ORG_ID = ite.ORG_ID;
poDet.RISK_IDENTIFY_DETAIL_RESULT_POST_ID = depart.ID;
poDet.POST_ID = poId;
resultDetailPostDets.Add(poDet);
}
}
i++;
}
}
}
resultDetails.Add(ideDetail);
}
@ -2070,8 +2185,12 @@ namespace APT.PP.WebApi.Controllers.Api
BantchSaveEntityNoCommit(resultDetails);
if (resultRequires != null && resultRequires.Any())
BantchSaveEntityNoCommit(resultRequires);
//if (resultDetailMes != null && resultDetailMes.Any())
// BantchSaveEntityNoCommit(resultDetailMes);
if (resultDetailMes != null && resultDetailMes.Any())
BantchSaveEntityNoCommit(resultDetailMes);
if (resultDetailPosts != null && resultDetailPosts.Any())
BantchSaveEntityNoCommit(resultDetailPosts);
if (resultDetailPostDets != null && resultDetailPostDets.Any())
BantchSaveEntityNoCommit(resultDetailPostDets);
});
}
catch (Exception ex)
@ -5369,6 +5488,7 @@ namespace APT.PP.WebApi.Controllers.Api
var checkList = list.Where(t => t.CheckTypeId != null && !checkTypeIds.Contains((Guid)t.CheckTypeId)).ToList();
if (checkList != null && checkList.Any())
{
var j = 1;
foreach (var item in checkList)
{
var userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME == item.CheckPost);
@ -5379,8 +5499,8 @@ namespace APT.PP.WebApi.Controllers.Api
}
if (item.CheckPost == "班组负责人")
{
//判断排班
userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && teamDepartIds.Contains(t.DEPARTMENT_ID) && t.PERSON_ID != null && personIds.Contains((Guid)t.PERSON_ID) && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME == item.CheckPost);
//判断排班//取消人员排班判断&& teamDepartIds.Contains(t.DEPARTMENT_ID) && t.PERSON_ID != null && personIds.Contains((Guid)t.PERSON_ID)
userInfo = users.FirstOrDefault(t => t.DEPARTMENT_ID == item.CheckDepartId && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME == item.CheckPost);
}
if (userInfo == null && item.CheckDepartId != null && item.CheckPost != "班组负责人")
{
@ -5414,6 +5534,7 @@ namespace APT.PP.WebApi.Controllers.Api
safeNotice.PLANCHECKFREQUENCY = item.Cycle;
safeNotice.DEPARTMENT_TYPE = item.DepartType;
safeNotice.STATUS = PFStandardStatus.Draft;
safeNotice.NOTICE_CODE = "JCZD" + DateTime.Now.ToString("yyyyMMddHH") + j.ToString().PadLeft(4, '0');
safeNotice.ISAUTO = true;
safeNotices.Add(safeNotice);
if (item.details != null && item.details.Any())
@ -5461,6 +5582,7 @@ namespace APT.PP.WebApi.Controllers.Api
}
var notice = NotificationTaskService.InsertUserNoticeTaskModel(item.CheckCycle + "安全检查通知" + date, safeNotice.ID, filter.OrgId, userInfo.ID, userInfo.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum., "SK006");
notices.Add(notice);
j++;
}
}
}
@ -5621,6 +5743,201 @@ namespace APT.PP.WebApi.Controllers.Api
}
return true;
});
}
/// <summary>
/// 系统管理-检查清单。自动触发检查通知
/// </summary>
/// <param name="pageFilter"></param>
/// <returns></returns>
[HttpPost, Route("CheckSetSync")]
public JsonActionResult<bool> CheckSetSync([FromBody] KeywordFilter filter)
{
return SafeExecute<bool>(() =>
{
try
{
var dtNow = DateTime.Now;
var year = dtNow.Year;
var month = dtNow.Month;
var day = dtNow.Day;
var week = dtNow.DayOfWeek;
List<T_SK_PLAN_SET> setList = new List<T_SK_PLAN_SET>();
//查配置表,有配才执行
var timeSets = GetEntities<T_SK_PLAN_SET>(i => i.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId)).ToList();
if (timeSets != null && timeSets.Any())
{
foreach (var set in timeSets)
{
switch (set.CHECK_CYCLE)
{
case SKPLANCHECKFREQUENCYEnum.Year:
if (set.MONTH == month && set.DATA == day)
{
setList.Add(set);
}
break;
case SKPLANCHECKFREQUENCYEnum.HalfYear:
if ((set.MONTH == month && set.DATA == day) || ((set.MONTH + 6) == month && (set.DATA + 183) == day))
{
setList.Add(set);
}
break;
case SKPLANCHECKFREQUENCYEnum.Date:
setList.Add(set);
break;
//case SKPLANCHECKFREQUENCYEnum.Class:
// setList.Add(set);
break;
case SKPLANCHECKFREQUENCYEnum.Week:
if (set.WEEKDATA != null && (int)set.WEEKDATA.Value == (int)week)
{
setList.Add(set);
}
break;
case SKPLANCHECKFREQUENCYEnum.Month:
if (set.DATA == day)
{
setList.Add(set);
}
break;
case SKPLANCHECKFREQUENCYEnum.Quarter:
if (set.MONTH == 1)
{
if ((month == 1 || month == 4 || month == 7 || month == 10) && set.DATA == day)
{
setList.Add(set);
}
}
if (set.MONTH == 2)
{
if ((month == 2 || month == 5 || month == 8 || month == 11) && set.DATA == day)
{
setList.Add(set);
}
}
if (set.MONTH == 3)
{
if ((month == 3 || month == 6 || month == 9 || month == 12) && set.DATA == day)
{
setList.Add(set);
}
}
break;
default:
break;
}
}
}
DateTime dt = DateTime.Now;
if (filter.Parameter1 != null)
{
dt = DateTime.Parse(filter.Parameter1);
}
List<T_SK_SECURITY_INSPECTION_NOTICE> notices = new List<T_SK_SECURITY_INSPECTION_NOTICE>();
List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL> details = new List<T_SK_SECURITY_INSPECTION_NOTICE_DETAIL>();
List<T_FM_NOTIFICATION_TASK> tasks = new List<T_FM_NOTIFICATION_TASK>();
var checkSets = GetEntities<T_SK_CHECK_SET>(i => i.IS_AUTO == true, new BaseFilter(filter.OrgId)).ToList();
var checkSetIds = checkSets.Select(t => t.ID).ToList();
var checkSetUsers= GetEntities<T_SK_CHECK_SET_USER>(i => checkSetIds.Contains(i.CHECK_SET_ID), new BaseFilter(filter.OrgId)).ToList();
var contents = GetEntities<T_SK_CHECK_SET_CONTENTS>(i => checkSetIds.Contains(i.CHECK_SET_ID), new BaseFilter(filter.OrgId)).ToList();
var users = GetEntities<T_FM_USER>(i => i.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId)).ToList();
if (checkSets != null && checkSets.Any())
{
var baseFilter = new BaseFilter(filter.GetOrgId());
baseFilter.IgnoreDataRule = true;
baseFilter.SelectField = new string[] { "PRODUCTION_UNIT_ID", "CHECK_TYPE_ID", "APPLY_DEPARTMENT_ID", "APPLY_USER_ID", "PLANCHECKFREQUENCY", "DEPARTMENT_TYPE", "CREATE_TIME" }; //指定字段,包括导航属性
Expression<Func<T_SK_SECURITY_INSPECTION_NOTICE, bool>> expression = i => i.IS_DELETED == false && (i.CREATE_TIME.Value.Date == DateTime.Now.Date || i.CREATE_TIME.Value.Date == DateTime.Now.AddDays(-1).Date);
List<T_SK_SECURITY_INSPECTION_NOTICE> noticeExsiss = this.GetOrderEntities(expression, baseFilter).ToList();
foreach (var set in checkSets)
{
var setUserIds = checkSetUsers.Where(t => t.CHECK_SET_ID == set.ID).Select(m => m.USER_ID).Distinct().ToList();
var timeSet = setList.FirstOrDefault(t => t.PRODUCTION_UNIT_ID == set.PRODUCTION_UNIT_ID && t.CHECK_CYCLE == set.CHECK_CYCLE);
var sendUsers = users.Where(t => setUserIds.Contains(t.ID)).ToList();
if (sendUsers != null && sendUsers.Any() && timeSet != null && timeSet.CHECKTIME.Value.Hour == dt.Hour)
{
var j = 1;
//触发给检查人
foreach (var user in sendUsers)
{
//判断是否重复触发
var exist = noticeExsiss.FirstOrDefault(t => t.APPLY_USER_ID == user.ID && t.DEPARTMENT_TYPE == set.CHECK_TYPE && t.CHECK_TYPE_ID == set.CHECK_TYPE_ID && t.PLANCHECKFREQUENCY == set.CHECK_CYCLE && t.CREATE_TIME.Value.Date == dt.Date);
if (exist == null)
{
T_SK_SECURITY_INSPECTION_NOTICE notice = new T_SK_SECURITY_INSPECTION_NOTICE();
notice.ORG_ID = set.ORG_ID;
notice.APPLY_USER_ID = user.ID;
notice.APPLY_DEPARTMENT_ID = user.DEPARTMENT_ID;
notice.PRODUCTION_UNIT_ID = set.PRODUCTION_UNIT_ID;
notice.CHECK_TYPE_ID = set.CHECK_TYPE_ID;
notice.PLANCHECKFREQUENCY = set.CHECK_CYCLE;
notice.DEPARTMENT_TYPE = set.CHECK_TYPE;
notice.NOTICE_CODE = "JCXD" + DateTime.Now.ToString("yyyyMMddHH") + j.ToString().PadLeft(4, '0');
notices.Add(notice);
var checkContents = contents.Where(t => t.CHECK_SET_ID == set.ID).ToList();
if (checkContents != null && checkContents.Any())
{
foreach (var con in checkContents)
{
T_SK_SECURITY_INSPECTION_NOTICE_DETAIL de = new T_SK_SECURITY_INSPECTION_NOTICE_DETAIL();
de.ORG_ID = set.ORG_ID;
de.SECURITY_INSPECTION_NOTICE_ID = notice.ID;
de.CHECK_CONTENTS_ID = con.CHECK_CONTENTS_ID;
de.CHECKCONTENT = con.CHECK_CONTENT;
de.CHECKSTANDARD = con.CHECK_STANDARD;
de.RISK_AREA_ID = con.AREA_ID;
details.Add(de);
}
}
var date = DateTime.Now.Year + DateTime.Now.Month.PadLeft(2, '0') + DateTime.Now.AddHours(4).Day.PadLeft(2, '0');
var endtime = DateTime.Now.AddHours(24);
if (set.CHECK_CYCLE == SKPLANCHECKFREQUENCYEnum.Week)
{
endtime = DateTime.Now.AddDays(7);
}
if (set.CHECK_CYCLE == SKPLANCHECKFREQUENCYEnum.Month)
{
endtime = DateTime.Now.AddMonths(1);
}
if (set.CHECK_CYCLE == SKPLANCHECKFREQUENCYEnum.HalfYear)
{
endtime = DateTime.Now.AddMonths(6);
}
if (set.CHECK_CYCLE == SKPLANCHECKFREQUENCYEnum.Year)
{
endtime = DateTime.Now.AddMonths(12);
}
if (set.CHECK_CYCLE == SKPLANCHECKFREQUENCYEnum.Quarter)
{
endtime = DateTime.Now.AddMonths(3);
}
var task = NotificationTaskService.InsertUserNoticeTaskModel(set.CHECK_CYCLE.GetDescription() + "安全检查通知" + date, notice.ID, set.ORG_ID, user.ID, user.NAME, DateTime.Now, endtime, (int)FMNoticeTypeEnum., "SK006");
tasks.Add(task);
j++;
}
}
}
}
}
UnifiedCommit(() =>
{
if (notices != null && notices.Any())
BantchSaveEntityNoCommit(notices);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (tasks != null && tasks.Any())
BantchSaveEntityNoCommit(tasks);
});
}
catch (Exception ex)
{
if (!string.IsNullOrEmpty(ex.StackTrace))
throw new Exception("错误日志:[StackTrace]" + ex.StackTrace);
else
throw new Exception("【" + HttpContext.Request.Path + "】错误日志:[Message]" + ex.Message);
}
return true;
});
}
}
}

View File

@ -1,7 +1,13 @@


//------------------------------------------------------------------------------
// T4模板文件基础接口类
// 此代码由T4模板自动生成
@ -15,4 +21,5 @@ using APT.Infrastructure.Api;
using APT.BaseData.Domain.ApiModel.PF;
namespace APT.PP.WebApi.Controllers.Api
{
}
}

View File

@ -425,6 +425,329 @@ namespace APT.SC.WebApi.Controllers.Api.BI
/// </summary>
/// <param name="pageFilter">返回系统用户数</param>
/// <returns></returns>
[HttpPost, Route("getRiskPerformanceDataOld")]
public JsonActionResult<riskPerformanceData> getRiskPerformanceDataOld([FromBody] KeywordFilter filter)
{
return SafeExecute<riskPerformanceData>(() =>
{
var riskFilter = new BaseFilter(filter.GetOrgId());
riskFilter.SelectField = new string[] { "EVALUATE_LEVEL", "CREATE_TIME", "MineType", "SOURCE_DEPARTMENT_ID", "TYPE_ID", "LEVEL", "AREA_ID", "DEPARTMENT_LIABLE_ID" };
IEnumerable<T_HM_EVALUATE_RISK> allrisk = null;
allrisk = GetEntities<T_HM_EVALUATE_RISK>(t => t.STATUS == (int)HMOperationStepEnum. && t.SOURCE_DEPARTMENT_ID != null, riskFilter);
var hazardFilter = new BaseFilter(filter.GetOrgId());
hazardFilter.SelectField = new string[] { "CREATE_TIME" };
var allhazard = GetEntities<T_HM_EVALUATE_HAZARD>(t => t.STATUS == (int)HMOperationStepEnum., hazardFilter);
riskPerformanceData riskPerformanceData = new riskPerformanceData();
List<dateCountModel> item3s = new List<dateCountModel>();
var distinctType = GetEntities<T_HM_RISK_TYPE>(t => t.IS_DELETED == false, new BaseFilter(filter.GetOrgId()));
var distinctDepartment = GetEntities<T_FM_DEPARTMENT>(t => t.DEPARTMENT_TYPE == 10, new BaseFilter(filter.GetOrgId()));
var distinctArea = GetEntities<T_HM_RISK_AREA>(t => t.IS_DELETED == false, new BaseFilter(filter.GetOrgId()));
var distinctTeamDepartment = GetEntities<T_FM_DEPARTMENT>(t => t.DEPARTMENT_TYPE == 20, new BaseFilter(filter.GetOrgId()));
#region 1
PerformanceModel CHARTFXDJ1 = new PerformanceModel();
CHARTFXDJ1.NAME = new List<string> { "一级", "二级", "三级", "四级" };
var type1 = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var type2 = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var type3 = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var type4 = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
CHARTFXDJ1.LEVEL1 = new List<int> { type1, type2, type3, type4 };
riskPerformanceData.CHARTFXDJ1 = CHARTFXDJ1;
#endregion
#region 2
List<PerformanceModel1> model2s = new List<PerformanceModel1> { };
PerformanceModel1 model1 = new PerformanceModel1();
PerformanceModel1 model2 = new PerformanceModel1();
PerformanceModel1 model3 = new PerformanceModel1();
PerformanceModel1 model4 = new PerformanceModel1();
model1.name = "一级";
model1.value = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
model2s.Add(model1);
model2.name = "二级";
model2.value = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
model2s.Add(model2);
model3.name = "三级";
model3.value = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
model2s.Add(model3);
model4.name = "四级";
model4.value = allrisk.Count(t => t.EVALUATE_LEVEL == EvaluateLevelEnum.);
model2s.Add(model4);
riskPerformanceData.CHARTFXDJ2 = model2s;
#endregion
#region 3
PerformanceModel modelMineType = new PerformanceModel();
foreach (FMProductionUnit mineType in Enum.GetValues(typeof(FMProductionUnit)))
{
var mineTypeName = mineType.GetDescription();
var mineTypeInt = mineType.GetInt();
modelMineType.NAME.Add(mineTypeName);
modelMineType.LEVEL1.Add(allrisk.Count(t => t.MineType == mineTypeInt && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
modelMineType.LEVEL2.Add(allrisk.Count(t => t.MineType == mineTypeInt && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
modelMineType.LEVEL3.Add(allrisk.Count(t => t.MineType == mineTypeInt && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
modelMineType.LEVEL4.Add(allrisk.Count(t => t.MineType == mineTypeInt && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
}
riskPerformanceData.CHARTLIST.Add(modelMineType);
#endregion
#region 4
PerformanceModel modelFXLB = new PerformanceModel();
foreach (var type in distinctType)
{
var countLevel1 = allrisk.Count(t => t.TYPE_ID == type.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel2 = allrisk.Count(t => t.TYPE_ID == type.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel3 = allrisk.Count(t => t.TYPE_ID == type.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel4 = allrisk.Count(t => t.TYPE_ID == type.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var totalCount = countLevel1 + countLevel2 + countLevel3 + countLevel4;
if (totalCount == 0)
{
continue;
}
modelFXLB.NAME.Add(type.NAME);
modelFXLB.LEVEL1.Add(countLevel1);
modelFXLB.LEVEL2.Add(countLevel2);
modelFXLB.LEVEL3.Add(countLevel3);
modelFXLB.LEVEL4.Add(countLevel4);
modelFXLB.TOTAL.Add(totalCount);
}
var newModelFXLB = SortByTotal(modelFXLB);
riskPerformanceData.CHARTLIST.Add(modelFXLB);
#endregion
#region 5
PerformanceModel modelZRDY = new PerformanceModel();
foreach (var department in distinctDepartment)
{
var countLevel1 = allrisk.Count(t => t.SOURCE_DEPARTMENT_ID == department.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel2 = allrisk.Count(t => t.SOURCE_DEPARTMENT_ID == department.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel3 = allrisk.Count(t => t.SOURCE_DEPARTMENT_ID == department.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel4 = allrisk.Count(t => t.SOURCE_DEPARTMENT_ID == department.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
if (countLevel1 + countLevel2 + countLevel3 + countLevel4 == 0)
{
continue;
}
modelZRDY.NAME.Add(department.NAME);
modelZRDY.LEVEL1.Add(countLevel1);
modelZRDY.LEVEL2.Add(countLevel2);
modelZRDY.LEVEL3.Add(countLevel3);
modelZRDY.LEVEL4.Add(countLevel4);
}
riskPerformanceData.CHARTLIST.Add(modelZRDY);
#endregion
#region 6
PerformanceModel modelDepartmentType = new PerformanceModel();
foreach (FMDepartmentType level in Enum.GetValues(typeof(FMDepartmentType)))
{
var levelName = level.GetDescription();
modelDepartmentType.NAME.Add(levelName);
modelDepartmentType.LEVEL1.Add(allrisk.Count(t => t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
modelDepartmentType.LEVEL2.Add(allrisk.Count(t => t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
modelDepartmentType.LEVEL3.Add(allrisk.Count(t => t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
modelDepartmentType.LEVEL4.Add(allrisk.Count(t => t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.));
}
riskPerformanceData.CHARTLIST.Add(modelDepartmentType);
#endregion
#region 7
PerformanceModel modelArea = new PerformanceModel();
foreach (var area in distinctArea)
{
var countLevel1 = allrisk.Count(t => t.AREA_ID == area.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel2 = allrisk.Count(t => t.AREA_ID == area.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel3 = allrisk.Count(t => t.AREA_ID == area.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel4 = allrisk.Count(t => t.AREA_ID == area.ID && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var totalArea = countLevel1 + countLevel2 + countLevel3 + countLevel4;
if (totalArea == 0)
{
continue;
}
modelArea.NAME.Add(area.NAME);
modelArea.LEVEL1.Add(countLevel1);
modelArea.LEVEL2.Add(countLevel2);
modelArea.LEVEL3.Add(countLevel3);
modelArea.LEVEL4.Add(countLevel4);
modelArea.TOTAL.Add(totalArea);
}
var newModelArea = SortByTotal(modelArea);
riskPerformanceData.CHARTLIST.Add(newModelArea);
#endregion
#region 8
var minTypeArr = new int[] { 30, 10, 20, 0 };
var levelArr = new int[] { 3, 0, 1, 2 };
foreach (var minetype in minTypeArr)
{
var templevel1 = allrisk.Where(t => t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var templevel2 = allrisk.Where(t => t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var templevel3 = allrisk.Where(t => t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var templevel4 = allrisk.Where(t => t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
PerformanceModel modelSCDY = new PerformanceModel();
modelSCDY.NAME = new List<string> { "公司", "部门", "车间", "班组" };
modelSCDY.LEVEL1 = new List<int> { templevel1.Count(t => (int)t.LEVEL == levelArr[0]), templevel1.Count(t => (int)t.LEVEL == levelArr[1]), templevel1.Count(t => (int)t.LEVEL == levelArr[2]), templevel1.Count(t => (int)t.LEVEL == levelArr[3]) };
modelSCDY.LEVEL2 = new List<int> { templevel2.Count(t => (int)t.LEVEL == levelArr[0]), templevel2.Count(t => (int)t.LEVEL == levelArr[1]), templevel2.Count(t => (int)t.LEVEL == levelArr[2]), templevel2.Count(t => (int)t.LEVEL == levelArr[3]) };
modelSCDY.LEVEL3 = new List<int> { templevel3.Count(t => (int)t.LEVEL == levelArr[0]), templevel3.Count(t => (int)t.LEVEL == levelArr[1]), templevel3.Count(t => (int)t.LEVEL == levelArr[2]), templevel3.Count(t => (int)t.LEVEL == levelArr[3]) };
modelSCDY.LEVEL4 = new List<int> { templevel4.Count(t => (int)t.LEVEL == levelArr[0]), templevel4.Count(t => (int)t.LEVEL == levelArr[1]), templevel4.Count(t => (int)t.LEVEL == levelArr[2]), templevel4.Count(t => (int)t.LEVEL == levelArr[3]) };
riskPerformanceData.SCDYLIST.Add(modelSCDY);
}
#endregion
#region 9
foreach (var level in levelArr)
{
var templevel1 = allrisk.Where(t => (int)t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var templevel2 = allrisk.Where(t => (int)t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var templevel3 = allrisk.Where(t => (int)t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var templevel4 = allrisk.Where(t => (int)t.LEVEL == level && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
PerformanceModel modelCJ = new PerformanceModel();
modelCJ.NAME = new List<string> { "露天矿", "选矿厂", "尾矿厂", "职能部门" };
modelCJ.LEVEL1 = new List<int> { templevel1.Count(t => (int)t.MineType == minTypeArr[0]), templevel1.Count(t => (int)t.MineType == minTypeArr[1]), templevel1.Count(t => (int)t.MineType == minTypeArr[2]), templevel1.Count(t => (int)t.MineType == minTypeArr[3]) };
modelCJ.LEVEL2 = new List<int> { templevel2.Count(t => (int)t.MineType == minTypeArr[0]), templevel2.Count(t => (int)t.MineType == minTypeArr[1]), templevel2.Count(t => (int)t.MineType == minTypeArr[2]), templevel2.Count(t => (int)t.MineType == minTypeArr[3]) };
modelCJ.LEVEL3 = new List<int> { templevel3.Count(t => (int)t.MineType == minTypeArr[0]), templevel3.Count(t => (int)t.MineType == minTypeArr[1]), templevel3.Count(t => (int)t.MineType == minTypeArr[2]), templevel3.Count(t => (int)t.MineType == minTypeArr[3]) };
modelCJ.LEVEL4 = new List<int> { templevel4.Count(t => (int)t.MineType == minTypeArr[0]), templevel4.Count(t => (int)t.MineType == minTypeArr[1]), templevel4.Count(t => (int)t.MineType == minTypeArr[2]), templevel4.Count(t => (int)t.MineType == minTypeArr[3]) };
riskPerformanceData.CJLIST.Add(modelCJ);
}
#endregion
#region 10
List<PerformanceModel> SubZRDY = new List<PerformanceModel>();
foreach (int minetype in minTypeArr)
{
PerformanceModel modelSubZRDY = new PerformanceModel();
foreach (var team in distinctTeamDepartment)
{
var countLevel1 = allrisk.Count(t => t.DEPARTMENT_LIABLE_ID == team.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel2 = allrisk.Count(t => t.DEPARTMENT_LIABLE_ID == team.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel3 = allrisk.Count(t => t.DEPARTMENT_LIABLE_ID == team.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel4 = allrisk.Count(t => t.DEPARTMENT_LIABLE_ID == team.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var totalZRDY = countLevel1 + countLevel2 + countLevel3 + countLevel4;
if (totalZRDY == 0)
{
continue;
}
modelSubZRDY.NAME.Add(team.NAME);
modelSubZRDY.LEVEL1.Add(countLevel1);
modelSubZRDY.LEVEL2.Add(countLevel2);
modelSubZRDY.LEVEL3.Add(countLevel3);
modelSubZRDY.LEVEL4.Add(countLevel4);
modelSubZRDY.TOTAL.Add(totalZRDY);
}
SubZRDY.Add(SortByTotal(modelSubZRDY));
}
riskPerformanceData.TEAMLIST = SubZRDY;
#endregion
#region 11
List<PerformanceModel> SubQY = new List<PerformanceModel>();
foreach (int minetype in minTypeArr)
{
PerformanceModel modelSubQY = new PerformanceModel();
foreach (var area in distinctArea)
{
var countLevel1 = allrisk.Count(t => t.AREA_ID == area.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel2 = allrisk.Count(t => t.AREA_ID == area.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel3 = allrisk.Count(t => t.AREA_ID == area.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel4 = allrisk.Count(t => t.AREA_ID == area.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var totalZRDY = countLevel1 + countLevel2 + countLevel3 + countLevel4;
if (totalZRDY == 0)
{
continue;
}
modelSubQY.NAME.Add(area.NAME);
modelSubQY.LEVEL1.Add(countLevel1);
modelSubQY.LEVEL2.Add(countLevel2);
modelSubQY.LEVEL3.Add(countLevel3);
modelSubQY.LEVEL4.Add(countLevel4);
modelSubQY.TOTAL.Add(totalZRDY);
}
SubQY.Add(SortByTotal(modelSubQY));
}
riskPerformanceData.AREALIST = SubQY;
#endregion
#region 12
List<PerformanceModel> SubFXLB = new List<PerformanceModel>();
foreach (int minetype in minTypeArr)
{
PerformanceModel modelSubFXLB = new PerformanceModel();
foreach (var type in distinctType)
{
var countLevel1 = allrisk.Count(t => t.TYPE_ID == type.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel2 = allrisk.Count(t => t.TYPE_ID == type.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel3 = allrisk.Count(t => t.TYPE_ID == type.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var countLevel4 = allrisk.Count(t => t.TYPE_ID == type.ID && t.MineType == minetype && t.EVALUATE_LEVEL == EvaluateLevelEnum.);
var totalZRDY = countLevel1 + countLevel2 + countLevel3 + countLevel4;
if (totalZRDY == 0)
{
continue;
}
modelSubFXLB.NAME.Add(type.NAME);
modelSubFXLB.LEVEL1.Add(countLevel1);
modelSubFXLB.LEVEL2.Add(countLevel2);
modelSubFXLB.LEVEL3.Add(countLevel3);
modelSubFXLB.LEVEL4.Add(countLevel4);
modelSubFXLB.TOTAL.Add(totalZRDY);
}
SubFXLB.Add(SortByTotal(modelSubFXLB));
}
riskPerformanceData.RISKTYPELIST = SubFXLB;
#endregion
#region 13
PerformanceModel CHARTZYRW1 = new PerformanceModel();
var allzyrw = GetEntities<T_HM_OPERATION_LINK>(t => t.IS_DELETED == false, new BaseFilter(filter.GetOrgId()));
CHARTZYRW1.NAME = new List<string> { "许可作业", "关键任务", "一般任务" };
var zy1 = allzyrw.Count(t => t.TASK_LEVEL == 1);
var zy2 = allzyrw.Count(t => t.TASK_LEVEL == 2);
var zy3 = allzyrw.Count(t => t.TASK_LEVEL == 3);
CHARTZYRW1.LEVEL1 = new List<int> { zy1, zy2, zy3 };
riskPerformanceData.CHARTZYRW1 = CHARTZYRW1;
#endregion
#region 2
List<PerformanceModel1> modelZyrws = new List<PerformanceModel1> { };
PerformanceModel1 modelZyrw1 = new PerformanceModel1();
PerformanceModel1 modelZyrw2 = new PerformanceModel1();
PerformanceModel1 modelZyrw3 = new PerformanceModel1();
modelZyrw1.name = "许可作业";
modelZyrw1.value = allzyrw.Count(t => t.TASK_LEVEL == 1);
modelZyrws.Add(modelZyrw1);
modelZyrw2.name = "关键任务";
modelZyrw2.value = allzyrw.Count(t => t.TASK_LEVEL == 2);
modelZyrws.Add(modelZyrw2);
modelZyrw3.name = "一般任务";
modelZyrw3.value = allzyrw.Count(t => t.TASK_LEVEL == 3);
modelZyrws.Add(modelZyrw3);
riskPerformanceData.CHARTZYRW2 = modelZyrws;
#endregion
#region
var currMonth = DateTime.Now.Month;
DateTime today = DateTime.Today;
for (var i = 1; i < currMonth + 1; i++)
{
DateTime endOfMonth = new DateTime(today.Year, i, 1).AddMonths(1).AddSeconds(-1);
dateCountModel riskDate = new dateCountModel();
riskDate.DATE = endOfMonth;
riskDate.COUNT = allrisk.Count(t => t.CREATE_TIME <= endOfMonth);
riskDate.TYPE = 0;
item3s.Add(riskDate);
dateCountModel hazardDate = new dateCountModel();
hazardDate.DATE = endOfMonth;
hazardDate.COUNT = allhazard.Count(t => t.CREATE_TIME <= endOfMonth); ;
hazardDate.TYPE = 1;
item3s.Add(hazardDate);
}
#endregion
riskPerformanceData.DATECOUNTS = item3s.OrderBy(t => t.DATE).ToList();
return riskPerformanceData;
});
}
/// <summary>
/// 风险库统计新
/// </summary>
/// <param name="pageFilter">返回系统用户数</param>
/// <returns></returns>
[HttpPost, Route("getRiskPerformanceData")]
public JsonActionResult<riskPerformanceData> getRiskPerformanceData([FromBody] KeywordFilter filter)
{

View File

@ -23,6 +23,7 @@ using APT.MS.Domain.Entities.SC.PT;
using APT.MS.Domain.Entities.SC.SC;
using APT.MS.Domain.Entities.SE;
using APT.MS.Domain.Enums;
using APT.MS.Domain.Enums.SK;
using APT.Utility;
using Castle.Core.Internal;
using ICSharpCode.SharpZipLib.Core;
@ -337,9 +338,108 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
departmentIdPs.AddRange(listDepIDInt);
GetDepartmentIds(orgId, listDepIDInt, ref departmentIdPs);
}
}
}
[HttpPost, Route("GetFormRunDay")]
public JsonActionResult<List<T_BI_FORM_RUN_ANALYSIS>> GetFormRunDay([FromBody] KeywordFilter filter)
{
return SafeExecute<List<T_BI_FORM_RUN_ANALYSIS>>(() =>
{
//首页待办增加数量统计字段
if (string.IsNullOrEmpty(filter.Parameter1))
{
throw new Exception("请先选择开始时间");
}
if (string.IsNullOrEmpty(filter.Parameter2))
{
throw new Exception("请先选择结束时间");
}
DateTime startTime = Convert.ToDateTime(filter.Parameter1);
DateTime endTime = Convert.ToDateTime(filter.Parameter2);
var diffTime = startTime.AddDays(32).Date;
if (diffTime < endTime.Date)
{
throw new Exception("查询时间不能超过32天!");
}
List<T_BI_FORM_RUN_ANALYSIS> formAnalysis = new List<T_BI_FORM_RUN_ANALYSIS>();
var newFilter = new BaseFilter(filter.OrgId);
newFilter.IgnoreDataRule = true;
newFilter.SelectField = new List<string> { "USER_ID", "NOTICE_STATUS", "TASK_ENDDT" };
var tasks = this.GetEntities<T_FM_NOTIFICATION_TASK>(t => !t.IS_DELETED && t.CREATE_TIME >= startTime && t.CREATE_TIME <= endTime && t.NOTICE_TYPE != 2 && (t.NOTICE_STATUS == 0 || t.NOTICE_STATUS == 1 || t.NOTICE_STATUS == 2), newFilter).ToList();
var userIds = tasks.Select(t => t.USER_ID).Distinct().ToList();
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId));
var departments = this.GetEntities<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0, new BaseFilter(filter.OrgId), "Nav_Parent");
if (tasks.Any())
{
foreach (var item in tasks)
{
var user = users.FirstOrDefault(t => t.ID == item.USER_ID);
if (user != null)
{
item.DEPARTMENT_ID = user.DEPARTMENT_ID;
item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == user.DEPARTMENT_ID)?.NAME;
}
}
var departs = departments.Where(t => t.DEPARTMENT_TYPE == 20).OrderBy(k => k.Nav_Parent?.NUM).ThenBy(m => m.NUM).ToList();
if (!string.IsNullOrEmpty(filter.Keyword))
{
var type = filter.Keyword.ToString();
switch (type)
{
case "0":
departs = departments.Where(t => t.DEPARTMENT_TYPE == 10 || t.DEPARTMENT_STATUS == 2).OrderBy(m => m.PARENT_ID).ThenBy(k => k.NUM).ToList();
break;
case "1":
departs = departments.Where(t => t.DEPARTMENT_TYPE == 15).OrderBy(k => k.Nav_Parent?.NUM).ThenBy(k => k.NUM).ToList();
break;
case "2":
departs = departments.Where(t => t.DEPARTMENT_TYPE == 20).OrderBy(k => k.Nav_Parent?.NUM).ThenBy(k => k.NUM).ToList();
break;
case "3":
departs = departments.Where(t => t.DEPARTMENT_TYPE == 5 && t.DEPARTMENT_STATUS != 2).OrderBy(m => m.PARENT_ID).ThenBy(k => k.NUM).ToList();
break;
default:
break;
}
}
if (tasks.Any() && departs.Any())
{
tasks = tasks.Where(t => t.DEPARTMENT_ID != null).ToList();
//var temp = tasks.GroupBy(t => t.DEPARTMENT_NAME).ToList();
foreach (var item in departs)
{
var departIds = new List<Guid>();
GetDepartmentIds(item.ORG_ID.Value, new List<Guid> { item.ID }, ref departIds);
departIds.Add(item.ID);
var count = tasks.Where(t => departIds.Contains((Guid)t.DEPARTMENT_ID)).Count();
var finish = tasks.Count(t => t.NOTICE_STATUS == 1 && departIds.Contains((Guid)t.DEPARTMENT_ID));
var overfinish = tasks.Count(t => t.NOTICE_STATUS == 2 && departIds.Contains((Guid)t.DEPARTMENT_ID));
var overUnfinish = tasks.Count(t => t.NOTICE_STATUS == 0 && departIds.Contains((Guid)t.DEPARTMENT_ID) && t.TASK_ENDDT < DateTime.Now);
var unfinish = tasks.Count(t => t.NOTICE_STATUS == 0 && departIds.Contains((Guid)t.DEPARTMENT_ID) && t.TASK_ENDDT >= DateTime.Now);
count = count - unfinish;
//var unfinish = count - finish - overfinish - overUnfinish;
var temp1 = count == 0 ? 100 : (double)(finish + overfinish) / count * 100;
var finishRate = temp1.ToString("0") + "%";
var temp2 = count == 0 ? 100 : (double)finish / count * 100;
var normalFinishRate = temp2.ToString("0") + "%";
T_BI_FORM_RUN_ANALYSIS analysis = new T_BI_FORM_RUN_ANALYSIS();
analysis.MOUDLE_NAME = item.NAME;
analysis.ORG_ID = filter.OrgId;
analysis.TOTAL_QTY = count;
analysis.FINISH_QTY = finish;
analysis.OVER_FINISH_QTY = overfinish;
analysis.UNFINISH_QTY = unfinish;
analysis.OVER_UNFINISH_QTY = overUnfinish;
analysis.FINISH_RATE = finishRate;
analysis.NORMAL_FINISH_RATE = normalFinishRate;
formAnalysis.Add(analysis);
}
}
}
return formAnalysis;
});
}
[HttpPost, Route("GetFormRunDayOld")]
public JsonActionResult<List<T_BI_FORM_RUN_ANALYSIS>> GetFormRunDayOld([FromBody] KeywordFilter filter)
{
return SafeExecute<List<T_BI_FORM_RUN_ANALYSIS>>(() =>
{
@ -10356,7 +10456,7 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
}
}
List<DepartmentInfos> completionSorts1 = completionSorts.Where(t => t.DEPARTMENT_TYPE == 5).ToList();
var temps = completionSorts.Where(t => t.DEPARTMENT_TYPE != 3).OrderBy(m => m.DEPARTMENT_TYPE).ToList();
var temps = completionSorts.Where(t => t.DEPARTMENT_TYPE != 5).OrderBy(m => m.DEPARTMENT_TYPE).ToList();
completionSorts1.AddRange(temps);
ret.retData = completionSorts1;
List<ApproveUserInfos> approveUsers = new List<ApproveUserInfos>();
@ -10373,7 +10473,7 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
ApproveUserInfos info = new ApproveUserInfos();
info.APPROVE_ROLE_NAME = role.NAME;
info.DEPARTMENT_TYPE = role.DEPARTMENT_TYPE;
info.DEPARTMENT_NAME = Enum.GetName(typeof(FMDepartmentType), role.DEPARTMENT_TYPE);
info.DEPARTMENT_NAME = Enum.GetName(typeof(SKDepartmentTypeEnum), role.DEPARTMENT_TYPE);
var users = userInfos.Where(t => t.APPROVE_ROLE_ID == role.ID).ToList();
if (users != null && users.Any())
{
@ -10410,7 +10510,7 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
}
}
List<ApproveUserInfos> approveUsers1 = approveUsers.Where(t => t.DEPARTMENT_TYPE == 5).ToList();
var tempApproves = approveUsers.Where(t => t.DEPARTMENT_TYPE != 3).OrderBy(m => m.DEPARTMENT_TYPE).ToList();
var tempApproves = approveUsers.Where(t => t.DEPARTMENT_TYPE != 5).OrderBy(m => m.DEPARTMENT_TYPE).ToList();
approveUsers1.AddRange(tempApproves);
ret.retDataApprove = approveUsers1;
return ret;
@ -10876,7 +10976,9 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
{
throw new Exception("请先选择部门或人员姓名");
}
var newFilter = new BaseFilter(pageFilter.OrgId);
var newFilter = new BaseFilter(pageFilter.OrgId);
newFilter.SelectField = new List<string> { "ID", "NAME","CODE", "ENABLE_STATUS", "DEPARTMENT_ID" };
var users = GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0, newFilter).ToList();
DateTime startTime = Convert.ToDateTime(pageFilter.Parameter1 + " 00:00:00");
DateTime endTime = Convert.ToDateTime(pageFilter.Parameter2 + " 23:59:59");
var diffTime = startTime.AddDays(180).Date;
@ -10886,11 +10988,11 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
}
var outPartmentIds = new List<Guid>();
Guid? departmentId = null;
var result = new List<T_BI_NOTIFICATION_TASK_NEW>();
var result = new List<T_FM_NOTIFICATION_TASK>();
if (!string.IsNullOrEmpty(pageFilter.Keyword))
{
newFilter.SelectField = new List<string> { "ID", "DEPARTMENT_ID" };
var user = GetEntity<T_FM_USER>(t => (t.NAME == pageFilter.Keyword.Trim() || t.CODE == pageFilter.Keyword.Trim()) && t.ENABLE_STATUS == 0, newFilter);
var user = users.FirstOrDefault(t => (t.NAME == pageFilter.Keyword.Trim() || t.CODE == pageFilter.Keyword.Trim()) && t.ENABLE_STATUS == 0);
if (user == null)
{
throw new Exception("该人员或工号不存在或已被禁用,请核对");
@ -10900,8 +11002,8 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
throw new Exception("该部门与人员不匹配,请核对");
}
departmentId = user.DEPARTMENT_ID;
newFilter.SelectField = new List<string> { "DEPARTMENT_NAME", "USER_NAME", "NOTICE_TITLE", "NOTICE_TYPE", "CREATE_TIME", "TASK_STARTDT", "NOTICE_STATUS", "TASK_ENDDT", "CLASS_DEPARTMENT_ID", "SHOP_DEPARTMENT_ID", "DEPT_DEPARTMENT_ID" };
result = GetEntities<T_BI_NOTIFICATION_TASK_NEW>(s => s.USER_ID == user.ID && !s.IS_DELETED && s.NOTICE_TYPE != 2 && s.NOTICE_TYPE != 7 && s.TASK_STARTDT >= startTime && s.TASK_STARTDT <= endTime, newFilter).ToList();//wyw
newFilter.SelectField = new List<string> { "USER_ID", "USER_NAME", "NOTICE_TITLE", "NOTICE_TYPE", "CREATE_TIME", "TASK_STARTDT", "NOTICE_STATUS", "TASK_ENDDT"};
result = GetEntities<T_FM_NOTIFICATION_TASK>(s => s.USER_ID == user.ID && !s.IS_DELETED && s.NOTICE_TYPE != 2 && s.NOTICE_TYPE != 7 && s.TASK_STARTDT >= startTime && s.TASK_STARTDT <= endTime && (s.NOTICE_STATUS == 0 || s.NOTICE_STATUS == 1 || s.NOTICE_STATUS == 2), newFilter).ToList();//wyw
}
if (!string.IsNullOrEmpty(pageFilter.Parameter3) && string.IsNullOrEmpty(pageFilter.Keyword))
{
@ -10909,14 +11011,14 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
List<Guid> inputIds = new List<Guid>() { Guid.Parse(pageFilter.Parameter3) };
GetDepartmentIds(APT.Infrastructure.Api.AppContext.CurrentSession.OrgId.Value, inputIds, ref outPartmentIds);
outPartmentIds.Add(Guid.Parse(pageFilter.Parameter3));
newFilter.SelectField = new List<string> { "ID" };
var userIds = GetEntities<T_FM_USER>(t => outPartmentIds.Contains((Guid)t.DEPARTMENT_ID) && t.ENABLE_STATUS == 0, newFilter).Select(m => m.ID).ToList();
newFilter.SelectField = new List<string> { "DEPARTMENT_NAME", "USER_NAME", "NOTICE_TITLE", "NOTICE_TYPE", "CREATE_TIME", "TASK_STARTDT", "NOTICE_STATUS", "TASK_ENDDT", "CLASS_DEPARTMENT_ID", "SHOP_DEPARTMENT_ID", "DEPT_DEPARTMENT_ID" };
result = GetEntities<T_BI_NOTIFICATION_TASK_NEW>(s => !s.IS_DELETED && s.NOTICE_TYPE != 2 && s.NOTICE_TYPE != 7 && s.TASK_STARTDT >= startTime && s.TASK_STARTDT <= endTime && userIds.Contains((Guid)s.USER_ID), newFilter).ToList();//wyw
var userIds = users.Where(t => outPartmentIds.Contains((Guid)t.DEPARTMENT_ID) && t.ENABLE_STATUS == 0).Select(m => m.ID).ToList();
newFilter.SelectField = new List<string> { "USER_ID", "USER_NAME", "NOTICE_TITLE", "NOTICE_TYPE", "CREATE_TIME", "TASK_STARTDT", "NOTICE_STATUS", "TASK_ENDDT"};
result = GetEntities<T_FM_NOTIFICATION_TASK>(s => !s.IS_DELETED && s.NOTICE_TYPE != 2 && s.NOTICE_TYPE != 7 && s.TASK_STARTDT >= startTime && s.TASK_STARTDT <= endTime && userIds.Contains((Guid)s.USER_ID) && (s.NOTICE_STATUS == 0 || s.NOTICE_STATUS == 1 || s.NOTICE_STATUS == 2), newFilter).ToList();//wyw
}
//var result = GetEntities<T_FM_NOTIFICATION_TASK>(s => s.TASK_STARTDT >= startTime && s.TASK_STARTDT <= endTime && s.USER_ID == user.ID && !s.IS_DELETED && s.NOTICE_TYPE != 2 && s.NOTICE_TYPE != 7, newFilter);
if (result.Any())
{
{
//var newData = result.ToList();
//ret.newData = newData;
//ret.unfinishCount = newData.Where(s => s.NOTICE_STATUS == 0).Count();
@ -10924,31 +11026,39 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
//ret.timeOverCount = newData.Where(s => s.NOTICE_STATUS == 2).Count();
//ret.timeOverWaitCount = newData.Where(s => s.NOTICE_STATUS == 0 && s.TASK_ENDDT < DateTime.Now).Count();
newFilter.SelectField = new List<string> { "ID", "NAME" };
var departments = this.GetEntities<T_FM_DEPARTMENT>(t => outPartmentIds.Contains(t.ID) || departmentId == t.ID, newFilter);
var departments = this.GetEntities<T_FM_DEPARTMENT>(t => outPartmentIds.Contains(t.ID) || departmentId == t.ID, newFilter);
foreach (var item in result)
{
var user = users.FirstOrDefault(t => t.ID == item.USER_ID);
if (user != null)
{
item.DEPARTMENT_ID = user.DEPARTMENT_ID;
item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == user.DEPARTMENT_ID)?.NAME;
}
}
//wyw
ret.newData = result;
ret.unfinishCount = result.Where(s => s.NOTICE_STATUS == 0).Count();
ret.doneCount = result.Where(s => s.NOTICE_STATUS == 1 || s.NOTICE_STATUS == 3 || s.NOTICE_STATUS == 9).Count();
ret.timeOverCount = result.Where(s => s.NOTICE_STATUS == 2 || s.NOTICE_STATUS == 4).Count();
ret.doneCount = result.Where(s => s.NOTICE_STATUS == 1).Count();
ret.timeOverCount = result.Where(s => s.NOTICE_STATUS == 2).Count();
ret.timeOverWaitCount = result.Where(s => s.NOTICE_STATUS == 0 && s.TASK_ENDDT < DateTime.Now).Count();
ret.TotalCount = ret.doneCount + ret.unfinishCount + ret.timeOverCount;
var currentMonth = startTime.Month;
var currentDay = startTime.Day;
for (DateTime i = startTime; i <= endTime; i = i.AddMonths(1))
var currentTime = Convert.ToDateTime(startTime.Year + "-" + startTime.Month + "-01 00:00:00");
for (DateTime i = currentTime; i <= endTime; i = i.AddMonths(1))
{
var monthStart = Convert.ToDateTime(i.Year + "-" + i.Month + "-01 00:00:00");
var monthEnd = Convert.ToDateTime(monthStart.AddMonths(1).AddDays(-1).ToString().Replace("0:00:00", "23:59:59"));
if (i.Date == startTime.Date)
if (i.Date <= startTime.Date)
{
monthStart = startTime;
}
if (i.Date == endTime.Date)
if (i.Date >= endTime.Date)
{
monthEnd = endTime;
}
var ksJantask = result.Where(t => t.TASK_STARTDT >= i && t.TASK_STARTDT <= monthEnd);
var ksJantask = result.Where(t => t.TASK_STARTDT >= monthStart && t.TASK_STARTDT <= monthEnd);
if (ksJantask.Any())
{
T_BI_DEPARTMENT_MONTH_RUN run = new T_BI_DEPARTMENT_MONTH_RUN();
@ -10984,26 +11094,26 @@ namespace APT.SC.WebApi.Controllers.Api.BIController
}
ret.groupData = monthRuns.OrderByDescending(t => t.MONTH).ToList();
ret.groupDataLine = monthRuns.ToList();
var temps = result.Where(s => s.NOTICE_STATUS == 0).OrderBy(t => t.DEPT_DEPARTMENT_ID).ThenBy(m => m.SHOP_DEPARTMENT_ID).ThenBy(x => x.CLASS_DEPARTMENT_ID).ThenBy(y => y.USER_NAME).ToList();
foreach (var item in temps)
{
if (item.CLASS_DEPARTMENT_ID != null)
{
item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == item.CLASS_DEPARTMENT_ID)?.NAME;
}
else if (item.SHOP_DEPARTMENT_ID != null)
{
item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == item.SHOP_DEPARTMENT_ID)?.NAME;
}
else if (item.DEPT_DEPARTMENT_ID != null)
{
item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == item.DEPT_DEPARTMENT_ID)?.NAME;
}
else
{
item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == departmentId)?.NAME;
}
}
var temps = result.Where(s => s.NOTICE_STATUS == 0).OrderBy(y => y.USER_NAME).ToList();
//foreach (var item in temps)
//{
// if (item.CLASS_DEPARTMENT_ID != null)
// {
// item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == item.CLASS_DEPARTMENT_ID)?.NAME;
// }
// else if (item.SHOP_DEPARTMENT_ID != null)
// {
// item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == item.SHOP_DEPARTMENT_ID)?.NAME;
// }
// else if (item.DEPT_DEPARTMENT_ID != null)
// {
// item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == item.DEPT_DEPARTMENT_ID)?.NAME;
// }
// else
// {
// item.DEPARTMENT_NAME = departments.FirstOrDefault(t => t.ID == departmentId)?.NAME;
// }
//}
ret.waitData = temps;
}
return ret;

View File

@ -194,7 +194,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
newUser.ORG_ID = orgId;
newUser.DEPARTMENT_ID = model.DEPARTMENT_ID;
newUser.NUM = 1000;//按 NUM 排序 靠后
newUser.ENABLE_STATUS = 1;//先配置不可用 三级安全教育完成后 再启用
//newUser.ENABLE_STATUS = 1;//先配置不可用 三级安全教育完成后 再启用
T_SE_USER_TEMP newTemp = new T_SE_USER_TEMP();
newTemp.ID = Guid.NewGuid();

File diff suppressed because it is too large Load Diff

View File

@ -71,7 +71,7 @@ namespace APT.SK.WebApi.Controllers.Api
detailIds = this.GetEntities<T_SK_CHECK_SET_CONTENTS>(t => t.CHECK_SET_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
basicIds = this.GetEntities<T_SK_CHECK_SET_CONTENTS_BASIC>(t => detailIds.Contains(t.CHECK_CONTENTS_SET_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
//hiddenIds = this.GetEntities<T_SK_CHECK_SET_CONTENTS_HIDDEN>(t => detailIds.Contains(t.CHECK_CONTENTS_SET_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
var record = this.GetEntity<T_SK_CHECK_SET>(t => t.ID != entity.ID && t.PRODUCTION_UNIT_ID == entity.PRODUCTION_UNIT_ID && t.CHECK_TYPE == entity.CHECK_TYPE && t.CHECK_TYPE_ID == entity.CHECK_TYPE_ID && t.CHECK_CYCLE == entity.CHECK_CYCLE && t.DEPARTMENT_ID == entity.DEPARTMENT_ID && t.POST_ID == entity.POST_ID);
var record = this.GetEntity<T_SK_CHECK_SET>(t => t.ID != entity.ID && t.PRODUCTION_UNIT_ID == entity.PRODUCTION_UNIT_ID && t.CHECK_TYPE == entity.CHECK_TYPE && t.CHECK_TYPE_ID == entity.CHECK_TYPE_ID && t.CHECK_CYCLE == entity.CHECK_CYCLE && t.DEPARTMENT_ID == entity.DEPARTMENT_ID);
if (record != null)
{
throw new Exception("相同检查已存在,请修改检查信息或回到列表页检索");
@ -81,6 +81,34 @@ namespace APT.SK.WebApi.Controllers.Api
checkUsers = checkUsers.Where(t => !t.IS_DELETED).ToList();
checkUsers.ForEach(t => t.Nav_User = null);
}
else
{
//默认当前层级安全员,没有就找负责人
var userId = APT.Infrastructure.Api.AppContext.CurrentSession.UserID;
var departId = APT.Infrastructure.Api.AppContext.CurrentSession.DepartmentID;
var userInfo = this.GetEntity<T_FM_USER>(t => t.ENABLE_STATUS == 0 && t.DEPARTMENT_ID == departId && t.Nav_Person!=null && t.Nav_ApproveRole!=null && t.Nav_ApproveRole.NAME.Contains("安全员"));
if (userInfo == null)
{
userInfo = this.GetEntity<T_FM_USER>(t => t.ENABLE_STATUS == 0 && t.DEPARTMENT_ID == departId && t.Nav_Person != null && t.Nav_ApproveRole != null && t.Nav_ApproveRole.NAME.Contains("负责人"));
}
if (userInfo == null)
{
var departUser = this.GetEntity<T_FM_DEPARTMENT>(t => t.ENABLE_STATUS == 0 && t.ID == departId)?.USER_ID;
if(departUser!=null)
userInfo = this.GetEntity<T_FM_USER>(t => t.ENABLE_STATUS == 0 && t.ID == departUser && t.Nav_Person != null);
}
if (userInfo != null)
{
T_SK_CHECK_SET_USER newUser = new T_SK_CHECK_SET_USER();
newUser.ORG_ID = entity.ORG_ID;
newUser.USER_ID = userInfo.ID;
newUser.CHECK_SET_ID = entity.ID;
checkUsers = new List<T_SK_CHECK_SET_USER>();
checkUsers.Add(newUser);
entity.POST_ID = userInfo.Nav_Person?.POST_ID;
}
//throw new Exception("检查人员必须填写");
}
if (details != null && details.Any())
{
foreach (var item in details)
@ -445,7 +473,7 @@ namespace APT.SK.WebApi.Controllers.Api
{
return SafeExecute<bool>(() =>
{
if (entity.PRODUCTION_UNIT_ID == null && entity.CHECK_TYPE_ID == null || entity.CHECK_TYPE == null || entity.DEPARTMENT_ID == null || entity.Nav_CheckUsers == null || !entity.Nav_CheckUsers.Any())
if (entity.PRODUCTION_UNIT_ID == null && entity.CHECK_TYPE_ID == null || entity.CHECK_TYPE == null || entity.DEPARTMENT_ID == null || entity.CHECK_CYCLE == null)
{
throw new Exception("生产单元,检查层级,检查类型,检查周期,检查部门,检查人都不能为空");
}

View File

@ -69,6 +69,10 @@ namespace APT.SK.WebApi.Controllers.Api
item.HIDDEN_DANGER_HAND_REPORT_ID = entity.ID;
item.Nav_ImgFile = null;
}
}
if (string.IsNullOrEmpty(entity.NOTICE_CODE))
{
entity.NOTICE_CODE = "SDSB" + DateTime.Now.ToString("yyyyMMddHH") + new Random().Next(1, 9999);
}
List<T_FM_NOTIFICATION_TASK> notices = new List<T_FM_NOTIFICATION_TASK>();
T_SK_HIDDEN_DANGER_CONFIRM confirm = null;
@ -84,17 +88,18 @@ namespace APT.SK.WebApi.Controllers.Api
{
sendUser = depart.USER_ID;
}
var userName = this.GetEntity<T_FM_USER>(t => t.ENABLE_STATUS == (int)FMEnableStatusEnum. && sendUser == t.ID)?.NAME;
var userName = this.GetEntity<T_FM_USER>(t => t.ENABLE_STATUS == (int)FMEnableStatusEnum. && sendUser == t.ID);
confirm = new T_SK_HIDDEN_DANGER_CONFIRM();
confirm.HIDDEN_DANGER_HAND_REPORT_ID = entity.ID;
confirm.ORG_ID = entity.ORG_ID;
confirm.MineType = entity.MineType;
confirm.PRODUCTION_UNIT_ID = entity.PRODUCTION_UNIT_ID;
confirm.APPLY_USER_ID = entity.APPLY_USER_ID;
confirm.APPLY_DEPARTMENT_ID = entity.APPLY_DEPARTMENT_ID;
confirm.APPLY_USER_ID = sendUser;
confirm.APPLY_DEPARTMENT_ID = userName?.DEPARTMENT_ID;
confirm.RISK_AREA_ID = entity.RISK_AREA_ID;
confirm.HIDDEN_PLACE = entity.HIDDEN_PLACE;
confirm.HIDDEN_DESCRIPTION = entity.HIDDEN_DESCRIPTION;
confirm.NOTICE_CODE = entity.NOTICE_CODE;
if (files != null && files.Any())
{
foreach (var file in files)
@ -112,7 +117,7 @@ namespace APT.SK.WebApi.Controllers.Api
{
titleName = "手动隐患上报完善";
}
var notice = NotificationTaskService.InsertUserNoticeTaskModel(titleName, confirm.ID, entity.ORG_ID, (Guid)sendUser, userName, DateTime.Now,
var notice = NotificationTaskService.InsertUserNoticeTaskModel(titleName, confirm.ID, entity.ORG_ID, (Guid)sendUser, userName?.NAME, DateTime.Now,
DateTime.Now.AddHours(24), (int)FMNoticeTypeEnum., "SK018");
notices.Add(notice);
}

View File

@ -564,6 +564,7 @@ namespace APT.SK.WebApi.Controllers.Api
var todoCount = this.GetCount<T_SK_HIDDEN_DANGER_RECTIFY_NOTICE_DETAIL>(t => notice.ID == t.HIDDEN_DANGER_RECTIFY_NOTICE_ID && t.ACCEPT_USER_ID != userId && t.ISCHECK == false, new BaseFilter(notice.ORG_ID));
if (todoCount == 0)
{
var users = this.GetEntities<T_FM_USER>(t => t.ENABLE_STATUS == 0,new BaseFilter(notice.ORG_ID));
notice.STATUS = PFStandardStatus.Archived;
var random = new Random();
if (notice.Nav_RectifyDetails != null && notice.Nav_RectifyDetails.Any())
@ -574,8 +575,8 @@ namespace APT.SK.WebApi.Controllers.Api
if (detail.IMPLEMENT_USER_ID != null)
{
T_SK_HIDDEN_DANGER_RECTIFY_RECORD record = new T_SK_HIDDEN_DANGER_RECTIFY_RECORD();
record.APPLY_DEPARTMENT_ID = notice.APPLY_DEPARTMENT_ID;
record.APPLY_USER_ID = notice.APPLY_USER_ID;
record.APPLY_DEPARTMENT_ID = users.FirstOrDefault(u => u.ID == detail.IMPLEMENT_USER_ID)?.DEPARTMENT_ID;
record.APPLY_USER_ID = detail.IMPLEMENT_USER_ID;
record.ORG_ID = detail.ORG_ID;
record.HIDDEN_DANGER_REPORT_ID = notice.HIDDEN_DANGER_REPORT_ID;
record.HIDDEN_DANGER_REPORT_DETAIL_ID = notice.HIDDEN_DANGER_REPORT_DETAIL_ID;
@ -601,7 +602,8 @@ namespace APT.SK.WebApi.Controllers.Api
record.IMPLEMENT_USER_ID = detail.IMPLEMENT_USER_ID;
record.STATUS = PFStandardStatus.Draft;
record.CHECK_TYPE_ID = notice.CHECK_TYPE_ID;
record.CHECK_TIME = notice.CHECK_TIME;
record.CHECK_TIME = notice.CHECK_TIME;
record.NOTICE_CODE = notice.NOTICE_CODE;
records.Add(record);
if (detail.Nav_RectifyDetailFiles != null && detail.Nav_RectifyDetailFiles.Any())
{

View File

@ -73,6 +73,7 @@ namespace APT.SK.WebApi.Controllers
entity.CHECK_TIME = record.CHECK_TIME;
entity.CHECK_PERSON = record.CHECK_PERSON;
entity.PRODUCTION_UNIT_ID = record.PRODUCTION_UNIT_ID;
entity.NOTICE_CODE = record.NOTICE_CODE;
}
var photoas = entity.Nav_RectifyPhotoas;
entity.Nav_RectifyPhotoas = null;

View File

@ -62,6 +62,7 @@ namespace APT.SK.WebApi.Controllers.Api
List<Guid> deletePostIds = new List<Guid>();
List<Guid> deletePostDetIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>();
List<T_SK_RISK_EVALUATION_DETAIL> detailList = new List<T_SK_RISK_EVALUATION_DETAIL>();
List<T_SK_RISK_EVALUATION_DETAIL_MEASURE> measureList = new List<T_SK_RISK_EVALUATION_DETAIL_MEASURE>();
List<T_SK_RISK_EVALUATION_DETAIL_DEPART> departList = new List<T_SK_RISK_EVALUATION_DETAIL_DEPART>();
List<T_SK_RISK_EVALUATION_DETAIL_POST> postList = new List<T_SK_RISK_EVALUATION_DETAIL_POST>();
@ -70,19 +71,31 @@ namespace APT.SK.WebApi.Controllers.Api
var record = this.GetEntity<T_SK_RISK_EVALUATION>(t => t.ID == entity.ID, "Nav_Details");
if (record != null && record.Nav_Details != null && record.Nav_Details.Any() && details != null && details.Any())
{
deleteDetailIds = record.Nav_Details.Select(t => t.ID).ToList();
deleteMeasureIds = this.GetEntities<T_SK_RISK_EVALUATION_DETAIL_MEASURE>(t => deleteDetailIds.Contains(t.RISK_EVALUATION_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deleteDetailIds = record.Nav_Details.Select(t => t.ID).ToList();
var detailMes = this.GetEntities<T_SK_RISK_EVALUATION_DETAIL_MEASURE>(t => deleteDetailIds.Contains(t.RISK_EVALUATION_DETAIL_ID), new BaseFilter(entity.ORG_ID)).ToList();
deleteMeasureIds = detailMes.Select(t => t.ID).ToList();
deleteDepartIds = this.GetEntities<T_SK_RISK_EVALUATION_DETAIL_DEPART>(t => deleteDetailIds.Contains(t.RISK_EVALUATION_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostIds = this.GetEntities<T_SK_RISK_EVALUATION_DETAIL_POST>(t => deleteDetailIds.Contains(t.RISK_EVALUATION_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostDetIds = this.GetEntities<T_SK_RISK_EVALUATION_DETAIL_POST_DETAIL>(t => deletePostIds.Contains(t.RISK_EVALUATION_DETAIL_POST_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
foreach (var item in details)
{
var temp = record.Nav_Details.FirstOrDefault(t => t.PRODUCTION_UNIT_ID == item.PRODUCTION_UNIT_ID && t.AREA_ID == item.AREA_ID && t.TYPE_ID == item.TYPE_ID && t.RISK_NAME == item.RISK_NAME && t.RISK_DESCRIPTION == item.RISK_DESCRIPTION && t.MEASURE == item.MEASURE
var temp = record.Nav_Details.FirstOrDefault(t => t.PRODUCTION_UNIT_ID == item.PRODUCTION_UNIT_ID && t.AREA_ID == item.AREA_ID && t.TYPE_ID == item.TYPE_ID && t.RISK_NAME == item.RISK_NAME && t.RISK_DESCRIPTION == item.RISK_DESCRIPTION
&& t.EMERGENCY == item.EMERGENCY && t.ENABLE_STATUS == item.ENABLE_STATUS);
if (temp == null && item.MARK != SKMarkEnum.Add)
{
item.MARK = SKMarkEnum.Update;
}
if (item.Nav_DetailMeasures != null && item.Nav_DetailMeasures.Any())
{
foreach (var mes in item.Nav_DetailMeasures)
{
var newMes = detailMes.FirstOrDefault(t => t.MEASURES_NAME == mes.MEASURES_NAME && t.RISK_EVALUATION_DETAIL_ID == item.ID);
if (newMes == null && item.MARK != SKMarkEnum.Add)
{
item.MARK = SKMarkEnum.Update;
}
}
}
}
//record.Nav_Details.ForEach(t =>
//{
@ -107,42 +120,65 @@ namespace APT.SK.WebApi.Controllers.Api
if (details != null && details.Any())
{
foreach (var item in details)
{
item.ORG_ID = entity.ORG_ID;
item.RISK_EVALUATION_ID = entity.ID;
{
T_SK_RISK_EVALUATION_DETAIL de = new T_SK_RISK_EVALUATION_DETAIL();
de.ORG_ID = entity.ORG_ID;
de.RISK_EVALUATION_ID = entity.ID;
de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
de.AREA_ID = item.AREA_ID;
de.RISK_NAME = item.RISK_NAME;
de.RISK_DESCRIPTION = item.RISK_DESCRIPTION;
de.TYPE_ID = item.TYPE_ID;
de.ENABLE_STATUS = item.ENABLE_STATUS;
de.MARK = item.MARK;
de.EMERGENCY = item.EMERGENCY;
de.ENTERPRISE_LIBRARY_ID = item.ENTERPRISE_LIBRARY_ID;
if (item.Nav_DetailMeasures != null && item.Nav_DetailMeasures.Any())
{
foreach (var item2 in item.Nav_DetailMeasures)
foreach (var mm in item.Nav_DetailMeasures)
{
T_SK_RISK_EVALUATION_DETAIL_MEASURE item2 = new T_SK_RISK_EVALUATION_DETAIL_MEASURE();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_EVALUATION_DETAIL_ID = item.ID;
measureList.Add(item2);
item2.RISK_EVALUATION_DETAIL_ID = de.ID;
item2.NUM = mm.NUM;
item2.MEASURES_NAME = mm.MEASURES_NAME;
measureList.Add(item2);
var temp = (item2.NUM == null || item2.NUM == 0) ? "1" : item2.NUM + "、" + item2.MEASURES_NAME + Environment.NewLine;
de.MEASURE = de.MEASURE + temp;
}
}
detailList.Add(de);
item.Nav_DetailMeasures = null;
if (item.Nav_DetailDeparts != null && item.Nav_DetailDeparts.Any())
{
foreach (var item2 in item.Nav_DetailDeparts)
foreach (var mm in item.Nav_DetailDeparts)
{
T_SK_RISK_EVALUATION_DETAIL_DEPART item2 = new T_SK_RISK_EVALUATION_DETAIL_DEPART();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_EVALUATION_DETAIL_ID = item.ID;
item2.RISK_EVALUATION_DETAIL_ID = de.ID;
item2.DEPARTMENT_TYPE = mm.DEPARTMENT_TYPE;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
departList.Add(item2);
}
}
item.Nav_DetailDeparts = null;
if (item.Nav_DetailPosts != null && item.Nav_DetailPosts.Any())
{
foreach (var item2 in item.Nav_DetailPosts)
foreach (var mm in item.Nav_DetailPosts)
{
T_SK_RISK_EVALUATION_DETAIL_POST item2 = new T_SK_RISK_EVALUATION_DETAIL_POST();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_EVALUATION_DETAIL_ID = item.ID;
item2.RISK_EVALUATION_DETAIL_ID = de.ID;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
postList.Add(item2);
if (item2.Nav_PostDetails != null && item2.Nav_PostDetails.Any())
{
foreach (var item3 in item2.Nav_PostDetails)
foreach (var nn in item2.Nav_PostDetails)
{
T_SK_RISK_EVALUATION_DETAIL_POST_DETAIL item3 = new T_SK_RISK_EVALUATION_DETAIL_POST_DETAIL();
item3.ORG_ID = entity.ORG_ID;
item3.RISK_EVALUATION_DETAIL_POST_ID = item2.ID;
item3.POST_ID = nn.POST_ID;
postDetList.Add(item3);
}
}
@ -232,8 +268,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_DETAIL>(deleteDetailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -263,8 +299,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_DETAIL>(deleteDetailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -299,7 +335,7 @@ namespace APT.SK.WebApi.Controllers.Api
"Nav_Files.Nav_ImgFile","Nav_Requires.Nav_Require"});
if (result != null)
{
var details = this.GetEntities<T_SK_RISK_EVALUATION_DETAIL>(t => t.RISK_EVALUATION_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_SCOREL", "Nav_SCOREE", "Nav_SCOREC", "Nav_ProductionUnit");
var details = this.GetEntities<T_SK_RISK_EVALUATION_DETAIL>(t => t.RISK_EVALUATION_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_SCOREL", "Nav_SCOREE", "Nav_SCOREC", "Nav_ProductionUnit", "Nav_DetailMeasures", "Nav_DetailPosts.Nav_PostDetails.Nav_Post", "Nav_DetailDeparts.Nav_Department", "Nav_DetailDeparts.Nav_User");
if (details.Any())
{
var detailIds = details.Select(t => t.ID).ToList();

View File

@ -52,50 +52,83 @@ namespace APT.SK.WebApi.Controllers.Api
var files = entity.Nav_Files;
entity.Nav_Files = null;
entity.ApplyDepartmentName = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == departId).NAME;
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
List<Guid> detailIds = new List<Guid>();
List<Guid> deleteMeasureIds = new List<Guid>();
List<Guid> deleteDepartIds = new List<Guid>();
List<Guid> deletePostIds = new List<Guid>();
List<Guid> deletePostDetailIds = new List<Guid>();
List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL> detailList = new List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL>();
List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_MEASURE> measureList = new List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_MEASURE>();
List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_DEPART> departList = new List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_DEPART>();
List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST> postList = new List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST>();
List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST_DETAIL> postDetList = new List<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST_DETAIL>();
if (details != null && details.Any())
{
{
detailIds = this.GetEntities<T_SK_RISK_EVALUATION_SUMMARY_DETAIL>(t => t.RISK_EVALUATION_SUMMARY_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deleteMeasureIds = this.GetEntities<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_MEASURE>(t => detailIds.Contains(t.RISK_EVALUATION_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deleteDepartIds = this.GetEntities<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_DEPART>(t => detailIds.Contains(t.RISK_EVALUATION_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostIds = this.GetEntities<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST>(t => detailIds.Contains(t.RISK_EVALUATION_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostDetailIds = this.GetEntities<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST_DETAIL>(t => deletePostIds.Contains(t.RISK_EVALUATION_SUMMARY_DETAIL_POST_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
foreach (var item in details)
{
item.ORG_ID = entity.ORG_ID;
item.RISK_EVALUATION_SUMMARY_ID = entity.ID;
T_SK_RISK_EVALUATION_SUMMARY_DETAIL de = new T_SK_RISK_EVALUATION_SUMMARY_DETAIL();
de.ORG_ID = entity.ORG_ID;
de.RISK_EVALUATION_SUMMARY_ID = entity.ID;
de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
de.AREA_ID = item.AREA_ID;
de.RISK_NAME = item.RISK_NAME;
de.RISK_DESCRIPTION = item.RISK_DESCRIPTION;
de.TYPE_ID = item.TYPE_ID;
de.ENABLE_STATUS = item.ENABLE_STATUS;
de.MARK = item.MARK;
de.EMERGENCY = item.EMERGENCY;
if (item.Nav_DetailMeasures != null && item.Nav_DetailMeasures.Any())
{
foreach (var item2 in item.Nav_DetailMeasures)
foreach (var mm in item.Nav_DetailMeasures)
{
T_SK_RISK_EVALUATION_SUMMARY_DETAIL_MEASURE item2 = new T_SK_RISK_EVALUATION_SUMMARY_DETAIL_MEASURE();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_EVALUATION_SUMMARY_DETAIL_ID = item.ID;
measureList.Add(item2);
item2.RISK_EVALUATION_SUMMARY_DETAIL_ID = de.ID;
item2.NUM = mm.NUM;
item2.MEASURES_NAME = mm.MEASURES_NAME;
measureList.Add(item2);
var temp = (item2.NUM == null || item2.NUM == 0) ? "1" : item2.NUM + "、" + item2.MEASURES_NAME + Environment.NewLine;
de.MEASURE = de.MEASURE + temp;
}
}
detailList.Add(de);
item.Nav_DetailMeasures = null;
if (item.Nav_DetailDeparts != null && item.Nav_DetailDeparts.Any())
{
foreach (var item2 in item.Nav_DetailDeparts)
foreach (var mm in item.Nav_DetailDeparts)
{
T_SK_RISK_EVALUATION_SUMMARY_DETAIL_DEPART item2 = new T_SK_RISK_EVALUATION_SUMMARY_DETAIL_DEPART();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_EVALUATION_SUMMARY_DETAIL_ID = item.ID;
item2.RISK_EVALUATION_SUMMARY_DETAIL_ID = de.ID;
item2.DEPARTMENT_TYPE = mm.DEPARTMENT_TYPE;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
departList.Add(item2);
}
}
item.Nav_DetailDeparts = null;
if (item.Nav_DetailPosts != null && item.Nav_DetailPosts.Any())
{
foreach (var item2 in item.Nav_DetailPosts)
foreach (var mm in item.Nav_DetailPosts)
{
T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST item2 = new T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_EVALUATION_SUMMARY_DETAIL_ID = item.ID;
item2.RISK_EVALUATION_SUMMARY_DETAIL_ID = de.ID;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
postList.Add(item2);
if (item2.Nav_PostDetails != null && item2.Nav_PostDetails.Any())
{
foreach (var item3 in item2.Nav_PostDetails)
foreach (var nn in item2.Nav_PostDetails)
{
T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST_DETAIL item3 = new T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST_DETAIL();
item3.ORG_ID = entity.ORG_ID;
item3.RISK_EVALUATION_SUMMARY_DETAIL_POST_ID = item2.ID;
item3.POST_ID = nn.POST_ID;
postDetList.Add(item3);
}
}
@ -134,11 +167,21 @@ namespace APT.SK.WebApi.Controllers.Api
var codes = CodeRuleService.NewGenSerial(sysFilter);
var serialCode = codes.Split(new char[] { ',' });
MFlowPermitService.InsertApprove(serialCode[0], "SK041", "", entity.ID, "SK041_SHOWPRINT", entity.TaskID, true, () =>
{
{
if (deleteMeasureIds != null && deleteMeasureIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE>(deleteMeasureIds);
if (deleteDepartIds != null && deleteDepartIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_DEPART>(deleteDepartIds);
if (deletePostDetailIds != null && deletePostDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST_DETAIL>(deletePostDetailIds);
if (deletePostIds != null && deletePostIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST>(deletePostIds);
if (detailIds != null && detailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL>(detailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -155,11 +198,21 @@ namespace APT.SK.WebApi.Controllers.Api
return true;
}
this.UnifiedCommit(() =>
{
{
if (deleteMeasureIds != null && deleteMeasureIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE>(deleteMeasureIds);
if (deleteDepartIds != null && deleteDepartIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_DEPART>(deleteDepartIds);
if (deletePostDetailIds != null && deletePostDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST_DETAIL>(deletePostDetailIds);
if (deletePostIds != null && deletePostIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL_POST>(deletePostIds);
if (detailIds != null && detailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_EVALUATION_SUMMARY_DETAIL>(detailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -209,11 +262,11 @@ namespace APT.SK.WebApi.Controllers.Api
var measureTemps = measures.Where(t => t.RISK_EVALUATION_SUMMARY_DETAIL_ID == detail.ID).ToList();
detail.Nav_DetailMeasures = measureTemps.OrderBy(t => t.NUM).ToList();
var departTemps = departs.Where(t => t.RISK_EVALUATION_SUMMARY_DETAIL_ID == detail.ID).ToList();
var tempx = departTemps.Where(t => t.DEPARTMENT_TYPE == MS.Domain.Enums.SK.SKDepartmentTypeEnum.).OrderBy(m => m.Nav_Department.NUM);
temps.AddRange(tempx);
var tempy = departTemps.Where(t => t.DEPARTMENT_TYPE != MS.Domain.Enums.SK.SKDepartmentTypeEnum.).OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.Nav_Department.NUM);
temps.AddRange(tempy);
detail.Nav_DetailDeparts = temps.ToList();
//var tempx = departTemps.Where(t => t.DEPARTMENT_TYPE == MS.Domain.Enums.SK.SKDepartmentTypeEnum.公司级).OrderBy(m => m.Nav_Department.NUM);
//temps.AddRange(tempx);
//var tempy = departTemps.Where(t => t.DEPARTMENT_TYPE != MS.Domain.Enums.SK.SKDepartmentTypeEnum.公司级).OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.Nav_Department.NUM);
//temps.AddRange(tempy);
detail.Nav_DetailDeparts = departTemps.OrderBy(t => t.DEPARTMENT_TYPE).ThenBy(m => m.Nav_Department.NUM).ToList();
var postTemps = posts.Where(t => t.RISK_EVALUATION_SUMMARY_DETAIL_ID == detail.ID).ToList();
detail.Nav_DetailPosts = postTemps.OrderBy(t => t.DEPARTMENT_ID).ToList();
}

View File

@ -57,7 +57,8 @@ namespace APT.SK.WebApi.Controllers.Api
entity.ApplyDepartmentName = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == departId).NAME;
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
List<Guid> deleteMeasureIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>();
List<T_SK_RISK_IDENTIFY_DETAIL> detailList = new List<T_SK_RISK_IDENTIFY_DETAIL>();
List<T_SK_RISK_IDENTIFY_DETAIL_MEASURE> measureList = new List<T_SK_RISK_IDENTIFY_DETAIL_MEASURE>();
//更新标识字段
var record = this.GetEntity<T_SK_RISK_IDENTIFY>(t => t.ID == entity.ID, "Nav_Details");
@ -68,7 +69,7 @@ namespace APT.SK.WebApi.Controllers.Api
deleteMeasureIds = detailMes.Select(t => t.ID).ToList();
foreach (var item in details)
{
var temp = record.Nav_Details.FirstOrDefault(t => t.PRODUCTION_UNIT_ID == item.PRODUCTION_UNIT_ID && t.AREA_ID == item.AREA_ID && t.TYPE_ID == item.TYPE_ID && t.RISK_NAME == item.RISK_NAME && t.RISK_DESCRIPTION == item.RISK_DESCRIPTION && t.MEASURE == item.MEASURE
var temp = record.Nav_Details.FirstOrDefault(t => t.PRODUCTION_UNIT_ID == item.PRODUCTION_UNIT_ID && t.AREA_ID == item.AREA_ID && t.TYPE_ID == item.TYPE_ID && t.RISK_NAME == item.RISK_NAME && t.RISK_DESCRIPTION == item.RISK_DESCRIPTION
&& t.EMERGENCY == item.EMERGENCY && t.ENABLE_STATUS == item.ENABLE_STATUS);
if (temp == null && item.MARK != SKMarkEnum.Add)
{
@ -78,7 +79,7 @@ namespace APT.SK.WebApi.Controllers.Api
{
foreach (var mes in item.Nav_DetailMeasures)
{
var newMes = detailMes.FirstOrDefault(t => t.MEASURE == mes.MEASURE);
var newMes = detailMes.FirstOrDefault(t => t.MEASURE == mes.MEASURE && t.RISK_IDENTIFY_DETAIL_ID == item.ID);
if (newMes == null && item.MARK != SKMarkEnum.Add)
{
item.MARK = SKMarkEnum.Update;
@ -90,24 +91,35 @@ namespace APT.SK.WebApi.Controllers.Api
if (details != null && details.Any())
{
foreach (var item in details)
{
item.ORG_ID = entity.ORG_ID;
item.RISK_IDENTIFY_ID = entity.ID;
{
T_SK_RISK_IDENTIFY_DETAIL de = new T_SK_RISK_IDENTIFY_DETAIL();
de.ORG_ID = entity.ORG_ID;
de.RISK_IDENTIFY_ID = entity.ID;
de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
de.AREA_ID = item.AREA_ID;
de.RISK_NAME = item.RISK_NAME;
de.RISK_DESCRIPTION = item.RISK_DESCRIPTION;
de.TYPE_ID = item.TYPE_ID;
de.ENABLE_STATUS = item.ENABLE_STATUS;
de.MARK = item.MARK;
de.EMERGENCY = item.EMERGENCY;
de.ENTERPRISE_LIBRARY_ID = item.ENTERPRISE_LIBRARY_ID;
if (item.Nav_DetailMeasures != null && item.Nav_DetailMeasures.Any())
{
foreach (var mm in item.Nav_DetailMeasures)
{
T_SK_RISK_IDENTIFY_DETAIL_MEASURE item2 = new T_SK_RISK_IDENTIFY_DETAIL_MEASURE();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_IDENTIFY_DETAIL_ID = item.ID;
item2.RISK_IDENTIFY_DETAIL_ID = de.ID;
item2.MEASURE = mm.MEASURE;
item2.NUM = mm.NUM;
measureList.Add(item2);
var temp = (item2.NUM == null || item2.NUM == 0) ? "1" : item2.NUM + "、" + item2.MEASURE + Environment.NewLine;
item.MEASURE = item.MEASURE + temp;
de.MEASURE = de.MEASURE + temp;
}
}
item.Nav_DetailMeasures = null;
item.Nav_DetailMeasures = null;
detailList.Add(de);
}
}
if (files != null && files.Any())
@ -153,8 +165,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL>(deleteDetailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -172,8 +184,8 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL>(deleteDetailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -233,7 +245,16 @@ namespace APT.SK.WebApi.Controllers.Api
if (result != null)
{
var details = this.GetEntities<T_SK_RISK_IDENTIFY_DETAIL>(t => t.RISK_IDENTIFY_ID == result.ID, filter, "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_ProductionUnit", "Nav_DetailMeasures");
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(t => t.AREA_ID).ThenBy(x => x.TYPE_ID).ToList();
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(t => t.AREA_ID).ThenBy(x => x.TYPE_ID).ToList();
foreach (var d in result.Nav_Details)
{
d.Nav_DetailMeasures = d.Nav_DetailMeasures.OrderBy(m => m.NUM).ToList();
//foreach (var m in d.Nav_DetailMeasures)
//{
// var temp = (m.NUM == null || m.NUM == 0) ? "1" : m.NUM + "、" + m.MEASURE + "";
// d.MEASURE = d.MEASURE + temp;
//}
}
if (result.STATUS == PFStandardStatus.Rejected)
{
result.CONTEXT = ApproveCallBackService.RejectContent(result.ID);

View File

@ -59,19 +59,24 @@ namespace APT.SK.WebApi.Controllers.Api
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
List<Guid> deleteMeasureIds = new List<Guid>();
List<Guid> deleteDepartIds = new List<Guid>();
List<Guid> deletePostIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>();
List<Guid> deletePostIds = new List<Guid>();
List<Guid> deletePostDetailIds = new List<Guid>();
List<Guid> deleteDetailIds = new List<Guid>();
List<T_SK_RISK_IDENTIFY_RESULT_DETAIL> detailList = new List<T_SK_RISK_IDENTIFY_RESULT_DETAIL>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE> measureList = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART> departList = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST> postList = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST> postList = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST>();
List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL> postDetailList = new List<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL>();
//更新标识字段
var record = this.GetEntity<T_SK_RISK_IDENTIFY_RESULT>(t => t.ID == entity.ID, "Nav_Details");
if (record != null && record.Nav_Details != null && record.Nav_Details.Any() && details != null && details.Any())
{
deleteDetailIds = record.Nav_Details.Select(t => t.ID).ToList();
deleteMeasureIds = this.GetEntities<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE>(t => deleteDetailIds.Contains(t.RISK_IDENTIFY_RESULT_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deleteDetailIds = record.Nav_Details.Select(t => t.ID).ToList();
var detailMes = this.GetEntities<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE>(t => deleteDetailIds.Contains(t.RISK_IDENTIFY_RESULT_DETAIL_ID), new BaseFilter(entity.ORG_ID)).ToList();
deleteMeasureIds = detailMes.Select(t => t.ID).ToList();
deleteDepartIds = this.GetEntities<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(t => deleteDetailIds.Contains(t.RISK_IDENTIFY_RESULT_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostIds = this.GetEntities<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST>(t => deleteDetailIds.Contains(t.RISK_IDENTIFY_RESULT_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostIds = this.GetEntities<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST>(t => deleteDetailIds.Contains(t.RISK_IDENTIFY_RESULT_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostDetailIds = this.GetEntities<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL>(t => deletePostIds.Contains(t.RISK_IDENTIFY_DETAIL_RESULT_POST_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
//record.Nav_Details.ForEach(t =>
//{
// if (t.Nav_DetailMeasures != null && t.Nav_DetailMeasures.Any())
@ -93,50 +98,95 @@ namespace APT.SK.WebApi.Controllers.Api
//});
foreach (var item in details)
{
var temp = record.Nav_Details.FirstOrDefault(t => t.PRODUCTION_UNIT_ID == item.PRODUCTION_UNIT_ID && t.AREA_ID == item.AREA_ID && t.TYPE_ID == item.TYPE_ID && t.RISK_NAME == item.RISK_NAME && t.RISK_DESCRIPTION == item.RISK_DESCRIPTION && t.MEASURE == item.MEASURE
&& t.EMERGENCY == item.EMERGENCY && t.DEPARTMENT_TYPE == item.DEPARTMENT_TYPE && t.IDENTIFY_DEPARTMENT == item.IDENTIFY_DEPARTMENT && t.IDENTIFY_POST == item.IDENTIFY_POST && t.ENABLE_STATUS == item.ENABLE_STATUS);
var temp = record.Nav_Details.FirstOrDefault(t => t.PRODUCTION_UNIT_ID == item.PRODUCTION_UNIT_ID && t.AREA_ID == item.AREA_ID && t.TYPE_ID == item.TYPE_ID && t.RISK_NAME == item.RISK_NAME && t.RISK_DESCRIPTION == item.RISK_DESCRIPTION
&& t.EMERGENCY == item.EMERGENCY && t.ENABLE_STATUS == item.ENABLE_STATUS);
if (temp == null && item.MARK != SKMarkEnum.Add)
{
item.MARK = SKMarkEnum.Update;
}
if (item.Nav_DetailMeasures != null && item.Nav_DetailMeasures.Any())
{
foreach (var mes in item.Nav_DetailMeasures)
{
var newMes = detailMes.FirstOrDefault(t => t.MEASURE == mes.MEASURE && t.RISK_IDENTIFY_RESULT_DETAIL_ID == item.ID);
if (newMes == null && item.MARK != SKMarkEnum.Add)
{
item.MARK = SKMarkEnum.Update;
}
}
}
}
}
if (details != null && details.Any())
{
foreach (var item in details)
{
item.ORG_ID = entity.ORG_ID;
item.RISK_IDENTIFY_RESULT_ID = entity.ID;
{
T_SK_RISK_IDENTIFY_RESULT_DETAIL de = new T_SK_RISK_IDENTIFY_RESULT_DETAIL();
de.ORG_ID = entity.ORG_ID;
de.RISK_IDENTIFY_RESULT_ID = entity.ID;
de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
de.AREA_ID = item.AREA_ID;
de.RISK_NAME = item.RISK_NAME;
de.RISK_DESCRIPTION = item.RISK_DESCRIPTION;
de.TYPE_ID = item.TYPE_ID;
de.ENABLE_STATUS = item.ENABLE_STATUS;
de.MARK = item.MARK;
de.EMERGENCY = item.EMERGENCY;
de.ENTERPRISE_LIBRARY_ID = item.ENTERPRISE_LIBRARY_ID;
if (item.Nav_DetailMeasures != null && item.Nav_DetailMeasures.Any())
{
foreach (var item2 in item.Nav_DetailMeasures)
foreach (var mm in item.Nav_DetailMeasures)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE item2 = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_IDENTIFY_RESULT_DETAIL_ID = item.ID;
measureList.Add(item2);
item2.RISK_IDENTIFY_RESULT_DETAIL_ID = de.ID;
item2.NUM = mm.NUM;
item2.MEASURE = mm.MEASURE;
measureList.Add(item2);
var temp = (item2.NUM == null || item2.NUM == 0) ? "1" : item2.NUM + "、" + item2.MEASURE + Environment.NewLine;
de.MEASURE = de.MEASURE + temp;
}
}
detailList.Add(de);
item.Nav_DetailMeasures = null;
if (item.Nav_DetailDeparts != null && item.Nav_DetailDeparts.Any())
{
foreach (var item2 in item.Nav_DetailDeparts)
foreach (var mm in item.Nav_DetailDeparts)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART item2 = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_IDENTIFY_RESULT_DETAIL_ID = item.ID;
item2.RISK_IDENTIFY_RESULT_DETAIL_ID = de.ID;
item2.DEPARTMENT_TYPE = mm.DEPARTMENT_TYPE;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
departList.Add(item2);
}
}
item.Nav_DetailDeparts = null;
if (item.Nav_DetailPosts != null && item.Nav_DetailPosts.Any())
{
foreach (var item2 in item.Nav_DetailPosts)
foreach (var mm in item.Nav_DetailPosts)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST item2 = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST();
item2.ORG_ID = entity.ORG_ID;
item2.RISK_IDENTIFY_RESULT_DETAIL_ID = item.ID;
item2.RISK_IDENTIFY_RESULT_DETAIL_ID = de.ID;
item2.DEPARTMENT_TYPE = mm.DEPARTMENT_TYPE;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
postList.Add(item2);
if (mm.Nav_ResultPostDets != null && mm.Nav_ResultPostDets.Any())
{
foreach (var nn in mm.Nav_ResultPostDets)
{
T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL item3 = new T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL();
item3.ORG_ID = entity.ORG_ID;
item3.RISK_IDENTIFY_DETAIL_RESULT_POST_ID = item2.ID;
item3.POST_ID = nn.POST_ID;
postDetailList.Add(item3);
}
}
}
}
item.Nav_DetailPosts = null;
detailList.Add(de);
}
}
if (files != null && files.Any())
@ -179,15 +229,17 @@ namespace APT.SK.WebApi.Controllers.Api
if (deleteMeasureIds != null && deleteMeasureIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE>(deleteMeasureIds);
if (deleteDepartIds != null && deleteDepartIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(deleteDepartIds);
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(deleteDepartIds);
if (deletePostDetailIds != null && deletePostDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL>(deletePostDetailIds);
if (deletePostIds != null && deletePostIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST>(deletePostIds);
if (deleteDetailIds != null && deleteDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_DETAIL>(deleteDetailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -198,6 +250,8 @@ namespace APT.SK.WebApi.Controllers.Api
BantchSaveEntityNoCommit(departList);
if (postList != null && postList.Any())
BantchSaveEntityNoCommit(postList);
if (postDetailList != null && postDetailList.Any())
BantchSaveEntityNoCommit(postDetailList);
}, null, null, null, null, null, "SK035_SHOWPRINT", null, "安全风险辨识结果表审批");
return true;
}
@ -206,15 +260,17 @@ namespace APT.SK.WebApi.Controllers.Api
if (deleteMeasureIds != null && deleteMeasureIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_MEASURE>(deleteMeasureIds);
if (deleteDepartIds != null && deleteDepartIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(deleteDepartIds);
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(deleteDepartIds);
if (deletePostDetailIds != null && deletePostDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST_DETAIL>(deletePostDetailIds);
if (deletePostIds != null && deletePostIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_POST>(deletePostIds);
if (deleteDetailIds != null && deleteDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_DETAIL>(deleteDetailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -224,7 +280,9 @@ namespace APT.SK.WebApi.Controllers.Api
if (departList != null && departList.Any())
BantchSaveEntityNoCommit(departList);
if (postList != null && postList.Any())
BantchSaveEntityNoCommit(postList);
BantchSaveEntityNoCommit(postList);
if (postDetailList != null && postDetailList.Any())
BantchSaveEntityNoCommit(postDetailList);
});
return true;
});
@ -247,8 +305,24 @@ namespace APT.SK.WebApi.Controllers.Api
"Nav_Files.Nav_ImgFile","Nav_Requires.Nav_Require"});
if (result != null)
{
var details = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_DETAIL>(t => t.RISK_IDENTIFY_RESULT_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_ProductionUnit");
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(t => t.AREA_ID).ThenBy(x => x.TYPE_ID).ToList();
var details = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_DETAIL>(t => t.RISK_IDENTIFY_RESULT_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_ProductionUnit", "Nav_DetailMeasures", "Nav_DetailPosts.Nav_ResultPostDets.Nav_Post", "Nav_DetailPosts.Nav_Department");
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(t => t.AREA_ID).ThenBy(x => x.TYPE_ID).ToList();
foreach (var d in result.Nav_Details)
{
d.Nav_DetailMeasures = d.Nav_DetailMeasures.OrderBy(t => t.NUM).ToList();
//foreach (var m in d.Nav_DetailMeasures)
//{
// var temp = (m.NUM == null || m.NUM == 0) ? "1" : m.NUM + "、" + m.MEASURE + "";
// d.MEASURE = d.MEASURE + temp;
//}
d.Nav_DetailPosts = d.Nav_DetailPosts.OrderBy(t => t.DEPARTMENT_TYPE).ToList();
var departTypes = d.Nav_DetailPosts.Select(t => t.DEPARTMENT_TYPE.GetDescription()).Distinct().ToList();
d.DEPARTMENT_TYPE = string.Join(",", departTypes);
var departs = d.Nav_DetailPosts.Select(t => t.Nav_Department?.NAME).Distinct().ToList();
d.IDENTIFY_DEPARTMENT = string.Join(",", departs);
var posts = d.Nav_DetailPosts.SelectMany(x=>x.Nav_ResultPostDets).Select(t => t.Nav_Post?.NAME).Distinct().ToList();
d.IDENTIFY_POST = string.Join(",", posts);
}
if (result.STATUS == PFStandardStatus.Rejected)
{
result.CONTEXT = ApproveCallBackService.RejectContent(result.ID);

View File

@ -52,50 +52,88 @@ namespace APT.SK.WebApi.Controllers.Api
var files = entity.Nav_Files;
entity.Nav_Files = null;
entity.ApplyDepartmentName = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == departId).NAME;
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
List<Guid> detailIds = new List<Guid>();
List<Guid> deleteMeasureIds = new List<Guid>();
List<Guid> deleteDepartIds = new List<Guid>();
List<Guid> deletePostIds = new List<Guid>();
List<Guid> deletePostIds = new List<Guid>();
List<Guid> deletePostDetailIds = new List<Guid>();
List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL> detailList = new List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL>();
List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE> measureList = new List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE>();
List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DEPART> departList = new List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DEPART>();
List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST> postList = new List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST>();
List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST> postList = new List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST>();
List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL> postDetailList = new List<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL>();
if (details != null && details.Any())
{
var detailIds = details.Select(t => t.ID).ToList();
detailIds = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL>(t => t.IDENTIFY_RESULT_SUMMARY_ID == entity.ID, new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deleteMeasureIds = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE>(t => detailIds.Contains(t.IDENTIFY_RESULT_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deleteDepartIds = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DEPART>(t => detailIds.Contains(t.IDENTIFY_RESULT_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostIds = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST>(t => detailIds.Contains(t.IDENTIFY_RESULT_SUMMARY_DETAIL_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
deletePostDetailIds = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL>(t => deletePostIds.Contains(t.IDENTIFY_RESULT_SUMMARY_POST_ID), new BaseFilter(entity.ORG_ID)).Select(t => t.ID).ToList();
foreach (var item in details)
{
item.ORG_ID = entity.ORG_ID;
item.IDENTIFY_RESULT_SUMMARY_ID = entity.ID;
{
T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL de = new T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL();
de.ORG_ID = entity.ORG_ID;
de.IDENTIFY_RESULT_SUMMARY_ID = entity.ID;
de.PRODUCTION_UNIT_ID = item.PRODUCTION_UNIT_ID;
de.AREA_ID = item.AREA_ID;
de.RISK_NAME = item.RISK_NAME;
de.RISK_DESCRIPTION = item.RISK_DESCRIPTION;
de.TYPE_ID = item.TYPE_ID;
de.ENABLE_STATUS = item.ENABLE_STATUS;
de.MARK = item.MARK;
de.EMERGENCY = item.EMERGENCY;
de.ENTERPRISE_LIBRARY_ID = item.ENTERPRISE_LIBRARY_ID;
if (item.Nav_DetailMeasures != null && item.Nav_DetailMeasures.Any())
{
foreach (var item2 in item.Nav_DetailMeasures)
foreach (var mm in item.Nav_DetailMeasures)
{
T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE item2 = new T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE();
item2.ORG_ID = entity.ORG_ID;
item2.IDENTIFY_RESULT_SUMMARY_DETAIL_ID = item.ID;
measureList.Add(item2);
item2.IDENTIFY_RESULT_SUMMARY_DETAIL_ID = de.ID;
item2.NUM = mm.NUM;
item2.MEASURE = mm.MEASURE;
measureList.Add(item2);
var temp = (item2.NUM == null || item2.NUM == 0) ? "1" : item2.NUM + "、" + item2.MEASURE + Environment.NewLine;
de.MEASURE = de.MEASURE + temp;
}
}
detailList.Add(de);
item.Nav_DetailMeasures = null;
if (item.Nav_DetailDeparts != null && item.Nav_DetailDeparts.Any())
{
foreach (var item2 in item.Nav_DetailDeparts)
foreach (var mm in item.Nav_DetailDeparts)
{
T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DEPART item2 = new T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DEPART();
item2.ORG_ID = entity.ORG_ID;
item2.IDENTIFY_RESULT_SUMMARY_DETAIL_ID = item.ID;
item2.IDENTIFY_RESULT_SUMMARY_DETAIL_ID = de.ID;
item2.DEPARTMENT_TYPE = mm.DEPARTMENT_TYPE;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
departList.Add(item2);
}
}
item.Nav_DetailDeparts = null;
if (item.Nav_DetailPosts != null && item.Nav_DetailPosts.Any())
{
foreach (var item2 in item.Nav_DetailPosts)
foreach (var mm in item.Nav_DetailPosts)
{
T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST item2 = new T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST();
item2.ORG_ID = entity.ORG_ID;
item2.IDENTIFY_RESULT_SUMMARY_DETAIL_ID = item.ID;
postList.Add(item2);
item2.IDENTIFY_RESULT_SUMMARY_DETAIL_ID = de.ID;
item2.DEPARTMENT_TYPE = mm.DEPARTMENT_TYPE;
item2.DEPARTMENT_ID = mm.DEPARTMENT_ID;
postList.Add(item2);
if (mm.Nav_SumPostDets != null && mm.Nav_SumPostDets.Any())
{
foreach (var nn in mm.Nav_SumPostDets)
{
T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL item3 = new T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL();
item3.ORG_ID = entity.ORG_ID;
item3.IDENTIFY_RESULT_SUMMARY_POST_ID = item2.ID;
item3.POST_ID = nn.POST_ID;
postDetailList.Add(item3);
}
}
}
}
item.Nav_DetailPosts = null;
@ -136,12 +174,16 @@ namespace APT.SK.WebApi.Controllers.Api
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE>(deleteMeasureIds);
if (deleteDepartIds != null && deleteDepartIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(deleteDepartIds);
if (deletePostDetailIds != null && deletePostDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL>(deletePostDetailIds);
if (deletePostIds != null && deletePostIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST>(deletePostIds);
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST>(deletePostIds);
if (detailIds != null && detailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL>(detailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -151,7 +193,9 @@ namespace APT.SK.WebApi.Controllers.Api
if (departList != null && departList.Any())
BantchSaveEntityNoCommit(departList);
if (postList != null && postList.Any())
BantchSaveEntityNoCommit(postList);
BantchSaveEntityNoCommit(postList);
if (postDetailList != null && postDetailList.Any())
BantchSaveEntityNoCommit(postDetailList);
}, null, null, null, null, null, "SK037_SHOWPRINT", null, "安全风险辨识结果汇总表审批");
return true;
}
@ -160,13 +204,17 @@ namespace APT.SK.WebApi.Controllers.Api
if (deleteMeasureIds != null && deleteMeasureIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_MEASURE>(deleteMeasureIds);
if (deleteDepartIds != null && deleteDepartIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(deleteDepartIds);
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_DETAIL_RESULT_DEPART>(deleteDepartIds);
if (deletePostDetailIds != null && deletePostDetailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST_DETAIL>(deletePostDetailIds);
if (deletePostIds != null && deletePostIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST>(deletePostIds);
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_POST>(deletePostIds);
if (detailIds != null && detailIds.Any())
this.BantchDeleteEntityNoCommit<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL>(detailIds);
if (entity != null)
UpdateEntityNoCommit(entity);
if (details != null && details.Any())
BantchSaveEntityNoCommit(details);
UpdateEntityNoCommit(entity);
if (detailList != null && detailList.Any())
BantchSaveEntityNoCommit(detailList);
if (files != null && files.Any())
BantchSaveEntityNoCommit(files);
if (requires != null && requires.Any())
@ -176,7 +224,9 @@ namespace APT.SK.WebApi.Controllers.Api
if (departList != null && departList.Any())
BantchSaveEntityNoCommit(departList);
if (postList != null && postList.Any())
BantchSaveEntityNoCommit(postList);
BantchSaveEntityNoCommit(postList);
if (postDetailList != null && postDetailList.Any())
BantchSaveEntityNoCommit(postDetailList);
});
return true;
});
@ -200,8 +250,24 @@ namespace APT.SK.WebApi.Controllers.Api
"Nav_Files.Nav_ImgFile","Nav_Requires.Nav_Require"});
if (result != null)
{
var details = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL>(t => t.IDENTIFY_RESULT_SUMMARY_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_ProductionUnit");
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(t => t.AREA_ID).ThenBy(x => x.TYPE_ID).ToList();
var details = this.GetEntities<T_SK_RISK_IDENTIFY_RESULT_SUMMARY_DETAIL>(t => t.IDENTIFY_RESULT_SUMMARY_ID == result.ID, new BaseFilter(filter.OrgId), "Nav_Area", "Nav_Type", "Nav_RiskName", "Nav_ProductionUnit","Nav_DetailMeasures", "Nav_DetailPosts.Nav_SumPostDets.Nav_Post", "Nav_DetailPosts.Nav_Department");
result.Nav_Details = details.OrderBy(m => m.MineType).ThenBy(t => t.AREA_ID).ThenBy(x => x.TYPE_ID).ToList();
foreach (var d in result.Nav_Details)
{
d.Nav_DetailMeasures = d.Nav_DetailMeasures.OrderBy(t => t.NUM).ToList();
//foreach (var m in d.Nav_DetailMeasures)
//{
// var temp = (m.NUM == null || m.NUM == 0) ? "1" : m.NUM + "、" + m.MEASURE + "";
// d.MEASURE = d.MEASURE + temp;
//}
d.Nav_DetailPosts = d.Nav_DetailPosts.OrderBy(t => t.DEPARTMENT_TYPE).ToList();
var departTypes = d.Nav_DetailPosts.Select(t => t.DEPARTMENT_TYPE.GetDescription()).Distinct().ToList();
d.DEPARTMENT_TYPE = string.Join(",", departTypes);
var departs = d.Nav_DetailPosts.Select(t => t.Nav_Department?.NAME).Distinct().ToList();
d.IDENTIFY_DEPARTMENT = string.Join(",", departs);
var posts = d.Nav_DetailPosts.SelectMany(x => x.Nav_SumPostDets).Select(t => t.Nav_Post?.NAME).Distinct().ToList();
d.IDENTIFY_POST = string.Join(",", posts);
}
if (result.STATUS == PFStandardStatus.Rejected)
{
result.CONTEXT = ApproveCallBackService.RejectContent(result.ID);

View File

@ -161,7 +161,11 @@ namespace APT.SK.WebApi.Controllers.Api
if (entity.CHECK_TYPE_ID == null)
throw new Exception("检查类型不能为空");
if (entity.CHECK_TIME == null || entity.CHECK_TIME == DateTime.MinValue)
throw new Exception("检查时间必须填写");
throw new Exception("检查时间必须填写");
if (string.IsNullOrEmpty(entity.NOTICE_CODE))
{
entity.NOTICE_CODE = "JCSD" + DateTime.Now.ToString("yyyyMMddHH") + new Random().Next(1, 9999);
}
entity.ApplyDepartmentName = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == departId).NAME;
entity.ApplyPostName = this.GetEntity<T_FM_USER>(t => t.ID == userId, "Nav_Person.Nav_Post")?.Nav_Person?.Nav_Post?.NAME;
var details = entity.Nav_CheckNoticeDetails;

View File

@ -229,6 +229,7 @@ namespace APT.SK.WebApi.Controllers.Api
report.DEPARTMENT_TYPE = entity.DEPARTMENT_TYPE;
report.CHECK_TIME = entity.CHECK_TIME;
report.STATUS = PFStandardStatus.Draft;
report.NOTICE_CODE = entity.NOTICE_CODE;
//if (record.Nav_CheckRecordFiles != null && record.Nav_CheckRecordFiles.Any())
//{
// foreach (var item in record.Nav_CheckRecordFiles)
@ -420,7 +421,8 @@ namespace APT.SK.WebApi.Controllers.Api
report.PLANCHECKFREQUENCY = record.PLANCHECKFREQUENCY;
report.DEPARTMENT_TYPE = record.DEPARTMENT_TYPE;
report.CHECK_TIME = record.CHECK_TIME;
report.STATUS = PFStandardStatus.Draft;
report.STATUS = PFStandardStatus.Draft;
report.NOTICE_CODE = record.NOTICE_CODE;
//if (record.Nav_CheckRecordFiles != null && record.Nav_CheckRecordFiles.Any())
//{
// foreach (var item in record.Nav_CheckRecordFiles)
@ -584,6 +586,7 @@ namespace APT.SK.WebApi.Controllers.Api
report.DEPARTMENT_TYPE = record.DEPARTMENT_TYPE;
report.CHECK_TIME = record.CHECK_TIME;
report.STATUS = PFStandardStatus.Draft;
report.NOTICE_CODE = record.NOTICE_CODE;
T_SK_HIDDEN_DANGER_REPORT_DETAIL detail = new T_SK_HIDDEN_DANGER_REPORT_DETAIL();
detail.ORG_ID = item.ORG_ID;
detail.HIDDEN_DANGER_REPORT_ID = report.ID;

File diff suppressed because it is too large Load Diff