同步专业数据修改

This commit is contained in:
2025-12-26 13:35:35 +08:00
parent b0159da137
commit 8125a085f0
9 changed files with 131 additions and 4 deletions

View File

@@ -6,4 +6,5 @@ import java.util.Map;
public interface SyncDataMapper {
public List<Map> getEmployEEInfoList();//教职工
public List<Map> getSpecialtyInfoList(String zydm);//专业
public List<Map> getSpecialtyALLInfo();//所有专业
}

View File

@@ -68,6 +68,7 @@ public interface ISrsMajorsService
public Map<String,Object> dataSync();
void sqlserverSynchronousMYSQL(List<Map> list);
void synchronousMYSQL(List<Map> list);
//根据专业名称获取专业id
public Long getMajorIdByName(String name);
//获取学生的专业名称

View File

@@ -6,5 +6,5 @@ import java.util.Map;
public interface SyncDataService {
List<Map> getEmployEEInfoList();//教职工
List<Map> getSpecialtyInfoList(String zydm);//专业
List<Map> getSpecialtyALLInfo();//所有专业
}

View File

@@ -611,7 +611,7 @@ public class CphTeacherServiceImpl implements ICphTeacherService
}
if (insertUser.size()!=0){
sysUserMapper.insertUserListInfo(insertUser);
insertUserrole(insertUser);
insertUserroleNew(insertUser);
}
if (updateUser.size()!=0) {
List<List<SysUser>> listList1 = ListSliceUtil.updateSlice(updateUser);//切割修改集合
@@ -636,6 +636,16 @@ public class CphTeacherServiceImpl implements ICphTeacherService
}
sysUserRoleMapper.batchUserRole(userRoleList);
}
public void insertUserroleNew(List<SysUser> insertUser){
List<SysUserRole> userRoleList=new ArrayList<>();
for (SysUser sysUser:insertUser){
SysUserRole sysRole = new SysUserRole();
sysRole.setUserId(sysUser.getUserId());
sysRole.setRoleId(124L);//统一设为教职工角色
userRoleList.add(sysRole);
}
sysUserRoleMapper.batchUserRole(userRoleList);
}
@Override
public List<Map<String, Object>> exportSXZZ(CphExport param) {

View File

@@ -251,4 +251,102 @@ public class SrsMajorsServiceImpl implements ISrsMajorsService
}
}
//同步专业
@Override
public void synchronousMYSQL(List<Map> list) {
List<SrsMajors> srsMajors = srsMajorsMapper.selectSrsmajorsList();//数据库存在的专业列表
//查找重复值
List<Map> updateMap = list.stream()
.filter(obj1 -> srsMajors
.stream().anyMatch(obj2 -> {
Object xhObj = obj1.get("zydm");
if (xhObj != null) {
String xh = xhObj.toString();
return obj2.getMajorCode().equals(xh);
}
return false;
}))
.collect(Collectors.toList());
//添加需要
List<String> kshList2 = srsMajors.stream()
.map(SrsMajors::getMajorCode)
.collect(Collectors.toList());
List<Map> insertMap = list.stream()
.filter(obj -> {
Object xhObj = obj.get("zydm");
return xhObj != null && !kshList2.contains(xhObj.toString());
})
.collect(Collectors.toList());
//添加
List<SrsMajors> insertStudentList = new ArrayList<>();
for (Map map:insertMap){
SrsMajors srsMajors1 = new SrsMajors();
Object zydmobj=map.get("zydm");
if (zydmobj!=null) {
srsMajors1.setMajorCode(zydmobj.toString());
}
Object zymcobj=map.get("zymc");
if (zymcobj!=null) {
srsMajors1.setMajorName(zymcobj.toString());
}
srsMajors1.setStatus("0");
if (map.get("yxmc")!=null) {
//使用代码查询学院id
Long yxdm = srsMajorsMapper.selectOldDeptIdByDeptName(map.get("yxmc").toString());
if (yxdm != null) {
srsMajors1.setCollegeId(yxdm);//学院id
} else {
srsMajors1.setCollegeId(0L);
}
}else {
srsMajors1.setCollegeId(0L);
}
srsMajors1.setCreateTime(DateUtils.getNowDate());
insertStudentList.add(srsMajors1);
}
//修改
List<SrsMajors> updateSrsStudent = new ArrayList<>();
for (Map map:updateMap){
SrsMajors srsMajors1 = new SrsMajors();
Object zydmobj=map.get("zydm");
if (zydmobj!=null) {
srsMajors1.setMajorCode(zydmobj.toString());
}
Object zymcobj=map.get("zymc");
if (zymcobj!=null) {
srsMajors1.setMajorName(zymcobj.toString());
}
if (map.get("yxmc")!=null) {
//使用代码查询学院id
Long yxdm = srsMajorsMapper.selectOldDeptIdByDeptName(map.get("yxmc").toString());
if (yxdm != null) {
srsMajors1.setCollegeId(yxdm);//学院id
} else {
srsMajors1.setCollegeId(0L);
}
}else {
srsMajors1.setCollegeId(0L);
}
srsMajors1.setUpdateTime(DateUtils.getNowDate());
updateSrsStudent.add(srsMajors1);
}
if (insertStudentList.size()!=0) {
srsMajorsMapper.insertBatchSomeColumn(insertStudentList);
}
if(updateSrsStudent.size()!=0) {
List<List<SrsMajors>> lists = ListSliceUtil.updateSlice(updateSrsStudent);
if (lists != null) {
for (List<SrsMajors> studentList : lists) {
srsMajorsMapper.updateSrsStudentList(studentList);
}
}
}
System.out.println(insertStudentList.size());
System.out.println(updateSrsStudent.size());
}
}

View File

@@ -22,5 +22,9 @@ public class SyncDataServiceImpl implements SyncDataService {
public List<Map> getSpecialtyInfoList(String zydm) {
return syncDataMapper.getSpecialtyInfoList(zydm);
}
@Override
public List<Map> getSpecialtyALLInfo(){
return syncDataMapper.getSpecialtyALLInfo();
}
}

View File

@@ -18,4 +18,8 @@
<if test="zydm != null and zydm!= '' ">and b.JXZYBH=#{zydm}</if>
</where>
</select>
<select id="getSpecialtyALLInfo" resultType="java.util.Map">
select b.JXZYBH as zydm,b.JXZYJC as zyjc,b.JXZYMC as zymc,a.BMMC yxmc from from_gxsdxyxxzx_xzbm a left join from_gxsdxyxxzx_zyxx b on a.BMBH=b.JXZYSSYXBBH
where b.JXZYBH is not null
</select>
</mapper>