api命名规范,字典常量规范

This commit is contained in:
2023-04-26 09:44:19 +08:00
parent b1f04f8a43
commit 04f0d7b339
10 changed files with 88 additions and 68 deletions

View File

@@ -1,10 +0,0 @@
namespace Tnb.BasicData.Entitys.Const
{
public static class DicTypeKey
{
/// <summary>
/// 计量单位
/// </summary>
public const string MeasurementUnit = "MeasurementUnit";
}
}

View File

@@ -0,0 +1,40 @@
namespace Tnb.BasicData.Entitys;
public static class DictConst
{
#region BasicData
/// <summary>
/// 计量单位
/// </summary>
public const string MeasurementUnit = "MeasurementUnit";
#endregion
#region ProductionMgr
/// <summary>
/// 生产任务状态TypeId
/// </summary>
public const string PrdTaskStatusTypeId = "25572555259157";
/// <summary>
/// 工单状态 已下发字典Id
/// </summary>
public const string IssueId = "25019232867093";
/// <summary>
/// 任务单状态-待开工编码
/// </summary>
public const string ToBeStartedEnCode = "ToBeStarted";
#endregion
#region WarehouseMgr
#endregion
#region QcMgr
#endregion
#region EqpMgr
#endregion
}

View File

@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tnb.BasicData;
public class ModuleConst
{
public const string Tag = "BasicData";
public const string Area = "basic";
}

View File

