工艺管理

This commit is contained in:
2023-06-02 16:57:46 +08:00
parent 5b83328369
commit 579aa750ad
12 changed files with 286 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
namespace Tnb.PerMgr;
public class ModuleConsts
{
public const string Tag = "PerMgr";
public const string Area = "per";
}

View File

@@ -0,0 +1,11 @@
namespace Tnb.PerMgr.Entities.Dto
{
public class ProcessParamOutput
{
public string name { get; set; }
public decimal upper_value { get; set; }
public decimal lower_value { get; set; }
}
}

View File

@@ -0,0 +1,72 @@
using JNPF.Common.Contracts;
using JNPF.Common.Security;
using SqlSugar;
namespace Tnb.PerMgr.Entities;
/// <summary>
/// 工艺参数
/// </summary>
[SugarTable("per_process_param")]
public partial class PerProcessParam : BaseEntity<string>
{
public PerProcessParam()
{
id = SnowflakeIdHelper.NextId();
}
/// <summary>
/// 名称
/// </summary>
public string name { get; set; } = string.Empty;
/// <summary>
/// 公差类别id
/// </summary>
public string tolerance_category_id { get; set; } = string.Empty;
/// <summary>
/// 工艺参数类型id
/// </summary>
public string process_param_type_id { get; set; } = string.Empty;
/// <summary>
/// 排序
/// </summary>
public long ordinal { get; set; }
/// <summary>
/// 创建用户
/// </summary>
public string? create_id { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime? create_time { get; set; }
/// <summary>
/// 修改用户
/// </summary>
public string? modify_id { get; set; }
/// <summary>
/// 修改时间
/// </summary>
public DateTime? modify_time { get; set; }
/// <summary>
/// 所属组织
/// </summary>
public string? org_id { get; set; }
/// <summary>
/// 流程任务Id
/// </summary>
public string? f_flowtaskid { get; set; }
/// <summary>
/// 流程引擎Id
/// </summary>
public string? f_flowid { get; set; }
}

View File

@@ -0,0 +1,67 @@
using JNPF.Common.Contracts;
using JNPF.Common.Security;
using SqlSugar;
namespace Tnb.PerMgr.Entities;
/// <summary>
/// 公差类别
/// </summary>
[SugarTable("per_tolerance_category")]
public partial class PerToleranceCategory : BaseEntity<string>
{
public PerToleranceCategory()
{
id = SnowflakeIdHelper.NextId();
}
/// <summary>
/// 名称
/// </summary>
public string name { get; set; } = string.Empty;
/// <summary>
/// 类型 1 值 2百分比
/// </summary>
public string type { get; set; } = string.Empty;
/// <summary>
/// 上限
/// </summary>
public decimal upper_value { get; set; }
/// <summary>
/// 下限
/// </summary>
public decimal lower_value { get; set; }
/// <summary>
/// 备注
/// </summary>
public string? remark { get; set; }
/// <summary>
/// 创建用户
/// </summary>
public string? create_id { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime? create_time { get; set; }
/// <summary>
/// 修改用户
/// </summary>
public string? modify_id { get; set; }
/// <summary>
/// 修改时间
/// </summary>
public DateTime? modify_time { get; set; }
/// <summary>
/// 所属组织
/// </summary>
public string? org_id { get; set; }
}

View File

@@ -0,0 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\common\Tnb.Common\Tnb.Common.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="Model" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,14 @@
using Tnb.PerMgr.Entities.Dto;
namespace Tnb.PerMgr.Interfaces
{
public interface IPerProcessParamService
{
/// <summary>
/// 根据id获取工艺参数信息
/// </summary>
/// <param name="dic"></param>
/// <returns></returns>
public Task<ProcessParamOutput> GetProcessParamInfo(Dictionary<string,string> dic);
}
}

View File

@@ -0,0 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Tnb.PerMgr.Entities\Tnb.PerMgr.Entities.csproj" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,45 @@
using JNPF.Common.Core.Manager;
using JNPF.DependencyInjection;
using JNPF.DynamicApiController;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using Tnb.PerMgr.Entities;
using Tnb.PerMgr.Entities.Dto;
using Tnb.PerMgr.Interfaces;
namespace Tnb.PerMgr
{
/// <summary>
/// 工艺参数
/// </summary>
[ApiDescriptionSettings(Tag = ModuleConsts.Tag, Area = ModuleConsts.Area, Order = 700)]
[Route("api/[area]/[controller]/[action]")]
public class PerProcessParamService : IPerProcessParamService, IDynamicApiController, ITransient
{
private readonly ISqlSugarRepository<PerProcessParam> _repository;
private readonly IUserManager _userManager;
public PerProcessParamService(ISqlSugarRepository<PerProcessParam> repository, IUserManager userManager)
{
_userManager = userManager;
_repository = repository;
}
[HttpPost]
public async Task<ProcessParamOutput> GetProcessParamInfo(Dictionary<string, string> dic)
{
string id = dic["id"];
var db = _repository.AsSugarClient();
var result = await db.Queryable<PerProcessParam>()
.LeftJoin<PerToleranceCategory>((a, b) => a.tolerance_category_id == b.id)
.Where((a, b) => a.id == id)
.Select((a, b) => new ProcessParamOutput()
{
name = a.name,
upper_value = b.upper_value,
lower_value = b.lower_value,
}).SingleAsync();
return result;
}
}
}

View File

@@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="$(SolutionDir)\common.props" />
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\visualdev\Tnb.VisualDev.Engine\Tnb.VisualDev.Engine.csproj" />
<ProjectReference Include="..\Tnb.PerMgr.Interfaces\Tnb.PerMgr.Interfaces.csproj" />
</ItemGroup>
</Project>