diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java
index c35f1d7d..e098b0b8 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java
@@ -3,10 +3,16 @@ import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
import com.adc.da.slrs.sarStandProjectLibrary.entity.*;
import com.adc.da.slrs.sarStandProjectLibrary.service.impl.SarStandProjectLibraryServiceImpl;
+import com.adc.da.sys.util.UUIDUtils;
import com.alibaba.excel.EasyExcel;
import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParser;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import io.swagger.annotations.Api;
@@ -14,6 +20,8 @@ import com.adc.da.base.web.BaseController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.net.URLEncoder;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.*;
/**
*
@@ -218,8 +226,73 @@ public class SarStandProjectLibraryController extends BaseController list){
- sarStandProjectLibraryService.saveBatch(list);
- return Result.success("200","新增成功",list);
+ public ResponseDto save(@RequestBody String jsonStr){
+ Head head = new Head();
+ ResponseDto responseDto = new ResponseDto();
+
+// try {
+ //是数组就JSONarray,是对象就JSONobject
+ //把字符串转换成对象
+ JsonObject jsonObject = (JsonObject) new JsonParser().parse(jsonStr);
+ //要把jsonObject里的HEAD强转成JsonObject类型
+ JsonObject HEAD = (JsonObject) jsonObject.get("HEAD");
+ //因为是最后要取的值了,所以就拿到之后把它转换成String类型
+ ;
+ HEAD.get("CONSUMER").getAsString();
+
+ head.setBIZTRANSACTIONID(HEAD.get("BIZTRANSACTIONID").getAsString());
+
+
+ //LIST是数组,所以强转成JSONArray
+ JsonArray LIST = (JsonArray) jsonObject.get("LIST");
+ for (int i = 0; i < LIST.size(); i++) {
+ //把数组中的第一个强转成对象
+ JsonObject projectObject = (JsonObject) LIST.get(i);
+
+ //把刚刚拿到的值存到实体类里
+ SarStandProjectLibrary sarStandProjectLibrary = new SarStandProjectLibrary();
+ sarStandProjectLibrary
+ .setProjectPlatfor(projectObject.get("eng_platform").getAsString())
+ .setProjectNumber(projectObject.get("code").getAsString())
+ .setProjectName(projectObject.get("name").getAsString())
+ .setProjectClassification(projectObject.get("catalog_name").getAsString())
+ .setProjectStatus(projectObject.get("project_status").getAsString())
+ .setProjectGroup(projectObject.get("project_group_name").getAsString())
+ .setCurrentNode(projectObject.get("project_current_milestone").getAsString())
+ .setProjectLevel(projectObject.get("project_level").getAsString())
+ .setProductLine(projectObject.get("eng_product_line").getAsString());
+
+ projectObject.get("target_end_on").getAsString();
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+
+ Date targetBeginOn = null;
+ try {
+ targetBeginOn = simpleDateFormat.parse(projectObject.get("target_begin_on").getAsString());
+ Date targetEndOn = simpleDateFormat.parse(projectObject.get("target_end_on").getAsString());
+ sarStandProjectLibrary
+ .setProjectStartDate(targetBeginOn)
+ .setProjectEndDate(targetEndOn);
+
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
+
+
+ sarStandProjectLibrary.setId(UUIDUtils.randomUUID20());
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("project_number",sarStandProjectLibrary.getProjectNumber());
+
+ sarStandProjectLibraryService.saveOrUpdate(sarStandProjectLibrary,queryWrapper);
+
+ }
+// }catch (Exception e){
+// head.setERRORCODE("2");
+// head.setRESULT("业务失败需要重做");
+// return responseDto(head);
+// }
+ head.setERRORCODE("0");
+ head.setRESULT("成功");
+ responseDto.setHEAD(head);
+ return responseDto;
}
}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/Head.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/Head.java
new file mode 100644
index 00000000..64cff205
--- /dev/null
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/Head.java
@@ -0,0 +1,27 @@
+package com.adc.da.slrs.sarStandProjectLibrary.entity;
+
+import com.adc.da.base.entity.BaseEntity;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+@Data
+@Accessors(chain = true)
+public class Head extends BaseEntity {
+ private String BIZTRANSACTIONID;
+ private String RESULT;
+ private String ERRORCODE;
+ private String ERRORINFO;
+ private String COMMENTS;
+ private String SUCCESSCOUNT;
+
+ public Head(String BIZTRANSACTIONID, String RESULT, String ERRORCODE, String ERRORINFO, String COMMENTS, String SUCCESSCOUNT) {
+ this.BIZTRANSACTIONID = BIZTRANSACTIONID;
+ this.RESULT = RESULT;
+ this.ERRORCODE = ERRORCODE;
+ this.ERRORINFO = ERRORINFO;
+ this.COMMENTS = COMMENTS;
+ this.SUCCESSCOUNT = SUCCESSCOUNT;
+ }
+
+ public Head(){};
+}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/ResponseDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/ResponseDto.java
new file mode 100644
index 00000000..d8a99c92
--- /dev/null
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/entity/ResponseDto.java
@@ -0,0 +1,27 @@
+package com.adc.da.slrs.sarStandProjectLibrary.entity;
+
+
+import lombok.Data;
+
+import java.util.List;
+@Data
+public class ResponseDto {
+
+ private Head HEAD;
+
+// private List LIST;
+
+// public ResponseDto(Head HEAD, List LIST) {
+// this.HEAD = HEAD;
+// this.LIST = LIST;
+// }
+
+
+ public ResponseDto(Head head) {
+ this.HEAD = head;
+ }
+
+ public ResponseDto() {
+
+ }
+}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/controller/SarStandProjectTeamController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/controller/SarStandProjectTeamController.java
index 3727f519..8fc7b55f 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/controller/SarStandProjectTeamController.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/controller/SarStandProjectTeamController.java
@@ -3,20 +3,19 @@ package com.adc.da.slrs.sarStandProjectTeam.controller;
import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
+import com.adc.da.slrs.sarStandProjectLibrary.entity.Head;
+import com.adc.da.slrs.sarStandProjectLibrary.entity.ResponseDto;
import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibrary;
import com.adc.da.slrs.sarStandProjectTeam.service.ISarStandProjectTeamService;
+import com.google.gson.*;
import io.swagger.annotations.ApiOperation;
+import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.AutoConfigureBefore;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.*;
import com.adc.da.slrs.sarStandProjectTeam.entity.SarStandProjectTeam;
import io.swagger.annotations.Api;
-import org.springframework.web.bind.annotation.RestController;
import com.adc.da.base.web.BaseController;
-import java.util.List;
/**
*
@@ -36,8 +35,11 @@ public class SarStandProjectTeamController extends BaseController list){
- sarStandProjectTeamService.saveBatch(list);
- return Result.success("200","新增成功",list);
+ public ResponseDto save(@RequestBody String jsonStr){
+ Head head = sarStandProjectTeamService.AnalysisJsonAndStorage(jsonStr);
+
+ ResponseDto responseDto = new ResponseDto(head);
+ return responseDto;
+
}
}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/entity/SarStandProjectTeam.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/entity/SarStandProjectTeam.java
index 96cb201b..f44436c8 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/entity/SarStandProjectTeam.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/entity/SarStandProjectTeam.java
@@ -1,6 +1,9 @@
package com.adc.da.slrs.sarStandProjectTeam.entity;
import com.adc.da.base.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -10,15 +13,24 @@ import lombok.experimental.Accessors;
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="SarStandProjectTeam对象", description="")
+@TableName("sar_stand_project_team")
public class SarStandProjectTeam extends BaseEntity {
private static final long serialVersionUID = 1L;
+ @TableId("id")
private String id;
+ @TableField("name")
private String name;
+ @TableField("person")
private String person;
+ @TableField("user_id")
+ private String userId;
+
+ @TableField("project_code")
+ private String projectCode;
}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/ISarStandProjectTeamService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/ISarStandProjectTeamService.java
index d2444c3f..2c0f1731 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/ISarStandProjectTeamService.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/ISarStandProjectTeamService.java
@@ -1,5 +1,6 @@
package com.adc.da.slrs.sarStandProjectTeam.service;
+import com.adc.da.slrs.sarStandProjectLibrary.entity.Head;
import com.adc.da.slrs.sarStandProjectTeam.entity.SarStandProjectTeam;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -13,4 +14,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface ISarStandProjectTeamService extends IService {
+ public Head AnalysisJsonAndStorage(String jsonStr);
+
}
diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/impl/SarStandProjectTeamServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/impl/SarStandProjectTeamServiceImpl.java
index 69dfb385..92232593 100644
--- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/impl/SarStandProjectTeamServiceImpl.java
+++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectTeam/service/impl/SarStandProjectTeamServiceImpl.java
@@ -1,9 +1,17 @@
package com.adc.da.slrs.sarStandProjectTeam.service.impl;
+import com.adc.da.slrs.sarStandProjectLibrary.entity.Head;
import com.adc.da.slrs.sarStandProjectTeam.entity.SarStandProjectTeam;
import com.adc.da.slrs.sarStandProjectTeam.dao.SarStandProjectTeamDao;
import com.adc.da.slrs.sarStandProjectTeam.service.ISarStandProjectTeamService;
+import com.adc.da.util.UUIDUtils;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParser;
import org.springframework.stereotype.Service;
/**
@@ -17,4 +25,61 @@ import org.springframework.stereotype.Service;
@Service
public class SarStandProjectTeamServiceImpl extends ServiceImpl implements ISarStandProjectTeamService {
+ @Override
+ public Head AnalysisJsonAndStorage(String jsonStr) {
+ Head responseHead = new Head();
+ try {
+
+ SarStandProjectTeam teamInfo = new SarStandProjectTeam();
+
+ JsonObject jsonObject = (JsonObject) new JsonParser().parse(jsonStr);
+ JsonObject jsonHead = (JsonObject) jsonObject.get("HEAD");
+ responseHead.setBIZTRANSACTIONID(jsonHead.get("BIZTRANSACTIONID").getAsString());
+
+
+ JsonArray LIST = (JsonArray) jsonObject.get("LIST");
+ for (int i = 0; i < LIST.size(); i++) {
+ JsonObject jsonElement = (JsonObject) LIST.get(i);
+ teamInfo.setProjectCode(jsonElement.get("project_code").getAsString());
+
+ JsonArray orgNodes = (JsonArray) jsonElement.get("org_nodes");
+ for (int j = 0; j < orgNodes.size(); j++) {
+ JsonObject project = (JsonObject)orgNodes.get(j);
+
+ if (project.get("name").getAsString().equals("项目经理")) {
+
+
+ JsonArray persons = (JsonArray) project.get("persons");
+ for (int k = 0; k < persons.size(); k++) {
+
+ JsonObject jsonPerson = (JsonObject) persons.get(k);
+
+ teamInfo.setId(UUIDUtils.randomUUID20());
+ teamInfo.setUserId(jsonPerson.get("user_id").getAsString());
+ teamInfo.setName(jsonPerson.get("name").getAsString());
+
+ QueryWrapper updateCondition = new QueryWrapper();
+ updateCondition.eq("project_code",teamInfo.getProjectCode())
+ .eq("user_id",teamInfo.getUserId());
+
+ this.saveOrUpdate(teamInfo,updateCondition);
+
+
+ }
+ }
+
+
+ }
+
+ }
+ }catch (Exception e){
+ responseHead.setERRORCODE("2");
+ responseHead.setRESULT("业务失败需要重做");
+ return responseHead;
+ }
+ responseHead.setERRORCODE("0")
+ .setRESULT("成功");
+
+ return responseHead;
+ }
}