Commit 3190ded1 authored by hongguangwu's avatar hongguangwu

1.7.21-0申报

parent ae16107d
...@@ -65,13 +65,30 @@ public interface TSalaryZeroMapper extends BaseMapper<TSalaryZero> { ...@@ -65,13 +65,30 @@ public interface TSalaryZeroMapper extends BaseMapper<TSalaryZero> {
**/ **/
void createSalaryZeroYear(@Param("tableName") String tableName); void createSalaryZeroYear(@Param("tableName") String tableName);
// 自动创建每月的0申报视图(1月创建含去年12月的计税月份)(2月更新成当年的上月的计税月份) // 0:自动清理临时表
void createOrUpdateViewSalaryZeroYear(@Param("viewYearName") String viewYearName, @Param("tableNameOrLastTable") String tableNameOrLastTable); void clearTempZeroYear();
// 自动创建每日的0申报视图(1月创建含去年12月的计税月份)(2月更新成当年的上月的计税月份) // 1:自动创建临时表(1月创建含去年12月的计税月份)(2月更新成当年的上月的计税月份)
void createOrUpdateViewSalaryZeroDay(@Param("viewDayName") String viewDayName, @Param("tableName") String tableName, @Param("tableNameOrLastTable") String tableNameOrLastTable); void createTempZeroYearView(@Param("viewYearName") String viewYearName);
void createTempZeroYear(@Param("viewYearName") String viewYearName);
// 2:更新减除费用与计税月
void updateTempZeroYear(@Param("tableNameOrLastTable") String tableNameOrLastTable);
// 3:复制到0申报表
void insertIntoSalaryZeroYear(@Param("tableName") String tableName);
// 0:自动清理临时表Day
void clearTempZeroDay();
// 1:自动创建临时表(1月创建含去年12月的计税月份)(2月更新成当年的上月的计税月份)
void createTempZeroDayView(@Param("viewDayName") String viewDayName);
void createTempZeroDay(@Param("viewDayName") String viewDayName);
// 2.1:将已存在月度表的数据清理掉
void deleteCurTempZeroDay();
// 2.2:将已存在报账的数据更新掉
void updateTempZeroDayDelete();
// 2.3:更新减除费用与计税月
void updateTempZeroDay(@Param("tableNameOrLastTable") String tableNameOrLastTable);
// 3:复制到0申报表
void insertIntoSalaryZeroDay(@Param("tableName") String tableName);
// 每月1号生成当月0申报表
void insertIntoSalaryZeroYear(@Param("tableName") String tableName, @Param("viewYearName") String viewYearName);
// 每天23点生成当天0申报表 // 每天23点生成当天0申报表
void insertIntoSalaryZeroNowDay(@Param("tableName") String tableName, @Param("viewDayName") String viewDayName); void insertIntoSalaryZeroNowDay(@Param("tableName") String tableName, @Param("viewDayName") String viewDayName);
......
...@@ -592,32 +592,20 @@ public class TSalaryZeroServiceImpl extends ServiceImpl<TSalaryZeroMapper, TSala ...@@ -592,32 +592,20 @@ public class TSalaryZeroServiceImpl extends ServiceImpl<TSalaryZeroMapper, TSala
tableNameOrLastTable = SalaryConstants.TABLE_NAME_PRE + lastYear; tableNameOrLastTable = SalaryConstants.TABLE_NAME_PRE + lastYear;
// 创建0申报表 // 创建0申报表
baseMapper.createSalaryZeroYear(tableName); baseMapper.createSalaryZeroYear(tableName);
// 1:核心逻辑:自动创建每月的0申报视图(1月创建含去年12月的计税月份)(2月更新成当年的上月的计税月份)
baseMapper.createOrUpdateViewSalaryZeroYear(viewYearName, tableNameOrLastTable);
} else if (month == CommonConstants.TWO_INT) {
// 1:核心逻辑:自动创建每月的0申报视图(1月创建含去年12月的计税月份)(2月更新成当年的上月的计税月份)
baseMapper.createOrUpdateViewSalaryZeroYear(viewYearName, tableNameOrLastTable);
} }
try {
TSalaryZeroSearchVo searchVo = new TSalaryZeroSearchVo(); TSalaryZeroSearchVo searchVo = new TSalaryZeroSearchVo();
searchVo.setSettleMonth(DateUtil.addMonth(0)); searchVo.setSettleMonth(DateUtil.addMonth(0));
long count = baseMapper.getTSalaryZeroCount(tableName, searchVo); long count = baseMapper.getTSalaryZeroCount(tableName, searchVo);
if (count == CommonConstants.ZERO_INT) { if (count == CommonConstants.ZERO_INT) {
// 2:核心生成数据:生成月度数据 // 0:自动清理临时表
baseMapper.insertIntoSalaryZeroYear(tableName, viewYearName); baseMapper.clearTempZeroYear();
} // 1:核心逻辑:自动创建临时表(1月创建含去年12月的计税月份)(其他月更新成当年的上月的计税月份)
} catch (Exception e) { baseMapper.createTempZeroYearView(viewYearName);
// 保险机制,假如没有生成表与视图,则生成一份再生成数据 baseMapper.createTempZeroYear(viewYearName);
baseMapper.createSalaryZeroYear(tableName); // 2:更新减除费用与计税月
// 1:核心逻辑:自动创建每月的0申报视图(1月创建含去年12月的计税月份)(2月更新成当年的上月的计税月份) baseMapper.updateTempZeroYear(tableNameOrLastTable);
baseMapper.createOrUpdateViewSalaryZeroYear(viewYearName, tableNameOrLastTable); // 3:同步到目标表
// 2:核心生成数据:生成月度数据 baseMapper.insertIntoSalaryZeroYear(tableName);
TSalaryZeroSearchVo searchVo = new TSalaryZeroSearchVo();
searchVo.setSettleMonth(DateUtil.addMonth(0));
long count = baseMapper.getTSalaryZeroCount(tableName, searchVo);
if (count == CommonConstants.ZERO_INT) {
baseMapper.insertIntoSalaryZeroYear(tableName, viewYearName);
}
} }
} }
...@@ -636,24 +624,25 @@ public class TSalaryZeroServiceImpl extends ServiceImpl<TSalaryZeroMapper, TSala ...@@ -636,24 +624,25 @@ public class TSalaryZeroServiceImpl extends ServiceImpl<TSalaryZeroMapper, TSala
if (month == CommonConstants.ONE_INT) { if (month == CommonConstants.ONE_INT) {
int lastYear = year - 1; int lastYear = year - 1;
tableNameOrLastTable = SalaryConstants.TABLE_NAME_PRE + lastYear; tableNameOrLastTable = SalaryConstants.TABLE_NAME_PRE + lastYear;
}
if (day == CommonConstants.ONE_INT) { if (day == CommonConstants.ONE_INT) {
if (month == CommonConstants.ONE_INT) {
baseMapper.createSalaryZeroYear(tableName); baseMapper.createSalaryZeroYear(tableName);
} }
// 1:核心逻辑
baseMapper.createOrUpdateViewSalaryZeroDay(viewDayName, tableName, tableNameOrLastTable);
}
// 2:核心生成数据(今天的数据)
try {
baseMapper.insertIntoSalaryZeroNowDay(tableName, viewDayName);
} catch (Exception e) {
// 保险机制,假如没有生成表与视图,则生成一份再生成数据
baseMapper.createSalaryZeroYear(tableName);
// 1:核心逻辑
baseMapper.createOrUpdateViewSalaryZeroDay(viewDayName, tableName, tableNameOrLastTable);
baseMapper.insertIntoSalaryZeroNowDay(tableName, viewDayName);
} }
// 0:自动清理临时表
baseMapper.clearTempZeroDay();
// 1:核心逻辑:自动创建临时表(1月创建含去年12月的计税月份)(其他月更新成当年的上月的计税月份)
baseMapper.createTempZeroDayView(viewDayName);
baseMapper.createTempZeroDay(viewDayName);
// 2.1:将已存在的数据清理掉
baseMapper.deleteCurTempZeroDay();
// 2.2:将已存在报账的数据更新掉
baseMapper.updateTempZeroDayDelete();
// 2.3:更新减除费用与计税月
baseMapper.updateTempZeroDay(tableNameOrLastTable);
// 3:同步到目标表
baseMapper.insertIntoSalaryZeroDay(tableName);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment