工业级运维app手机api
fengxiang
2017-10-31 553cfb535064f484245c571f894d69e5e8cd3f04
手机api
2 files added
14 files modified
797 ■■■■■ changed files
.classpath 10 ●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/controller/ApiController.java 180 ●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/dao/MonitorpointDao.java 12 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/entity/MonitorPointExample.java 17 ●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/entity/OrganizationExample.java 20 ●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/service/EquipmentService.java 15 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/service/MonitorpointService.java 16 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/service/OrganizationService.java 6 ●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/service/impl/EquipmentServiceImpl.java 44 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/service/impl/MonitorpointServiceImpl.java 32 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/service/impl/OrganizationServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/com/moral/monitor/util/LoginFilter.java 6 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/ApiDao.xml 3 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/EquipmentMapper.xml 367 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/MonitorPointDao.xml 61 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/OrganizationMapper.xml 3 ●●●● patch | view | raw | blame | history
.classpath
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src/main/java">
    <classpathentry kind="src" output="target/classes" path="src/main/java">
        <attributes>
            <attribute name="optional" value="true"/>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="src" path="src/main/resources">
    <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="src" path="src/test/java">
    <classpathentry kind="src" output="target/test-classes" path="src/test/java">
        <attributes>
            <attribute name="optional" value="true"/>
            <attribute name="maven.pomderived" value="true"/>
@@ -25,8 +25,8 @@
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
        <attributes>
            <attribute name="owner.project.facets" value="java"/>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="output" path="src/main/webapp/WEB-INF/classes"/>
    <classpathentry kind="output" path="target/classes"/>
