jiangping
2023-10-16 d7fe8ae3888c8e2b1eea3c1e3769be0d42a21cc9
server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java
@@ -304,9 +304,9 @@
        wrModel.setFactoryId(mp.getFactoryId());
        wrModel.setProcedureId(wStock.getProcedureId());
        wrModel.setBatch(wStock.getBatch());
        wrModel.setUnitId(mp.getUnitId());
        wrModel.setUnitId(wStock.getUnitId());
        wrModel.setPlanId(mp.getPlanId());
        //TODO 目前使用工装主键存储货位主键
        //目前使用工装主键存储货位主键
        wrModel.setAppliancesId(wStock.getId());
        wrModel.setMaterialDonetype(wStock.getQualityType());
        wrModel.setMaterialProcedureId(wStock.getProcedureId());
@@ -1559,7 +1559,7 @@
        //计算工资信息
        SalaryParam salaryParam = salaryParamMapper.selectOne(new QueryWrapper<SalaryParam>().eq("DELETED",Constants.ZERO).eq("MATERIAL_ID",workorderRecord.getMaterialId())
                .eq("DEPART_ID",workorderRecord.getFactoryId()).eq("PROCEDURE_ID",workorderRecord.getProcedureId()).eq("TYPE",createWorkorderRecordDTO.getType()).last(" limit 1  "));
        if(!Objects.isNull(salaryParam)&&!Objects.isNull(createWorkorderRecordDTO.getDuration())){
        if(!Objects.isNull(salaryParam)){
            workorderRecord.setSalaryPrice(salaryParam.getSalary());
            workorderRecord.setSalaryType(salaryParam.getType());
            workorderRecord.setSalaryUnqualified(salaryParam.getUnqualified());
@@ -1568,8 +1568,10 @@
                workorderRecord.setSalaryNum(salaryParam.getNum());
                workorderRecord.setSalary(salaryParam.getSalary().multiply(salaryParam.getUnqualified()==Constants.ONE?num:createWorkorderRecordDTO.getQualifiedNum()));
            }else{
                workorderRecord.setDuration(createWorkorderRecordDTO.getDuration());
                workorderRecord.setSalary(BigDecimal.valueOf(createWorkorderRecordDTO.getDuration()).multiply(salaryParam.getSalary()).divide(new BigDecimal(3600),BigDecimal.ROUND_HALF_UP));
                if(!Objects.isNull(createWorkorderRecordDTO.getDuration())&&Constants.formatIntegerNum(createWorkorderRecordDTO.getDuration())>Constants.ZERO){
                    workorderRecord.setDuration(createWorkorderRecordDTO.getDuration());
                    workorderRecord.setSalary(BigDecimal.valueOf(createWorkorderRecordDTO.getDuration()).multiply(salaryParam.getSalary()).divide(new BigDecimal(3600),BigDecimal.ROUND_HALF_UP));
                }
            }
        }
        //插入工单操作记录,并且判断是否更改为工单的状态【生产中】