You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
8 lines
7.5 KiB
8 lines
7.5 KiB
import{_ as k}from"./index.vue_vue_type_script_setup_true_lang-Q6sPmgzz.js";import{d as g}from"./dashboard-YyjCL4ge.js";import{d as z,s as _,t as b,H as F,v as L,o as B,b as J,q as e,w as o,J as r,u as i,e as p,F as M}from"./index-bVOhw2NF.js";import{u as $}from"./Scrollbar-Db3aKfvv.js";import{_ as j}from"./text-ClDrYWYc.js";import{_ as q}from"./Select-BpXzRZdb.js";import{_ as A}from"./FormItem-Cp_SJVoE.js";import{_ as G}from"./Input-CFQSA5NN.js";import{_ as H}from"./Badge-DsyC0t2f.js";import{_ as R}from"./Tooltip-C_3SXSAr.js";import{_ as K}from"./Card-BhgyLFi8.js";import{_ as Q}from"./Switch-DWvSWYoO.js";import{_ as W}from"./InputNumber-BUVD-lKD.js";import{_ as X}from"./Form-BZRGTIxb.js";import"./toggleHighContrast-BiNrcRtm.js";import"./editorWorker-UB-8rWUJ.js";import"./http-D9Asdp-z.js";import"./light-Cua7cqmF.js";import"./context-KbjOeZY_.js";import"./_initCloneObject-K-Y0ueWp.js";import"./_baseFor-mOzdmxoL.js";import"./fade-in.cssr-CltBGdAW.js";import"./light-BKuBIbLH.js";import"./index-C-nsH7mf.js";import"./use-compitable-DMmt6sIs.js";import"./Loading-CByrJVhO.js";import"./icon-switch.cssr-BCTOxvoq.js";import"./use-is-mounted-wlrzLfZo.js";import"./use-style-qLHIyj3D.js";import"./use-rtl-CRyak7TN.js";import"./light-uWHRDFKR.js";import"./light-CE5Kvs_2.js";import"./light-B00G814I.js";import"./Scrollbar-DVK2lT9w.js";import"./delegate-CI_DDEu_.js";import"./VResizeObserver-Tzd5ds8d.js";import"./get-precise-event-target-DhO46Lpt.js";import"./light-MOj96jwO.js";import"./use-locale-CFjRjALw.js";import"./index-Dn5RNViO.js";import"./use-merged-state-CzrzZJbg.js";import"./resolve-slot-Dzko3qih.js";import"./Icon-Ck7Ij_E6.js";import"./upperFirst-Bq7Kgunw.js";import"./toString-eibgRg41.js";import"./Forward-B4Y9XmRi.js";import"./Popover-DLIip8wF.js";import"./fade-in-scale-up.cssr-CTZmXn_X.js";import"./use-false-until-truthy-BNJRTcsy.js";import"./_baseEach-BwxcRWC6.js";import"./_getTag-BJ2nhJXz.js";import"./get-BuNGRF3A.js";import"./clickoutside-CCtiUDaG.js";import"./format-length-B-p6aW7q.js";import"./Follower-DJGS5Fnl.js";import"./use-memo-BgHp9YyU.js";import"./cssr-CS9sbUmO.js";import"./utils-BKyMmInE.js";import"./index-C9vhMoZJ.js";import"./flatten-7z_8MaI9.js";import"./index-L98eAIry.js";import"./keep-B1eBS8j0.js";import"./call-f2ri57Kd.js";import"./keysOf-HiGXOwLp.js";import"./happens-in-CM8LO42l.js";import"./omit-DbnPTcif.js";import"./context-CNWzaUOd.js";import"./light-Blmb_y9V.js";import"./use-form-item-CNgNT5jP.js";import"./render-BxFg9-7m.js";import"./Suffix-BqBRFVnL.js";import"./light-BOD3MGQo.js";import"./color-to-class-B0iQgAn2.js";import"./Close-D6FODkWY.js";import"./FocusDetector-DcygY9Tk.js";import"./index-DsSU6HIH.js";import"./light-CUlEsFk3.js";import"./browser-DLIXj5nt.js";import"./is-browser-DqcmxZSF.js";import"./light-BklEEixl.js";import"./Button-B7xQqa1N.js";import"./light-C52Zdmem.js";import"./light-BqIgj82_.js";import"./light-CdWU_bnm.js";import"./_common-CtIASumb.js";import"./light-BULoejUF.js";import"./Add-CgLKrdZy.js";const Y={class:"function-card-header"},Z={class:"function-card-footer"},h=`
|
|
// console.log('deviceInfo', deviceInfo, 'command', command, 'event', event);
|
|
// 入参提示: deviceInfo -- 设备信息,command -- 指令信息, event -- 事件传参(当前部件所绑定的立即值,或当前部件经过计算后的自定义值), 入参计算。。。然后返回出参
|
|
return {
|
|
"condition": "",
|
|
"controlId": command.id,
|
|
"event": event
|
|
}`,zo=z({__name:"DispatchCommand",props:{modelValue:{default:()=>({})},currAction:{default:()=>({name:"",type:"dispatchCommand",targetId:"",targetProps:{}})}},emits:["update:modelValue"],setup(w,{emit:x}){const y=w,I=x,n=_({enable:!0,delay:0,device:"",command:"",params:h,method:"POST",url:"/thing/device/control/control"}),T=[{label:"GET",value:"GET"},{label:"POST",value:"POST"},{label:"PUT",value:"PUT"},{label:"DELETE",value:"DELETE"}],c=$(),f=_([]);async function V(){const l=await g.getDeviceList();if(l.code!==0)return c.warning(l.msg);f.value=l.data||[]}const v=_([]);async function E(l){const t=await g.getCommandList(l);if(t.code!==0)return c.warning(t.msg);v.value=t.data||[]}function U(l){n.value.device=l,n.value.command="",E(l)}return b(()=>y.modelValue,l=>{const t=JSON.parse(l.device||"{}");Object.assign(n.value,{...l,device:(t==null?void 0:t.thingId)||""})},{immediate:!0}),b(n,l=>{const t=f.value.find(d=>d.thingId===l.device),s={...l,device:JSON.stringify(F(t))};I("update:modelValue",s)},{deep:!0}),L(()=>{V()}),(l,t)=>{const s=j,d=q,a=A,C=G,D=H,u=R,N=K,O=Q,P=W,S=X;return B(),J(M,null,[e(s,{class:"color-[#999]"},{default:o(()=>t[6]||(t[6]=[r(" 下发指令配置 ")])),_:1}),e(S,{"label-width":"70px",style:{width:"100%","margin-top":"10px"},"label-placement":"left","label-align":"left",size:"small","show-feedback":!1},{default:o(()=>[e(a,{label:"选择设备",class:"mb-3"},{default:o(()=>[e(d,{value:i(n).device,options:i(f),"label-field":"name","value-field":"thingId",placeholder:"请选择设备","on-update:value":U,style:{width:"200px"}},null,8,["value","options"])]),_:1}),e(a,{label:"选择指令",class:"mb-3"},{default:o(()=>[e(d,{value:i(n).command,"onUpdate:value":t[0]||(t[0]=m=>i(n).command=m),options:i(v),"label-field":"ctlName","value-field":"ctlId",placeholder:"请选择指令",style:{width:"200px"}},null,8,["value","options"])]),_:1}),e(a,{label:"请求方式",class:"mb-3"},{default:o(()=>[e(d,{value:i(n).method,"onUpdate:value":t[1]||(t[1]=m=>i(n).method=m),placeholder:"请求方式",style:{width:"200px","margin-right":"10px"},options:T},null,8,["value"])]),_:1}),e(a,{label:"请求地址",class:"mb-3"},{default:o(()=>[e(C,{value:i(n).url,"onUpdate:value":t[2]||(t[2]=m=>i(n).url=m),placeholder:"地址",style:{width:"400px"}},null,8,["value"])]),_:1}),e(a,{label:"入参",class:"mb-3"},{label:o(()=>[t[8]||(t[8]=r(" 入参 ")),e(u,null,{trigger:o(()=>[e(D,{value:"?",class:"ml-2",color:"gray"})]),default:o(()=>[t[7]||(t[7]=r(" 指令下发必填的入参 "))]),_:1})]),default:o(()=>[e(N,{class:"filter-function-card mt-3"},{header:o(()=>[p("div",Y,[e(s,{style:{"font-size":"14px","font-weight":"500"}},{default:o(()=>[e(u,null,{trigger:o(()=>t[9]||(t[9]=[p("span",{class:"mr-1 color-[#b478cf] decoration-underline"},"filter",-1)])),default:o(()=>[t[10]||(t[10]=r(" 自定义入参过滤函数,返回 { [key]: [value] } 对象 "))]),_:1}),t[17]||(t[17]=r(" ( ")),e(u,null,{trigger:o(()=>t[11]||(t[11]=[p("span",{class:"mr-2 decoration-underline"},"deviceInfo,",-1)])),default:o(()=>[t[12]||(t[12]=r(" 当前选择的设备信息:任意类型 "))]),_:1}),e(u,null,{trigger:o(()=>t[13]||(t[13]=[p("span",{class:"mr-2 decoration-underline"},"command,",-1)])),default:o(()=>[t[14]||(t[14]=r(" 当前选择的指令信息:任意类型 "))]),_:1}),e(u,null,{trigger:o(()=>t[15]||(t[15]=[p("span",{class:"decoration-underline"},"event",-1)])),default:o(()=>[t[16]||(t[16]=r(" 事件触发值 "))]),_:1}),t[18]||(t[18]=r(" ) { "))]),_:1})])]),default:o(()=>[e(k,{modelValue:i(n).params,"onUpdate:modelValue":t[3]||(t[3]=m=>i(n).params=m),mode:"javascript","show-line-numbers":!1,"show-gutter":!1,height:"300px"},null,8,["modelValue"])]),footer:o(()=>[p("div",Z,[e(s,{style:{"font-size":"14px","font-weight":"500"}},{default:o(()=>t[19]||(t[19]=[r(" } ")])),_:1})])]),_:1})]),_:1}),e(a,{label:"启用",class:"mb-3"},{default:o(()=>[e(O,{value:i(n).enable,"onUpdate:value":t[4]||(t[4]=m=>i(n).enable=m),size:"small"},null,8,["value"])]),_:1}),e(a,{label:"延迟",class:"mb-3"},{default:o(()=>[e(P,{value:i(n).delay,"onUpdate:value":t[5]||(t[5]=m=>i(n).delay=m),style:{width:"100px"},"show-button":!1},{suffix:o(()=>t[20]||(t[20]=[r(" 秒 ")])),_:1},8,["value"])]),_:1})]),_:1})],64)}}});export{zo as default};
|