From eb975b40828b3a930fb38b75c739a7385b14ee12 Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期四, 03 四月 2025 14:48:57 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/radio_frequency' into radio_frequency
---
basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java | 3
basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListSupplierAskService.java | 4
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java | 4
basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml | 16 +
basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java | 2
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskBackupRelMapper.java | 24 +++
cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java | 66 ++++-----
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskMapper.java | 4
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListSupplierAskBackupRel.java | 58 ++++++++
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java | 1
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListSupplierAskServiceImpl.java | 78 ++++++++++
basic-server/src/main/resources/mapper/StandardProductListSupplierAskMapper.xml | 26 +++
basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java | 4
basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java | 4
basic-server/src/main/resources/mapper/StandardProductListSupplierAskBackupRelMapper.xml | 39 +++++
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java | 4
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java | 45 +++++-
17 files changed, 320 insertions(+), 62 deletions(-)
diff --git a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java
index 75f504d..6c7de97 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java
@@ -32,8 +32,8 @@
@ApiOperation(value = "鏍囧噯鏍戜笅淇敼璁板綍鍒嗛〉鏌ヨ")
@GetMapping("/standardProductListRecordPage")
- public Result standardProductListRecordPage(Page page, StandardProductListUpdateRecord standardProductListUpdateRecord) {
- return Result.success(standardProductListUpdateRecordService.standardProductListRecordPage(page,standardProductListUpdateRecord));
+ public Result standardProductListRecordPage(Page page, StandardProductListUpdateRecordDto standardProductListUpdateRecordDto) {
+ return Result.success(standardProductListUpdateRecordService.standardProductListRecordPage(page,standardProductListUpdateRecordDto));
}
@ApiOperation(value = "鏍囧噯鏍戜笅妫�楠岄」淇敼璁板綍鏌ヨ")
diff --git a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java
index 28e9326..c398be5 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java
@@ -222,7 +222,7 @@
@ApiOperation(value = "鍒犻櫎鍘傚瑕佹眰鍊肩粦瀹�")
@DeleteMapping("/deleteProductSupplierAsk")
public Result deleteProductSupplierAsk(Integer supplierAskId) {
- standardProductListSupplierAskService.removeById(supplierAskId);
+ standardProductListSupplierAskService.deleteProductSupplierAsk(supplierAskId);
return Result.success();
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java b/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java
index 5a0d1c0..40e746c 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListUpdateRecordDto.java
@@ -15,7 +15,6 @@
* 鏍囧噯鏍戜笅鐨勬楠岄」鐩慨鏀硅褰�
*
*/
-@TableName(value ="standard_product_list_update_record")
@Data
public class StandardProductListUpdateRecordDto extends StandardProductListUpdateRecord {
@@ -23,9 +22,9 @@
* 鍒涘缓鐢ㄦ埛鍚嶇О
*/
private String createUserName;
-
/**
* 淇敼鐢ㄦ埛鍚嶇О
*/
+
private String updateUserName;
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskBackupRelMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskBackupRelMapper.java
new file mode 100644
index 0000000..752935e
--- /dev/null
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskBackupRelMapper.java
@@ -0,0 +1,24 @@
+package com.ruoyi.basic.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.basic.pojo.StandardProductListSupplierAskBackupRel;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface StandardProductListSupplierAskBackupRelMapper extends BaseMapper<StandardProductListSupplierAskBackupRel> {
+
+ /**
+ * 鏍规嵁鏍囧噯鏍戜笅妫�楠岄」id鍒犻櫎鍏宠仈鍘傚澶囦唤鏁版嵁
+ * @param productIds
+ * @return
+ */
+ int batchDeleteByProductIds(@Param("productIds") List<Long> productIds);
+
+ /**
+ * 鎵归噺鎻掑叆鍏宠仈鍘傚澶囦唤鏁版嵁
+ * @param list
+ * @return
+ */
+ int batchInsertSupplierAskBackUpRel(@Param("list") List<StandardProductListSupplierAskBackupRel> list);
+}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskMapper.java
index ff3cdfb..c1a7a7f 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskMapper.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListSupplierAskMapper.java
@@ -3,6 +3,9 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.basic.pojo.StandardProductListSupplierAsk;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
* 妫�楠岄」鐩巶瀹跺瘑搴︾粦瀹氳〃
@@ -13,6 +16,7 @@
@Mapper
public interface StandardProductListSupplierAskMapper extends BaseMapper<StandardProductListSupplierAsk> {
+ int batchInsertSupplierAsk(@Param("list") List<StandardProductListSupplierAsk> list);
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java
index 3a2d00a..5fd4707 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java
@@ -20,10 +20,10 @@
* 鏍囧噯鏍戜笅妫�楠岄」淇敼璁板綍鍒嗛〉鏌ヨ
*
* @param page
- * @param ew
+ * @param record
* @return
*/
- IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, @Param("ew") QueryWrapper<StandardProductListUpdateRecord> ew);
+ IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, @Param("record") StandardProductListUpdateRecordDto record);
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java b/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java
index 9cd10b8..1d44755 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java
@@ -221,5 +221,6 @@
private String conductorType;
@ApiModelProperty("瀹℃牳鐘舵�� 0 鏈彁浜� 1 瀹℃牳涓� 2 瀹℃牳閫氳繃 3 瀹℃牳鏈�氳繃")
+ @TableField(updateStrategy = FieldStrategy.IGNORED)
private String checkStatus;
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListSupplierAskBackupRel.java b/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListSupplierAskBackupRel.java
new file mode 100644
index 0000000..5e47719
--- /dev/null
+++ b/basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListSupplierAskBackupRel.java
@@ -0,0 +1,58 @@
+package com.ruoyi.basic.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * 妫�楠岄」鐩巶瀹跺瘑搴︾粦瀹氳〃
+ *
+ * @author zhuo
+ * @since 2024-09-23
+ */
+@TableName(value ="standard_product_list_supplier_ask_backup_rel")
+@Data
+public class StandardProductListSupplierAskBackupRel {
+
+ @TableId(type = IdType.AUTO)
+ private Integer supplierAskId;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @ApiModelProperty("妫�楠岄」鐩甶d")
+ private Long productListId;
+
+ @ApiModelProperty("鍘傚鍚嶇О")
+ private String supplierName;
+
+ @ApiModelProperty("瑕佹眰鍊�")
+ private String ask;
+
+ @ApiModelProperty("瑕佹眰鎻忚堪")
+ private String tell;
+
+ @ApiModelProperty(value = "鍒涘缓浜篿d")
+ @TableField(fill = FieldFill.INSERT)
+ private Integer createUser;
+
+
+ @ApiModelProperty(value = "淇敼浜篿d")
+ @TableField(fill = FieldFill.INSERT_UPDATE)
+ private Integer updateUser;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @TableField(fill = FieldFill.INSERT)
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @TableField(fill = FieldFill.INSERT_UPDATE)
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime updateTime;
+
+}
+
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListSupplierAskService.java b/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListSupplierAskService.java
index c32d0e4..4c8b584 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListSupplierAskService.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListSupplierAskService.java
@@ -19,5 +19,9 @@
Integer updateProductSupplierAsk(StandardProductListSupplierAsk supplierAsk);
+ void deleteProductSupplierAsk(Integer supplierAskId);
+
+ void backupSupplierAsk(StandardProductListSupplierAsk supplierAsk);
+
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java b/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java
index 38529c4..c8b4f8b 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java
@@ -25,10 +25,10 @@
/**
* 鏍囧噯鏍戜笅妫�楠岄」淇敼璁板綍鍒嗛〉鏌ヨ
* @param page
- * @param record
+ * @param standardProductListUpdateRecordDto
* @return
*/
- IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record);
+ IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, StandardProductListUpdateRecordDto standardProductListUpdateRecordDto);
/**
* 鏍囧噯鏍戜笅妫�楠岄」淇敼璁板綍鏌ヨ
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
index bf53b75..33a54de 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
@@ -12,6 +12,7 @@
import com.ruoyi.basic.mapper.*;
import com.ruoyi.basic.pojo.*;
import com.ruoyi.basic.service.StandardMethodListService;
+import com.ruoyi.basic.service.StandardProductListSupplierAskService;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.QueryWrappers;
import com.ruoyi.common.utils.SecurityUtils;
@@ -68,6 +69,12 @@
@Autowired
private StandardProductListUpdateRecordRelMapper standardProductListUpdateRecordRelMapper;
+ @Autowired
+ private StandardProductListSupplierAskService standardProductListSupplierAskService;
+
+ @Autowired
+ private StandardProductListSupplierAskBackupRelMapper standardProductListSupplierAskBackupRelMapper;
+
@Override
public int upStandardProductList(StandardProductList list) {
@@ -87,6 +94,10 @@
BeanUtils.copyProperties(standardProductList, productListBackupRel);
standardProductListBackupRelMapper.insert(productListBackupRel);
}
+ // 鍏宠仈鍟嗗澶囦唤
+ StandardProductListSupplierAsk standardProductListSupplierAsk = new StandardProductListSupplierAsk();
+ standardProductListSupplierAsk.setProductListId(list.getId());
+ standardProductListSupplierAskService.backupSupplierAsk(standardProductListSupplierAsk);
// 淇敼鐘舵��
list.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
return standardProductListMapper.updateById(list);
@@ -505,6 +516,10 @@
BeanUtils.copyProperties(standardProductList, productListBackupRel);
standardProductListBackupRelMapper.insert(productListBackupRel);
}
+ // 鍏宠仈鍟嗗澶囦唤
+ StandardProductListSupplierAsk standardProductListSupplierAsk = new StandardProductListSupplierAsk();
+ standardProductListSupplierAsk.setProductListId(list.getId());
+ standardProductListSupplierAskService.backupSupplierAsk(standardProductListSupplierAsk);
// 淇敼鐘舵��
list.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
standardProductListMapper.updateSection(list);
@@ -713,25 +728,41 @@
}
// 瀹℃牳閫氳繃
if(StandardProductListChcekTypeEnums.PASS_CHECK.getCode().equals(standardProductListUpdateRecord.getCheckStatus())){
- // 鍒犻櫎澶囦唤鏁版嵁
- standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
// 淇敼鐘舵��
standardProductListMapper.updateProductListCheckStatus(standardProductListIds,StandardProductListChcekTypeEnums.PASS_CHECK.getCode());
}
// 瀹℃牳鏈�氳繃
if(StandardProductListChcekTypeEnums.NO_PASS_CHECK.getCode().equals(standardProductListUpdateRecord.getCheckStatus())){
- // 鏌ヨ鎵�鏈夌殑澶囦唤鏁版嵁
+ // 鏌ヨ鎵�鏈夋爣鍑嗘爲涓嬬殑妫�楠岄」鐩浠芥暟鎹�
List<StandardProductListBackupRel> standardProductListBackupRelList = standardProductListBackupRelMapper.selectBatchIds(standardProductListIds);
- // 鍥炴粴鏁版嵁
+ // 鍥炴粴鏍囧噯鏍戜笅鐨勬楠岄」鐩暟鎹�
for (StandardProductListBackupRel standardProductListBackupRel : standardProductListBackupRelList) {
StandardProductList standardProductList = new StandardProductList();
BeanUtils.copyProperties(standardProductListBackupRel, standardProductList);
- standardProductList.setCheckStatus("");
standardProductListMapper.updateById(standardProductList);
}
- // 鍒犻櫎澶囦唤鏁版嵁
- standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
+ // 鍥炴粴妫�楠岄」鐩巶瀹跺瘑搴︾粦瀹氳〃鏁版嵁
+ QueryWrapper<StandardProductListSupplierAskBackupRel> supplierAskBackupRelQueryWrapper = new QueryWrapper<>();
+ supplierAskBackupRelQueryWrapper.in("product_list_id",standardProductListIds);
+ List<StandardProductListSupplierAskBackupRel> standardProductListSupplierAskBackupRelList = standardProductListSupplierAskBackupRelMapper.selectList(supplierAskBackupRelQueryWrapper);
+ if(!CollectionUtils.isEmpty(standardProductListSupplierAskBackupRelList)){
+ QueryWrapper<StandardProductListSupplierAsk> deleteWrapper = new QueryWrapper<>();
+ deleteWrapper.in("product_list_id",standardProductListIds);
+ standardProductListSupplierAskMapper.delete(deleteWrapper);
+ ArrayList<StandardProductListSupplierAsk> supplierAskRollBackList = new ArrayList<>();
+ for (StandardProductListSupplierAskBackupRel standardProductListSupplierAskBackupRel : standardProductListSupplierAskBackupRelList) {
+ StandardProductListSupplierAsk standardProductListSupplierAsk = new StandardProductListSupplierAsk();
+ BeanUtils.copyProperties(standardProductListSupplierAskBackupRel, standardProductListSupplierAsk);
+ supplierAskRollBackList.add(standardProductListSupplierAsk);
+ }
+ standardProductListSupplierAskMapper.batchInsertSupplierAsk(supplierAskRollBackList);
+ }
+
}
+ // 鍒犻櫎鏍囧噯鏍戜笅鐨勬楠岄」鐩浠芥暟鎹�
+ standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
+ // 鍒犻櫎缁戝畾鍘傚澶囦唤鏁版嵁
+ standardProductListSupplierAskBackupRelMapper.batchDeleteByProductIds(standardProductListIds);
standardProductListUpdateRecordMapper.updateById(standardProductListUpdateRecord);
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListSupplierAskServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListSupplierAskServiceImpl.java
index f84bca8..feaf3b6 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListSupplierAskServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListSupplierAskServiceImpl.java
@@ -1,13 +1,24 @@
package com.ruoyi.basic.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.enums.StandardProductListChcekTypeEnums;
+import com.ruoyi.basic.mapper.StandardProductListMapper;
+import com.ruoyi.basic.mapper.StandardProductListSupplierAskBackupRelMapper;
+import com.ruoyi.basic.pojo.StandardProductList;
+import com.ruoyi.basic.pojo.StandardProductListSupplierAskBackupRel;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.basic.mapper.StandardProductListSupplierAskMapper;
import com.ruoyi.basic.pojo.StandardProductListSupplierAsk;
import com.ruoyi.basic.service.StandardProductListSupplierAskService;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -18,6 +29,12 @@
*/
@Service
public class StandardProductListSupplierAskServiceImpl extends ServiceImpl<StandardProductListSupplierAskMapper, StandardProductListSupplierAsk> implements StandardProductListSupplierAskService {
+
+ @Autowired
+ private StandardProductListSupplierAskBackupRelMapper standardProductListSupplierAskBackupRelMapper;
+
+ @Autowired
+ private StandardProductListMapper standardProductListMapper;
/**
* 鏌ヨ鍘傚瑕佹眰鍊肩粦瀹�
@@ -39,10 +56,18 @@
* @return
*/
@Override
+ @Transactional(rollbackFor = Exception.class)
public Integer addProductSupplierAsk(StandardProductListSupplierAsk supplierAsk) {
if (supplierAsk.getProductListId() == null) {
throw new BaseException("缂哄皯浜у搧瀵硅薄id");
}
+ // 鏂板鍓嶅浠�
+ backupSupplierAsk(supplierAsk);
+ // 淇敼鐘舵�佷负寰呮彁浜�
+ StandardProductList standardProductList = new StandardProductList();
+ standardProductList.setId(supplierAsk.getProductListId());
+ standardProductList.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
+ standardProductListMapper.updateById(standardProductList);
// 鏌ヨ鏀瑰巶瀹舵槸鍚︾粦瀹氳繃
Long count = baseMapper.selectCount(Wrappers.<StandardProductListSupplierAsk>lambdaQuery()
.eq(StandardProductListSupplierAsk::getProductListId, supplierAsk.getProductListId())
@@ -51,9 +76,6 @@
throw new BaseException("璇ヤ骇鍝佸凡缁戝畾杩囪鍘傚");
}
baseMapper.insert(supplierAsk);
- //
-
-
return supplierAsk.getSupplierAskId();
}
@@ -63,10 +85,18 @@
* @return
*/
@Override
+ @Transactional(rollbackFor = Exception.class)
public Integer updateProductSupplierAsk(StandardProductListSupplierAsk supplierAsk) {
if (supplierAsk.getProductListId() == null) {
throw new BaseException("缂哄皯妫�楠岄」id");
}
+ // 淇敼鍓嶅浠�
+ backupSupplierAsk(supplierAsk);
+ // 淇敼鐘舵�佷负寰呮彁浜�
+ StandardProductList standardProductList = new StandardProductList();
+ standardProductList.setId(supplierAsk.getProductListId());
+ standardProductList.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
+ standardProductListMapper.updateById(standardProductList);
// 鏌ヨ鏀瑰巶瀹舵槸鍚︾粦瀹氳繃
Long count = baseMapper.selectCount(Wrappers.<StandardProductListSupplierAsk>lambdaQuery()
.ne(StandardProductListSupplierAsk::getSupplierAskId, supplierAsk.getSupplierAskId())
@@ -78,5 +108,47 @@
baseMapper.updateById(supplierAsk);
return supplierAsk.getSupplierAskId();
}
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void deleteProductSupplierAsk(Integer supplierAskId) {
+ StandardProductListSupplierAsk supplierAsk = baseMapper.selectById(supplierAskId);
+ // 鍒犻櫎鍓嶅浠�
+ backupSupplierAsk(supplierAsk);
+ // 淇敼鐘舵�佷负寰呮彁浜�
+ StandardProductList standardProductList = new StandardProductList();
+ standardProductList.setId(supplierAsk.getProductListId());
+ standardProductList.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
+ standardProductListMapper.updateById(standardProductList);
+ baseMapper.deleteById(supplierAskId);
+ }
+
+ /**
+ * 妫�楠岄」鐩巶瀹跺瘑搴︾粦瀹氬浠借〃琛ㄥ浠�
+ *
+ * @param supplierAsk
+ */
+ @Override
+ public void backupSupplierAsk(StandardProductListSupplierAsk supplierAsk) {
+ // 鏌ヨ澶囦唤鏁版嵁鏄惁瀛樺湪锛屽鏋滄湁涓嶅仛澶囦唤
+ QueryWrapper<StandardProductListSupplierAskBackupRel> backupQueryWrapper = new QueryWrapper<>();
+ backupQueryWrapper.eq("product_list_id", supplierAsk.getProductListId());
+ List<StandardProductListSupplierAskBackupRel> standardProductListSupplierAskBackupRels = standardProductListSupplierAskBackupRelMapper.selectList(backupQueryWrapper);
+ // 鏌ヨ鍘熸暟鎹繘琛屽浠�
+ if(CollectionUtils.isEmpty(standardProductListSupplierAskBackupRels)){
+ QueryWrapper<StandardProductListSupplierAsk> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("product_list_id", supplierAsk.getProductListId());
+ List<StandardProductListSupplierAsk> standardProductListSupplierAskList = baseMapper.selectList(queryWrapper);
+ List<StandardProductListSupplierAskBackupRel> supplierAskBackupRelInsertList = new ArrayList<>();
+ for (StandardProductListSupplierAsk standardProductListSupplierAsk : standardProductListSupplierAskList) {
+ StandardProductListSupplierAskBackupRel standardProductListSupplierAskBackupRel = new StandardProductListSupplierAskBackupRel();
+ BeanUtils.copyProperties(standardProductListSupplierAsk, standardProductListSupplierAskBackupRel);
+ supplierAskBackupRelInsertList.add(standardProductListSupplierAskBackupRel);
+ }
+ if(!CollectionUtils.isEmpty(supplierAskBackupRelInsertList)){
+ standardProductListSupplierAskBackupRelMapper.batchInsertSupplierAskBackUpRel(supplierAskBackupRelInsertList);
+ }
+ }
+ }
}
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java
index a649d17..e53ae53 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java
@@ -65,8 +65,8 @@
* @return
*/
@Override
- public IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record) {
- return standardProductListUpdateRecordMapper.standardProductListRecordPage(page,QueryWrappers.queryWrappers(record));
+ public IPage<StandardProductListUpdateRecordDto> standardProductListRecordPage(Page page, StandardProductListUpdateRecordDto record) {
+ return standardProductListUpdateRecordMapper.standardProductListRecordPage(page,record);
}
/**
diff --git a/basic-server/src/main/resources/mapper/StandardProductListSupplierAskBackupRelMapper.xml b/basic-server/src/main/resources/mapper/StandardProductListSupplierAskBackupRelMapper.xml
new file mode 100644
index 0000000..5bc5ab8
--- /dev/null
+++ b/basic-server/src/main/resources/mapper/StandardProductListSupplierAskBackupRelMapper.xml
@@ -0,0 +1,39 @@
+<?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.ruoyi.basic.mapper.StandardProductListSupplierAskBackupRelMapper">
+
+ <delete id="batchDeleteByProductIds">
+ delete from standard_product_list_supplier_ask_backup_rel
+ where product_list_id in
+ <foreach collection="productIds" open="(" close=")" separator="," item="item">
+ #{item}
+ </foreach>
+ </delete>
+
+ <insert id="batchInsertSupplierAskBackUpRel">
+ INSERT INTO standard_product_list_supplier_ask_backup_rel (
+ supplier_ask_id,
+ product_list_id,
+ supplier_name,
+ ask,
+ tell,
+ create_user,
+ update_user,
+ create_time,
+ update_time
+ )values
+ <foreach collection="list" item="item" separator=",">
+ (
+ #{item.supplierAskId},
+ #{item.productListId},
+ #{item.supplierName},
+ #{item.ask},
+ #{item.tell},
+ #{item.createUser},
+ #{item.updateUser},
+ #{item.createTime},
+ #{item.updateTime}
+ )
+ </foreach>
+ </insert>
+</mapper>
diff --git a/basic-server/src/main/resources/mapper/StandardProductListSupplierAskMapper.xml b/basic-server/src/main/resources/mapper/StandardProductListSupplierAskMapper.xml
index 9c9c6b1..673073f 100644
--- a/basic-server/src/main/resources/mapper/StandardProductListSupplierAskMapper.xml
+++ b/basic-server/src/main/resources/mapper/StandardProductListSupplierAskMapper.xml
@@ -2,4 +2,30 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.ruoyi.basic.mapper.StandardProductListSupplierAskMapper">
+ <insert id="batchInsertSupplierAsk">
+ INSERT INTO standard_product_list_supplier_ask (
+ supplier_ask_id,
+ product_list_id,
+ supplier_name,
+ ask,
+ tell,
+ create_user,
+ update_user,
+ create_time,
+ update_time
+ )values
+ <foreach collection="list" item="item" separator=",">
+ (
+ #{item.supplierAskId},
+ #{item.productListId},
+ #{item.supplierName},
+ #{item.ask},
+ #{item.tell},
+ #{item.createUser},
+ #{item.updateUser},
+ #{item.createTime},
+ #{item.updateTime}
+ )
+ </foreach>
+ </insert>
</mapper>
diff --git a/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml b/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml
index e9388ef..e3a5a2e 100644
--- a/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml
+++ b/basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml
@@ -5,12 +5,16 @@
<mapper namespace="com.ruoyi.basic.mapper.StandardProductListUpdateRecordMapper">
<select id="standardProductListRecordPage" resultType="com.ruoyi.basic.dto.StandardProductListUpdateRecordDto">
SELECT *,
- ( SELECT NAME FROM `user` WHERE id = create_user ) AS createUserName,
- ( SELECT NAME FROM `user` WHERE id = update_user ) AS updateUserName
+ T2.name AS create_user_name,
+ T3.name AS update_user_name
FROM
- standard_product_list_update_record
- <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
- ${ew.customSqlSegment}
- </if>
+ standard_product_list_update_record T1
+ LEFT JOIN user T2 ON T1.create_user = T2.id
+ LEFT JOIN user T3 ON T1.update_user = T3.id
+ <where>
+ <if test="record.createUserName != null and record.createUserName != ''">
+ T2.name like concat('%',#{record.createUserName},'%')
+ </if>
+ </where>
</select>
</mapper>
diff --git a/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java b/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java
index 3f9b658..86562c9 100644
--- a/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java
+++ b/cnas-device/src/main/java/com/ruoyi/device/service/impl/DeviceServiceImpl.java
@@ -511,19 +511,26 @@
@Override
@Transactional(isolation = Isolation.READ_COMMITTED, rollbackFor = Exception.class)
public void importExcel(List<Device> batch) {
- if (CollectionUtils.isEmpty(batch)) {
+ if (CollUtil.isEmpty(batch)) {
return;
}
- // 1. 鎵归噺鏌ヨ鍏宠仈鏁版嵁锛堢敤鎴枫�佸疄楠屽锛�
+ // 鎻愬墠鑾峰彇璁惧鍚嶇О銆佸瀷鍙峰拰绠$悊缂栧彿闆嗗悎
+ Set<String> deviceNames = batch.stream().map(Device::getDeviceName).collect(Collectors.toSet());
+ Set<String> specificationModels = batch.stream().map(Device::getSpecificationModel).collect(Collectors.toSet());
+ Set<String> managementNumbers = batch.stream().map(Device::getManagementNumber).collect(Collectors.toSet());
+
+ // 鎵归噺鏌ヨ鍏宠仈鏁版嵁锛堢敤鎴枫�佸疄楠屽锛�
Map<String, Integer> userMap = queryUserMap(batch);
Map<String, Integer> labMap = queryLabMap(batch);
- // 2. 鍐呭瓨澶勭悊锛氳浆鎹㈠叧鑱斿瓧娈靛苟鍘婚噸
- processBatch(batch, userMap, labMap);
+ // 鍐呭瓨澶勭悊锛氳浆鎹㈠叧鑱斿瓧娈靛苟鍘婚噸锛屽悓鏃舵媶鍒嗘彃鍏ュ拰鏇存柊鍒楄〃
+ List<Device> toInsert = new ArrayList<>();
+ List<Device> toUpdate = new ArrayList<>();
+ processBatch(batch, userMap, labMap, deviceNames, specificationModels, managementNumbers, toInsert, toUpdate);
- // 3. 鎵归噺鎿嶄綔鏁版嵁搴�
- batchOperate(batch);
+ // 鎵归噺鎿嶄綔鏁版嵁搴�
+ batchOperate(toInsert, toUpdate);
}
private Map<String, Integer> queryUserMap(List<Device> batch) {
@@ -552,31 +559,35 @@
).stream().collect(Collectors.toMap(Laboratory::getLaboratoryName, Laboratory::getId));
}
- private void processBatch(List<Device> batch, Map<String, Integer> userMap, Map<String, Integer> labMap) {
+ private void processBatch(List<Device> batch, Map<String, Integer> userMap, Map<String, Integer> labMap,
+ Set<String> deviceNames, Set<String> specificationModels, Set<String> managementNumbers,
+ List<Device> toInsert, List<Device> toUpdate) {
// 棰勮绠楀敮涓�閿紙璁惧鍚嶇О+鍨嬪彿+绠$悊缂栧彿锛�
Map<String, Device> existDevices = deviceMapper.selectList(
new LambdaQueryWrapper<Device>()
- .in(Device::getDeviceName, batch.stream().map(Device::getDeviceName).collect(Collectors.toSet()))
- .in(Device::getSpecificationModel, batch.stream().map(Device::getSpecificationModel).collect(Collectors.toSet()))
- .in(Device::getManagementNumber, batch.stream().map(Device::getManagementNumber).collect(Collectors.toSet()))
+ .in(Device::getDeviceName, deviceNames)
+ .in(Device::getSpecificationModel, specificationModels)
+ .in(Device::getManagementNumber, managementNumbers)
).stream().collect(Collectors.toMap(
d -> d.getDeviceName() + "|" + d.getSpecificationModel() + "|" + d.getManagementNumber(),
Function.identity()
));
-
- List<Device> toInsert = new ArrayList<>();
- List<Device> toUpdate = new ArrayList<>();
for (Device device : batch) {
// 杞崲鍏宠仈瀛楁
device.setEquipmentManager(userMap.get(device.getEquipmentManagerName()));
device.setSubordinateDepartmentsId(labMap.get(device.getSubordinateDepartments()));
- //璁惧鐘舵��
- if (ObjectUtils.isNotEmpty(device.getDeviceStatusName())){
- //鏌ュ瓧鍏稿搴旂殑鍊�
- String status = sysDictDataMapper.selectDictValue("device_status", device.getDeviceStatusName());
- device.setDeviceStatus(Integer.parseInt(status));
+ // 璁惧鐘舵��
+ if (ObjectUtils.isNotEmpty(device.getDeviceStatusName())) {
+ try {
+ // 鏌ュ瓧鍏稿搴旂殑鍊�
+ String status = sysDictDataMapper.selectDictValue("device_status", device.getDeviceStatusName());
+ device.setDeviceStatus(Integer.parseInt(status));
+ } catch (Exception e) {
+ // 澶勭悊寮傚父锛屼緥濡傝褰曟棩蹇�
+ e.printStackTrace();
+ }
}
// 鐢熸垚鍞竴閿�
@@ -589,27 +600,12 @@
toInsert.add(device);
}
}
-
- batch.clear();
- batch.addAll(toInsert);
- batch.addAll(toUpdate);
}
- private void batchOperate(List<Device> batch) {
- // 鎷嗗垎鎻掑叆鍜屾洿鏂板垪琛�
- List<Device> toInsert = new ArrayList<>();
- List<Device> toUpdate = new ArrayList<>();
- for (Device device : batch) {
- if (device.getId() == null) {
- toInsert.add(device);
- } else {
- toUpdate.add(device);
- }
- }
-
+ private void batchOperate(List<Device> toInsert, List<Device> toUpdate) {
// 鎵归噺鎻掑叆
if (CollUtil.isNotEmpty(toInsert)) {
- baseMapper.insertBatchSomeColumn(toInsert);
+ deviceMapper.insertBatchSomeColumn(toInsert);
}
// 鎵归噺鏇存柊
--
Gitblit v1.9.3