Prechádzať zdrojové kódy

feat: 物料维护新增 MRPRequired(参与资源检查) 字段; 修复 1.0.338.sql CRLF→LF 行尾

Pengxy 3 dní pred
rodič
commit
e79f94e6b2

+ 1 - 1
Web/package.json

@@ -1,7 +1,7 @@
 {
 	"name": "admin.net",
 	"type": "module",
-	"version": "2.4.300",
+	"version": "2.4.301",
 	"packageManager": "pnpm@10.32.1",
 	"lastBuildTime": "2026.03.15",
 	"description": "Admin.NET 站在巨人肩膀上的 .NET 通用权限开发框架",

+ 2 - 0
Web/src/views/aidop/s0/api/s0SalesApi.ts

@@ -146,6 +146,7 @@ export interface S0ItemMasterRow {
 	designOwner?: string | null;
 	isActive: boolean;
 	isConfirm: boolean;
+	mrpRequired: boolean;
 	createUser?: string | null;
 	createTime?: string;
 	updateUser?: string | null;
@@ -209,6 +210,7 @@ export interface S0ItemMasterUpsert {
 	designOwner?: string;
 	isActive: boolean;
 	isConfirm: boolean;
+	mrpRequired: boolean;
 	createUser?: string;
 	updateUser?: string;
 }

+ 3 - 0
Web/src/views/aidop/s0/sales/MaterialList.vue

@@ -215,6 +215,7 @@
 							<el-col :span="8"><el-form-item label="是否主材"><el-switch v-model="form.isMainMas" /></el-form-item></el-col>
 							<el-col :span="8"><el-form-item label="生效 IsActive"><el-switch v-model="form.isActive" /></el-form-item></el-col>
 							<el-col :span="8"><el-form-item label="已确认"><el-switch v-model="form.isConfirm" /></el-form-item></el-col>
+							<el-col :span="8"><el-form-item label="参与资源检查"><el-switch v-model="form.mrpRequired" /></el-form-item></el-col>
 							<el-col :span="12"><el-form-item label="状态 Status"><el-input v-model="form.status" placeholder="空则随生效自动" /></el-form-item></el-col>
 						</el-row>
 					</el-tab-pane>
@@ -344,6 +345,7 @@ function emptyForm(): S0ItemMasterUpsert {
 		designOwner: '',
 		isActive: true,
 		isConfirm: false,
+		mrpRequired: false,
 		createUser: '',
 		updateUser: '',
 	};
@@ -526,6 +528,7 @@ function rowToForm(row: S0ItemMasterRow): void {
 		designOwner: row.designOwner ?? '',
 		isActive: row.isActive,
 		isConfirm: row.isConfirm,
+		mrpRequired: row.mrpRequired ?? false,
 		createUser: row.createUser ?? '',
 		updateUser: row.updateUser ?? '',
 	});

+ 6 - 3
server/Admin.NET.Web.Entry/Admin.NET.Web.Entry.csproj

@@ -11,9 +11,9 @@
     <GenerateSatelliteAssembliesForCore>true</GenerateSatelliteAssembliesForCore>
     <Copyright>Admin.NET</Copyright>
     <Description>Admin.NET 通用权限开发平台</Description>
-    <AssemblyVersion>1.0.361</AssemblyVersion>
-    <FileVersion>1.0.361</FileVersion>
-    <Version>1.0.361</Version>
+    <AssemblyVersion>1.0.362</AssemblyVersion>
+    <FileVersion>1.0.362</FileVersion>
+    <Version>1.0.362</Version>
   </PropertyGroup>
 
   <ItemGroup>
@@ -451,6 +451,9 @@
     <None Update="UpdateScripts\1.0.361.sql">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </None>
+    <None Update="UpdateScripts\1.0.362.sql">
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </None>
   </ItemGroup>
 
   <ItemGroup>

+ 11 - 0
server/Admin.NET.Web.Entry/UpdateScripts/1.0.341.sql

@@ -1,3 +1,4 @@
+<<<<<<< HEAD
 -- 1.0.341 P-022 WP-2:去掉 IPQC 归口源表 tenant_id 的 DEFAULT 1300000000001(幂等)。
 SET NAMES utf8mb4;
 
@@ -17,4 +18,14 @@ SET @has_def := (
 SET @sql := IF(@has_def > 0,
   'ALTER TABLE `qms_gcjydzb` ALTER COLUMN `tenant_id` DROP DEFAULT',
   'SELECT 1');
+=======
+-- 1.0.341 ItemMaster 新增 MRPRequired(是否参与资源检查)
+-- 行尾必须 LF(CRLF 会导致 SHA256 与 sys_db_migration_log 不一致并阻止启动)。
+
+SET @col_exists := (SELECT COUNT(*) FROM information_schema.COLUMNS
+  WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='ItemMaster' AND COLUMN_NAME='MRPRequired');
+SET @sql := IF(@col_exists = 0,
+  'ALTER TABLE `ItemMaster` ADD COLUMN `MRPRequired` tinyint(1) NOT NULL DEFAULT 0 COMMENT ''是否参与资源检查''',
+  'DO 0');
+>>>>>>> 6776bdd99 (feat: 物料维护新增 MRPRequired(参与资源检查) 字段; 修复 1.0.338.sql CRLF→LF 行尾)
 PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;

+ 9 - 0
server/Admin.NET.Web.Entry/UpdateScripts/1.0.362.sql

@@ -0,0 +1,9 @@
+-- 1.0.362 ItemMaster 新增 MRPRequired(是否参与资源检查)
+-- 行尾必须 LF(CRLF 会导致 SHA256 与 sys_db_migration_log 不一致并阻止启动)。
+
+SET @col_exists := (SELECT COUNT(*) FROM information_schema.COLUMNS
+  WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME='ItemMaster' AND COLUMN_NAME='MRPRequired');
+SET @sql := IF(@col_exists = 0,
+  'ALTER TABLE `ItemMaster` ADD COLUMN `MRPRequired` tinyint(1) NOT NULL DEFAULT 0 COMMENT ''是否参与资源检查''',
+  'DO 0');
+PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;

+ 2 - 0
server/Plugins/Admin.NET.Plugin.AiDOP/Controllers/S0/Sales/AdoS0MaterialsController.cs

@@ -208,6 +208,7 @@ public class AdoS0MaterialsController : ControllerBase
         DesignOwner = dto.DesignOwner,
         IsActive = dto.IsActive,
         IsConfirm = dto.IsConfirm,
+        MRPRequired = dto.MRPRequired,
         CreateUser = dto.CreateUser,
         CreateTime = now,
         UpdateUser = dto.UpdateUser,
@@ -271,6 +272,7 @@ public class AdoS0MaterialsController : ControllerBase
         entity.DesignOwner = dto.DesignOwner;
         entity.IsActive = dto.IsActive;
         entity.IsConfirm = dto.IsConfirm;
+        entity.MRPRequired = dto.MRPRequired;
         entity.UpdateUser = dto.UpdateUser;
     }
 }

