过程检和终检自动生成接口开发,过程检和终检app报工逻辑开发;
This commit is contained in:
parent
058282635e
commit
7f5d061407
@ -100,6 +100,7 @@ public interface ErrorCodeConstants {
|
||||
ErrorCode TASK_REPORT_PARAMS_ERROR = new ErrorCode(1_009_003, "报工数量或报工工时不能为空");
|
||||
ErrorCode TASK_REPORT_PARAMS_ERRORS = new ErrorCode(1_009_007, "报工数量超出派工数量");
|
||||
ErrorCode TASK_REPORT_PARAMS_ERRORSZF = new ErrorCode(1_009_008, "已经报工不允许作废");
|
||||
ErrorCode TASK_REPORT_PARAMS_ERRORBG = new ErrorCode(1_009_009, "开始报工和结束报工操作人员不同,无法报工");
|
||||
ErrorCode TASK_DISPATCH_TASK_NOT_EXISTS = new ErrorCode(1_009_004, "任务不存在或已完成");
|
||||
ErrorCode TASK_DISPATCH_TASK_NO_PERMISSION_FOR_OPERATE = new ErrorCode(1_009_005, "任务不满足操作条件");
|
||||
ErrorCode TASK_DISPATCH_TASK_REPORT_AMOUNT_EXCESS = new ErrorCode(1_009_006, "无法超额报工");
|
||||
|
@ -38,6 +38,17 @@ public class BgMasterLineController {
|
||||
@Resource
|
||||
private BgMasterLineService bgMasterLineService;
|
||||
|
||||
|
||||
|
||||
|
||||
@PostMapping("/endBg")
|
||||
@Operation(summary = "创建过程检报工")
|
||||
@PreAuthorize("@ss.hasPermission('heli:bg-master-line:create')")
|
||||
public CommonResult<Integer> endBg(@Valid @RequestBody BgMasterLineSaveReqVO createReqVO) {
|
||||
return success(bgMasterLineService.updateBgMasterLines(createReqVO));
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建过程检报工")
|
||||
@PreAuthorize("@ss.hasPermission('heli:bg-master-line:create')")
|
||||
|
@ -46,4 +46,12 @@ public class BgMasterLineRespVO {
|
||||
@ExcelProperty("工时")
|
||||
private BigDecimal workTime;
|
||||
|
||||
@Schema(description = "结束时间")
|
||||
@ExcelProperty("结束时间")
|
||||
private LocalDateTime entTime;
|
||||
|
||||
@Schema(description = "报工人")
|
||||
@ExcelProperty("报工人")
|
||||
private String userName;
|
||||
|
||||
}
|
@ -38,6 +38,15 @@ public class ZjBgMasterLineController {
|
||||
@Resource
|
||||
private ZjBgMasterLineService zjBgMasterLineService;
|
||||
|
||||
|
||||
@PostMapping("/endBg")
|
||||
@Operation(summary = "创建终检报工")
|
||||
@PreAuthorize("@ss.hasPermission('heli:zj-bg-master-line:create')")
|
||||
public CommonResult<Integer> endBg(@Valid @RequestBody ZjBgMasterLineSaveReqVO createReqVO) {
|
||||
return success(zjBgMasterLineService.updateBgMasterLines(createReqVO));
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建终检报工")
|
||||
@PreAuthorize("@ss.hasPermission('heli:zj-bg-master-line:create')")
|
||||
|
@ -46,4 +46,12 @@ public class ZjBgMasterLineRespVO {
|
||||
@ExcelProperty("工时")
|
||||
private BigDecimal workTime;
|
||||
|
||||
@Schema(description = "结束时间")
|
||||
@ExcelProperty("结束时间")
|
||||
private LocalDateTime entTime;
|
||||
|
||||
@Schema(description = "报工人")
|
||||
@ExcelProperty("报工人")
|
||||
private String userName;
|
||||
|
||||
}
|
@ -53,5 +53,12 @@ public class BgMasterLineDO extends BaseDO {
|
||||
* 工时
|
||||
*/
|
||||
private BigDecimal workTime;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
private LocalDateTime entTime;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String userName;
|
||||
|
||||
}
|
@ -115,20 +115,37 @@ public class PgMasterLineDO extends BaseDO {
|
||||
*/
|
||||
private Integer zlPgId;
|
||||
/**
|
||||
* 是否完成 0未完成 1已完成
|
||||
* 派工单号
|
||||
*/
|
||||
private String pgNumber;
|
||||
/**
|
||||
* 生产计划单号
|
||||
*/
|
||||
private String taskNo;
|
||||
/**
|
||||
* 生产计划ID
|
||||
*/
|
||||
private Long taskId;
|
||||
/**
|
||||
* 项目ID
|
||||
*/
|
||||
private Long projectId;
|
||||
/**
|
||||
* 项目名称
|
||||
*/
|
||||
private String projectName;
|
||||
/**
|
||||
* 是否报工完成
|
||||
*/
|
||||
private Integer pgType;
|
||||
|
||||
/**
|
||||
* 是否完成 0未完成 1已完成
|
||||
* 派工状态 已保存|已提交|已终止 1|2|3
|
||||
*/
|
||||
private Integer dispatchStatus;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String pgNumber;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String projectName;
|
||||
/**
|
||||
* 报工状态
|
||||
*/
|
||||
private String active;
|
||||
|
||||
@TableField(exist = false)
|
||||
private Integer amounts;
|
||||
|
@ -148,6 +148,10 @@ public class ProcessBomDO extends BaseDO {
|
||||
private Integer property;
|
||||
@TableField(exist = false)
|
||||
private Integer amount;
|
||||
//子项目数量
|
||||
@TableField(exist = false)
|
||||
private Integer projectSubAmount;
|
||||
|
||||
|
||||
public boolean canSave(){
|
||||
boolean b = true;
|
||||
|
@ -54,4 +54,13 @@ public class ZjBgMasterLineDO extends BaseDO {
|
||||
*/
|
||||
private BigDecimal workTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
private LocalDateTime entTime;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String userName;
|
||||
|
||||
|
||||
}
|
@ -90,17 +90,37 @@ public class ZjPgMasterLineDO extends BaseDO {
|
||||
* 模具名称
|
||||
*/
|
||||
private String mouldName;
|
||||
|
||||
/**
|
||||
* 派工单号
|
||||
*/
|
||||
private String pgNumber;
|
||||
/**
|
||||
* 生产计划单号
|
||||
*/
|
||||
private String taskNo;
|
||||
/**
|
||||
* 生产计划ID
|
||||
*/
|
||||
private Long taskId;
|
||||
/**
|
||||
* 项目ID
|
||||
*/
|
||||
private Long projectId;
|
||||
/**
|
||||
* 项目名称
|
||||
*/
|
||||
private String projectName;
|
||||
/**
|
||||
* 派工状态 已保存|已提交|已终止 1|2|3
|
||||
*/
|
||||
private Integer dispatchStatus;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String pgNumber;
|
||||
private String active;
|
||||
|
||||
|
||||
/*@TableField(exist = false)
|
||||
private String pgNumber;*/
|
||||
|
||||
@TableField(exist = false)
|
||||
private String projectName;
|
||||
|
||||
@TableField(exist = false)
|
||||
private Integer amounts;
|
||||
|
@ -7,8 +7,10 @@ import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.pgmaster.vo.PgMasterLinePageReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.bgmasterline.BgMasterLineDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.classes.ClassesDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pgmaster.PgMasterDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pgmaster.PgMasterLineDO;
|
||||
import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO;
|
||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.bgmasterline.vo.*;
|
||||
@ -22,7 +24,18 @@ import com.chanko.yunxi.mes.module.heli.controller.admin.bgmasterline.vo.*;
|
||||
public interface BgMasterLineMapper extends BaseMapperX<BgMasterLineDO> {
|
||||
|
||||
default PageResult<BgMasterLineDO> selectPage(BgMasterLinePageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<BgMasterLineDO>()
|
||||
|
||||
MPJLambdaWrapper<BgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
query.selectAll(BgMasterLineDO.class)
|
||||
.select("u2.username as userName")
|
||||
.leftJoin("system_users u2 on u2.id = t.bg_user")
|
||||
;
|
||||
query.eq(BgMasterLineDO::getZjMxId, reqVO.getZjMxId());
|
||||
return selectPage(reqVO, query);
|
||||
|
||||
|
||||
/* return selectPage(reqVO, new LambdaQueryWrapperX<BgMasterLineDO>()
|
||||
|
||||
.betweenIfPresent(BgMasterLineDO::getCreateTime, reqVO.getCreateTime())
|
||||
.eqIfPresent(BgMasterLineDO::getZjId, reqVO.getZjId())
|
||||
.eqIfPresent(BgMasterLineDO::getZjMxId, reqVO.getZjMxId())
|
||||
@ -30,7 +43,8 @@ public interface BgMasterLineMapper extends BaseMapperX<BgMasterLineDO> {
|
||||
.eqIfPresent(BgMasterLineDO::getAmount, reqVO.getAmount())
|
||||
.betweenIfPresent(BgMasterLineDO::getBgTime, reqVO.getBgTime())
|
||||
.betweenIfPresent(BgMasterLineDO::getWorkTime, reqVO.getWorkTime())
|
||||
.orderByDesc(BgMasterLineDO::getId));
|
||||
.orderByDesc(BgMasterLineDO::getId))
|
||||
;*/
|
||||
}
|
||||
default BgMasterLineDO selectSum(Integer zjMxId) {
|
||||
MPJLambdaWrapper<BgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
@ -43,5 +57,15 @@ public interface BgMasterLineMapper extends BaseMapperX<BgMasterLineDO> {
|
||||
|
||||
return selectOne(query);
|
||||
}
|
||||
default BgMasterLineDO selectEnd(Integer zjMxId) {
|
||||
MPJLambdaWrapper<BgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
|
||||
|
||||
query.eq( BgMasterLineDO::getZjMxId, zjMxId)
|
||||
.isNull(BgMasterLineDO::getAmount)
|
||||
;
|
||||
|
||||
return selectOne(query);
|
||||
}
|
||||
|
||||
}
|
@ -42,9 +42,7 @@ public interface PgMasterLineMapper extends BaseMapperX<PgMasterLineDO> {
|
||||
default PgMasterLineDO selectMx(PgMasterLinePageReqVO reqVO) {
|
||||
MPJLambdaWrapper<PgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
query.selectAll(PgMasterLineDO.class)
|
||||
.select("b.pg_number as pgNumber , b.project_name as projectName" )
|
||||
.select("d.amounts,d.workTime")
|
||||
.leftJoin(PgMasterDO.class,"b",PgMasterDO::getId,PgMasterLineDO::getZlPgId)
|
||||
.leftJoin("(select SUM(c.amount) as amounts ,SUM(c.work_time) as workTime,c.zj_mx_id from quality_bg_master_line c group by c.zj_mx_id) d on d.zj_mx_id = t.id")
|
||||
.disableSubLogicDel();
|
||||
|
||||
@ -58,12 +56,10 @@ public interface PgMasterLineMapper extends BaseMapperX<PgMasterLineDO> {
|
||||
default PageResult<PgMasterLineDO> selectPage(PgMasterLinePageReqVO reqVO) {
|
||||
MPJLambdaWrapper<PgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
query.selectAll(PgMasterLineDO.class)
|
||||
.select("b.pg_number as pgNumber , b.project_name as projectName" )
|
||||
.select("d.amounts,d.workTime")
|
||||
.leftJoin(PgMasterDO.class,"b",PgMasterDO::getId,PgMasterLineDO::getZlPgId)
|
||||
.leftJoin("(select SUM(c.amount) as amounts ,SUM(c.work_time) as workTime,c.zj_mx_id from quality_bg_master_line c group by c.zj_mx_id) d on d.zj_mx_id = t.id")
|
||||
|
||||
.orderByDesc(PgMasterLineDO::getId)
|
||||
.orderByAsc(PgMasterLineDO::getTaskNo,PgMasterLineDO::getPgNumber)
|
||||
.disableSubLogicDel();
|
||||
|
||||
query.eq(reqVO.getDetilUser() != null, PgMasterLineDO::getDetilUser, reqVO.getDetilUser())
|
||||
|
@ -36,6 +36,7 @@ public interface PlanMapper extends BaseMapperX<PlanDO> {
|
||||
.select("b.project_sub_id as projectSubId,b.project_sub_code as projectSubCode,b.mould_id as mouldId")
|
||||
.select("d.name as projectSubName,d.composition_id as compositionId,d.unit,d.amount")
|
||||
.select("e.name as compositionName")
|
||||
.select("c.projectName")
|
||||
//.select("f.name as mouldName")
|
||||
.leftJoin(PlanSubDO.class, "b", PlanSubDO::getProjectPlanId, PlanDO::getId)
|
||||
.leftJoin(ProjectOrderDO.class, "c", ProjectOrderDO::getId, PlanSubDO::getProjectId)
|
||||
|
@ -35,9 +35,15 @@ public interface ProcessBomMapper extends BaseMapperX<ProcessBomDO> {
|
||||
.select("b.id as bomId,b.material_id as materialId,b.amount,b.type," +
|
||||
"b.material_name as materialName,b.material_code as materialCode,b.composition_id as compostitionId, " +
|
||||
"b.spec as spec,b.unit as unit,b.blueprint_no as blueprintNo ")
|
||||
.select("c.project_sub_short_name as projectSubShortName,c.project_sub_code as projectSubCode")
|
||||
.select("c.project_sub_short_name as projectSubShortName,c.project_sub_code as projectSubCode ")
|
||||
.select("d.amount as projectSubAmount ")
|
||||
.select("e.planCode ")
|
||||
.select("f.projectName")
|
||||
.leftJoin(ProcessBomDetailDO.class,"b",ProcessBomDetailDO::getBomId,ProcessBomDO::getId)
|
||||
.leftJoin(PlanSubDO.class,"c",PlanSubDO::getProjectSubId,ProcessBomDO::getProjectSubId)
|
||||
.leftJoin(ProjectOrderSubDO.class,"d",ProjectOrderSubDO::getId,ProcessBomDO::getProjectSubId)
|
||||
.leftJoin(PlanDO.class,"e",PlanDO::getId,ProcessBomDO::getPlanId)
|
||||
.leftJoin(ProjectOrderDO.class,"f",ProjectOrderDO::getId,ProcessBomDO::getProjectId)
|
||||
|
||||
.eq(ProcessBomDO::getProjectId, project_id)
|
||||
.eq(ProcessBomDO::getPlanId,task_id)
|
||||
|
@ -22,7 +22,16 @@ public interface ZjBgMasterLineMapper extends BaseMapperX<ZjBgMasterLineDO> {
|
||||
|
||||
|
||||
default PageResult<ZjBgMasterLineDO> selectPage(ZjBgMasterLinePageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<ZjBgMasterLineDO>()
|
||||
MPJLambdaWrapper<ZjBgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
query.selectAll(ZjBgMasterLineDO.class)
|
||||
.select("u2.username as userName")
|
||||
.leftJoin("system_users u2 on u2.id = t.bg_user")
|
||||
;
|
||||
query.eq(ZjBgMasterLineDO::getZjMxId, reqVO.getZjMxId())
|
||||
.orderByDesc(ZjBgMasterLineDO::getId);
|
||||
return selectPage(reqVO, query);
|
||||
|
||||
/* return selectPage(reqVO, new LambdaQueryWrapperX<ZjBgMasterLineDO>()
|
||||
.betweenIfPresent(ZjBgMasterLineDO::getCreateTime, reqVO.getCreateTime())
|
||||
.eqIfPresent(ZjBgMasterLineDO::getZjId, reqVO.getZjId())
|
||||
.eqIfPresent(ZjBgMasterLineDO::getZjMxId, reqVO.getZjMxId())
|
||||
@ -30,7 +39,7 @@ public interface ZjBgMasterLineMapper extends BaseMapperX<ZjBgMasterLineDO> {
|
||||
.eqIfPresent(ZjBgMasterLineDO::getAmount, reqVO.getAmount())
|
||||
.betweenIfPresent(ZjBgMasterLineDO::getBgTime, reqVO.getBgTime())
|
||||
.betweenIfPresent(ZjBgMasterLineDO::getWorkTime, reqVO.getWorkTime())
|
||||
.orderByDesc(ZjBgMasterLineDO::getId));
|
||||
.orderByDesc(ZjBgMasterLineDO::getId));*/
|
||||
}
|
||||
|
||||
default ZjBgMasterLineDO selectSum(Integer zjMxId) {
|
||||
@ -45,4 +54,15 @@ public interface ZjBgMasterLineMapper extends BaseMapperX<ZjBgMasterLineDO> {
|
||||
return selectOne(query);
|
||||
}
|
||||
|
||||
default ZjBgMasterLineDO selectEnd(Integer zjMxId) {
|
||||
MPJLambdaWrapper<ZjBgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
|
||||
|
||||
query.eq( BgMasterLineDO::getZjMxId, zjMxId)
|
||||
.isNull(BgMasterLineDO::getAmount)
|
||||
;
|
||||
|
||||
return selectOne(query);
|
||||
}
|
||||
|
||||
}
|
@ -51,9 +51,7 @@ public interface ZjPgMasterLineMapper extends BaseMapperX<ZjPgMasterLineDO> {
|
||||
default PageResult<ZjPgMasterLineDO> selectPage(ZjPgMasterLinePageReqVO reqVO) {
|
||||
MPJLambdaWrapper<ZjPgMasterLineDO> query = new MPJLambdaWrapper<>();
|
||||
query.selectAll(ZjPgMasterLineDO.class)
|
||||
.select("b.pg_number as pgNumber,b.project_name as projectName")
|
||||
.select("d.amounts,d.workTime")
|
||||
.leftJoin(ZjPgMasterDO.class,"b",ZjPgMasterDO::getId,PgMasterLineDO::getZlPgId)
|
||||
.leftJoin("(select SUM(c.amount) as amounts ,SUM(c.work_time) as workTime,c.zj_mx_id from quality_zj_bg_master_line c group by c.zj_mx_id) d on d.zj_mx_id = t.id")
|
||||
|
||||
.orderByDesc(ZjPgMasterLineDO::getId)
|
||||
|
@ -14,6 +14,14 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||
*/
|
||||
public interface BgMasterLineService {
|
||||
|
||||
|
||||
/**
|
||||
* 结束本次报工
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
Integer updateBgMasterLines(@Valid BgMasterLineSaveReqVO createReqVO);
|
||||
/**
|
||||
* 创建过程检报工
|
||||
*
|
||||
|
@ -35,57 +35,85 @@ public class BgMasterLineServiceImpl implements BgMasterLineService {
|
||||
@Resource
|
||||
private PgMasterLineMapper pgMasterLineMapper;
|
||||
|
||||
//结束本次报工
|
||||
@Override
|
||||
public Integer createBgMasterLine(BgMasterLineSaveReqVO createReqVO) {
|
||||
public Integer updateBgMasterLines(BgMasterLineSaveReqVO createReqVO){
|
||||
//先取出总的派工数量和预计工时
|
||||
PgMasterLineDO pgMasterLineDO = pgMasterLineMapper.selectById(createReqVO.getZjMxId());
|
||||
|
||||
//然后再取出这条ID明细ID下的所有工时和报工数量相加
|
||||
BgMasterLineDO bgMasterLineDO = bgMasterLineMapper.selectSum(createReqVO.getZjMxId());
|
||||
if(bgMasterLineDO !=null){
|
||||
//然后加上用户传入的当前的工时和查出的工时进行相加,进行判断
|
||||
int value1 = bgMasterLineDO.getAmount()+createReqVO.getAmount();
|
||||
|
||||
BigDecimal value2 = bgMasterLineDO.getWorkTime().add(createReqVO.getWorkTime());
|
||||
|
||||
int value1 = 0;
|
||||
if(bgMasterLineDO!=null){
|
||||
//然后加上用户传入的当前的工时和查出的工时进行相加,进行判断
|
||||
value1 = bgMasterLineDO.getAmount()+createReqVO.getAmount();
|
||||
}else{
|
||||
value1 = createReqVO.getAmount();
|
||||
}
|
||||
//先判断报工数量是否大于派工数量
|
||||
if(value1>pgMasterLineDO.getAmount()){
|
||||
//这个地方返回错误:报工数量不允许超过派工数量请检查
|
||||
throw exception(TASK_REPORT_PARAMS_ERRORS);
|
||||
}else if(value1 == pgMasterLineDO.getAmount()){
|
||||
//这个地方跟定是否完成状态
|
||||
pgMasterLineDO.setPgType(1);
|
||||
pgMasterLineMapper.updateBatch(pgMasterLineDO);
|
||||
}
|
||||
}else{
|
||||
if(createReqVO.getAmount()>pgMasterLineDO.getAmount()){
|
||||
//这个地方返回错误:报工数量不允许超过派工数量请检查
|
||||
throw exception(TASK_REPORT_PARAMS_ERRORS);
|
||||
}
|
||||
|
||||
}
|
||||
if(createReqVO.getAmount()==pgMasterLineDO.getAmount()){
|
||||
//取出本派工单在报工明细中,有没有报
|
||||
BgMasterLineDO bgMasterLineDOs = bgMasterLineMapper.selectEnd(createReqVO.getZjMxId());
|
||||
//判断报工user是否相等
|
||||
if(bgMasterLineDOs.getBgUser().equals(createReqVO.getBgUser())){
|
||||
//相同时判断报工数量和派工数量是否相等,相等设置为设置报工状态为1 已完成
|
||||
LocalDateTime currentDateTime = LocalDateTime.now();
|
||||
if(value1 == pgMasterLineDO.getAmount()){
|
||||
//这个地方跟定是否完成状态
|
||||
pgMasterLineDO.setPgType(1);
|
||||
pgMasterLineMapper.updateBatch(pgMasterLineDO);
|
||||
pgMasterLineDO.setDetilUser(Long.parseLong(createReqVO.getBgUser()));
|
||||
pgMasterLineDO.setActive("END");
|
||||
pgMasterLineDO.setEntTime(currentDateTime);
|
||||
pgMasterLineMapper.updateById(pgMasterLineDO);
|
||||
//更新工时
|
||||
|
||||
}else{
|
||||
//不相等时只更新当前报工状态
|
||||
pgMasterLineDO.setActive("END");
|
||||
pgMasterLineDO.setEntTime(currentDateTime);
|
||||
pgMasterLineMapper.updateById(pgMasterLineDO);
|
||||
}
|
||||
//更新报工信息
|
||||
//结束时间
|
||||
bgMasterLineDOs.setEntTime(currentDateTime);
|
||||
//报工工时
|
||||
bgMasterLineDOs.setWorkTime(createReqVO.getWorkTime());
|
||||
//报工数量
|
||||
bgMasterLineDOs.setAmount(createReqVO.getAmount());
|
||||
|
||||
return bgMasterLineMapper.updateById(bgMasterLineDOs);
|
||||
}else{
|
||||
//当创建人和报工人不一样时返回报错,不允许用户报工
|
||||
throw exception(TASK_REPORT_PARAMS_ERRORBG);
|
||||
}
|
||||
//
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 插入
|
||||
BgMasterLineDO bgMasterLine = BeanUtils.toBean(createReqVO, BgMasterLineDO.class);
|
||||
@Override
|
||||
public Integer createBgMasterLine(BgMasterLineSaveReqVO createReqVO) {
|
||||
//先插入一条报工信息
|
||||
BgMasterLineDO bgMasterLineDO = new BgMasterLineDO();
|
||||
//过程检验ID
|
||||
bgMasterLineDO.setZjMxId(createReqVO.getZjMxId());
|
||||
//报工人
|
||||
bgMasterLineDO.setBgUser(createReqVO.getBgUser());
|
||||
//报工时间
|
||||
LocalDateTime currentDateTime = LocalDateTime.now();
|
||||
//写入报工日期-当前系统时间
|
||||
bgMasterLine.setBgTime(currentDateTime);
|
||||
bgMasterLineDO.setBgTime(currentDateTime);
|
||||
//插入报工记录
|
||||
bgMasterLineMapper.insert(bgMasterLineDO);
|
||||
//更新派工单表为正在报工
|
||||
PgMasterLineDO pgMasterLineDO = pgMasterLineMapper.selectById(createReqVO.getZjMxId());
|
||||
pgMasterLineDO.setActive("START");
|
||||
pgMasterLineDO.setDetilUser(Long.parseLong(createReqVO.getBgUser()));
|
||||
pgMasterLineDO.setStartTime(currentDateTime);
|
||||
|
||||
|
||||
|
||||
bgMasterLineMapper.insert(bgMasterLine);
|
||||
// 返回
|
||||
return bgMasterLine.getId();
|
||||
return pgMasterLineMapper.updateById(pgMasterLineDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -75,6 +75,8 @@ public interface PgMasterService {
|
||||
*/
|
||||
List<PgMasterLineDO> getPgMasterLineListByZlPgId(Integer zlPgId);
|
||||
|
||||
Boolean insertPgList(Long task_id,Long project_id);
|
||||
|
||||
List<PgMasterLineDO> searchBomMx(Long task_id,Long project_id);
|
||||
|
||||
}
|
||||
|
@ -56,6 +56,71 @@ public class PgMasterServiceImpl implements PgMasterService {
|
||||
private SerialNumberService serialNumberService;
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Boolean insertPgList(Long task_id,Long project_id){
|
||||
//查询BOM明细
|
||||
List<ProcessBomDO> processBomDOList = processBomMapper.selectBomMx(task_id,project_id);
|
||||
List<PgMasterLineDO> pgMasterLineDOList = new ArrayList<>();
|
||||
processBomDOList.forEach( o ->{
|
||||
PgMasterLineDO pgMasterLineDO = new PgMasterLineDO();
|
||||
//bomID
|
||||
pgMasterLineDO.setBomId(o.getBomId());
|
||||
//bom名称
|
||||
pgMasterLineDO.setBomName("BOM-"+o.getProjectSubShortName());
|
||||
//bom编号
|
||||
pgMasterLineDO.setBomNumber("BOM-"+o.getProjectSubShortName());
|
||||
//bom版本号
|
||||
pgMasterLineDO.setBomNo(o.getVersion());
|
||||
//子项目id
|
||||
pgMasterLineDO.setProjectSubId(o.getProjectSubId());
|
||||
//子项目名称
|
||||
pgMasterLineDO.setProjectSubName(o.getProjectSubShortName());
|
||||
//子项目编号
|
||||
pgMasterLineDO.setProjectSubNumber(o.getProjectSubCode());
|
||||
//是否标准件
|
||||
pgMasterLineDO.setType(o.getType());
|
||||
//物料ID
|
||||
pgMasterLineDO.setMaterialId(o.getMaterialId());
|
||||
//物料名称
|
||||
pgMasterLineDO.setMaterialName(o.getMaterialName());
|
||||
//物料编码
|
||||
pgMasterLineDO.setMaterialCode(o.getMaterialCode());
|
||||
//材质ID
|
||||
pgMasterLineDO.setCompositionId(o.getCompostitionId());
|
||||
//规格
|
||||
pgMasterLineDO.setSpec(o.getSpec());
|
||||
//单位
|
||||
pgMasterLineDO.setUnit(o.getUnit());
|
||||
//图号
|
||||
pgMasterLineDO.setBlueprintNo(o.getBlueprintNo());
|
||||
//检验数量(子项目数量*Bom数量)
|
||||
pgMasterLineDO.setAmount((o.getProjectSubAmount()*o.getAmount()));
|
||||
//是否完成
|
||||
pgMasterLineDO.setPgType(0);
|
||||
//派工状态
|
||||
pgMasterLineDO.setDispatchStatus(2);
|
||||
//生产计划单号
|
||||
pgMasterLineDO.setTaskNo(o.getPlanCode());
|
||||
//生产计划ID
|
||||
pgMasterLineDO.setTaskId(o.getPlanId());
|
||||
//项目ID
|
||||
pgMasterLineDO.setProjectId(o.getProjectId());
|
||||
//项目名称
|
||||
pgMasterLineDO.setProjectName(o.getProjectName());
|
||||
//派工单号
|
||||
TaskDispatchTypeEnum taskDispatchTypeEnum = TaskDispatchTypeEnum.valueOf("GCJYPG");
|
||||
SerialNumberDO serialNumberDO = serialNumberService.getSerialNumber(taskDispatchTypeEnum.getBusinesTypeEnum().name(), new SimpleDateFormat("yyyyMMdd").format(new Date()));
|
||||
serialNumberDO.setSerialNumber(serialNumberDO.getSerialNumber()+1);
|
||||
pgMasterLineDO.setPgNumber(taskDispatchTypeEnum.getCodeEnum().getCode(serialNumberDO.getSerialNumber().toString()));
|
||||
pgMasterLineDOList.add(pgMasterLineDO);
|
||||
});
|
||||
|
||||
//插入派工单表
|
||||
return createPgMasterLineLists(pgMasterLineDOList);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PgMasterLineDO> searchBomMx(Long task_id,Long project_id){
|
||||
//查询BOM明细
|
||||
@ -191,6 +256,12 @@ public class PgMasterServiceImpl implements PgMasterService {
|
||||
|
||||
}
|
||||
|
||||
private Boolean createPgMasterLineLists( List<PgMasterLineDO> list) {
|
||||
|
||||
return pgMasterLineMapper.insertBatch(list);
|
||||
|
||||
}
|
||||
|
||||
private void updatePgMasterLineList(Integer zlPgId, List<PgMasterLineDO> list) {
|
||||
deletePgMasterLineByZlPgId(zlPgId);
|
||||
list.forEach(o -> o.setId(null).setUpdater(null).setUpdateTime(null)); // 解决更新情况下:1)id 冲突;2)updateTime 不更新
|
||||
|
@ -15,6 +15,14 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||
public interface ZjBgMasterLineService {
|
||||
|
||||
|
||||
/**
|
||||
* 结束报工
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
Integer updateBgMasterLines(@Valid ZjBgMasterLineSaveReqVO createReqVO);
|
||||
|
||||
|
||||
/**
|
||||
* 创建终检报工
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.chanko.yunxi.mes.module.heli.service.zjbgmasterline;
|
||||
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.bgmasterline.vo.BgMasterLineSaveReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.bgmasterline.BgMasterLineDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.pgmaster.PgMasterLineDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.zjpgmaster.ZjPgMasterDO;
|
||||
@ -45,10 +46,90 @@ public class ZjBgMasterLineServiceImpl implements ZjBgMasterLineService {
|
||||
|
||||
|
||||
|
||||
|
||||
//结束本次报工
|
||||
@Override
|
||||
public Integer updateBgMasterLines(ZjBgMasterLineSaveReqVO createReqVO){
|
||||
//先取出总的派工数量和预计工时
|
||||
ZjPgMasterLineDO zjPgMasterLineDO = zjPgMasterLineMapper.selectById(createReqVO.getZjMxId());
|
||||
//然后再取出这条ID明细ID下的所有工时和报工数量相加
|
||||
ZjBgMasterLineDO zjBgMasterLineDO = zjBgMasterLineMapper.selectSum(createReqVO.getZjMxId());
|
||||
//然后加上用户传入的当前的工时和查出的工时进行相加,进行判断
|
||||
int value1 = 0;
|
||||
if(zjBgMasterLineDO!=null){
|
||||
//然后加上用户传入的当前的工时和查出的工时进行相加,进行判断
|
||||
value1 = zjBgMasterLineDO.getAmount()+createReqVO.getAmount();
|
||||
}else{
|
||||
value1 = createReqVO.getAmount();
|
||||
}
|
||||
//先判断报工数量是否大于派工数量
|
||||
if(value1>zjPgMasterLineDO.getAmount()){
|
||||
//这个地方返回错误:报工数量不允许超过派工数量请检查
|
||||
throw exception(TASK_REPORT_PARAMS_ERRORS);
|
||||
}else{
|
||||
//取出本派工单在报工明细中,有没有报
|
||||
ZjBgMasterLineDO zjBgMasterLineDO1 = zjBgMasterLineMapper.selectEnd(createReqVO.getZjMxId());
|
||||
//判断报工user是否相等
|
||||
if(zjBgMasterLineDO1.getBgUser().equals(createReqVO.getBgUser())){
|
||||
//相同时判断报工数量和派工数量是否相等,相等设置为设置报工状态为1 已完成
|
||||
LocalDateTime currentDateTime = LocalDateTime.now();
|
||||
if(value1 == zjPgMasterLineDO.getAmount()){
|
||||
//这个地方跟定是否完成状态
|
||||
zjPgMasterLineDO.setPgType(1);
|
||||
zjPgMasterLineDO.setDetilUser(Long.parseLong(createReqVO.getBgUser()));
|
||||
zjPgMasterLineDO.setActive("END");
|
||||
zjPgMasterLineDO.setEntTime(currentDateTime);
|
||||
zjPgMasterLineMapper.updateById(zjPgMasterLineDO);
|
||||
//更新工时
|
||||
|
||||
}else{
|
||||
//不相等时只更新当前报工状态
|
||||
zjPgMasterLineDO.setActive("END");
|
||||
zjPgMasterLineDO.setEntTime(currentDateTime);
|
||||
zjPgMasterLineMapper.updateById(zjPgMasterLineDO);
|
||||
}
|
||||
//更新报工信息
|
||||
//结束时间
|
||||
zjBgMasterLineDO1.setEntTime(currentDateTime);
|
||||
//报工工时
|
||||
zjBgMasterLineDO1.setWorkTime(createReqVO.getWorkTime());
|
||||
//报工数量
|
||||
zjBgMasterLineDO1.setAmount(createReqVO.getAmount());
|
||||
|
||||
return zjBgMasterLineMapper.updateById(zjBgMasterLineDO1);
|
||||
}else{
|
||||
//当创建人和报工人不一样时返回报错,不允许用户报工
|
||||
throw exception(TASK_REPORT_PARAMS_ERRORBG);
|
||||
}
|
||||
//
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Integer createZjBgMasterLine(ZjBgMasterLineSaveReqVO createReqVO) {
|
||||
|
||||
//先取出总的派工数量和预计工时
|
||||
//先插入一条报工信息
|
||||
ZjBgMasterLineDO zjBgMasterLineDO = new ZjBgMasterLineDO();
|
||||
//过程检验ID
|
||||
zjBgMasterLineDO.setZjMxId(createReqVO.getZjMxId());
|
||||
//报工人
|
||||
zjBgMasterLineDO.setBgUser(createReqVO.getBgUser());
|
||||
//报工时间
|
||||
LocalDateTime currentDateTime = LocalDateTime.now();
|
||||
zjBgMasterLineDO.setBgTime(currentDateTime);
|
||||
//插入报工记录
|
||||
zjBgMasterLineMapper.insert(zjBgMasterLineDO);
|
||||
//更新派工单表为正在报工
|
||||
ZjPgMasterLineDO zjPgMasterLineDO = zjPgMasterLineMapper.selectById(createReqVO.getZjMxId());
|
||||
zjPgMasterLineDO.setActive("START");
|
||||
zjPgMasterLineDO.setDetilUser(Long.parseLong(createReqVO.getBgUser()));
|
||||
zjPgMasterLineDO.setStartTime(currentDateTime);
|
||||
|
||||
|
||||
return zjPgMasterLineMapper.updateById(zjPgMasterLineDO);
|
||||
|
||||
/* //先取出总的派工数量和预计工时
|
||||
ZjPgMasterLineDO zjPgMasterLineDO = zjPgMasterLineMapper.selectById(createReqVO.getZjMxId());
|
||||
|
||||
//然后再取出这条ID明细ID下的所有工时和报工数量相加
|
||||
@ -66,7 +147,7 @@ public class ZjBgMasterLineServiceImpl implements ZjBgMasterLineService {
|
||||
}else if(value1 == zjPgMasterLineDO.getAmount()){
|
||||
//这个地方跟定是否完成状态
|
||||
zjPgMasterLineDO.setPgType(1);
|
||||
|
||||
zjPgMasterLineDO.setDetilUser(Long.parseLong(createReqVO.getBgUser()));
|
||||
zjPgMasterLineMapper.updateById(zjPgMasterLineDO);
|
||||
}
|
||||
}else{
|
||||
@ -90,7 +171,7 @@ public class ZjBgMasterLineServiceImpl implements ZjBgMasterLineService {
|
||||
|
||||
zjBgMasterLineMapper.insert(zjBgMasterLine);
|
||||
// 返回
|
||||
return zjBgMasterLine.getId();
|
||||
return zjBgMasterLine.getId();*/
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -74,6 +74,9 @@ public interface ZjPgMasterService {
|
||||
*/
|
||||
List<ZjPgMasterLineDO> getZjPgMasterLineListByZlPgId(Integer zlPgId);
|
||||
|
||||
|
||||
Boolean insertZjList(Long task_id,Long project_id);
|
||||
|
||||
List<ZjPgMasterLineDO> searchZXMMx(Long task_id,Long project_id);
|
||||
|
||||
PageResult<ZjPgMasterLineDO> getTaskDispatchDetailPage(ZjPgMasterLinePageReqVO pageReqVO);
|
||||
|
@ -68,6 +68,65 @@ public class ZjPgMasterServiceImpl implements ZjPgMasterService {
|
||||
return zjPgMasterLineMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean insertZjList(Long task_id,Long project_id){
|
||||
//查询BOM明细
|
||||
List<PlanDO> planDOList = planMapper.searchZXMMx(task_id,project_id);
|
||||
List<ZjPgMasterLineDO> zjPgMasterLineDOList = new ArrayList<>();
|
||||
planDOList.forEach( o ->{
|
||||
MouldTypeDO mouldTypeDO = mouldTypeMapper.selectById(o.getMouldId());
|
||||
//组装自动生成参数
|
||||
ZjPgMasterLineDO zjPgMasterLineDO = new ZjPgMasterLineDO();
|
||||
if(mouldTypeDO!=null){
|
||||
//模具名称
|
||||
zjPgMasterLineDO.setMouldName(mouldTypeDO.getName());
|
||||
|
||||
}
|
||||
//子项目id
|
||||
zjPgMasterLineDO.setProjectSubId(o.getProjectSubId());
|
||||
//子项目名称
|
||||
zjPgMasterLineDO.setProjectSubName(o.getProjectSubName());
|
||||
//子项目编号
|
||||
zjPgMasterLineDO.setProjectSubNumber(o.getProjectSubCode());
|
||||
//材质ID
|
||||
zjPgMasterLineDO.setCompositionId(o.getCompositionId());
|
||||
//材质名称
|
||||
zjPgMasterLineDO.setCompositionName(o.getCompositionName());
|
||||
//单位
|
||||
zjPgMasterLineDO.setUnit(o.getUnit());
|
||||
//数量
|
||||
zjPgMasterLineDO.setAmount(o.getAmount());
|
||||
//是否完成
|
||||
zjPgMasterLineDO.setPgType(0);
|
||||
//模具id
|
||||
zjPgMasterLineDO.setMouldId(o.getMouldId());
|
||||
//派工单号
|
||||
TaskDispatchTypeEnum taskDispatchTypeEnum = TaskDispatchTypeEnum.valueOf("ZJJYPG");
|
||||
SerialNumberDO serialNumberDO = serialNumberService.getSerialNumber(taskDispatchTypeEnum.getBusinesTypeEnum().name(), new SimpleDateFormat("yyyyMMdd").format(new Date()));
|
||||
serialNumberDO.setSerialNumber(serialNumberDO.getSerialNumber()+1);
|
||||
zjPgMasterLineDO.setPgNumber(taskDispatchTypeEnum.getCodeEnum().getCode(serialNumberDO.getSerialNumber().toString()));
|
||||
//生产计划单号
|
||||
zjPgMasterLineDO.setTaskNo(o.getPlanNo());
|
||||
//生产计划ID
|
||||
zjPgMasterLineDO.setTaskId(o.getId());
|
||||
//项目ID
|
||||
zjPgMasterLineDO.setProjectId(o.getProjectId());
|
||||
//项目名称
|
||||
zjPgMasterLineDO.setProjectName(o.getProjectName());
|
||||
//派工状态
|
||||
zjPgMasterLineDO.setDispatchStatus(2);
|
||||
|
||||
zjPgMasterLineDOList.add(zjPgMasterLineDO);
|
||||
//自动创建
|
||||
|
||||
});
|
||||
//循环完成后,调用插入子表程序
|
||||
Boolean a = createZjPgMasterLineLists(zjPgMasterLineDOList);
|
||||
|
||||
//根据查询出的BOM明细将信息set到
|
||||
return a;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ZjPgMasterLineDO> searchZXMMx(Long task_id,Long project_id){
|
||||
//查询BOM明细
|
||||
@ -75,25 +134,53 @@ public class ZjPgMasterServiceImpl implements ZjPgMasterService {
|
||||
List<ZjPgMasterLineDO> zjPgMasterLineDOList = new ArrayList<>();
|
||||
planDOList.forEach( o ->{
|
||||
MouldTypeDO mouldTypeDO = mouldTypeMapper.selectById(o.getMouldId());
|
||||
|
||||
//组装自动生成参数
|
||||
ZjPgMasterLineDO zjPgMasterLineDO = new ZjPgMasterLineDO();
|
||||
if(mouldTypeDO!=null){
|
||||
//模具名称
|
||||
zjPgMasterLineDO.setMouldName(mouldTypeDO.getName());
|
||||
|
||||
}
|
||||
//子项目id
|
||||
zjPgMasterLineDO.setProjectSubId(o.getProjectSubId());
|
||||
//子项目名称
|
||||
zjPgMasterLineDO.setProjectSubName(o.getProjectSubName());
|
||||
//子项目编号
|
||||
zjPgMasterLineDO.setProjectSubNumber(o.getProjectSubCode());
|
||||
//材质ID
|
||||
zjPgMasterLineDO.setCompositionId(o.getCompositionId());
|
||||
//材质名称
|
||||
zjPgMasterLineDO.setCompositionName(o.getCompositionName());
|
||||
|
||||
//单位
|
||||
zjPgMasterLineDO.setUnit(o.getUnit());
|
||||
//数量
|
||||
zjPgMasterLineDO.setAmount(o.getAmount());
|
||||
//是否完成
|
||||
zjPgMasterLineDO.setPgType(0);
|
||||
//模具id
|
||||
zjPgMasterLineDO.setMouldId(o.getMouldId());
|
||||
//派工单号
|
||||
TaskDispatchTypeEnum taskDispatchTypeEnum = TaskDispatchTypeEnum.valueOf("ZJJYPG");
|
||||
SerialNumberDO serialNumberDO = serialNumberService.getSerialNumber(taskDispatchTypeEnum.getBusinesTypeEnum().name(), new SimpleDateFormat("yyyyMMdd").format(new Date()));
|
||||
serialNumberDO.setSerialNumber(serialNumberDO.getSerialNumber()+1);
|
||||
zjPgMasterLineDO.setPgNumber(taskDispatchTypeEnum.getCodeEnum().getCode(serialNumberDO.getSerialNumber().toString()));
|
||||
//生产计划单号
|
||||
zjPgMasterLineDO.setTaskNo(o.getPlanNo());
|
||||
//生产计划ID
|
||||
zjPgMasterLineDO.setTaskId(o.getId());
|
||||
//项目ID
|
||||
zjPgMasterLineDO.setProjectId(o.getProjectId());
|
||||
//项目名称
|
||||
zjPgMasterLineDO.setProjectName(o.getProjectName());
|
||||
//派工状态
|
||||
zjPgMasterLineDO.setDispatchStatus(2);
|
||||
|
||||
zjPgMasterLineDOList.add(zjPgMasterLineDO);
|
||||
//自动创建
|
||||
|
||||
});
|
||||
|
||||
|
||||
//根据查询出的BOM明细将信息set到
|
||||
return zjPgMasterLineDOList;
|
||||
}
|
||||
@ -192,6 +279,12 @@ public class ZjPgMasterServiceImpl implements ZjPgMasterService {
|
||||
private void createZjPgMasterLineList(Integer zlPgId, List<ZjPgMasterLineDO> list) {
|
||||
list.forEach(o -> o.setZlPgId(zlPgId));
|
||||
zjPgMasterLineMapper.insertBatch(list);
|
||||
|
||||
}
|
||||
|
||||
private Boolean createZjPgMasterLineLists(List<ZjPgMasterLineDO> list) {
|
||||
return zjPgMasterLineMapper.insertBatch(list);
|
||||
|
||||
}
|
||||
|
||||
private void updateZjPgMasterLineList(Integer zlPgId, List<ZjPgMasterLineDO> list) {
|
||||
|
@ -27,7 +27,7 @@ const isLoading = ref(false)
|
||||
const queryParams: Required<any> = {
|
||||
pageNo: 1,
|
||||
pageSize: 5,
|
||||
detilUser: userId,
|
||||
detilUser: null,
|
||||
//
|
||||
pgType: 0,
|
||||
// 工序完成状态列表
|
||||
@ -159,10 +159,7 @@ const onRefresherrefresh = async () => {
|
||||
<view class="label">派工数量</view>
|
||||
<view class="val">{{item.amount}}</view>
|
||||
</view>
|
||||
<view class="row-item">
|
||||
<view class="label">总报工数量</view>
|
||||
<view class="val high-color">{{item.amounts}}</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
<view class="product-row">
|
||||
@ -170,12 +167,16 @@ const onRefresherrefresh = async () => {
|
||||
<view class="label">预计工时</view>
|
||||
<view class="val">{{ item.gongShi }}</view>
|
||||
</view> -->
|
||||
<view class="row-item">
|
||||
<view class="label">总报工数量</view>
|
||||
<view class="val high-color">{{item.amounts}}</view>
|
||||
</view>
|
||||
<view class="row-item">
|
||||
<view class="label">总报工工时</view>
|
||||
<view class="val high-color">{{ item.workTime }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="product-item">预计生产日期:{{ item.startTime }} ~ {{ item.entTime }}</view>
|
||||
<!-- <view class="product-item">预计生产日期:{{ item.startTime }} ~ {{ item.entTime }}</view> -->
|
||||
</view>
|
||||
<view class="statusText" @click="handleDetail(item)">{{ statusText }}</view>
|
||||
</view>
|
||||
|
@ -3,7 +3,7 @@ import { toRaw, ref, computed } from 'vue'
|
||||
import { formatDate } from '@/utils/index'
|
||||
import { onLoad, onShow } from '@dcloudio/uni-app'
|
||||
import { useLoginStore } from '@/stores/modules/login'
|
||||
import { getTaskRepotPageAPI, getTaskDetailAPI, postOperateAPI } from '@/services/pgMaster'
|
||||
import { getTaskRepotPageAPI, getTaskDetailAPI, postOperateAPI,postOperateAPIEnd } from '@/services/pgMaster'
|
||||
const popup = ref<UniHelper.UniPopupInstance>()
|
||||
const userStore = useLoginStore()
|
||||
const dictInfo = userStore?.dictInfo || []
|
||||
@ -59,6 +59,7 @@ const getData = async () => {
|
||||
e.startTimeStr = e.startTime && formatDate(e.startTime, 'YYYY-MM-DD HH:mm')
|
||||
e.endTimeStr = e.endTime && formatDate(e.endTime, 'YYYY-MM-DD HH:mm')
|
||||
e.bgTime = e.bgTime && formatDate(e.bgTime, 'YYYY-MM-DD HH:mm')
|
||||
e.entTime = e.entTime && formatDate(e.entTime, 'YYYY-MM-DD HH:mm')
|
||||
})
|
||||
if (data.list[0]) {
|
||||
formObj.value = data.list[0]
|
||||
@ -118,7 +119,7 @@ const handleOk = async (active) => {
|
||||
workTime: workTime.value,
|
||||
bgUser: userId,
|
||||
}
|
||||
const data = await postOperateAPI(params)
|
||||
const data = await postOperateAPIEnd(params)
|
||||
const url = `/pages/pgMaster/pgMaster-detail?id=${detailInfo.value.id}`
|
||||
uni.redirectTo({
|
||||
url,
|
||||
@ -126,7 +127,19 @@ const handleOk = async (active) => {
|
||||
}
|
||||
// 开始生产
|
||||
const handleStart = async () => {
|
||||
popup.value.open();
|
||||
const params = {
|
||||
zjMxId: detailInfo.value?.id,
|
||||
workTime: workTime.value,
|
||||
bgUser: userId,
|
||||
}
|
||||
const data = await postOperateAPI(params)
|
||||
const url = `/pages/pgMaster/pgMaster-detail?id=${detailInfo.value.id}`
|
||||
uni.redirectTo({
|
||||
url,
|
||||
})
|
||||
|
||||
|
||||
//popup.value.open();
|
||||
/* const params = {
|
||||
id: detailInfo.value.id,
|
||||
active: 'START',
|
||||
@ -141,16 +154,7 @@ const handleStart = async () => {
|
||||
}
|
||||
// 结束生产
|
||||
const handleStop = async () => {
|
||||
const params = {
|
||||
id: detailInfo.value?.id,
|
||||
active: 'END',
|
||||
}
|
||||
const data = await postOperateAPI(params)
|
||||
const url = `/pages/productionReport/productionReport-detail?id=${detailInfo.value.id}`
|
||||
uni.redirectTo({
|
||||
url,
|
||||
})
|
||||
popup.value?.open()
|
||||
popup.value.open();
|
||||
}
|
||||
|
||||
</script>
|
||||
@ -171,22 +175,23 @@ const handleStop = async () => {
|
||||
<view class="label">派工数量</view>
|
||||
<view class="val">{{ detailInfo.amount }}</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="product-row">
|
||||
<!-- <view class="row-item">
|
||||
<view class="label">预计工时</view>
|
||||
<view class="val">{{ detailInfo.gongShi }}</view>
|
||||
</view> -->
|
||||
<view class="row-item">
|
||||
<view class="label">总报工数量</view>
|
||||
<view class="val high-color">{{ detailInfo.amounts }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="product-row">
|
||||
<view class="row-item">
|
||||
<view class="label">预计工时</view>
|
||||
<view class="val">{{ detailInfo.gongShi }}</view>
|
||||
</view>
|
||||
<view class="row-item">
|
||||
<view class="label">总报工工时</view>
|
||||
<view class="val high-color">{{ detailInfo.workTime }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="product-item">预计生产日期:{{ detailInfo.startTime }} ~ {{ detailInfo.entTime }}</view>
|
||||
<!-- <view class="product-item">预计生产日期:{{ detailInfo.startTime }} ~ {{ detailInfo.entTime }}</view> -->
|
||||
<view class="finish" v-if="isShowStart && detailInfo.procedureStatus !== 2 && detailInfo.totalWorkTime"
|
||||
@click="handleComplate">
|
||||
<image class="complate-img" src="/static/images/productionReport-detail-complate.png" mode="scaleToFill" />
|
||||
@ -202,7 +207,13 @@ const handleStop = async () => {
|
||||
</view>
|
||||
<template v-else>
|
||||
<view class="item" v-for="(item, index) in historyList" :key="item.id">
|
||||
<view class="product-item">报工时间:{{ item.bgTime }}</view>
|
||||
<view class="product-row">
|
||||
<view class="row-item">
|
||||
<view class="label">报工人:</view>
|
||||
<view class="val high-color">{{ item.userName }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="product-item">报工时间:{{ item.bgTime }}~{{item.entTime}}</view>
|
||||
<!-- <view class="product-item">生产结束时间:{{ item.endTimeStr }}</view> -->
|
||||
|
||||
<view class="product-row">
|
||||
@ -226,8 +237,8 @@ const handleStop = async () => {
|
||||
</view>
|
||||
</view>
|
||||
<view class="action" v-if="detailInfo.pgType !== 1">
|
||||
<view class="action-item start" v-if="detailInfo.pgType !== 1" @click="handleStart">过程检报工</view>
|
||||
<!-- <view class="action-item stop" v-if="isShowEnd" @click="handleStop">结束生产</view> -->
|
||||
<view class="action-item start" v-if="detailInfo.active != 'START'" @click="handleStart">开始报工</view>
|
||||
<view class="action-item stop" v-if="detailInfo.active == 'START'" @click="handleStop">结束报工</view>
|
||||
</view>
|
||||
</template>
|
||||
<view class="loading-text" v-else>加载中..</view>
|
||||
|
@ -27,7 +27,7 @@ const isLoading = ref(false)
|
||||
const queryParams: Required<any> = {
|
||||
pageNo: 1,
|
||||
pageSize: 5,
|
||||
detilUser: userId,
|
||||
detilUser: null,
|
||||
//
|
||||
pgType: 0,
|
||||
// 工序完成状态列表
|
||||
@ -187,7 +187,7 @@ const onRefresherrefresh = async () => {
|
||||
<view class="val high-color">{{ item.workTime }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="product-item">预计生产日期:{{ item.startTime }} ~ {{ item.entTime }}</view>
|
||||
<!-- <view class="product-item">预计生产日期:{{ item.startTime }} ~ {{ item.entTime }}</view> -->
|
||||
</view>
|
||||
<view class="statusText" @click="handleDetail(item)">{{ statusText }}</view>
|
||||
</view>
|
||||
|
@ -3,7 +3,7 @@ import { toRaw, ref, computed } from 'vue'
|
||||
import { formatDate } from '@/utils/index'
|
||||
import { onLoad, onShow } from '@dcloudio/uni-app'
|
||||
import { useLoginStore } from '@/stores/modules/login'
|
||||
import { getTaskRepotPageAPI, getTaskDetailAPI, postOperateAPI } from '@/services/zjPgMaster'
|
||||
import { getTaskRepotPageAPI, getTaskDetailAPI, postOperateAPI,postOperateAPIEnd } from '@/services/zjPgMaster'
|
||||
const popup = ref<UniHelper.UniPopupInstance>()
|
||||
const userStore = useLoginStore()
|
||||
const dictInfo = userStore?.dictInfo || []
|
||||
@ -59,6 +59,7 @@ const getData = async () => {
|
||||
e.startTimeStr = e.startTime && formatDate(e.startTime, 'YYYY-MM-DD HH:mm')
|
||||
e.endTimeStr = e.endTime && formatDate(e.endTime, 'YYYY-MM-DD HH:mm')
|
||||
e.bgTime = e.bgTime && formatDate(e.bgTime, 'YYYY-MM-DD HH:mm')
|
||||
e.entTime = e.entTime && formatDate(e.entTime, 'YYYY-MM-DD HH:mm')
|
||||
})
|
||||
if (data.list[0]) {
|
||||
formObj.value = data.list[0]
|
||||
@ -118,7 +119,7 @@ const handleOk = async (active) => {
|
||||
workTime: workTime.value,
|
||||
bgUser: userId,
|
||||
}
|
||||
const data = await postOperateAPI(params)
|
||||
const data = await postOperateAPIEnd(params)
|
||||
const url = `/pages/zjPgMaster/zjPgMaster-detail?id=${detailInfo.value.id}`
|
||||
uni.redirectTo({
|
||||
url,
|
||||
@ -126,7 +127,17 @@ const handleOk = async (active) => {
|
||||
}
|
||||
// 开始生产
|
||||
const handleStart = async () => {
|
||||
popup.value.open();
|
||||
const params = {
|
||||
zjMxId: detailInfo.value?.id,
|
||||
workTime: workTime.value,
|
||||
bgUser: userId,
|
||||
}
|
||||
const data = await postOperateAPI(params)
|
||||
const url = `/pages/zjPgMaster/zjPgMaster-detail?id=${detailInfo.value.id}`
|
||||
uni.redirectTo({
|
||||
url,
|
||||
})
|
||||
|
||||
/* const params = {
|
||||
id: detailInfo.value.id,
|
||||
active: 'START',
|
||||
@ -141,7 +152,8 @@ const handleStart = async () => {
|
||||
}
|
||||
// 结束生产
|
||||
const handleStop = async () => {
|
||||
const params = {
|
||||
popup.value.open();
|
||||
/* const params = {
|
||||
id: detailInfo.value?.id,
|
||||
active: 'END',
|
||||
}
|
||||
@ -150,7 +162,7 @@ const handleStop = async () => {
|
||||
uni.redirectTo({
|
||||
url,
|
||||
})
|
||||
popup.value?.open()
|
||||
popup.value?.open() */
|
||||
}
|
||||
|
||||
</script>
|
||||
@ -188,7 +200,7 @@ const handleStop = async () => {
|
||||
<view class="val high-color">{{ detailInfo.workTime }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="product-item">预计生产日期:{{ detailInfo.startTime }} ~ {{ detailInfo.entTime }}</view>
|
||||
<!-- <view class="product-item">预计生产日期:{{ detailInfo.startTime }} ~ {{ detailInfo.entTime }}</view> -->
|
||||
<view class="finish" v-if="isShowStart && detailInfo.procedureStatus !== 2 && detailInfo.totalWorkTime"
|
||||
@click="handleComplate">
|
||||
<image class="complate-img" src="/static/images/productionReport-detail-complate.png" mode="scaleToFill" />
|
||||
@ -204,7 +216,13 @@ const handleStop = async () => {
|
||||
</view>
|
||||
<template v-else>
|
||||
<view class="item" v-for="(item, index) in historyList" :key="item.id">
|
||||
<view class="product-item">报工时间:{{ item.bgTime }}</view>
|
||||
<view class="product-row">
|
||||
<view class="row-item">
|
||||
<view class="label">报工人:</view>
|
||||
<view class="val high-color">{{ item.userName }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="product-item">报工时间:{{ item.bgTime }}~{{item.entTime}}</view>
|
||||
<!-- <view class="product-item">生产结束时间:{{ item.endTimeStr }}</view> -->
|
||||
|
||||
<view class="product-row">
|
||||
@ -228,8 +246,10 @@ const handleStop = async () => {
|
||||
</view>
|
||||
</view>
|
||||
<view class="action" v-if="detailInfo.pgType !== 1">
|
||||
<view class="action-item start" v-if="detailInfo.pgType !== 1" @click="handleStart">终检报工</view>
|
||||
<!-- <view class="action-item stop" v-if="isShowEnd" @click="handleStop">结束生产</view> -->
|
||||
<view class="action-item start" v-if="detailInfo.active != 'START'" @click="handleStart">开始报工</view>
|
||||
<view class="action-item stop" v-if="detailInfo.active == 'START'" @click="handleStop">结束报工</view>
|
||||
<!-- <view class="action-item start" v-if="detailInfo.pgType !== 1" @click="handleStart">终检报工</view>
|
||||
<view class="action-item stop" v-if="isShowEnd" @click="handleStop">结束生产</view> -->
|
||||
</view>
|
||||
</template>
|
||||
<view class="loading-text" v-else>加载中..</view>
|
||||
|
@ -7,6 +7,6 @@
|
||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
*/
|
||||
// export const serviceDomain = 'https://nxhs.cjyx.cc'
|
||||
// export const serviceDomain = 'https://star.hz-hl.com'
|
||||
export const serviceDomain = 'http://222.71.165.187:9010'
|
||||
// export const serviceDomain = 'https://star.hz-hl.com' http://222.71.165.187:9010
|
||||
export const serviceDomain = 'http://localhost:8080'
|
||||
|
||||
|
@ -50,7 +50,7 @@ export const getTaskDetailAPI = (data: Object) => {
|
||||
}
|
||||
|
||||
/**
|
||||
* 操作生产任务(开始/结束/提交/完成)
|
||||
* 操作生产任务(开始)
|
||||
*/
|
||||
export const postOperateAPI = (data: Object) => {
|
||||
return http<any[]>({
|
||||
@ -59,6 +59,16 @@ export const postOperateAPI = (data: Object) => {
|
||||
data,
|
||||
})
|
||||
}
|
||||
/**
|
||||
* 操作生产任务(结束)
|
||||
*/
|
||||
export const postOperateAPIEnd = (data: Object) => {
|
||||
return http<any[]>({
|
||||
method: 'POST',
|
||||
url: '/heli/bg-master-line/endBg',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 操作生产任务-作废
|
||||
|
@ -33,7 +33,7 @@ export const getTaskDetailAPI = (data: Object) => {
|
||||
}
|
||||
|
||||
/**
|
||||
* 操作生产任务(开始/结束/提交/完成)
|
||||
* 操作生产任务(开始)
|
||||
*/
|
||||
export const postOperateAPI = (data: Object) => {
|
||||
return http<any[]>({
|
||||
@ -43,6 +43,17 @@ export const postOperateAPI = (data: Object) => {
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 操作生产任务(结束)
|
||||
*/
|
||||
export const postOperateAPIEnd = (data: Object) => {
|
||||
return http<any[]>({
|
||||
method: 'POST',
|
||||
url: '/heli/zj-bg-master-line/endBg',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 操作生产任务-作废
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user