@@ -6,15 +6,16 @@ using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using Tnb.BasicData.Entitys.Entity;
using Tnb.BasicData.Entitys.Dto;
using Tnb.BasicData.Entitys.Const;
using Tnb.BasicData.Entitys;
using JNPF.Common.Const;
namespace Tnb.BasicData
{
/// <summary>
/// 物料清单
/// </summary>
[ApiDescriptionSettings(Tag = "BasicData", Name = "Ebom", Order = 701)]
[Route("api/basic/[controller]")]
[ApiDescriptionSettings(Tag = ModuleConst.Tag, Area = ModuleConst.Area, Order = 1102)]
[Route("api/[area]/[controller]/[action]")]
public class EbomService : IDynamicApiController, ITransient
{
private readonly ISqlSugarRepository<BasMaterial> _repository;
@@ -34,11 +35,11 @@ namespace Tnb.BasicData
/// </summary>
/// <param name="input">获取物料清单树.</param>
/// <returns></returns>
[HttpPost("[action]")]
[HttpPost]
public async Task<dynamic> GetTree(EbomTreeQueryInput queryInput)
{
var db = _repository.AsSugarClient();
var dic = await _dictionaryDataService.GetDicByKey(DicTypeKey.MeasurementUnit);
var dic = await _dictionaryDataService.GetDicByKey(DictConst.MeasurementUnit);
// var momDbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(x => x.FullName == DbName.TNBMON);
// if (momDbLink != null)
@@ -108,7 +109,7 @@ namespace Tnb.BasicData
}
[HttpPost("[action]")]
[HttpPost]
public async Task<Dictionary<string,string>> GetEbomVersionAndRouteName(string materialId)
{
var db = _repository.AsSugarClient();

View File

@@ -7,15 +7,14 @@ using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using Tnb.BasicData.Entitys;
using Tnb.BasicData.Entitys.Entity;
using Tnb.BasicData.Entitys.Const;
namespace Tnb.BasicData
{
/// <summary>
/// 物料档案
/// </summary>
[ApiDescriptionSettings(Tag = "BasicData", Name = "Material", Order = 700)]
[Route("api/basic/[controller]")]
[ApiDescriptionSettings(Tag = ModuleConst.Tag, Area = ModuleConst.Area, Order = 1102)]
[Route("api/[area]/[controller]/[action]")]
public class MaterialService : IDynamicApiController, ITransient
{
private readonly ISqlSugarRepository<BasMaterial> _repository;
@@ -30,11 +29,11 @@ namespace Tnb.BasicData
_dictionaryDataService = dictionaryDataService;
}
[HttpPost("[action]")]
[HttpPost]
public async Task<Dictionary<string,string>> GetEbomVersionAndRouteName(string materialId)
{
var db = _repository.AsSugarClient();
var dic = await _dictionaryDataService.GetDicByKey(DicTypeKey.MeasurementUnit);
var dic = await _dictionaryDataService.GetDicByKey(DictConst.MeasurementUnit);
// var momDbLink = await _repository.AsSugarClient().Queryable<DbLinkEntity>().FirstAsync(x => x.FullName == DbName.TNBMON);
// if (momDbLink != null)
// {
@@ -58,12 +57,12 @@ namespace Tnb.BasicData
};
}
[HttpPost("[action]")]
[HttpPost]
public async Task<List<ElementSelectDto>> GetMaterialUnits(string materialId)
{
var db = _repository.AsSugarClient();
var type = await db.Queryable<DictionaryTypeEntity>().Where(x => x.EnCode == DicTypeKey.MeasurementUnit)
var type = await db.Queryable<DictionaryTypeEntity>().Where(x => x.EnCode == DictConst.MeasurementUnit)
.SingleAsync();
string typeId = type?.Id;
var queryable1 = db.Queryable<BasMaterial>()

View File

@@ -6,22 +6,6 @@ using System.Threading.Tasks;
namespace Tnb.ProductionMgr.Entitys.
{
public class DictionaryConstants
{
/// <summary>
/// 生产任务状态TypeId
/// </summary>
public const string PrdTaskStatusTypeId = "25572555259157";
/// <summary>
/// 工单状态 已下发字典Id
/// </summary>
public const string IssueId = "25019232867093";
/// <summary>
/// 任务单状态-待开工编码
/// </summary>
public const string ToBeStartedEnCode = "ToBeStarted";
}
/// <summary>
/// 工单状态
/// </summary>

View File

@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tnb.ProductionMgr;
public class ModuleConst
{
public const string Tag = "ProductionManager";
public const string Area = "production";
}

View File

@@ -9,6 +9,7 @@
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\BasicData\Tnb.BasicData.Interfaces\Tnb.BasicData.Interfaces.csproj" />
<ProjectReference Include="..\..\common\Tnb.Common\Tnb.Common.csproj" />
</ItemGroup>

View File

@@ -16,6 +16,8 @@ using Microsoft.AspNetCore.Mvc;
using NPOI.OpenXmlFormats.Shared;
using Senparc.Weixin.Work.AdvancedAPIs.OaDataOpen;
using SqlSugar;
using Tnb.BasicData.Entitys;
using Tnb.ProductionMgr.Entitys;
using Tnb.ProductionMgr.Entitys.Dto.PrdManage;
using Tnb.ProductionMgr.Entitys.Dto.WorkOrder;
using Tnb.ProductionMgr.Entitys.Entity;
@@ -23,12 +25,12 @@ using Tnb.ProductionMgr.Entitys.新文件夹;
using Tnb.ProductionPlanMgr.Entitys.Dto.WorkOrder;
using Tnb.ProductionPlanMgr.Interfaces;
namespace Tnb.ProductionPlanMgr
namespace Tnb.ProductionMgr
{
/// <summary>
/// 生产计划管理
/// </summary>
[ApiDescriptionSettings(Tag = "ProductionMgr", Area = "production", Order = 700)]
[ApiDescriptionSettings(Tag = ModuleConst.Tag, Area = ModuleConst.Area, Order = 700)]
[Route("api/[area]/[controller]/[action]")]
public class PrdMoService : IPrdMoService, IDynamicApiController, ITransient
{
@@ -135,7 +137,7 @@ namespace Tnb.ProductionPlanMgr
[HttpGet("sort/{eqpId}")]
public async Task<dynamic> PrdTaskSort(string eqpId)
{
var taskStatusDic = await _dictionaryDataService.GetDicByTypeId(DictionaryConstants.PrdTaskStatusTypeId);
var taskStatusDic = await _dictionaryDataService.GetDicByTypeId(DictConst.PrdTaskStatusTypeId);
var list = await _repository.AsSugarClient().Queryable<PrdTask>()
.Where(it => it.eqp_id == eqpId)
.OrderBy(o => o.estimated_start_date)
@@ -163,7 +165,7 @@ namespace Tnb.ProductionPlanMgr
{
var list = await _repository.AsSugarClient().Queryable<PrdTaskLog>().Where(it => it.id == taskId).ToListAsync();
var data = list.Adapt<List<PrdTaskOperOutput>>();
var dic = await _dictionaryDataService.GetDicByTypeId(DictionaryConstants.PrdTaskStatusTypeId);
var dic = await _dictionaryDataService.GetDicByTypeId(DictConst.PrdTaskStatusTypeId);
_repository.AsSugarClient().ThenMapper(data, x => x.statusName = dic.ContainsKey(x.status) ? dic[x.status].ToString() : "");
return data;
}
@@ -195,7 +197,7 @@ namespace Tnb.ProductionPlanMgr
}
var row = await db.Updateable<PrdMo>()
.SetColumns(it => new PrdMo { mo_status = DictionaryConstants.IssueId })
.SetColumns(it => new PrdMo { mo_status = DictConst.IssueId })
.Where(it => input.WorkOrderIds.Contains(it.id))
.ExecuteCommandAsync();
return (row > 0);
@@ -362,7 +364,7 @@ namespace Tnb.ProductionPlanMgr
}
var db = _repository.AsSugarClient();
var row = await db.Updateable<PrdTask>()
.SetColumns(it => new PrdTask { status = DictionaryConstants.ToBeStartedEnCode })
.SetColumns(it => new PrdTask { status = DictConst.ToBeStartedEnCode })
.Where(it => input.TaskIds.Contains(it.id))
.ExecuteCommandAsync();
return (row > 0);

View File

@@ -1,23 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using JNPF;
using JNPF.Common.Core.Manager;
using JNPF.DependencyInjection;
using JNPF.Systems.Entitys.System;
using SqlSugar;
namespace Tnb.ProductionPlanMgr
{
public class BaseService : ITransient
{
private readonly Dictionary<string, ISqlSugarClient> _dbContextDic = new(StringComparer.OrdinalIgnoreCase);
static BaseService()
{
}
}
}