From 55d66b7f91b856cc37ee02ce26ca15b9a21c7d68 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Tue, 11 May 2021 15:11:58 +0800
Subject: [PATCH] sensor更新接口
---
screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java | 5
screen-manage/src/main/java/com/moral/api/mapper/SensorMapper.java | 7 +
screen-manage/src/main/resources/mapper/SensorMapper.xml | 61 ++++++++-------
screen-manage/src/main/java/com/moral/api/service/SensorService.java | 5 +
screen-manage/src/main/java/com/moral/api/entity/Sensor.java | 32 ++-----
screen-manage/src/main/java/com/moral/api/controller/SensorController.java | 14 +++
screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java | 81 +++++++++++++++++--
7 files changed, 142 insertions(+), 63 deletions(-)
diff --git a/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java b/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java
index a71d36b..f927c81 100644
--- a/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java
+++ b/screen-common/src/main/java/com/moral/constant/ResponseCodeEnum.java
@@ -46,8 +46,9 @@
USER_EXIST(-32,"������������������"),
ORGANIZATION_USER_EXIST(-33,"������������������������"),
SENSOR_IS_EXIST(-34, "���������������"),
- SENSOR_KEY_IS_EXIST(-35, "������������������������"),
- ORGANIZATION_USER_NOT_EXIST(-36,"���������������������")
+ SENSOR_KEY_IS_USED(-35, "������������������������"),
+ ORGANIZATION_USER_NOT_EXIST(-36,"���������������������"),
+ SENSOR_IS_NOT_EXIST(-37, "���������������")
;
private final Integer code;
private final String msg;
diff --git a/screen-manage/src/main/java/com/moral/api/controller/SensorController.java b/screen-manage/src/main/java/com/moral/api/controller/SensorController.java
index 3183d77..649e6ff 100644
--- a/screen-manage/src/main/java/com/moral/api/controller/SensorController.java
+++ b/screen-manage/src/main/java/com/moral/api/controller/SensorController.java
@@ -47,4 +47,18 @@
return ResultMessage.fail(Integer.parseInt(resultMap.get("code").toString()),resultMap.get("msg").toString());
//return null;
}
+
+ @RequestMapping(value = "updateSensor", method = RequestMethod.POST)
+ @ResponseBody
+ public ResultMessage updateSensor(@RequestBody Map<String, Object> parameters,HttpServletRequest request) {
+ //Sensor sensor = JSON.parseObject(JSON.toJSONString(parameters), Sensor.class);
+ Map<String,Object> resultMap = sensorService.updateSensor(parameters);
+ String msg = resultMap.get("msg").toString();
+ int code = Integer.parseInt(resultMap.get("code").toString());
+ if (code == 0){
+ return ResultMessage.ok(msg);
+ }
+ return ResultMessage.fail(Integer.parseInt(resultMap.get("code").toString()),resultMap.get("msg").toString());
+ //return null;
+ }
}
diff --git a/screen-manage/src/main/java/com/moral/api/entity/Sensor.java b/screen-manage/src/main/java/com/moral/api/entity/Sensor.java
index 2a9209a..1c37b3a 100644
--- a/screen-manage/src/main/java/com/moral/api/entity/Sensor.java
+++ b/screen-manage/src/main/java/com/moral/api/entity/Sensor.java
@@ -1,10 +1,13 @@
package com.moral.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
+import java.util.Date;
+
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -14,7 +17,7 @@
* </p>
*
* @author moral
- * @since 2021-05-06
+ * @since 2021-05-08
*/
@Data
@EqualsAndHashCode(callSuper = false)
@@ -36,42 +39,29 @@
/**
* ���������������������������
*/
- private String sensorKey;
+ @TableField(value = "`desc`")
+ private String desc;
/**
- * ������������
+ * ������������������
*/
- private String unit;
-
- /**
- * ���������
- */
- private Double upper;
-
- /**
- * ���������
- */
- private Double lower;
+ @TableField(value = "`code`")
+ private String code;
/**
* ������������
*/
- private LocalDateTime createTime;
+ private Date createTime;
/**
* ������������
*/
- private LocalDateTime updateTime;
+ private Date updateTime;
/**
* ������������
*/
private String isDelete;
-
- /**
- * ������
- */
- private String desc;
@Override
diff --git a/screen-manage/src/main/java/com/moral/api/mapper/SensorMapper.java b/screen-manage/src/main/java/com/moral/api/mapper/SensorMapper.java
index b7a2a20..69032a1 100644
--- a/screen-manage/src/main/java/com/moral/api/mapper/SensorMapper.java
+++ b/screen-manage/src/main/java/com/moral/api/mapper/SensorMapper.java
@@ -3,16 +3,21 @@
import com.moral.api.entity.Sensor;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import java.util.Map;
+
/**
* <p>
* Mapper ������
* </p>
*
* @author moral
- * @since 2021-05-06
+ * @since 2021-05-08
*/
public interface SensorMapper extends BaseMapper<Sensor> {
void insertOne(Sensor sensor);
+ Sensor getSensorById(int id);
+
+ void updateSensor(Map<String,Object> updateSensorMap);
}
diff --git a/screen-manage/src/main/java/com/moral/api/service/SensorService.java b/screen-manage/src/main/java/com/moral/api/service/SensorService.java
index 760ed85..80b9785 100644
--- a/screen-manage/src/main/java/com/moral/api/service/SensorService.java
+++ b/screen-manage/src/main/java/com/moral/api/service/SensorService.java
@@ -12,11 +12,14 @@
* </p>
*
* @author moral
- * @since 2021-05-06
+ * @since 2021-05-08
*/
@Transactional
public interface SensorService extends IService<Sensor> {
@Transactional
Map<String,Object> insertOne(Sensor sensor);
+
+ @Transactional
+ Map<String,Object> updateSensor(Map<String,Object> updateSensorMap);
}
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
index 3d211b5..04f093d 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/SensorServiceImpl.java
@@ -11,6 +11,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
@@ -25,7 +26,7 @@
* </p>
*
* @author moral
- * @since 2021-05-06
+ * @since 2021-05-08
*/
@Service
@Transactional
@@ -38,9 +39,10 @@
LogUtils logUtils;
@Override
+ @Transactional
public Map<String, Object> insertOne(Sensor sensor) {
Map<String,Object> resultMap = new HashMap<>();
- if (sensor.getName()==null || sensor.getSensorKey()==null){
+ if (sensor.getName()==null || sensor.getCode()==null){
resultMap.put("code",ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode());
resultMap.put("msg",ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
return resultMap;
@@ -53,19 +55,78 @@
resultMap.put("msg",ResponseCodeEnum.SENSOR_IS_EXIST.getMsg());
return resultMap;
}
- QueryWrapper<Sensor> wrapper_sensorKey = new QueryWrapper<>();
- wrapper_sensorKey.eq("sensor_key",sensor.getSensorKey());
- wrapper_sensorKey.eq("is_delete","0");
- if (sensorMapper.selectCount(wrapper_sensorKey)!=0){
- resultMap.put("code",ResponseCodeEnum.SENSOR_KEY_IS_EXIST.getCode());
- resultMap.put("msg",ResponseCodeEnum.SENSOR_KEY_IS_EXIST.getMsg());
+ QueryWrapper<Sensor> wrapper_code = new QueryWrapper<>();
+ wrapper_code.eq("code",sensor.getCode());
+ wrapper_code.eq("is_delete","0");
+ if (sensorMapper.selectCount(wrapper_code)!=0){
+ resultMap.put("code",ResponseCodeEnum.SENSOR_KEY_IS_USED.getCode());
+ resultMap.put("msg",ResponseCodeEnum.SENSOR_KEY_IS_USED.getMsg());
return resultMap;
}
- //sensorMapper.insertOne(sensor);
+ sensorMapper.insertOne(sensor);
//������������������
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String content = "������������:"+sensor.getName()+";";
- //logUtils.saveOperationForManage(request,content,Constants.INSERT_OPERATE_TYPE);
+ logUtils.saveOperationForManage(request,content,Constants.INSERT_OPERATE_TYPE);
+ resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode());
+ resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg());
+ return resultMap;
+ }
+
+ @Override
+ public Map<String, Object> updateSensor(Map<String,Object> updateSensorMap) {
+ Map<String,Object> resultMap = new HashMap<>();
+ if(ObjectUtils.isEmpty(updateSensorMap.get("id"))){
+ resultMap.put("code",ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode());
+ resultMap.put("msg",ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ return resultMap;
+ }
+ if (updateSensorMap.containsKey("name")){
+ if (updateSensorMap.get("name")==null||updateSensorMap.get("name")==""){
+ resultMap.put("code",ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode());
+ resultMap.put("msg",ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ return resultMap;
+ }
+ }
+ if (updateSensorMap.containsKey("code")){
+ if(ObjectUtils.isEmpty(updateSensorMap.get("code"))){
+ resultMap.put("code",ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode());
+ resultMap.put("msg",ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+ return resultMap;
+ }
+ }
+ Sensor oldSensor = sensorMapper.getSensorById(Integer.parseInt(updateSensorMap.get("id").toString()));
+ if (ObjectUtils.isEmpty(oldSensor)){
+ resultMap.put("code",ResponseCodeEnum.SENSOR_IS_NOT_EXIST.getCode());
+ resultMap.put("msg",ResponseCodeEnum.SENSOR_IS_NOT_EXIST.getMsg());
+ return resultMap;
+ }
+ QueryWrapper<Sensor> wrapper_code = new QueryWrapper<>();
+ wrapper_code.eq("code",updateSensorMap.get("code"));
+ wrapper_code.eq("is_delete","0");
+ List<Sensor> sensorList = sensorMapper.selectList(wrapper_code);
+ System.out.println(sensorList.get(0));
+ if (sensorList.size()!=0&&!sensorList.get(0).getId().toString().equals(updateSensorMap.get("id").toString())){
+ resultMap.put("code",ResponseCodeEnum.SENSOR_KEY_IS_USED.getCode());
+ resultMap.put("msg",ResponseCodeEnum.SENSOR_KEY_IS_USED.getMsg());
+ return resultMap;
+ }
+ sensorMapper.updateSensor(updateSensorMap);
+ HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+ String content = "������������:"+oldSensor.getName()+";";
+ for (Object key:updateSensorMap.keySet()) {
+ if (key.toString().equals("name")){
+ content = content+"���������:"+oldSensor.getName()+"->"+updateSensorMap.get(key)+";";
+ }
+ if (key.toString().equals("code")){
+ content = content+"������:"+oldSensor.getCode()+"->"+updateSensorMap.get(key)+";";
+ }
+ if (key.toString().equals("desc")){
+ content = content+"������:"+oldSensor.getDesc()+"->"+updateSensorMap.get(key)+";";
+ }
+ }
+ System.out.println(content);
+ logUtils.saveOperationForManage(request,content,Constants.UPDATE_OPERATE_TYPE);
resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode());
resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg());
return resultMap;
diff --git a/screen-manage/src/main/resources/mapper/SensorMapper.xml b/screen-manage/src/main/resources/mapper/SensorMapper.xml
index a5ec44d..123dc80 100644
--- a/screen-manage/src/main/resources/mapper/SensorMapper.xml
+++ b/screen-manage/src/main/resources/mapper/SensorMapper.xml
@@ -6,18 +6,15 @@
<resultMap id="BaseResultMap" type="com.moral.api.entity.Sensor">
<id column="id" property="id" />
<result column="name" property="name" />
- <result column="sensor_key" property="sensorKey" />
- <result column="unit" property="unit" />
- <result column="upper" property="upper" />
- <result column="lower" property="lower" />
+ <result column="desc" property="desc" />
+ <result column="code" property="code" />
<result column="create_time" property="createTime" />
<result column="update_time" property="updateTime" />
<result column="is_delete" property="isDelete" />
- <result column="desc" property="desc" />
</resultMap>
<sql id="Base_Column_List">
- s.id,s.name,s.sensor_key,s.unit,s.upper,s.lower,s.create_time,s.update_time,s.id_delete,s.desc
+ s.id,s.name,s.code,s.desc,s.create_time,s.update_time,s.is_delete
</sql>
<insert id="insertOne" parameterType="com.moral.api.entity.Sensor">
@@ -26,17 +23,8 @@
<if test="name != null">
name,
</if>
- <if test="sensorKey != null">
- sensor_key,
- </if>
- <if test="unit != null">
- unit,
- </if>
- <if test="upper != null">
- upper,
- </if>
- <if test="lower != null">
- lower,
+ <if test="code != null">
+ code,
</if>
<if test="desc != null">
`desc`,
@@ -46,17 +34,8 @@
<if test="name != null">
#{name},
</if>
- <if test="sensorKey != null">
- #{sensorKey},
- </if>
- <if test="unit != null">
- #{unit},
- </if>
- <if test="upper != null">
- #{upper},
- </if>
- <if test="lower != null">
- #{lower},
+ <if test="code != null">
+ #{code},
</if>
<if test="desc != null">
#{desc},
@@ -64,4 +43,30 @@
</trim>
</insert>
+ <select id="getSensorById" resultMap="BaseResultMap">
+ select
+ <include refid="Base_Column_List"></include>
+ from sensor s
+ where s.id = #{id}
+ and s.is_delete = 0
+ </select>
+
+ <update id="updateSensor" parameterType="java.util.Map">
+ update sensor
+ <set>
+ <if test="name != null">
+ name = #{name},
+ </if>
+ <if test="desc != null">
+ `desc` = #{desc},
+ </if>
+ <if test="code != null">
+ code = #{code},
+ </if>
+ <if test="isDelete != null">
+ is_delete = #{isDelete},
+ </if>
+ </set>
+ where id = #{id}
+ </update>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0