123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package com.dashitech.migration.task.uc;
- import com.dashitech.migration.BaseTask;
- import com.dashitech.migration.SqlTask;
- import com.dashitech.migration.core.DataMigrationter;
- import com.dashitech.migration.core.FieldMapper;
- import com.dashitech.migration.util.JdbcUtil;
- import org.apache.commons.logging.Log;
- import org.apache.commons.logging.LogFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import org.springframework.transaction.annotation.Transactional;
- import java.util.List;
- import java.util.Map;
- /**
- * Created by CX on 2024/10/10.
- */
- @Component
- public class GroupTask extends BaseTask {
- public static Log log = LogFactory.getLog(GroupTask.class);
- @Autowired
- SqlTask hospitalTask;
- @Override
- @Transactional
- public void start() {
- log.info(" *** 工作组group转换开始 *** ");
- StringBuffer sb = new StringBuffer();
- sb.append(" select * from itsm_uc_groups ");
- List list = jdbcTemplateMdv2.queryForList(sb.toString());
- //测试
- FieldMapper mapper = new FieldMapper();
- mapper.addOperationRemove("id").addOperationRemove("duty_id");
- mapper.addOperationUpdate("_hospital_id", "branch_id");
- mapper.addOperationAdd("type", 3);
- Map<Long, Long> hosIdCache = hospitalTask.loadCache().getIdCache();
- mapper.addOperationReplace("branch_id", hosIdCache);
- mapper.trans2JdbcRow(list);
- JdbcUtil jdbcUtil = new JdbcUtil(jdbcTemplateHsms);
- jdbcUtil.batchPageInsert("itsm_uc_groups", mapper.getRows());
- //clear释放内存
- mapper.clear();
- }
- @Override
- public FieldMapper loadCache() {
- log.info(" *** 加载工作组group缓存 *** ");
- String sql = " select id,groupname,delete_flag from itsm_uc_groups ";
- List<Map<String, Object>> list = jdbcTemplateHsms.queryForList(sql);
- sql = " select id,groupname,delete_flag from itsm_uc_groups ";
- List<Map<String, Object>> list2 = jdbcTemplateMdv2.queryForList(sql);
- FieldMapper mapper = new FieldMapper();
- mapper.addFieldMapper("groupname", "groupname");
- mapper.addFieldMapper("delete_flag", "delete_flag");
- DataMigrationter.loadCache(list, list2, mapper);
- return mapper;
- }
- }
|