Merge remote-tracking branch 'origin/develop_master' into develop_3

This commit is contained in:
zhaokaiyao@91isoft.com
2021-09-08 10:18:42 +08:00
33 changed files with 390 additions and 107 deletions
@@ -374,7 +374,7 @@ public interface workFlowFeignClient {
Wrapper<String> findPrcNumByPid(@RequestParam("pId") String pId);
@RequestMapping(value = "/bat-wkflow/findPrcNameByPrcNum",method = RequestMethod.GET)
Wrapper<String> findPrcNameByPrcNum(@RequestParam("prcNum") String prcNum);
Wrapper<String> findPrcNameByPrcNum(@RequestParam("prcNum") String prcNum);
@RequestMapping(value = "/bat-wkflow/getStandCode",method = RequestMethod.GET)
Set<String> getStandCode();
@@ -156,7 +156,7 @@ public class SearchCenterServiceImpl implements SearchCenterService {
boolQueryShould.should(QueryBuilders.wildcardQuery("standSort.keyword", "*"+searchInfoEO.getSelectValue()+"*"))
.should(QueryBuilders.wildcardQuery("stand_code.keyword", "*"+searchInfoEO.getSelectValue()+"*"))
.should(QueryBuilders.wildcardQuery("standYear.keyword", "*"+searchInfoEO.getSelectValue()+"*"))
.should(QueryBuilders.wildcardQuery("standName.keyword", "*"+searchInfoEO.getSelectValue()+"*"))
.should(QueryBuilders.wildcardQuery("stand_name.keyword", "*"+searchInfoEO.getSelectValue()+"*"))
.should(QueryBuilders.wildcardQuery("standEnName.keyword", "*"+searchInfoEO.getSelectValue()+"*"))
.should(QueryBuilders.wildcardQuery("textStatusBuss.keyword", "*"+searchInfoEO.getSelectValue()+"*"));
if (isRqFormat(searchInfoEO.getSelectValue())) {
@@ -302,9 +302,10 @@ public class StandLawsSearchServiceImpl implements StandLawsSearchService {
contentBuilder.append("企标类别:").append(attrInfoMap.get("standSort")).append(" ");
contentBuilder.append("标准年份:").append(attrInfoMap.get("standYear")).append(" ");
contentBuilder.append("企标名称:").append(attrInfoMap.get("standName")).append(" ");
contentBuilder.append("企标英文名称:").append(attrInfoMap.get("standName")).append(" ");
contentBuilder.append("企标英文名称:").append(attrInfoMap.get("stand_en_name")).append(" ");
contentBuilder.append("文本状态:").append(attrInfoMap.get("textStatusBussName")).append(" ");
contentBuilder.append("企标实施日期:").append(attrInfoMap.get("putTime")).append(" ");
contentBuilder.append("企标发布日期:").append(attrInfoMap.get("issueTime")).append(" ");
contentBuilder.append("废止日期:").append(attrInfoMap.get("FZRQBUSSName")).append(" ");
contentBuilder.append("复审日期:").append(attrInfoMap.get("FSRQBUSSName")).append(" ");
contentBuilder.append("起草部门:").append(attrInfoMap.get("QCDWName")).append(" ");
@@ -171,17 +171,18 @@ public class SendBussMQService {
saveMap.put("validFlag","0");
saveMap.put("content",infoEO.getFileIds());
String fieldInfo = InitStandAttrUtil.queryField;
String fieldInfo = InitStandAttrUtil.queryFieldBuss;
List<String> fieldInfoList = Arrays.asList(fieldInfo .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList());
// 动态存储属性字段
for (String field : fieldInfoList) {
saveMap.put(field,attrInfoMap.getOrDefault(field,""));
String fieldValue = "";
if(infoMap.get(field) != null && StringUtils.isNotBlank(infoMap.get(field).toString())){
Object json= new JSONTokener(infoMap.get(field).toString()).nextValue();
String fieldFilter = field.toLowerCase();
if(infoMap.get(fieldFilter) != null && StringUtils.isNotBlank(infoMap.get(fieldFilter).toString())){
Object json= new JSONTokener(infoMap.get(fieldFilter).toString()).nextValue();
if(!json.toString().equals("null")){
fieldValue = infoMap.get(field).toString();
fieldValue = infoMap.get(fieldFilter).toString();
}
}
saveMap.put(field+"Name",fieldValue);
@@ -0,0 +1,145 @@
package com.adc.da.slrs.DataSync;
import com.adc.da.slrs.sarInstitution.entity.TsInstitution;
import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService;
import com.adc.da.slrs.sarInstitution.service.impl.TsInstitutionServiceImpl;
import com.adc.da.slrs.sarPosition.entity.TsPosition;
import com.adc.da.slrs.sarPosition.service.ITsPositionService;
import com.adc.da.slrs.sarPosition.service.impl.TsPositionServiceImpl;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.adc.da.slrs.sarUser.service.ITsUserService;
import com.adc.da.slrs.sarUser.service.impl.TsUserServiceImpl;
import com.adc.da.sync.service.SyncUserService;
import com.adc.da.sys.dao.OrgEODao;
import com.adc.da.sys.entity.OrgEO;
import com.adc.da.sys.entity.UserOrgEO;
import com.adc.da.sys.service.IOrgEOService;
import com.adc.da.sys.service.impl.OrgEOServiceImpl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.sql.Timestamp;
import java.util.*;
@RestController
@Api(description = "|SarStandPutTime|")
@RequestMapping("/DataSync")
public class DataSyncController {
@Autowired
ITsPositionService tsPositionService;
@Autowired
ITsUserService tsUserService;
@Autowired
ITsInstitutionService tsInstitutionService;
@ApiOperation("同步用户数据")
@PostMapping("/importUserData")
public String importUserData() throws Exception {
SyncUserService syncUserService = new SyncUserService();
List<String> res = syncUserService.syncFotonUser();
//存放岗位信息
Map<String, String> positionMap = new HashMap<>();
Map<String, String> useDistinct = new HashMap<>();
IPage<TsPosition> iPage = tsPositionService.getPosition(new TsPosition());
List<TsPosition> positions=iPage.getRecords();
if (!positions.isEmpty()) {
positions.forEach(tsPosition -> {
positionMap.put(tsPosition.getName(), tsPosition.getId());
});
}
for (String s : res) {
//获取到所有用户数据
List<TsUser> tsUsers = new ArrayList<>();
JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results"));
jsonArray.forEach(object -> {
JSONObject jsonObject = JSONObject.parseObject(object.toString());
//先获取岗位以及岗位id
TsUser tsUser = new TsUser();
UserOrgEO userOrgEO = new UserOrgEO();
//设置岗位
if (null != jsonObject.getString("title")) {
if (null == positionMap.get(jsonObject.getString("title"))) {
TsPosition tsPosition = new TsPosition();
tsPosition.setId(String.valueOf(UUID.randomUUID()));
tsPosition.setName(jsonObject.getString("title"));
tsPositionService.addPosition(tsPosition);
//放入岗位的map集合中
positionMap.put(tsPosition.getName(), tsPosition.getId());
//放入类中
tsUser.setPositionName(tsPosition.getName());
tsUser.setPositionId(tsPosition.getId());
} else {
tsUser.setPositionName(jsonObject.getString("title").trim());
tsUser.setPositionId(positionMap.get(jsonObject.getString("title").trim()));
}
}
//设置其他数据
Timestamp createTime = new Timestamp(new Date().getTime());
tsUser.setState(jsonObject.getString("userStatus"));
tsUser.setUname(null!=jsonObject.getString("name")?jsonObject.getString("name"):"");
tsUser.setValidFlag("0");
tsUser.setDisableFlag("0");
tsUser.setCreationTime(createTime);
tsUser.setUserId(jsonObject.getString("userid"));
tsUser.setAccount(jsonObject.getString("userid"));
tsUser.setInstitutionId(null!=jsonObject.getString("orgNumber")?jsonObject.getString("orgNumber"):"" );
tsUser.setInstitutionName(null!=jsonObject.getString("orgName")?jsonObject.getString("orgName"):"" );
if (null == useDistinct.get(jsonObject.getString("userid"))) {
tsUsers.add(tsUser);
}
useDistinct.put(tsUser.getUserId(),tsUser.getUserId());
});
tsUserService.saveBatch(tsUsers);
}
return "1";
}
@ApiOperation("同步组织机构")
@PostMapping("/importOrgData")
public String importOrgData() throws Exception {
SyncUserService syncUserService = new SyncUserService();
List<String> res = syncUserService.syncFotonOrg();
//获取到所有用户数据
List<String> strings=new ArrayList<>();
tsInstitutionService.clearData();
for (String s : res) {
JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results"));
jsonArray.forEach(object -> {
JSONObject jsonObject = JSONObject.parseObject(object.toString());
strings.add(jsonObject.getString("parentOrgNumber"));
});
}
for (String s : res) {
List<TsInstitution> tsInstitutions = new ArrayList<>();
JSONArray jsonArray = JSONArray.parseArray(JSONObject.parseObject(s.toString()).getString("results"));
jsonArray.forEach(object -> {
JSONObject jsonObject = JSONObject.parseObject(object.toString());
TsInstitution tsInstitution=new TsInstitution();
tsInstitution.setId(jsonObject.getString("orgNumber"));
tsInstitution.setName(jsonObject.getString("orgName"));
tsInstitution.setHasChild(strings.contains(jsonObject.getString("orgNumber"))?"1":"0");
tsInstitution.setParentId(jsonObject.getString("parentOrgNumber"));
tsInstitutions.add(tsInstitution);
});
tsInstitutionService.saveBatch(tsInstitutions);
}
return "1";
}
}
@@ -5,8 +5,10 @@ import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
import com.adc.da.slrs.sarInstitution.entity.TsInstitution;
import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService;
import com.adc.da.slrs.sarUser.dao.TsUserDao;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.adc.da.slrs.sarUser.service.ITsUserService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -33,6 +35,8 @@ public class TsInstitutionController extends BaseController<TsInstitution> {
private ITsInstitutionService tsInstitutionService;
@Autowired
private ITsUserService tsUserService;
@Autowired
private TsUserDao tsUserDao;
/**
* 查询所有机构
@@ -59,14 +63,14 @@ public class TsInstitutionController extends BaseController<TsInstitution> {
/**
* 查询机构人员
* @param institutionId:机构ID
* @return ResponseMessage<List<TsUser>>
*/
@ApiOperation("查询机构的人员")
@GetMapping("/user")
public ResponseMessage<List<TsUser>> getUserByInstitutionId(@RequestParam String institutionId){
List<TsUser> tsUsers=tsUserService.getUserByInstitutionId(institutionId);
return Result.success(tsUsers);
@PostMapping("/user")
public ResponseMessage<IPage<TsUser>> getUserByInstitutionId(TsUser tsUser){
// List<TsUser> tsUsers=tsUserService.getUserByInstitutionId(institutionId);
IPage<TsUser> tsUserIPage = tsUserService.getUserByInstitutionId(tsUser);
return Result.success(tsUserIPage);
}
@ApiOperation("导入机构数据")
@@ -59,4 +59,7 @@ public interface TsInstitutionDao extends BaseMapper<TsInstitution> {
@Select("select * from ts_institution order by rand() limit 1")
TsInstitution selectRand();
int clearData();
}
@@ -42,4 +42,6 @@ public interface ITsInstitutionService extends IService<TsInstitution> {
* @return
*/
public List<TsInstitution> getFirst();
int clearData();
}
@@ -213,4 +213,9 @@ public class TsInstitutionServiceImpl extends ServiceImpl<TsInstitutionDao, TsIn
return tsInstitutions;
}
@Override
public int clearData() {
return tsInstitutionDao.clearData();
}
}
@@ -6,6 +6,7 @@ import com.adc.da.http.Result;
import com.adc.da.slrs.sarPosition.entity.TsPositionRoleVO;
import com.adc.da.slrs.sarPosition.service.ITsPositionService;
import com.adc.da.slrs.sarRole.entity.TsRole;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
@@ -38,8 +39,8 @@ public class TsPositionController extends BaseController<TsPosition> {
*/
@ApiOperation("查询岗位")
@GetMapping
public ResponseMessage<List<TsPosition>> getPosition(TsPosition tsPosition){
List<TsPosition> positions=tsPositionService.getPosition(tsPosition);
public ResponseMessage<IPage<TsPosition>> getPosition(TsPosition tsPosition){
IPage<TsPosition> positions=tsPositionService.getPosition(tsPosition);
return Result.success(positions);
}
@@ -64,6 +64,8 @@ public interface TsPositionDao extends BaseMapper<TsPosition> {
*/
List<String> getRoleIdsByPositionIds(List<String> positionIds);
long pageTotal();
/**
* 通过roleId查询岗位ID列表
* @param roleId:角色ID
@@ -76,5 +76,12 @@ public class TsPosition extends BaseEntity {
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Timestamp createTime;
@TableField(exist = false)
private Integer current;
@TableField(exist = false)
private Integer pageSize;
@TableField(exist = false)
private Integer total;
}
@@ -4,6 +4,7 @@ import com.adc.da.http.ResponseMessage;
import com.adc.da.slrs.sarPosition.entity.TsPosition;
import com.adc.da.slrs.sarPosition.entity.TsPositionRoleVO;
import com.adc.da.slrs.sarRole.entity.TsRole;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -23,7 +24,7 @@ public interface ITsPositionService extends IService<TsPosition> {
* @param tsPosition:查询信息
* @return List<TsPosition>
*/
List<TsPosition> getPosition(TsPosition tsPosition);
IPage<TsPosition> getPosition(TsPosition tsPosition);
/**
* 配置角色
@@ -9,6 +9,8 @@ import com.adc.da.slrs.sarPosition.service.ITsPositionService;
import com.adc.da.slrs.sarRole.entity.TsRole;
import com.adc.da.utils.util.ListUtil;
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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -40,9 +42,16 @@ public class TsPositionServiceImpl extends ServiceImpl<TsPositionDao, TsPosition
* @return List<TsPosition>
*/
@Override
public List<TsPosition> getPosition(TsPosition tsPosition) {
public IPage<TsPosition> getPosition(TsPosition tsPosition) {
IPage page=new Page();
return tsPositionDao.selectPositionAndRole(tsPosition);
page.setTotal(tsPositionDao.pageTotal());
page.setRecords(tsPositionDao.selectPositionAndRole(tsPosition));
page.setCurrent(tsPosition.getCurrent());
page.setSize(tsPosition.getPageSize());
System.out.println(page.getTotal());
return page;
}
/**
@@ -162,7 +162,7 @@ public class SarStandItemsServiceImpl extends ServiceImpl<SarStandItemsDao, SarS
}
List<String> standId = new ArrayList<>();
for (SarStandardsInfo standardsInfo : pageInfo){
if (standardsInfo.getAttrInfoCaseMap().get("fbgbjbd")!=null){
if (standardsInfo.getAttrInfoCaseMap().get("FBGBJBD")!=null || standardsInfo.getAttrInfoCaseMap().get("fbgbjbd")!=null){
standId.add(standardsInfo.getId());
}
}
@@ -227,72 +227,13 @@ public class SarStandProjectLibraryController extends BaseController<SarStandPro
@PostMapping("/save")
@ApiOperation("同步车型项目数据")
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<SarStandProjectLibrary> 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);
Head head = sarStandProjectLibraryService.AnalysisJsonAndStorage(jsonStr);
ArrayList<Company> companies = new ArrayList<>();
ResponseDto responseDto = new ResponseDto(head,companies);
Company company = new Company();
company.setCOMPANY_CODE("");
company.setFISCAL_YEAR("");
companies.add(company);
return responseDto;
}
}
@@ -0,0 +1,10 @@
package com.adc.da.slrs.sarStandProjectLibrary.entity;
import lombok.Data;
@Data
public class Company {
private String COMPANY_CODE;
private String FISCAL_YEAR;
}
@@ -17,8 +17,11 @@ public class ResponseDto {
// }
public ResponseDto(Head head) {
this.HEAD = head;
List<Company> LIST;
public ResponseDto(Head HEAD, List<Company> LIST) {
this.HEAD = HEAD;
this.LIST = LIST;
}
public ResponseDto() {
@@ -5,15 +5,17 @@ import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
/**
* <p>
*
*
* </p>
*
* @author ZhangJin
@@ -49,10 +51,14 @@ public class SarStandProjectLibrary extends BaseEntity {
@ApiModelProperty(value = "项目群")
private String projectGroup;
@ApiModelProperty(value = "项目开始日期")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date projectStartDate;
@ApiModelProperty(value = "项目完成日期")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date projectEndDate;
@ApiModelProperty(value = "当前节点")
@@ -19,5 +19,6 @@ public interface SarStandProjectLibraryService {
void deleteByIds(List<StandProjectRelationDto> ids);
void batchInsert(@Param("ids") List<StandProjectRelationDto> list);
List<StandAttrInfoDto> exportStandAttrInfoExcel(StandAttrInfoExcelDto standAttrInfoExcelDto,String standId);
public Head AnalysisJsonAndStorage(String jsonStr);
}
@@ -1,4 +1,5 @@
package com.adc.da.slrs.sarStandProjectLibrary.service.impl;
import com.adc.da.ocr.util.UUIDUtils;
import com.adc.da.slrs.sarStandAttrInfo.dao.SarStandAttrInfoDao;
import com.adc.da.slrs.sarStandAttrInfo.entity.SarStandAttrInfo;
import com.adc.da.slrs.sarStandProjectLibrary.entity.*;
@@ -9,19 +10,17 @@ import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo;
import com.adc.da.sys.service.IDicTypeEOService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import org.springframework.stereotype.Service;
import redis.clients.jedis.ScanResult;
import javax.annotation.Resource;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* <p>
@@ -42,7 +41,87 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl<SarStandProje
@Resource
private IDicTypeEOService iDicTypeEOService;
Date version = new Date();
public String TimeVersion(){
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = new Date();
String version = simpleDateFormat.format(date);
return version;
}
@Override
public Head AnalysisJsonAndStorage(String jsonStr){
Head head = new Head();
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 projectInfo = new SarStandProjectLibrary();
projectInfo
.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());
projectInfo
.setProjectStartDate(targetBeginOn)
.setProjectEndDate(targetEndOn);
} catch (ParseException e) {
e.printStackTrace();
}
projectInfo.setId(UUIDUtils.randomUUID20());
QueryWrapper<SarStandProjectLibrary> updateCondition = new QueryWrapper<SarStandProjectLibrary>();
updateCondition.eq("project_number",projectInfo.getProjectNumber());
// .eq("project_start_date",targetBeginOn);
this.saveOrUpdate(projectInfo,updateCondition);
}
}catch (Exception e){
head.setERRORCODE("2");
head.setRESULT("业务失败需要重做");
return head;
}
head.setERRORCODE("0");
head.setRESULT("成功");
return head;
}
@Override
public IPage<SarStandProjectLibrary> queryMaintenanceProject(int current, int pageSize,
@@ -278,7 +357,7 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl<SarStandProje
sarStandProjectLibraryDao.deleteByProjectId(list.get(0).getProjectId());
sarStandProjectLibraryDao.batchInsert(list);
sarStandProjectLibraryDao.updateByProjectId(list.get(0).getProjectId(), String.valueOf(version));
sarStandProjectLibraryDao.updateByProjectId(list.get(0).getProjectId(), TimeVersion());
}
@@ -3,6 +3,7 @@ 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.Company;
import com.adc.da.slrs.sarStandProjectLibrary.entity.Head;
import com.adc.da.slrs.sarStandProjectLibrary.entity.ResponseDto;
import com.adc.da.slrs.sarStandProjectLibrary.entity.SarStandProjectLibrary;
@@ -16,6 +17,8 @@ import com.adc.da.slrs.sarStandProjectTeam.entity.SarStandProjectTeam;
import io.swagger.annotations.Api;
import com.adc.da.base.web.BaseController;
import java.util.ArrayList;
/**
* <p>
@@ -37,8 +40,12 @@ public class SarStandProjectTeamController extends BaseController<SarStandProjec
@ApiOperation("同步PCMS组织信息")
public ResponseDto save(@RequestBody String jsonStr){
Head head = sarStandProjectTeamService.AnalysisJsonAndStorage(jsonStr);
ResponseDto responseDto = new ResponseDto(head);
ArrayList<Company> companies = new ArrayList<>();
Company company = new Company();
company.setCOMPANY_CODE("");
company.setFISCAL_YEAR("");
companies.add(company);
ResponseDto responseDto = new ResponseDto(head,companies);
return responseDto;
}
@@ -1,9 +1,11 @@
package com.adc.da.slrs.sarUser.dao;
import com.adc.da.http.ResponseMessage;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@@ -45,8 +47,9 @@ public interface TsUserDao extends BaseMapper<TsUser> {
* @param institutionId:岗位ID
* @return List<TsUser>
*/
List<TsUser> getUserAndPosition(String institutionId);
List<TsUser> getUserAndPositionPage(@Param("start")Integer start, @Param("end")Integer end,@Param("TsUser") TsUser tsUser);
Integer getUserAndPositionCount(@Param("TsUser") TsUser tsUser);
/**
* 通过岗位Id列表查询用户ID列表
* @param positionIds:岗位ID列表
@@ -24,7 +24,7 @@ import javax.validation.constraints.NotNull;
/**
* <p>
*
*
* </p>
*
* @author zxy
@@ -142,6 +142,12 @@ public class TsUser extends BaseEntity {
@TableField(exist = false)
private List<TsPosition> positions;
@ApiModelProperty("当前页")
private Integer current;
@ApiModelProperty("每页条数")
private Integer size;
public TsUser() {
}
@@ -5,6 +5,7 @@ import com.adc.da.slrs.sarMenu.entity.SarMenu;
import com.adc.da.slrs.sarResource.entity.TsResource;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.adc.da.slrs.sarUser.entity.UserPositionVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -25,7 +26,7 @@ public interface ITsUserService extends IService<TsUser> {
* @param institutionId:机构ID
* @return List<TsUser>
*/
List<TsUser> getUserByInstitutionId(String institutionId);
IPage<TsUser> getUserByInstitutionId(TsUser tsUser);
/**
* 封禁、解禁用户
@@ -23,6 +23,8 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
@@ -60,12 +62,21 @@ public class TsUserServiceImpl extends ServiceImpl<TsUserDao, TsUser> implements
/**
* 通过机构ID查询人员
* @param institutionId:机构ID
* @return List<TsUser>
*/
@Override
public List<TsUser> getUserByInstitutionId(String institutionId) {
return tsUserDao.getUserAndPosition(institutionId);
public IPage<TsUser> getUserByInstitutionId(TsUser tsUser) {
// return tsUserDao.getUserAndPosition(institutionId);
Page<TsUser> tsUserPage = new Page<>();
System.out.println(tsUser.getCurrent());
System.out.println(tsUser.getSize());
List<TsUser> tsUserList = tsUserDao.getUserAndPositionPage((tsUser.getCurrent()-1)*tsUser.getSize(),1*tsUser.getSize(),tsUser);
Integer total = tsUserDao.getUserAndPositionCount(tsUser);
tsUserPage.setRecords(tsUserList);
tsUserPage.setCurrent(tsUser.getCurrent());
tsUserPage.setSize(tsUser.getSize());
tsUserPage.setTotal(total);
return tsUserPage;
}
/**
@@ -68,4 +68,8 @@
</foreach>
</insert>
<delete id="clearData">
delete from ts_institution
</delete>
</mapper>
@@ -32,6 +32,13 @@
p.name like concat(concat('%',#{name}),'%')
</if>
</where>
<if test=" null!= pageSize ">
limit ${(current-1) * pageSize},${pageSize}
</if>
</select>
<select id="pageTotal" resultType="Long">
select count(1) as total from ts_position
</select>
<select id="getRoleIdsByPositionIds" resultType="String">
@@ -28,13 +28,29 @@
</collection>
</resultMap>
<select id="getUserAndPosition" resultMap="UserPosition">
<select id="getUserAndPositionPage" parameterType="com.adc.da.slrs.sarUser.entity.TsUser" resultMap="UserPosition">
select u.*,p.id p_id,p.name p_name from ts_user u
left join ts_user_position up
on u.usid=up.user_id
left join ts_position p
on up.position_id=p.id
where u.institution_id=#{institutionId}
where u.institution_id=#{TsUser.institutionId}
<if test="TsUser.uname != null and TsUser.uname != '' ">
and u.uname like concat('%',#{TsUser.uname},'%')
</if>
<if test="TsUser.email != null and TsUser.email != '' ">
and u.email like concat('%',#{TsUser.email},'%')
</if>
limit #{start},#{end}
</select>
<select id="getUserAndPositionCount" parameterType="com.adc.da.slrs.sarUser.entity.TsUser" resultType="java.lang.Integer">
select count(u.USID) from ts_user u
left join ts_user_position up
on u.usid=up.user_id
left join ts_position p
on up.position_id=p.id
where u.institution_id=#{TsUser.institutionId}
</select>
<select id="getUserIdsByPositionIds" resultType="String">
@@ -21,7 +21,7 @@ public class SyncUserService {
public static void main(String[] args) throws Exception {
SyncUserService syncUserService=new SyncUserService();
syncUserService.syncFotonOrg();
syncUserService.syncFotonUser();
}
/**
@@ -50,7 +50,7 @@ public class SyncUserService {
json.add(rs);
JSONObject responseStr = JSON.parseObject(rs);
System.out.println(rs);
if (responseStr.containsKey("cookie")) {
try {
JSONArray entries = responseStr.getJSONArray("cookie");
@@ -162,4 +162,6 @@ public interface OrgEODao extends BaseMapper<OrgEO> {
public OrgEO getOrgParentInfoOrgId(OrgEO orgEO);
public List<OrgEO> getOrgRootTree();
int clearData();
}
@@ -1,6 +1,7 @@
package com.adc.da.sys.entity;
import com.adc.da.base.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serializable;
@@ -13,6 +14,7 @@ import java.util.List;
* <b>日期:</b> 2018-09-03 <br>
* <b>版权所有:<b>版权归北京卡达克数据技术中心所有。<br>
*/
@TableName(value = "ts_org")
public class OrgEO extends BaseEntity implements Serializable {
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@@ -762,6 +762,9 @@
AND parent_idS IS NOT NULL
</select>
<delete id="clearData">
delete from TS_ORG
</delete>
</mapper>