From f6fad0a76389bfa4073029e459603392e4232369 Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Wed, 27 Sep 2023 14:58:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=99=BB=E9=99=86=E9=AA=8C?= =?UTF-8?q?=E8=AF=81=E7=A0=81=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- win-dependencies/pom.xml | 7 + .../admin/captcha/CaptchaController.java | 4 +- .../itembasic/ItembasicServiceImplTest.java | 367 ------------------ .../src/main/resources/application.yaml | 12 +- 4 files changed, 20 insertions(+), 370 deletions(-) delete mode 100644 win-module-wms/win-module-wms-biz/src/test/java/com/win/module/wms/service/itembasic/ItembasicServiceImplTest.java diff --git a/win-dependencies/pom.xml b/win-dependencies/pom.xml index fd388be8..b252bd6c 100644 --- a/win-dependencies/pom.xml +++ b/win-dependencies/pom.xml @@ -72,6 +72,7 @@ 1.6.1 2.12.2 2.3.3 + 2.1.1 @@ -629,6 +630,12 @@ spring-boot-starter-websocket ${spring.boot.version} + + + org.ssssssss + magic-api-spring-boot-starter + ${magic-api.version} + diff --git a/win-module-system/win-module-system-biz/src/main/java/com/win/module/system/controller/admin/captcha/CaptchaController.java b/win-module-system/win-module-system-biz/src/main/java/com/win/module/system/controller/admin/captcha/CaptchaController.java index ef13c971..c476b7aa 100644 --- a/win-module-system/win-module-system-biz/src/main/java/com/win/module/system/controller/admin/captcha/CaptchaController.java +++ b/win-module-system/win-module-system-biz/src/main/java/com/win/module/system/controller/admin/captcha/CaptchaController.java @@ -10,6 +10,7 @@ import com.win.framework.redis.util.RedisCache; import com.win.module.system.enums.ErrorCodeConstants; import org.springframework.util.FastByteArrayOutputStream; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; @@ -29,7 +30,8 @@ import static com.win.framework.common.pojo.CommonResult.success; * * @author win */ -@RestController +@RestController("adminCaptchaController") +@RequestMapping("/system/captcha") public class CaptchaController { @Resource(name = "captchaProducer") private Producer captchaProducer; diff --git a/win-module-wms/win-module-wms-biz/src/test/java/com/win/module/wms/service/itembasic/ItembasicServiceImplTest.java b/win-module-wms/win-module-wms-biz/src/test/java/com/win/module/wms/service/itembasic/ItembasicServiceImplTest.java deleted file mode 100644 index 557ddecd..00000000 --- a/win-module-wms/win-module-wms-biz/src/test/java/com/win/module/wms/service/itembasic/ItembasicServiceImplTest.java +++ /dev/null @@ -1,367 +0,0 @@ -package com.win.module.wms.service.itembasic; - -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Test; -import org.springframework.boot.test.mock.mockito.MockBean; - -import javax.annotation.Resource; - -import com.win.framework.test.core.ut.BaseDbUnitTest; - -import com.win.module.wms.controller.admin.itembasic.vo.*; -import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; -import com.win.module.wms.dal.mysql.itembasic.ItembasicMapper; -import com.win.framework.common.pojo.PageResult; - -import javax.annotation.Resource; -import org.springframework.context.annotation.Import; -import java.util.*; -import java.time.LocalDateTime; - -import static cn.hutool.core.util.RandomUtil.*; -import static com.win.framework.test.core.util.AssertUtils.*; -import static com.win.framework.test.core.util.RandomUtils.*; -import static com.win.framework.common.util.date.LocalDateTimeUtils.*; -import static com.win.framework.common.util.object.ObjectUtils.*; -import static com.win.framework.common.util.date.DateUtils.*; -import static com.win.module.wms.enums.itembasic.ErrorCodeConstants.ITEMBASIC_NOT_EXISTS; -import static org.junit.jupiter.api.Assertions.*; -import static org.mockito.Mockito.*; - -/** - * {@link ItembasicServiceImpl} 的单元测试类 - * - * @author 超级管理员 - */ -@Import(ItembasicServiceImpl.class) -public class ItembasicServiceImplTest extends BaseDbUnitTest { - - @Resource - private ItembasicServiceImpl itembasicService; - - @Resource - private ItembasicMapper itembasicMapper; - - @Test - public void testCreateItembasic_success() { - // 准备参数 - ItembasicCreateReqVO reqVO = randomPojo(ItembasicCreateReqVO.class); - - // 调用 - Long itembasicId = itembasicService.createItembasic(reqVO); - // 断言 - assertNotNull(itembasicId); - // 校验记录的属性是否正确 - ItembasicDO itembasic = itembasicMapper.selectById(itembasicId); - assertPojoEquals(reqVO, itembasic); - } - - @Test - public void testUpdateItembasic_success() { - // mock 数据 - ItembasicDO dbItembasic = randomPojo(ItembasicDO.class); - itembasicMapper.insert(dbItembasic);// @Sql: 先插入出一条存在的数据 - // 准备参数 - ItembasicUpdateReqVO reqVO = randomPojo(ItembasicUpdateReqVO.class, o -> { - o.setId(dbItembasic.getId()); // 设置更新的 ID - }); - - // 调用 - itembasicService.updateItembasic(reqVO); - // 校验是否更新正确 - ItembasicDO itembasic = itembasicMapper.selectById(reqVO.getId()); // 获取最新的 - assertPojoEquals(reqVO, itembasic); - } - - @Test - public void testUpdateItembasic_notExists() { - // 准备参数 - ItembasicUpdateReqVO reqVO = randomPojo(ItembasicUpdateReqVO.class); - - // 调用, 并断言异常 - assertServiceException(() -> itembasicService.updateItembasic(reqVO), ITEMBASIC_NOT_EXISTS); - } - - @Test - public void testDeleteItembasic_success() { - // mock 数据 - ItembasicDO dbItembasic = randomPojo(ItembasicDO.class); - itembasicMapper.insert(dbItembasic);// @Sql: 先插入出一条存在的数据 - // 准备参数 - Long id = dbItembasic.getId(); - - // 调用 - itembasicService.deleteItembasic(id); - // 校验数据不存在了 - assertNull(itembasicMapper.selectById(id)); - } - - @Test - public void testDeleteItembasic_notExists() { - // 准备参数 - Long id = randomLongId(); - - // 调用, 并断言异常 - assertServiceException(() -> itembasicService.deleteItembasic(id), ITEMBASIC_NOT_EXISTS); - } - - @Test - @Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解 - public void testGetItembasicPage() { - // mock 数据 - ItembasicDO dbItembasic = randomPojo(ItembasicDO.class, o -> { // 等会查询到 - o.setCode(null); - o.setName(null); - o.setDesc1(null); - o.setDesc2(null); - o.setStatus(null); - o.setUom(null); - o.setAltUom(null); - o.setIsStdPack(null); - o.setEnableBuy(null); - o.setEnableMake(null); - o.setEnableOutsourcing(null); - o.setIsRecycled(null); - o.setIsPhantom(null); - o.setAbcClass(null); - o.setType(null); - o.setCategory(null); - o.setItemGroup(null); - o.setColor(null); - o.setConfiguration(null); - o.setProject(null); - o.setEqLevel(null); - o.setValidityDays(null); - o.setAvailable(null); - o.setActiveTime(null); - o.setExpireTime(null); - o.setRemark(null); - o.setCreateTime(null); - o.setCreator(null); - }); - itembasicMapper.insert(dbItembasic); - // 测试 code 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCode(null))); - // 测试 name 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setName(null))); - // 测试 desc1 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc1(null))); - // 测试 desc2 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc2(null))); - // 测试 status 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setStatus(null))); - // 测试 uom 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setUom(null))); - // 测试 altUom 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAltUom(null))); - // 测试 isStdPack 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsStdPack(null))); - // 测试 enableBuy 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableBuy(null))); - // 测试 enableMake 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableMake(null))); - // 测试 enableOutsourcing 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableOutsourcing(null))); - // 测试 isRecycled 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsRecycled(null))); - // 测试 isPhantom 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsPhantom(null))); - // 测试 abcClass 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAbcClass(null))); - // 测试 type 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setType(null))); - // 测试 category 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCategory(null))); - // 测试 itemGroup 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setItemGroup(null))); - // 测试 color 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setColor(null))); - // 测试 configuration 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setConfiguration(null))); - // 测试 project 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setProject(null))); - // 测试 eqLevel 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEqLevel(null))); - // 测试 validityDays 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setValidityDays(null))); - // 测试 available 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAvailable(null))); - // 测试 activeTime 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setActiveTime(null))); - // 测试 expireTime 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setExpireTime(null))); - // 测试 remark 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setRemark(null))); - // 测试 createTime 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreateTime(null))); - // 测试 creator 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreator(null))); - // 准备参数 - ItembasicPageReqVO reqVO = new ItembasicPageReqVO(); - reqVO.setCode(null); - reqVO.setName(null); - reqVO.setDesc1(null); - reqVO.setDesc2(null); - reqVO.setStatus(null); - reqVO.setUom(null); - reqVO.setAltUom(null); - reqVO.setIsStdPack(null); - reqVO.setEnableBuy(null); - reqVO.setEnableMake(null); - reqVO.setEnableOutsourcing(null); - reqVO.setIsRecycled(null); - reqVO.setIsPhantom(null); - reqVO.setAbcClass(null); - reqVO.setType(null); - reqVO.setCategory(null); - reqVO.setItemGroup(null); - reqVO.setColor(null); - reqVO.setConfiguration(null); - reqVO.setProject(null); - reqVO.setEqLevel(null); - reqVO.setValidityDays(null); - reqVO.setAvailable(null); - reqVO.setActiveTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setExpireTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setRemark(null); - reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setCreator(null); - - // 调用 - PageResult pageResult = itembasicService.getItembasicPage(reqVO); - // 断言 - assertEquals(1, pageResult.getTotal()); - assertEquals(1, pageResult.getList().size()); - assertPojoEquals(dbItembasic, pageResult.getList().get(0)); - } - - @Test - @Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解 - public void testGetItembasicList() { - // mock 数据 - ItembasicDO dbItembasic = randomPojo(ItembasicDO.class, o -> { // 等会查询到 - o.setCode(null); - o.setName(null); - o.setDesc1(null); - o.setDesc2(null); - o.setStatus(null); - o.setUom(null); - o.setAltUom(null); - o.setIsStdPack(null); - o.setEnableBuy(null); - o.setEnableMake(null); - o.setEnableOutsourcing(null); - o.setIsRecycled(null); - o.setIsPhantom(null); - o.setAbcClass(null); - o.setType(null); - o.setCategory(null); - o.setItemGroup(null); - o.setColor(null); - o.setConfiguration(null); - o.setProject(null); - o.setEqLevel(null); - o.setValidityDays(null); - o.setAvailable(null); - o.setActiveTime(null); - o.setExpireTime(null); - o.setRemark(null); - o.setCreateTime(null); - o.setCreator(null); - }); - itembasicMapper.insert(dbItembasic); - // 测试 code 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCode(null))); - // 测试 name 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setName(null))); - // 测试 desc1 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc1(null))); - // 测试 desc2 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc2(null))); - // 测试 status 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setStatus(null))); - // 测试 uom 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setUom(null))); - // 测试 altUom 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAltUom(null))); - // 测试 isStdPack 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsStdPack(null))); - // 测试 enableBuy 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableBuy(null))); - // 测试 enableMake 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableMake(null))); - // 测试 enableOutsourcing 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableOutsourcing(null))); - // 测试 isRecycled 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsRecycled(null))); - // 测试 isPhantom 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsPhantom(null))); - // 测试 abcClass 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAbcClass(null))); - // 测试 type 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setType(null))); - // 测试 category 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCategory(null))); - // 测试 itemGroup 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setItemGroup(null))); - // 测试 color 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setColor(null))); - // 测试 configuration 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setConfiguration(null))); - // 测试 project 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setProject(null))); - // 测试 eqLevel 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEqLevel(null))); - // 测试 validityDays 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setValidityDays(null))); - // 测试 available 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAvailable(null))); - // 测试 activeTime 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setActiveTime(null))); - // 测试 expireTime 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setExpireTime(null))); - // 测试 remark 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setRemark(null))); - // 测试 createTime 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreateTime(null))); - // 测试 creator 不匹配 - itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreator(null))); - // 准备参数 - ItembasicExportReqVO reqVO = new ItembasicExportReqVO(); - reqVO.setCode(null); - reqVO.setName(null); - reqVO.setDesc1(null); - reqVO.setDesc2(null); - reqVO.setStatus(null); - reqVO.setUom(null); - reqVO.setAltUom(null); - reqVO.setIsStdPack(null); - reqVO.setEnableBuy(null); - reqVO.setEnableMake(null); - reqVO.setEnableOutsourcing(null); - reqVO.setIsRecycled(null); - reqVO.setIsPhantom(null); - reqVO.setAbcClass(null); - reqVO.setType(null); - reqVO.setCategory(null); - reqVO.setItemGroup(null); - reqVO.setColor(null); - reqVO.setConfiguration(null); - reqVO.setProject(null); - reqVO.setEqLevel(null); - reqVO.setValidityDays(null); - reqVO.setAvailable(null); - reqVO.setActiveTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setExpireTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setRemark(null); - reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); - reqVO.setCreator(null); - - // 调用 - List list = itembasicService.getItembasicList(reqVO); - // 断言 - assertEquals(1, list.size()); - assertPojoEquals(dbItembasic, list.get(0)); - } - -} diff --git a/win-server/src/main/resources/application.yaml b/win-server/src/main/resources/application.yaml index 507f5867..27b28132 100644 --- a/win-server/src/main/resources/application.yaml +++ b/win-server/src/main/resources/application.yaml @@ -140,8 +140,7 @@ win: enable: true ignore-urls: - /admin-api/system/tenant/get-id-by-name # 基于名字获取租户,不许带租户编号 - - /admin-api/system/captcha/get # 获取图片验证码,和租户无关 - - /admin-api/system/captcha/check # 校验图片验证码,和租户无关 + - /admin-api/system/captcha/captchaImage # 校验图片验证码,和租户无关 - /admin-api/infra/file/*/get/** # 获取图片,和租户无关 - /admin-api/system/sms/callback/* # 短信回调接口,无法带上租户编号 - /admin-api/pay/notify/** # 支付回调通知,不携带租户编号 @@ -205,3 +204,12 @@ debug: false minidao : base-package: org.jeecg.modules.jmreport.desreport.dao* db-type: mysql + +# magic-api配置 +magic-api: + web: /magic/web + resource: + type: database # 配置接口存储方式,这里选择存在数据库中 + table-name: magic_api_file_v2 # 数据库中的表名 + prefix: /magic-api # 前缀 + location: classpath:magic-api \ No newline at end of file