</classpath>
src/main/java/com/moral/monitor/controller/ApiController.java
@@ -1,28 +1,44 @@
package com.moral.monitor.controller;
import com.moral.monitor.entity.Equipment;
import com.moral.monitor.entity.User;
import com.moral.monitor.entity.apientity.*;
import com.moral.monitor.listener.message.Captcha;
import com.moral.monitor.service.ApiService;
import com.moral.monitor.util.ApiData;
import com.moral.monitor.util.Crypto;
import com.moral.monitor.util.DateConvert;
import com.taobao.api.ApiException;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.fastjson.JSON;
import com.moral.monitor.entity.Equipment;
import com.moral.monitor.entity.EquipmentExample;
import com.moral.monitor.entity.MonitorPoint;
import com.moral.monitor.entity.MonitorPointExample;
import com.moral.monitor.entity.Organization;
import com.moral.monitor.entity.OrganizationExample;
import com.moral.monitor.entity.User;
import com.moral.monitor.entity.apientity.ApiEquipment;
import com.moral.monitor.entity.apientity.ApiEquipmentInfo;
import com.moral.monitor.entity.apientity.ApiUser;
import com.moral.monitor.entity.apientity.RepairQuery;
import com.moral.monitor.entity.apientity.Report;
import com.moral.monitor.listener.message.Captcha;
import com.moral.monitor.service.ApiService;
import com.moral.monitor.service.EquipmentService;
import com.moral.monitor.service.MonitorpointService;
import com.moral.monitor.service.OrganizationService;
import com.moral.monitor.util.ApiData;
import com.moral.monitor.util.Crypto;
import com.moral.monitor.util.DateConvert;
import com.taobao.api.ApiException;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
/**
 * Created by a on 2017/4/24.
@@ -30,9 +46,9 @@
@Controller
@CrossOrigin(origins = "*", maxAge = 3600)
public class ApiController {
    private static Logger log = Logger.getLogger(ApiController.class);
    @Resource
    ApiService apiService;
    //11终端采集
    @RequestMapping(value = "reportDevice")
    @ResponseBody
@@ -42,14 +58,10 @@
                             @RequestParam(value ="address")  String address,
                             @RequestParam(value ="longitude")  String longitude,
                             @RequestParam(value ="latitude")  String latitude,
                             @RequestParam(value ="mac")  String mac ){
        try {
            request.setCharacterEncoding("UTF-8");
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
                             @RequestParam(value ="mac")  String mac,
                             @RequestParam(value ="mpointId")  String monitorpoint,
                             @RequestParam(value ="orgId")  String ownerId
                             ){
        //插入或更新设备表信息
        ApiData apiData = new ApiData();
        if(StringUtils.isBlank(mac)){
@@ -58,19 +70,30 @@
            apiData.setErrno(0);
            return apiData;
        }
        if (StringUtils.isBlank(longitude)){ longitude="0"; }
        if (StringUtils.isBlank(latitude)) { latitude="0"; }
        Equipment equipment = apiService.selectFromequipmentBymac(mac);
        if (equipment==null){ //插入
            apiService.insertIntoequipment(device_name,address,longitude,latitude,uid,mac);
        Equipment equipment =new Equipment();
        equipment.setInstaller(uid);
        equipment.setName(device_name);
        equipment.setAddress(address);
        equipment.setLongitude(Double.valueOf(longitude));
        equipment.setLatitude(Double.valueOf(latitude));
        equipment.setMac(mac);
        equipment.setMonitorpoint(monitorpoint);
        equipment.setOwnerId(ownerId);
          EquipmentExample example = new EquipmentExample();
          example.or().andMacEqualTo(mac);
          long count = equipmentService.queryCountByExample(example);
        if (count==0){ //插入
            equipmentService.insertRecord(equipment);
            apiData.setData("");
            apiData.setMessage("添加设备成功");
            apiData.setErrno(0);
        } else { //更新
            apiService.updateFromequipmentBymac(device_name, address, longitude, latitude, uid, mac);
            apiData.setData("");
            equipmentService.updateByMac(equipment);
            apiData.setMessage("更新设备成功");
            apiData.setErrno(0);
        }
@@ -458,5 +481,102 @@
        apiData.setData(s);
        return apiData;
    }
    @Resource
    private EquipmentService equipmentService;
    //11、根据mac地址获取设备信息,没有数据则为空
    @RequestMapping(value = "getEquInfoByMac")
    @ResponseBody
    public ApiData getEquInfoByMac(String mac) {
        ApiData apiData = new ApiData();
        try {
            if(!StringUtils.isEmpty(mac)) {
                EquipmentExample example =    new EquipmentExample();
                example.or().andMacEqualTo(mac);
                List<Equipment> equList = equipmentService.queryListByExample(example);
                if(equList!=null&&equList.size()>0) {
                    Equipment equipment = equList.get(0);
                    apiData.setErrno(0);
                    apiData.setMessage("根据mac地址获取设备信息成功");
                    apiData.setData(JSON.toJSONString(equipment));
                }else {
                    apiData.setErrno(0);
                    apiData.setMessage("根据mac地址未获取到设备信息");
                    apiData.setData(null);
                }
            }else {
                apiData.setErrno(0);
                apiData.setMessage("mac地址不能为空");
                apiData.setData(null);
            }
        } catch (Exception e) {
            e.printStackTrace();
            log.error(e);
        }
        return apiData;
    }
    @Resource
    private MonitorpointService monitorpointService;
    //12、根据县级市或者区的名称,获取监控点。
    @RequestMapping(value = "getMpointsByAreaName")
    @ResponseBody
    public ApiData getMpointsByAreaName(String areaName) {
        ApiData apiData = new ApiData();
        try {
            if(!StringUtils.isEmpty(areaName)) {
                MonitorPointExample example =    new MonitorPointExample();
                example.or().andTbAreaNameEqualTo(areaName);
                List<MonitorPoint> list = monitorpointService.queryListByExample(example);
                if(list!=null&&list.size()>0) {
                    apiData.setErrno(0);
                    apiData.setMessage("根据areaName获取数据成功");
                    apiData.setData(JSON.toJSONString(list));
                }else {
                    apiData.setErrno(0);
                    apiData.setMessage("根据areaName未获取到数据");
                    apiData.setData(null);
                }
            }else {
                apiData.setErrno(0);
                apiData.setMessage("areaName不能为空");
                apiData.setData(null);
            }
        } catch (Exception e) {
            e.printStackTrace();
            log.error(e);
        }
        return apiData;
    }
    @Resource
    OrganizationService organizationService;
    //13、根据县级市或者区的名称,获取组织。
    @RequestMapping(value = "getOrgsByAreaName")
    @ResponseBody
    public ApiData getOrgsByAreaName(String areaName) {
        ApiData apiData = new ApiData();
        try {
            if(!StringUtils.isEmpty(areaName)) {
                OrganizationExample example =    new OrganizationExample();
                example.or().andTbAreaNameEqualTo(areaName);
                List<Organization> list = organizationService.queryListByExample(example);
                if(list!=null&&list.size()>0) {
                    apiData.setErrno(0);
                    apiData.setMessage("根据areaName获取数据成功");
                    apiData.setData(JSON.toJSONString(list));
                }else {
                    apiData.setErrno(0);
                    apiData.setMessage("根据areaName未获取到数据");
                    apiData.setData(null);
                }
            }else {
                apiData.setErrno(0);
                apiData.setMessage("areaName不能为空");
                apiData.setData(null);
            }
        } catch (Exception e) {
            e.printStackTrace();
            log.error(e);
        }
        return apiData;
    }
}
src/main/java/com/moral/monitor/dao/MonitorpointDao.java
@@ -1,9 +1,12 @@
package com.moral.monitor.dao;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.moral.monitor.entity.MonitorPoint;
import com.moral.monitor.entity.MonitorPointExample;
import com.moral.monitor.entity.QueryHelper;
public interface MonitorpointDao {
    long countByExample(MonitorPointExample example);
@@ -27,4 +30,13 @@
    int updateByPrimaryKeySelective(MonitorPoint record);
    int updateByPrimaryKey(MonitorPoint record);
    public List<MonitorPoint> allMonitorPoint(QueryHelper queryHelper);
    public int monitorCount(QueryHelper queryHelper);
    public void deleteMonitor(String id);
    public void addMonitorpoint(MonitorPoint monitorPoint);
    public void updateMonitorpoint(MonitorPoint monitorPoint);
}
src/main/java/com/moral/monitor/entity/MonitorPointExample.java
@@ -5,6 +5,7 @@
import java.util.List;
public class MonitorPointExample {
    private static String tableNamePrefix = "monitorpoint.";
    protected String orderByClause;
    protected boolean distinct;
@@ -88,21 +89,21 @@
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
            criteria.add(new Criterion(tableNamePrefix+condition));
        }
        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
            criteria.add(new Criterion(tableNamePrefix+condition, value));
        }
        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
            criteria.add(new Criterion(tableNamePrefix+condition, value1, value2));
        }
        public Criteria andIdIsNull() {
@@ -921,6 +922,16 @@
        protected Criteria() {
            super();
        }
        public void addRelationCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }
        public Criteria andTbAreaNameEqualTo(String value) {
            addRelationCriterion("area.name =", value, "area.name");
           return (Criteria) this;
       }
    }
    public static class Criterion {
src/main/java/com/moral/monitor/entity/OrganizationExample.java
@@ -4,7 +4,11 @@
import java.util.Date;
import java.util.List;
import com.moral.monitor.entity.MonitorPointExample.Criteria;
import com.moral.monitor.entity.MonitorPointExample.Criterion;
public class OrganizationExample {
    private static String tableNamePrefix = "organization";
    protected String orderByClause;
    protected boolean distinct;
@@ -88,21 +92,21 @@
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
            criteria.add(new Criterion(tableNamePrefix+condition));
        }
        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
            criteria.add(new Criterion(tableNamePrefix+condition, value));
        }
        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
            criteria.add(new Criterion(tableNamePrefix+condition, value1, value2));
        }
        public Criteria andIdIsNull() {
@@ -1201,6 +1205,16 @@
        protected Criteria() {
            super();
        }
        public void addRelationCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }
        public Criteria andTbAreaNameEqualTo(String value) {
            addRelationCriterion("area.name =", value, "area.name");
           return (Criteria) this;
       }
    }
    public static class Criterion {
src/main/java/com/moral/monitor/service/EquipmentService.java
@@ -1,9 +1,22 @@
package com.moral.monitor.service;
import java.util.List;
import com.moral.monitor.entity.Equipment;
import com.moral.monitor.entity.EquipmentExample;
/**
 * @author fengxiang
 * @Time:2017年10月25日 下午2:22:21
 * @version 1.0
 */
