platformx-device-api/src/main/java/com/by4cloud/platformx/device/dto/ReceivingNoteQueryDTO.java
@@ -1,10 +1,15 @@ package com.by4cloud.platformx.device.dto; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @Data public class ReceivingNoteQueryDTO { @Schema(description = "验收单编号") private String releaseCode; @Schema(description = "合同名称") private String contractName; } platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Contract.java
@@ -107,6 +107,10 @@ @Column(columnDefinition = "datetime comment '填报时间'") private Date releaseDate; @Schema(description = "中标单ID") @Column(columnDefinition="bigint comment '中标单ID'") private Long winningLetterId; @Transient @TableField(exist = false) private List<ContractItem> contractItemList; platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ContractItem.java
@@ -33,5 +33,7 @@ @Column(columnDefinition="long comment '设备ID'") private Long deviceId; @Schema(description = "技术协议ID") @Column(columnDefinition="long comment '设备技术协议ID'") private Long technicalAgreementId; } platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceLeasingLedger.java
@@ -87,4 +87,13 @@ @Transient @TableField(exist = false) private List<DeviceLeasingLedgerItem> ledgerItemList; /** * 出租日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @Schema(description = "出租日期") @Column(columnDefinition="datetime comment '到货验收日期'") private Date deliveryDate; } platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceTechnicalAgreemnt.java
@@ -20,6 +20,13 @@ public class DeviceTechnicalAgreemnt extends BaseModel<DeviceTechnicalAgreemnt> { /** * 协议名称 */ @Schema(description = "协议名称") @Column(columnDefinition="VARCHAR(256) comment '协议名称'") private String agreementName; /** * 甲方 */ @Schema(description = "甲方") platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/PurchaseWinningLetterEntity.java
@@ -6,7 +6,10 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import org.hibernate.annotations.Table; import javax.persistence.Column; import javax.persistence.Entity; import java.time.LocalDateTime; /** @@ -16,122 +19,107 @@ * @date 2025-03-24 17:13:08 */ @Data @Entity @TableName("purchase_winning_letter") @EqualsAndHashCode(callSuper = true) @Schema(description = "中标通知书") @javax.persistence.Table(name = "purchase_winning_letter") @Table(appliesTo = "purchase_winning_letter", comment = "中标通知") public class PurchaseWinningLetterEntity extends BaseModel<PurchaseWinningLetterEntity> { /** * 中标通知书编码 */ @Schema(description="中标通知书编码") @Column(columnDefinition="varchar(100) comment '中标通知书编码'") private String winningCode; /** * 采购计划编号 */ @Schema(description="采购计划编号") @Column(columnDefinition="varchar(100) comment '采购计划编号'") private String purchasePlanCode; /** * 设备编码 */ @Schema(description="设备编码") @Column(columnDefinition="varchar(256) comment '设备编码'") private String deviceCode; /** * 设备名称 */ @Schema(description="设备名称") @Column(columnDefinition="varchar(256) comment '设备名称'") private String deviceName; /** * 规格型号 */ @Schema(description="规格型号") @Column(columnDefinition="varchar(256) comment '规格型号'") private String deviceModels; /** * 关键参数 */ @Schema(description="关键参数") @Column(columnDefinition="varchar(256) comment '关键参数'") private String keyParameter; /** * 到货月份 */ @Schema(description="到货月份") @Column(columnDefinition="int comment '到货月份'") private Integer arrivalMonth; /** * 数量 */ @Schema(description="数量") @Column(columnDefinition="int comment '数量'") private Integer quantity; /** * 单位 */ @Schema(description="单位") @Column(columnDefinition="varchar(32) comment '单位'") private String unit; /** * 中标单价 /分 */ @Schema(description="中标单价 /分") @Column(columnDefinition="DECIMAL(10,0) comment '中标单价 /分'") private Integer winningPrice; /** * 中标总额 /分 */ @Schema(description="中标总额 /分") @Column(columnDefinition="DECIMAL(10,0) comment '中标总额 /分'") private Integer totalWinningAmount; /** * 拟使用地点 */ @Schema(description="拟使用地点") @Column(columnDefinition="varchar(256) comment '拟使用地点'") private String locationUsed; /** * 中标厂家 */ @Schema(description="中标厂家") @Column(columnDefinition="varchar(100) comment '中标厂家'") private String winningBidder; /** * 申请人 * 中标厂家ID */ @TableField(fill = FieldFill.INSERT) @Schema(description="申请人") private String createBy; /** * 创建时间 */ @TableField(fill = FieldFill.INSERT) @Schema(description="创建时间") private LocalDateTime createTime; /** * 修改人 */ @TableField(fill = FieldFill.INSERT_UPDATE) @Schema(description="修改人") private String updateBy; /** * 修改时间 */ @TableField(fill = FieldFill.INSERT_UPDATE) @Schema(description="修改时间") private LocalDateTime updateTime; /** * delFlag */ @TableLogic @TableField(fill = FieldFill.INSERT) @Schema(description="delFlag") private String delFlag; @Schema(description="中标厂家") @Column(columnDefinition="bigint comment '使用公司'") private Long winningManufacturerId; } platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNote.java
@@ -69,7 +69,7 @@ * 来源类型 */ @Schema(description = "来源类型") @Column(columnDefinition="INTEGER comment '来源类型'") @Column(columnDefinition="INTEGER comment '来源类型 0 租赁 1 采购'") private String resourceType; /** platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/DeviceTechnicalAgreementPageVo.java
@@ -11,7 +11,7 @@ private Long id; private String contractName; private String agreementName; private String partya; platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/ReceivingNotePageVo.java
@@ -10,6 +10,14 @@ private Long id; /** * 合同 名称 */ private String contractName; /** * 验收单号 */ private String releaseCode; /** platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceManufacturerController.java
@@ -120,4 +120,13 @@ public List<DeviceManufacturer> export(DeviceManufacturer deviceManufacturer,Long[] ids) { return deviceManufacturerService.list(Wrappers.lambdaQuery(deviceManufacturer).in(ArrayUtil.isNotEmpty(ids), DeviceManufacturer::getId, ids)); } /** * 获取下拉列表 * @return */ @GetMapping("/getDropdownnList") public R<List<DeviceManufacturer>> getDropdownnList() { return R.ok(deviceManufacturerService.list()); } } platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceTechnicalAgreementController.java
@@ -10,6 +10,7 @@ import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.device.dto.DeviceTechnicalAgreemntQueryDTO; import com.by4cloud.platformx.device.entity.DeviceTechnicalAgreemnt; import com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity; import com.by4cloud.platformx.device.service.DeviceTechnicalAgreementService; import org.springframework.security.access.prepost.PreAuthorize; import com.by4cloud.platformx.common.excel.annotation.ResponseExcel; @@ -117,4 +118,13 @@ public List<DeviceTechnicalAgreemnt> export(DeviceTechnicalAgreemnt deviceTechnicalAgreement,Long[] ids) { return deviceTechnicalAgreementService.list(Wrappers.lambdaQuery(deviceTechnicalAgreement).in(ArrayUtil.isNotEmpty(ids), DeviceTechnicalAgreemnt::getId, ids)); } /** * 获取下拉列表 * @return */ @GetMapping("/getDropdownnList") public R<List<DeviceTechnicalAgreemnt>> getDropdownnList() { return R.ok(deviceTechnicalAgreementService.list()); } } platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/PurchaseWinningLetterController.java
@@ -10,6 +10,7 @@ import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.device.constant.MaxSizeContant; import com.by4cloud.platformx.device.entity.Contract; import com.by4cloud.platformx.device.entity.DeviceManufacturer; import com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity; import com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity; import com.by4cloud.platformx.device.service.JcMaxSizeService; @@ -125,4 +126,13 @@ public List<PurchaseWinningLetterEntity> export(PurchaseWinningLetterEntity purchaseWinningLetter,Long[] ids) { return purchaseWinningLetterService.list(Wrappers.lambdaQuery(purchaseWinningLetter).in(ArrayUtil.isNotEmpty(ids), PurchaseWinningLetterEntity::getId, ids)); } /** * 获取下拉列表 * @return */ @GetMapping("/getDropdownnList") public R<List<PurchaseWinningLetterEntity>> getDropdownnList() { return R.ok(purchaseWinningLetterService.list()); } } platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseTendrOrderServiceImpl.java
@@ -2,10 +2,12 @@ import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.device.constant.MaxSizeContant; import com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity; import com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity; import com.by4cloud.platformx.device.mapper.PurchaseTendrOrderMapper; import com.by4cloud.platformx.device.mapper.PurchaseWinningLetterMapper; import com.by4cloud.platformx.device.service.JcMaxSizeService; import com.by4cloud.platformx.device.service.PurchaseTendrOrderService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -23,12 +25,14 @@ public class PurchaseTendrOrderServiceImpl extends ServiceImpl<PurchaseTendrOrderMapper, PurchaseTendrOrderEntity> implements PurchaseTendrOrderService { private final PurchaseWinningLetterMapper purchaseWinningLetterMapper; private final JcMaxSizeService maxSizeService; @Override public boolean complete(Long id) { PurchaseTendrOrderEntity orderEntity = baseMapper.selectById(id); PurchaseWinningLetterEntity entity = BeanUtil.copyProperties(orderEntity, PurchaseWinningLetterEntity.class); entity.setWinningCode(maxSizeService.nextNo(MaxSizeContant.WINNING_CODE)); entity.setWinningPrice(orderEntity.getEstimatePrice()); entity.setTotalWinningAmount(orderEntity.getTotalPlanndAmount()); purchaseWinningLetterMapper.insert(entity); platformx-device-biz/src/main/resources/mapper/DeviceTechnicalAgreementMapper.xml
@@ -29,7 +29,7 @@ <select id="page" resultType="com.by4cloud.platformx.device.entity.vo.DeviceTechnicalAgreementPageVo"> select dta.id, c.name contractName, dta.agreement_name, dta.partya , dta.partyb , dta.partyc , @@ -38,7 +38,6 @@ dta.device_code from device_technical_agreement dta join contract c on dta.contract_id = c.id join device d on d.id = dta.device_id where dta.del_flag = '0' platformx-device-biz/src/main/resources/mapper/ReceivingNoteMapper.xml
@@ -25,18 +25,24 @@ rn.release_date , rn.release_code, dm.manufacturer_name, sd.name deptName sd.name deptName, c.name contractName from receiving_note rn join device_manufacturer dm on rn.manufacturer_id = dm.id join platformxx_boot.sys_dept sd on rn.dept_id = sd.dept_id join contract c on c.id = rn.contract_id where rn.del_flag = '0' <if test="queryDTO.releaseCode != null and queryDTO.releaseCode !=''"> and rn.release_code like CONCAT('%', #{queryDTO.releaseCode}, '%') </if> <if test="queryDTO.contractName != null and queryDTO.contractName !=''"> and c.name like CONCAT('%', #{queryDTO.contractName}, '%') </if> order by rn.create_time desc