服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-09-11 3b4dd8ba2e49d193dea28766c2477e540b4614c4
Merge branch 'master' of http://47.115.28.255:8110/r/TigerClouds-Tech/Server/TigerApi6_2024
已删除2个文件
已修改2个文件
已重命名1个文件
已添加3个文件
408 ■■■■ 文件已修改
Tiger.Api/Controllers/MES/MESController.BAS_PKG_RULE.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Api/Controllers/MES/MESController.BizBaseRule.cs 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/BIZ/BAS_PKG_RULE.cs 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/BIZ/BizBasRule.cs 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.IBusiness/MES/BIZ/IBasRule.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Entitys/MES/ParameterEntity/BizBasPkgRuleParameter.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Entitys/MES/V_BAS_PROD_R.cs 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Tiger.Model.Net.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Api/Controllers/MES/MESController.BAS_PKG_RULE.cs
ÎļþÒÑɾ³ý
Tiger.Api/Controllers/MES/MESController.BizBaseRule.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,57 @@
using Microsoft.AspNetCore.Mvc;
using Rhea.Common;
using System.Threading.Tasks;
using Tiger.IBusiness;
using Tiger.Model;
using Tiger.Model.Entitys.MES.BizBasPkgRule;
using Tiger.Model.Entitys.MES.BizMesWo;
using Tiger.Model.Entitys.MES.BizMesWoBatch;
namespace Tiger.Api.Controllers.MES
{
    public partial class MESController : ControllerBase
    {
        /// <summary>
        /// ä¿å­˜åŒ…装规则
        /// </summary>
        /// <param name="action"></param>
        /// <returns></returns>
        [HttpPost]
        [Route("api/[controller]/[action]")]
        public async Task<IActionResult> SaveBasPkgRule([FromBody] ApiAction<BizBasPkgRuleInput> action)
        {
            ApiAction response = new();
            try
            {
                response = response.GetResponse(await DI.Resolve<IBasRule>().SaveBasPkgRule(action.Data));
            }
            catch (System.Exception ex)
            {
                response = response.GetResponse().CatchExceptionWithLog(ex);
            }
            return Ok(response);
        }
        /// <summary>
        /// ä¿å­˜ç‰©æ–™æ¡ç è§„则
        /// </summary>
        /// <param name="action"></param>
        /// <returns></returns>
        [HttpPost]
        [Route("api/[controller]/[action]")]
        public async Task<IActionResult> SaveBasItemRule([FromBody] ApiAction<BizBasItemRuleInput> action)
        {
            ApiAction response = new();
            try
            {
                response = response.GetResponse(await DI.Resolve<IBasRule>().SaveBasItemRule(action.Data));
            }
            catch (System.Exception ex)
            {
                response = response.GetResponse().CatchExceptionWithLog(ex);
            }
            return Ok(response);
        }
    }
}
Tiger.Business.MES/BIZ/BAS_PKG_RULE.cs
ÎļþÒÑɾ³ý
Tiger.Business.MES/BIZ/BizBasRule.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,109 @@
using Tiger.Model;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using Rhea.Common;
using System.Net;
using System.Linq;
using Newtonsoft.Json;
using Tiger.IBusiness;
using Microsoft.AspNetCore.Http;
using Tiger.Model.Entitys.MES.BizMesWoBatch;
using Tiger.Model.Entitys.MES.BizMesWo;
using Tiger.Model.Entitys.MES.BizBasPkgRule;
namespace Tiger.Business.MES
{
    public partial class BizBasRule : IBasRule
    {
        /// <summary>
        /// ä¿å­˜ç‰©æ–™æ¡ç è§„则
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<ApiAction> SaveBasItemRule(BizBasItemRuleInput input)
        {
            var result = new ApiAction();
            try
            {
                var ItemCusts = input.ItemCusts.Select(q => q.ID).ToList();
                List<BAS_ITEM_CUST> list = await Biz.Db.Queryable<BAS_ITEM_CUST>().Where(q => !SqlFunc.ContainsArray(ItemCusts, q.ID)).ToListAsync();
                var db = Biz.Db;
                var dbTran = db.UseTran(() =>
                {
                    var z = db.Storageable(input.ItemCusts)
                       .WhereColumns(t => new { t.ID, t.GHOST_ROW })
                       .ToStorage();
                    z.AsInsertable.ExecuteCommand();
                    z.AsUpdateable.ExecuteCommand();
                    db.Deleteable(list).ExecuteCommand();
                });
                if (!dbTran.IsSuccess)
                {
                    result.IsSuccessed = false;
                    result.Message = $"保存物料条码规则异常";
                }
            }
            catch (Exception ex)
            {
                result.CatchExceptionWithLog(ex, "保存物料条码规则异常");
            }
            return result;
        }
        /// <summary>
        /// ä¿å­˜åŒ…装规则,包括明细和重量范围
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<ApiAction> SaveBasPkgRule(BizBasPkgRuleInput input)
        {
            var result = new ApiAction();
            try
            {
                var pkgProds = input.PkgProd.Select(q => q.ID).ToList();
                List<BAS_PKG_PROD> listPrd = await Biz.Db.Queryable<BAS_PKG_PROD>().Where(q => !SqlFunc.ContainsArray(pkgProds, q.ID)).ToListAsync();
                var db = Biz.Db;
                var dbTran = db.UseTran(() =>
                {
                    //if (input.PkgRule!=null)
                    //{
                    //    var y = db.Storageable(input.PkgRule)
                    //       .WhereColumns(t => new { t.ID, t.GHOST_ROW })
                    //       .ToStorage();
                    //    y.AsInsertable.ExecuteCommand();
                    //    y.AsUpdateable.ExecuteCommand();
                    //}
                    var z = db.Storageable(input.PkgDtl)
                       .WhereColumns(t => new { t.ID, t.GHOST_ROW })
                       .ToStorage();
                    z.AsInsertable.ExecuteCommand();
                    z.AsUpdateable.ExecuteCommand();
                    var o = db.Storageable(input.PkgProd)
                       .WhereColumns(t => new { t.ID, t.GHOST_ROW })
                       .ToStorage();
                    o.AsInsertable.ExecuteCommand();
                    o.AsUpdateable.ExecuteCommand();
                    db.Deleteable(listPrd).ExecuteCommand();
                });
                if (!dbTran.IsSuccess)
                {
                    result.IsSuccessed = false;
                    result.Message = $"保存包装规则异常";
                }
            }
            catch (Exception ex)
            {
                result.CatchExceptionWithLog(ex, "保存包装规则异常");
            }
            return result;
        }
    }
}
Tiger.IBusiness/MES/BIZ/IBasRule.cs
ÎļþÃû´Ó Tiger.IBusiness/MES/BIZ/IBasPkgRule.cs ÐÞ¸Ä
@@ -10,8 +10,9 @@
namespace Tiger.IBusiness
{
    public interface IBasPkgRule
    public interface IBasRule
    {
        public Task<ApiAction> SaveBasPkgRule(BizBasPkgRuleInput input);
        public Task<ApiAction> SaveBasItemRule(BizBasItemRuleInput input);
    }
}
Tiger.Model.Net/Entitys/MES/ParameterEntity/BizBasPkgRuleParameter.cs
@@ -12,4 +12,9 @@
        public List<BAS_PKG_DTL> PkgDtl { get; set; }
        public List<BAS_PKG_PROD> PkgProd { get; set; }
    }
    public class BizBasItemRuleInput
    {
        public List<BAS_ITEM_CUST> ItemCusts { get; set; }
    }
}
Tiger.Model.Net/Entitys/MES/V_BAS_PROD_R.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,127 @@
using System;
using SqlSugar;
using System.Linq;
using System.ComponentModel;
using System.Collections.Generic;
using Tiger.Model;
namespace Tiger.Model
{
    /// <summary>
    /// å®žä½“:V_BAS_PROD
    /// </summary>
    [Serializable]
    [SugarTable("V_BAS_PROD_R")]
    public class V_BAS_PROD_R : iViewEntity, iTableHasAuth
    {
        #region æž„造函数
        /// <summary>
        /// å®žä½“:V_BAS_PROD_R
        /// </summary>
        public V_BAS_PROD_R() {}
        #endregion
        #region å…¬å…±å±žæ€§
        /// <summary>
        ///
        /// </summary>
        public string ID { get; set; }
        /// <summary>
        ///
        /// </summary>
        public DateTime CREATE_TIME { get; set; } = DateTime.MinValue;
        /// <summary>
        ///
        /// </summary>
        public string CREATE_USER { get; set; }
        /// <summary>
        ///
        /// </summary>
        public DateTime UPDATE_TIME { get; set; } = DateTime.MinValue;
        /// <summary>
        ///
        /// </summary>
        public string UPDATE_USER { get; set; }
        /// <summary>
        ///
        /// </summary>
        public bool GHOST_ROW { get; set; } = false;
        /// <summary>
        ///
        /// </summary>
        public string AUTH_ORG { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string AUTH_PROD { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string AUTH_WH { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string ITEM_CODE { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string ITEM_NAME { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string ITEM_DESC { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string ITEM_TYPE { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string ITEM_VER { get; set; }
        /// <summary>
        /// ç»‘定的工艺
        /// </summary>
        public string PROD_ROT { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string SPEC { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string SPEC_WH { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string IS_PROD { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string IS_ACTIVE { get; set; }
        #endregion
        #region è™šæ‹Ÿå±žæ€§
        /*例子
        [SugarColumn(IsIgnore = true)]
        public string FieldName { get; set; }
        */
        #endregion
        #region æžšä¸¾å˜é‡
        /*例子
        public enum FieldNames
        {
            [Description("枚举描述0")]
            Enum0,
            [Description("枚举描述1")]
            Enum1,
        }
        */
        #endregion
        #region å…¬å…±æ–¹æ³•
        #endregion
    }//endClass
}
Tiger.Model.Net/Tiger.Model.Net.csproj
@@ -178,6 +178,7 @@
    <Compile Include="Entitys\MES\SMT_PROD_TABLE.cs" />
    <Compile Include="Entitys\MES\SMT_SOLDER.cs" />
    <Compile Include="Entitys\MES\SMT_SOLDER_HIS.cs" />
    <Compile Include="Entitys\MES\V_BAS_PROD_R.cs" />
    <Compile Include="Entitys\MES\V_BAS_PROD.cs" />
    <Compile Include="Entitys\MES\V_MES_ROUTE_NDS.cs" />
    <Compile Include="Entitys\MES\V_MES_ROUTE_NES.cs" />