重新同步教职工数据修改
This commit is contained in:
@@ -17,9 +17,9 @@ import java.util.Map;
|
||||
@RequestMapping("/syncdata")
|
||||
public class SyncDataController extends BaseController {
|
||||
@Autowired
|
||||
private SyncDataService syncDataService;
|
||||
SyncDataService syncDataService;
|
||||
@Autowired
|
||||
private ICphTeacherService iCphTeacherService;
|
||||
ICphTeacherService iCphTeacherService;
|
||||
@RequestMapping("/getEmployEEInfoList")
|
||||
public TableDataInfo getEmployEEInfoList(){
|
||||
startPage();
|
||||
|
||||
@@ -464,6 +464,8 @@ public class CphTeacherServiceImpl implements ICphTeacherService
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void sqlserverSynchronousMYSQL(List<Map> list) {
|
||||
List<QgzxTeacher> insertTeacherList = new ArrayList<>();//添加集合
|
||||
List<QgzxTeacher> updateTeacherList = new ArrayList<>();//修改集合
|
||||
for (Map<String, Object> map : list) {
|
||||
String zgh = (String) map.get("zgh");
|
||||
String xm=(String) map.get("xm");
|
||||
@@ -482,13 +484,21 @@ public class CphTeacherServiceImpl implements ICphTeacherService
|
||||
entity.setStatus(zgzt);
|
||||
entity.setCreateTime(DateUtils.getNowDate());
|
||||
if(qgzxTeacher==null){
|
||||
qgzxTeacherMapper.insertQgzxTeacher(entity);
|
||||
//qgzxTeacherMapper.insertQgzxTeacher(entity);
|
||||
insertTeacherList.add(entity);
|
||||
}else{
|
||||
entity.setEmployeeId(zgh);
|
||||
qgzxTeacherMapper.updateQgzxTeacherNew(entity);
|
||||
entity.setUpdateTime(DateUtils.getNowDate());
|
||||
//qgzxTeacherMapper.updateQgzxTeacherNew(entity);
|
||||
updateTeacherList.add(entity);
|
||||
}
|
||||
}
|
||||
|
||||
if(insertTeacherList.size()!=0){
|
||||
qgzxTeacherMapper.insertBatchSomeColumn(insertTeacherList);
|
||||
}
|
||||
if(updateTeacherList.size()!=0){
|
||||
qgzxTeacherMapper.updateBatchSomeColumn(updateTeacherList);
|
||||
}
|
||||
}
|
||||
|
||||
//同步到用户表
|
||||
|
||||
@@ -46,7 +46,6 @@ public interface QgzxTeacherMapper extends BaseMapper<QgzxTeacher> {
|
||||
*/
|
||||
int updateQgzxTeacher(QgzxTeacher qgzxTeacher);
|
||||
int updateQgzxTeacherNew(QgzxTeacher qgzxTeacher);
|
||||
|
||||
/**
|
||||
* 删除教职工信息
|
||||
*
|
||||
@@ -66,4 +65,5 @@ public interface QgzxTeacherMapper extends BaseMapper<QgzxTeacher> {
|
||||
public List<QgzxTeacher> selectTeacherList();
|
||||
Long selectDeptCode(String ksh);
|
||||
Integer insertBatchSomeColumn(@Param("list")List<QgzxTeacher> entityList);
|
||||
Integer updateBatchSomeColumn(@Param("list")List<QgzxTeacher> entityList);
|
||||
}
|
||||
|
||||
@@ -76,10 +76,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
<if test="updateTime != null">#{updateTime},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
<insert id="insertBatchSomeColumn">
|
||||
<insert id="insertBatchSomeColumn" parameterType="java.util.List">
|
||||
insert into qgzx_teacher(name,gender,age,employee_id,dept_id,status,create_time)
|
||||
values
|
||||
<foreach item="entity" collection="List" separator="," open="(" close=")">
|
||||
<foreach item="entity" collection="list" separator="," open="(" close=")">
|
||||
(
|
||||
<if test="entity.name != null and entity.name != ''">#{entity.name},</if>
|
||||
<if test="entity.gender != null and entity.gender != ''">#{entity.gender},</if>
|
||||
@@ -122,6 +122,44 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</trim>
|
||||
where employee_id = #{employeeId}
|
||||
</update>
|
||||
<update id="updateBatchSomeColumn" parameterType="java.util.List">
|
||||
UPDATE qgzx_teacher
|
||||
<set>
|
||||
<!-- 批量更新姓名字段:根据主键匹配对应值 -->
|
||||
name = CASE
|
||||
<foreach collection="list" item="item" separator="">
|
||||
WHEN employee_id = #{item.employeeId} THEN #{item.name}
|
||||
</foreach>
|
||||
END,
|
||||
<!-- 批量更新性别编码字段:可同时更新多个字段 -->
|
||||
gender = CASE
|
||||
<foreach collection="list" item="item" separator="">
|
||||
WHEN employee_id = #{item.employeeId} THEN #{item.gender}
|
||||
</foreach>
|
||||
END,
|
||||
<!-- 批量更新所属部门编码字段 -->
|
||||
dept_id = CASE
|
||||
<foreach collection="list" item="item" separator="">
|
||||
WHEN employee_id = #{item.employeeId} THEN #{item.deptId}
|
||||
</foreach>
|
||||
END,
|
||||
status = CASE
|
||||
<foreach collection="list" item="item" separator="">
|
||||
WHEN employee_id = #{item.employeeId} THEN #{item.status}
|
||||
</foreach>
|
||||
END,
|
||||
update_time = CASE
|
||||
<foreach collection="list" item="item" separator="">
|
||||
WHEN employee_id = #{item.employeeId} THEN #{item.updateTime}
|
||||
</foreach>
|
||||
END
|
||||
</set>
|
||||
<!-- 关键:通过主键过滤,只更新传入的数据集 -->
|
||||
WHERE employee_id IN
|
||||
<foreach collection="list" item="item" open="(" separator="," close=")">
|
||||
#{item.employeeId}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
<delete id="deleteQgzxTeacherByTeacherId" parameterType="Long">
|
||||
delete from qgzx_teacher where teacher_id = #{teacherId}
|
||||
|
||||
Reference in New Issue
Block a user