+ 2 - 0
server/Plugins/Admin.NET.Plugin.AiDOP/Dto/S0/Sales/AdoS0SalesDtos.cs

@@ -241,6 +241,8 @@ public class AdoS0ItemMasterUpsertDto
     public string? DesignOwner { get; set; }
     public bool IsActive { get; set; } = true;
     public bool IsConfirm { get; set; }
+    /// <summary>是否参与资源检查</summary>
+    public bool MRPRequired { get; set; }
     [MaxLength(100)]
     public string? CreateUser { get; set; }
     [MaxLength(100)]

+ 3 - 0
server/Plugins/Admin.NET.Plugin.AiDOP/Entity/S0/Sales/AdoS0ItemMaster.cs

@@ -178,6 +178,9 @@ public class AdoS0ItemMaster : ITenantIdFilter
     [SugarColumn(ColumnName = "IsConfirm", ColumnDescription = "是否确认", ColumnDataType = "boolean")]
     public bool IsConfirm { get; set; }
 
+    [SugarColumn(ColumnName = "MRPRequired", ColumnDescription = "是否参与资源检查", ColumnDataType = "boolean")]
+    public bool MRPRequired { get; set; }
+
     [SugarColumn(ColumnName = "CreateUser", ColumnDescription = "创建人", Length = 100, IsNullable = true)]
     public string? CreateUser { get; set; }