Commit 158a2f37 authored by daijunxiong's avatar daijunxiong

修改定时任务

parent dd973057
......@@ -103,7 +103,7 @@ public class ArtemisPostTest {
config.setHost("8.136.255.30:8001"); // 代理API网关nginx服务器ip端口
config.setAppKey("25128371"); // 秘钥appkey
config.setAppSecret("2m9RcPJOKq5j2QPQM4v5");// 秘钥appSecret
final String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/person/personList";
final String getCamsApi = ARTEMIS_PATH + "/api/resource/v1/org/orgList";
Map<String, String> paramMap = new HashMap<String, String>();// post请求Form表单参数
paramMap.put("pageNo", "1");
paramMap.put("pageSize", "1000");
......
......@@ -18,7 +18,6 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
......@@ -50,17 +49,20 @@ public class SyncUserTaskImpl implements ITaskExcuteService {
for (ListItem list : personHikData.getList()) {
//根据id获取本地数据
StaffEntity staffEntity1 = staffDao.queryHik(list.getPersonId());
List<StaffEntity> staffEntitieList = new ArrayList<>();
List<StaffEntity> staffEntities = staffDao.queryAllList();
//判断本地数据是否为空
if (Objects.isNull(staffEntity1)) {
//如果为空则将数据存入数据库
StaffEntity staffEntity= new StaffEntity();
StaffEntity staffEntity = new StaffEntity();
System.out.println(list.getPersonName());
staffEntity.setName(list.getPersonName());
staffEntity.setRemark(list.getPersonId());
staffEntity.setRemarkId(list.getPersonId());
staffEntity.setPhotoPath(list.getPersonPhoto().getPicUri());
staffEntity.setDeptName(list.getOrgName());
staffEntity.setSource(1);
staffEntity.setStatus(1);
staffEntity.setGender(list.getGender());
staffEntity.setWorkNum(list.getJobNo());
staffEntity.setCreateUserId(Long.valueOf(1));
staffEntity.setCreateTime(new Date());
if (list.getBirthday() != null) {
......@@ -76,31 +78,35 @@ public class SyncUserTaskImpl implements ITaskExcuteService {
//本地数据不为空
else {
//本地数据遍历数据
for (StaffEntity staffEntity : staffEntitieList) {
for (StaffEntity staffEntity : staffEntities) {
//如果本地的id等于海康的id
if (staffEntity.getRemark().equals(list.getPersonId())) {
if (staffEntity.getRemarkId().equals(list.getPersonId())) {
//执行修改
staffEntity.setName(list.getPersonName());
staffEntity.setRemark(list.getPersonId());
staffEntity.setPhotoPath(list.getPersonPhoto().getPicUri());
staffEntity.setDeptName(list.getOrgName());
staffEntity.setDeptId(Long.valueOf(list.getOrgIndexCode()));
staffEntity.setDeptName(list.getOrgName());
staffEntity.setSource(1);
if (list.getBirthday()==null && staffEntity.getBirthday()!=null){
staffEntity.setBirthday(staffEntity.getBirthday());
StaffEntity staffEntity2 = new StaffEntity();
System.out.println(list.getPersonName());
staffEntity2.setName(list.getPersonName());
staffEntity2.setRemarkId(list.getPersonId());
staffEntity2.setPhotoPath(list.getPersonPhoto().getPicUri());
staffEntity2.setDeptName(list.getOrgName());
staffEntity2.setSource(1);
staffEntity2.setStatus(1);
staffEntity2.setGender(list.getGender());
staffEntity2.setWorkNum(list.getJobNo());
staffEntity2.setCreateUserId(Long.valueOf(1));
staffEntity2.setCreateTime(new Date());
if (list.getBirthday() != null) {
staffEntity2.setBirthday((Date) list.getBirthday());
}
if (list.getPhoneNo()!=null && staffEntity.getPhoneNumber()!=null){
staffEntity.setPhoneNumber(staffEntity.getPhoneNumber());
if (list.getPhoneNo() != null) {
staffEntity2.setPhoneNumber(String.valueOf(list.getPhoneNo()));
}
log.info("修改人员信息"+staffEntity);
staffDao.update(staffEntity);
staffDao.update(staffEntity2);
}
for (ListItem item :personHikData.getList()){
for (ListItem item : personHikData.getList()) {
//如果本地id不等于海康id并且海康id不等于本地id
if (!item.getPersonId().equals(staffEntity.getRemark())){
if (!item.getPersonId().equals(staffEntity.getRemarkId())) {
//否则执行删除
staffDao.delete(Long.valueOf(staffEntity.getRemark()));
staffDao.delete(staffEntity.getId());
}
}
......@@ -109,41 +115,60 @@ public class SyncUserTaskImpl implements ITaskExcuteService {
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
try {
String resultDept = ArtemisPostTest.callPostApiGetDeptList();
JSONObject jsonObjectDept = JSON.parseObject(resultDept);
JSONObject jsonObjectDept1 = jsonObject.getJSONObject("data");
DeptHikData deptHikData =JSONObject.parseObject(jsonObject1.toJSONString(),DeptHikData.class);
log.info("海康部门信息"+resultDept);
if (Objects.isNull(deptHikData)){
for (ListDept listDept:deptHikData.getList()){
DeptEntity deptEntity = deptDao.get(Long.valueOf(listDept.getOrgIndexCode()));
List<DeptEntity> deptEntityList = deptDao.queryAllList();
if (Objects.isNull(deptEntity)){
deptEntity.setDeptName(listDept.getOrgName());
deptEntity.setParentId(Long.valueOf(listDept.getParentOrgIndexCode()));
deptEntity.setAncestors(listDept.getOrgPath());
log.info("新增部门信息"+deptEntity);
deptDao.insert(deptEntity);
}else {
for (DeptEntity deptEntity1 :deptEntityList){
if (!deptEntity1.getParentId().equals(listDept.getOrgIndexCode())){
deptEntity1.setAncestors(listDept.getOrgPath());
deptEntity1.setDeptName(listDept.getOrgName());
log.info("修改部门信息"+deptEntity);
deptDao.update(deptEntity1);
JSONObject jsonObjectDept1 = jsonObjectDept.getJSONObject("data");
DeptHikData deptHikData = JSONObject.parseObject(jsonObjectDept1.toJSONString(), DeptHikData.class);
System.out.println("111"+deptHikData);
int i = 0;
if (Objects.nonNull(deptHikData)) {
for (ListDept listDept : deptHikData.getList()) {
DeptEntity deptEntity = deptDao.queryDept(listDept.getOrgIndexCode());
List<DeptEntity> deptEntities = deptDao.queryAllList();
if (Objects.isNull(deptEntity)) {
DeptEntity deptEntity1 = new DeptEntity();
deptEntity1.setDeptName(listDept.getOrgName());
deptEntity1.setDeptCode(listDept.getOrgIndexCode());
deptEntity1.setAncestors(listDept.getOrgPath());
deptEntity1.setDeptStatus(1);
deptEntity1.setOrderNum(0);
deptEntity1.setPersonNum(i+1);
deptEntity1.setCreateTime(new Date());
deptEntity1.setCreateUserId(Long.valueOf(1));
deptDao.insert(deptEntity1);
} else {
for (DeptEntity deptEntity2 : deptEntities) {
if (!deptEntity2.getDeptCode().equals(listDept.getOrgIndexCode())) {
deptEntity2.setDeptName(listDept.getOrgName());
deptEntity2.setDeptCode(listDept.getOrgIndexCode());
deptEntity2.setAncestors(listDept.getOrgPath());
deptEntity2.setDeptStatus(1);
deptEntity2.setOrderNum(0);
deptEntity2.setPersonNum(i+1);
deptEntity2.setCreateTime(new Date());
deptEntity2.setCreateUserId(Long.valueOf(1));
deptDao.update(deptEntity2);
}
for (ListDept dept : deptHikData.getList()){
if (!dept.getOrgIndexCode().equals(deptEntity1.getParentId())){
deptDao.delete(Long.valueOf(listDept.getOrgIndexCode()));
for (ListDept dept : deptHikData.getList()) {
if (!dept.getOrgIndexCode().equals(deptEntity2.getDeptCode())) {
deptDao.delete(deptEntity2.getId());
}
}
}
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
......
......@@ -29,6 +29,7 @@ public interface DeptDao extends ICRUDDao<DeptEntity,Long>{
/**
* 统计部门人数
* */
DeptEntity queryDept(String deptCode);
}
......@@ -27,4 +27,10 @@ public class DeptDaoImpl extends BaseCRUDDaoMybatis<DeptEntity,Long> implements
return this.getList(new DeptEntity());
}
@Override
public DeptEntity queryDept(String deptCode) {
return getSqlSession().selectOne(getSqlId("queryDept"),deptCode);
}
}
......@@ -61,5 +61,5 @@ public interface StaffDao extends ICRUDDao<StaffEntity,Long>{
/**
*
* */
StaffEntity queryHik(String remark);
StaffEntity queryHik(String remarkId);
}
......@@ -59,8 +59,8 @@ public class StaffDaoImpl extends BaseCRUDDaoMybatis<StaffEntity,Long> implement
}
@Override
public StaffEntity queryHik(String remark) {
return this.getSqlSession().selectOne(this.getSqlId("queryHik"),remark);
public StaffEntity queryHik(String remarkId) {
return this.getSqlSession().selectOne(this.getSqlId("queryHik"),remarkId);
}
......
......@@ -878,4 +878,7 @@
</trim>
</if>
</sql>
<select id="queryDept" resultType="com.mortals.xhx.module.dept.model.DeptEntity">
select * from mortals_xhx_dept where deptCode = #{deptCode}
</select>
</mapper>
\ No newline at end of file
......@@ -1341,7 +1341,7 @@
select count(1) personNum from mortals_xhx_staff where deptId = #{deptId}
</select>
<select id="queryHik" resultType="com.mortals.xhx.module.staff.model.StaffEntity">
select * from mortals_xhx_staff where remark = #{remark}
select * from mortals_xhx_staff where remarkId = #{remarkId}
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment