CNAS取数仪器端升级
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

356 linhas
13KB

  1. using CnasSynchronousCommon;
  2. using CnasSynchrousModel;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Configuration;
  6. using System.Linq;
  7. using System.Text;
  8. namespace CnasSynchronusClient
  9. {
  10. public class FileOperation
  11. {
  12. private static readonly string strLocalConfigPath = FileHelper.getBasePath() + @"\Data\";
  13. private static readonly string strLocalDocumentPath= FileHelper.getBasePath() + @"\Document\";
  14. private static readonly string strInitalPwd = ConfigurationManager.AppSettings["InitalOperationPwd"].ToString(); //默认初始密码
  15. private static readonly string strLocalConfigPath_2 = FileHelper.getBasePath() + @"\DataConfig\";
  16. /// <summary>
  17. /// 从本地读取CNAS数据库连接
  18. /// </summary>
  19. /// <returns></returns>
  20. public static DataBaseInfo GetLocalCnasDB()
  21. {
  22. DataBaseInfo dataBase = new DataBaseInfo();
  23. try
  24. {
  25. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath, "SyncCnasDataBase.mes");
  26. if (strLocalFileString != "")
  27. {
  28. string strDncryptString = EncryptionOperation.Decrypt(strLocalFileString, "NZJXD--CnasClientJXDJXDJ");
  29. dataBase = FileHelper.DeserializeToObject<DataBaseInfo>(strDncryptString);
  30. }
  31. }
  32. catch (Exception ex)
  33. {
  34. AppLog.Error(ex.Message);
  35. }
  36. return dataBase;
  37. }
  38. /// <summary>
  39. /// 保存CNAS数据库连接到本地
  40. /// </summary>
  41. /// <param name="dataBase"></param>
  42. /// <returns></returns>
  43. public static bool SaveLocalCnasDB(DataBaseInfo dataBase)
  44. {
  45. bool bIfSuccess = true;
  46. try
  47. {
  48. string strString = FileHelper.SerializeToXml<DataBaseInfo>(dataBase);
  49. string strEncrypString = EncryptionOperation.Encrypt(strString, "NZJXD--CnasClientJXDJXDJ");
  50. bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath, "SyncCnasDataBase.mes", strEncrypString);
  51. }
  52. catch (Exception ex)
  53. {
  54. AppLog.Error(ex.Message);
  55. }
  56. return bIfSuccess;
  57. }
  58. /// <summary>
  59. /// 从本地读取CNAS数据库连接
  60. /// </summary>
  61. /// <returns></returns>
  62. public static DataBaseInfo GetLocalPlatFormDB()
  63. {
  64. DataBaseInfo dataBase = new DataBaseInfo();
  65. try
  66. {
  67. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath, "SyncPlatDataBase.mes");
  68. if (strLocalFileString != "")
  69. {
  70. string strDncryptString = EncryptionOperation.Decrypt(strLocalFileString, "NZJXD--CnasClientJXDJXDJ");
  71. dataBase = FileHelper.DeserializeToObject<DataBaseInfo>(strDncryptString);
  72. }
  73. }
  74. catch (Exception ex)
  75. {
  76. AppLog.Error(ex.Message);
  77. }
  78. return dataBase;
  79. }
  80. /// <summary>
  81. /// 保存CNAS数据库连接到本地
  82. /// </summary>
  83. /// <param name="dataBase"></param>
  84. /// <returns></returns>
  85. public static bool SaveLocalPlatDB(DataBaseInfo dataBase)
  86. {
  87. bool bIfSuccess = true;
  88. try
  89. {
  90. string strString = FileHelper.SerializeToXml<DataBaseInfo>(dataBase);
  91. string strEncrypString = EncryptionOperation.Encrypt(strString, "NZJXD--CnasClientJXDJXDJ");
  92. bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath, "SyncPlatDataBase.mes", strEncrypString);
  93. }
  94. catch (Exception ex)
  95. {
  96. AppLog.Error(ex.Message);
  97. }
  98. return bIfSuccess;
  99. }
  100. /// <summary>
  101. /// 读取本地操作密码
  102. /// </summary>
  103. /// <returns></returns>
  104. public static string GetLocalOperationPwd()
  105. {
  106. string strPwd = "";
  107. try
  108. {
  109. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath, "SyncOperationPwd.mes");
  110. if (strLocalFileString != "")
  111. {
  112. strPwd = EncryptionOperation.Decrypt(strLocalFileString, "NZJXD--CnasClientJXDJXDJ");
  113. if (strPwd == "")
  114. strPwd = strInitalPwd;
  115. }
  116. else //如果没有获取到,认为本地没有符合要求的配置文件,则重新构建一个保存起来
  117. {
  118. strPwd = strInitalPwd;
  119. SaveLocalOperationPwd(strInitalPwd);
  120. }
  121. }
  122. catch (Exception ex)
  123. {
  124. strPwd = strInitalPwd;
  125. AppLog.Error(ex.Message);
  126. }
  127. return strPwd;
  128. }
  129. /// <summary>
  130. /// 保存操作密码到本地
  131. /// </summary>
  132. /// <param name="strPwd"></param>
  133. /// <returns></returns>
  134. public static bool SaveLocalOperationPwd(string strPwd)
  135. {
  136. bool bIfSuccess = true;
  137. try
  138. {
  139. string strEncrypString = EncryptionOperation.Encrypt(strPwd, "NZJXD--CnasClientJXDJXDJ");
  140. bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath, "SyncOperationPwd.mes", strEncrypString);
  141. }
  142. catch (Exception ex)
  143. {
  144. AppLog.Error(ex.Message);
  145. }
  146. return bIfSuccess;
  147. }
  148. /// <summary>
  149. /// 获得本地保存的仪器相关配置
  150. /// </summary>
  151. /// <returns></returns>
  152. public static List<SyncInstrumentItemInfo> GetLocalSyncInStrumentData()
  153. {
  154. List<SyncInstrumentItemInfo> lstSyncInstrument = new List<SyncInstrumentItemInfo>();
  155. try
  156. {
  157. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath, "SyncInStrumentData.mes");
  158. if (strLocalFileString != "")
  159. {
  160. string strDncryptString = EncryptionOperation.Decrypt(strLocalFileString, "NZJXD--CnasClientJXDJXDJ");
  161. lstSyncInstrument = FileHelper.DeserializeToObject<List<SyncInstrumentItemInfo>>(strDncryptString);
  162. }
  163. }
  164. catch (Exception ex)
  165. {
  166. AppLog.Error(ex.Message);
  167. }
  168. return lstSyncInstrument;
  169. }
  170. public static List<SyncInstrumentItemInfo> GetLocalSyncInStrumentData_NoDecrypt()
  171. {
  172. List<SyncInstrumentItemInfo> lstSyncInstrument = new List<SyncInstrumentItemInfo>();
  173. try
  174. {
  175. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath, "SyncInStrumentData.mes");
  176. if(strLocalFileString!="")
  177. lstSyncInstrument = FileHelper.DeserializeToObject<List<SyncInstrumentItemInfo>>(strLocalFileString);
  178. }
  179. catch (Exception ex)
  180. {
  181. AppLog.Error(ex.Message);
  182. }
  183. return lstSyncInstrument;
  184. }
  185. /// <summary>
  186. /// 保存仪器配置到本地
  187. /// </summary>
  188. /// <param name="lstSyncInstrument"></param>
  189. /// <returns></returns>
  190. public static bool SaveLocalSyncInStrumentData(List<SyncInstrumentItemInfo> lstSyncInstrument)
  191. {
  192. bool bIfSuccess = true;
  193. try
  194. {
  195. string strString = FileHelper.SerializeToXml<List<SyncInstrumentItemInfo>>(lstSyncInstrument);
  196. string strEncrypString = EncryptionOperation.Encrypt(strString, "NZJXD--CnasClientJXDJXDJ");
  197. bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath, "SyncInStrumentData.mes", strEncrypString);
  198. }
  199. catch (Exception ex)
  200. {
  201. AppLog.Error(ex.Message);
  202. }
  203. return bIfSuccess;
  204. }
  205. /// <summary>
  206. /// 获取本地存储的天平端字段配置信息
  207. /// </summary>
  208. /// <returns></returns>
  209. public static List<SyncBalanceItem> GetLocalBalanceData()
  210. {
  211. List<SyncBalanceItem> lstBalanceData = new List<SyncBalanceItem>();
  212. try
  213. {
  214. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath, "SyncBalanceData.mes");
  215. if (strLocalFileString != "")
  216. {
  217. string strDncryptString = EncryptionOperation.Decrypt(strLocalFileString, "NZJXD--CnasClientJXDJXDJ");
  218. lstBalanceData = FileHelper.DeserializeToObject<List<SyncBalanceItem>>(strDncryptString);
  219. }
  220. }
  221. catch (Exception ex)
  222. {
  223. AppLog.Error(ex.Message);
  224. }
  225. return lstBalanceData;
  226. }
  227. public static bool SaveLocalBalanceData(List<SyncBalanceItem> lstBalanceData)
  228. {
  229. bool bIfSuccess = true;
  230. try
  231. {
  232. string strString = FileHelper.SerializeToXml<List<SyncBalanceItem>>(lstBalanceData);
  233. string strEncrypString = EncryptionOperation.Encrypt(strString, "NZJXD--CnasClientJXDJXDJ");
  234. bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath, "SyncBalanceData.mes", strEncrypString);
  235. }
  236. catch (Exception ex)
  237. {
  238. AppLog.Error(ex.Message);
  239. }
  240. return bIfSuccess;
  241. }
  242. //public static AutoFileConfig GetAutoFileConfigData()
  243. //{
  244. // AutoFileConfig autoFileConfig = new AutoFileConfig();
  245. // try
  246. // {
  247. // string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath_2, "AutoFileConfig.xml");
  248. // autoFileConfig = FileHelper.DeserializeToObject<AutoFileConfig>(strLocalFileString);
  249. // }
  250. // catch (Exception ex)
  251. // {
  252. // AppLog.Error(ex.Message);
  253. // }
  254. // return autoFileConfig;
  255. //}
  256. public static SystemFormatConfig GetSystemFormatConfigData()
  257. {
  258. SystemFormatConfig systemFormatConfig = new SystemFormatConfig();
  259. try
  260. {
  261. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath_2, "SystemFormatConfig.xml");
  262. if(strLocalFileString!="")
  263. systemFormatConfig = FileHelper.DeserializeToObject<SystemFormatConfig>(strLocalFileString);
  264. }
  265. catch (Exception ex)
  266. {
  267. AppLog.Error(ex.Message);
  268. }
  269. return systemFormatConfig;
  270. }
  271. public static bool SaveSystemFormatConfigData(SystemFormatConfig systemFormatConfig)
  272. {
  273. bool bIfSuccess = false;
  274. try
  275. {
  276. string strString = FileHelper.SerializeToXml<SystemFormatConfig>(systemFormatConfig);
  277. bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath_2, "SystemFormatConfig.xml", strString);
  278. }
  279. catch (Exception ex)
  280. {
  281. AppLog.Error(ex.Message);
  282. }
  283. return bIfSuccess;
  284. }
  285. //public static AutoInstrumentDSView GetAutoInstrumentDSViewData()
  286. //{
  287. // AutoInstrumentDSView autoInstrumentDSView = new AutoInstrumentDSView();
  288. // try
  289. // {
  290. // string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath_2, "AutoInstrumentDSViewConfig.xml");
  291. // autoInstrumentDSView = FileHelper.DeserializeToObject<AutoInstrumentDSView>(strLocalFileString);
  292. // }
  293. // catch (Exception ex)
  294. // {
  295. // AppLog.Error(ex.Message);
  296. // }
  297. // return autoInstrumentDSView;
  298. //}
  299. /// <summary>
  300. /// 获取配置文件信息
  301. /// </summary>
  302. /// <typeparam name="T"></typeparam>
  303. /// <param name="strFileName"></param>
  304. /// <returns></returns>
  305. public static T GetFormatConfigData<T>(string strFileName)
  306. {
  307. T t ;
  308. try
  309. {
  310. string strLocalFileString = FileHelper.GetLocalFile(strLocalConfigPath_2, strFileName);
  311. t = FileHelper.DeserializeToObject<T>(strLocalFileString);
  312. return t;
  313. }
  314. catch (Exception ex)
  315. {
  316. AppLog.Error(ex.Message);
  317. }
  318. return default(T);
  319. }
  320. public static bool SaveFormatConfigData<T>(T t, string strFileName)
  321. {
  322. bool bIfSuccess = false;
  323. try
  324. {
  325. string strString = FileHelper.SerializeToXml<T>(t);
  326. bIfSuccess = FileHelper.SaveLocalFile(strLocalConfigPath_2, strFileName, strString);
  327. }
  328. catch (Exception ex)
  329. {
  330. AppLog.Error(ex.Message);
  331. }
  332. return bIfSuccess;
  333. }
  334. }
  335. }