diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java index 5c0d0627..bbb608dc 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/clz/service/impl/MaterialLeaseInfoServiceImpl.java @@ -881,12 +881,11 @@ public class MaterialLeaseInfoServiceImpl implements MaterialLeaseInfoService { return AjaxResult.error("请先添加领料任务物资编码明细"); } } + if (leaseApplyDetails.getOutNum().compareTo(leaseApplyDetails.getStorageNum()) > 0) { + throw new ServiceException("出库数量不能大于库存数量"); + } } } - int res = checkStorageNum(leaseApplyRequestVo.getLeaseApplyDetailsList()); - if (res == 0) { - return AjaxResult.error("领料出库数量不能大于库存数量"); - } leaseApplyRequestVo.getLeaseApplyInfo().setCreateTime(DateUtils.getNowDate()); String createBy = SecurityUtils.getLoginUser().getSysUser().getNickName(); leaseApplyRequestVo.getLeaseApplyInfo().setCreateBy(createBy); @@ -1020,6 +1019,9 @@ public class MaterialLeaseInfoServiceImpl implements MaterialLeaseInfoService { throw new ServiceException("请先添加领料任务物资编码明细"); } } + if (leaseApplyDetails.getOutNum().compareTo(leaseApplyDetails.getStorageNum()) > 0) { + throw new ServiceException("出库数量不能大于库存数量"); + } } } try { @@ -1425,17 +1427,17 @@ public class MaterialLeaseInfoServiceImpl implements MaterialLeaseInfoService { list.addAll(listL3); list.addAll(listL21); } - /*if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(list)) { + if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(list)) { // 创建树形结构(数据集合作为参数) TypeTreeBuild treeBuild = new TypeTreeBuild(list); // 原查询结果转换树形结构 groupList = treeBuild.buildTree(); - }*/ + } } } catch (Exception e) { AjaxResult.error("类型树-查询失败", e); } - return AjaxResult.success(list); + return AjaxResult.success(groupList); } /** diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java index 91d8b079..df02ba65 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java @@ -108,6 +108,21 @@ public class PurchaseCheckInfoController extends BaseController { } } + /** + * 修改新购验收任务 + * @param purchaseCheckDto + * @return + */ + @ApiOperation("修改新购验收任务") + @PostMapping("/update") + public AjaxResult update(@RequestBody @NotNull(message = "请求参数不能为空") @Valid PurchaseCheckDto purchaseCheckDto) { + try { + return toAjax(purchaseCheckInfoService.update(purchaseCheckDto)); + } catch (final Exception e) { + return error("系统错误, " + e.getMessage()); + } + } + /** * 外层批量验收API */ diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/mapper/PurchaseCheckDetailsMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/mapper/PurchaseCheckDetailsMapper.java index 6fa86bfe..194956ee 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/mapper/PurchaseCheckDetailsMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/mapper/PurchaseCheckDetailsMapper.java @@ -122,4 +122,11 @@ public interface PurchaseCheckDetailsMapper { * @return 结果 */ int deletePurchaseCheckDetailsByIds(Long[] ids); + + /** + * 删除新购验收任务详细 + * @param ids + * @return + */ + int deleteDetails(Long[] ids); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java index 82d95047..94707f22 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java @@ -91,4 +91,11 @@ public interface IPurchaseCheckInfoService { * @return */ List getSignList(PurchaseSignRecord purchaseSignRecord); + + /** + * 修改新购验收任务 + * @param purchaseCheckDto + * @return + */ + int update(PurchaseCheckDto purchaseCheckDto); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java index 8456915a..f121fd92 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java @@ -713,6 +713,8 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { typeMapper.updateType(type); } // 批量插入详情数据 + // 将purchaseCheckDetailsList的status全部设置为2 + purchaseCheckDetailsList.forEach(o -> o.setStatus(PurchaseTaskStatusEnum.TO_CHECK.getStatus())); final int count = purchaseCheckDetailsMapper.insertPurchaseCheckDetailsList(purchaseCheckDetailsList); if (0 < count) { return AjaxResult.success("新增任务成功"); @@ -1066,4 +1068,31 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { } return list; } + + /** + * 修改新购验收任务 + * @param purchaseCheckDto + * @return + */ + @Override + public int update(PurchaseCheckDto purchaseCheckDto) { + purchaseCheckDto.getPurchaseCheckInfo().setUpdateTime(DateUtils.getNowDate()); + purchaseCheckDto.getPurchaseCheckInfo().setUpdateBy(SecurityUtils.getLoginUser().getSysUser().getNickName()); + // 先去查是否存在文件信息,存在就删除 + BmFileInfo fileInfo = new BmFileInfo(); + fileInfo.setTaskType(0); + fileInfo.setTaskId(purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); + List bmFileInfoList = bmFileInfoMapper.selectBmFileInfoList(fileInfo); + if (!CollectionUtils.isEmpty(bmFileInfoList)) { + bmFileInfoMapper.deleteBmFileList(purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); + } + try { + final Long[] ids = {purchaseCheckDto.getPurchaseCheckInfo().getId()}; + purchaseCheckDetailsMapper.deleteDetails(ids); + insertPurchaseCheckDetails(purchaseCheckDto.getPurchaseCheckDetailsList(), purchaseCheckDto.getPurchaseCheckInfo().getTaskId()); + return purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo()); + } catch (final Exception e) { + throw new ServiceException("错误信息描述"); + } + } } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairAuditDetailsMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairAuditDetailsMapper.java index 88429860..b7c509b2 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairAuditDetailsMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/mapper/RepairAuditDetailsMapper.java @@ -167,4 +167,11 @@ public interface RepairAuditDetailsMapper { * @return */ int deleteRepairRecordByTaskId(RepairAuditDetails repairAuditDetails); + + /** + * 查询审核状态 + * @param taskId + * @return + */ + List getAuditStatus(Long taskId); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java index ca13f497..f7ee9369 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairAuditDetailsServiceImpl.java @@ -625,6 +625,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService repairTaskDetails.setRepairNum(repairAuditDetail.getRepairNum()); repairTaskDetails.setCreateBy(SecurityUtils.getLoginUser().getSysUser().getNickName()); repairTaskDetails.setBackId(backId); + repairTaskDetails.setIsDs(1); if(StringUtils.isNotBlank( level)) { repairTaskDetails.setLevel(String.valueOf(Integer.parseInt(level) + 1)); } @@ -661,7 +662,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService int thisMonthMaxOrder = taskMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth(), TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId()); // 生成维修单号 String code = genderNewWxTaskCode(thisMonthMaxOrder); - TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId(), RepairTaskStatusEnum.TASK_STATUS_AUDIT_REJECT.getStatus(), + TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId(), RepairTaskStatusEnum.TASK_STATUS_PROCESSING.getStatus(), null,thisMonthMaxOrder + 1, code); tmTask.setCreateTime(DateUtils.getNowDate()); tmTask.setCreateBy(createBy); @@ -742,6 +743,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService repairTaskDetails.setRepairNum(repairAuditDetail.getRepairNum()); repairTaskDetails.setCreateBy(SecurityUtils.getLoginUser().getSysUser().getNickName()); repairTaskDetails.setBackId(backId); + repairTaskDetails.setIsDs(1); if(StringUtils.isNotBlank( level)) { repairTaskDetails.setLevel(String.valueOf(Integer.parseInt(level) + 1)); } @@ -753,7 +755,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService Long userId = SecurityUtils.getLoginUser().getUserid(); int result = repairAuditDetailsMapper.updateRepairAuditDetailsBatch(ids, status, userId); // 根据任务id查询内层详情任务状态,更新外层任务状态 - List repairAuditDetailsByTaskId = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskId(auditDetails1.getTaskId()); + List repairAuditDetailsByTaskId = repairAuditDetailsMapper.getAuditStatus(auditDetails1.getTaskId()); if (!CollectionUtils.isEmpty(repairAuditDetailsByTaskId)) { // 获取集合中的全部status集合 List statusList = repairAuditDetailsByTaskId.stream() @@ -763,7 +765,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService boolean notContainsNoFinished =!statusList.contains(RepairTaskStatusEnum.TASK_STATUS_PROCESSING.getStatus()); boolean allReject = true; for (Integer newStatus : statusList) { - if (!newStatus.equals(RepairTaskStatusEnum.TASK_STATUS_NO_REVIEW.getStatus())) { + if (!newStatus.equals(RepairTaskStatusEnum.TASK_STATUS_REJECT.getStatus())) { allReject = false; break; } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java index 94fa5203..8a146f07 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/repair/service/impl/RepairServiceImpl.java @@ -649,9 +649,19 @@ public class RepairServiceImpl implements RepairService { .setPartNum(repairPartDetails.getPartNum()).setRepairer(loginUser.getUsername()) .setPartPrice(Optional.ofNullable(repairPartDetails.getPartPrice()).orElse(BigDecimal.ZERO)) .setCreateBy(loginUser.getUsername()); - + repairApplyRecord.setRemark(StringUtils.isNotBlank(repairPartDetails.getRemark()) ? repairPartDetails.getRemark() : ""); // 新增【维修记录表】 repairMapper.addRecord(repairApplyRecord); + // 保存外部维修附件 + if (CollectionUtils.isEmpty(repairPartDetails.getFileList())) { + for (BmFileInfo fileInfo : repairPartDetails.getFileList()) { + fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId()) + .setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId())) + .setTaskId(bean.getTaskId()).setModelId(bean.getId()) + .setCreateBy(loginUser.getUsername()); + bmFileInfoMapper.insertBmFileInfo(fileInfo); + } + } } for (int i = 0; i < partList.size(); i++) { sfCosts = sfCosts.add(partList.get(i).getPartPrice()); @@ -680,6 +690,7 @@ public class RepairServiceImpl implements RepairService { if (CollectionUtil.isNotEmpty(bean.getNumberScrapRepairPartList().get(0).getFileList())) { for (BmFileInfo fileInfo : bean.getNumberScrapRepairPartList().get(0).getFileList()) { fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId()) + .setFileType(Long.valueOf(RepairTypeEnum.TO_SCRAP.getTypeId())) .setTaskId(bean.getTaskId()).setModelId(bean.getId()) .setCreateBy(loginUser.getUsername()); bmFileInfoMapper.insertBmFileInfo(fileInfo); @@ -695,7 +706,7 @@ public class RepairServiceImpl implements RepairService { .setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason()) .setScrapType(bean.getNumberScrapRepairPartList().get(0).getScrapType()) .setRepairer(loginUser.getUsername()).setCreateBy(loginUser.getUsername()); - + repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getNumberScrapRepairPartList().get(0).getRemark()) ? bean.getNumberScrapRepairPartList().get(0).getRemark() : ""); // 因报废操作无需配件, 只添加【维修记录表】 repairMapper.addRecord(repairApplyRecord); } @@ -709,7 +720,7 @@ public class RepairServiceImpl implements RepairService { .setScrapReason(bean.getNumberScrapRepairPartList().get(0).getScrapReason()) .setScrapType(bean.getNumberScrapRepairPartList().get(0).getScrapType()) .setRepairer(loginUser.getUsername()).setCreateBy(loginUser.getUsername()); - + repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getNumberScrapRepairPartList().get(0).getRemark()) ? bean.getNumberScrapRepairPartList().get(0).getRemark() : ""); // 因报废操作无需配件, 只添加【维修记录表】 repairMapper.addRecord(repairApplyRecord); } @@ -853,7 +864,7 @@ public class RepairServiceImpl implements RepairService { } repairApplyRecord.setCreateBy(loginUser.getUsername()); repairApplyRecord.setStatus(0L); - + repairApplyRecord.setRemark(StringUtils.isNotBlank(partDetails.getRemark()) ? partDetails.getRemark() : ""); if ((null != partDetails.getId() || null != partDetails.getPartId()) && null != partDetails.getPartNum()) { partDetails.setPartId(null != partDetails.getPartId() ? partDetails.getPartId() : partDetails.getId()); // 有维修配件时,如果价格为空,设置为0 @@ -906,6 +917,16 @@ public class RepairServiceImpl implements RepairService { // 不选维修配件时, 只添加【维修记录表】 repairMapper.addRecord(repairApplyRecord); } + // 保存内部维修文件 + if (CollectionUtils.isEmpty(partDetails.getFileList())) { + for (BmFileInfo fileInfo : partDetails.getFileList()) { + fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId()) + .setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId())) + .setTaskId(bean.getTaskId()).setModelId(bean.getId()) + .setCreateBy(loginUser.getUsername()); + bmFileInfoMapper.insertBmFileInfo(fileInfo); + } + } } // 根据配件id 统计配件费用 PartType type = partTypeMapper.selectPartTypeByPaId(partList.get(0).getPartId()); @@ -950,6 +971,7 @@ public class RepairServiceImpl implements RepairService { } repairApplyRecord.setSupplierId(partList.get(i).getSupplierId()); repairApplyRecord.setPartPrice(Optional.ofNullable(partList.get(i).getBackCost()).orElse(BigDecimal.ZERO)); + repairApplyRecord.setRemark(StringUtils.isNotBlank(partList.get(i).getRemark()) ? partList.get(i).getRemark() : ""); // 新增【维修记录表】 repairMapper.addRecord(repairApplyRecord); @@ -964,7 +986,16 @@ public class RepairServiceImpl implements RepairService { if (count<=0){ repairMapper.addRepairCost(repairApplyRecord, sfCosts, partList.get(i).getPartType().toString()); } - + // 保存外部返厂维修文件 + if (CollectionUtils.isEmpty(partList.get(i).getFileList())) { + for (BmFileInfo fileInfo : partList.get(i).getFileList()) { + fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId()) + .setFileType(Long.valueOf(RepairTypeEnum.RETURN_FACTORY.getTypeId())) + .setTaskId(bean.getTaskId()).setModelId(bean.getId()) + .setCreateBy(loginUser.getUsername()); + bmFileInfoMapper.insertBmFileInfo(fileInfo); + } + } } } @@ -975,6 +1006,7 @@ public class RepairServiceImpl implements RepairService { if (CollectionUtil.isNotEmpty(partList.get(0).getFileList())) { for (BmFileInfo fileInfo : partList.get(0).getFileList()) { fileInfo.setTaskType(TmTaskTypeEnum.TM_TASK_REPAIR.getTaskTypeId()) + .setFileType(Long.valueOf(RepairTypeEnum.TO_SCRAP.getTypeId())) .setTaskId(bean.getTaskId()).setModelId(bean.getId()) .setCreateBy(loginUser.getUsername()); bmFileInfoMapper.insertBmFileInfo(fileInfo); @@ -988,6 +1020,7 @@ public class RepairServiceImpl implements RepairService { .setCreateBy(loginUser.getUsername()); repairApplyRecord.setScrapType(partList.get(0).getScrapType()); repairApplyRecord.setScrapReason(partList.get(0).getScrapReason()); + repairApplyRecord.setRemark(StringUtils.isNotBlank(partList.get(0).getRemark()) ? partList.get(0).getRemark() : ""); // 不选维修配件时, 只添加【维修记录表】 repairMapper.addRecord(repairApplyRecord); } @@ -1002,6 +1035,7 @@ public class RepairServiceImpl implements RepairService { repairApplyRecord.setScrapType(partList.get(0).getScrapType()); repairApplyRecord.setScrapReason(partList.get(0).getScrapReason()); // 不选维修配件时, 只添加【维修记录表】 + repairApplyRecord.setRemark(StringUtils.isNotBlank(partList.get(0).getRemark()) ? partList.get(0).getRemark() : ""); repairMapper.addRecord(repairApplyRecord); } } @@ -1014,7 +1048,7 @@ public class RepairServiceImpl implements RepairService { .setRepairNum(BigDecimal.valueOf(!RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)) .setScrapNum(BigDecimal.valueOf(RepairTypeEnum.TO_SCRAP.getTypeId().equals(bean.getRepairType()) ? 1 : 0)) .setCreateBy(loginUser.getUsername()); - + repairApplyRecord.setRemark(StringUtils.isNotBlank(bean.getRemark()) ? bean.getRemark() : ""); // 不选维修配件时, 只添加【维修记录表】 repairMapper.addRecord(repairApplyRecord); } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/purchase/PurchaseCheckDetailsMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/purchase/PurchaseCheckDetailsMapper.xml index 206ca029..67bdba2f 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/purchase/PurchaseCheckDetailsMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/purchase/PurchaseCheckDetailsMapper.xml @@ -241,8 +241,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id} + + delete from purchase_check_details where task_id in ( + select task_id + from purchase_check_info + where + id in + + #{id} + + ) + - + diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairAuditDetailsMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairAuditDetailsMapper.xml index 13c28516..13250d63 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairAuditDetailsMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairAuditDetailsMapper.xml @@ -747,4 +747,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GROUP BY rar.repair_type + diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml index f334ca71..1e24f30c 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/repair/RepairMapper.xml @@ -2,8 +2,8 @@ - insert into repair_apply_record (task_id,ma_id,type_id,repair_num,scrap_num,repair_type,create_by,create_time,repair_content,company_id,scrap_id,scrap_reason,scrap_type,supplier_id,part_num,part_price,part_type,part_name,repairer,file_ids,remark,part_id) - values (#{taskId},#{maId},#{typeId},#{repairNum},#{scrapNum},#{repairType},#{createBy},now(),#{repairContent},#{companyId}, #{scrapId},#{scrapReason},#{scrapType},#{supplierId},#{partNum},#{partPrice},#{partType},#{partName},#{repairer},#{fileIds},#{remark},#{partId}); + insert into repair_apply_record (task_id,ma_id,type_id,repair_num,scrap_num,repair_type,create_by,create_time,repair_content,company_id,scrap_id,scrap_reason,scrap_type,supplier_id,part_num,part_price,part_type,part_name,repairer,file_ids,remark,part_id,remark) + values (#{taskId},#{maId},#{typeId},#{repairNum},#{scrapNum},#{repairType},#{createBy},now(),#{repairContent},#{companyId}, #{scrapId},#{scrapReason},#{scrapType},#{supplierId},#{partNum},#{partPrice},#{partType},#{partName},#{repairer},#{fileIds},#{remark},#{partId},#{remark});