Commit 7b92c8c6 authored by 王夏晖's avatar 王夏晖

设备参数库模板后台管理

parent d3a70c95
package org.rcisoft.business.manage.controller;
/*固定导入*/
import io.swagger.annotations.ApiOperation;
import org.rcisoft.business.manage.entity.BusLibraryParam;
import org.rcisoft.business.manage.service.BusLibraryParamService;
import org.rcisoft.business.manage.vo.BusLibraryParamList;
import org.rcisoft.core.constant.MessageConstant;
import org.rcisoft.core.controller.PaginationController;
import org.rcisoft.core.model.PersistModel;
import org.rcisoft.core.result.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
/**
* Created by on 2018-5-2 16:09:30.
*/
@RestController
@RequestMapping("manage/buslibraryparam")
public class BusLibraryParamController extends PaginationController<BusLibraryParam> {
@Autowired
private BusLibraryParamService busLibraryParamServiceImpl;
@ApiOperation(value="添加设备参数库模板", notes="添加设备参数库模板")
@PostMapping(value = "/add")
public Result add(@Valid BusLibraryParamList busLibraryParamList) {
PersistModel data = busLibraryParamServiceImpl.save(busLibraryParamList);
return Result.builder(data,
MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR,
busLibraryParamList);
}
@ApiOperation(value="修改设备参数库模板", notes="修改设备参数库模板")
@PutMapping("/update")
public Result update(@Valid BusLibraryParamList busLibraryParamList) {
PersistModel data = busLibraryParamServiceImpl.merge(busLibraryParamList);
return Result.builder(data,
MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR,
busLibraryParamList);
}
@ApiOperation(value="删除设备参数库模板", notes="删除设备参数库模板")
@PutMapping("/delete")
public Result delete(@RequestParam String devNum) {
PersistModel data = busLibraryParamServiceImpl.delete(devNum);
return Result.builder(data,
MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR,
devNum);
}
}
package org.rcisoft.business.manage.dao;
import org.apache.ibatis.annotations.Select;
import org.rcisoft.business.manage.entity.BusLibraryParam;
import org.rcisoft.core.base.BaseMapper;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
/**
* Created with on 2018-5-2 16:09:30.
*/
@Repository
public interface BusLibraryParamRepository extends BaseMapper<BusLibraryParam> {
@Select("<script>select * from bus_param_library where dev_num = #{dev_num} limit 1</script>")
List<Map<String,Object>> queryParamLibraryByDev(Map<String,Object> map);
}
package org.rcisoft.business.manage.entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
* Created with on 2018-5-2 16:09:30.
*/
@Entity
@Data
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "bus_library_param")
public class BusLibraryParam{
private String id;
private String devNum;
private String param;
private String compareFlag;
}
package org.rcisoft.business.manage.service;
import org.rcisoft.business.manage.vo.BusLibraryParamList;
import org.rcisoft.core.model.PersistModel;
/**
* Created by on 2018-5-2 16:09:30.
*/
public interface BusLibraryParamService {
/**
* 保存
* @return
*/
PersistModel save(BusLibraryParamList busLibraryParamList);
/**
* 删除
* @return
*/
PersistModel delete(String devNum);
/**
* 修改
* @return
*/
PersistModel merge(BusLibraryParamList busLibraryParamList);
}
package org.rcisoft.business.manage.service.impl;
import lombok.extern.slf4j.Slf4j;
import org.rcisoft.business.manage.dao.BusLibraryParamRepository;
import org.rcisoft.business.manage.entity.BusLibraryParam;
import org.rcisoft.business.manage.service.BusLibraryParamService;
import org.rcisoft.business.manage.vo.BusLibraryParamList;
import org.rcisoft.core.aop.PageUtil;
import org.rcisoft.core.model.PersistModel;
import org.rcisoft.core.util.UserUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
/**
* Created by on 2018-5-2 16:09:30.
*/
@Service
@Transactional(readOnly = true,propagation = Propagation.NOT_SUPPORTED)
@Slf4j
public class BusLibraryParamServiceImpl implements BusLibraryParamService {
@Autowired
private BusLibraryParamRepository busLibraryParamRepository;
/**
* 保存 busLibraryParam
* @return
*/
@Transactional(propagation = Propagation.REQUIRED,isolation = Isolation.DEFAULT)
@Override
public PersistModel save(BusLibraryParamList busLibraryParamList){
int line = 0;
List<BusLibraryParam> busLibraryParams = busLibraryParamList.getBusLibraryParamList();
for(BusLibraryParam bp : busLibraryParams){
bp.setId(UUID.randomUUID().toString().replace("-",""));
line = busLibraryParamRepository.insertSelective(bp);
}
return new PersistModel(line);
}
/**
* 删除
* @return
*/
@Transactional(propagation = Propagation.REQUIRED,isolation = Isolation.DEFAULT)
@Override
public PersistModel delete(String devNum){
int line = 0;
Example example = new Example(BusLibraryParam.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("devNum",devNum);
Map<String,Object> map = new HashMap<>();
map.put("dev_num",devNum);
if(busLibraryParamRepository.queryParamLibraryByDev(map)==null || busLibraryParamRepository.queryParamLibraryByDev(map).size()<1){
line = busLibraryParamRepository.deleteByExample(example);
}
return new PersistModel(line);
}
/**
* 修改 busLibraryParam
* @return
*/
@Transactional(propagation = Propagation.REQUIRED,isolation = Isolation.DEFAULT)
@Override
public PersistModel merge(BusLibraryParamList busLibraryParamList){
PersistModel pm = delete(busLibraryParamList.getBusLibraryParamList().get(0).getDevNum());
if(pm.isSuccessBySinglePersist()){
return save(busLibraryParamList);
}
return new PersistModel(0);
}
}
package org.rcisoft.business.manage.vo;
import org.rcisoft.business.manage.entity.BusLibraryParam;
import java.util.List;
public class BusLibraryParamList {
private List<BusLibraryParam> busLibraryParamList;
public List<BusLibraryParam> getBusLibraryParamList() {
return busLibraryParamList;
}
public void setBusLibraryParamList(List<BusLibraryParam> busLibraryParamList) {
this.busLibraryParamList = busLibraryParamList;
}
}
<?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="org.rcisoft.business.manage.dao.BusLibraryParamRepository">
<resultMap id="BaseResultMap" type="org.rcisoft.business.manage.entity.BusLibraryParam">
<id column="ID" jdbcType="VARCHAR" property="id"/>
<result column="DEV_NUM" jdbcType="VARCHAR" property="devNum"/>
<result column="PARAM" jdbcType="VARCHAR" property="param"/>
<result column="COMPARE_FLAG" jdbcType="CHAR" property="compareFlag"/>
</resultMap>
<!--<cache type="${corePackag!}.util.RedisCache"/>-->
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment