| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- using Aitex.Core.Util;
- using MECF.Framework.Common.Equipment;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace PunkHPX8_RT.Modules
- {
- public class ModuleMatcherManager : Singleton<ModuleMatcherManager>
- {
- #region 常量
- private Dictionary<string, string> _matcher =new Dictionary<string, string>
- {
- { ModuleName.PlatingCell1.ToString(),ModuleName.PlatingCell2.ToString()},
- { ModuleName.PlatingCell2.ToString(),ModuleName.PlatingCell1.ToString()},
- { ModuleName.PlatingCell3.ToString(),ModuleName.PlatingCell4.ToString()},
- { ModuleName.PlatingCell4.ToString(),ModuleName.PlatingCell3.ToString()},
- { ModuleName.PlatingCell5.ToString(),ModuleName.PlatingCell6.ToString()},
- { ModuleName.PlatingCell6.ToString(),ModuleName.PlatingCell5.ToString()},
- { ModuleName.PlatingCell7.ToString(),ModuleName.PlatingCell8.ToString()},
- { ModuleName.PlatingCell8.ToString(),ModuleName.PlatingCell7.ToString()},
- { ModuleName.PlatingCell9.ToString(),ModuleName.PlatingCell10.ToString()},
- { ModuleName.PlatingCell10.ToString(),ModuleName.PlatingCell9.ToString()},
- { ModuleName.VPW1.ToString(),ModuleName.VPW2.ToString()},
- { ModuleName.VPW2.ToString(),ModuleName.VPW1.ToString()},
- };
- private Dictionary<string, string> _platingCellVerticalMatcher = new Dictionary<string, string>();
- /// <summary>
- /// 垂直电机Matcher集合字典
- /// </summary>
- private Dictionary<string, List<string>> _verticalMatcherListDic = new Dictionary<string, List<string>>();
- #endregion
- /// <summary>
- /// 获取配对模块
- /// </summary>
- /// <param name="module"></param>
- /// <returns></returns>
- public string GetMatcherByModule(string module)
- {
- if (_matcher.ContainsKey(module)){
- return _matcher[module];
- }
- else
- {
- return "";
- }
- }
- /// <summary>
- /// 初始化PlatingCell和垂直电机ID
- /// </summary>
- /// <param name="platingCellId"></param>
- /// <param name="verticalId"></param>
- public void InitialPlatingCellVerticalID(string platingCellId,string verticalId)
- {
- _platingCellVerticalMatcher[platingCellId] = verticalId;
- List<string> list = null;
- if (_verticalMatcherListDic.ContainsKey(verticalId))
- {
- list= _verticalMatcherListDic[verticalId];
- }
- else
- {
- list = new List<string>();
- _verticalMatcherListDic[verticalId] = list;
- }
- if (!list.Contains(platingCellId))
- {
- list.Add(platingCellId);
- }
- }
- /// <summary>
- /// 获取所有的PlatingCell的垂直电机集合
- /// </summary>
- /// <returns></returns>
- public List<string> GetAllPlatingCellVertialList()
- {
- return _platingCellVerticalMatcher.Values.Distinct().ToList();
- }
- /// <summary>
- /// 根据Plating获取Vertical
- /// </summary>
- /// <param name="cell"></param>
- /// <returns></returns>
- public string GetPlatingVerticalByCell(string cell)
- {
- if (_platingCellVerticalMatcher.ContainsKey(cell))
- {
- return _platingCellVerticalMatcher[cell];
- }
- else
- {
- return "";
- }
- }
- /// <summary>
- /// 获取垂直电机的Mathcer集合
- /// </summary>
- /// <param name="vertical"></param>
- /// <returns></returns>
- public List<string> GetMatcherListByVertical(string vertical)
- {
- if (_verticalMatcherListDic.ContainsKey(vertical))
- {
- return _verticalMatcherListDic[vertical];
- }
- else
- {
- return null;
- }
- }
- }
- }
|