完成库存111
This commit is contained in:
@ -127,7 +127,7 @@ public class BusCailiaoshebeiController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设计-删除物资-材料设备1
|
* 设计-删除物资-材料设备
|
||||||
*
|
*
|
||||||
* @param ids 主键串
|
* @param ids 主键串
|
||||||
*/
|
*/
|
||||||
@ -139,6 +139,19 @@ public class BusCailiaoshebeiController extends BaseController {
|
|||||||
return toAjax(busCailiaoshebeiService.deleteWithValidByIds(List.of(ids), true));
|
return toAjax(busCailiaoshebeiService.deleteWithValidByIds(List.of(ids), true));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设计-提交审批按钮
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("cailiaoshebei:cailiaoshebei:SubmitForApprovalButton")
|
||||||
|
@Log(title = "设计-提交审批按钮", businessType = BusinessType.DELETE)
|
||||||
|
@PostMapping("/SubmitForApprovalButton")
|
||||||
|
public R<Void> submitForApprovalButton() {
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// /**
|
// /**
|
||||||
// * 导出物资-材料设备列表
|
// * 导出物资-材料设备列表
|
||||||
// */
|
// */
|
||||||
|
@ -4,6 +4,8 @@ import org.dromara.common.mybatis.core.domain.BaseEntity;
|
|||||||
import com.baomidou.mybatisplus.annotation.*;
|
import com.baomidou.mybatisplus.annotation.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
|
||||||
@ -77,12 +79,12 @@ public class BusCailiaoshebei extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 计划到场时间
|
* 计划到场时间
|
||||||
*/
|
*/
|
||||||
private Date arrivalTime;
|
private LocalDate arrivalTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计划完成时间
|
* 计划完成时间
|
||||||
*/
|
*/
|
||||||
private Date finishTime;
|
private LocalDate finishTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计量单位
|
* 计量单位
|
||||||
|
@ -41,7 +41,7 @@ public class BusSuppliesprice extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 数量
|
* 数量
|
||||||
*/
|
*/
|
||||||
private int number;
|
private int num;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 合同号
|
* 合同号
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package org.dromara.cailiaoshebei.domain.bo;
|
package org.dromara.cailiaoshebei.domain.bo;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import io.github.linpeilie.annotations.AutoMapper;
|
import io.github.linpeilie.annotations.AutoMapper;
|
||||||
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
@ -13,6 +14,7 @@ import org.dromara.common.core.validate.AddGroup;
|
|||||||
import org.dromara.common.core.validate.EditGroup;
|
import org.dromara.common.core.validate.EditGroup;
|
||||||
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
import org.dromara.common.mybatis.core.domain.BaseEntity;
|
||||||
|
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -36,17 +38,18 @@ public class BusCailiaoshebeiEditPlanReq extends BaseEntity {
|
|||||||
* 计划到场时间
|
* 计划到场时间
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "计划到场时间", groups = { EditGroup.class })
|
@NotNull(message = "计划到场时间", groups = { EditGroup.class })
|
||||||
private Date arrivalTime;
|
private LocalDate arrivalTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计划完成时间
|
* 计划完成时间
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "计划完成时间", groups = { EditGroup.class })
|
@NotNull(message = "计划完成时间", groups = { EditGroup.class })
|
||||||
private Date finishTime;
|
private LocalDate finishTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 物资清单列表
|
* 物资清单列表
|
||||||
*/
|
*/
|
||||||
|
@Size(min = 1, message = "物资清单列表不能为空", groups = { EditGroup.class })
|
||||||
private List<BusCailiaoshebeiEditPlanDto> listOfMaterialInventory;
|
private List<BusCailiaoshebeiEditPlanDto> listOfMaterialInventory;
|
||||||
|
|
||||||
|
|
||||||
|
@ -32,13 +32,12 @@ public class BusCailiaoshebeiEditReq extends BaseEntity {
|
|||||||
* 供货商ID (必填)
|
* 供货商ID (必填)
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "供货商ID不能为空", groups = { AddGroup.class })
|
@NotNull(message = "供货商ID不能为空", groups = { AddGroup.class })
|
||||||
private Long supplierId;
|
private String supplierId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 供货商 (必填)
|
* 供货商 (必填)
|
||||||
*/
|
*/
|
||||||
@NotBlank(message = "供货商不能为空", groups = { AddGroup.class })
|
@NotBlank(message = "供货商不能为空", groups = { AddGroup.class })
|
||||||
@Size(max = 64, message = "供货商名称长度不能超过64个字符", groups = {AddGroup.class, EditGroup.class})
|
|
||||||
private String supplier;
|
private String supplier;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -8,6 +8,11 @@ import java.io.Serializable;
|
|||||||
* @Version 1.0
|
* @Version 1.0
|
||||||
*/
|
*/
|
||||||
public class BusCailiaoshebeiEditPlanDto implements Serializable {
|
public class BusCailiaoshebeiEditPlanDto implements Serializable {
|
||||||
|
/**
|
||||||
|
* 材料设备ID
|
||||||
|
*/
|
||||||
|
private Long cailiaoshebeiId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 单价
|
* 单价
|
||||||
*/
|
*/
|
||||||
|
@ -8,6 +8,7 @@ import org.dromara.common.excel.annotation.ExcelDictFormat;
|
|||||||
import org.dromara.common.excel.convert.ExcelDictConvert;
|
import org.dromara.common.excel.convert.ExcelDictConvert;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -80,13 +81,13 @@ public class BusSuppliespriceAddPlanSonRes implements Serializable {
|
|||||||
* 计划到场时间
|
* 计划到场时间
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "计划到场时间")
|
@ExcelProperty(value = "计划到场时间")
|
||||||
private Date arrivalTime;
|
private LocalDate arrivalTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计划完成时间
|
* 计划完成时间
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "计划完成时间")
|
@ExcelProperty(value = "计划完成时间")
|
||||||
private Date finishTime;
|
private LocalDate finishTime;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计量单位
|
* 计量单位
|
||||||
|
@ -20,6 +20,7 @@ public interface BusMaterialsorderMapper extends BaseMapperPlus<BusMaterialsorde
|
|||||||
List<GrossOutputRes> grossOutput(
|
List<GrossOutputRes> grossOutput(
|
||||||
@Param("projectId") Long projectId,
|
@Param("projectId") Long projectId,
|
||||||
@Param("statusArr") String[] statusArr,
|
@Param("statusArr") String[] statusArr,
|
||||||
@Param("yue") String yue);
|
@Param("startYue") String startYue,
|
||||||
|
@Param("endYue") String endYue);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -93,5 +93,5 @@ public interface IBusMaterialsorderService extends IService<BusMaterialsorder>{
|
|||||||
* @param yue 年月查询,不必填
|
* @param yue 年月查询,不必填
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
BigDecimal grossOutput(Long projectId,String yue);
|
BigDecimal grossOutput(Long projectId, String startYue, String endYue);
|
||||||
}
|
}
|
||||||
|
@ -188,7 +188,7 @@ public class BusCailiaoshebeiServiceImpl extends ServiceImpl<BusCailiaoshebeiMap
|
|||||||
AtomicInteger num = new AtomicInteger();
|
AtomicInteger num = new AtomicInteger();
|
||||||
list.forEach(
|
list.forEach(
|
||||||
busSuppliesprice -> {
|
busSuppliesprice -> {
|
||||||
num.addAndGet(busSuppliesprice.getNumber());
|
num.addAndGet(busSuppliesprice.getNum());
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
res.setRealQuantity(num.get());
|
res.setRealQuantity(num.get());
|
||||||
|
@ -230,19 +230,24 @@ public class BusMaterialsorderServiceImpl extends ServiceImpl<BusMaterialsorderM
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BigDecimal grossOutput(Long projectId, String yue) {
|
public BigDecimal grossOutput(Long projectId, String startYue, String endYue) {
|
||||||
//项目id不能为空
|
//项目id不能为空
|
||||||
if (projectId == null){
|
if (projectId == null){
|
||||||
throw new RuntimeException("项目ID不能为空");
|
throw new RuntimeException("项目ID不能为空");
|
||||||
}
|
}
|
||||||
//年月可以为空,但是如果有值格式那么就必须是yyyy-MM
|
//年月可以为空,但是如果有值格式那么就必须是yyyy-MM
|
||||||
if (yue != null){
|
if (startYue != null){
|
||||||
if (!yue.matches("\\d{4}-\\d{2}")){
|
if (!startYue.matches("\\d{4}-\\d{2}")){
|
||||||
|
throw new RuntimeException("年月格式错误");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (endYue != null){
|
||||||
|
if (!endYue.matches("\\d{4}-\\d{2}")){
|
||||||
throw new RuntimeException("年月格式错误");
|
throw new RuntimeException("年月格式错误");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
final String[] arr = {"1","2","3"}; //到货的几个状态
|
final String[] arr = {"1","2","3"}; //到货的几个状态
|
||||||
List<GrossOutputRes> list = baseMapper.grossOutput(projectId, arr, yue);
|
List<GrossOutputRes> list = baseMapper.grossOutput(projectId, arr, startYue,endYue);
|
||||||
//计算出所有的订单数量
|
//计算出所有的订单数量
|
||||||
BigDecimal resBigDecimal = new BigDecimal(0);
|
BigDecimal resBigDecimal = new BigDecimal(0);
|
||||||
for (GrossOutputRes grossOutputRes : list) {
|
for (GrossOutputRes grossOutputRes : list) {
|
||||||
|
@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaCheckPermission;
|
|||||||
import cn.hutool.http.HttpStatus;
|
import cn.hutool.http.HttpStatus;
|
||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.dromara.cailiaoshebei.service.IBusMaterialsorderService;
|
||||||
import org.dromara.common.core.enums.BusinessStatusEnum;
|
import org.dromara.common.core.enums.BusinessStatusEnum;
|
||||||
import org.dromara.common.core.enums.FormatsType;
|
import org.dromara.common.core.enums.FormatsType;
|
||||||
import org.dromara.common.core.utils.DateUtils;
|
import org.dromara.common.core.utils.DateUtils;
|
||||||
@ -68,6 +69,8 @@ public class OutTableController extends BaseController {
|
|||||||
|
|
||||||
private final IOutSettlementValueOwnerService settlementValueOwnerService;
|
private final IOutSettlementValueOwnerService settlementValueOwnerService;
|
||||||
|
|
||||||
|
private final IBusMaterialsorderService busMaterialsorderService;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 施工产值报表(计划 VS 实际)
|
* 施工产值报表(计划 VS 实际)
|
||||||
@ -262,6 +265,7 @@ public class OutTableController extends BaseController {
|
|||||||
|
|
||||||
vo.setProjectId(projectVoId);
|
vo.setProjectId(projectVoId);
|
||||||
|
|
||||||
|
// BigDecimal bigDecimal = busMaterialsorderService.grossOutput(projectVoId, null);
|
||||||
if("1".equals(bo.getValueType())){
|
if("1".equals(bo.getValueType())){
|
||||||
//设计完工产值
|
//设计完工产值
|
||||||
BigDecimal designValue = monthPlanService.getDesignValueByProjectId(projectVoId,null);
|
BigDecimal designValue = monthPlanService.getDesignValueByProjectId(projectVoId,null);
|
||||||
@ -272,17 +276,18 @@ public class OutTableController extends BaseController {
|
|||||||
vo.setTotalCompletionOutputValue(constructionValue);
|
vo.setTotalCompletionOutputValue(constructionValue);
|
||||||
}else if ("3".equals(bo.getValueType())) {
|
}else if ("3".equals(bo.getValueType())) {
|
||||||
//采购完工产值 todo: 掉罗成的接口
|
//采购完工产值 todo: 掉罗成的接口
|
||||||
BigDecimal purchaseValue = BigDecimal.ZERO;
|
// BigDecimal purchaseValue = bigDecimal;
|
||||||
vo.setTotalCompletionOutputValue(purchaseValue);
|
// vo.setTotalCompletionOutputValue(purchaseValue);
|
||||||
}else{
|
}else{
|
||||||
//设计完工产值
|
//设计完工产值
|
||||||
BigDecimal designValue = monthPlanService.getDesignValueByProjectId(projectVoId,null);
|
BigDecimal designValue = monthPlanService.getDesignValueByProjectId(projectVoId,null);
|
||||||
//施工完工产值
|
//施工完工产值
|
||||||
BigDecimal constructionValue = constructionValueService.getCompleteValue(projectVoId,null);
|
BigDecimal constructionValue = constructionValueService.getCompleteValue(projectVoId,null);
|
||||||
//采购完工产值 todo: 掉罗成的接口
|
//采购完工产值 todo: 掉罗成的接口
|
||||||
BigDecimal purchaseValue = BigDecimal.ZERO;
|
|
||||||
|
|
||||||
vo.setTotalCompletionOutputValue( designValue.add(constructionValue).add(purchaseValue));
|
// BigDecimal purchaseValue = bigDecimal;
|
||||||
|
|
||||||
|
// vo.setTotalCompletionOutputValue( designValue.add(constructionValue).add(purchaseValue));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -331,9 +336,9 @@ public class OutTableController extends BaseController {
|
|||||||
//施工完工产值
|
//施工完工产值
|
||||||
BigDecimal constructionValue = constructionValueService.getCompleteValue(projectVoId,bo.getMonth());
|
BigDecimal constructionValue = constructionValueService.getCompleteValue(projectVoId,bo.getMonth());
|
||||||
//采购完工产值 todo: 掉罗成的接口
|
//采购完工产值 todo: 掉罗成的接口
|
||||||
BigDecimal purchaseValue = BigDecimal.ZERO;
|
// BigDecimal purchaseValue = busMaterialsorderService.grossOutput(projectVoId,bo.getMonth());
|
||||||
|
|
||||||
vo.setTotalCompletionOutputValue( designValue.add(constructionValue).add(purchaseValue));
|
// vo.setTotalCompletionOutputValue( designValue.add(constructionValue).add(purchaseValue));
|
||||||
|
|
||||||
//分包结算产值
|
//分包结算产值
|
||||||
BigDecimal settlementValue = settlementValueSubcontractService.getValueByProjectId(projectVoId,null,bo.getMonth());
|
BigDecimal settlementValue = settlementValueSubcontractService.getValueByProjectId(projectVoId,null,bo.getMonth());
|
||||||
@ -413,6 +418,7 @@ public class OutTableController extends BaseController {
|
|||||||
|
|
||||||
}else if("2".equals(bo.getValueType())){
|
}else if("2".equals(bo.getValueType())){
|
||||||
//todo: 掉罗成的接口
|
//todo: 掉罗成的接口
|
||||||
|
// busMaterialsorderService.grossOutput(projectVoId,bo.getMonth())
|
||||||
vo.setMonthCompletionValue(BigDecimal.ZERO);
|
vo.setMonthCompletionValue(BigDecimal.ZERO);
|
||||||
vo.setAccumulatedCompletionValue(BigDecimal.ZERO);
|
vo.setAccumulatedCompletionValue(BigDecimal.ZERO);
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
#{item}
|
#{item}
|
||||||
</foreach>
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
<if test="yue != null">
|
<if test="endYue != null">
|
||||||
and DATE_FORMAT(a.actual_arrival, '%Y-%m') = #{yue}
|
and DATE_FORMAT(a.actual_arrival, '%Y-%m') = #{yue}
|
||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
|
Reference in New Issue
Block a user