using Admin.NET.Plugin.AiDOP.Entity;
using Admin.NET.Plugin.AiDOP.Manufacturing.Dto;
namespace Admin.NET.Plugin.AiDOP.Manufacturing;
///
/// S6 模工具台账管理 服务(FUNC-S6-004)。
///
/// 数据源:aidopdev.MoldToolList(模工具台账),忠实复刻证据 sql.txt(select * from MoldToolList),
/// 列映射见字段配置图:类型=lx / 名称=MoldName / 供应商名=gysmc / 数量=MoldCount / 功能应用名称=gnyymc /
/// 模具类型编码=MoldTypeCode / 对应产品物料编码=product_material_code / 图纸号=product_drawing_number /
/// 产品名称=product_name / 工序=process。lx 含 模具 / 工装 / 检具(同表同页同源,类型下拉可筛选)。
///
/// list / type-options 为既有只读查询,本批不改其签名与返回结构。
/// detail / create / update / delete 为 CRUD V1 新增能力,写字段严格限于 9 个白名单业务字段;
/// gys / gysmc / MoldUsingDepartment / zrr / zt / sm / bypl / fj / xh / bh / gnyyid /
/// MoldMaintenanceReleaseTime / ActiveMaintenanceMoldCount 语义未确认,本批不写。
///
/// 租户:所有读写一律经 AidopTenantScope.ResolveOrThrow 取 JWT 可信租户,并在每条语句显式带
/// tenant 条件;不信任前端传入的 tenantId,不依赖全局 QueryFilter(其对超管不生效)。
///
[ApiDescriptionSettings(Order = 320, Description = "模工具台账管理")]
[Route("api/S6ToolingLedger")]
[NonUnify]
public class ToolingLedgerService : IDynamicApiController, ITransient
{
private readonly ISqlSugarClient _db;
private readonly UserManager _userManager;
private readonly MoldToolReferenceChecker _refChecker;
public ToolingLedgerService(ISqlSugarClient db, UserManager userManager, MoldToolReferenceChecker refChecker)
{
_db = db;
_userManager = userManager;
_refChecker = refChecker;
}
///
/// 模工具台账列表(只读分页查询)。
///
[DisplayName("模工具台账列表")]
[HttpGet("list")]
public async Task