public interface EquipmentService {
    //根据example条件查询
    List<Equipment> queryListByExample(EquipmentExample example);
    //根据example条件查询数量
    long queryCountByExample(EquipmentExample example);
    //更新设备信息
    void updateByMac(Equipment equipment);
    //插入设备
     void insertRecord(Equipment equipment);
}
src/main/java/com/moral/monitor/service/MonitorpointService.java
@@ -1,28 +1,26 @@
package com.moral.monitor.service;
import com.moral.monitor.entity.MonitorPoint;
import com.moral.monitor.entity.QueryHelper;
import org.springframework.stereotype.Service;
import java.util.List;
import com.moral.monitor.entity.MonitorPoint;
import com.moral.monitor.entity.MonitorPointExample;
import com.moral.monitor.entity.QueryHelper;
/**
 * Created by a on 2017/7/18.
 */
@Service
public interface MonitorpointService {
    //根据example条件来获取监控点
    List<MonitorPoint> queryListByExample(MonitorPointExample example);
    public List<MonitorPoint> allMonitorpoint(QueryHelper queryHelper);
    public int monitorCount(QueryHelper queryHelper);
    public void deleteMonitor(String id);
    public void addMonitorpoint(MonitorPoint MonitorPoint);
    public void updateMonitorpoint(MonitorPoint MonitorPoint);
}
src/main/java/com/moral/monitor/service/OrganizationService.java
@@ -1,9 +1,13 @@
package com.moral.monitor.service;
import java.util.List;
import java.util.Set;
import com.moral.monitor.entity.Organization;
import com.moral.monitor.entity.OrganizationExample;
public interface OrganizationService {
    Set<String> getChildOrganizationIds(String orgId);
    List<Organization> queryListByExample(OrganizationExample example);
}
src/main/java/com/moral/monitor/service/impl/EquipmentServiceImpl.java
New file
@@ -0,0 +1,44 @@
package com.moral.monitor.service.impl;
import java.util.List;
import javax.annotation.Resource;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import com.moral.monitor.dao.EquipmentMapper;
import com.moral.monitor.entity.Equipment;
import com.moral.monitor.entity.EquipmentExample;
import com.moral.monitor.service.EquipmentService;
/**
 * @author fengxiang
 * @Time:2017年10月31日 上午10:15:58
 * @version 1.0
 */
