setting.js 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. 'use strict';
  2. const { Controller } = require('ee-core');
  3. const Log = require('ee-core/log');
  4. const Services = require('ee-core/services');
  5. const path = require('path');
  6. const fs = require('fs');
  7. const {
  8. getDeviceConfigs,
  9. getDeviceConfigDetail,
  10. getDeviceConfigDetailQuery,
  11. removeConfig,
  12. saveDeviceConfig,
  13. resetDeviceConfig,
  14. updateSysConfigs,
  15. getSysConfig,
  16. getDeviceTabs,
  17. updateLeftRightConfig,
  18. updateTabName,
  19. syncSysConfigs,
  20. syncPhotoRecord,
  21. syncActions
  22. } = require('../api/setting');
  23. const errData = {
  24. msg :'请求失败,请联系管理员',
  25. code:999
  26. }
  27. /**
  28. * 设置控制器
  29. * @class
  30. */
  31. class SettingController extends Controller {
  32. constructor(ctx) {
  33. super(ctx);
  34. this.configPath = path.join(__dirname, '..', 'config', 'app.config.json');
  35. }
  36. /**
  37. * 获取设备配置列表
  38. */
  39. async getDeviceConfigList(args) {
  40. try {
  41. const result = await getDeviceConfigs(args);
  42. if(result.data) return result.data
  43. return errData;
  44. } catch (error) {
  45. Log.error('获取设备配置列表失败:', error);
  46. return errData;
  47. }
  48. }
  49. /**
  50. * 获取二级 设备配置列表
  51. */
  52. async getDeviceTabs(args) {
  53. try {
  54. const result = await getDeviceTabs(args);
  55. if(result.data) return result.data
  56. return errData;
  57. } catch (error) {
  58. Log.error('获取设备配置二级列表失败:', error);
  59. return errData;
  60. }
  61. }
  62. /**
  63. * 获取设备配置详情
  64. * @param {Object} args - 配置ID
  65. */
  66. async getDeviceConfigDetail(args) {
  67. try {
  68. let fun = getDeviceConfigDetail
  69. if(!args.id) {
  70. fun = getDeviceConfigDetailQuery
  71. }
  72. const result = await fun(args);
  73. if(result.data) return result.data
  74. return errData;
  75. } catch (error) {
  76. Log.error('获取设备配置详情失败:', error);
  77. return errData;
  78. }
  79. }
  80. /**
  81. * 删除设备配置
  82. * @param {Object} args - 配置ID
  83. */
  84. async removeDeviceConfig(args) {
  85. try {
  86. const result = await removeConfig(args)
  87. if(result.data) return result.data
  88. return errData;
  89. } catch (error) {
  90. Log.error('删除设备配置失败:', error);
  91. return errData;
  92. }
  93. }
  94. /**
  95. * 保存设备配置
  96. * @param {Object} args - 配置内容
  97. */
  98. async saveDeviceConfig(args) {
  99. try {
  100. const result = await saveDeviceConfig(args);
  101. if(result.data) return result.data
  102. return errData;
  103. } catch (error) {
  104. Log.error('保存设备配置失败:', error);
  105. return errData;
  106. }
  107. }
  108. async updateLeftRightConfig(args) {
  109. try {
  110. const result = await updateLeftRightConfig(args);
  111. if(result.data) return result.data
  112. return errData;
  113. } catch (error) {
  114. Log.error('更新左右脚失败:', error);
  115. return errData;
  116. }
  117. }
  118. /**
  119. * 重置设备配置
  120. * @param {Object} args - 配置ID
  121. */
  122. async resetDeviceConfig(args) {
  123. try {
  124. const result = await resetDeviceConfig(args);
  125. if(result.data) return result.data
  126. return errData;
  127. } catch (error) {
  128. Log.error('重置设备配置失败:', error);
  129. return errData;
  130. }
  131. }
  132. async updateTabName(args) {
  133. try {
  134. const result = await updateTabName(args);
  135. if(result.data) return result.data
  136. return errData;
  137. } catch (error) {
  138. Log.error('重命名配置失败:', error);
  139. return errData;
  140. }
  141. }
  142. /**
  143. * 读取配置
  144. * @param {Object} args - 配置ID
  145. */
  146. async getSysConfig(args) {
  147. try {
  148. const result = await getSysConfig(args);
  149. if(result.data) return result.data
  150. return errData;
  151. } catch (error) {
  152. Log.error('重置设备配置失败:', error);
  153. return errData;
  154. }
  155. }
  156. /**
  157. * 保存配置
  158. * @param {Object} args - 配置ID
  159. */
  160. async updateSysConfigs(args) {
  161. try {
  162. const result = await updateSysConfigs(args);
  163. if(result.data) return result.data
  164. return errData;
  165. } catch (error) {
  166. Log.error('保存配置:', error);
  167. return errData;
  168. }
  169. }
  170. /**
  171. * 同步创作历史
  172. * @param {Object} token
  173. */
  174. async syncPhotoRecord(args) {
  175. try {
  176. const result = await syncPhotoRecord(args);
  177. if(result.data) return result.data
  178. return errData;
  179. } catch (error) {
  180. Log.error('同步配置接口:', error);
  181. return errData;
  182. }
  183. }
  184. /**
  185. * 同步配置接口
  186. * @param {Object} token
  187. */
  188. async syncSysConfigs(args) {
  189. try {
  190. const result = await syncSysConfigs(args);
  191. if(result.data) return result.data
  192. return errData;
  193. } catch (error) {
  194. Log.error('同步配置接口:', error);
  195. return errData;
  196. }
  197. }
  198. /**
  199. * 同步左右脚配置
  200. * @param {Object} token
  201. */
  202. async syncActions(args) {
  203. try {
  204. const result = await syncActions(args);
  205. if(result.data){
  206. await syncSysConfigs(args);
  207. return result.data
  208. }
  209. return errData;
  210. } catch (error) {
  211. Log.error('同步左右脚配置:', error);
  212. return errData;
  213. }
  214. }
  215. }
  216. SettingController.toString = () => '[class SettingController]';
  217. module.exports = SettingController;