vince
2023-11-08 c62275188c4b8fd34fdfd3555fe634571f8044a4
手动测试
已添加1个文件
已修改2个文件
136 ■■■■■ 文件已修改
src/main/java/com/fzzy/gateway/hx2023/data/GateWayTestParam.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/gateway/service/GatewayDeviceService.java 59 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/gateway/view/GatewayConf.view.xml 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/fzzy/gateway/hx2023/data/GateWayTestParam.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,20 @@
package com.fzzy.gateway.hx2023.data;
import lombok.Data;
import java.util.Date;
@Data
public class GateWayTestParam {
    private Date start;
    private Date end;
    private Date dayTime;
    private Double weight;
    private String carNumber;
}
src/main/java/com/fzzy/gateway/service/GatewayDeviceService.java
@@ -127,9 +127,9 @@
     * @return
     */
    @Expose
    public String ajaxTestWeight() {
        //double weigh = (double) parameter.get("weight");
        double weigh = Double.parseDouble("3500.0");
    public String ajaxTestWeight(GateWayTestParam parameter) {
        double weigh = (double) parameter.getWeight();
        //double weigh = Double.parseDouble("3500.0");
        List<GatewayDevice> devices = listAll();
        if(devices == null || devices.size()<= 0){
            return "没有设备";
@@ -166,13 +166,60 @@
            packet.setTimestamp(System.currentTimeMillis());
            topic = "/device/hx-weigh-big-01/"+device.getDeviceId()+"/message/property/report";
            topic = "/device/"+header.getProductId()+"/"+device.getDeviceId()+"/message/property/report";
            mqttPublishService.publishMsg(topic, JSON.toJSONString(packet));
        }
        return "SUCCESS";
    }
    /**
     * gatewayDeviceService#ajaxTestLpr
     * åœ°ç£…推送测试
     * @return
     */
    @Expose
    public String ajaxTestLpr() {
        //String carNumber = parameter.getCarNumber();
        String carNumber = "川A12345";
        List<GatewayDevice> devices = listAll();
        if(devices == null || devices.size()<= 0){
            return "没有设备";
        }
        List<GatewayDevice> weights = devices.stream().filter(s ->(GatewayDeviceType.TYPE_02.getCode().equals(s.getType()))).collect(Collectors.toList());
        if(weights == null || weights.size()<= 0){
            return "没有获取到设备";
        }
        String topic = "/device/hx-weigh-big-01/91511424746940066Y001_91511424746940066Y0010000_002_004_002_001/message/property/report";
        for (GatewayDevice device: weights) {
            WebSocketPacket packet = new WebSocketPacket();
            //productId的值在webSocket执行发送方法中补充
            WebSocketPacketHeader header = new WebSocketPacketHeader();
            header.setDeviceName(device.getDeviceName());
            header.setProductId("hx-catch-01");
            //header.set
            packet.setHeaders(header);
            packet.setMessageType(ScConstant.MESSAGE_TYPE_REPORT_PROPERTY);
            packet.setDeviceId(device.getDeviceId());
            //设置信息主体
            LprData lpr = new LprData();
            lpr.setDeviceId(device.getDeviceId());
            lpr.setCarNumber(carNumber);
            JSONObject jsonObject = new JSONObject();
            jsonObject.put("carNumber", carNumber);
            jsonObject.put("position", "big");
            packet.setProperties(jsonObject);
            packet.setTimestamp(System.currentTimeMillis());
            topic = "/device/"+header.getProductId()+"/"+device.getDeviceId()+"/message/property/report";
            mqttPublishService.publishMsg(topic, JSON.toJSONString(packet));
        }
        return "SUCCESS";
    }
    /**
     * gatewayDeviceService#ajaxTestGrain
@@ -182,7 +229,7 @@
     * @return
     */
    @Expose
    public String ajaxTestGrain(Map<String, Object> parameter) {
    public String ajaxTestGrain(GateWayTestParam parameter) {
        //获取设备配置,只针对粮情设备进行执行
@@ -192,7 +239,7 @@
            return "ERROR:为获取到系统中设备配置,取消执行";
        }
        Date dayTime = (Date) parameter.get("dayTime");
        Date dayTime = (Date) parameter.getDayTime();
        if (null == dayTime) dayTime = new Date();
        Date start = DateUtil.getCurZero(dayTime);
src/main/java/com/fzzy/gateway/view/GatewayConf.view.xml
@@ -83,18 +83,24 @@
      </PropertyDef>
    </DataType>
    <DataType name="dtParam" parent="Map">
      <Property name="creationType">com.fzzy.gateway.hx2023.data.GateWayTestParam</Property>
      <PropertyDef name="start">
        <Property name="dataType">Date</Property>
        <Property name="dataType">DateTime</Property>
      </PropertyDef>
      <PropertyDef name="end">
        <Property name="dataType">Date</Property>
        <Property name="dataType">DateTime</Property>
      </PropertyDef>
      <PropertyDef name="dayTime">
        <Property name="dataType">Date</Property>
        <Property name="dataType">DateTime</Property>
        <Property name="label">选择时间</Property>
      </PropertyDef>
      <PropertyDef name="weight">
        <Property name="label">重量</Property>
        <Property name="dataType">Double</Property>
        <Property name="defaultValue">0.0</Property>
      </PropertyDef>
      <PropertyDef name="carNumber">
        <Property name="label">车牌</Property>
      </PropertyDef>
    </DataType>
  </Model>
@@ -161,6 +167,12 @@
      <ToolBarButton>
        <ClientEvent name="onClick">view.get(&quot;#dialogWeight&quot;).show();</ClientEvent>
        <Property name="caption">地磅推送测试</Property>
        <Property name="iconClass">fa fa-search</Property>
        <Property name="exClassName">toolbar-button-push</Property>
      </ToolBarButton>
      <ToolBarButton>
        <ClientEvent name="onClick">view.get(&quot;#dialogLpr&quot;).show();</ClientEvent>
        <Property name="caption">车牌推送测试</Property>
        <Property name="iconClass">fa fa-search</Property>
        <Property name="exClassName">toolbar-button-push</Property>
      </ToolBarButton>
@@ -353,7 +365,7 @@
      <Buttons>
        <Button>
          <ClientEvent name="onClick">var data = view.get(&quot;#dsQuery.data&quot;);&#xD;
view.get(&quot;#ajaxTestGrain&quot;).set(&quot;parameter&quot;,data.toJSON()).execute(function(result){&#xD;
view.get(&quot;#ajaxTestGrain&quot;).set(&quot;parameter&quot;,data).execute(function(result){&#xD;
    self.get(&quot;parent&quot;).hide();&#xD;
    $alert(result);&#xD;
});</ClientEvent>
@@ -392,7 +404,7 @@
      <Buttons>
        <Button>
          <ClientEvent name="onClick">var data = view.get(&quot;#dsQuery.data&quot;);&#xD;
view.get(&quot;#ajaxTestWeight&quot;).set(&quot;parameter&quot;,data.get("weight")).execute(function(result){&#xD;
view.get(&quot;#ajaxTestWeight&quot;).set(&quot;parameter&quot;,data).execute(function(result){&#xD;
    self.get(&quot;parent&quot;).hide();&#xD;
    $alert(result);&#xD;
});</ClientEvent>
@@ -420,5 +432,40 @@
      <Property name="service">gatewayDeviceService#ajaxTestWeight</Property>
      <Property name="executingMessage">在努力执行中……</Property>
    </AjaxAction>
    <Dialog id="dialogLpr">
      <Property name="width">400</Property>
      <Property name="height">300</Property>
      <Property name="caption">输入车牌</Property>
      <Buttons>
        <Button>
          <ClientEvent name="onClick">var data = view.get(&quot;#dsQuery.data&quot;);&#xD;
view.get(&quot;#ajaxTestLpr&quot;).set(&quot;parameter&quot;,data).execute(function(result){&#xD;
    self.get(&quot;parent&quot;).hide();&#xD;
    $alert(result);&#xD;
});</ClientEvent>
          <Property name="caption">确定执行</Property>
        </Button>
        <Button>
          <ClientEvent name="onClick">view.get(&quot;#dialogLpr&quot;).hide();</ClientEvent>
          <Property name="caption">取消执行</Property>
        </Button>
      </Buttons>
      <Children>
        <AutoForm>
          <Property name="dataSet">dsQuery</Property>
          <Property name="cols">*</Property>
          <AutoFormElement>
            <Property name="name">carNumber</Property>
            <Property name="property">carNumber</Property>
            <Editor/>
          </AutoFormElement>
        </AutoForm>
      </Children>
      <Tools/>
    </Dialog>
    <AjaxAction id="ajaxTestLpr">
      <Property name="service">gatewayDeviceService#ajaxTestLpr</Property>
      <Property name="executingMessage">在努力执行中……</Property>
    </AjaxAction>
  </View>
</ViewConfig>