lizijie
2021-08-24 d45606e59e08669d99e830554722b40452209d9e
页面布局查询、新建、删除接口
7 files added
272 ■■■■■ changed files
screen-manage/src/main/java/com/moral/api/controller/OrganizationLayoutController.java 60 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/entity/OrganizationLayout.java 68 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/mapper/OrganizationLayoutMapper.java 19 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/pojo/form/organizationLayout/OrganizationLayoutSetUp.java 15 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/OrganizationLayoutService.java 28 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/service/impl/OrganizationLayoutServiceImpl.java 58 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/resources/mapper/OrganizationLayoutMapper.xml 24 ●●●●● patch | view | raw | blame | history
screen-manage/src/main/java/com/moral/api/controller/OrganizationLayoutController.java
New file
@@ -0,0 +1,60 @@
package com.moral.api.controller;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.moral.api.entity.OrganizationLayout;
import com.moral.api.pojo.form.organizationLayout.OrganizationLayoutSetUp;
import com.moral.api.service.OrganizationLayoutService;
import com.moral.constant.ResponseCodeEnum;
import com.moral.constant.ResultMessage;
import com.moral.util.WebUtils;
import io.swagger.annotations.Api;
import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j
@Api(tags = {"页面布局"})
@RestController
@RequestMapping("/organizationLayout")
public class OrganizationLayoutController {
    @Resource
    private OrganizationLayoutService organizationLayoutService;
    @RequestMapping(value = "getLayoutData",method = RequestMethod.GET)
    @ResponseBody
    public ResultMessage getLayoutData(HttpServletRequest request){
        Map<String,Object> parameters = WebUtils.getParametersStartingWith(request,null);
        int organization_id = Integer.parseInt(parameters.get("organization_id").toString());
        int version_id = Integer.parseInt(parameters.get("version_id").toString());
        if (ObjectUtils.isEmpty(organization_id) || ObjectUtils.isEmpty(version_id)){
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
        }
        List<Map<String,Object>> result = organizationLayoutService.getData(parameters);
        return ResultMessage.ok(result);
    }
    @RequestMapping(value = "setUpLayout",method = RequestMethod.POST)
    @ResponseBody
    public ResultMessage setUpLayout(@RequestBody OrganizationLayoutSetUp organizationLayoutSetUp){
        int organization_id = organizationLayoutSetUp.getOrganizationId();
        int version_id = organizationLayoutSetUp.getVersionId();
        if (ObjectUtils.isEmpty(organization_id) || ObjectUtils.isEmpty(version_id)){
            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
        }
        Map<String, Integer> map = new HashMap<>();
        map.put("organization_id",organization_id);
        map.put("version_id",version_id);
        organizationLayoutService.delete(map);
        List<OrganizationLayout> organizationLayouts = organizationLayoutSetUp.getOrganizationLayouts();
        organizationLayoutService.insertList(organizationLayouts);
        return ResultMessage.ok();
    }
}
screen-manage/src/main/java/com/moral/api/entity/OrganizationLayout.java
New file
@@ -0,0 +1,68 @@
package com.moral.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
 * <p>
 *
 * </p>
 *
 * @author moral
 * @since 2021-08-23
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class OrganizationLayout extends Model<OrganizationLayout> {
    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 组织id
     */
    private Integer organizationId;
    /**
     * 型号id
     */
    private Integer versionId;
    /**
     * 区域
     */
    private String position;
    /**
     * 区域位置
     */
    private Integer positionIndex;
    /**
     * 因子编码
     */
    private String sensorCode;
    /**
     * 创建时间
     */
    private Date createTime;
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
screen-manage/src/main/java/com/moral/api/mapper/OrganizationLayoutMapper.java
New file
@@ -0,0 +1,19 @@
package com.moral.api.mapper;
import com.moral.api.entity.OrganizationLayout;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author moral
 * @since 2021-08-23
 */
public interface OrganizationLayoutMapper extends BaseMapper<OrganizationLayout> {
    void insertList(List<OrganizationLayout> organizationLayoutList);
}
screen-manage/src/main/java/com/moral/api/pojo/form/organizationLayout/OrganizationLayoutSetUp.java
New file
@@ -0,0 +1,15 @@
package com.moral.api.pojo.form.organizationLayout;
import com.moral.api.entity.OrganizationLayout;
import lombok.Data;
import java.util.List;
import java.util.Map;
@Data
public class OrganizationLayoutSetUp {
    private int organizationId;
    private int versionId;
    private List<OrganizationLayout> organizationLayouts;
}
screen-manage/src/main/java/com/moral/api/service/OrganizationLayoutService.java
New file
@@ -0,0 +1,28 @@
package com.moral.api.service;
import com.moral.api.entity.OrganizationLayout;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
/**
 * <p>
 *  服务类
 * </p>
 *
 * @author moral
 * @since 2021-08-23
 */
public interface OrganizationLayoutService extends IService<OrganizationLayout> {
    List<Map<String,Object>> getData(Map map);
    @Transactional
    void delete(Map map);
    @Transactional
    void insertList(List<OrganizationLayout> list);
}
screen-manage/src/main/java/com/moral/api/service/impl/OrganizationLayoutServiceImpl.java
New file
@@ -0,0 +1,58 @@
package com.moral.api.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.moral.api.entity.OrganizationLayout;
import com.moral.api.mapper.OrganizationLayoutMapper;
import com.moral.api.service.OrganizationLayoutService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
 * <p>
 *  服务实现类
 * </p>
 *
 * @author moral
 * @since 2021-08-23
 */
@Service
public class OrganizationLayoutServiceImpl extends ServiceImpl<OrganizationLayoutMapper, OrganizationLayout> implements OrganizationLayoutService {
    @Autowired(required = false)
    private OrganizationLayoutMapper organizationLayoutMapper;
    @Override
    public List<Map<String, Object>> getData(Map map) {
        int organization_id = Integer.parseInt(map.get("organization_id").toString());
        int version_id = Integer.parseInt(map.get("version_id").toString());
        QueryWrapper<OrganizationLayout> wrapper_organizationLayout = new QueryWrapper<>();
        wrapper_organizationLayout.eq("organization_id",organization_id);
        wrapper_organizationLayout.eq("version_id",version_id);
        List<Map<String,Object>> organizationLayouts = new ArrayList<>();
        organizationLayouts = organizationLayoutMapper.selectMaps(wrapper_organizationLayout);
        return organizationLayouts;
    }
    @Transactional
    @Override
    public void delete(Map map) {
        int organization_id = Integer.parseInt(map.get("organization_id").toString());
        int version_id = Integer.parseInt(map.get("version_id").toString());
        QueryWrapper<OrganizationLayout> wrapper_organizationLayout = new QueryWrapper<>();
        wrapper_organizationLayout.eq("organization_id",organization_id);
        wrapper_organizationLayout.eq("version_id",version_id);
        organizationLayoutMapper.delete(wrapper_organizationLayout);
    }
    @Transactional
    @Override
    public void insertList(List<OrganizationLayout> list) {
        organizationLayoutMapper.insertList(list);
    }
}
screen-manage/src/main/resources/mapper/OrganizationLayoutMapper.xml
New file
@@ -0,0 +1,24 @@
<?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.api.mapper.OrganizationLayoutMapper">
        <!-- 通用查询映射结果 -->
        <resultMap id="BaseResultMap" type="com.moral.api.entity.OrganizationLayout">
                    <id column="id" property="id" />
                    <result column="organization_id" property="organizationId" />
                    <result column="version_id" property="versionId" />
                    <result column="position" property="position" />
                    <result column="position_index" property="positionIndex" />
                    <result column="sensor_code" property="sensorCode" />
        </resultMap>
    <insert id="insertList" parameterType="java.util.List">
        insert into organization_layout
        (organization_id,version_id,position,position_index,sensor_code)
        values
        <foreach collection="list" item="organizationLayout" index="index" separator=",">
            (#{organizationLayout.organizationId},#{organizationLayout.versionId},#{organizationLayout.position},#{organizationLayout.positionIndex},#{organizationLayout.sensorCode})
        </foreach>
    </insert>
</mapper>