服务端的TigerApi 框架,基于.NET6 2024 版本
Ben Lin
2025-01-10 f7f7279a6631ef9929b8087204c7f210e3ec7f5b
重构输入类型,更新方法和命名空间

将多个文件中的参数类型从 U9C_MES_Input 更改为 U9C_Base_Input,包括 U9C_MES.cs、IU9C_MES.cs 和 TskParameter.cs 文件。删除了 U9C_MES.cs 文件中的 GetMaterialBarCode 方法,并在 U9C_WMS.cs 文件中新增了 In_BySync 方法。在 Jobs.U9C_WMS_GetMaterialSn.cs 文件中更改了命名空间和类名,并更新了接口方法调用。在 mes_MaterialBarCodeByBin.cs 文件中新增了 PROD_DATE、Unit 和 LotNo 属性。更新了 Tiger.Model.Net.csproj 文件中的引用。
已修改5个文件
已重命名2个文件
已添加2个文件
208 ■■■■ 文件已修改
Tiger.Business.MES/iERP/U9C_MES.cs 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.WMS/ERP/U9C_WMS.cs 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.WMS/Task/ERP/Jobs.U9C_WMS_GetMaterialSn.cs 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.IBusiness.MES/iERP/IU9C_MES.cs 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.IBusiness.WMS/iERP/IU9C_WMS.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Entitys/MES/ParameterEntity/TskParameter.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Entitys/MES/ParameterEntity/U9C_Base_Input.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Entitys/MES/YadaU9/mes_MaterialBarCodeByBin.cs 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Model.Net/Tiger.Model.Net.csproj 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/iERP/U9C_MES.cs
@@ -28,7 +28,7 @@
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public ApiAction GetBasItem(U9C_MES_Input input)
        public ApiAction GetBasItem(U9C_Base_Input input)
        {
            var action = new ApiAction();
            Logger.Scheduler.Info($"物料信息开始同步。。。数据检查进行中。。。");
@@ -309,7 +309,7 @@
        /// <param name="input"></param>
        /// <returns></returns>
        /// <exception cref="NotImplementedException"></exception>
        public ApiAction GetCustomer(U9C_MES_Input input)
        public ApiAction GetCustomer(U9C_Base_Input input)
        {
            var action = new ApiAction();
            Logger.Scheduler.Info($"客户信息开始同步。。。数据检查进行中。。。");
@@ -386,7 +386,7 @@
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public ApiAction GetSupplier(U9C_MES_Input input)
        public ApiAction GetSupplier(U9C_Base_Input input)
        {
            var action = new ApiAction();
            Logger.Scheduler.Info($"供应商信息开始同步。。。数据检查进行中。。。");
@@ -460,7 +460,7 @@
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public ApiAction GetCustBarCode(U9C_MES_Input input)
        public ApiAction GetCustBarCode(U9C_Base_Input input)
        {
            var action = new ApiAction();
            Logger.Scheduler.Info($"客户条码信息开始同步。。。数据检查进行中。。。");
@@ -534,7 +534,7 @@
            return action;
        }
        public ApiAction GetU9CBasWo(U9C_MES_Input input)
        public ApiAction GetU9CBasWo(U9C_Base_Input input)
        {
            var action = new ApiAction();
            Logger.Scheduler.Info($"工单信息开始同步。。。数据检查进行中。。。");
@@ -687,29 +687,6 @@
                    }
                });
            }
            return action;
        }
        /// <summary>
        /// åŒæ­¥ç‰©æ–™æ¡ç ä¿¡æ¯
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public ApiAction GetMaterialBarCode(U9C_MES_Input input)
        {
            var action = new ApiAction();
            Logger.Scheduler.Info($"物料条码信息开始同步。。。数据检查进行中。。。");
            Logger.Scheduler.Info($"{input.triggerDetail}");
            DbClient db = Biz.DataSource["YadaU9C"].Client;
            try
            {
                var list = db.Queryable<mes_MaterialBarCodeByBin>().Where("ModifiedOn > @startTime And ModifiedOn < @endTime", new { startTime = input.startTime, endTime = input.endTime }).ToList();
            }
            catch (Exception ex)
            {
                action.CatchExceptionWithLog(ex, Biz.L(ex.Message));
            }
            return action;
        }
    }
