hanfucheng пре 1 година
родитељ
комит
3bd23ca480

+ 43 - 6
src/main/java/com/sooka/sponest/data/generalbusiness/controller/CenterdataTKeyProjectsController.java

@@ -1,14 +1,18 @@
 package com.sooka.sponest.data.generalbusiness.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.utils.bean.BeanUtils;
 import com.ruoyi.common.core.web.controller.BaseController;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.TableDataInfo;
 import com.ruoyi.common.log.annotation.Log;
 import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.security.annotation.RequiresPermissions;
+import com.ruoyi.system.api.domain.SysUser;
 import com.sooka.sponest.data.generalbusiness.domain.CenterdataTKeyProjects;
+import com.sooka.sponest.data.generalbusiness.domain.CenterdataTKeyProjectsBo;
 import com.sooka.sponest.data.generalbusiness.service.ICenterdataTKeyProjectsService;
 import com.sooka.sponest.data.utils.ExcelUtil;
 import io.swagger.annotations.Api;
@@ -20,7 +24,11 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 重点工程Controller
@@ -160,13 +168,31 @@ public class CenterdataTKeyProjectsController extends BaseController {
     @ApiOperation(value = "接受报文", notes = "接受报文")
     @Log(title = "接受报文", businessType = BusinessType.INSERT)
     @PostMapping("/receivedMessage")
-    public AjaxResult receivedMessage(@RequestBody List<CenterdataTKeyProjects> centerdataTKeyProjects) {
-        for (CenterdataTKeyProjects projects : centerdataTKeyProjects){
+    public AjaxResult receivedMessage(@RequestBody Map<String,Object> map) {
+        List list = JSON.parseArray(JSON.toJSONString(map.get("list")));
+        List<CenterdataTKeyProjects> centerdataTKeyProjectsList=new ArrayList<>();
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
+         list.forEach(item->{
+             CenterdataTKeyProjects centerdataTKeyProjects= new CenterdataTKeyProjects();
+          CenterdataTKeyProjectsBo centerdataTKeyProjectsBo=   JSON.parseObject(JSON.toJSONString(item), CenterdataTKeyProjectsBo.class);
+             BeanUtils.copyProperties(centerdataTKeyProjectsBo,centerdataTKeyProjects);
+             try {
+                 centerdataTKeyProjects.setEndTime(sdf.parse(centerdataTKeyProjectsBo.getEndTime()));
+                 centerdataTKeyProjects.setRealityCompletedTime(sdf.parse(centerdataTKeyProjectsBo.getRealityCompletedTime()));
+                 centerdataTKeyProjects.setStartTime(sdf.parse(centerdataTKeyProjectsBo.getStartTime()));
+                 centerdataTKeyProjects.setContinuationProjectStartTime(sdf.parse(centerdataTKeyProjectsBo.getContinuationProjectStartTime()));
+             } catch (ParseException e) {
+                 e.printStackTrace();
+             }
+             centerdataTKeyProjectsList.add(centerdataTKeyProjects);
+
+         });
+        for (CenterdataTKeyProjects projects : centerdataTKeyProjectsList ){
             if (StringUtils.isEmpty(projects.getProjectId())||StringUtils.isEmpty(projects.getProjectName())||StringUtils.isEmpty(projects.getLongitude())||
                     StringUtils.isEmpty(projects.getLatitude())||StringUtils.isEmpty(projects.getTerritoriality())||StringUtils.isEmpty(projects.getPrincipal())||
                     StringUtils.isEmpty(projects.getPhone())||StringUtils.isEmpty(projects.getConstructionSite())||StringUtils.isEmpty(projects.getNature())||
             StringUtils.isEmpty(projects.getIntroduction())){
-                return AjaxResult.error(5002,"缺少必要参数");
+                return AjaxResult.error(5002, "缺少必要参数");
             }
             if (projects.getEndTime()!=null&&projects.getStartTime()!=null){
                 if (projects.getEndTime().compareTo(projects.getStartTime())<0){
@@ -174,9 +200,19 @@ public class CenterdataTKeyProjectsController extends BaseController {
                 }
             }
         }
-        int result;
-        try {
-            result = centerdataTKeyProjectsService.receivedMessage(centerdataTKeyProjects);
+        int result = 0;
+        try {Object userInfoObject = map.get("userInfo");
+            if (userInfoObject instanceof Map) {
+                Map<String, Object> userInfoMap = (Map<String, Object>) userInfoObject;
+                SysUser sysUser = new SysUser();  // 创建SysUser实体类对象
+
+                // 将userInfoMap中的属性值赋值给sysUser对象的对应属性
+                sysUser.setDeptId(Long.valueOf(userInfoMap.get("deptId").toString()));
+                sysUser.setDeptNames(userInfoMap.get("deptNames").toString());
+                sysUser.setUserId(Long.valueOf(userInfoMap.get("userId").toString()));
+                sysUser.setNickName(userInfoMap.get("nickName").toString());
+                result = centerdataTKeyProjectsService.receivedMessage(centerdataTKeyProjectsList,sysUser);
+            }
         }catch (Exception e){
             logger.error(e.getMessage());
             return AjaxResult.error("数据格式错误");
@@ -195,4 +231,5 @@ public class CenterdataTKeyProjectsController extends BaseController {
     public R pushMessage(@PathVariable String[] ids) {
         return centerdataTKeyProjectsService.pushMessage(ids);
     }
+
 }

+ 5 - 0
src/main/java/com/sooka/sponest/data/generalbusiness/domain/CenterdataTKeyProjects.java

@@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import javax.validation.constraints.NotBlank;
 import java.util.Date;
@@ -133,6 +134,7 @@ public class CenterdataTKeyProjects extends BaseBusinessEntity {
     /**
      * 开复工时间
      */
+    @DateTimeFormat(pattern = "yyyy-MM")
     @JsonFormat(pattern = "yyyy-MM")
     @Excel(name = "开复工时间",dateFormat = "yyyy-MM")
     private Date startTime;
@@ -140,6 +142,7 @@ public class CenterdataTKeyProjects extends BaseBusinessEntity {
     /**
      * 计划竣工时间
      */
+    @DateTimeFormat(pattern = "yyyy-MM")
     @JsonFormat(pattern = "yyyy-MM")
     @Excel(name = "计划竣工时间",dateFormat = "yyyy-MM")
     private Date endTime;
@@ -277,6 +280,7 @@ public class CenterdataTKeyProjects extends BaseBusinessEntity {
     @Excel(name = "续建项目去年底前累计投资(万元)")
     private String continuationProjectInvest;
 
+    @DateTimeFormat(pattern = "yyyy-MM")
     @JsonFormat(pattern = "yyyy-MM")
     @ApiModelProperty(value = "续建项目首次开工时间", required = false)
     @Excel(name = "续建项目首次开工时间")
@@ -298,6 +302,7 @@ public class CenterdataTKeyProjects extends BaseBusinessEntity {
     @Excel(name = "今年实际累计完成投资")
     private String thisYearCumulativeInvestment;
 
+    @DateTimeFormat(pattern = "yyyy-MM")
     @JsonFormat(pattern = "yyyy-MM")
     @ApiModelProperty(value = "实际竣工时间", required = false)
     @Excel(name = "实际竣工时间")

+ 2 - 1
src/main/java/com/sooka/sponest/data/generalbusiness/service/ICenterdataTKeyProjectsService.java

@@ -1,6 +1,7 @@
 package com.sooka.sponest.data.generalbusiness.service;
 
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.system.api.domain.SysUser;
 import com.sooka.sponest.data.generalbusiness.domain.CenterdataTKeyProjects;
 
 import java.util.List;
@@ -59,7 +60,7 @@ public interface ICenterdataTKeyProjectsService {
     * @author 韩福成
     * @date 2024/1/18 14:45
     */
-    int receivedMessage(List<CenterdataTKeyProjects> centerdataTKeyProjects);
+    int receivedMessage(List<CenterdataTKeyProjects> centerdataTKeyProjects, SysUser userInfo );
 
     /*
     * 推送报文

+ 15 - 9
src/main/java/com/sooka/sponest/data/generalbusiness/service/impl/CenterdataTKeyProjectsServiceImpl.java

@@ -9,7 +9,7 @@ import com.ruoyi.common.core.utils.uuid.IdUtils;
 import com.ruoyi.common.datascope.annotation.DataScopeMutiDept;
 import com.ruoyi.common.security.service.TokenService;
 import com.ruoyi.common.security.utils.SecurityUtils;
-import com.ruoyi.system.api.model.LoginUser;
+import com.ruoyi.system.api.domain.SysUser;
 import com.sooka.sponest.data.base.service.impl.BaseServiceImpl;
 import com.sooka.sponest.data.generalbusiness.domain.CenterdataTKeyProjects;
 import com.sooka.sponest.data.generalbusiness.mapper.CenterdataTKeyProjectsMapper;
@@ -139,27 +139,33 @@ public class CenterdataTKeyProjectsServiceImpl extends BaseServiceImpl implement
     * @author 韩福成
     * @date 2024/1/18 14:45
     */@Override
-    public int receivedMessage(List<CenterdataTKeyProjects> centerdataTKeyProjects) {
+    public int receivedMessage(List<CenterdataTKeyProjects> centerdataTKeyProjects, SysUser user) {
         logger.info("token=========================="+ SecurityUtils.getToken());
         int i = 0;
-        LoginUser user = tokenService.getLoginUser(SecurityUtils.getToken());
-        logger.info("user=========================="+ user.getSysUser().getNickName());
+//        LoginUser user = tokenService.getLoginUser(SecurityUtils.getToken());
+        logger.info("user=========================="+ user);
         for (CenterdataTKeyProjects projects : centerdataTKeyProjects){
+            /*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
+            try {
+                projectssdf.parse(projects.getStartTime());
+            } catch (ParseException e) {
+                e.printStackTrace();
+            }*/
             CenterdataTKeyProjects project = centerdataTKeyProjectsMapper.selectCenterdataTKeyProjectsById(projects.getId());
             projects.setMessage(JSON.toJSONString(projects));
             if (project==null){
                 projects.setId(IdUtils.fastUUID());
-                projects.setDeptId(user.getSysUser().getDeptId());
-                logger.info("deptId========================"+ user.getSysUser().getDeptId());
-                projects.setDeptName(user.getSysUser().getDeptNames());
+                projects.setDeptId(user.getDeptId());
+                logger.info("deptId========================"+ user.getDeptId());
+                projects.setDeptName(user.getDeptNames());
                 projects.setCreateBy(user.getUserId().toString());
-                projects.setCreateName( user.getSysUser().getNickName());
+                projects.setCreateName( user.getNickName());
                 projects.setCreateTime(DateUtils.getNowDate());
                 i = centerdataTKeyProjectsMapper.insertCenterdataTKeyProjects(projects);
             }else {
                 projects.setUpdateBy(user.getUserId());
                 projects.setUpdateTime(DateUtils.getNowDate());
-                projects.setUpdateName( user.getSysUser().getNickName());
+                projects.setUpdateName( user.getNickName());
                 i = centerdataTKeyProjectsMapper.updateCenterdataTKeyProjects(projects);
             }
         }