分标策划、招标计划bug修改
This commit is contained in:
@ -123,6 +123,7 @@ public class BusFormalitiesAreConsolidatedServiceImpl extends ServiceImpl<BusFor
|
||||
|
||||
list.add(busFormalitiesAreConsolidated);
|
||||
Long count = baseMapper.selectCount(new LambdaQueryWrapper<BusFormalitiesAreConsolidated>()
|
||||
.eq(BusFormalitiesAreConsolidated::getProjectId, bo.getProjectId())
|
||||
.eq(BusFormalitiesAreConsolidated::getFormalitiesId, formalities.getPid()));
|
||||
if (count == 0) {
|
||||
BusListOfFormalities formalities1 = busListOfFormalitiesService.getById(formalities.getPid());
|
||||
@ -143,8 +144,8 @@ public class BusFormalitiesAreConsolidatedServiceImpl extends ServiceImpl<BusFor
|
||||
private LambdaQueryWrapper<BusFormalitiesAreConsolidated> buildQueryWrapper(BusFormalitiesAreConsolidatedBo bo) {
|
||||
Map<String, Object> params = bo.getParams();
|
||||
LambdaQueryWrapper<BusFormalitiesAreConsolidated> lqw = Wrappers.lambdaQuery();
|
||||
lqw.orderByAsc(BusFormalitiesAreConsolidated::getCreatePTime);
|
||||
lqw.orderByAsc(BusFormalitiesAreConsolidated::getCreateTime);
|
||||
lqw.orderByDesc(BusFormalitiesAreConsolidated::getCreatePTime);
|
||||
lqw.orderByDesc(BusFormalitiesAreConsolidated::getCreateTime);
|
||||
lqw.eq(bo.getProjectId() != null, BusFormalitiesAreConsolidated::getProjectId, bo.getProjectId());
|
||||
lqw.eq(bo.getFormalitiesPid() != null, BusFormalitiesAreConsolidated::getFormalitiesPid, bo.getFormalitiesPid());
|
||||
lqw.eq(bo.getFormalitiesId() != null, BusFormalitiesAreConsolidated::getFormalitiesId, bo.getFormalitiesId());
|
||||
@ -191,15 +192,20 @@ public class BusFormalitiesAreConsolidatedServiceImpl extends ServiceImpl<BusFor
|
||||
});
|
||||
//生成父模板id的合规性手续合账数据
|
||||
for (Long id : ids) {
|
||||
BusListOfFormalities formalities = busListOfFormalitiesService.getById(id);
|
||||
if (formalities != null) {
|
||||
BusFormalitiesAreConsolidated busFormalitiesAreConsolidated = new BusFormalitiesAreConsolidated();
|
||||
busFormalitiesAreConsolidated.setFormalitiesId(id);
|
||||
busFormalitiesAreConsolidated.setFormalitiesName(formalities.getName());
|
||||
busFormalitiesAreConsolidated.setProjectId(bo.getProjectId());
|
||||
busFormalitiesAreConsolidated.setStatus(1);
|
||||
busFormalitiesAreConsolidated.setCreatePTime(formalities.getCreateTime());
|
||||
list.add(busFormalitiesAreConsolidated);
|
||||
Long count = baseMapper.selectCount(new LambdaQueryWrapper<BusFormalitiesAreConsolidated>()
|
||||
.eq(BusFormalitiesAreConsolidated::getProjectId, bo.getProjectId())
|
||||
.eq(BusFormalitiesAreConsolidated::getFormalitiesId, id));
|
||||
if (count == 0) {
|
||||
BusListOfFormalities formalities = busListOfFormalitiesService.getById(id);
|
||||
if (formalities != null) {
|
||||
BusFormalitiesAreConsolidated busFormalitiesAreConsolidated = new BusFormalitiesAreConsolidated();
|
||||
busFormalitiesAreConsolidated.setFormalitiesId(id);
|
||||
busFormalitiesAreConsolidated.setFormalitiesName(formalities.getName());
|
||||
busFormalitiesAreConsolidated.setProjectId(bo.getProjectId());
|
||||
busFormalitiesAreConsolidated.setStatus(1);
|
||||
busFormalitiesAreConsolidated.setCreatePTime(formalities.getCreateTime());
|
||||
list.add(busFormalitiesAreConsolidated);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -104,6 +104,11 @@ public class BusBillofquantitiesLimitListVo implements Serializable {
|
||||
@ExcelProperty(value = "数量")
|
||||
private BigDecimal quantity;
|
||||
|
||||
/**
|
||||
* 使用数量
|
||||
*/
|
||||
private BigDecimal useQuantity;
|
||||
|
||||
/**
|
||||
* 单价
|
||||
*/
|
||||
|
@ -2,6 +2,7 @@ package org.dromara.tender.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.dromara.tender.domain.BusBillofquantitiesLimitList;
|
||||
import org.dromara.tender.domain.bo.BusBillofquantitiesLimitListBo;
|
||||
import org.dromara.tender.domain.vo.BusBillofquantitiesLimitListVo;
|
||||
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
|
||||
|
||||
@ -21,4 +22,8 @@ public interface BusBillofquantitiesLimitListMapper extends BaseMapperPlus<BusBi
|
||||
|
||||
//批量修改允许字段为空
|
||||
Boolean updateBatchByIdByNull(@Param("list") List<BusBillofquantitiesLimitList> list);
|
||||
|
||||
List<BusBillofquantitiesLimitListVo> selectByBo(@Param("bo") BusBillofquantitiesLimitListBo bo);
|
||||
|
||||
List<BusBillofquantitiesLimitListVo> selectByBoByType(@Param("bo") BusBillofquantitiesLimitListBo bo);
|
||||
}
|
||||
|
@ -185,7 +185,13 @@ public class BusBillofquantitiesLimitListServiceImpl extends ServiceImpl<BusBill
|
||||
@Override
|
||||
public List<BusBillofquantitiesLimitListVo> getTree(BusBillofquantitiesLimitListBo bo) {
|
||||
//获取所有数据
|
||||
List<BusBillofquantitiesLimitListVo> listVoList = queryList(bo);
|
||||
List<BusBillofquantitiesLimitListVo> listVoList = new ArrayList<>();
|
||||
if (bo.getType().equals(LimitListTypeEnum.COMPANY.getCode())){
|
||||
listVoList = baseMapper.selectByBoByType(bo);
|
||||
}else {
|
||||
|
||||
listVoList = baseMapper.selectByBo(bo);
|
||||
}
|
||||
//过滤数量和单价为空的数据并计算总价
|
||||
listVoList.stream().filter(vo -> vo.getUnitPrice() != null && vo.getUnitPrice().compareTo(BigDecimal.ZERO) != 0)
|
||||
.filter(vo -> vo.getQuantity() != null && vo.getQuantity().compareTo(BigDecimal.ZERO) != 0)
|
||||
|
@ -80,4 +80,78 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
from parent
|
||||
ORDER BY level, sid
|
||||
</select>
|
||||
<select id="selectByBo" resultType="org.dromara.tender.domain.vo.BusBillofquantitiesLimitListVo">
|
||||
SELECT
|
||||
bbll.id as id,
|
||||
bbll.project_id as projectId,
|
||||
bbll.versions as versions,
|
||||
bbll.sheet as sheet,
|
||||
bbll.sid as sid,
|
||||
bbll.pid as pid,
|
||||
bbll.num as num,
|
||||
bbll.name as name,
|
||||
bbll.specification as specification,
|
||||
bbll.unit as unit,
|
||||
bbll.quantity as quantity,
|
||||
bbll.unit_price as unitPrice,
|
||||
bbll.remark as remark,
|
||||
SUM(btpll.num) AS useQuantity
|
||||
FROM
|
||||
bus_billofquantities_limit_list bbll
|
||||
LEFT JOIN bus_tender_planning_limit_list btpll ON bbll.id = btpll.limit_list_id
|
||||
<where>
|
||||
<!-- 动态添加 WHERE 条件 -->
|
||||
<if test="bo.projectId != null">
|
||||
AND bbll.project_id = #{bo.projectId}
|
||||
</if>
|
||||
<if test="bo.type != null and bo.type != ''">
|
||||
AND bbll.type = #{bo.type}
|
||||
</if>
|
||||
<if test="bo.versions != null and bo.versions != ''">
|
||||
AND bbll.versions = #{bo.versions}
|
||||
</if>
|
||||
<if test="bo.sheet != null and bo.sheet != ''">
|
||||
AND bbll.sheet = #{bo.sheet}
|
||||
</if>
|
||||
</where>
|
||||
GROUP BY bbll.id
|
||||
ORDER BY bbll.sid ASC
|
||||
</select>
|
||||
<select id="selectByBoByType" resultType="org.dromara.tender.domain.vo.BusBillofquantitiesLimitListVo">
|
||||
SELECT
|
||||
bbll.id as id,
|
||||
bbll.project_id as projectId,
|
||||
bbll.versions as versions,
|
||||
bbll.sheet as sheet,
|
||||
bbll.sid as sid,
|
||||
bbll.pid as pid,
|
||||
bbll.num as num,
|
||||
bbll.name as name,
|
||||
bbll.specification as specification,
|
||||
bbll.unit as unit,
|
||||
bbll.quantity as quantity,
|
||||
bbll.unit_price as unitPrice,
|
||||
bbll.remark as remark,
|
||||
SUM(btpll.num) AS useQuantity
|
||||
FROM
|
||||
bus_billofquantities_limit_list bbll
|
||||
LEFT JOIN bus_indicator_planning_limit_list btpll ON bbll.id = btpll.limit_list_id
|
||||
<where>
|
||||
<!-- 动态添加 WHERE 条件 -->
|
||||
<if test="bo.projectId != null">
|
||||
AND bbll.project_id = #{bo.projectId}
|
||||
</if>
|
||||
<if test="bo.type != null and bo.type != ''">
|
||||
AND bbll.type = #{bo.type}
|
||||
</if>
|
||||
<if test="bo.versions != null and bo.versions != ''">
|
||||
AND bbll.versions = #{bo.versions}
|
||||
</if>
|
||||
<if test="bo.sheet != null and bo.sheet != ''">
|
||||
AND bbll.sheet = #{bo.sheet}
|
||||
</if>
|
||||
</where>
|
||||
GROUP BY bbll.id
|
||||
ORDER BY bbll.sid ASC
|
||||
</select>
|
||||
</mapper>
|
||||
|
Reference in New Issue
Block a user