Tiger.Business.WMS/ERP/U9C_WMS.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,81 @@
using Rhea.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tiger.Model.MES.Yada;
using Tiger.Model;
using Tiger.IBusiness;
using Microsoft.CodeAnalysis.Options;
using Tiger.Model.Entitys.MES.U9C;
using SqlSugar;
using System.Collections;
using System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder;
namespace Tiger.Business.WMS
{
    public partial class U9C_WMS: IU9C_WMS
    {
        /// <summary>
        /// åŒæ­¥ç‰©æ–™æ¡ç ä¿¡æ¯
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public ApiAction In_BySync(U9C_Base_Input input)
        {
            var action = new ApiAction();
            Logger.Scheduler.Info($"物料条码信息开始同步。。。数据检查进行中。。。");
            Logger.Scheduler.Info($"{input.triggerDetail}");
            DbClient db = Biz.DataSource["YadaU9C"].Client;
            string UserCode = "System_In_BySync";
            var list = db.Ado.SqlQuery<mes_MaterialBarCodeByBin>($"select *,cast('{DateTime.Now.ToString("yyyy-MM-dd")}' as DATETIME) as PROD_DATE,'' as Unit,'' as LotNo from mes_MaterialBarCodeByBin where ModifiedOn > '{input.startTime}' And ModifiedOn < '{input.endTime}'");
            try
            {
                foreach (var item in list)
                {
                    Barcode barcode = new Barcode(item.Code);
                    item.Code = item.Code;
                    item.Segment5 = barcode.ItemCode;
                    item.PROD_DATE = barcode.DateCode.ToDateTime();
                    item.Unit = barcode.Unit;
                    item.LotNo= barcode.LotNo;
                }
                //保存到数据库
                var _db = Business.Biz.Db;
                var dbTran = db.UseTran(() =>
                {
                    //入库
                    _db.Insertable(list, UserCode).ExecuteCommand();
                });
                if (!dbTran.IsSuccess)
                {
                    Logger.Default.Fatal(dbTran.ErrorException, "Database transaction save exception");
                    throw dbTran.ErrorException;
                }
                SugarParameter[] pars = Biz.Db.Ado.GetParameters(new { ERR_CODE = 0, ERR_MSG = "" });
                pars[0].Direction = System.Data.ParameterDirection.Output;
                pars[1].Direction = System.Data.ParameterDirection.Output;
                var codeList = Biz.Db.Ado.UseStoredProcedure().SqlQuery<mes_MaterialBarCodeByBin>("SP_WMS_IMPORT_ITEM", pars);//返回List
                if (pars[0].Value.ToInt32() == 0)
                {
                    Logger.Scheduler.Info($"同步条码入库,总数:[{list.Count}]");
                    action.Message = $"同步条码入库,总数:[{list.Count}]";
                }
                else
                {
                    Logger.Scheduler.Error(pars[1].Value.ToString());
                }
            }
            catch (Exception ex)
            {
                action.CatchExceptionWithLog(ex, Biz.L(ex.Message));
            }
            return action;
        }
    }
}
Tiger.Business.WMS/Task/ERP/Jobs.U9C_WMS_GetMaterialSn.cs
ÎļþÃû´Ó Tiger.Business.MES/Task/Jobs.U9C_ME_GetMaterialSn.cs ÐÞ¸Ä
@@ -10,21 +10,21 @@
using Tiger.Model;
using Tiger.Model.Minsun;
namespace Tiger.Business.MES
namespace Tiger.Business.WMS
{
    /// <summary>
    /// ä»ŽU9C获取物料条码信息
    /// </summary>
    public class U9C_ME_GetMaterialSn : TigerJobBase, ITJob
    public class U9C_WMS_GetMaterialSn : TigerJobBase, ITJob
    {
        public string Id { get; set; } = Guid.NewGuid().ToString("N");
        public string Tag { get; set; }
        public string Name { get; set; }
        public U9C_ME_GetMaterialSn()
        public U9C_WMS_GetMaterialSn()
        {
            Id = Guid.NewGuid().ToString("N");
            Tag = "U9C_ME_GetMaterialSn Interface Job";
            GetJob(typeof(U9C_ME_GetMaterialSn).Name);
            Tag = "U9C_WMS_GetMaterialSn Interface Job";
            GetJob(typeof(U9C_WMS_GetMaterialSn).Name);
            Name = Job.JobName;
        }
@@ -39,11 +39,11 @@
            {
                string msg = "";
                string status = "Successed";
                GetJob(typeof(U9C_ME_GetMaterialSn).Name);
                GetJob(typeof(U9C_WMS_GetMaterialSn).Name);
                TskJobInput tskJobInput = CheckIFCanGo();
                if (tskJobInput.result)
                {
                    var result = DI.Resolve<IU9C_MES>().GetMaterialBarCode(tskJobInput.input);
                    var result = DI.Resolve<IU9C_WMS>().In_BySync(tskJobInput.input);
                    if (!result.IsSuccessed)
                    {
                        msg = $"获取物料条码信息异常:{result.Message}";
Tiger.IBusiness.MES/iERP/IU9C_MES.cs
@@ -11,12 +11,11 @@
{
    public interface IU9C_MES
    {
        public ApiAction GetBasItem(U9C_MES_Input input);
        public ApiAction GetCustomer(U9C_MES_Input input);
        public ApiAction GetSupplier(U9C_MES_Input input);
        public ApiAction GetBasItem(U9C_Base_Input input);
        public ApiAction GetCustomer(U9C_Base_Input input);
        public ApiAction GetSupplier(U9C_Base_Input input);
        public Task<ApiAction> GetBasWo(GetWoInput input);
        public ApiAction GetCustBarCode(U9C_MES_Input input);
        public ApiAction GetMaterialBarCode(U9C_MES_Input input);
        public ApiAction GetU9CBasWo(U9C_MES_Input input);
        public ApiAction GetCustBarCode(U9C_Base_Input input);
        public ApiAction GetU9CBasWo(U9C_Base_Input input);
    }
}
Tiger.IBusiness.WMS/iERP/IU9C_WMS.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,21 @@
using Rhea.Common;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tiger.Model;
namespace Tiger.IBusiness
{
    public interface IU9C_WMS
    {
        /// <summary>
        /// åŒæ­¥ä¸Šæž¶ç‰©æ–™æ¡ç 
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public ApiAction In_BySync(U9C_Base_Input input);
    }
}
Tiger.Model.Net/Entitys/MES/ParameterEntity/TskParameter.cs
@@ -31,6 +31,6 @@
    public class TskJobInput
    {
        public bool result { get; set; }
        public U9C_MES_Input input { get; set; }
        public U9C_Base_Input input { get; set; }
    }
}
Tiger.Model.Net/Entitys/MES/ParameterEntity/U9C_Base_Input.cs
ÎļþÃû´Ó Tiger.Model.Net/Entitys/MES/ParameterEntity/U9C_MES_Input.cs ÐÞ¸Ä
@@ -6,7 +6,7 @@
namespace Tiger.Model
{
    public class U9C_MES_Input
    public class U9C_Base_Input
    {
        public string startTime { get; set; }
        public string endTime { get; set; }
@@ -14,23 +14,23 @@
        public DateTime LastRunTime { get; set; }
    }
    public class GetBasItemInput : U9C_MES_Input
    public class GetBasItemInput : U9C_Base_Input
    {
        public string isProd { get; set; }
    }
    public class GetCustomerInput : U9C_MES_Input
    public class GetCustomerInput : U9C_Base_Input
    {
    }
    public class GetSupplierInput : U9C_MES_Input
    public class GetSupplierInput : U9C_Base_Input
    {
    }
    public class GetWoInput : U9C_MES_Input
    public class GetWoInput : U9C_Base_Input
    {
    }
    public class GetCustBarcodeInput : U9C_MES_Input
    public class GetCustBarcodeInput : U9C_Base_Input
    {
    }
}
Tiger.Model.Net/Entitys/MES/YadaU9/mes_MaterialBarCodeByBin.cs
@@ -66,17 +66,29 @@
        /// 
        /// </summary>
        public string BinInfo_Code { get; set; }
        #endregion
        /// <summary>
        ///
        /// </summary>
        public DateTime PROD_DATE { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Unit { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string LotNo { get; set; }
        #endregion
        #region è™šæ‹Ÿå±žæ€§
        /*例子
        #region è™šæ‹Ÿå±žæ€§
        /*例子
        [SugarColumn(IsIgnore = true)]
        public string FieldName { get; set; }
        */
        #endregion
        #endregion
        #region æžšä¸¾å˜é‡
        /*例子
        #region æžšä¸¾å˜é‡
        /*例子
        public enum FieldNames
        {
            [Description("枚举描述0")]
@@ -85,11 +97,11 @@
            Enum1,
        }
        */
        #endregion
        #endregion
        #region å…¬å…±æ–¹æ³•
        #region å…¬å…±æ–¹æ³•
        #endregion
        #endregion
    }//endClass
    }//endClass
}
Tiger.Model.Net/Tiger.Model.Net.csproj
@@ -187,7 +187,7 @@
    <Compile Include="Entitys\MES\ParameterEntity\PositionParameter.cs" />
    <Compile Include="Entitys\MES\ParameterEntity\RouteInput.cs" />
    <Compile Include="Entitys\MES\ParameterEntity\TskParameter.cs" />
    <Compile Include="Entitys\MES\ParameterEntity\U9C_MES_Input.cs" />
    <Compile Include="Entitys\MES\ParameterEntity\U9C_Base_Input.cs" />
    <Compile Include="Entitys\MES\R_Wip_Tracking_T.cs" />
    <Compile Include="Entitys\MES\SMT_FEEDER.cs" />
    <Compile Include="Entitys\MES\SMT_FEEDER_TYPE.cs" />