|  |  |  | 
|---|
|  |  |  | 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()); | 
|---|
|  |  |  | 
|---|
|  |  |  | workorderRecord = new WorkorderRecord(); | 
|---|
|  |  |  | workorderRecord.setDeleted(Constants.ZERO); | 
|---|
|  |  |  | if(!Objects.isNull(userId)){ | 
|---|
|  |  |  | CompanyUser companyUser = companyUserExtMapper.selectById(userId); | 
|---|
|  |  |  | CompanyUser companyUser = new CompanyUser(); | 
|---|
|  |  |  | companyUser.setUserId(userId); | 
|---|
|  |  |  | companyUser.setRootDepartId(loginUserInfo.getRootDepartment().getId()); | 
|---|
|  |  |  | companyUser =     companyUserExtMapper.selectOne(new QueryWrapper<>(companyUser).last("limit 1")); | 
|---|
|  |  |  | if(Objects.isNull(companyUser)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,未查询到生产人员对应企业用户信息!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | workorderRecord.setCreateUser(companyUser.getUserId()); | 
|---|
|  |  |  | workorderRecord.setCreateUser(userId); | 
|---|
|  |  |  | workorderRecord.setRootDepartId(loginUserInfo.getRootDepartment().getId()); | 
|---|
|  |  |  | workorderRecord.setDepartId(loginUserInfo.getCurComDepartment().getId()); | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | 
|---|
|  |  |  | workorderRecord.setQualifiedNum(createWorkorderRecordDTO.getQualifiedNum()); | 
|---|
|  |  |  | //计算工资信息 | 
|---|
|  |  |  | 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",workorderRecord.getSalaryType()).last(" limit 1  ")); | 
|---|
|  |  |  | if(!Objects.isNull(salaryParam)&&!Objects.isNull(createWorkorderRecordDTO.getDuration())){ | 
|---|
|  |  |  | .eq("DEPART_ID",workorderRecord.getFactoryId()).eq("PROCEDURE_ID",workorderRecord.getProcedureId()).eq("TYPE",createWorkorderRecordDTO.getType()).last(" limit 1  ")); | 
|---|
|  |  |  | if(!Objects.isNull(salaryParam)){ | 
|---|
|  |  |  | workorderRecord.setSalaryPrice(salaryParam.getSalary()); | 
|---|
|  |  |  | workorderRecord.setSalaryType(salaryParam.getType()); | 
|---|
|  |  |  | workorderRecord.setSalaryUnqualified(salaryParam.getUnqualified()); | 
|---|
|  |  |  | 
|---|
|  |  |  | 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)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //插入工单操作记录,并且判断是否更改为工单的状态【生产中】 | 
|---|