Commit b6ed6281 authored by Fuzy's avatar Fuzy

添加调取用友配置类及修改工资清洗接口

parent f5098947
......@@ -23,12 +23,13 @@ public class WagesConversionController extends BaseController {
public Logger logger = LoggerFactory.getLogger(WagesConversionController.class);
private WagesConversionService wagesConversionService;
private WagesConversionController(WagesConversionService wagesConversionService) {
this.wagesConversionService = wagesConversionService;
}
@PostMapping("/save")
public AjaxResult save(@RequestBody WagesConversionDataVO wagesConversionDataVO) {
wagesConversionService.save(wagesConversionDataVO);
return new AjaxResult(200, "成功");
}
......@@ -53,4 +54,9 @@ public class WagesConversionController extends BaseController {
public AjaxResult getWagesDataById(@PathVariable("id") int id) {
return new AjaxResult(200, "成功", wagesConversionService.selectWagesConversionDataById(id));
}
@RequestMapping("/recentFormulas")
public AjaxResult recentFormulas(){
return new AjaxResult(200, "成功", wagesConversionService.recentFormulas());
}
}
package com.ruoyi.system.mapper;
import com.ruoyi.system.model.wages.dao.WagesConversionData;
import com.ruoyi.system.model.wages.vo.WagesConversionDataVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
......@@ -11,11 +12,15 @@ import java.util.List;
*/
@Repository
public interface WagesConversionMapper {
void save(@Param("jsonData") String jsonData , @Param("yearMonth") String yearMonth);
void save(@Param("jsonData") String jsonData , @Param("yearMonth") String yearMonth, @Param("value") String value);
List<WagesConversionData> selectWagesConversionDataList();
void update(@Param("id")int id, @Param("jsonData") String jsonData);
WagesConversionData selectWagesConversionDataById(int id);
void deleteFromConversionToDate(@Param("date") String yearMonth);
List<WagesConversionDataVO> selectWagesValueAndDate();
}
......@@ -10,6 +10,16 @@ public class WagesConversionDataVO {
private String yearMonth;
private String value;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public String getJsonData() {
return jsonData;
}
......
......@@ -17,4 +17,6 @@ public interface WagesConversionService {
void update(WagesConversionData wagesConversionData);
WagesConversionData selectWagesConversionDataById(int id);
Object recentFormulas();
}
......@@ -7,7 +7,10 @@ import com.ruoyi.system.model.wages.vo.WagesConversionDataVO;
import com.ruoyi.system.service.WagesConversionService;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* 2024/5/11
......@@ -20,7 +23,8 @@ public class WagesConversionServiceImpl implements WagesConversionService {
}
@Override
public void save(WagesConversionDataVO wagesConversionDataVO) {
wagesConversionMapper.save(wagesConversionDataVO.getJsonData(),wagesConversionDataVO.getYearMonth());
wagesConversionMapper.deleteFromConversionToDate(wagesConversionDataVO.getYearMonth());
wagesConversionMapper.save(wagesConversionDataVO.getJsonData(),wagesConversionDataVO.getYearMonth(),wagesConversionDataVO.getValue());
}
@Override
......@@ -40,4 +44,23 @@ public class WagesConversionServiceImpl implements WagesConversionService {
return wagesConversionMapper.selectWagesConversionDataById(id);
}
@Override
public Object recentFormulas() {
List<WagesConversionDataVO> list = wagesConversionMapper.selectWagesValueAndDate();
list.removeAll(Collections.singleton(null));
boolean b1 = list.parallelStream().anyMatch(v -> v.getYearMonth() == null || v.getYearMonth().indexOf("-") <= 0);
if (b1) return "数据库中数据存在日期错误";
Optional<Integer> max = list.parallelStream().map(v -> Integer.parseInt(v.getYearMonth().split("-")[0])).max((a, b) -> a - b);
List<WagesConversionDataVO> collect = null;
if (max.isPresent()){
collect = list.parallelStream().filter(v -> v.getYearMonth().split("-")[0].equals(max.get() + "")).collect(Collectors.toList());
}else {
return "数据库中没有数据";
}
if (collect != null){
collect = collect.parallelStream().sorted((a, b) -> Integer.parseInt(b.getYearMonth().split("-")[1]) - Integer.parseInt(a.getYearMonth().split("-")[1])).collect(Collectors.toList());
}
return collect.get(0).getValue();
}
}
......@@ -14,22 +14,30 @@
</resultMap>
<insert id="save">
insert into wages_conversion_data (json_data, if_generate_voucher, wage_month)
values (#{jsonData}, 0, #{yearMonth})
insert into wages_conversion_data (json_data, if_generate_voucher, wage_month, value)
values (#{jsonData}, 0, #{yearMonth}, #{value})
</insert>
<delete id="deleteFromConversionToDate">
delete
from wages_conversion_data
where wage_month = #{date};
</delete>
<select id="selectWagesConversionDataList" resultMap="WagesConversionData">
select id, if_generate_voucher , wage_month ,create_date , update_date
select id, if_generate_voucher, wage_month, create_date, update_date
from wages_conversion_data
where
if_generate_voucher = 0
where if_generate_voucher = 0
</select>
<select id="selectWagesConversionDataById" parameterType="integer"
resultMap="WagesConversionData">
select id , json_data, if_generate_voucher , wage_month ,create_date , update_date
select id, json_data, if_generate_voucher, wage_month, create_date, update_date
from wages_conversion_data
where id = #{id}
</select>
<select id="selectWagesValueAndDate" resultType="com.ruoyi.system.model.wages.vo.WagesConversionDataVO">
select wage_month as yearMonth, value as value
from wages_conversion_data;
</select>
<update id="update">
update wages_conversion_data
......
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