优化餐券对接
This commit is contained in:
parent
fc4b5395fd
commit
02fe04e6a2
@ -587,208 +587,64 @@ public class TestController {
|
|||||||
|
|
||||||
public static void main(String[] args) throws Exception {
|
public static void main(String[] args) throws Exception {
|
||||||
|
|
||||||
String str = "GW000001,总经理,00101,总经办;" +
|
String str = "郝卫明,8000;" +
|
||||||
"GW000002,经营副总,00101,总经办;" +
|
"郝亮,1500;" +
|
||||||
"GW000003,生产副总,00101,总经办;" +
|
"柳晓龙,1300;" +
|
||||||
"GW000004,机械总工程师,013,研究院;" +
|
"王旭,800;" +
|
||||||
"GW000005,常务副总,00101,总经办;" +
|
"张克龙,1500;" +
|
||||||
"GW000006,电气总工程师,013,研究院;" +
|
"贾会涛,500;" +
|
||||||
"GW000007,销售总监,00202,工业事业部;" +
|
"李凯伟,2500;" +
|
||||||
"GW000008,营销专员,00202,工业事业部;" +
|
"石泽明,500;" +
|
||||||
"GW000009,销售总监,00201,舞台事业部;" +
|
"马明广,500;" +
|
||||||
"GW000010,区域经理,00202,工业事业部;" +
|
"宋金娜,800;" +
|
||||||
"GW000011,销售内勤,00202,工业事业部;" +
|
"吴海庆,318;" +
|
||||||
"GW000012,生管部部长,005,生产管理部;" +
|
"冯翠莎,500;" +
|
||||||
"GW000013,调度员,007,装配车间;" +
|
"赵科飞,1000;" +
|
||||||
"GW000015,装一工段长,007,装配车间;" +
|
"李进江,431;" +
|
||||||
"GW000016,装一组长,007,装配车间;" +
|
"李佳铭,1000;" +
|
||||||
"GW000017,装一装配工,007,装配车间;" +
|
"耿利刚,100;" +
|
||||||
"GW000018,装二装配工,007,装配车间;" +
|
"张雨轩,400;" +
|
||||||
"GW000030,工艺工程师,011,工艺所;" +
|
"李永文,1000;" +
|
||||||
"GW000031,仓储部长,009,仓储物流部;" +
|
"代程翼,900;" +
|
||||||
"GW000032,库管员,009,仓储物流部;" +
|
"李晓亮,800;" +
|
||||||
"GW000033,设计部部长,013,研究院;" +
|
"李兴酉,800;" +
|
||||||
"GW000034,机械设计工程师,013,研究院;" +
|
"王晓凡,800;" +
|
||||||
"GW000036,工艺技术员,011,工艺所;" +
|
"董献召,354;" +
|
||||||
"GW000039,质量部部长,012,质量管理部;" +
|
"王晓军,300;" +
|
||||||
"GW000040,质检员,012,质量管理部;" +
|
"苏冰,2000;" +
|
||||||
"GW000041,财务部部长,003,财务部;" +
|
"吴建彬,500;" +
|
||||||
"GW000042,出纳,003,财务部;" +
|
"王怀志,1000;" +
|
||||||
"GW000044,采购部部长,004,采购部;" +
|
"张广适,400;" +
|
||||||
"GW000045,采购员,004,采购部;" +
|
"赵兰争,800;" +
|
||||||
"GW000047,C++工程师,013,研究院;" +
|
"齐乐芳,500;" +
|
||||||
"GW000058,质量工程师(QE),012,质量管理部;" +
|
"魏佳蕊,500;" +
|
||||||
"GW000063,信息中心专员,00104,信息化办公室;" +
|
"范会雨,424;" +
|
||||||
"GW000064,行政办主任,00102,行政办;" +
|
"康坤兰,500;" +
|
||||||
"GW000065,行政专员,00102,行政办;" +
|
"牛立革,600;" +
|
||||||
"GW000066,信息中心主任,00104,信息化办公室;" +
|
"付佳兴,265;" +
|
||||||
"GW000067,人资办主任,00103,人资办;" +
|
"游梦浩,277;" +
|
||||||
"GW000068,人资专员,00103,人资办;" +
|
"魏辰强,500;" +
|
||||||
"GW000069,员工关系专员,00103,人资办;" +
|
"吴凯亮,400;" +
|
||||||
"GW000070,总经办主任,00101,总经办;" +
|
"董亚军,500;" +
|
||||||
"GW000071,总经办专员,00101,总经办;" +
|
"赵雄飞,1000;" +
|
||||||
"GW000072,成本会计,003,财务部;" +
|
"宁世汉,351;" +
|
||||||
"GW000073,总账会计,003,财务部;" +
|
"张会杰,500;" +
|
||||||
"GW000074,往来会计,003,财务部;" +
|
"王光磊,207;" +
|
||||||
"GW000075,库管组长,009,仓储物流部;" +
|
"梅丙立,189;" +
|
||||||
"GW000076,电控部长,013,研究院;" +
|
"李泽宇,200;" +
|
||||||
"GW000077,电气工程师,013,研究院;" +
|
"印子鹏,100;" +
|
||||||
"GW000078,点收组长,012,质量管理部;" +
|
"李雷升,100;" +
|
||||||
"GW000079,点收员,012,质量管理部;" +
|
"杨策,305;" +
|
||||||
"GW000080,调式工程师,013,研究院;" +
|
"赵芊慧,200;" +
|
||||||
"GW000081,前端工程师,013,研究院;" +
|
"朱海斌,100;" +
|
||||||
"GW000082,JAVA工程师,013,研究院;" +
|
"李彦辉,100;" +
|
||||||
"GW000083,嵌入式工程师,013,研究院;" +
|
"李增全,200;" +
|
||||||
"GW000084,装二工段长,007,装配车间;" +
|
"靳立节,100";
|
||||||
"GW000085,装二组长,007,装配车间;" +
|
|
||||||
"GW000086,电钳工段长,007,装配车间;" +
|
|
||||||
"GW000087,售后副段长,015,售后服务科;" +
|
|
||||||
"GW000088,电钳工,007,装配车间;" +
|
|
||||||
"GW000089,调度员,006,机加车间;" +
|
|
||||||
"GW000090,统计员,006,机加车间;" +
|
|
||||||
"GW000091,卧加组长,006,机加车间;" +
|
|
||||||
"GW000092,铆焊副工段长,006,机加车间;" +
|
|
||||||
"GW000093,走心机操作工,006,机加车间;" +
|
|
||||||
"GW000094,下料组组长,006,机加车间;" +
|
|
||||||
"GW000095,非标焊接工段长,018,铆焊车间;" +
|
|
||||||
"GW000096,攻丝操作员,006,机加车间;" +
|
|
||||||
"GW000097,机一车间主任,006,机加车间;" +
|
|
||||||
"GW000098,机一操作员,006,机加车间;" +
|
|
||||||
"GW000099,机二车间主任,006,机加车间;" +
|
|
||||||
"GW000100,机二副工段长,006,机加车间;" +
|
|
||||||
"GW000101,卧加操作员,006,机加车间;" +
|
|
||||||
"GW000102,机三车间主任,006,机加车间;" +
|
|
||||||
"GW000103,机三副工段长,006,机加车间;" +
|
|
||||||
"GW000104,龙门组组长,006,机加车间;" +
|
|
||||||
"GW000105,立加850组长,006,机加车间;" +
|
|
||||||
"GW000106,立加850操作员,006,机加车间;" +
|
|
||||||
"GW000107,保安,00102,行政办;" +
|
|
||||||
"GW000108,保洁,00102,行政办;" +
|
|
||||||
"GW000109,外贸业务经理,00202,工业事业部;" +
|
|
||||||
"GW000110,设备科科长,016,设备科;" +
|
|
||||||
"GW000111,设备维修工,016,设备科;" +
|
|
||||||
"GW000112,设备工程师,016,设备科;" +
|
|
||||||
"GW000113,生管员,005,生产管理部;" +
|
|
||||||
"GW000114,工艺部部长,011,工艺所;" +
|
|
||||||
"GW000116,技术员1,013,研究院;" +
|
|
||||||
"GW000117,焊工,006,机加车间;" +
|
|
||||||
"GW000118,铆工,018,铆焊车间;" +
|
|
||||||
"GW000119,助理工程师,013,研究院;" +
|
|
||||||
"GW000120,技术员2,013,研究院;" +
|
|
||||||
"GW000121,项目专员,005,生产管理部;" +
|
|
||||||
"GW000122,售后服务部部长,015,售后服务科;" +
|
|
||||||
"GW000123,售后工程师,015,售后服务科;" +
|
|
||||||
"GW000124,算法工程师,013,研究院;" +
|
|
||||||
"GW000125,PACK研发部主管,013,研究院;" +
|
|
||||||
"GW000126,BMS应用工程师,013,研究院;" +
|
|
||||||
"GW000127,仓储部副部长,009,仓储物流部;" +
|
|
||||||
"GW000128,机械研发部部长,013,研究院;" +
|
|
||||||
"GW000129,测试员,013,研究院;" +
|
|
||||||
"GW000130,生产副总助理,00101,总经办;" +
|
|
||||||
"GW000131,销售内勤,002004,大客户事业部;" +
|
|
||||||
"GW000133,销售内勤,00201,舞台事业部;" +
|
|
||||||
"GW000134,区域经理,00201,舞台事业部;" +
|
|
||||||
"GW000135,营销专员,00201,舞台事业部;" +
|
|
||||||
"GW000137,外贸员,00202,工业事业部;" +
|
|
||||||
"GW000139,生管部副部长,005,生产管理部;" +
|
|
||||||
"GW000140,下料操作工,018,铆焊车间;" +
|
|
||||||
"GW000141,铆焊工段长,018,铆焊车间;" +
|
|
||||||
"GW000142,研发一所所长,013,研究院;" +
|
|
||||||
"GW000143,工步工艺员,006,机加车间;" +
|
|
||||||
"GW000144,数车工段长,006,机加车间;" +
|
|
||||||
"GW000145,打磨工,018,铆焊车间;" +
|
|
||||||
"GW000146,工艺技术员,013,研究院;" +
|
|
||||||
"GW000147,内勤,005,生产管理部;" +
|
|
||||||
"GW000148,机械手操作工,018,铆焊车间;" +
|
|
||||||
"GW000149,激光切操作工,018,铆焊车间;" +
|
|
||||||
"GW000150,转序员,018,铆焊车间;" +
|
|
||||||
"GW000151,综合技术员,018,铆焊车间;" +
|
|
||||||
"GW000152,点收员,004,采购部;" +
|
|
||||||
"GW000153,机二文员,006,机加车间;" +
|
|
||||||
"GW000154,外协员,005,生产管理部;" +
|
|
||||||
"GW000155,机械工程师,013,研究院;" +
|
|
||||||
"GW000156,机械研发专员,013,研究院;" +
|
|
||||||
"GW000157,激光淬火操作工,018,铆焊车间;" +
|
|
||||||
"GW000158,转序员,006,机加车间;" +
|
|
||||||
"GW000159,电钳采购,023,电钳车间;" +
|
|
||||||
"GW000160,装配车间主任,007,装配车间;" +
|
|
||||||
"GW000161,铆焊车间主任,018,铆焊车间;" +
|
|
||||||
"GW000162,电钳车间主任,023,电钳车间;" +
|
|
||||||
"GW000163,计划员,005,生产管理部;" +
|
|
||||||
"GW000164,机二编程员,006,机加车间;" +
|
|
||||||
"GW000165,攻丝操作员,007,装配车间;" +
|
|
||||||
"GW000166,电钳工,023,电钳车间;" +
|
|
||||||
"GW000167,校形操作工,018,铆焊车间;" +
|
|
||||||
"GW000168,激光切板组长,018,铆焊车间;" +
|
|
||||||
"GW000169,火焰操作工,018,铆焊车间;" +
|
|
||||||
"GW000170,火焰、切管组组长,018,铆焊车间;" +
|
|
||||||
"GW000171,转运组长,018,铆焊车间;" +
|
|
||||||
"GW000172,下料工段长,018,铆焊车间;" +
|
|
||||||
"GW000173,激光焊工,018,铆焊车间;" +
|
|
||||||
"GW000174,焊工,018,铆焊车间;" +
|
|
||||||
"GW000175,精密件组长,018,铆焊车间;" +
|
|
||||||
"GW000176,坡口机操作工,018,铆焊车间;" +
|
|
||||||
"GW000177,自动化组长,018,铆焊车间;" +
|
|
||||||
"GW000178,行程检测,023,电钳车间;" +
|
|
||||||
"GW000179,研发二所所长,013,研究院;" +
|
|
||||||
"GW000180,铆工组长,018,铆焊车间;" +
|
|
||||||
"GW000181,研发三所所长,013,研究院;" +
|
|
||||||
"GW000182,电气技术员,013,研究院;" +
|
|
||||||
"GW000183,库管员,018,铆焊车间;" +
|
|
||||||
"GW000184,自动化焊接工段长,018,铆焊车间;" +
|
|
||||||
"GW000185,统计员,018,铆焊车间;" +
|
|
||||||
"GW000186,研发四所所长,013,研究院;" +
|
|
||||||
"GW000187,研究院院长,013,研究院;" +
|
|
||||||
"GW000188,研发六所所长,013,研究院;" +
|
|
||||||
"GW000189,调试测试工程师,013,研究院;" +
|
|
||||||
"GW000190,研发七所所长,013,研究院;" +
|
|
||||||
"GW000191,研究院副院长,013,研究院;" +
|
|
||||||
"GW000192,人事专员,00103,人资办;" +
|
|
||||||
"GW000193,信息化主任,00104,信息化办公室;" +
|
|
||||||
"GW000194,信息化专员,00104,信息化办公室;" +
|
|
||||||
"GW000195,售后服务科长,015,售后服务科;" +
|
|
||||||
"GW000196,助理工程师,00202,工业事业部;" +
|
|
||||||
"GW000197,机械工程师,00202,工业事业部;" +
|
|
||||||
"GW000198,外贸员,00201,舞台事业部;" +
|
|
||||||
"GW000199,应收会计,003,财务部;" +
|
|
||||||
"GW000200,应付会计,003,财务部;" +
|
|
||||||
"GW000201,机二编程组长,006,机加车间;" +
|
|
||||||
"GW000202,调度员,005,生产管理部;" +
|
|
||||||
"GW000203,生产计划员,005,生产管理部;" +
|
|
||||||
"GW000204,点收员,009,仓储物流部;" +
|
|
||||||
"GW000205,仓储物流部长,009,仓储物流部;" +
|
|
||||||
"GW000206,仓储物流副部长,009,仓储物流部;" +
|
|
||||||
"GW000207,龙门操作员,006,机加车间;" +
|
|
||||||
"GW000208,制程检验员,012,质量管理部;" +
|
|
||||||
"GW000209,成品检验员,012,质量管理部;" +
|
|
||||||
"GW000210,质量管理部长,012,质量管理部;" +
|
|
||||||
"GW000211,三坐标检验员,012,质量管理部;" +
|
|
||||||
"GW000212,质量体系工程师,012,质量管理部;" +
|
|
||||||
"GW000213,普车工段长,006,机加车间;" +
|
|
||||||
"GW000214,普机操作工,006,机加车间;" +
|
|
||||||
"GW000215,台钻操作工,006,机加车间;" +
|
|
||||||
"GW000216,锯床,006,机加车间;" +
|
|
||||||
"GW000217,磨床操作工,006,机加车间;" +
|
|
||||||
"GW000218,机三编程员,006,机加车间;" +
|
|
||||||
"GW000219,线切割组长,006,机加车间;" +
|
|
||||||
"GW000220,线切割操作工,006,机加车间;" +
|
|
||||||
"GW000221,数车操作工,006,机加车间;" +
|
|
||||||
"GW000222,磨齿机操作工,006,机加车间;" +
|
|
||||||
"GW000223,激光淬火操作工,006,机加车间;" +
|
|
||||||
"GW000224,编程员,006,机加车间;" +
|
|
||||||
"GW000225,工段长,006,机加车间;" +
|
|
||||||
"GW000226,链条组长,007,装配车间;" +
|
|
||||||
"GW000227,箱体组长,007,装配车间";
|
|
||||||
String[] aa = str.split(";");
|
String[] aa = str.split(";");
|
||||||
int sort = 1;
|
|
||||||
List<String> deptNames = new ArrayList<>();
|
|
||||||
for (int i = 0; i < aa.length; i++) {
|
for (int i = 0; i < aa.length; i++) {
|
||||||
String a = aa[i].trim();
|
String a = aa[i].trim();
|
||||||
String[] ss = a.split(",");
|
String[] ss = a.split(",");
|
||||||
if(!deptNames.contains(ss[3])) {
|
System.out.println("CALL `修改其他补助`('"+ss[0]+"', "+ss[1]+");");
|
||||||
System.out.println("update sys_dept set dept_code='"+ss[2]+"' where dept_name = '"+ss[3]+"';");
|
|
||||||
deptNames.add(ss[3]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// System.out.println("INSERT INTO `evo_cw_dev`.`sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) " +
|
// System.out.println("INSERT INTO `evo_cw_dev`.`sys_dict_data` (`dict_sort`, `dict_label`, `dict_value`, `dict_type`, `css_class`, `list_class`, `is_default`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) " +
|
||||||
// "VALUES ( "+(sort++)+", '"+ss[1]+"', '"+ss[0]+"_"+ss[2]+"', 'job_info', NULL, 'default', 'N', '0', 'admin', now(), '', NULL, NULL);");
|
// "VALUES ( "+(sort++)+", '"+ss[1]+"', '"+ss[0]+"_"+ss[2]+"', 'job_info', NULL, 'default', 'N', '0', 'admin', now(), '', NULL, NULL);");
|
||||||
|
|||||||
@ -12,6 +12,8 @@ import com.evo.common.utils.StringUtils;
|
|||||||
import com.evo.ding.DingUtils;
|
import com.evo.ding.DingUtils;
|
||||||
import com.evo.ding.processor.instance.InstanceChangeExchangeProcessor;
|
import com.evo.ding.processor.instance.InstanceChangeExchangeProcessor;
|
||||||
import com.evo.personnelMatters.domain.RzMealExpenses;
|
import com.evo.personnelMatters.domain.RzMealExpenses;
|
||||||
|
import com.evo.personnelMatters.domain.RzMealExpensesDetail;
|
||||||
|
import com.evo.personnelMatters.service.RzMealExpensesDetailService;
|
||||||
import com.evo.personnelMatters.service.RzMealExpensesService;
|
import com.evo.personnelMatters.service.RzMealExpensesService;
|
||||||
import com.evo.system.mapper.SysDictDataMapper;
|
import com.evo.system.mapper.SysDictDataMapper;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@ -38,6 +40,8 @@ public class InstanceChangeReceptionExchangeProcessor implements InstanceChangeE
|
|||||||
private SysDictDataMapper sysDictDataMapper; //数据字典
|
private SysDictDataMapper sysDictDataMapper; //数据字典
|
||||||
@Resource
|
@Resource
|
||||||
private RzMealExpensesService rzMealExpensesService;
|
private RzMealExpensesService rzMealExpensesService;
|
||||||
|
@Resource
|
||||||
|
RzMealExpensesDetailService rzMealExpensesDetailService;
|
||||||
@Override
|
@Override
|
||||||
public boolean accept(String processCode) {
|
public boolean accept(String processCode) {
|
||||||
return InstanceChangeExchangeProcessor.PROCESS_CODE_RECEPTION_CARD.equals(processCode);
|
return InstanceChangeExchangeProcessor.PROCESS_CODE_RECEPTION_CARD.equals(processCode);
|
||||||
@ -65,13 +69,17 @@ public class InstanceChangeReceptionExchangeProcessor implements InstanceChangeE
|
|||||||
BigDecimal unitPrice = DataUtils.DEFAULT_VALUE;
|
BigDecimal unitPrice = DataUtils.DEFAULT_VALUE;
|
||||||
//查询消费情况
|
//查询消费情况
|
||||||
Map<Long,String> dicMap = sysDictDataMapper.selectDictDataByType(Constants.SYS_RESTAUTANT).stream().collect(Collectors.toMap(SysDictData::getDictCode, SysDictData::getDictValue));
|
Map<Long,String> dicMap = sysDictDataMapper.selectDictDataByType(Constants.SYS_RESTAUTANT).stream().collect(Collectors.toMap(SysDictData::getDictCode, SysDictData::getDictValue));
|
||||||
|
RzMealExpensesDetail detail = new RzMealExpensesDetail();
|
||||||
|
detail.setType(3);
|
||||||
if("早餐".equals(diningType)){
|
if("早餐".equals(diningType)){
|
||||||
unitPrice = new BigDecimal(dicMap.get(Constants.zc_code));
|
unitPrice = new BigDecimal(dicMap.get(Constants.zc_code));
|
||||||
|
detail.setMealVoucherType("早餐");
|
||||||
}else if ("午餐".equals(diningType)){
|
}else if ("午餐".equals(diningType)){
|
||||||
unitPrice = new BigDecimal(dicMap.get(Constants.wc_code));
|
unitPrice = new BigDecimal(dicMap.get(Constants.wc_code));
|
||||||
|
detail.setMealVoucherType("午餐");
|
||||||
} else if ("晚餐".equals(diningType)) {
|
} else if ("晚餐".equals(diningType)) {
|
||||||
unitPrice = new BigDecimal(dicMap.get(Constants.wcc_code));
|
unitPrice = new BigDecimal(dicMap.get(Constants.wcc_code));
|
||||||
|
detail.setMealVoucherType("晚餐");
|
||||||
}
|
}
|
||||||
BigDecimal totalAmount = unitPrice.multiply(new BigDecimal(diningNum));
|
BigDecimal totalAmount = unitPrice.multiply(new BigDecimal(diningNum));
|
||||||
//预计月份
|
//预计月份
|
||||||
@ -82,16 +90,23 @@ public class InstanceChangeReceptionExchangeProcessor implements InstanceChangeE
|
|||||||
RzMealExpenses rzMealExpenses = new RzMealExpenses();
|
RzMealExpenses rzMealExpenses = new RzMealExpenses();
|
||||||
if(Collections.isNotEmpty(list)){
|
if(Collections.isNotEmpty(list)){
|
||||||
rzMealExpenses = list.get(0);
|
rzMealExpenses = list.get(0);
|
||||||
rzMealExpenses.setHospitalityFee(new BigDecimal(DataUtils.findDefaultValue(rzMealExpenses.getHospitalityFee(), 0d)).add(totalAmount).doubleValue());
|
// rzMealExpenses.setHospitalityFee(totalAmount.add(new BigDecimal(DataUtils.findDefaultValue(rzMealExpenses.getHospitalityFee(), 0d))).doubleValue());
|
||||||
rzMealExpensesService.updateRzMealExpenses(rzMealExpenses);
|
// rzMealExpensesService.updateById(rzMealExpenses);
|
||||||
}else {
|
}else {
|
||||||
rzMealExpenses = new RzMealExpenses();
|
rzMealExpenses = new RzMealExpenses();
|
||||||
rzMealExpenses.setYearMonthTime(month.substring(0, 7));
|
rzMealExpenses.setYearMonthTime(month.substring(0, 7));
|
||||||
rzMealExpenses.setWaterUnitPrice(ParamUtils.getWaterUnitPrice());
|
rzMealExpenses.setWaterUnitPrice(ParamUtils.getWaterUnitPrice());
|
||||||
rzMealExpenses.setElectricityUnitPrice(ParamUtils.getElectricityUnitPrice());
|
rzMealExpenses.setElectricityUnitPrice(ParamUtils.getElectricityUnitPrice());
|
||||||
rzMealExpenses.setHospitalityFee(totalAmount.doubleValue());
|
// rzMealExpenses.setHospitalityFee(totalAmount.doubleValue());
|
||||||
rzMealExpensesService.save(rzMealExpenses);
|
rzMealExpensesService.save(rzMealExpenses);
|
||||||
}
|
}
|
||||||
|
detail.setExpensesId(rzMealExpenses.getId());
|
||||||
|
detail.setNum(Integer.valueOf(diningNum));
|
||||||
|
detail.setUnitPrice(unitPrice.doubleValue());
|
||||||
|
detail.setTotalPrice(totalAmount.doubleValue());
|
||||||
|
detail.setCompanyName("YT"); //默认为河北伊特
|
||||||
|
rzMealExpensesDetailService.saveRzMealExpensesDetail(detail);
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("解析招待审批出现错误:错误信息为:{}", e.getMessage());
|
log.error("解析招待审批出现错误:错误信息为:{}", e.getMessage());
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
|||||||
@ -53,7 +53,7 @@ public interface RzSalaryDetailMapper extends BaseMapper<RzSalaryDetail>
|
|||||||
* @param staffId 工资详情主键
|
* @param staffId 工资详情主键
|
||||||
* @return 工资详情
|
* @return 工资详情
|
||||||
*/
|
*/
|
||||||
public RzSalaryDetail selectRzSalaryDetailByStaffId(Long staffId);
|
public RzSalaryDetail selectRzSalaryDetailByStaffId(@Param("staffId") Long staffId, @Param("month")Date month);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据月份查询工资详情列表
|
* 根据月份查询工资详情列表
|
||||||
|
|||||||
@ -227,13 +227,11 @@ public interface SalaryCalculationStrategyExchangeProcessor {
|
|||||||
|
|
||||||
default void calculation(SysStaff sysStaff, SysStaffDetail detail, RzSalaryDetail rzSalaryDetail, List<Map<String,Object>> salaryInfoMapList){
|
default void calculation(SysStaff sysStaff, SysStaffDetail detail, RzSalaryDetail rzSalaryDetail, List<Map<String,Object>> salaryInfoMapList){
|
||||||
RzSalaryDetailMapper rzSalaryDetailMapper = SpringUtils.getBean(RzSalaryDetailMapper.class);
|
RzSalaryDetailMapper rzSalaryDetailMapper = SpringUtils.getBean(RzSalaryDetailMapper.class);
|
||||||
SysStaffDetailMapper sysStaffDetailMapper = SpringUtils.getBean(SysStaffDetailMapper.class);
|
|
||||||
|
|
||||||
|
|
||||||
//获取统计月份
|
//获取统计月份
|
||||||
int curr_month = DateUtils.getMonth(rzSalaryDetail.getMonth());
|
int curr_month = DateUtils.getMonth(rzSalaryDetail.getMonth());
|
||||||
//获取工资统计月份,查询上个月的纳税公司 得到年度免征额
|
//获取工资统计月份,查询上个月的纳税公司 得到年度免征额
|
||||||
RzSalaryDetail old_rzSalary = rzSalaryDetailMapper.selectRzSalaryDetailByStaffId(rzSalaryDetail.getStaffId());
|
RzSalaryDetail old_rzSalary = rzSalaryDetailMapper.selectRzSalaryDetailByStaffId(rzSalaryDetail.getStaffId(),DateUtils.addMonths(rzSalaryDetail.getMonth(), -1));
|
||||||
BigDecimal annualExemptionAmount = new BigDecimal("5000.00");
|
BigDecimal annualExemptionAmount = new BigDecimal("5000.00");
|
||||||
//判断员工为 新入职,公司纳税主题改变,同一主题超一年的,同一主题不超一年但跨年的
|
//判断员工为 新入职,公司纳税主题改变,同一主题超一年的,同一主题不超一年但跨年的
|
||||||
if(StringUtils.isNull(old_rzSalary) || !old_rzSalary.getWbFlag().equals(sysStaff.getCompanyName()) || curr_month == 12){
|
if(StringUtils.isNull(old_rzSalary) || !old_rzSalary.getWbFlag().equals(sysStaff.getCompanyName()) || curr_month == 12){
|
||||||
|
|||||||
@ -250,9 +250,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
where id = #{id}
|
where id = #{id}
|
||||||
</update>
|
</update>
|
||||||
<!-- 根据员工ID查询员工上一次的交保险公司 -->
|
<!-- 根据员工ID查询员工上一次的交保险公司 -->
|
||||||
<select id="selectRzSalaryDetailByStaffId" parameterType="Long" resultMap="RzSalaryDetailResult">
|
<select id="selectRzSalaryDetailByStaffId" resultMap="RzSalaryDetailResult">
|
||||||
<include refid="selectRzSalaryDetailVo"/>
|
<include refid="selectRzSalaryDetailVo"/>
|
||||||
where del_flag = '0' and staff_id = #{staffId} order by month desc limit 1
|
where del_flag = '0' and staff_id = #{staffId} and DATE_FORMAT( month, '%Y%m' ) = DATE_FORMAT( #{month} , '%Y%m' ) order by month desc limit 1
|
||||||
</select>
|
</select>
|
||||||
<!-- 根据月份查询员工统计月的工资 -->
|
<!-- 根据月份查询员工统计月的工资 -->
|
||||||
<select id="selectRzSalaryDetailByMonth" resultMap="RzSalaryDetailResult">
|
<select id="selectRzSalaryDetailByMonth" resultMap="RzSalaryDetailResult">
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user