mitao
3 天以前 67e7b5fc821a35f013e7a46a5957f4c6394d236d
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/AssetRepairRequestController.java
@@ -8,6 +8,7 @@
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.constants.ApprovalApplicationCodePrefix;
import com.ruoyi.system.dto.AddAssetRepairRequestDTO;
import com.ruoyi.system.model.AssetMain;
import com.ruoyi.system.model.AssetRepairRequest;
@@ -37,6 +38,8 @@
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -120,7 +123,7 @@
    @ApiOperation(value = "资产报修新增")
    @PostMapping(value = "/add")
    public R add(@RequestBody AddAssetRepairRequestDTO dto) {
        dto.setRepairNo("1");
        dto.setRepairNo(generateRepairNo());
        Long userId = tokenService.getLoginUser().getUserId();
        dto.setReporterId(userId.intValue());
        assetRepairRequestService.save(dto);
@@ -131,6 +134,27 @@
        return R.ok();
    }
    /**
     * 生成维修单号
     * 格式:WX + 日期 + 4位序号
     */
    private String generateRepairNo() {
        String dateStr = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"));
        // 查询当天已生成的维修单号数量
        Long count = assetRepairRequestService.lambdaQuery()
                .likeRight(AssetRepairRequest::getRepairNo, ApprovalApplicationCodePrefix.ASSET_REPAIR_REQUEST)
                .ge(AssetRepairRequest::getCreateTime, LocalDate.now().atStartOfDay())
                .lt(AssetRepairRequest::getCreateTime, LocalDate.now().plusDays(1).atStartOfDay())
                .count();
        // 生成4位序号,从0001开始
        int sequence = (count != null ? count.intValue() : 0) + 1;
        String sequenceStr = String.format("%04d", sequence);
        return ApprovalApplicationCodePrefix.ASSET_REPAIR_REQUEST + dateStr + sequenceStr;
    }
    @Log(title = "资产报修-编辑", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "资产报修编辑")
    @PostMapping(value = "/update")