【生产订单】 增加包装状态

dev
siontion 3 months ago
parent 5f6e02bb9c
commit 86adc1e28c

@ -6,6 +6,7 @@ import com.chanko.yunxi.mes.framework.excel.core.annotations.DictFormat;
import com.chanko.yunxi.mes.framework.excel.core.convert.DictConvert;
import com.chanko.yunxi.mes.framework.excel.core.convert.TimestampToDateConvert;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.models.security.SecurityScheme;
import lombok.Data;
import java.time.LocalDateTime;
@ -67,4 +68,7 @@ public class ProjectOrderExportVO {
@ExcelProperty(value = "发货状态", converter = DictConvert.class)
@DictFormat("biz_delivery_status") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中
private Integer deliveryStatus;
@Schema(description = "包装状态")
private Integer packageStatus;
}

@ -157,5 +157,8 @@ public class ProjectOrderPageReqVO extends PageParam {
@Schema(description = "子项目编号")
private String projectSubCode;
@Schema(description = "包装状态")
private Integer packageStatus;
}

@ -221,6 +221,7 @@ public class ProjectOrderRespVO {
@Schema(description = "剩余天数")
private Integer restDays;
@Schema(description = "包装状态")
private Integer packageStatus;
}

@ -142,6 +142,7 @@ public class ProjectOrderSaveReqVO {
@Schema(description = "快照原始单据日期")
private LocalDateTime snapshotOrderTime;
@Schema(description = "包装状态")
private Integer packageStatus;
}

@ -10,6 +10,7 @@ import com.chanko.yunxi.mes.module.biz.controller.admin.app.vo.OverTaskVO;
import com.chanko.yunxi.mes.module.biz.controller.admin.storage.vo.StoragePageReqVO;
import com.chanko.yunxi.mes.module.biz.controller.admin.storage.vo.StorageRespVO;
import com.chanko.yunxi.mes.module.biz.controller.admin.storage.vo.StorageSaveReqVO;
import com.chanko.yunxi.mes.module.biz.controller.admin.tpluslastestbom.vo.TplusLastestBomPageReqVO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderSubDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.storage.StorageDO;
@ -192,7 +193,7 @@ public class StorageController {
@GetMapping("/bom-by-project_order_code")
@Operation(summary = "获得分页")
@PreAuthorize("@ss.hasPermission('biz:storage:query')")
public CommonResult<List<TplusLastestBomDO>> getBomByProjectOrderCode(String projectOrderCode) {
public CommonResult<PageResult<TplusLastestBomDO>> getBomByProjectOrderCode(String projectOrderCode) {
ProjectOrderDO projectOrderDO = projectOrderMapper.selectOne(ProjectOrderDO::getCode,projectOrderCode);
List<ProjectOrderSubDO> projectOrderSubDOList = projectOrderSubMapper.selectListByProjectOrderId(projectOrderDO.getId());
@ -203,7 +204,10 @@ public class StorageController {
});
List<TplusLastestBomDO> pageResult = tplusLastestBomMapper.selectListByTopCode(codes,projectOrderDO.getId());
TplusLastestBomPageReqVO reqVO = new TplusLastestBomPageReqVO();
reqVO.setProjectOrderId(projectOrderDO.getId());
reqVO.setCodes(codes);
PageResult<TplusLastestBomDO> pageResult = tplusLastestBomMapper.selectListByTopCode(reqVO);
return success(pageResult);
}
}

@ -71,4 +71,8 @@ public class TplusLastestBomPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
private List<String> codes;
private Long projectOrderId;
}

@ -198,6 +198,8 @@ public class ProjectOrderDO extends BaseDO {
*/
private LocalDateTime orderTime;
private Integer packageStatus;
/**
*
*/

@ -46,20 +46,20 @@ public interface TplusLastestBomMapper extends BaseMapperX<TplusLastestBomDO> {
.orderByDesc(TplusLastestBomDO::getId));
}
default List<TplusLastestBomDO> selectListByTopCode(List<String> codes,Long projectOrderId) {
default PageResult<TplusLastestBomDO> selectListByTopCode(TplusLastestBomPageReqVO reqVO) {
MPJLambdaWrapper<TplusLastestBomDO> query = new MPJLambdaWrapper<>();
query.distinct()
.select("b.name as mat_name,b.code as mat_code,b.material_type as mat_type,b.spec as mat_spec,b.unit as mat_unit")
.select("sum((select amount from project_sale_order_sub where project_order_id="+projectOrderId+" and material_id=(select id from base_material where code=t.top_code limit 1) limit 1)*t.required_quantity/t.produce_quantity) as pre_amount")
.select("sum((select amount from project_sale_order_sub where project_order_id="+reqVO.getProjectOrderId()+" and material_id=(select id from base_material where code=t.top_code limit 1) limit 1)*t.required_quantity/t.produce_quantity) as pre_amount")
.select("a.available_quantity")
.leftJoin(TplusLastestStockDO.class, "a", TplusLastestStockDO::getInventoryCode, TplusLastestBomDO::getProjectSubCode)
.leftJoin(MaterialDO.class,"b",MaterialDO::getCode,TplusLastestBomDO::getProjectSubCode)
.disableSubLogicDel()
.in(CollUtil.isNotEmpty(codes), TplusLastestBomDO::getTopCode, codes)
.in(CollUtil.isNotEmpty(reqVO.getCodes()), TplusLastestBomDO::getTopCode, reqVO.getCodes())
.groupBy(TplusLastestBomDO::getProjectSubCode)
.orderByAsc(TplusLastestBomDO::getId)
;
return selectList(query);
return selectPage(reqVO,query);
}
void updateTenantId();
}

@ -469,4 +469,6 @@ CREATE TABLE `tplus_lastest_bom` (
alter table wms_storage add column `project_order_code` varchar(64) default null comment '生产订单id';
alter table wms_storage add column `material_mode` int(2) default null comment '领料模式';
alter table wms_storage add column `material_mode` int(2) default null comment '领料模式';
alter table project_sale_order add `package_status` int(2) default null comment '包装状态';
Loading…
Cancel
Save