@Service
public class EquipmentServiceImpl implements EquipmentService {
    @Resource
    private EquipmentMapper mapper;
    //根据example条件查询
    public List<Equipment> queryListByExample(EquipmentExample example){
         return mapper.selectByExample(example);
    }
    public long queryCountByExample(EquipmentExample example) {
        return mapper.countByExample(example);
    }
    public void updateByMac(Equipment equipment) {
        if(StringUtils.isEmpty(equipment.getMac())) {
            throw new RuntimeException("equipment.mac cannot be null");
        }
        EquipmentExample example = new EquipmentExample();
        example.or().andMacEqualTo(equipment.getMac());
        mapper.updateByExampleSelective(equipment, example);
    }
    public void insertRecord(Equipment equipment) {
        mapper.insertSelective(equipment);
    }
}
src/main/java/com/moral/monitor/service/impl/MonitorpointServiceImpl.java
@@ -3,9 +3,11 @@
import java.util.List;
import javax.annotation.Resource;
import javax.management.monitor.Monitor;
import com.moral.monitor.dao.MonitorpointDao;
import com.moral.monitor.entity.MonitorPoint;
import com.moral.monitor.entity.MonitorPointExample;
import com.moral.monitor.entity.QueryHelper;
import com.moral.monitor.service.MonitorpointService;
import org.springframework.stereotype.Service;
@@ -18,30 +20,24 @@
@Service
public class MonitorpointServiceImpl implements MonitorpointService {
    @Resource
    MonitorpointDao monitorpointDao;
    public List<MonitorPoint> allMonitorpoint(QueryHelper queryHelper) {
        // TODO Auto-generated method stub
        return null;
    MonitorpointDao monitorPointDao;
    @Override
    public List<MonitorPoint> queryListByExample(MonitorPointExample example) {
        return monitorPointDao.selectByExample(example);
    }
    public int monitorCount(QueryHelper queryHelper) {
        // TODO Auto-generated method stub
        return 0;
    }
    public List<MonitorPoint> allMonitorpoint(QueryHelper queryHelper){return monitorPointDao.allMonitorPoint(queryHelper);}
    public int monitorCount(QueryHelper queryHelper){return monitorPointDao.monitorCount(queryHelper);}
    public void deleteMonitor(String id) {
        // TODO Auto-generated method stub
    }
    public void deleteMonitor(String id){monitorPointDao.deleteMonitor(id);}
    public void addMonitorpoint(MonitorPoint MonitorPoint) {
        // TODO Auto-generated method stub
    }
    public void addMonitorpoint(MonitorPoint monitorPoint){monitorPointDao.addMonitorpoint(monitorPoint);}
    public void updateMonitorpoint(MonitorPoint MonitorPoint) {
        // TODO Auto-generated method stub
    }
    public void updateMonitorpoint(MonitorPoint monitorPoint){
        monitorPointDao.updateMonitorpoint(monitorPoint);
    }
}
src/main/java/com/moral/monitor/service/impl/OrganizationServiceImpl.java
@@ -33,4 +33,9 @@
        return orgIds;
    }
    @Override
    public List<Organization> queryListByExample(OrganizationExample example) {
        return organizationDao.selectByExample(example);
    }
}
src/main/java/com/moral/monitor/util/LoginFilter.java
@@ -38,10 +38,10 @@
                ||url.indexOf("report")>=0
                ||url.indexOf("reportList")>=0
                ||url.indexOf("reportDevice")>=0
                ||url.indexOf("screen")>=0
                ||url.indexOf("getOrgsByAreaName")>=0
                ||url.indexOf("getMpointsByAreaName")>=0
                ||url.indexOf("getEquInfoByMac")>=0
                ||request.getServletPath().endsWith(".css")
                ||request.getServletPath().endsWith(".js")
                ||request.getServletPath().endsWith(".ico")
