From ffae43733ed6656d61ca5e129883eb738a93f9f6 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期一, 24 三月 2025 17:29:24 +0800
Subject: [PATCH] 招标采购 中标通知书生成代码提交
---
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/entity/PurchaseWinningLetterEntity.java | 143 +++++++++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseTendrOrderMapper.java | 12 +
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseTendrOrderServiceImpl.java | 27 ++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/resources/mapper/PurchaseWinningLetterMapper.xml | 27 ++
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/PurchaseTendrOrderEntity.java | 137 +++++++++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseWinningLetterMapper.java | 11
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/PurchaseTendrOrderController.java | 133 +++++++++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseWinningLetterServiceImpl.java | 16 +
platformx-device-biz/src/main/resources/mapper/PurchaseTendrOrderMapper.xml | 26 ++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/PurchaseWinningLetterService.java | 8
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/controller/PurchaseWinningLetterController.java | 119 +++++++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/PurchaseTendrOrderService.java | 9
12 files changed, 668 insertions(+), 0 deletions(-)
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/PurchaseTendrOrderEntity.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/PurchaseTendrOrderEntity.java
new file mode 100644
index 0000000..8c2a1a5
--- /dev/null
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/PurchaseTendrOrderEntity.java
@@ -0,0 +1,137 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.time.LocalDateTime;
+
+/**
+ * 鎷涙爣閲囪喘鍗�
+ *
+ * @author pig
+ * @date 2025-03-24 15:45:03
+ */
+@Data
+@TableName("purchase_tendr_order")
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "鎷涙爣閲囪喘鍗�")
+public class PurchaseTendrOrderEntity extends Model<PurchaseTendrOrderEntity> {
+
+
+ /**
+ * id
+ */
+ @TableId(type = IdType.ASSIGN_ID)
+ @Schema(description="id")
+ private Long id;
+
+ /**
+ * 閲囪喘璁″垝缂栧彿
+ */
+ @Schema(description="閲囪喘璁″垝缂栧彿")
+ private String purchasePlanCode;
+
+ /**
+ * 璁惧缂栫爜
+ */
+ @Schema(description="璁惧缂栫爜")
+ private String deviceCode;
+
+ /**
+ * 璁惧鍚嶇О
+ */
+ @Schema(description="璁惧鍚嶇О")
+ private String deviceName;
+
+ /**
+ * 瑙勬牸鍨嬪彿
+ */
+ @Schema(description="瑙勬牸鍨嬪彿")
+ private String deviceModels;
+
+ /**
+ * 鍏抽敭鍙傛暟
+ */
+ @Schema(description="鍏抽敭鍙傛暟")
+ private String keyParameter;
+
+ /**
+ * 鍒拌揣鏈堜唤
+ */
+ @Schema(description="鍒拌揣鏈堜唤")
+ private Integer arrivalMonth;
+
+ /**
+ * 鏁伴噺
+ */
+ @Schema(description="鏁伴噺")
+ private Integer quantity;
+
+ /**
+ * 鍗曚綅
+ */
+ @Schema(description="鍗曚綅")
+ private String unit;
+
+ /**
+ * 棰勪及鍗曚环 /鍒�
+ */
+ @Schema(description="棰勪及鍗曚环 /鍒�")
+ private Integer estimatePrice;
+
+ /**
+ * 璁″垝鎬婚 /鍒�
+ */
+ @Schema(description="璁″垝鎬婚 /鍒�")
+ private Integer totalPlanndAmount;
+
+ /**
+ * 鎷熶娇鐢ㄥ湴鐐�
+ */
+ @Schema(description="鎷熶娇鐢ㄥ湴鐐�")
+ private String locationUsed;
+
+ /**
+ * 鐘舵��
+ */
+ @Schema(description="鐘舵��")
+ private String status;
+
+ /**
+ * 鐢宠浜�
+ */
+ @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;
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/PurchaseTendrOrderController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/PurchaseTendrOrderController.java
new file mode 100644
index 0000000..e98d976
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/PurchaseTendrOrderController.java
@@ -0,0 +1,133 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.service.PurchaseTendrOrderService;
+import com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity;
+import com.by4cloud.platformx.device.service.PurchaseTendrOrderService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 鎷涙爣閲囪喘鍗�
+ *
+ * @author pig
+ * @date 2025-03-24 15:45:03
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/purchaseTendrOrder" )
+@Tag(description = "purchaseTendrOrder" , name = "鎷涙爣閲囪喘鍗曠鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class PurchaseTendrOrderController {
+
+ private final PurchaseTendrOrderService purchaseTendrOrderService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param purchaseTendrOrder 鎷涙爣閲囪喘鍗�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ @PreAuthorize("@pms.hasPermission('platformx_purchaseTendrOrder_view')" )
+ public R getPurchaseTendrOrderPage(@ParameterObject Page page, @ParameterObject PurchaseTendrOrderEntity purchaseTendrOrder) {
+ LambdaQueryWrapper<PurchaseTendrOrderEntity> wrapper = Wrappers.lambdaQuery();
+ return R.ok(purchaseTendrOrderService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ鎷涙爣閲囪喘鍗�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ @PreAuthorize("@pms.hasPermission('platformx_purchaseTendrOrder_view')" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(purchaseTendrOrderService.getById(id));
+ }
+
+ /**
+ * 鏂板鎷涙爣閲囪喘鍗�
+ * @param purchaseTendrOrder 鎷涙爣閲囪喘鍗�
+ * @return R
+ */
+ @Operation(summary = "鏂板鎷涙爣閲囪喘鍗�" , description = "鏂板鎷涙爣閲囪喘鍗�" )
+ @SysLog("鏂板鎷涙爣閲囪喘鍗�" )
+ @PostMapping
+ @PreAuthorize("@pms.hasPermission('platformx_purchaseTendrOrder_add')" )
+ public R save(@RequestBody PurchaseTendrOrderEntity purchaseTendrOrder) {
+ return R.ok(purchaseTendrOrderService.save(purchaseTendrOrder));
+ }
+
+ /**
+ * 淇敼鎷涙爣閲囪喘鍗�
+ * @param purchaseTendrOrder 鎷涙爣閲囪喘鍗�
+ * @return R
+ */
+ @Operation(summary = "淇敼鎷涙爣閲囪喘鍗�" , description = "淇敼鎷涙爣閲囪喘鍗�" )
+ @SysLog("淇敼鎷涙爣閲囪喘鍗�" )
+ @PutMapping
+ @PreAuthorize("@pms.hasPermission('platformx_purchaseTendrOrder_edit')" )
+ public R updateById(@RequestBody PurchaseTendrOrderEntity purchaseTendrOrder) {
+ return R.ok(purchaseTendrOrderService.updateById(purchaseTendrOrder));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎鎷涙爣閲囪喘鍗�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎鎷涙爣閲囪喘鍗�" , description = "閫氳繃id鍒犻櫎鎷涙爣閲囪喘鍗�" )
+ @SysLog("閫氳繃id鍒犻櫎鎷涙爣閲囪喘鍗�" )
+ @DeleteMapping
+ @PreAuthorize("@pms.hasPermission('platformx_purchaseTendrOrder_del')" )
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(purchaseTendrOrderService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param purchaseTendrOrder 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('platformx_purchaseTendrOrder_export')" )
+ public List<PurchaseTendrOrderEntity> export(PurchaseTendrOrderEntity purchaseTendrOrder,Long[] ids) {
+ return purchaseTendrOrderService.list(Wrappers.lambdaQuery(purchaseTendrOrder).in(ArrayUtil.isNotEmpty(ids), PurchaseTendrOrderEntity::getId, ids));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎鎷涙爣閲囪喘鍗�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id瀹屾垚鎷涙爣閲囪喘鍗�" , description = "閫氳繃id瀹屾垚鎷涙爣閲囪喘鍗�" )
+ @SysLog("閫氳繃id瀹屾垚鎷涙爣閲囪喘鍗�" )
+ @GetMapping("/complete/{id}")
+ @PreAuthorize("@pms.hasPermission('platformx_purchaseTendrOrder_complete')" )
+ public R complete(@PathVariable("id")Long id) {
+ return R.ok(purchaseTendrOrderService.complete(id));
+ }
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseTendrOrderMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseTendrOrderMapper.java
new file mode 100644
index 0000000..2006114
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseTendrOrderMapper.java
@@ -0,0 +1,12 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity;
+import com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface PurchaseTendrOrderMapper extends PlatformxBaseMapper<PurchaseTendrOrderEntity> {
+
+
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/PurchaseTendrOrderService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/PurchaseTendrOrderService.java
new file mode 100644
index 0000000..9d90e54
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/PurchaseTendrOrderService.java
@@ -0,0 +1,9 @@
+package com.by4cloud.platformx.device.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity;
+
+public interface PurchaseTendrOrderService extends IService<PurchaseTendrOrderEntity> {
+
+ boolean complete(Long id);
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseTendrOrderServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseTendrOrderServiceImpl.java
new file mode 100644
index 0000000..f874714
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseTendrOrderServiceImpl.java
@@ -0,0 +1,27 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity;
+import com.by4cloud.platformx.device.mapper.PurchaseTendrOrderMapper;
+import com.by4cloud.platformx.device.service.PurchaseTendrOrderService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+/**
+ * 鎷涙爣閲囪喘鍗�
+ *
+ * @author pig
+ * @date 2025-03-24 15:45:03
+ */
+@Service
+@RequiredArgsConstructor
+public class PurchaseTendrOrderServiceImpl extends ServiceImpl<PurchaseTendrOrderMapper, PurchaseTendrOrderEntity> implements PurchaseTendrOrderService {
+
+ private final PurchaseTendrOrderMapper purchaseTendrOrderMapper;
+
+
+ @Override
+ public boolean complete(Long id) {
+ return false;
+ }
+
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/controller/PurchaseWinningLetterController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/controller/PurchaseWinningLetterController.java
new file mode 100644
index 0000000..58529a0
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/controller/PurchaseWinningLetterController.java
@@ -0,0 +1,119 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity;
+import com.by4cloud.platformx.device.service.PurchaseWinningLetterService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 涓爣閫氱煡涔�
+ *
+ * @author syt
+ * @date 2025-03-24 17:13:08
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/purchaseWinningLetter" )
+@Tag(description = "purchaseWinningLetter" , name = "涓爣閫氱煡涔︾鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class PurchaseWinningLetterController {
+
+ private final PurchaseWinningLetterService purchaseWinningLetterService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param purchaseWinningLetter 涓爣閫氱煡涔�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ @PreAuthorize("@pms.hasPermission('device_purchaseWinningLetter_view')" )
+ public R getPurchaseWinningLetterPage(@ParameterObject Page page, @ParameterObject PurchaseWinningLetterEntity purchaseWinningLetter) {
+ LambdaQueryWrapper<PurchaseWinningLetterEntity> wrapper = Wrappers.lambdaQuery();
+ return R.ok(purchaseWinningLetterService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ涓爣閫氱煡涔�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ @PreAuthorize("@pms.hasPermission('device_purchaseWinningLetter_view')" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(purchaseWinningLetterService.getById(id));
+ }
+
+ /**
+ * 鏂板涓爣閫氱煡涔�
+ * @param purchaseWinningLetter 涓爣閫氱煡涔�
+ * @return R
+ */
+ @Operation(summary = "鏂板涓爣閫氱煡涔�" , description = "鏂板涓爣閫氱煡涔�" )
+ @SysLog("鏂板涓爣閫氱煡涔�" )
+ @PostMapping
+ @PreAuthorize("@pms.hasPermission('device_purchaseWinningLetter_add')" )
+ public R save(@RequestBody PurchaseWinningLetterEntity purchaseWinningLetter) {
+ return R.ok(purchaseWinningLetterService.save(purchaseWinningLetter));
+ }
+
+ /**
+ * 淇敼涓爣閫氱煡涔�
+ * @param purchaseWinningLetter 涓爣閫氱煡涔�
+ * @return R
+ */
+ @Operation(summary = "淇敼涓爣閫氱煡涔�" , description = "淇敼涓爣閫氱煡涔�" )
+ @SysLog("淇敼涓爣閫氱煡涔�" )
+ @PutMapping
+ @PreAuthorize("@pms.hasPermission('device_purchaseWinningLetter_edit')" )
+ public R updateById(@RequestBody PurchaseWinningLetterEntity purchaseWinningLetter) {
+ return R.ok(purchaseWinningLetterService.updateById(purchaseWinningLetter));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎涓爣閫氱煡涔�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎涓爣閫氱煡涔�" , description = "閫氳繃id鍒犻櫎涓爣閫氱煡涔�" )
+ @SysLog("閫氳繃id鍒犻櫎涓爣閫氱煡涔�" )
+ @DeleteMapping
+ @PreAuthorize("@pms.hasPermission('device_purchaseWinningLetter_del')" )
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(purchaseWinningLetterService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param purchaseWinningLetter 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('device_purchaseWinningLetter_export')" )
+ public List<PurchaseWinningLetterEntity> export(PurchaseWinningLetterEntity purchaseWinningLetter,Long[] ids) {
+ return purchaseWinningLetterService.list(Wrappers.lambdaQuery(purchaseWinningLetter).in(ArrayUtil.isNotEmpty(ids), PurchaseWinningLetterEntity::getId, ids));
+ }
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/entity/PurchaseWinningLetterEntity.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/entity/PurchaseWinningLetterEntity.java
new file mode 100644
index 0000000..151d9f9
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/entity/PurchaseWinningLetterEntity.java
@@ -0,0 +1,143 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.time.LocalDateTime;
+
+/**
+ * 涓爣閫氱煡涔�
+ *
+ * @author syt
+ * @date 2025-03-24 17:13:08
+ */
+@Data
+@TableName("purchase_winning_letter")
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "涓爣閫氱煡涔�")
+public class PurchaseWinningLetterEntity extends Model<PurchaseWinningLetterEntity> {
+
+
+ /**
+ * id
+ */
+ @TableId(type = IdType.ASSIGN_ID)
+ @Schema(description="id")
+ private Long id;
+
+ /**
+ * 涓爣閫氱煡涔︾紪鐮�
+ */
+ @Schema(description="涓爣閫氱煡涔︾紪鐮�")
+ private String winningCode;
+
+ /**
+ * 閲囪喘璁″垝缂栧彿
+ */
+ @Schema(description="閲囪喘璁″垝缂栧彿")
+ private String purchasePlanCode;
+
+ /**
+ * 璁惧缂栫爜
+ */
+ @Schema(description="璁惧缂栫爜")
+ private String deviceCode;
+
+ /**
+ * 璁惧鍚嶇О
+ */
+ @Schema(description="璁惧鍚嶇О")
+ private String deviceName;
+
+ /**
+ * 瑙勬牸鍨嬪彿
+ */
+ @Schema(description="瑙勬牸鍨嬪彿")
+ private String deviceModels;
+
+ /**
+ * 鍏抽敭鍙傛暟
+ */
+ @Schema(description="鍏抽敭鍙傛暟")
+ private String keyParameter;
+
+ /**
+ * 鍒拌揣鏈堜唤
+ */
+ @Schema(description="鍒拌揣鏈堜唤")
+ private Integer arrivalMonth;
+
+ /**
+ * 鏁伴噺
+ */
+ @Schema(description="鏁伴噺")
+ private Integer quantity;
+
+ /**
+ * 鍗曚綅
+ */
+ @Schema(description="鍗曚綅")
+ private String unit;
+
+ /**
+ * 涓爣鍗曚环 /鍒�
+ */
+ @Schema(description="涓爣鍗曚环 /鍒�")
+ private Integer winningPrice;
+
+ /**
+ * 涓爣鎬婚 /鍒�
+ */
+ @Schema(description="涓爣鎬婚 /鍒�")
+ private Integer totalWinningAmount;
+
+ /**
+ * 鎷熶娇鐢ㄥ湴鐐�
+ */
+ @Schema(description="鎷熶娇鐢ㄥ湴鐐�")
+ private String locationUsed;
+
+ /**
+ * 涓爣鍘傚
+ */
+ @Schema(description="涓爣鍘傚")
+ private String winningBidder;
+
+ /**
+ * 鐢宠浜�
+ */
+ @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;
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseWinningLetterMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseWinningLetterMapper.java
new file mode 100644
index 0000000..b590b83
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/mapper/PurchaseWinningLetterMapper.java
@@ -0,0 +1,11 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface PurchaseWinningLetterMapper extends PlatformxBaseMapper<PurchaseWinningLetterEntity> {
+
+
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/PurchaseWinningLetterService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/PurchaseWinningLetterService.java
new file mode 100644
index 0000000..22e5be4
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/PurchaseWinningLetterService.java
@@ -0,0 +1,8 @@
+package com.by4cloud.platformx.device.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity;
+
+public interface PurchaseWinningLetterService extends IService<PurchaseWinningLetterEntity> {
+
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseWinningLetterServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseWinningLetterServiceImpl.java
new file mode 100644
index 0000000..69f952b
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/java/com/by4cloud/platformx/device/service/impl/PurchaseWinningLetterServiceImpl.java
@@ -0,0 +1,16 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity;
+import com.by4cloud.platformx.device.mapper.PurchaseWinningLetterMapper;
+import com.by4cloud.platformx.device.service.PurchaseWinningLetterService;
+import org.springframework.stereotype.Service;
+/**
+ * 涓爣閫氱煡涔�
+ *
+ * @author syt
+ * @date 2025-03-24 17:13:08
+ */
+@Service
+public class PurchaseWinningLetterServiceImpl extends ServiceImpl<PurchaseWinningLetterMapper, PurchaseWinningLetterEntity> implements PurchaseWinningLetterService {
+}
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/resources/mapper/PurchaseWinningLetterMapper.xml b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/resources/mapper/PurchaseWinningLetterMapper.xml
new file mode 100644
index 0000000..45fe136
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/src/main/resources/mapper/PurchaseWinningLetterMapper.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.by4cloud.platformx.device.mapper.PurchaseWinningLetterMapper">
+
+ <resultMap id="purchaseWinningLetterMap" type="com.by4cloud.platformx.device.entity.PurchaseWinningLetterEntity">
+ <id property="id" column="id"/>
+ <result property="winningCode" column="winning_code"/>
+ <result property="purchasePlanCode" column="purchase_plan_code"/>
+ <result property="deviceCode" column="device_code"/>
+ <result property="deviceName" column="device_name"/>
+ <result property="deviceModels" column="device_models"/>
+ <result property="keyParameter" column="key_parameter"/>
+ <result property="arrivalMonth" column="arrival_month"/>
+ <result property="quantity" column="quantity"/>
+ <result property="unit" column="unit"/>
+ <result property="winningPrice" column="winning_price"/>
+ <result property="totalWinningAmount" column="total_winning_amount"/>
+ <result property="locationUsed" column="location_used"/>
+ <result property="winningBidder" column="winning_bidder"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
\ No newline at end of file
diff --git a/platformx-device-biz/src/main/resources/mapper/PurchaseTendrOrderMapper.xml b/platformx-device-biz/src/main/resources/mapper/PurchaseTendrOrderMapper.xml
new file mode 100644
index 0000000..142c1ac
--- /dev/null
+++ b/platformx-device-biz/src/main/resources/mapper/PurchaseTendrOrderMapper.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.by4cloud.platformx.device.mapper.PurchaseTendrOrderMapper">
+
+ <resultMap id="purchaseTendrOrderMap" type="com.by4cloud.platformx.device.entity.PurchaseTendrOrderEntity">
+ <id property="id" column="id"/>
+ <result property="purchasePlanCode" column="purchase_plan_code"/>
+ <result property="deviceCode" column="device_code"/>
+ <result property="deviceName" column="device_name"/>
+ <result property="deviceModels" column="device_models"/>
+ <result property="keyParameter" column="key_parameter"/>
+ <result property="arrivalMonth" column="arrival_month"/>
+ <result property="quantity" column="quantity"/>
+ <result property="unit" column="unit"/>
+ <result property="estimatePrice" column="estimate_price"/>
+ <result property="totalPlanndAmount" column="total_plannd_amount"/>
+ <result property="locationUsed" column="location_used"/>
+ <result property="status" column="status"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
\ No newline at end of file
--
Gitblit v1.9.1