|
|
@ -1,6 +1,7 @@ |
|
|
package com.hxhq.business.service.impl; |
|
|
package com.hxhq.business.service.impl; |
|
|
|
|
|
|
|
|
import java.math.BigDecimal; |
|
|
import java.math.BigDecimal; |
|
|
|
|
|
import java.text.DecimalFormat; |
|
|
import java.util.*; |
|
|
import java.util.*; |
|
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
@ -56,13 +57,7 @@ public class GspFfjlServiceImpl extends ServiceImpl impl |
|
|
@Autowired |
|
|
@Autowired |
|
|
private IStudyGspService studyGspService; |
|
|
private IStudyGspService studyGspService; |
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 查询供试品发放记录列表 |
|
|
|
|
|
* @return 供试品发放记录 |
|
|
|
|
|
*/ |
|
|
|
|
|
@Override |
|
|
|
|
|
public List<GspFfjlListDto> queryList(GspSearchListForm form) |
|
|
|
|
|
{ |
|
|
|
|
|
|
|
|
public QueryWrapper<GspFfjl> getListCondition(GspSearchListForm form) { |
|
|
QueryWrapper<GspFfjl> queryWrapper = Wrappers.query(); |
|
|
QueryWrapper<GspFfjl> queryWrapper = Wrappers.query(); |
|
|
queryWrapper.eq("t.del_flag", "0"); |
|
|
queryWrapper.eq("t.del_flag", "0"); |
|
|
if (form.getJyzt() != null && form.getJyzt().intValue() > 0) { |
|
|
if (form.getJyzt() != null && form.getJyzt().intValue() > 0) { |
|
|
@ -94,6 +89,17 @@ public class GspFfjlServiceImpl extends ServiceImpl impl |
|
|
.or().apply(" exists(select s.* from t_study s where find_in_set(s.id, t.`md_ids`) and s.name like CONCAT('%', {0}, '%'))",form.getMd()) |
|
|
.or().apply(" exists(select s.* from t_study s where find_in_set(s.id, t.`md_ids`) and s.name like CONCAT('%', {0}, '%'))",form.getMd()) |
|
|
); |
|
|
); |
|
|
} |
|
|
} |
|
|
|
|
|
return queryWrapper; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
* 查询供试品发放记录列表 |
|
|
|
|
|
* @return 供试品发放记录 |
|
|
|
|
|
*/ |
|
|
|
|
|
@Override |
|
|
|
|
|
public List<GspFfjlListDto> queryList(GspSearchListForm form) |
|
|
|
|
|
{ |
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper = getListCondition(form); |
|
|
queryWrapper.orderByDesc("t.id"); |
|
|
queryWrapper.orderByDesc("t.id"); |
|
|
return baseMapper.queryList(queryWrapper); |
|
|
return baseMapper.queryList(queryWrapper); |
|
|
} |
|
|
} |
|
|
@ -200,7 +206,7 @@ public class GspFfjlServiceImpl extends ServiceImpl impl |
|
|
gspFfjl.setGhzytj(form.getGhzytj()); |
|
|
gspFfjl.setGhzytj(form.getGhzytj()); |
|
|
// 入库量 |
|
|
// 入库量 |
|
|
gspFfjl.setRkl(form.getRkl()); |
|
|
gspFfjl.setRkl(form.getRkl()); |
|
|
gspFfjl.setRkldw(form.getRkldw()); |
|
|
|
|
|
|
|
|
gspFfjl.setRkldw(gspFfjl.getCkldw()); |
|
|
// 转换为基础单位的 入库量 |
|
|
// 转换为基础单位的 入库量 |
|
|
BigDecimal basicRkl = UnitTools.convert2Basic(form.getRkl(), form.getRkldw()); |
|
|
BigDecimal basicRkl = UnitTools.convert2Basic(form.getRkl(), form.getRkldw()); |
|
|
gspFfjl.setBasicRkl(basicRkl); |
|
|
gspFfjl.setBasicRkl(basicRkl); |
|
|
@ -865,41 +871,27 @@ public class GspFfjlServiceImpl extends ServiceImpl impl |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public Map<String, String> getStatisticsUnit(GspSearchListForm form) { |
|
|
public Map<String, String> getStatisticsUnit(GspSearchListForm form) { |
|
|
QueryWrapper<GspFfjl> queryWrapper = Wrappers.query(); |
|
|
|
|
|
queryWrapper.eq("del_flag", "0"); |
|
|
|
|
|
if (form.getJyzt() != null && form.getJyzt().intValue() > 0) { |
|
|
|
|
|
queryWrapper.eq("jyzt", form.getJyzt()); |
|
|
|
|
|
} |
|
|
|
|
|
if (form.getJlzt() != null && form.getJlzt().intValue() > 0) { |
|
|
|
|
|
queryWrapper.eq("jlzt", form.getJlzt()); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getMc())) { |
|
|
|
|
|
queryWrapper.and(p -> p.like("`mc`", form.getMc())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getBh())) { |
|
|
|
|
|
queryWrapper.and(p -> p.like("`bh`", form.getBh())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getStartDateCk())) { |
|
|
|
|
|
queryWrapper.and(p -> p.apply("ffrq>={0}", form.getStartDateCk())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getEndDateCk())) { |
|
|
|
|
|
queryWrapper.apply("ffrq>={0}", form.getStartDateCk()); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getStartDateRk())) { |
|
|
|
|
|
queryWrapper.and(p -> p.apply("ghrq>={0}", form.getStartDateRk())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getEndDateRk())) { |
|
|
|
|
|
queryWrapper.apply("ghrq>={0}", form.getEndDateRk()); |
|
|
|
|
|
} |
|
|
|
|
|
return baseMapper.getStatisticsUnit(queryWrapper); |
|
|
|
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper1 = getListCondition(form); |
|
|
|
|
|
queryWrapper1.isNotNull("ckldw") |
|
|
|
|
|
.ne("ckldw", ""); |
|
|
|
|
|
|
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper2 = getListCondition(form); |
|
|
|
|
|
queryWrapper2.isNotNull("syldw") |
|
|
|
|
|
.ne("syldw", ""); |
|
|
|
|
|
|
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper3 = getListCondition(form); |
|
|
|
|
|
queryWrapper3.isNotNull("rkldw") |
|
|
|
|
|
.ne("rkldw", ""); |
|
|
|
|
|
|
|
|
|
|
|
return baseMapper.getStatisticsUnit(queryWrapper1, queryWrapper2, queryWrapper3); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public Map<String, String> getStatistics(GspSearchListForm form) { |
|
|
public Map<String, String> getStatistics(GspSearchListForm form) { |
|
|
Map<String, String> result = new HashMap<>(); |
|
|
Map<String, String> result = new HashMap<>(); |
|
|
result.put("ckl", "0"); |
|
|
|
|
|
result.put("rkl", "0"); |
|
|
|
|
|
result.put("syl", "0"); |
|
|
|
|
|
|
|
|
result.put("ckl", ""); |
|
|
|
|
|
result.put("rkl", ""); |
|
|
|
|
|
result.put("syl", ""); |
|
|
|
|
|
|
|
|
Map<String, String> unitMap = getStatisticsUnit(form); |
|
|
Map<String, String> unitMap = getStatisticsUnit(form); |
|
|
if(unitMap == null || unitMap.size() == 0) { |
|
|
if(unitMap == null || unitMap.size() == 0) { |
|
|
@ -909,50 +901,61 @@ public class GspFfjlServiceImpl extends ServiceImpl impl |
|
|
String syldw = unitMap.get("syldw"); |
|
|
String syldw = unitMap.get("syldw"); |
|
|
String rkldw = unitMap.get("rkldw"); |
|
|
String rkldw = unitMap.get("rkldw"); |
|
|
|
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper = Wrappers.query(); |
|
|
|
|
|
queryWrapper.eq("del_flag", 0); |
|
|
|
|
|
if (form.getJyzt() != null && form.getJyzt().intValue() > 0) { |
|
|
|
|
|
queryWrapper.eq("jyzt", form.getJyzt()); |
|
|
|
|
|
} |
|
|
|
|
|
if (form.getJlzt() != null && form.getJlzt().intValue() > 0) { |
|
|
|
|
|
queryWrapper.eq("jlzt", form.getJlzt()); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getMc())) { |
|
|
|
|
|
queryWrapper.and(p -> p.like("`mc`", form.getMc())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getBh())) { |
|
|
|
|
|
queryWrapper.and(p -> p.like("`bh`", form.getBh())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getStartDateCk())) { |
|
|
|
|
|
queryWrapper.and(p -> p.apply("ffrq>={0}", form.getStartDateCk())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getEndDateCk())) { |
|
|
|
|
|
queryWrapper.apply("ffrq>={0}", form.getStartDateCk()); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getStartDateRk())) { |
|
|
|
|
|
queryWrapper.and(p -> p.apply("ghrq>={0}", form.getStartDateRk())); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNoneBlank(form.getEndDateRk())) { |
|
|
|
|
|
queryWrapper.apply("ghrq>={0}", form.getEndDateRk()); |
|
|
|
|
|
} |
|
|
|
|
|
Map<String, Double> map = baseMapper.getStatistics(queryWrapper, rkldw, ckldw, syldw); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(StringUtils.isNotEmpty(rkldw)) { |
|
|
if(StringUtils.isNotEmpty(rkldw)) { |
|
|
Double rkl = map.get("rkl"); |
|
|
|
|
|
BigDecimal rklTotal = UnitTools.convert(new BigDecimal(rkl), rkldw); |
|
|
|
|
|
result.put("rkl", rklTotal.toString() + rkldw); |
|
|
|
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper = getListCondition(form); |
|
|
|
|
|
if (Arrays.asList(UnitTools.VOLUME_UNIT_LIST).contains(rkldw)) { |
|
|
|
|
|
queryWrapper.in("rkldw", UnitTools.VOLUME_UNIT_LIST); |
|
|
|
|
|
} else if (Arrays.asList(UnitTools.WEIGHT_UNIT_LIST).contains(rkldw)) { |
|
|
|
|
|
queryWrapper.in("rkldw", UnitTools.WEIGHT_UNIT_LIST); |
|
|
|
|
|
} else { |
|
|
|
|
|
queryWrapper.eq("rkldw", rkldw); |
|
|
|
|
|
} |
|
|
|
|
|
BigDecimal rkl = baseMapper.sumRkl(queryWrapper); |
|
|
|
|
|
if(rkl != null) { |
|
|
|
|
|
rkl = UnitTools.convert(rkl, rkldw); |
|
|
|
|
|
DecimalFormat decimalFormat = new DecimalFormat("#,###.##"); // 定义格式 |
|
|
|
|
|
String formatted = decimalFormat.format(rkl); |
|
|
|
|
|
result.put("rkl", formatted + rkldw); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if(StringUtils.isNotEmpty(ckldw)) { |
|
|
if(StringUtils.isNotEmpty(ckldw)) { |
|
|
Double ckl = map.get("ckl"); |
|
|
|
|
|
BigDecimal cklTotal = UnitTools.convert(new BigDecimal(ckl), ckldw); |
|
|
|
|
|
result.put("ckl", cklTotal.toString() + ckldw); |
|
|
|
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper = getListCondition(form); |
|
|
|
|
|
if (Arrays.asList(UnitTools.VOLUME_UNIT_LIST).contains(ckldw)) { |
|
|
|
|
|
queryWrapper.in("ckldw", UnitTools.VOLUME_UNIT_LIST); |
|
|
|
|
|
} else if (Arrays.asList(UnitTools.WEIGHT_UNIT_LIST).contains(ckldw)) { |
|
|
|
|
|
queryWrapper.in("ckldw", UnitTools.WEIGHT_UNIT_LIST); |
|
|
|
|
|
} else { |
|
|
|
|
|
queryWrapper.eq("ckldw", ckldw); |
|
|
|
|
|
} |
|
|
|
|
|
BigDecimal ckl = baseMapper.sumCkl(queryWrapper); |
|
|
|
|
|
if(ckl != null) { |
|
|
|
|
|
ckl = UnitTools.convert(ckl, ckldw); |
|
|
|
|
|
DecimalFormat decimalFormat = new DecimalFormat("#,###.##"); // 定义格式 |
|
|
|
|
|
String formatted = decimalFormat.format(ckl); |
|
|
|
|
|
result.put("ckl", formatted + ckldw); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
if(StringUtils.isNotEmpty(syldw)) { |
|
|
if(StringUtils.isNotEmpty(syldw)) { |
|
|
Double syl = map.get("syl"); |
|
|
|
|
|
BigDecimal sylTotal = UnitTools.convert(new BigDecimal(syl), syldw); |
|
|
|
|
|
result.put("syl", sylTotal.toString() + syldw); |
|
|
|
|
|
|
|
|
QueryWrapper<GspFfjl> queryWrapper = getListCondition(form); |
|
|
|
|
|
if (Arrays.asList(UnitTools.VOLUME_UNIT_LIST).contains(syldw)) { |
|
|
|
|
|
queryWrapper.in("syldw", UnitTools.VOLUME_UNIT_LIST); |
|
|
|
|
|
} else if (Arrays.asList(UnitTools.WEIGHT_UNIT_LIST).contains(syldw)) { |
|
|
|
|
|
queryWrapper.in("syldw", UnitTools.WEIGHT_UNIT_LIST); |
|
|
|
|
|
} else { |
|
|
|
|
|
queryWrapper.eq("syldw", syldw); |
|
|
|
|
|
} |
|
|
|
|
|
BigDecimal syl = baseMapper.sumSyl(queryWrapper); |
|
|
|
|
|
if(syl != null) { |
|
|
|
|
|
syl = UnitTools.convert(syl, syldw); |
|
|
|
|
|
DecimalFormat decimalFormat = new DecimalFormat("#,###.##"); // 定义格式 |
|
|
|
|
|
String formatted = decimalFormat.format(syl); |
|
|
|
|
|
result.put("syl", formatted + syldw); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|