src/main/resources/mapper/ApiDao.xml
@@ -9,7 +9,8 @@
    </select>
    <update id="updateFromequipmentBymac">
          UPDATE equipment set `name`=#{0} , address=#{1} ,  longitude=#{2}, latitude=#{3} ,repairman=#{4}   WHERE mac=#{5}
          UPDATE equipment set `name`=#{0} , address=#{1} ,  longitude=#{2}, latitude=#{3} ,repairman=#{4}
          WHERE mac=#{5}
    </update>
     <insert id="insertIntoequipment">
src/main/resources/mapper/EquipmentMapper.xml
New file
@@ -0,0 +1,367 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.moral.monitor.dao.EquipmentMapper">
  <resultMap id="BaseResultMap" type="com.moral.monitor.entity.Equipment">
    <id column="id" jdbcType="INTEGER" property="id" />
    <result column="name" jdbcType="VARCHAR" property="name" />
    <result column="address" jdbcType="VARCHAR" property="address" />
    <result column="longitude" jdbcType="DOUBLE" property="longitude" />
    <result column="latitude" jdbcType="DOUBLE" property="latitude" />
    <result column="mac" jdbcType="VARCHAR" property="mac" />
    <result column="state" jdbcType="INTEGER" property="state" />
    <result column="time" jdbcType="TIMESTAMP" property="time" />
    <result column="installer" jdbcType="VARCHAR" property="installer" />
    <result column="repairman" jdbcType="VARCHAR" property="repairman" />
    <result column="province" jdbcType="VARCHAR" property="province" />
    <result column="city" jdbcType="VARCHAR" property="city" />
    <result column="area" jdbcType="VARCHAR" property="area" />
    <result column="monitorpoint" jdbcType="VARCHAR" property="monitorpoint" />
    <result column="owner_id" jdbcType="VARCHAR" property="ownerId" />
  </resultMap>
  <sql id="Example_Where_Clause">
    <where>
      <foreach collection="oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <sql id="Update_By_Example_Where_Clause">
    <where>
      <foreach collection="example.oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <sql id="Base_Column_List">
    id, name, address, longitude, latitude, mac, state, time, installer, repairman, province,
    city, area, monitorpoint, owner_id
  </sql>
  <select id="selectByExample" parameterType="com.moral.monitor.entity.EquipmentExample" resultMap="BaseResultMap">
    select
    <if test="distinct">
      distinct
    </if>
    <include refid="Base_Column_List" />
    from equipment
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
    <if test="orderByClause != null">
      order by ${orderByClause}
    </if>
  </select>
  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
    select
    <include refid="Base_Column_List" />
    from equipment
    where id = #{id,jdbcType=INTEGER}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
    delete from equipment
    where id = #{id,jdbcType=INTEGER}
  </delete>
  <delete id="deleteByExample" parameterType="com.moral.monitor.entity.EquipmentExample">
    delete from equipment
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
  </delete>
  <insert id="insert" parameterType="com.moral.monitor.entity.Equipment">
    insert into equipment (id, name, address,
      longitude, latitude, mac,
      state, time, installer,
      repairman, province, city,
      area, monitorpoint, owner_id
      )
    values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{address,jdbcType=VARCHAR},
      #{longitude,jdbcType=DOUBLE}, #{latitude,jdbcType=DOUBLE}, #{mac,jdbcType=VARCHAR},
      #{state,jdbcType=INTEGER}, #{time,jdbcType=TIMESTAMP}, #{installer,jdbcType=VARCHAR},
      #{repairman,jdbcType=VARCHAR}, #{province,jdbcType=VARCHAR}, #{city,jdbcType=VARCHAR},
      #{area,jdbcType=VARCHAR}, #{monitorpoint,jdbcType=VARCHAR}, #{ownerId,jdbcType=VARCHAR}
      )
  </insert>
  <insert id="insertSelective" parameterType="com.moral.monitor.entity.Equipment">
    insert into equipment
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">
        id,
      </if>
      <if test="name != null">
        name,
      </if>
      <if test="address != null">
        address,
      </if>
      <if test="longitude != null">
        longitude,
      </if>
      <if test="latitude != null">
        latitude,
      </if>
      <if test="mac != null">
        mac,
      </if>
      <if test="state != null">
        state,
      </if>
      <if test="time != null">
        time,
      </if>
      <if test="installer != null">
        installer,
      </if>
      <if test="repairman != null">
        repairman,
      </if>
      <if test="province != null">
        province,
      </if>
      <if test="city != null">
        city,
      </if>
      <if test="area != null">
        area,
      </if>
      <if test="monitorpoint != null">
        monitorpoint,
      </if>
      <if test="ownerId != null">
        owner_id,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="id != null">
        #{id,jdbcType=INTEGER},
      </if>
      <if test="name != null">
        #{name,jdbcType=VARCHAR},
      </if>
      <if test="address != null">
        #{address,jdbcType=VARCHAR},
      </if>
      <if test="longitude != null">
        #{longitude,jdbcType=DOUBLE},
      </if>
      <if test="latitude != null">
        #{latitude,jdbcType=DOUBLE},
      </if>
      <if test="mac != null">
        #{mac,jdbcType=VARCHAR},
      </if>
      <if test="state != null">
        #{state,jdbcType=INTEGER},
      </if>
      <if test="time != null">
        #{time,jdbcType=TIMESTAMP},
      </if>
      <if test="installer != null">
        #{installer,jdbcType=VARCHAR},
      </if>
      <if test="repairman != null">
        #{repairman,jdbcType=VARCHAR},
      </if>
      <if test="province != null">
        #{province,jdbcType=VARCHAR},
      </if>
      <if test="city != null">
        #{city,jdbcType=VARCHAR},
      </if>
      <if test="area != null">
        #{area,jdbcType=VARCHAR},
      </if>
      <if test="monitorpoint != null">
        #{monitorpoint,jdbcType=VARCHAR},
      </if>
      <if test="ownerId != null">
        #{ownerId,jdbcType=VARCHAR},
      </if>
    </trim>
  </insert>
  <select id="countByExample" parameterType="com.moral.monitor.entity.EquipmentExample" resultType="java.lang.Long">
    select count(*) from equipment
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
  </select>
  <update id="updateByExampleSelective" parameterType="map">
    update equipment
    <set>
      <if test="record.name != null">
        name = #{record.name,jdbcType=VARCHAR},
      </if>
      <if test="record.address != null">
        address = #{record.address,jdbcType=VARCHAR},
      </if>
      <if test="record.longitude != null">
        longitude = #{record.longitude,jdbcType=DOUBLE},
      </if>
      <if test="record.latitude != null">
        latitude = #{record.latitude,jdbcType=DOUBLE},
      </if>
      <if test="record.mac != null">
        mac = #{record.mac,jdbcType=VARCHAR},
      </if>
      <if test="record.state != null">
        state = #{record.state,jdbcType=INTEGER},
      </if>
      <if test="record.time != null">
        time = #{record.time,jdbcType=TIMESTAMP},
      </if>
      <if test="record.installer != null">
        installer = #{record.installer,jdbcType=VARCHAR},
      </if>
      <if test="record.repairman != null">
        repairman = #{record.repairman,jdbcType=VARCHAR},
      </if>
      <if test="record.province != null">
        province = #{record.province,jdbcType=VARCHAR},
      </if>
      <if test="record.city != null">
        city = #{record.city,jdbcType=VARCHAR},
      </if>
      <if test="record.area != null">
        area = #{record.area,jdbcType=VARCHAR},
      </if>
      <if test="record.monitorpoint != null">
        monitorpoint = #{record.monitorpoint,jdbcType=VARCHAR},
      </if>
      <if test="record.ownerId != null">
        owner_id = #{record.ownerId,jdbcType=VARCHAR},
      </if>
    </set>
    <if test="_parameter != null">
      <include refid="Update_By_Example_Where_Clause" />
    </if>
  </update>
  <update id="updateByExample" parameterType="map">
    update equipment
    set id = #{record.id,jdbcType=INTEGER},
      name = #{record.name,jdbcType=VARCHAR},
      address = #{record.address,jdbcType=VARCHAR},
      longitude = #{record.longitude,jdbcType=DOUBLE},
      latitude = #{record.latitude,jdbcType=DOUBLE},
      mac = #{record.mac,jdbcType=VARCHAR},
      state = #{record.state,jdbcType=INTEGER},
      time = #{record.time,jdbcType=TIMESTAMP},
      installer = #{record.installer,jdbcType=VARCHAR},
      repairman = #{record.repairman,jdbcType=VARCHAR},
      province = #{record.province,jdbcType=VARCHAR},
      city = #{record.city,jdbcType=VARCHAR},
      area = #{record.area,jdbcType=VARCHAR},
      monitorpoint = #{record.monitorpoint,jdbcType=VARCHAR},
      owner_id = #{record.ownerId,jdbcType=VARCHAR}
    <if test="_parameter != null">
      <include refid="Update_By_Example_Where_Clause" />
    </if>
  </update>
  <update id="updateByPrimaryKeySelective" parameterType="com.moral.monitor.entity.Equipment">
    update equipment
    <set>
      <if test="name != null">
        name = #{name,jdbcType=VARCHAR},
      </if>
      <if test="address != null">
        address = #{address,jdbcType=VARCHAR},
      </if>
      <if test="longitude != null">
        longitude = #{longitude,jdbcType=DOUBLE},
      </if>
      <if test="latitude != null">
        latitude = #{latitude,jdbcType=DOUBLE},
      </if>
      <if test="mac != null">
        mac = #{mac,jdbcType=VARCHAR},
      </if>
      <if test="state != null">
        state = #{state,jdbcType=INTEGER},
      </if>
      <if test="time != null">
        time = #{time,jdbcType=TIMESTAMP},
      </if>
      <if test="installer != null">
        installer = #{installer,jdbcType=VARCHAR},
      </if>
      <if test="repairman != null">
        repairman = #{repairman,jdbcType=VARCHAR},
      </if>
      <if test="province != null">
        province = #{province,jdbcType=VARCHAR},
      </if>
      <if test="city != null">
        city = #{city,jdbcType=VARCHAR},
      </if>
      <if test="area != null">
        area = #{area,jdbcType=VARCHAR},
      </if>
      <if test="monitorpoint != null">
        monitorpoint = #{monitorpoint,jdbcType=VARCHAR},
      </if>
      <if test="ownerId != null">
        owner_id = #{ownerId,jdbcType=VARCHAR},
      </if>
    </set>
    where id = #{id,jdbcType=INTEGER}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.moral.monitor.entity.Equipment">
    update equipment
    set name = #{name,jdbcType=VARCHAR},
      address = #{address,jdbcType=VARCHAR},
      longitude = #{longitude,jdbcType=DOUBLE},
      latitude = #{latitude,jdbcType=DOUBLE},
      mac = #{mac,jdbcType=VARCHAR},
      state = #{state,jdbcType=INTEGER},
      time = #{time,jdbcType=TIMESTAMP},
      installer = #{installer,jdbcType=VARCHAR},
      repairman = #{repairman,jdbcType=VARCHAR},
      province = #{province,jdbcType=VARCHAR},
      city = #{city,jdbcType=VARCHAR},
      area = #{area,jdbcType=VARCHAR},
      monitorpoint = #{monitorpoint,jdbcType=VARCHAR},
      owner_id = #{ownerId,jdbcType=VARCHAR}
    where id = #{id,jdbcType=INTEGER}
  </update>
