修改教职工同步功能

This commit is contained in:
2025-09-12 02:30:51 +08:00
parent 643f2f7979
commit 8d764216fb
4 changed files with 36 additions and 99 deletions

View File

@@ -464,106 +464,29 @@ public class CphTeacherServiceImpl implements ICphTeacherService
@Override
@Transactional(rollbackFor = Exception.class)
public void sqlserverSynchronousMYSQL(List<Map> list) {
//教职工列表
List<QgzxTeacher> qgzxTeachers = qgzxTeacherMapper.selectTeacherList();
//查找重复值
List<Map> updateMap = list.stream()
.filter(obj1 -> qgzxTeachers
.stream().anyMatch(obj2 -> {
Object xhObj = obj1.get("zgh");
if (xhObj != null) {
String zgh = xhObj.toString();
return obj2.getEmployeeId().equals(zgh);
}
return false;
}))
.collect(Collectors.toList());
//添加需要
List<String> kshList2 = qgzxTeachers.stream()
.map(QgzxTeacher::getEmployeeId)
.collect(Collectors.toList());
List<Map> insertMap = list.stream()
.filter(obj -> {
Object xhObj = obj.get("zgh");
return xhObj != null && !kshList2.contains(xhObj.toString());
})
.collect(Collectors.toList());
//添加
List<QgzxTeacher> insertStudentList = new ArrayList<>();
for (Map map:insertMap){
QgzxTeacher qgzxTeacher = new QgzxTeacher();
Object xmObj = map.get("xm");
if (xmObj != null) {
qgzxTeacher.setName(xmObj.toString());
for (Map<String, Object> map : list) {
String zgh = (String) map.get("zgh");
String xm=(String) map.get("xm");
String xb=(String) map.get("xb");
String yxdm=(String) map.get("yxdm");
QgzxTeacher qgzxTeacher = qgzxTeacherMapper.selectQgzxTeacherByEmployeeId(zgh);
Long deptId = qgzxTeacherMapper.selectDeptCode(yxdm);
QgzxTeacher entity=new QgzxTeacher();
entity.setEmployeeId(zgh);
entity.setName(xm);
entity.setGender(xb);
if(deptId!=null) {
entity.setDeptId(deptId);
}
Object xbObj = map.get("xb");
if (xbObj != null) {
String s = xbObj.toString();
if (!Objects.equals(s, "NULL") && !Objects.equals(s, "null")&&!Objects.equals(s," ")) {
qgzxTeacher.setGender(xbObj.toString());
}
entity.setStatus("1");
entity.setCreateTime(DateUtils.getNowDate());
if(qgzxTeacher==null){
qgzxTeacherMapper.insertQgzxTeacher(entity);
}else{
entity.setTeacherId(qgzxTeacher.getTeacherId());
qgzxTeacherMapper.updateQgzxTeacher(entity);
}
Object zghObj = map.get("zgh");
if (zghObj != null) {
qgzxTeacher.setEmployeeId(zghObj.toString());
}
//学院id
Object yxdmObj = map.get("yxdm");
if (yxdmObj!=null) {
Long deptId = qgzxTeacherMapper.selectDeptCode(yxdmObj.toString());
if (deptId != null) {
qgzxTeacher.setDeptId(deptId);
}
}
qgzxTeacher.setStatus("1");
qgzxTeacher.setCreateTime(DateUtils.getNowDate());
insertStudentList.add(qgzxTeacher);
}
if (insertStudentList.size()!=0) {
qgzxTeacherMapper.insertBatchSomeColumn(insertStudentList);
}
//修改
List<QgzxTeacher> updateSrsStudent = new ArrayList<>();
for (Map map:updateMap){
QgzxTeacher qgzxTeacher = new QgzxTeacher();
Object xmObj = map.get("xm");
if (xmObj != null) {
qgzxTeacher.setName(xmObj.toString());
}
Object xbObj = map.get("xb");
if (xbObj != null) {
String s = xbObj.toString();
if (!Objects.equals(s, "NULL") && !Objects.equals(s, "null")&&!Objects.equals(s," ")) {
qgzxTeacher.setGender(xbObj.toString());
}
}
Object zghObj = map.get("zgh");
if (zghObj != null) {
qgzxTeacher.setEmployeeId(zghObj.toString());
}
//学院id
Object yxdmObj = map.get("yxdm");
if (yxdmObj!=null) {
Long ksh = qgzxTeacherMapper.selectDeptCode(yxdmObj.toString());
if (ksh != null) {
qgzxTeacher.setDeptId(ksh);
}
}
qgzxTeacher.setUpdateTime(DateUtils.getNowDate());
updateSrsStudent.add(qgzxTeacher);
}
/*if (updateSrsStudent.size()!=0) {
List<List<CphTeacher>> lists = ListSliceUtil.updateSlice(updateSrsStudent);
if (lists != null) {
for (List<CphTeacher> studentList : lists) {
cphTeacherMapper.updateSrsClassList(studentList);
}
}
}*/
}