setting.js 6.0 KB

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