From af819f7cecad3a63d7e7b6417a12f04f3fd6ed86 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Thu, 18 Aug 2022 15:16:24 +0800
Subject: [PATCH] 风场模型基准信息相关代码

---
 screen-manage/src/main/java/com/moral/api/entity/BenchmarkWindConfig.java                  |   84 ++++++++++++++++
 screen-manage/src/main/java/com/moral/api/service/BenchmarkWindConfigService.java          |   20 ++++
 screen-manage/src/main/java/com/moral/api/service/impl/BenchmarkWindConfigServiceImpl.java |   80 ++++++++++++++++
 screen-manage/src/main/resources/mapper/BenchmarkWindConfigMapper.xml                      |   19 +++
 screen-manage/src/main/java/com/moral/api/mapper/BenchmarkWindConfigMapper.java            |   16 +++
 screen-manage/src/main/java/com/moral/api/controller/BenchmarkWindConfigController.java    |   59 +++++++++++
 6 files changed, 278 insertions(+), 0 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/controller/BenchmarkWindConfigController.java b/screen-manage/src/main/java/com/moral/api/controller/BenchmarkWindConfigController.java
new file mode 100644
index 0000000..5377149
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/controller/BenchmarkWindConfigController.java
@@ -0,0 +1,59 @@
+package com.moral.api.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.moral.api.entity.BenchmarkWindConfig;
+import com.moral.api.pojo.dto.account.AccountDTO;
+import com.moral.api.pojo.dto.account.AccountQueryDTO;
+import com.moral.api.pojo.dto.accountRole.AccountRoleDTO;
+import com.moral.api.pojo.form.account.AccountDeleteForm;
+import com.moral.api.pojo.form.account.AccountInsertForm;
+import com.moral.api.pojo.form.account.AccountQueryForm;
+import com.moral.api.pojo.form.account.AccountUpdateForm;
+import com.moral.api.pojo.form.accountRole.AccountRoleUpdateForm;
+import com.moral.api.pojo.vo.account.AccountQueryVO;
+import com.moral.api.service.BenchmarkWindConfigService;
+import com.moral.api.service.ManageAccountRoleService;
+import com.moral.api.service.ManageAccountService;
+import com.moral.constant.ResponseCodeEnum;
+import com.moral.constant.ResultMessage;
+import io.swagger.annotations.Api;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.Map;
+
+
+@Slf4j
+@Api(tags = {"������������������������"})
+@RestController
+@CrossOrigin(origins = "*", maxAge = 3600)
+@RequestMapping("/benchmarkWindConfig")
+public class BenchmarkWindConfigController {
+
+    @Resource
+    private BenchmarkWindConfigService benchmarkWindConfigService;
+
+    @PostMapping("insert")
+    public ResultMessage insert(@RequestBody Map map) {
+        if (ObjectUtils.isEmpty(map.get("name")) || ObjectUtils.isEmpty(map.get("benchmark")) || ObjectUtils.isEmpty(map.get("preservation")) || ObjectUtils.isEmpty(map.get("destinationTab")) || ObjectUtils.isEmpty(map.get("organizationId")) || ObjectUtils.isEmpty(map.get("regionCode"))){
+            return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(),
+                    ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg());
+        }
+
+        BenchmarkWindConfig benchmarkWindConfig = new BenchmarkWindConfig();
+        benchmarkWindConfig.setName(map.get("name").toString());
+        benchmarkWindConfig.setBenchmark(map.get("benchmark").toString());
+        benchmarkWindConfig.setPreservation(map.get("preservation").toString());
+        benchmarkWindConfig.setDestinationTab(map.get("destinationTab").toString());
+        benchmarkWindConfig.setOrganizationId(Integer.parseInt(map.get("organizationId").toString()));
+        benchmarkWindConfig.setRegionCode(map.get("regionCode").toString());
+
+        Map<String, Object> resultMap = benchmarkWindConfigService.insert(benchmarkWindConfig);
+        return ResultMessage.ok();
+    }
+
+
+
+}
diff --git a/screen-manage/src/main/java/com/moral/api/entity/BenchmarkWindConfig.java b/screen-manage/src/main/java/com/moral/api/entity/BenchmarkWindConfig.java
new file mode 100644
index 0000000..671f317
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/entity/BenchmarkWindConfig.java
@@ -0,0 +1,84 @@
+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.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author moral
+ * @since 2022-08-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class BenchmarkWindConfig extends Model<BenchmarkWindConfig> {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * id
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * ������
+     */
+    private String name;
+
+    /**
+     * ������
+     */
+    private String benchmark;
+
+    /**
+     * ������������������������
+     */
+    private String preservation;
+
+    /**
+     * ���������������������
+     */
+    private String destinationTab;
+
+    /**
+     * ������id
+     */
+    private Integer organizationId;
+
+    /**
+     * ������������
+     */
+    private String regionCode;
+
+    /**
+     * ������������
+     */
+    private Date createTime;
+
+    /**
+     * ������������
+     */
+    private Date updateTime;
+
+    /**
+     * ������������
+     */
+    private String isDelete;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.id;
+    }
+
+}
diff --git a/screen-manage/src/main/java/com/moral/api/mapper/BenchmarkWindConfigMapper.java b/screen-manage/src/main/java/com/moral/api/mapper/BenchmarkWindConfigMapper.java
new file mode 100644
index 0000000..d03d7c1
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/mapper/BenchmarkWindConfigMapper.java
@@ -0,0 +1,16 @@
+package com.moral.api.mapper;
+
+import com.moral.api.entity.BenchmarkWindConfig;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper ������
+ * </p>
+ *
+ * @author moral
+ * @since 2022-08-09
+ */
+public interface BenchmarkWindConfigMapper extends BaseMapper<BenchmarkWindConfig> {
+
+}
diff --git a/screen-manage/src/main/java/com/moral/api/service/BenchmarkWindConfigService.java b/screen-manage/src/main/java/com/moral/api/service/BenchmarkWindConfigService.java
new file mode 100644
index 0000000..210fbcc
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/service/BenchmarkWindConfigService.java
@@ -0,0 +1,20 @@
+package com.moral.api.service;
+
+import com.moral.api.entity.BenchmarkWindConfig;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  ���������
+ * </p>
+ *
+ * @author moral
+ * @since 2022-08-09
+ */
+public interface BenchmarkWindConfigService extends IService<BenchmarkWindConfig> {
+
+    Map<String, Object> insert(BenchmarkWindConfig benchmarkWindConfig);
+
+}
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/BenchmarkWindConfigServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/BenchmarkWindConfigServiceImpl.java
new file mode 100644
index 0000000..247b350
--- /dev/null
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/BenchmarkWindConfigServiceImpl.java
@@ -0,0 +1,80 @@
+package com.moral.api.service.impl;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.moral.api.entity.BenchmarkWindConfig;
+import com.moral.api.mapper.BenchmarkWindConfigMapper;
+import com.moral.api.service.BenchmarkWindConfigService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.moral.api.util.LogUtils;
+import com.moral.constant.Constants;
+import com.moral.constant.ResponseCodeEnum;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * <p>
+ *  ���������������
+ * </p>
+ *
+ * @author moral
+ * @since 2022-08-09
+ */
+@Service
+public class BenchmarkWindConfigServiceImpl extends ServiceImpl<BenchmarkWindConfigMapper, BenchmarkWindConfig> implements BenchmarkWindConfigService {
+
+    @Autowired
+    private BenchmarkWindConfigMapper benchmarkWindConfigMapper;
+
+    @Override
+    public Map<String, Object> insert(BenchmarkWindConfig benchmarkWindConfig) {
+        Map<String, Object> resultMap = new HashMap<>();
+
+        String benchmark = benchmarkWindConfig.getBenchmark();
+        String preservation = benchmarkWindConfig.getPreservation();
+        Map<String, String> benchmarkMap = mapStringToMap(benchmark);
+        Map<String, String> preservationMap = mapStringToMap(preservation);
+        benchmark = JSON.toJSONString(benchmarkMap);
+        preservation = JSON.toJSONString(preservationMap);
+        benchmarkWindConfig.setBenchmark(benchmark);
+        benchmarkWindConfig.setPreservation(preservation);
+        benchmarkWindConfigMapper.insert(benchmarkWindConfig);
+
+        //������������
+        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
+        StringBuilder content = new StringBuilder();
+        content.append("������������������������������").append(benchmarkWindConfig.getName() + ";");
+        LogUtils.saveOperationForManage(request,content.toString(),Constants.INSERT_OPERATE_TYPE);
+
+        resultMap.put("code", ResponseCodeEnum.SUCCESS.getCode());
+        resultMap.put("msg", ResponseCodeEnum.SUCCESS.getMsg());
+        return resultMap;
+    }
+
+    /**
+     * ���Map������������������Map
+     *
+     * @param str Map���������
+     * @return Map
+     */
+    public static Map<String,String> mapStringToMap(String str){
+        str = str.substring(1, str.length()-1);
+        String[] strs = str.split(",");
+        Map<String,String> map = new HashMap<String, String>();
+        for (String string : strs) {
+            String key = string.split("=")[0];
+            String value = string.split("=")[1];
+            // ������������������
+            String key1 = key.trim();
+            String value1 = value.trim();
+            map.put(key1, value1);
+        }
+        return map;
+    }
+}
diff --git a/screen-manage/src/main/resources/mapper/BenchmarkWindConfigMapper.xml b/screen-manage/src/main/resources/mapper/BenchmarkWindConfigMapper.xml
new file mode 100644
index 0000000..5016bd5
--- /dev/null
+++ b/screen-manage/src/main/resources/mapper/BenchmarkWindConfigMapper.xml
@@ -0,0 +1,19 @@
+<?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.BenchmarkWindConfigMapper">
+
+        <!-- ������������������������ -->
+        <resultMap id="BaseResultMap" type="com.moral.api.entity.BenchmarkWindConfig">
+                    <id column="id" property="id" />
+                    <result column="name" property="name" />
+                    <result column="benchmark" property="benchmark" />
+                    <result column="preservation" property="preservation" />
+                    <result column="destination_tab" property="destinationTab" />
+                    <result column="organization_id" property="organizationId" />
+                    <result column="region_code" property="regionCode" />
+                    <result column="create_time" property="createTime" />
+                    <result column="update_time" property="updateTime" />
+                    <result column="is_delete" property="isDelete" />
+        </resultMap>
+
+</mapper>
\ No newline at end of file

--
Gitblit v1.8.0