개정판 1d79913e
issue #00000 error notice mail 안 되는 문제 수정
Change-Id: I307236bdea2ca63347b99a174c02e1e53f05a3a7
ConvertService/ServiceBase/Markus.Service.Station/StationService/ServiceStationWCF.cs | ||
---|---|---|
47 | 47 |
return result; |
48 | 48 |
} |
49 | 49 |
|
50 |
|
|
51 |
/// <summary> |
|
52 |
/// Main Station에서 전달받은 convert item |
|
53 |
/// </summary> |
|
54 |
/// <param name="ProjectNo"></param> |
|
55 |
/// <param name="ConvertID"></param> |
|
56 |
/// <returns></returns> |
|
57 |
public string PassConvert(string ProjectNo, string ConvertID) |
|
58 |
{ |
|
59 |
string result = false.ToString(); |
|
60 |
|
|
61 |
try |
|
62 |
{ |
|
63 |
using (Markus.Service.DataBase.ConvertDatabase database = new Markus.Service.DataBase.ConvertDatabase(MarkusDBConnectionString)) |
|
64 |
{ |
|
65 |
var convertItem = database.GetConvertItem(ProjectNo, ConvertID); |
|
66 |
|
|
67 |
/// 순서별 Convert Item 처리 |
|
68 |
if (convertItem != null) |
|
69 |
{ |
|
70 |
if (AliveConvertQueue.Count(c => c.UniqueKey == convertItem.UniqueKey) == 0) |
|
71 |
{ |
|
72 |
result = ConvertProcessAdd(ProjectNo, ConvertID); |
|
73 |
logger.Info($"PassConvert Item ProjectNo : {ProjectNo} ConvertID : {ConvertID} result : {result}"); |
|
74 |
} |
|
75 |
else |
|
76 |
{ |
|
77 |
|
|
78 |
} |
|
79 |
} |
|
80 |
} |
|
81 |
} |
|
82 |
catch (Exception ex) |
|
83 |
{ |
|
84 |
result = $"PassConvert Error {ConvertID}"; |
|
85 |
logger.Error($"PassConvert Error- {ConvertID}", ex); |
|
86 |
} |
|
87 |
|
|
88 |
return result; |
|
89 |
} |
|
90 |
|
|
91 |
|
|
50 | 92 |
/// <summary> |
51 | 93 |
/// 별도의 호출 사용 |
52 | 94 |
/// </summary> |
... | ... | |
150 | 192 |
{ |
151 | 193 |
try |
152 | 194 |
{ |
153 |
if (AliveConvertQueue.Count(c => c.UniqueKey == convertItem.UniqueKey) == 0)
|
|
195 |
if (AliveConvertQueue.Find(c => c.UniqueKey == convertItem.UniqueKey) == null)
|
|
154 | 196 |
{ |
155 | 197 |
if (AliveConvertQueue.Count() < ServiceProperty.PROCESS_COUNT) |
156 | 198 |
{ |
157 | 199 |
convertItem.ServiceID = this.ServiceID; |
158 | 200 |
AliveConvertQueue.Add(convertItem); |
159 |
|
|
201 |
|
|
160 | 202 |
var startResult = ConvertProcessStart(convertItem); |
161 | 203 |
|
162 | 204 |
if(!startResult) |
... | ... | |
168 | 210 |
} |
169 | 211 |
else |
170 | 212 |
{ |
171 |
//logger.Warn($"ConvertProcessAdd PassConvertItem ProcessCount ProjectNo:{ProjectNo} convertID:{convertID} ");
|
|
172 |
///// sub service (다른ip의 서비스로 보낸다) 이중화
|
|
173 |
//PassConvertItem(ProjectNo, convertID, convertItem.UniqueKey,true);
|
|
174 |
|
|
175 |
|
|
213 |
logger.Warn($"ConvertProcessAdd PassConvertItem ProcessCount ProjectNo:{ProjectNo} convertID:{convertID} "); |
|
214 |
/// sub service (다른ip의 서비스로 보낸다) 이중화 |
|
215 |
PassConvertItem(ProjectNo, convertID, convertItem.UniqueKey, true);
|
|
216 |
|
|
217 |
|
|
176 | 218 |
result = true.ToString(); |
177 | 219 |
} |
178 | 220 |
} |
... | ... | |
208 | 250 |
/// <returns></returns> |
209 | 251 |
public bool ConvertProcessState(string ConvertID, int status, int CurrentPage, int TotalPage, string Error) |
210 | 252 |
{ |
211 |
var items = AliveConvertQueue.Where(x => x.ConvertID == ConvertID); |
|
212 |
|
|
213 |
if (items.Count() > 0) |
|
253 |
if (AliveConvertQueue.Count() > 0) |
|
214 | 254 |
{ |
215 |
var item = items.First();
|
|
255 |
var items = AliveConvertQueue.Where(x => x.ConvertID == ConvertID);
|
|
216 | 256 |
|
217 |
item.TotalPage = TotalPage; |
|
218 |
item.CurrentPageNo = CurrentPage; |
|
219 |
item.ConvertState = (StatusCodeType)status; |
|
220 |
} |
|
257 |
if (items.Count() > 0) |
|
258 |
{ |
|
259 |
var item = items.First(); |
|
221 | 260 |
|
261 |
item.TotalPage = TotalPage; |
|
262 |
item.CurrentPageNo = CurrentPage; |
|
263 |
item.ConvertState = (StatusCodeType)status; |
|
264 |
} |
|
265 |
} |
|
266 |
|
|
222 | 267 |
if (CurrentPage % SaveStatusInterval == 0 || !Error.IsNullOrEmpty()) |
223 | 268 |
{ |
224 | 269 |
using (Markus.Service.DataBase.ConvertDatabase database = new Markus.Service.DataBase.ConvertDatabase(MarkusDBConnectionString)) |
내보내기 Unified diff