Merge remote-tracking branch 'origin/main'

This commit is contained in:
2025-12-30 18:04:19 +08:00
7 changed files with 171 additions and 22 deletions

View File

@@ -4,6 +4,7 @@ import com.srs.common.core.controller.BaseController;
import com.srs.common.core.domain.AjaxResult;
import com.srs.common.core.page.TableDataInfo;
import com.srs.comprehensive.service.ICphTeacherService;
import com.srs.comprehensive.service.ISrsClassService;
import com.srs.comprehensive.service.ISrsMajorsService;
import com.srs.comprehensive.service.SyncDataService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -24,6 +25,9 @@ public class SyncDataController extends BaseController {
ICphTeacherService iCphTeacherService;
@Autowired
ISrsMajorsService iSrsMajorsService;
@Autowired
ISrsClassService iSrsClassService;
//中间表教职工信息
@RequestMapping("/getEmployEEInfoList")
public TableDataInfo getEmployEEInfoList(){
startPage();
@@ -54,9 +58,19 @@ public class SyncDataController extends BaseController {
}
//中间表班级
@RequestMapping("/classInfoList")
public TableDataInfo classInfoList(){
public TableDataInfo classInfoList(String bjdm){
startPage();
List<Map> list=syncDataService.getClassInfoList();
List<Map> list=syncDataService.getClassInfoList(bjdm);
return getDataTable(list);
}
//同步班级
@RequestMapping("/synchronousClass")
public AjaxResult synchronousClass(){
List<Map> list=syncDataService.getClassInfoList(null);
iSrsClassService.synchronousMYSQL(list);//同步班级
return success(list);
}
}

View File

@@ -7,5 +7,5 @@ public interface SyncDataMapper {
public List<Map> getEmployEEInfoList();//教职工
public List<Map> getSpecialtyInfoList(String zydm);//专业
public List<Map> getSpecialtyALLInfo();//所有专业
public List<Map> getClassInfoList();//班级
public List<Map> getClassInfoList(String bjdm);//班级
}

View File

@@ -13,7 +13,7 @@ import com.srs.comprehensive.domain.Vo.CphSearch;
/**
* 班级信息
Service接口
*
*
* @author srs
* @date 2023-06-27
*/
@@ -27,7 +27,7 @@ public interface ISrsClassService extends IService<SrsClass>
/**
* 查询班级信息
*
*
* @param classId 班级信息
主键
* @return 班级信息
@@ -38,7 +38,7 @@ public interface ISrsClassService extends IService<SrsClass>
/**
* 查询班级信息
列表
*
*
* @param srsClass 班级信息
* @return 班级信息
@@ -63,7 +63,7 @@ public interface ISrsClassService extends IService<SrsClass>
/**
* 新增班级信息
*
*
* @param srsClass 班级信息
* @return 结果
@@ -73,7 +73,7 @@ public interface ISrsClassService extends IService<SrsClass>
/**
* 修改班级信息
*
*
* @param srsClass 班级信息
* @return 结果
@@ -83,7 +83,7 @@ public interface ISrsClassService extends IService<SrsClass>
/**
* 批量删除班级信息
*
*
* @param classIds 需要删除的班级信息
主键集合
* @return 结果
@@ -93,7 +93,7 @@ public interface ISrsClassService extends IService<SrsClass>
/**
* 删除班级信息
信息
*
*
* @param classId 班级信息
主键
* @return 结果
@@ -107,6 +107,6 @@ public interface ISrsClassService extends IService<SrsClass>
public Map<String,Object> datasync();
void sqlserverSynchronousMYSQL(List<Map> list);
void synchronousMYSQL(List<Map> list);
}

View File

@@ -7,5 +7,5 @@ public interface SyncDataService {
List<Map> getEmployEEInfoList();//教职工
List<Map> getSpecialtyInfoList(String zydm);//专业
List<Map> getSpecialtyALLInfo();//所有专业
List<Map> getClassInfoList();//班级
List<Map> getClassInfoList(String bjdm);//班级
}

View File

@@ -24,7 +24,7 @@ import org.springframework.stereotype.Service;
/**
* 班级信息
Service业务层处理
*
*
* @author srs
* @date 2023-06-27
*/
@@ -63,7 +63,7 @@ public class SrsClassServiceImpl extends ServiceImpl<SrsClassMapper,SrsClass> im
/**
* 查询班级信息
*
*
* @param classId 班级信息
主键
* @return 班级信息
@@ -78,7 +78,7 @@ public class SrsClassServiceImpl extends ServiceImpl<SrsClassMapper,SrsClass> im
/**
* 查询班级信息
列表
*
*
* @param srsClass 班级信息
* @return 班级信息
@@ -118,7 +118,7 @@ public class SrsClassServiceImpl extends ServiceImpl<SrsClassMapper,SrsClass> im
}
/**
* 新增班级信息
*
*
* @param srsClass 班级信息
* @return 结果
@@ -132,7 +132,7 @@ public class SrsClassServiceImpl extends ServiceImpl<SrsClassMapper,SrsClass> im
/**
* 修改班级信息
*
*
* @param srsClass 班级信息
* @return 结果
*/
@@ -145,7 +145,7 @@ public class SrsClassServiceImpl extends ServiceImpl<SrsClassMapper,SrsClass> im
/**
* 批量删除班级信息
*
*
* @param classIds 需要删除的班级信息主键
* @return 结果
*/
@@ -157,7 +157,7 @@ public class SrsClassServiceImpl extends ServiceImpl<SrsClassMapper,SrsClass> im
/**
* 删除班级信息信息
*
*
* @param classId 班级信息主键
* @return 结果
*/
@@ -341,6 +341,138 @@ public class SrsClassServiceImpl extends ServiceImpl<SrsClassMapper,SrsClass> im
}
}
//同步班级信息
@Override
public void synchronousMYSQL(List<Map> list) {
//班级列表
List<SrsClass> srsClasses = srsClassMapper.selectSrsClassInfoList();
//查找重复值
List<Map> updateMap = list.stream()
.filter(obj1 -> srsClasses
.stream().anyMatch(obj2 -> {
Object xhObj = obj1.get("bjdm");
if (xhObj != null) {
String zgh = xhObj.toString();
return obj2.getClassCode().equals(zgh);
}
return false;
}))
.collect(Collectors.toList());
//添加需要
List<String> kshList2 = srsClasses.stream()
.map(SrsClass::getClassCode)
.collect(Collectors.toList());
List<Map> insertMap = list.stream()
.filter(obj -> {
Object xhObj = obj.get("bjdm");
return xhObj != null && !kshList2.contains(xhObj.toString());
})
.collect(Collectors.toList());
//添加
List<SrsClass> insertStudentList = new ArrayList<>();
for (Map map:insertMap){
SrsClass srsClass = new SrsClass();
Object bjdmobj=map.get("bjdm");
if (bjdmobj!=null) {
srsClass.setClassCode(bjdmobj.toString());
}
Object njid=map.get("njid");
if (njid!=null) {
String njdm =njid.toString();//年级代码
Long gradeId = srsClassMapper.getGradeId(njdm);//使用年级代码查询本地年级id
if (gradeId!=null) {
srsClass.setGradeId(gradeId);//年级编号
}
}
srsClass.setStatus("0");
Object zyidobj=map.get("zyid");
if (zyidobj!=null) {
String zydm =zyidobj.toString();//专业代码
//使用专业代码查询本地专业id
if (zydm!=null) {
Long zyid = srsMajorsMapper.selectMajorId(zydm);
if (zyid!=null) {
srsClass.setMajorId(zyid);
}
}
}
//使用辅导员工号查询辅导员id
Object bjdmsobj=map.get("bjdm");
if (bjdmsobj!=null) {
String gh =bjdmsobj.toString();//辅导员职工号
if (gh!=null) {
CphTeacher fdy = cphTeacherMapper.selectCphTeacher(gh);//辅导员
if (fdy!=null) {
srsClass.setTeacherId(fdy.getTeacherId());//辅导员id
}
}
}
Object bjmcobj=map.get("bjmc");
if(bjmcobj!=null) {
srsClass.setClassName(bjmcobj.toString());
}
srsClass.setCreateTime(DateUtils.getNowDate());
insertStudentList.add(srsClass);
}
//修改
List<SrsClass> updateSrsStudent = new ArrayList<>();
for (Map map:updateMap){
SrsClass srsClass = new SrsClass();
Object bjdmobj=map.get("bjdm");
if (bjdmobj!=null) {
srsClass.setClassCode(bjdmobj.toString());
}
Object njid=map.get("njid");
if (njid!=null) {
//通过sqlserver数据库的年级id查询年级代码使用年级代码查询mysql的年级id
String njdm = gets(Long.valueOf(njid.toString()));//年级代码
Long gradeId = srsClassMapper.getGradeId(njdm);//使用年级代码查询本地年级id
if (gradeId!=null) {
srsClass.setGradeId(gradeId);//年级编号
}
}
srsClass.setStatus("0");
Object zyidobj=map.get("zyid");
if (zyidobj!=null) {
String zydm = getzydm(Long.valueOf(zyidobj.toString()));//专业代码
//使用专业代码查询本地专业id
if (zydm!=null) {
Long zyid = srsMajorsMapper.selectMajorId(zydm);
if (zyid!=null) {
srsClass.setMajorId(zyid);
}
}
}
//使用辅导员工号查询辅导员id
Object bjdmsobj=map.get("bjdm");
if (bjdmsobj!=null) {
String gh = getfdy(bjdmsobj.toString());//辅导员职工号
if (gh!=null) {
CphTeacher fdy = cphTeacherMapper.selectCphTeacher(gh);//辅导员
if (fdy!=null) {
srsClass.setTeacherId(fdy.getTeacherId());//辅导员id
}
}
}
Object bjmcobj=map.get("bjmc");
if(bjmcobj!=null) {
srsClass.setClassName(bjmcobj.toString());
}
srsClass.setUpdateTime(DateUtils.getNowDate());
updateSrsStudent.add(srsClass);
}
if (insertStudentList.size()!= 0) {
srsClassMapper.insertBatchSomeColumn(insertStudentList);
}
List<List<SrsClass>> lists = ListSliceUtil.updateSlice(updateSrsStudent);
if (lists != null) {
for (List<SrsClass> studentList:lists){
srsClassMapper.updateSrsClassList(studentList);
}
}
}
@DataSource(DataSourceType.DATABASE)
public String gets(Long njdm){
return sqlServerDataService.gets(njdm);

View File

@@ -27,7 +27,7 @@ public class SyncDataServiceImpl implements SyncDataService {
return syncDataMapper.getSpecialtyALLInfo();
}
@Override
public List<Map> getClassInfoList(){
return syncDataMapper.getClassInfoList();
public List<Map> getClassInfoList(String bjdm){
return syncDataMapper.getClassInfoList(bjdm);
}
}

View File

@@ -22,7 +22,10 @@
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>
<select id="getClassInfoList" resultType="java.util.Map">
<select id="getClassInfoList" resultType="java.util.Map" parameterType="String">
select BJBH as bjdm,BJSSJXZYBH as zyid,BJMC as bjmc,BJSSNJ as njid from from_gxsdxyxxzx_class
<where>
<if test="bjdm != null and bjdm!= '' ">and BJBH=#{bjdm}</if>
</where>
</select>
</mapper>