CSetting.cpp 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. #include "../pch/pch.h"
  2. #include "CSetting.h"
  3. #include "CSqlite3.h"
  4. std::map<std::string, std::string> CSetting::m_paramsMap;
  5. std::vector<ChufangPrinter> CSetting::m_chufang_printers;
  6. std::mutex CSetting::m_mutex;
  7. CSetting::CSetting()
  8. {
  9. }
  10. CSetting::~CSetting()
  11. {
  12. }
  13. void CSetting::SetParam(std::string name, std::string value, bool isSave)
  14. {
  15. m_mutex.lock();
  16. m_paramsMap[name] = value;
  17. m_mutex.unlock();
  18. if (isSave)
  19. {
  20. SaveParams();
  21. }
  22. }
  23. std::string CSetting::GetParam(std::string name)
  24. {
  25. m_mutex.lock();
  26. std::string value = m_paramsMap[name];
  27. m_mutex.unlock();
  28. return value;
  29. }
  30. void CSetting::AddChufangPrinter(std::string name, std::string ip, std::string guige, std::string fendan, std::string fenlei, std::string fenlei_ids, bool isSave)
  31. {
  32. ChufangPrinter newPrinter;
  33. newPrinter.name = name;
  34. newPrinter.ip = ip;
  35. newPrinter.guige = guige;
  36. newPrinter.fendan = fendan;
  37. newPrinter.fenlei = fenlei;
  38. newPrinter.fenlei_ids = fenlei_ids;
  39. m_chufang_printers.push_back(newPrinter);
  40. if (isSave)
  41. {
  42. SaveChufangPrinter();
  43. }
  44. }
  45. void CSetting::Init()
  46. {
  47. m_mutex.lock();
  48. //数据库里面的参数读取完了,接下来对比默认参数
  49. //外卖设置参数
  50. std::string setting_is_new_waimai_voice = "setting_is_new_waimai_voice";
  51. if (m_paramsMap.find(setting_is_new_waimai_voice) == m_paramsMap.end())
  52. {
  53. m_paramsMap[setting_is_new_waimai_voice] = "1";
  54. }
  55. std::string setting_is_new_waimai_autoconfirm = "setting_is_new_waimai_autoconfirm";
  56. if (m_paramsMap.find(setting_is_new_waimai_autoconfirm) == m_paramsMap.end())
  57. {
  58. m_paramsMap[setting_is_new_waimai_autoconfirm] = "1";
  59. }
  60. std::string setting_is_new_waimai_dialog = "setting_is_new_waimai_dialog";
  61. if (m_paramsMap.find(setting_is_new_waimai_dialog) == m_paramsMap.end())
  62. {
  63. m_paramsMap[setting_is_new_waimai_dialog] = "1";
  64. }
  65. //新订单打印设置参数
  66. std::string setting_is_new_waimai_printer = "setting_is_new_waimai_printer";
  67. if (m_paramsMap.find(setting_is_new_waimai_printer) == m_paramsMap.end())
  68. {
  69. m_paramsMap[setting_is_new_waimai_printer] = "1";
  70. }
  71. std::string setting_printer_guige = "setting_printer_guige";
  72. if (m_paramsMap.find(setting_printer_guige) == m_paramsMap.end())
  73. {
  74. m_paramsMap[setting_printer_guige] = "58";
  75. }
  76. std::string setting_printer_lianshu = "setting_printer_lianshu";
  77. if (m_paramsMap.find(setting_printer_lianshu) == m_paramsMap.end())
  78. {
  79. m_paramsMap[setting_printer_lianshu] = "1";
  80. }
  81. //厨房打印的默认参数
  82. std::string setting_is_new_waimai_chufang_printer = "setting_is_new_waimai_chufang_printer";
  83. if (m_paramsMap.find(setting_is_new_waimai_chufang_printer) == m_paramsMap.end())
  84. {
  85. m_paramsMap[setting_is_new_waimai_chufang_printer] = "1";
  86. }
  87. //系统设置的参数
  88. std::string setting_is_auto_start = "setting_is_auto_start";
  89. if (m_paramsMap.find(setting_is_auto_start) == m_paramsMap.end())
  90. {
  91. m_paramsMap[setting_is_auto_start] = "1";
  92. }
  93. std::string setting_is_auto_login = "setting_is_auto_login";
  94. if (m_paramsMap.find(setting_is_auto_login) == m_paramsMap.end())
  95. {
  96. m_paramsMap[setting_is_auto_login] = "1";
  97. }
  98. std::string setting_is_close_min = "setting_is_close_min";
  99. if (m_paramsMap.find(setting_is_close_min) == m_paramsMap.end())
  100. {
  101. m_paramsMap[setting_is_close_min] = "1";
  102. }
  103. m_mutex.unlock();
  104. //设置好默认参数之后,将默认参数写回到数据库
  105. SaveParams();
  106. //厨房打印机没有默认的,这里不需要处理
  107. }
  108. void CSetting::SaveParams()
  109. {
  110. CSqlite3 sqllite;
  111. sqllite.SaveParams(m_paramsMap);
  112. }
  113. void CSetting::SaveChufangPrinter()
  114. {
  115. CSqlite3 sqllite;
  116. sqllite.SaveChufangPrinter(m_chufang_printers);
  117. }