From fa59bd5bf64f818111b26744a3b51b936ab6f389 Mon Sep 17 00:00:00 2001 From: liyong <18434998025@163.com> Date: 星期二, 01 七月 2025 09:50:00 +0800 Subject: [PATCH] 2025-07-01 bug修改 --- src/main/java/com/ruoyi/purchase/service/IPaymentRegistrationService.java | 2 src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java | 2 src/main/java/com/ruoyi/purchase/pojo/ProductRecord.java | 5 + src/main/resources/mapper/device/DeviceMaintenanceMapper.xml | 16 +++-- src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java | 14 +++- src/main/java/com/ruoyi/device/pojo/DeviceRepair.java | 6 + src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java | 3 src/main/java/com/ruoyi/purchase/controller/PaymentRegistrationController.java | 9 +++ src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java | 3 src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java | 18 ++++++ src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java | 21 ++++++ src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java | 2 src/main/java/com/ruoyi/device/execl/DeviceLedgerExeclDto.java | 16 +++-- src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java | 8 +- src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java | 19 +++-- doc/add.sql | 3 + src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java | 10 ++- 17 files changed, 117 insertions(+), 40 deletions(-) diff --git a/doc/add.sql b/doc/add.sql index 6a41119..2d53f4a 100644 --- a/doc/add.sql +++ b/doc/add.sql @@ -71,3 +71,6 @@ alter table ticket_registration add enter_date timestamp null; +alter table product_record + add 鍒梍name int null comment 'sale_ledger_projectI_id'; + diff --git a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java index b3f283a..abac6a7 100644 --- a/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java +++ b/src/main/java/com/ruoyi/device/controller/DeviceLedgerController.java @@ -15,6 +15,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; @@ -69,7 +70,7 @@ @PostMapping("import") @ApiModelProperty("瀵煎叆璁惧鍙拌处") - public AjaxResult importData(MultipartFile file) { + public AjaxResult importData(MultipartFile file) throws IOException { Boolean b = deviceLedgerService.importData(file); if (b) { return AjaxResult.success("瀵煎叆鎴愬姛"); diff --git a/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java b/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java index acbb8a5..e3502ba 100644 --- a/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java +++ b/src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java @@ -9,14 +9,16 @@ import com.ruoyi.device.service.IDeviceMaintenanceService; import com.ruoyi.device.service.IDeviceRepairService; import com.ruoyi.framework.web.domain.AjaxResult; +import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; +import java.util.Arrays; - +@Api(tags = "璁惧淇濆吇") @RestController @RequestMapping("/device/maintenance") public class DeviceMaintenanceController { @@ -33,8 +35,8 @@ @PostMapping() @ApiModelProperty("娣诲姞璁惧淇濆吇") - public AjaxResult add(@RequestBody DeviceMaintenance deviceRepair) { - return deviceMaintenanceService.saveDeviceRepair(deviceRepair); + public AjaxResult add(@RequestBody DeviceMaintenance deviceMaintenance) { + return deviceMaintenanceService.saveDeviceRepair(deviceMaintenance); } @ApiModelProperty("鏍规嵁id鏌ヨ璁惧淇濆吇") @@ -46,20 +48,21 @@ @PutMapping () @ApiModelProperty("淇敼璁惧淇濆吇") public AjaxResult update(@RequestBody DeviceMaintenance deviceMaintenance) { - return deviceMaintenanceService.updateDeviceRepair(deviceMaintenance); + return deviceMaintenanceService.updateDeviceDeviceMaintenance(deviceMaintenance); } @PostMapping ("maintenance") @ApiModelProperty("淇敼璁惧淇濆吇") public AjaxResult maintenance(@RequestBody DeviceMaintenance deviceMaintenance) { - return deviceMaintenanceService.updateDeviceRepair(deviceMaintenance); + deviceMaintenance.setStatus(1); + return deviceMaintenanceService.updateDeviceDeviceMaintenance(deviceMaintenance); } - @DeleteMapping("/{id}") + @DeleteMapping("/{ida}") @ApiModelProperty("鍒犻櫎璁惧淇濆吇") - public AjaxResult delete(@PathVariable ArrayList<Long> ids) { - boolean b = deviceMaintenanceService.removeBatchByIds(ids); + public AjaxResult delete(@PathVariable("ids") Long[] ids) { + boolean b = deviceMaintenanceService.removeBatchByIds(Arrays.asList(ids)); if (!b) { return AjaxResult.error("鍒犻櫎澶辫触"); } diff --git a/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java b/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java index dffcdd5..2714544 100644 --- a/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java +++ b/src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java @@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.time.LocalDateTime; import java.util.Date; @Data @@ -16,7 +17,7 @@ private Long id; @ApiModelProperty("璁惧鍙拌处id") - private String deviceLedgerId; + private Long deviceLedgerId; @ApiModelProperty("璁惧鍚嶇О") private String deviceName; @@ -25,13 +26,13 @@ private String deviceModel; @ApiModelProperty("璁″垝淇濆吇鏃ユ湡") - private Date maintenancePlanTime; + private LocalDateTime maintenancePlanTime; @ApiModelProperty("瀹為檯淇濆吇浜�") private String maintenanceActuallyName; @ApiModelProperty("瀹為檯淇濆吇鏃ユ湡") - private Date maintenanceActuallyTime; + private LocalDateTime maintenanceActuallyTime; @ApiModelProperty("淇濆吇缁撴灉 0 缁翠慨 1 瀹屽ソ") private Integer maintenanceResult; @@ -41,11 +42,11 @@ @ApiModelProperty("鍒涘缓鏃堕棿") @TableField(fill = FieldFill.INSERT) - private Date createTime; + private LocalDateTime createTime; @ApiModelProperty("鏇存柊鏃堕棿") @TableField(fill = FieldFill.UPDATE) - private Date updateTime; + private LocalDateTime updateTime; @ApiModelProperty("鍒涘缓浜�") @TableField(fill = FieldFill.INSERT) @@ -58,4 +59,7 @@ @ApiModelProperty("绉熸埛id") @TableField(fill = FieldFill.INSERT) private Long tenantId; + + @ApiModelProperty("鍒涘缓浜哄悕绉�") + private String createUserName; } diff --git a/src/main/java/com/ruoyi/device/execl/DeviceLedgerExeclDto.java b/src/main/java/com/ruoyi/device/execl/DeviceLedgerExeclDto.java index 576bef0..09c5f40 100644 --- a/src/main/java/com/ruoyi/device/execl/DeviceLedgerExeclDto.java +++ b/src/main/java/com/ruoyi/device/execl/DeviceLedgerExeclDto.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.time.LocalDateTime; @@ -65,13 +66,14 @@ */ @Excel(name = "涓嶅惈绋庢�讳环",sort = 9) private BigDecimal unTaxIncludingPriceTotal; - - /** - * 褰曞叆鏃堕棿 - * - */ - @Excel(name = "褰曞叆鏃堕棿",sort = 10) - private LocalDateTime createTime; +// +// /** +// * 褰曞叆鏃堕棿 +// * +// */ +// @Excel(name = "褰曞叆鏃堕棿",sort = 10) +// @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") +// private LocalDateTime createTime; diff --git a/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java b/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java index 431188d..890d61f 100644 --- a/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java +++ b/src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java @@ -20,16 +20,20 @@ private Long id; @ApiModelProperty("璁惧鍙拌处id") - private String deviceLedgerId; + private Long deviceLedgerId; @ApiModelProperty("璁″垝淇濆吇鏃ユ湡") - private Date maintenancePlanTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime maintenancePlanTime; @ApiModelProperty("瀹為檯淇濆吇浜�") private String maintenanceActuallyName; @ApiModelProperty("瀹為檯淇濆吇鏃ユ湡") - private Date maintenanceActuallyTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime maintenanceActuallyTime; @ApiModelProperty("淇濆吇缁撴灉 0 缁翠慨 1 瀹屽ソ") private Integer maintenanceResult; diff --git a/src/main/java/com/ruoyi/device/pojo/DeviceRepair.java b/src/main/java/com/ruoyi/device/pojo/DeviceRepair.java index b493cd4..ebc2dea 100644 --- a/src/main/java/com/ruoyi/device/pojo/DeviceRepair.java +++ b/src/main/java/com/ruoyi/device/pojo/DeviceRepair.java @@ -23,7 +23,7 @@ private Long id; @ApiModelProperty("璁惧鍙拌处id") - private String deviceLedgerId; + private Long deviceLedgerId; @ApiModelProperty("鎶ヤ慨鏃堕棿") private Date repairTime; @@ -38,7 +38,9 @@ private String maintenanceName; @ApiModelProperty("缁翠慨鏃堕棿") - private Date maintenanceTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime maintenanceTime; @ApiModelProperty("缁翠慨缁撴灉") private String maintenanceResult; diff --git a/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java b/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java index a457ca9..22ec2d2 100644 --- a/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java +++ b/src/main/java/com/ruoyi/device/service/IDeviceLedgerService.java @@ -9,6 +9,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.ArrayList; public interface IDeviceLedgerService extends IService<DeviceLedger> { @@ -20,5 +21,5 @@ void export(HttpServletResponse response, Long[] ids); - Boolean importData(MultipartFile file); + Boolean importData(MultipartFile file) throws IOException; } diff --git a/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java b/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java index a92a097..82db913 100644 --- a/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java +++ b/src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java @@ -15,7 +15,7 @@ AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance); - AjaxResult updateDeviceRepair(DeviceMaintenance deviceMaintenance); + AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance); void export(HttpServletResponse response, Long[] ids); diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java index e8405b4..913156c 100644 --- a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java +++ b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.bean.BeanUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.device.dto.DeviceLedgerDto; @@ -11,6 +12,7 @@ import com.ruoyi.device.pojo.DeviceLedger; import com.ruoyi.device.service.IDeviceLedgerService; import com.ruoyi.framework.web.domain.AjaxResult; +import com.ruoyi.project.system.domain.SysUser; import com.ruoyi.project.system.mapper.SysUserMapper; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -19,6 +21,7 @@ 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; @@ -91,7 +94,21 @@ } @Override - public Boolean importData(MultipartFile file) { - return null; + public Boolean importData(MultipartFile file) throws IOException { + ExcelUtil<DeviceLedgerExeclDto> util = new ExcelUtil<DeviceLedgerExeclDto>(DeviceLedgerExeclDto.class); + List<DeviceLedgerExeclDto> userList = util.importExcel(file.getInputStream()); + userList.forEach(c -> { + DeviceLedger deviceLedger = new DeviceLedger(); + SysUser sysUser = sysUserMapper.selectUserByUserName(c.getCreateUser()); + if (sysUser!=null) { + deviceLedger.setCreateUser(sysUser.getUserId().intValue()); + }else { + deviceLedger.setCreateUser(SecurityUtils.getUserId().intValue()); + } + BeanUtils.copyProperties(c,deviceLedger); + deviceLedgerMapper.insert(deviceLedger); + }); + + return true; } } diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java index b59d466..9c92254 100644 --- a/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java +++ b/src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java @@ -36,8 +36,8 @@ } @Override - public AjaxResult saveDeviceRepair(DeviceMaintenance deviceRepair) { - boolean save = this.save(deviceRepair); + public AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance) { + boolean save = this.save(deviceMaintenance); if (save){ return AjaxResult.success(); } @@ -45,8 +45,8 @@ } @Override - public AjaxResult updateDeviceRepair(DeviceMaintenance deviceRepair) { - if (this.updateById(deviceRepair)) { + public AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance) { + if (this.updateById(deviceMaintenance)) { return AjaxResult.success(); } return AjaxResult.error(); diff --git a/src/main/java/com/ruoyi/purchase/controller/PaymentRegistrationController.java b/src/main/java/com/ruoyi/purchase/controller/PaymentRegistrationController.java index 2dcbc80..93bca78 100644 --- a/src/main/java/com/ruoyi/purchase/controller/PaymentRegistrationController.java +++ b/src/main/java/com/ruoyi/purchase/controller/PaymentRegistrationController.java @@ -89,6 +89,15 @@ } /** + * 鍒犻櫎浠樻鐧昏 + */ + @Log(title = "浠樻鐧昏", businessType = BusinessType.DELETE) + @DeleteMapping("/delete") + public AjaxResult delete(@RequestBody Long[] ids) { + return toAjax(paymentRegistrationService.delete(ids)); + } + + /** * 鑾峰彇浠樻鐧昏璇︾粏淇℃伅 */ @GetMapping(value = "/byPurchaseId/{id}") diff --git a/src/main/java/com/ruoyi/purchase/pojo/ProductRecord.java b/src/main/java/com/ruoyi/purchase/pojo/ProductRecord.java index eda285a..085a0b2 100644 --- a/src/main/java/com/ruoyi/purchase/pojo/ProductRecord.java +++ b/src/main/java/com/ruoyi/purchase/pojo/ProductRecord.java @@ -35,6 +35,11 @@ private Long purchaseLedgerId; /** + * 浜у搧id + */ + private Long saleLedgerProjectId; + + /** * 浜у搧澶х被 */ private String productCategory; diff --git a/src/main/java/com/ruoyi/purchase/service/IPaymentRegistrationService.java b/src/main/java/com/ruoyi/purchase/service/IPaymentRegistrationService.java index 09fe808..9001e16 100644 --- a/src/main/java/com/ruoyi/purchase/service/IPaymentRegistrationService.java +++ b/src/main/java/com/ruoyi/purchase/service/IPaymentRegistrationService.java @@ -95,4 +95,6 @@ * @return 浠樻鐧昏闆嗗悎 */ IPage<PaymentRegistrationDto> paymentHistoryListPage(Page page, PaymentRegistrationDto paymentRegistrationDto); + + Boolean delete(Long[] ids); } diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java index 2bdf7d2..dad32cb 100644 --- a/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java +++ b/src/main/java/com/ruoyi/purchase/service/impl/PaymentRegistrationServiceImpl.java @@ -431,6 +431,24 @@ return paymentRegistrationMapper.paymentHistoryListPage(page, paymentRegistrationDto); } + @Override + public Boolean delete(Long[] ids) { + for (Long id : ids) { + List<ProductRecord> productRecords = productRecordMapper.selectList(new QueryWrapper<ProductRecord>().lambda().eq(ProductRecord::getTicketRegistrationId, id)); + for (ProductRecord productRecord : productRecords) { + SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectById(productRecord.getSaleLedgerProjectId()); + salesLedgerProduct.setTicketsNum(salesLedgerProduct.getTicketsNum().subtract(productRecord.getTicketsNum())); + salesLedgerProduct.setTicketsAmount(salesLedgerProduct.getTicketsAmount().subtract(productRecord.getTicketsAmount())); + salesLedgerProduct.setFutureTickets(salesLedgerProduct.getFutureTickets().add(productRecord.getTicketsNum())); + salesLedgerProduct.setFutureTicketsAmount(salesLedgerProduct.getFutureTicketsAmount().add(productRecord.getTicketsAmount())); + salesLedgerProductMapper.updateById(salesLedgerProduct); + } + ticketRegistrationMapper.delete(new QueryWrapper<TicketRegistration>().lambda().eq(TicketRegistration::getId, id)); + productRecordMapper.delete(new QueryWrapper<ProductRecord>().lambda().eq(ProductRecord::getTicketRegistrationId, id)); + } + return true; + } + // 鎵归噺鏌ヨ閲囪喘鍙拌处锛堝綋鏈堬級 private Map<Long, List<PurchaseLedger>> batchQueryPurchaseLedgers(List<Long> supplierIds, LocalDate startDate, LocalDate endDate) { LambdaQueryWrapper<PurchaseLedger> query = new LambdaQueryWrapper<>(); diff --git a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java index 99dd081..966e361 100644 --- a/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java +++ b/src/main/java/com/ruoyi/purchase/service/impl/TicketRegistrationServiceImpl.java @@ -152,10 +152,12 @@ if (CollectionUtils.isNotEmpty(salesLedgerProducts)) { for (SalesLedgerProduct salesLedgerProduct : salesLedgerProducts) { ProductRecord productRecord = new ProductRecord(); + productRecord.setTicketRegistrationId(ticketRegistration.getId()); productRecord.setPurchaseLedgerId(ticketRegistrationDto.getPurchaseLedgerId()); productRecord.setCreatedAt(DateUtils.getNowDate()); BeanUtils.copyProperties(salesLedgerProduct, productRecord); + productRecord.setSaleLedgerProjectId(salesLedgerProduct.getId()); productRecord.setId(null); productRecord.setType("2"); productRecordMapper.insert(productRecord); diff --git a/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml b/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml index 9a6e711..2529b0a 100644 --- a/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml +++ b/src/main/resources/mapper/device/DeviceMaintenanceMapper.xml @@ -8,24 +8,28 @@ <select id="queryPage" resultType="com.ruoyi.device.dto.DeviceMaintenanceDto"> select dm.*, dl.device_name, - dl.device_model + dl.device_model, + su.user_name as create_user_name from device_maintenance dm left join device_ledger dl on dm.device_ledger_id = dl.id + left join sys_user su on dm.create_user = su.user_id <where> - <if test="deviceRepairDto.deviceName != null"> - and dl.device_name like concat('%',#{deviceRepairDto.deviceName},'%') + <if test="deviceMaintenanceDto.deviceName != null"> + and dl.device_name like concat('%',#{deviceMaintenanceDto.deviceName},'%') </if> - <if test="deviceRepairDto.deviceModel != null"> - and dl.device_model like concat('%',#{deviceRepairDto.deviceModel},'%') + <if test="deviceMaintenanceDto.deviceModel != null"> + and dl.device_model like concat('%',#{deviceMaintenanceDto.deviceModel},'%') </if> </where> </select> <select id="detailById" resultType="com.ruoyi.device.dto.DeviceMaintenanceDto"> select dm.*, dl.device_name, - dl.device_model + dl.device_model, + su.user_name as create_user_name from device_maintenance dm left join device_ledger dl on dm.device_ledger_id = dl.id + left join sys_user su on dm.create_user = su.user_id where dm.id = #{id} </select> -- Gitblit v1.9.3