服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-09-27 bed76502512bd0a7f39cfa7024b238d822746e67
Merge branch 'master' of http://47.115.28.255:8110/r/TigerClouds-Tech/Server/TigerApi6_2024
已修改3个文件
70 ■■■■■ 文件已修改
Tiger.Business.MES/Transaction/Position.cs 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/iERP/U9C_MES.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.IBusiness.MES/Transaction/IPosition.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Tiger.Business.MES/Transaction/Position.cs
@@ -12,6 +12,7 @@
using static Tiger.Business.Biz;
using Tiger.Model.Entitys.MES.Position;
using System.Globalization;
using Tiger.Business.MES.WorkAction;
namespace Tiger.Business.MES.Transaction
{
@@ -463,7 +464,7 @@
        /// <returns></returns>
        public BAS_LABEL_TEMP SetLabelVariables(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_TEMP label, IWorkAction action)
        {
            foreach (var item in label.Variables)
            foreach (var item in label.Variables.OrderBy(q => q.VAR_TYPE == BAS_LABEL_VAR.VAR_TYPEs.BarcodeGenerate.GetValue() ? 0 : 1))
            {
                switch (item.VAR_TYPE.GetEnum<BAS_LABEL_VAR.VAR_TYPEs>())
                {
@@ -471,7 +472,7 @@
                        item.Value = item.VAR_VALUE;
                        break;
                    case BAS_LABEL_VAR.VAR_TYPEs.ProcessVariable:
                        item.Value = GetPrintProcessValue(labelPVs, item, action);
                        item.Value = GetPrintProcessValue(labelPVs, item, label.Variables, action);
                        break;
                    case BAS_LABEL_VAR.VAR_TYPEs.DateVariable:
                        item.Value = DateTime.Now.ToString(item.VAR_VALUE);
@@ -494,7 +495,7 @@
        /// <param name="labelPVs">过程变量列表</param>
        /// <param name="lv">标签模板变量</param>
        /// <returns></returns>
        public string GetPrintProcessValue(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_VAR lv, IWorkAction action)
        public string GetPrintProcessValue(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_VAR lv, List<BAS_LABEL_VAR> lvars, IWorkAction action)
        {
            var pv = labelPVs.FirstOrDefault(q => q.VAR_CODE == lv.VAR_VALUE);
            if (!pv.IsNullOrEmpty())
@@ -508,8 +509,20 @@
                                case "GetSN":
                                    return CurSN;
                                case "GetBAS_ITEM":
                                    return WorkBatch.Product.ToJson();
                                    return WorkBatch.Product.ITEM_CODE;
                                case "GetCustomer":
                                    return WorkBatch.Batch.ToJson();
                                case "GetBoxQR":
                                    return action is PackingAction ? GetBoxCode(lvars, action as PackingAction) : "";
                                case "GetCardQR":
                                    return action is PackingAction? GetCardCode(lvars, action as PackingAction) : "";
                                case "GetDescription":
                                    return WorkBatch.Product.ITEM_DESC;
                                case "GetPAndO":
                                    return WorkBatch.WO.SALES_CONTRACT;
                                case "GetLTD":
                                    return WorkBatch.Batch.Customer.SHORT_NAME;
                                case "GetHWDate":
                                    return WorkBatch.Batch.ToJson();
                                case "GetModel":
                                    return GetLabelVarWo(lv, WorkBatch.Product.ExtInfo.Model);
@@ -591,6 +604,52 @@
        }
        /// <summary>
        /// 获取白盒条码
        /// </summary>
        /// <param name="action"></param>
        /// <returns></returns>
        private string GetBoxCode(List<BAS_LABEL_VAR> lvars, PackingAction action)
        {
            return GetCardOrBoxQR(CurSN, lvars, action);
        }
        /// <summary>
        /// 获取箱条码
        /// </summary>
        /// <param name="lvars"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        private string GetCardCode(List<BAS_LABEL_VAR> lvars, PackingAction action)
        {
            var cardCode = lvars.First(q=>q.VAR_NAME == "CardQR").Value;
            return GetCardOrBoxQR(cardCode, lvars, action);
        }
        /// <summary>
        /// 获取白盒或者箱二维码
        /// </summary>
        /// <param name="code"></param>
        /// <param name="lvars"></param>
        /// <param name="action"></param>
        /// <returns></returns>
        private string GetCardOrBoxQR(string code, List<BAS_LABEL_VAR> lvars, PackingAction action)
        {
            var itemCode = WorkBatch.Product.ITEM_CODE;
            var wo = WorkBatch.Batch.ORDER_NO;
            var snList = string.Join("\r\n", action.GetMinPackageList(action.CurPkg.Item).Select(q => q.SN));
            var weight = action.CurPkg.WeightInfo.Weight;
            var unit = action.CurPkg.WeightInfo.Unit.ToUpper();
            var model = WorkBatch.Product.ExtInfo.Model;
            var Input = WorkBatch.Product.ExtInfo.Input;
            var OutPut = WorkBatch.Product.ExtInfo.OutPut;
            var Power = WorkBatch.Product.ExtInfo.Power;
            var Accuracy = WorkBatch.Product.ExtInfo.Accuracy;
            var Remark = WorkBatch.Product.ExtInfo.Remark;
            return $"{code}|{itemCode}|{wo}|{snList}|{weight}|型号:{model},输入:{Input},输出:{OutPut},电源:{Power},精度:{Accuracy},备注:{Remark}";
        }
        /// <summary>
        /// 根据包装工单和条码获取华为要求的生产周期
        /// </summary>
        /// <param name="snList"></param>
Tiger.Business.MES/iERP/U9C_MES.cs
@@ -180,6 +180,7 @@
                            STATUS = 0,
                            AUTH_ORG = orgs.Where(x => x.ID == orgId).Select(q => q.ORG_CODE).FirstOrDefault(),
                            SALES_ORDER = di["SrcDoc_SrcDocNo"] == null ? "" : di["SrcDoc_SrcDocNo"].ToString(),
                            SALES_REMARK = di["SoLineMemo"] == null ? "" : di["SoLineMemo"].ToString(),
                            SERIAL_NO = di["MoSerial"] == null ? "" : di["MoSerial"].ToString(),
                            SN_PREFIX = di["InBarHead"] == null ? "" : di["InBarHead"].ToString(),
                            CUST_PREFIX = di["OutBarHead"] == null ? "" : di["OutBarHead"].ToString(),
Tiger.IBusiness.MES/Transaction/IPosition.cs
@@ -65,7 +65,7 @@
        /// <param name="labelPVs">过程变量列表</param>
        /// <param name="lv">标签模板变量</param>
        /// <returns></returns>
        public string GetPrintProcessValue(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_VAR lv, IWorkAction action);
        public string GetPrintProcessValue(List<BAS_LABEL_PV> labelPVs, BAS_LABEL_VAR lv, List<BAS_LABEL_VAR> lvars, IWorkAction action);
        #endregion Functions
    }
}