biz_reUpload.cs 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7. using Newtonsoft.Json;
  8. using Saraff.Twain;
  9. using HXX.Scanner.Socket;
  10. using HXX.Scanner.Common;
  11. namespace HXX.Scanner.Biz.Socket
  12. {
  13. /// <summary>
  14. /// 业务处理 重传
  15. /// </summary>
  16. public class biz_reUpload
  17. {
  18. public static List<Database.tb_file_info> current_list = new List<Database.tb_file_info>();
  19. public static del_notify_startScan on_startScan;
  20. /// <summary>
  21. /// 主业务
  22. /// </summary>
  23. /// <param name="connId"></param>
  24. /// <param name="data"></param>
  25. public static void Work(IntPtr connId, cmd_reUpload data)
  26. {
  27. try
  28. {
  29. if (config_environment.scan_state == true || !http_manager.check_is_queue_empty())
  30. {
  31. var response = new response_reUpload_error()
  32. {
  33. batchNumber = data.batchNumber,
  34. subjectCode = data.subjectCode,
  35. code = 500,
  36. msg = "扫描正在进行中或有尚未完成的上传",
  37. };
  38. //SocketServerManager.Send_Family(connId, response.ToJson());
  39. SocketServerManager.Send_Single(connId, response.ToJson());
  40. }
  41. else
  42. {
  43. config_environment.web_parameter.batchNumber = data.batchNumber;
  44. config_environment.web_parameter.subjectCode = data.subjectCode;
  45. config_environment.web_parameter.uploadUrl = data.uploadUrl;
  46. config_environment.web_parameter.jsonParam = data.jsonParam;
  47. config_environment.web_parameter.token = data.token;
  48. config_environment.scan_state = true;
  49. on_startScan(data.uploadUrl);
  50. var list = new biz_db().get_not_upload_list(data.batchNumber, data.subjectCode);
  51. current_list = list;
  52. if (list.Count > 0)
  53. {
  54. foreach (var record in list)
  55. {
  56. var eq = new upf() { entity = record, result = new ResponseEntity<response_http_uploadImg2>(), upload_type = upload_type_enum.reUpload };
  57. new http_manager().Upload(eq);
  58. }
  59. }
  60. else
  61. {
  62. var response_finish = new response_reUpload_all_finish() { subjectCode = data.subjectCode, batchNumber = data.batchNumber, number = 0, failedNumber = 0 };
  63. //SocketServerManager.Send_Family(connId, response_finish.ToJson());
  64. SocketServerManager.Send_Single(connId, response_finish.ToJson());
  65. }
  66. }
  67. }
  68. catch (Exception ee)
  69. {
  70. var response = new response_reUpload_error()
  71. {
  72. batchNumber = data.batchNumber,
  73. subjectCode = data.subjectCode,
  74. code = 500,
  75. msg = ee.Message,
  76. };
  77. //SocketServerManager.Send_Family(connId, response.ToJson());
  78. SocketServerManager.Send_Single(connId, response.ToJson());
  79. }
  80. finally
  81. {
  82. config_environment.scan_state = false;
  83. }
  84. }
  85. }
  86. }