From 0ef80c4dcb530ece2b779e1a5cd57642b5c771e9 Mon Sep 17 00:00:00 2001 From: litao Date: Thu, 15 Sep 2022 10:10:45 +0800 Subject: [PATCH] =?UTF-8?q?2022=E5=B9=B49=E6=9C=8815=E6=97=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lims/entry/ScrapApplication.java | 38 ++----- .../goods/controller/ApplyController.java | 6 +- .../RepairApplicationController.java | 29 ++++- .../ScrapApplicationController.java | 104 ++++++++++++++++++ .../lims/mapper/ScrapApplicationMapper.java | 14 +++ .../service/IScrapApplicationService.java | 13 +++ .../lims/service/impl/EntrustServiceImpl.java | 93 ++++++++-------- .../impl/ScrapApplicationServiceImpl.java | 22 ++++ 8 files changed, 237 insertions(+), 82 deletions(-) create mode 100644 lab-service/lab-lims/src/main/java/org/springblade/lims/controller/ScrapApplicationController.java create mode 100644 lab-service/lab-lims/src/main/java/org/springblade/lims/mapper/ScrapApplicationMapper.java create mode 100644 lab-service/lab-lims/src/main/java/org/springblade/lims/service/IScrapApplicationService.java create mode 100644 lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/ScrapApplicationServiceImpl.java diff --git a/lab-service-api/lab-lims-api/src/main/java/org/springblade/lims/entry/ScrapApplication.java b/lab-service-api/lab-lims-api/src/main/java/org/springblade/lims/entry/ScrapApplication.java index 3cd398b..9610cea 100644 --- a/lab-service-api/lab-lims-api/src/main/java/org/springblade/lims/entry/ScrapApplication.java +++ b/lab-service-api/lab-lims-api/src/main/java/org/springblade/lims/entry/ScrapApplication.java @@ -28,6 +28,8 @@ public class ScrapApplication extends BaseEntity implements Serializable { private String name; // 仪器/设备类型 private String type; + // 型号 + private String model; // 购置时间 private Date purchaseTime; // 处理情况 @@ -36,10 +38,10 @@ public class ScrapApplication extends BaseEntity implements Serializable { private Double money; // 报废原因及技术状况 private String reasonAndState; - // 申请人 + // 设备员id @JsonSerialize(nullsUsing = NullSerializer.class) private Long equipmentId; - // 申请人姓名 + // 设备员姓名 private String equipmentName; // 确认日期 private Date applyDate; @@ -52,10 +54,10 @@ public class ScrapApplication extends BaseEntity implements Serializable { private String reviewComments; // 审核时间 private Date reviewDate; - // 业务室id + // 技术负责人id @JsonSerialize(nullsUsing = NullSerializer.class) private Long businessOfficeId; - // 业务室姓名 + // 技术负责人姓名 private String businessOfficeName; // 审批意见 private String approvalComments; @@ -66,36 +68,10 @@ public class ScrapApplication extends BaseEntity implements Serializable { private Long centerDirectorId; // 中心主任姓名 private String centerDirectorName; - // 维修记录 - private String maintenanceRecord; - // 维修人 - private String maintainer; - // 维修时间 - private Date maintainerDate; - // 总工时 - @JsonSerialize(nullsUsing = NullSerializer.class) - private Double workingHours; - // 人工费 - @JsonSerialize(nullsUsing = NullSerializer.class) - private Double laborCost; - // 材料费 - @JsonSerialize(nullsUsing = NullSerializer.class) - private Double materialCost; - // 总计费 - @JsonSerialize(nullsUsing = NullSerializer.class) - private Double totalCost; - // 用户意见 - private String userComments; - // 验收人id - @JsonSerialize(nullsUsing = NullSerializer.class) - private Long acceptedBy; - // 验收人姓名 - private String acceptedName; - // 验收时间 - private Date acceptedDate; // 备注 private String remark; + // 开始时间 @TableField(exist = false) private Date startTime; diff --git a/lab-service/lab-capital/src/main/java/org/springblade/lims/goods/controller/ApplyController.java b/lab-service/lab-capital/src/main/java/org/springblade/lims/goods/controller/ApplyController.java index f34c674..e7f5fe7 100644 --- a/lab-service/lab-capital/src/main/java/org/springblade/lims/goods/controller/ApplyController.java +++ b/lab-service/lab-capital/src/main/java/org/springblade/lims/goods/controller/ApplyController.java @@ -158,15 +158,13 @@ public class ApplyController extends BladeController { List userList = userClient.listDeptUserByCurrentUser(AuthUtil.getDeptId()).getData(); if ("0".equals(isApproval)) { apply.setApproveTime(new Date()); - R userR = userClient.userInfoById(apply.getApproveUserId()); - if (userR != null) { - apply.setApproveUser(userR.getData().getName()); - } apply.setStatus(1); // 消息通知 if (userList != null) { for (User user : userList) { if ("1542095624162525185".equals(user.getRoleId())) { + apply.setApproveUserId(user.getId()); + apply.setApproveUser(user.getName()); messageClient.event(SysTypeEnum.INFORM.getValue(), "申领抄送", "你有新的申领单审核已通过,请查看", 1, 5, user.getId().toString(), "/capital/shenlingList"); } diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/RepairApplicationController.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/RepairApplicationController.java index 39acb73..f39368d 100644 --- a/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/RepairApplicationController.java +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/RepairApplicationController.java @@ -11,8 +11,10 @@ import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.lims.entry.Instrument; import org.springblade.lims.entry.RepairApplication; +import org.springblade.lims.entry.ScrapApplication; import org.springblade.lims.service.IInstrumentService; import org.springblade.lims.service.IRepairApplicationService; +import org.springblade.lims.service.IScrapApplicationService; import org.springblade.resource.enums.SysTypeEnum; import org.springblade.resource.feign.IMessageClient; import org.springblade.system.user.entity.User; @@ -40,6 +42,8 @@ public class RepairApplicationController extends BladeController { private final IInstrumentService instrumentService; + private final IScrapApplicationService scrapApplicationService; + /** * 分页 列表 */ @@ -122,16 +126,35 @@ public class RepairApplicationController extends BladeController { repairApplication.setCenterDirectorId(AuthUtil.getUserId()); repairApplication.setCenterDirectorName(AuthUtil.getUserName()); } - // 验收 - if (repairApplication.getStatus() == 4) { + // 验收及报废 + if (repairApplication.getStatus() == 4 || repairApplication.getStatus() == 5) { repairApplication.setAcceptedBy(AuthUtil.getUserId()); repairApplication.setAcceptedName(AuthUtil.getUserName()); repairApplication.setAcceptedDate(new Date()); // 修改设备状态为关机 Instrument instrument = new Instrument(); instrument.setId(repairApplication.getInstrumentId()); - instrument.setInstrumentStatus("0"); + if (repairApplication.getStatus() == 4) { + instrument.setInstrumentStatus("0"); + } else { + instrument.setInstrumentStatus("3"); + } instrumentService.updateById(instrument); + // 报废 + if (repairApplication.getStatus() == 5) { + RepairApplication application = repairApplicationService.getById(repairApplication.getId()); + ScrapApplication scrapApplication = new ScrapApplication(); + scrapApplication.setInstrumentId(application.getInstrumentId()); + scrapApplication.setCode(application.getCode()); + scrapApplication.setType(application.getType()); + scrapApplication.setName(application.getName()); + scrapApplication.setEquipmentId(AuthUtil.getUserId()); + scrapApplication.setEquipmentName(AuthUtil.getUserName()); + scrapApplication.setCreateTime(new Date()); + scrapApplication.setModel(application.getVersion()); + scrapApplication.setStatus(0); + scrapApplicationService.save(scrapApplication); + } } return R.status(repairApplicationService.updateById(repairApplication)); } diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/ScrapApplicationController.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/ScrapApplicationController.java new file mode 100644 index 0000000..1cc9b02 --- /dev/null +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/ScrapApplicationController.java @@ -0,0 +1,104 @@ +package org.springblade.lims.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import io.swagger.annotations.Api; +import lombok.AllArgsConstructor; +import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.mp.support.Condition; +import org.springblade.core.mp.support.Query; +import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.api.R; +import org.springblade.lims.entry.Instrument; +import org.springblade.lims.entry.RepairApplication; +import org.springblade.lims.entry.ScrapApplication; +import org.springblade.lims.service.IInstrumentService; +import org.springblade.lims.service.IRepairApplicationService; +import org.springblade.lims.service.IScrapApplicationService; +import org.springblade.resource.enums.SysTypeEnum; +import org.springblade.resource.feign.IMessageClient; +import org.springblade.system.user.entity.User; +import org.springblade.system.user.feign.IUserClient; +import org.springframework.web.bind.annotation.*; + +import java.util.Date; +import java.util.List; + +/** + * @author swj + * @since 2022年6月1日19:49:10 + */ +@RestController +@AllArgsConstructor +@RequestMapping("/scrapApplication") +@Api(value = "", tags = "") +public class ScrapApplicationController extends BladeController { + + private final IScrapApplicationService scrapApplicationService; + + private final IMessageClient messageClient; + + private final IUserClient userClient; + + private final IInstrumentService instrumentService; + /** + * 分页 列表 + */ + @GetMapping("/list") + public R list(ScrapApplication scrapApplication, Query query) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + if (scrapApplication.getStatus() != null) { + wrapper.eq(ScrapApplication::getStatus, scrapApplication.getStatus()); + } + if (scrapApplication.getName() != null && !"".equals(scrapApplication.getName())) { + wrapper.and(qw -> qw + .like(ScrapApplication::getCode, scrapApplication.getName()).or() + .like(ScrapApplication::getName, scrapApplication.getName()).or() + .like(ScrapApplication::getType, scrapApplication.getName()) + ); + } + if (scrapApplication.getStartTime() != null && scrapApplication.getEndTime() != null) { + wrapper.between(ScrapApplication::getCreateTime, scrapApplication.getStartTime(), scrapApplication.getEndTime()); + } + wrapper.orderByDesc(ScrapApplication::getCreateTime); + IPage page = scrapApplicationService.page(Condition.getPage(query), wrapper); + return R.data(page); + } + + /** + * 修改 + */ + @PostMapping("/update") + public R update(@RequestBody ScrapApplication scrapApplication){ + // 确认 + if (scrapApplication.getStatus() == 1) { + // 发送提示消息 + messageClient.event(SysTypeEnum.INFORM.getValue(), "报修审核", + "您有新的报修申请单待审核,请及时处理", 1, 5, "1555122570980995073","/repair/proposer"); + scrapApplication.setApplyDeptUser(AuthUtil.getUserId()); + scrapApplication.setApplyDeptUserName(AuthUtil.getUserName()); + scrapApplication.setApplyDate(new Date()); + } + // 审核 + if (scrapApplication.getStatus() == 2) { + // 发送提示消息 + messageClient.event(SysTypeEnum.INFORM.getValue(), "报修审批", + "您有新的报修申请单待审批,请及时处理", 1, 5, "1552118581265973249","/repair/proposer"); + scrapApplication.setReviewDate(new Date()); + scrapApplication.setBusinessOfficeId(AuthUtil.getUserId()); + scrapApplication.setBusinessOfficeName(AuthUtil.getUserName()); + } + // 审批 + if (scrapApplication.getStatus() == 3) { + scrapApplication.setApprovalDate(new Date()); + scrapApplication.setCenterDirectorId(AuthUtil.getUserId()); + scrapApplication.setCenterDirectorName(AuthUtil.getUserName()); + // 修改设备状态为已报废 + Instrument instrument = new Instrument(); + instrument.setId(scrapApplication.getInstrumentId()); + instrument.setInstrumentStatus("4"); + instrumentService.updateById(instrument); + } + return R.status(scrapApplicationService.updateById(scrapApplication)); + } +} diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/mapper/ScrapApplicationMapper.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/mapper/ScrapApplicationMapper.java new file mode 100644 index 0000000..864f819 --- /dev/null +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/mapper/ScrapApplicationMapper.java @@ -0,0 +1,14 @@ + +package org.springblade.lims.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springblade.lims.entry.RepairApplication; +import org.springblade.lims.entry.ScrapApplication; + +/** + * @author swj + * @since 2022年6月2日15:47:39 + */ +public interface ScrapApplicationMapper extends BaseMapper { + +} diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/service/IScrapApplicationService.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/IScrapApplicationService.java new file mode 100644 index 0000000..31338b4 --- /dev/null +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/IScrapApplicationService.java @@ -0,0 +1,13 @@ + +package org.springblade.lims.service; + +import org.springblade.core.mp.base.BaseService; +import org.springblade.lims.entry.RepairApplication; +import org.springblade.lims.entry.ScrapApplication; + +/** + * @author swj + * @since 2022年6月1日19:50:34 + */ +public interface IScrapApplicationService extends BaseService { +} diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/EntrustServiceImpl.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/EntrustServiceImpl.java index 721e53d..5d049b9 100644 --- a/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/EntrustServiceImpl.java +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/EntrustServiceImpl.java @@ -1900,54 +1900,57 @@ public class EntrustServiceImpl extends BaseServiceImpl } if (list1.size() > 0) { - if (list1.size() % 3 == 0) { - for (int i = 0; i < list1.size() / 3; i++) { - Map map = new HashMap<>(); - map.put("num1", list1.get(i).getNum()); - map.put("value1", list1.get(i).getValue()); - map.put("result1", list1.get(i).getResult()); - - map.put("num2", list1.get(list1.size() / 3 + i).getNum()); - map.put("value2", list1.get(list1.size() / 3 + i).getValue()); - map.put("result2", list1.get(list1.size() / 3 + i).getResult()); - - map.put("num3", list1.get(list1.size() / 3 * 2 + i).getNum()); - map.put("value3", list1.get(list1.size() / 3 * 2 + i).getValue()); - map.put("result3", list1.get(list1.size() / 3 * 2 + i).getResult()); - resultList1.add(map); - } - } - else { - for (int i = 0; i < list1.size() / 3 + 1; i++) { - if (list1.size() % 3 == 1) { - + for (int j = 0; j < list1.size() / 90 + 1; j++) { + List list2 = new ArrayList<>(); + if (list1.size() % 3 == 0) { + for (int i = 0; i < list1.size() / 3; i++) { Map map = new HashMap<>(); map.put("num1", list1.get(i).getNum()); map.put("value1", list1.get(i).getValue()); map.put("result1", list1.get(i).getResult()); - if (i < list1.size() / 3) { + + map.put("num2", list1.get(list1.size() / 3 + i).getNum()); + map.put("value2", list1.get(list1.size() / 3 + i).getValue()); + map.put("result2", list1.get(list1.size() / 3 + i).getResult()); + + map.put("num3", list1.get(list1.size() / 3 * 2 + i).getNum()); + map.put("value3", list1.get(list1.size() / 3 * 2 + i).getValue()); + map.put("result3", list1.get(list1.size() / 3 * 2 + i).getResult()); + resultList1.add(map); + } + } + else { + for (int i = 0; i < list1.size() / 3 + 1; i++) { + if (list1.size() % 3 == 1) { + + Map map = new HashMap<>(); + map.put("num1", list1.get(i).getNum()); + map.put("value1", list1.get(i).getValue()); + map.put("result1", list1.get(i).getResult()); + if (i < list1.size() / 3) { + map.put("num2", list1.get(list1.size() / 3 + i + 1).getNum()); + map.put("value2", list1.get(list1.size() / 3 + i + 1).getValue()); + map.put("result2", list1.get(list1.size() / 3 + i + 1).getResult()); + map.put("num3", list1.get(list1.size() / 3 * 2 + i + 1).getNum()); + map.put("value3", list1.get(list1.size() / 3 * 2 + i + 1).getValue()); + map.put("result3", list1.get(list1.size() / 3 * 2 + i + 1).getResult()); + } + resultList1.add(map); + } else if (list1.size() % 3 == 2) { + Map map = new HashMap<>(); + map.put("num1", list1.get(i).getNum()); + map.put("value1", list1.get(i).getValue()); + map.put("result1", list1.get(i).getResult()); map.put("num2", list1.get(list1.size() / 3 + i + 1).getNum()); map.put("value2", list1.get(list1.size() / 3 + i + 1).getValue()); map.put("result2", list1.get(list1.size() / 3 + i + 1).getResult()); - map.put("num3", list1.get(list1.size() / 3 * 2 + i + 1).getNum()); - map.put("value3", list1.get(list1.size() / 3 * 2 + i + 1).getValue()); - map.put("result3", list1.get(list1.size() / 3 * 2 + i + 1).getResult()); - } - resultList1.add(map); - } else if (list1.size() % 3 == 2) { - Map map = new HashMap<>(); - map.put("num1", list1.get(i).getNum()); - map.put("value1", list1.get(i).getValue()); - map.put("result1", list1.get(i).getResult()); - map.put("num2", list1.get(list1.size() / 3 + i + 1).getNum()); - map.put("value2", list1.get(list1.size() / 3 + i + 1).getValue()); - map.put("result2", list1.get(list1.size() / 3 + i + 1).getResult()); - if (i < list1.size() / 3) { - map.put("num3", list1.get(list1.size() / 3 * 2 + i + 2).getNum()); - map.put("value3", list1.get(list1.size() / 3 * 2 + i + 2).getValue()); - map.put("result3", list1.get(list1.size() / 3 * 2 + i + 2).getResult()); + if (i < list1.size() / 3) { + map.put("num3", list1.get(list1.size() / 3 * 2 + i + 2).getNum()); + map.put("value3", list1.get(list1.size() / 3 * 2 + i + 2).getValue()); + map.put("result3", list1.get(list1.size() / 3 * 2 + i + 2).getResult()); + } + resultList1.add(map); } - resultList1.add(map); } } } @@ -3034,11 +3037,13 @@ public class EntrustServiceImpl extends BaseServiceImpl @Override public void repairPrint(String id, HttpServletResponse response) { String dateStamp = new java.text.SimpleDateFormat("yyyyMMddHHmmss").format(new Date()); - String srcPathName = "C://Users//AAA//Desktop//shuojin//" + dateStamp; - String outputFile = "C://Users//AAA//Desktop//shuojin//" + dateStamp + ".zip"; +// String srcPathName = "C://Users//AAA//Desktop//shuojin//" + dateStamp; + String srcPathName = "D://" + dateStamp; +// String outputFile = "C://Users//AAA//Desktop//shuojin//" + dateStamp + ".zip"; + String outputFile = "D://" + dateStamp + ".zip"; File file = new File(srcPathName); //如果文件夹不存在,创建文件夹 - if(!file.exists()){ + if (!file.exists()) { file.mkdir(); } XWPFDocument doc = null; @@ -3123,7 +3128,7 @@ public class EntrustServiceImpl extends BaseServiceImpl int length = 0; while ((length = stream.read(buff)) > 0) { - out.write(buff,0,length); + out.write(buff, 0, length); } stream.close(); out.close(); diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/ScrapApplicationServiceImpl.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/ScrapApplicationServiceImpl.java new file mode 100644 index 0000000..09cc52a --- /dev/null +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/ScrapApplicationServiceImpl.java @@ -0,0 +1,22 @@ + +package org.springblade.lims.service.impl; + +import lombok.AllArgsConstructor; +import org.springblade.core.mp.base.BaseServiceImpl; +import org.springblade.lims.entry.RepairApplication; +import org.springblade.lims.entry.ScrapApplication; +import org.springblade.lims.mapper.RepairApplicationMapper; +import org.springblade.lims.mapper.ScrapApplicationMapper; +import org.springblade.lims.service.IRepairApplicationService; +import org.springblade.lims.service.IScrapApplicationService; +import org.springframework.stereotype.Service; + +/** + * @author swj + * @since 2022年6月2日15:53:01 + */ +@Service +@AllArgsConstructor +public class ScrapApplicationServiceImpl extends BaseServiceImpl implements IScrapApplicationService { + +}