checLampStatus.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import { setallLampHttp, getStatusHttp } from '@/services/ant-design-pro/equipment';
  2. import { message } from 'antd';
  3. // 定时调用 查询指令接口
  4. export const checkChangeLightStatusSuccess = (paramsArr, result, fn) => {
  5. let checkParams = paramsArr;
  6. checkParams.forEach((item) => {
  7. item.orderSeqNum = result.orderSeqNum;
  8. });
  9. getStatusHttp(checkParams).then((res) => {
  10. judgeChangeResponeseSuccess(res, paramsArr, fn);
  11. });
  12. };
  13. // 检查开关指令下发状态
  14. export const judgeChangeResponeseSuccess = (response, paramsArr, fn) => {
  15. let result = response.content[0];
  16. if (result.result === 'success') {
  17. if (result.state === 200 && result.exeResult === 'success') {
  18. console.log('成功了');
  19. fn(); // 查询灯设备
  20. } else if (
  21. (result.state === 200 && result.exeResult === 'processing:rcvd') ||
  22. (result.state === 202 && !result.exeResult)
  23. ) {
  24. setTimeout(() => {
  25. checkChangeLightStatusSuccess(paramsArr, result, fn);
  26. }, 500);
  27. }else if (result.state === 200 && result.exeResult === 'fail:timeout') {
  28. message.error('网络超时,请重试');
  29. } else {
  30. message.error('操作失败,请重试');
  31. }
  32. } else {
  33. message.error('操作失败,请重试');
  34. }
  35. };
  36. // 开关
  37. export const setallLamps = (paramsArr, fn) => {
  38. setallLampHttp(paramsArr).then((res) => {
  39. judgeChangeResponeseSuccess(res, paramsArr, fn);
  40. });
  41. };