333
schangxiang@126.com
2025-09-19 18966e02fb573c7e2bb0c6426ed792b38b910940
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
using IWareCommon.Help;
using S7Test.CacheInfo;
using S7Test.Properties;
using S7Test.WCFEntity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
 
namespace S7Test.WCF
{
    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的类名“DevInfoService”。
    public class DevInfoService : IDevInfoService
    {
        /// <summary>
        /// 获取堆垛机各个属性的值
        /// </summary>
        /// <param name="stackName">堆垛机名称</param>
        /// <param name="msg">异常错误信息</param>
        /// <returns>堆垛机各个属性的值</returns>
        public SrmInfoEntity GetStackInfo(string stackName, out string msg)
        {
            try
            {
                msg = "";
                var stacker = CacheEntity.Srms.FirstOrDefault(x => x.SrmName == stackName);
                return new SrmInfoEntity(stacker);
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "GetStackInfo", msg);
                return null;
            }
        }
        /// <summary>
        /// 获取堆垛机
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        public List<SrmInfoEntity> GetStackInfos(out string msg)
        {
            try
            {
                msg = "";
                var stackerInfos = new List<SrmInfoEntity>();
                CacheEntity.Srms.ForEach(x => stackerInfos.Add(new SrmInfoEntity(x)));
                return stackerInfos;
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "GetStackInfos", msg);
                return null;
            }
        }
 
        /// <summary>
        /// 获取RGV各个属性的值
        /// </summary>
        /// <param name="stackName">RGV名称</param>
        /// <param name="msg">异常错误信息</param>
        /// <returns>RGV各个属性的值</returns>
        public RgvInfoEntity GetRGVInfo(string rgvName, out string msg)
        {
            try
            {
                msg = "";
                var rgv = CacheEntity.Rgvs.FirstOrDefault(x => x.RgvName == rgvName);
                return new RgvInfoEntity(rgv);
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "GetRGVInfo", msg);
                return null;
            }
        }
        /// <summary>
        /// 获取RGV
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        public List<RgvInfoEntity> GetRGVInfos(out string msg)
        {
            try
            {
                msg = "";
                var rgvInfos = new List<RgvInfoEntity>();
                CacheEntity.Rgvs.ForEach(x => rgvInfos.Add(new RgvInfoEntity(x)));
                return rgvInfos;
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "GetRGVInfos", msg);
                return null;
            }
        }
 
        /// <summary>
        /// 获取输送线各个属性的值
        /// </summary>
        /// <param name="stackName">输送线名称</param>
        /// <param name="msg">异常错误信息</param>
        /// <returns>输送线各个属性的值</returns>
        public ConveyorInfoEntity GetConveyorInfo(string cyName, out string msg)
        {
            try
            {
                msg = "";
                var cy = CacheEntity.Conveyors.FirstOrDefault(x => x.ConveyorName == cyName);
                return new ConveyorInfoEntity(cy);
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "GetConveyorInfo", msg);
                return null;
            }
        }
        /// <summary>
        /// 获取输送线
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        public List<ConveyorInfoEntity> GetConveyorInfos(out string msg)
        {
            try
            {
                msg = "";
                var cyInfos = new List<ConveyorInfoEntity>();
                CacheEntity.Conveyors.ForEach(x => cyInfos.Add(new ConveyorInfoEntity(x)));
                return cyInfos;
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                LogTextHelper.WriteLog(Resources.LogDir, this.ToString(), "GetConveyorInfos", msg);
                return null;
            }
        }
    }
}