</mapper>
src/main/resources/mapper/MonitorPointDao.xml
@@ -1,8 +1,65 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC  "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.moral.monitor.dao.MonitorPointDao">
<mapper namespace="com.moral.monitor.dao.MonitorpointDao">
  <resultMap id="BaseResultMap" type="com.moral.monitor.entity.MonitorPoint">
    <id column="id" jdbcType="VARCHAR" property="id" />
    <result column="name" jdbcType="VARCHAR" property="name" />
    <result column="longitude" jdbcType="DOUBLE" property="longitude" />
    <result column="latitude" jdbcType="DOUBLE" property="latitude" />
    <result column="provincecode" jdbcType="VARCHAR" property="provincecode" />
    <result column="citycode" jdbcType="VARCHAR" property="citycode" />
    <result column="areacode" jdbcType="VARCHAR" property="areacode" />
    <result column="address" jdbcType="VARCHAR" property="address" />
    <result column="repairman" jdbcType="VARCHAR" property="repairman" />
    <result column="region_description" jdbcType="VARCHAR" property="regionDescription" />
    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
    <result column="owner" jdbcType="VARCHAR" property="owner" />
  </resultMap>
  <sql id="Example_Where_Clause">
    <where>
      <foreach collection="oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <select id="selectByExample" parameterType="com.moral.monitor.entity.MonitorPointExample" resultMap="BaseResultMap">
    select
    <if test="distinct">
      distinct
    </if>
    monitorpoint.*
    from monitorpoint
    LEFT JOIN area ON monitorpoint.areacode = area.`code`
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
    <if test="orderByClause != null">
      order by ${orderByClause}
    </if>
  </select>
    <!--所有监测点-->
    <select id="allMonitorPoint"  parameterType="com.moral.monitor.entity.QueryHelper" resultType="com.moral.monitor.entity.MonitorPoint">
        select * from monitorpoint
src/main/resources/mapper/OrganizationMapper.xml
@@ -86,8 +86,9 @@
    <if test="distinct" >
      distinct
    </if>
    <include refid="Base_Column_List" />
    organization.*
    from organization
    LEFT JOIN area ON organization.areacode = area.`code`
    <if test="_parameter != null" >
      <include refid="Example_Where_Clause" />
    </if>