From 0989ec1e6b465141f99ed67e40fa2a0b928dce94 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期三, 29 四月 2026 16:54:51 +0800
Subject: [PATCH] feat(production): 新增生产核算和生产工单功能模块 - 添加生产核算控制器、服务接口及实现类 - 实现生产核算分页查询和工人生产工资信息查询功能 - 添加生产工单控制器、服务接口及实现类 - 实现生产工单的增删改查和状态统计功能 - 集成工单流转卡下载和二维码生成功能 - 添加工单相关的数据传输对象和值对象 - 实现工单与用户关联的分配功能 - 完善工单附件图片处理和展示功能
---
src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java | 63 +++++++++++++++++--------------
1 files changed, 34 insertions(+), 29 deletions(-)
diff --git a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
index 0f90758..f4b807d 100644
--- a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
+++ b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java
@@ -2,67 +2,67 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.device.dto.DeviceLedgerDto;
+import com.ruoyi.device.execl.DeviceLedgerExeclDto;
+import com.ruoyi.device.mapper.DeviceLedgerMapper;
+import com.ruoyi.device.mapper.DeviceMaintenanceMapper;
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.device.pojo.DeviceMaintenance;
import com.ruoyi.device.service.IDeviceLedgerService;
-import com.ruoyi.device.service.IDeviceMaintenanceService;
import com.ruoyi.framework.aspectj.lang.annotation.Anonymous;
import com.ruoyi.framework.web.domain.AjaxResult;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiModelProperty;
-import org.apache.commons.lang3.ArrayUtils;
-import org.ehcache.spi.service.MaintainableService;
-import org.springframework.beans.factory.annotation.Autowired;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
-import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.List;
-@Api(tags = "璁惧鍙拌处绠$悊")
+@Tag(name = "璁惧鍙拌处绠$悊")
@RequestMapping("/device/ledger")
@RestController
+@AllArgsConstructor
public class DeviceLedgerController {
- @Autowired
private IDeviceLedgerService deviceLedgerService;
+ private DeviceLedgerMapper deviceLedgerMapper;
+ private DeviceMaintenanceMapper deviceMaintenanceMapper;
- @Autowired
- private IDeviceMaintenanceService deviceMaintenanceService;
- @ApiModelProperty("璁惧鍙拌处鍒楄〃")
+
+ @Operation(summary = "璁惧鍙拌处鍒楄〃")
@GetMapping("/page")
public AjaxResult page(Page page , DeviceLedgerDto deviceLedger) {
return AjaxResult.success(deviceLedgerService.queryPage(page,deviceLedger));
}
@PostMapping()
- @ApiModelProperty("娣诲姞璁惧鍙拌处")
+ @Operation(summary = "娣诲姞璁惧鍙拌处")
public AjaxResult add(@RequestBody DeviceLedger deviceLedger) {
return deviceLedgerService.saveDeviceLedger(deviceLedger);
}
- @ApiModelProperty("鏍规嵁id鏌ヨ璁惧鍙拌处")
+ @Operation(summary = "鏍规嵁id鏌ヨ璁惧鍙拌处")
@GetMapping("/{id}")
public AjaxResult detail(@PathVariable Long id) {
return AjaxResult.success(deviceLedgerService.getById(id));
}
@PutMapping ()
- @ApiModelProperty("淇敼璁惧鍙拌处")
+ @Operation(summary = "淇敼璁惧鍙拌处")
public AjaxResult update(@RequestBody DeviceLedger deviceLedger) {
return deviceLedgerService.updateDeviceLedger(deviceLedger);
}
@DeleteMapping("/{ids}")
- @ApiModelProperty("鍒犻櫎璁惧鍙拌处")
+ @Operation(summary = "鍒犻櫎璁惧鍙拌处")
public AjaxResult delete(@PathVariable("ids") ArrayList<Long> ids) {
boolean b = deviceLedgerService.removeBatchByIds(ids);
if (!b) {
@@ -72,13 +72,20 @@
}
@PostMapping("export")
- @ApiModelProperty("瀵煎嚭璁惧鍙拌处")
+ @Operation(summary = "瀵煎嚭璁惧鍙拌处")
public void export(HttpServletResponse response, Long[] ids) {
deviceLedgerService.export(response, ids);
}
- @PostMapping("import")
- @ApiModelProperty("瀵煎叆璁惧鍙拌处")
+ @Operation(summary = "涓嬭浇妯℃澘")
+ @PostMapping("/downloadTemplate")
+ public void downloadTemplate(HttpServletResponse response) {
+ ExcelUtil<DeviceLedgerExeclDto> util = new ExcelUtil<>(DeviceLedgerExeclDto.class);
+ util.importTemplateExcel(response, "璁惧瀵煎叆妯℃澘");
+ }
+
+ @PostMapping("/import")
+ @Operation(summary = "瀵煎叆璁惧鍙拌处")
public AjaxResult importData(MultipartFile file) throws IOException {
Boolean b = deviceLedgerService.importData(file);
if (b) {
@@ -89,24 +96,22 @@
@GetMapping("getDeviceLedger")
- @ApiModelProperty("鑾峰彇璁惧鍙拌处")
+ @Operation(summary = "鑾峰彇璁惧鍙拌处")
public AjaxResult getDeviceLedger( ) {
return AjaxResult.success(deviceLedgerService.list(new QueryWrapper<DeviceLedger>().lambda()
.select(DeviceLedger::getId, DeviceLedger::getDeviceName,DeviceLedger::getDeviceModel)));
}
@GetMapping("scanDevice")
- @ApiModelProperty("鑾峰彇璁惧鍙拌处")
+ @Operation(summary = "鑾峰彇璁惧鍙拌处")
@Anonymous
public AjaxResult scanDevice(Long id) {
- List<DeviceMaintenance> list = deviceMaintenanceService.list(Wrappers.<DeviceMaintenance>lambdaQuery()
- .eq(DeviceMaintenance::getDeviceLedgerId, id)
- .orderByDesc(DeviceMaintenance::getMaintenanceActuallyTime));
- DeviceLedger deviceLedger = deviceLedgerService.getById(id);
+ List<DeviceMaintenance> list = deviceMaintenanceMapper.list1(id);
+ DeviceLedger deviceLedger = deviceLedgerMapper.selectById1(id);
if (list.size()>0){
- deviceLedger.setUpdateTime(list.get(0).getMaintenanceActuallyTime());
- deviceLedger.setCreateTime(deviceLedger.getUpdateTime().plusMonths(1));
+ deviceLedger.setUpdateTime(list.get(0).getMaintenanceActuallyTime());//鏈�鍚庣淮鎶ゆ椂闂�
}
+ deviceLedger.setCreateTime(deviceLedger.getUpdateTime().plusMonths(1));//涓嬫缁存姢鏃堕棿
return AjaxResult.success(deviceLedger);
}
}
--
Gitblit v1.9.3