diff --git a/ServiceSite/facade/pom.xml b/ServiceSite/facade/pom.xml index 3678fb50d6b5dfc5553084a95d3a776c71c39e8f..cdb978d780260441842dd444acd13ee03a6d9de2 100644 --- a/ServiceSite/facade/pom.xml +++ b/ServiceSite/facade/pom.xml @@ -78,6 +78,14 @@ <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> + + <dependency> + <groupId>com.seasky</groupId> + <artifactId>base-data-micro-api</artifactId> + <version>1.1.0</version> + <scope>compile</scope> + </dependency> + </dependencies> <distributionManagement> diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/IAttachmentController.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/IAttachmentController.java new file mode 100644 index 0000000000000000000000000000000000000000..2b4acca29be5b42d8d44b6b034e2a16997b46ff6 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/IAttachmentController.java @@ -0,0 +1,57 @@ +package com.seasky.adjustproject.api; + +import com.seasky.adjustproject.dto.attachment.AttachmentCmd; +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.dto.attachment.AttachmentQry; +import com.seasky.core.common.Result; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @Author wangxingjun + * @Data 2022/4/22 15:52 + */ +@FeignClient("dddtemplate-provider") +@RequestMapping("attachment") +public interface IAttachmentController { + + /** + * 淇濆瓨闄勪欢 + * + * @param attachmentCmd 闄勪欢cmd + * @return {@link Result}<{@link Object}> + */ + @PostMapping(path = "/saveAttachment") + Result<Object> saveAttachment(@RequestBody AttachmentCmd attachmentCmd); + + /** + * 鍒犻櫎闄勪欢 + * + * @param attachmentCmd 闄勪欢cmd + * @return {@link Result}<{@link Object}> + */ + @PostMapping(path = "/removeAttachment") + Result<Object> removeAttachment(@RequestBody AttachmentCmd attachmentCmd); + + /** + * 閫氳繃id鑾峰彇闄勪欢 + * + * @param id id + * @return {@link Result}<{@link AttachmentQry}> + */ + @PostMapping(path = "/getAttachmentById") + Result<AttachmentOut> getAttachmentById(@RequestParam Long id); + + /** + * 闄勪欢鍒楄〃 + * + * @param attachmentQry 闄勪欢qry + * @return {@link Result}<{@link AttachmentOut}> + */ + @PostMapping(path = "/listAttachment") + Result<AttachmentOut> listAttachment(@RequestBody AttachmentQry attachmentQry); + +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/ITestController.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/ITestController.java new file mode 100644 index 0000000000000000000000000000000000000000..500f16a45f976a884404d57eecc5fdc13619e46f --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/ITestController.java @@ -0,0 +1,41 @@ +package com.seasky.adjustproject.api; + +import com.seasky.core.common.Result; +import com.seasky.adjustproject.dto.test.TestCmd; +import com.seasky.adjustproject.dto.test.TestQueryOut; +import com.seasky.adjustproject.dto.test.TestQueryQry; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; + +import java.io.UnsupportedEncodingException; + +@FeignClient("dddtemplate-provider") +@RequestMapping("test") +@Api("Test") +public interface ITestController { + + @ApiOperation("1.testQ") + @PostMapping(path = "/pc/v1/queryList") + Result<TestQueryOut> testQ(@RequestBody TestQueryQry testQry); + + @ApiOperation("2.testExport") + @PostMapping(path = "/pc/v1/export") + ResponseEntity<byte[]> testExcelExport(@RequestBody TestQueryQry testQry) throws UnsupportedEncodingException; + + @ApiOperation("3.testSave") + @PostMapping(path = "/pc/v1/save") + Result<Long> testSave(@RequestBody TestCmd testCmd); + + @ApiOperation("4.testSubmit") + @PostMapping(path = "/pc/v1/submit") + Result<Long> testSubmit(@RequestBody TestCmd testCmd); + + @ApiOperation("5.testSaveAndSubmit") + @PostMapping(path = "/pc/v1/saveandsubmit") + Result<Long> testSaveAndSubmit(@RequestBody TestCmd testCmd); +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/ITestWebService.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/ITestWebService.java new file mode 100644 index 0000000000000000000000000000000000000000..d4bf404ad9d6991aee54de4ad35ec9b9fe6c0310 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/api/ITestWebService.java @@ -0,0 +1,16 @@ +package com.seasky.adjustproject.api; + +import com.seasky.core.common.Result; +import com.seasky.adjustproject.dto.test.TestQueryOut; +import com.seasky.adjustproject.dto.test.TestQueryQry; + +import javax.jws.WebMethod; +import javax.jws.WebParam; +import javax.jws.WebService; + +@WebService(name = "TestService", targetNamespace = "http://www.seaskysh.com") +public interface ITestWebService { + @WebMethod + Result<TestQueryOut> testQ(@WebParam TestQueryQry testQry); +} + diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentCmd.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentCmd.java new file mode 100644 index 0000000000000000000000000000000000000000..abc6e36cb3ce100719f38bf48dfea7562a5aacd4 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentCmd.java @@ -0,0 +1,46 @@ +package com.seasky.adjustproject.dto.attachment; + +import com.seasky.micro.basedata.dto.BaseDTO; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.io.InputStream; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:35 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AttachmentCmd extends BaseDTO { + + /** + * 闄勪欢鍚嶇О + */ + private String fileName; + + /** + * 澶栭儴鍏宠仈瀛楁id + */ + private Long parentId; + + /** + * 鏂囦欢娴� + */ + private InputStream fileStream; + + /** + * 鍚庣紑 + */ + private String extension; + + /** + * 鍧愭爣 + */ + private String coordinate; + +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentOut.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentOut.java new file mode 100644 index 0000000000000000000000000000000000000000..9e80bcf0fb56dbc7c1224487bd2b222807198e18 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentOut.java @@ -0,0 +1,45 @@ +package com.seasky.adjustproject.dto.attachment; + +import com.seasky.micro.basedata.dto.BaseDTO; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.io.InputStream; + +/** + * @Author wangxingjun + * @Data 2022/4/22 16:01 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AttachmentOut extends BaseDTO { + /** + * 闄勪欢鍚嶇О + */ + private String fileName; + + /** + * 澶栭儴鍏宠仈瀛楁id + */ + private Long parentId; + + /** + * 鏂囦欢娴� + */ + private InputStream fileStream; + + /** + * 鍚庣紑 + */ + private String extension; + + /** + * 鍧愭爣 + */ + private String coordinate; + +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentQry.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentQry.java new file mode 100644 index 0000000000000000000000000000000000000000..97817f9b2181bbcdc9cd082d2f36710345e3af08 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/attachment/AttachmentQry.java @@ -0,0 +1,45 @@ +package com.seasky.adjustproject.dto.attachment; + +import com.seasky.micro.basedata.dto.BaseDTO; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.io.InputStream; + +/** + * @Author wangxingjun + * @Data 2022/4/22 16:02 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class AttachmentQry extends BaseDTO { + /** + * 闄勪欢鍚嶇О + */ + private String fileName; + + /** + * 澶栭儴鍏宠仈瀛楁id + */ + private Long parentId; + + /** + * 鏂囦欢娴� + */ + private InputStream fileStream; + + /** + * 鍚庣紑 + */ + private String extension; + + /** + * 鍧愭爣 + */ + private String coordinate; + +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestCmd.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestCmd.java new file mode 100644 index 0000000000000000000000000000000000000000..86a7d326e29050a3dbddcbf4ac49af4363a804b3 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestCmd.java @@ -0,0 +1,32 @@ +package com.seasky.adjustproject.dto.test; + + +import com.seasky.core.ddd.base.objects.BaseDTO; +import lombok.Data; + +/** + * 绀轰緥cmd + * 姝ょ被涓篊绾挎帴鍙d紶鍏ョ殑鍙傛暟绫� 鍦―DD缁撴瀯涓睘浜巃pplication灞傜殑 DTO绫� + * 闇€瑕佺户鎵� BaseDto + * @author XueYawei + * @date 2020/12/07 + */ +@Data +public class TestCmd extends BaseDTO { + /** + * 鍚嶅瓧 + */ + private String name; + /** + * 缂栧彿 + */ + private String code; + /** + * 鎬у埆 + */ + private String sex; + /** + * 骞撮緞 + */ + private Integer age; +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestQueryOut.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestQueryOut.java new file mode 100644 index 0000000000000000000000000000000000000000..0e59aade9cd66e73238d832166983ae14b319bfe --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestQueryOut.java @@ -0,0 +1,60 @@ +package com.seasky.adjustproject.dto.test; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.seasky.core.ddd.base.objects.BaseDTO; +import com.seasky.core.enums.Available; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +/** + * 娴嬭瘯Out绫� + * + * @author XueYawei + * @date 2020/12/07 + * JsonInclude(JsonInclude.Include.ALWAYS) ---> 浠讳綍鎯呭喌涓嬮兘搴忓垪鍖栬瀛楁 ,鏁版嵁搴撹繑鍥炲€间负绌烘椂,浠嶇劧杩斿洖璇ュ瓧娈电粰鍓嶇 涓旇瀛楁涓� null + */ +@Data +@NoArgsConstructor +@JsonInclude(JsonInclude.Include.ALWAYS) +public class TestQueryOut extends BaseDTO implements Serializable { + /** + * 涓婚敭 + */ + private Long id; + /** + * 鍚嶅瓧 + */ + private String name; + /** + * 缂栧彿 + */ + private String code; + /** + * 鎬у埆 + */ + private String sex; + /** + * 骞撮緞 + */ + private Integer age; + + + protected Date createDate; + + protected Long creator; + + protected Long updator; + + protected Date updateDate; + + protected Available available; + + protected String remark; + + protected Date versionDate; + +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestQueryQry.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestQueryQry.java new file mode 100644 index 0000000000000000000000000000000000000000..094940bab2e0b50b46cf0b11d4ea21527c9db46f --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/dto/test/TestQueryQry.java @@ -0,0 +1,36 @@ +package com.seasky.adjustproject.dto.test; + +import com.seasky.core.ddd.base.objects.BaseDTO; +import lombok.Data; + +/** + * 娴嬭瘯qry + * + * @author XueYawei + * @date 2020/12/07 + */ +@Data +public class TestQueryQry extends BaseDTO { + + /** + * 鍚嶅瓧 + */ + private String name; + /** + * 缂栧彿 + */ + private String code; + /** + * 鎬у埆 + */ + private String sex; + /** + * 骞撮緞 + */ + private Integer age; + + + private Integer pageIndex; + + private Integer pageSize; +} diff --git a/ServiceSite/facade/src/main/java/com/seasky/adjustproject/enums/EnumTest.java b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/enums/EnumTest.java new file mode 100644 index 0000000000000000000000000000000000000000..f06c0cd403a9826ffe511169df99f9886c58f3f5 --- /dev/null +++ b/ServiceSite/facade/src/main/java/com/seasky/adjustproject/enums/EnumTest.java @@ -0,0 +1,4 @@ +package com.seasky.adjustproject.enums; + +public enum EnumTest { +} diff --git a/ServiceSite/pom.xml b/ServiceSite/pom.xml index 93e0cd1ac4447739c27f7c83c7cef30f0c6b9542..a30392926d74fe421412934e4248e8e68ce71c5e 100644 --- a/ServiceSite/pom.xml +++ b/ServiceSite/pom.xml @@ -201,6 +201,12 @@ <artifactId>seata-spring-boot-starter</artifactId> <version>1.4.2</version> </dependency> + + <dependency> + <groupId>com.seasky</groupId> + <artifactId>base-data-micro-api</artifactId> + <version>1.1.0</version> + </dependency> <!--seata--> <!-- 鏃ュ織璁板綍SkyWalking --> <dependency> diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/assembler/AttachmentAssembler.java b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/assembler/AttachmentAssembler.java new file mode 100644 index 0000000000000000000000000000000000000000..421c7f10538af8108b40fb74813d3c5748d83c22 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/assembler/AttachmentAssembler.java @@ -0,0 +1,35 @@ +package com.seasky.adjustproject.application.command.assembler; + +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.AttachmentAgg; +import com.seasky.adjustproject.dto.attachment.AttachmentCmd; +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.dto.attachment.AttachmentQry; +import com.seasky.core.ddd.utils.MapperUtils; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:32 + */ +public class AttachmentAssembler { + + /** + * 闄勪欢cmd杞珹gg + * + * @param attachmentCmd 闄勪欢cmd + * @return {@link AttachmentAgg} + */ + public static AttachmentAgg attachmentCmdToAgg(AttachmentCmd attachmentCmd) { + return MapperUtils.INSTANCE.map(AttachmentAgg.class, attachmentCmd); + } + + /** + * 闄勪欢Agg杞琌ut + * + * @param attachmentAgg 闄勪欢gg + * @return {@link AttachmentOut} + */ + public static AttachmentOut attachmentAggToOut(AttachmentAgg attachmentAgg) { + return MapperUtils.INSTANCE.map(AttachmentOut.class, attachmentAgg); + } + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/assembler/TestAssembler.java b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/assembler/TestAssembler.java new file mode 100644 index 0000000000000000000000000000000000000000..ffc90a8f5a91277aac3d4bb4f77972a9c1229e70 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/assembler/TestAssembler.java @@ -0,0 +1,32 @@ +package com.seasky.adjustproject.application.command.assembler; + + +import com.seasky.core.ddd.utils.MapperUtils; +import com.seasky.adjustproject.domain.aggregate.test.TestAggregate; +import com.seasky.adjustproject.dto.test.TestCmd; + +import java.util.HashMap; +import java.util.Map; + +/** + * 绀轰緥宸ュ巶绫� + * + * @author XueYawei + * @date 2020/12/07 + */ +public class TestAssembler { + + + /** + * 鏋勫缓绀轰緥鑱氬悎鏍� + * + * @param testCmd 娴嬭瘯cmd + * @return {@link TestAggregate} + */ + public static TestAggregate buildTestAggregate(TestCmd testCmd) { + //杞崲瀵瑰簲閿€糾ap + Map<String, String> map = new HashMap<>(3); + TestAggregate testAggregate = MapperUtils.INSTANCE.map(TestAggregate.class,testCmd); + return testAggregate; + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/attachment/AttachmentCmdServiceImpl.java b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/attachment/AttachmentCmdServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..c40c87f9129d3313d340cd5a61672767aa58c15a --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/attachment/AttachmentCmdServiceImpl.java @@ -0,0 +1,74 @@ +package com.seasky.adjustproject.application.command.attachment; + +import com.seasky.adjustproject.application.command.assembler.AttachmentAssembler; +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.AttachmentAgg; +import com.seasky.adjustproject.domain.service.api.IAttachmentDomainService; +import com.seasky.adjustproject.dto.attachment.AttachmentCmd; +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.dto.attachment.AttachmentQry; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.adjustproject.infrastructure.db.mapper.table.AttachmentMapper; +import com.seasky.core.base.AbstractService; +import com.seasky.core.common.Error; +import com.seasky.core.common.ResponseCode; +import com.seasky.core.exception.DataAccessException; +import org.springframework.stereotype.Service; +import org.springframework.util.ObjectUtils; + +import javax.annotation.Resource; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:21 + */ +@Service +public class AttachmentCmdServiceImpl extends AbstractService<AttachmentPO, AttachmentMapper> implements IAttachmentCmdService { + + @Resource + IAttachmentDomainService IAttachmentDomainService; + + /** + * 淇濆瓨 + * + * @param attachmentCmd 闄勪欢cmd + * @return {@link Long} + */ + @Override + public Long saveAttachment(AttachmentCmd attachmentCmd) { + AttachmentAgg attachmentAgg = AttachmentAssembler.attachmentCmdToAgg(attachmentCmd); + return IAttachmentDomainService.saveAttachment(attachmentAgg); + } + + /** + * 鍒犻櫎 + * + * @param attachmentCmd 闄勪欢cmd + */ + @Override + public void removeAttachment(AttachmentCmd attachmentCmd) { + if (ObjectUtils.isEmpty(attachmentCmd.getId())) { + throw new DataAccessException( + Error.builder() + .responseCode(ResponseCode.DATA_VERIFY_NULL_POINTER) + .message("id涓嶈兘浣嶇┖") + .build() + ); + } + AttachmentAgg attachmentAgg = AttachmentAssembler.attachmentCmdToAgg(attachmentCmd); + IAttachmentDomainService.removeAttachment(attachmentAgg); + } + + /** + * 鏌ヨ闄勪欢Agg + * + * @param id id + * @return {@link AttachmentAgg} + */ + @Override + public AttachmentOut getAttachmentById(Long id) { + AttachmentAgg byPersistentId = IAttachmentDomainService.getAttachmentById(id); + return AttachmentAssembler.attachmentAggToOut(byPersistentId); + + } + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/attachment/IAttachmentCmdService.java b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/attachment/IAttachmentCmdService.java new file mode 100644 index 0000000000000000000000000000000000000000..cb7ea3b62aad001a45ac59cbd82654027422a014 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/attachment/IAttachmentCmdService.java @@ -0,0 +1,40 @@ +package com.seasky.adjustproject.application.command.attachment; + +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.AttachmentAgg; +import com.seasky.adjustproject.dto.attachment.AttachmentCmd; +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.dto.attachment.AttachmentQry; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.core.base.BaseService; +import org.checkerframework.checker.units.qual.A; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:20 + */ +public interface IAttachmentCmdService extends BaseService<AttachmentPO> { + + /** + * 淇濆瓨 + * + * @param attachmentCmd + * @return {@link Long} + */ + Long saveAttachment(AttachmentCmd attachmentCmd); + + /** + * 鍒犻櫎 + * + * @param attachmentCmd 闄勪欢cmd + */ + void removeAttachment(AttachmentCmd attachmentCmd); + + /** + * 鏌ヨ闄勪欢Agg + * + * @param id id + * @return {@link AttachmentAgg} + */ + AttachmentOut getAttachmentById(Long id); + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/test/TestCmdService.java b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/test/TestCmdService.java new file mode 100644 index 0000000000000000000000000000000000000000..f6cb9f5e6bd79c0267037b64e38495cf1521682c --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/application/command/test/TestCmdService.java @@ -0,0 +1,31 @@ +package com.seasky.adjustproject.application.command.test; + +import com.seasky.adjustproject.dto.test.TestCmd; + +public interface TestCmdService { + /** + * 淇濆瓨绀轰緥 + * + * @param testCmd 娴嬭瘯cmd + * @return int + */ + Long SaveTest(TestCmd testCmd); + + /** + * 鎻愪氦绀轰緥 + * + * @param testCmd 娴嬭瘯cmd + * @return int + */ + Long SubmitTest(TestCmd testCmd); + + /** + * 淇濆瓨骞舵彁浜ょず渚� + * + * @param testCmd 娴嬭瘯cmd + * @return int + */ + Long SavaAndSubmitTest(TestCmd testCmd); + + void Delete(TestCmd testCmd); +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/application/query/TestQueryService.java b/ServiceSite/src/main/java/com/seasky/adjustproject/application/query/TestQueryService.java new file mode 100644 index 0000000000000000000000000000000000000000..367930b3d0ad6644855bd45deec61174b6910a07 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/application/query/TestQueryService.java @@ -0,0 +1,27 @@ +package com.seasky.adjustproject.application.query; + + +import com.seasky.core.base.BaseService; +import com.seasky.adjustproject.dto.test.TestQueryOut; +import com.seasky.adjustproject.dto.test.TestQueryQry; +import com.seasky.adjustproject.infrastructure.dataobject.po.TestPo; + +import java.util.List; + +/** + * 娴嬭瘯鏌ヨ鏈嶅姟 + * + * @author XueYawei + * @date 2020/12/07 + */ +public interface TestQueryService extends BaseService<TestPo> { + + + /** + * 鏌ヨ娴嬭瘯 + * + * @param testQry 娴嬭瘯qry + * @return {@link TestQueryOut} + */ + List<TestQueryOut> queryTestList(TestQueryQry testQry); +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/application/query/attachment/IAttachmentQueryService.java b/ServiceSite/src/main/java/com/seasky/adjustproject/application/query/attachment/IAttachmentQueryService.java new file mode 100644 index 0000000000000000000000000000000000000000..5d34fb82d571d0702d33127680233f4f5f1744ba --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/application/query/attachment/IAttachmentQueryService.java @@ -0,0 +1,27 @@ +package com.seasky.adjustproject.application.query.attachment; + +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.dto.attachment.AttachmentQry; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.core.base.BaseService; +import com.seasky.core.common.Pagination; +import org.simpleframework.xml.core.Validate; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:25 + */ +@Validated +public interface IAttachmentQueryService extends BaseService<AttachmentPO> { + + /** + * 闄勪欢鍒楄〃 + * + * @param attachmentQry 闄勪欢qry + * @return {@link Pagination}<{@link AttachmentOut}> + */ + Pagination<AttachmentOut> listAttachment(@RequestBody AttachmentQry attachmentQry); + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/attachmentAggregate/AttachmentAgg.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/attachmentAggregate/AttachmentAgg.java new file mode 100644 index 0000000000000000000000000000000000000000..b89277f0db20bd6b80125ec2b6d0cb8391b7f425 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/attachmentAggregate/AttachmentAgg.java @@ -0,0 +1,65 @@ +package com.seasky.adjustproject.domain.aggregate.attachmentAggregate; + +import com.seasky.core.ddd.base.BaseAggregate; +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import java.io.InputStream; + +/** + * @Author wangxingjun + * 闄勪欢Agg + * @Data 2022/4/20 10:36 + */ +@Getter +@NoArgsConstructor +@AllArgsConstructor +public class AttachmentAgg extends BaseAggregate { + + /** + * 闄勪欢鍚嶇О + */ + private String fileName; + + /** + * 澶栭儴鍏宠仈瀛楁id + */ + private Long parentId; + + /** + * 鏂囦欢娴� + */ + private InputStream fileStream; + + /** + * 鍚庣紑 + */ + private String extension; + + /** + * 鍧愭爣 + */ + private String coordinate; + + /** + * 淇敼 + * + * @param attachmentAgg 闄勪欢gg + */ + public void modify(AttachmentAgg attachmentAgg) { + + this.fileName = attachmentAgg.getFileName(); + this.parentId = attachmentAgg.getParentId(); + this.fileStream = attachmentAgg.getFileStream(); + this.extension = attachmentAgg.getExtension(); + this.coordinate = attachmentAgg.getCoordinate(); + + } + + @Override + protected String iniDescribeName() { + return "闄勪欢Agg"; + } + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/attachmentAggregate/IAttachmentRepository.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/attachmentAggregate/IAttachmentRepository.java new file mode 100644 index 0000000000000000000000000000000000000000..9d1d995ff165b69ef185989fc06813334d5158db --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/attachmentAggregate/IAttachmentRepository.java @@ -0,0 +1,19 @@ +package com.seasky.adjustproject.domain.aggregate.attachmentAggregate; + +import com.seasky.core.ddd.base.DddRepository; + +/** + * @Author wangxingjun + * @Data 2022/4/20 10:48 + */ +public interface IAttachmentRepository extends DddRepository<AttachmentAgg> { + + /** + * 淇敼闄勪欢 + * + * @param attachmentAgg 闄勪欢gg + * @return {@link Long} + */ + Long modifyAttachment(AttachmentAgg attachmentAgg); + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/flow/FlowAggregate.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/flow/FlowAggregate.java new file mode 100644 index 0000000000000000000000000000000000000000..fdb0b35d261774e9a11a32e809b0cb2cb7108d77 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/flow/FlowAggregate.java @@ -0,0 +1,14 @@ +package com.seasky.adjustproject.domain.aggregate.flow; + +import lombok.Data; + +@Data +public class FlowAggregate { + private String status; + private String userCode; + private String flowID; + + public void submit(String userCode){ + this.userCode = userCode; + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/message/MessageAggregate.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/message/MessageAggregate.java new file mode 100644 index 0000000000000000000000000000000000000000..6369e75d001c486bce6b92ba4480b39a0eeb8fa1 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/message/MessageAggregate.java @@ -0,0 +1,5 @@ +package com.seasky.adjustproject.domain.aggregate.message; + +public class MessageAggregate { + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/test/TestAggregate.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/test/TestAggregate.java new file mode 100644 index 0000000000000000000000000000000000000000..8209c6488ca549ea53a8aa8f7d3d459b37226772 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/test/TestAggregate.java @@ -0,0 +1,67 @@ +package com.seasky.adjustproject.domain.aggregate.test; + + +import com.seasky.core.ddd.base.BaseAggregate; +import lombok.*; + +/** + * 绀轰緥鑱氬悎鏍� + * + * @author XueYawei + * @date 2020/12/07 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class TestAggregate extends BaseAggregate { + + /** + * 鍚嶅瓧 + */ + private String name; + /** + * 缂栧彿 + */ + private String code; + /** + * 鎬у埆 + */ + private String sex; + /** + * 骞撮緞 + */ + private Integer age; + + /** + * 鐘舵€� + */ + private String status; + + @Override + protected String iniDescribeName() { + return "绀轰緥"; + } + + public TestAggregate updata(TestAggregate aggregate) { + // 杩涜鏍¢獙 渚嬪骞撮緞澶т簬0 灏忎簬 150 + // name code涓笉鑳芥湁鐗规畩瀛楃绛� + this.name = aggregate.name; + this.code = aggregate.code; + this.sex = aggregate.sex; + this.age = aggregate.age; + this.id = aggregate.id; + return this; + } + + public TestAggregate submit(String status) { + this.status = status; + return this; + } + + public String BuildSubmitMessage() { + return ""; + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/test/TestRepository.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/test/TestRepository.java new file mode 100644 index 0000000000000000000000000000000000000000..47da3a4f1c25958b7b802ca0ae58580d72160af4 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/test/TestRepository.java @@ -0,0 +1,19 @@ +package com.seasky.adjustproject.domain.aggregate.test; + +import com.seasky.core.ddd.base.DddRepository; + +/** + * 绀轰緥瀛樺偍搴� + * + * @author XueYawei + * @date 2020/12/07 + */ +public interface TestRepository extends DddRepository<TestAggregate> { + /** + * 淇濆瓨绀轰緥 + * + * @param testAggregate 绀轰緥鑱氬悎鏍� + * @return int + */ + int saveTest(TestAggregate testAggregate); +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/value/TestVO.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/value/TestVO.java new file mode 100644 index 0000000000000000000000000000000000000000..3cf0914a8e7e8392788aec38d9b4482587110e9b --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/aggregate/value/TestVO.java @@ -0,0 +1,4 @@ +package com.seasky.adjustproject.domain.aggregate.value; + +public class TestVO { +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/event/DeleteTestEvent.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/event/DeleteTestEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..785fc14fef0f68956fe9c5f56a4364ea05c65f9b --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/event/DeleteTestEvent.java @@ -0,0 +1,26 @@ +package com.seasky.adjustproject.domain.event; + +import com.seasky.core.common.SpringContainer; +import org.springframework.context.ApplicationEvent; +import org.springframework.stereotype.Service; + +@Service +public class DeleteTestEvent extends ApplicationEvent { + + public DeleteTestEvent() { + super(""); + } + + DeleteTestEvent(String userCode){ + super(userCode); + } + + /** + * 鍙戝竷娑堟伅 + */ + public void DeleteVerify(String userCode){ + ApplicationEvent event = new DeleteTestEvent(userCode); + SpringContainer.getContainer().publishEvent(event); + } + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/event/SendMessageEvent.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/event/SendMessageEvent.java new file mode 100644 index 0000000000000000000000000000000000000000..5d9e5969ff2dd3085a0e938c5c871f49ba984028 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/event/SendMessageEvent.java @@ -0,0 +1,41 @@ +package com.seasky.adjustproject.domain.event; + +import com.seasky.core.common.SpringContainer; +import org.springframework.context.ApplicationEvent; +import org.springframework.stereotype.Service; + +/** + * 瀹氫箟涓€涓彂閫佹秷鎭殑event + * + */ +@Service +public class SendMessageEvent extends ApplicationEvent { + String message; // 娑堟伅鍐呭 + public String getMessage(){ + return this.message; + } + + String user; + public String getUser(){ + return this.user; + } + + public SendMessageEvent() { + super(""); + } + + SendMessageEvent(String message,String user){ + super(message); + this.message = message; + this.user = user; + } + + /** + * 鍙戝竷娑堟伅 + */ + public void send(String message, String user){ + ApplicationEvent event = new SendMessageEvent(message, user); + SpringContainer.getContainer().publishEvent(event); + } + +} \ No newline at end of file diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/primitive/TestPrimitive.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/primitive/TestPrimitive.java new file mode 100644 index 0000000000000000000000000000000000000000..d4a18dbee4c730aff86bc8f0201b3a8a2abb3b5e --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/primitive/TestPrimitive.java @@ -0,0 +1,4 @@ +package com.seasky.adjustproject.domain.primitive; + +public class TestPrimitive { +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/FlowDomainServiceImpl.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/FlowDomainServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..ca06ab76c1c0839eb827057d7123d22a1e711f85 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/FlowDomainServiceImpl.java @@ -0,0 +1,17 @@ +package com.seasky.adjustproject.domain.service; + +import com.seasky.adjustproject.domain.event.DeleteTestEvent; +import org.springframework.context.event.EventListener; +import org.springframework.core.annotation.Order; +import org.springframework.stereotype.Service; + +@Service +public class FlowDomainServiceImpl { + + @EventListener + @Order(0) + public void deleteTestVerify(DeleteTestEvent event) { + // 杩涜鍒犻櫎test鐨勬牎楠� + System.out.println("娴佺▼鏀跺埌鍒犻櫎浜嬩欢锛屽弬鏁�:" + event.getSource());//鑾峰彇鍙傛暟 + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/IAttachmentDomainServiceImpl.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/IAttachmentDomainServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..a88855ca5a3f22bd192444edfecba97661fb1b39 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/IAttachmentDomainServiceImpl.java @@ -0,0 +1,78 @@ +package com.seasky.adjustproject.domain.service; + +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.AttachmentAgg; +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.IAttachmentRepository; +import com.seasky.adjustproject.domain.service.api.IAttachmentDomainService; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.adjustproject.infrastructure.db.mapper.table.AttachmentMapper; +import com.seasky.core.base.AbstractService; +import com.seasky.core.common.Error; +import com.seasky.core.common.ResponseCode; +import com.seasky.core.exception.DataAccessException; +import org.springframework.stereotype.Service; +import org.springframework.util.ObjectUtils; + +import javax.annotation.Resource; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:22 + */ +@Service +public class IAttachmentDomainServiceImpl extends AbstractService<AttachmentPO, AttachmentMapper> implements IAttachmentDomainService { + + @Resource + IAttachmentRepository IAttachmentRepository; + + /** + * 淇濆瓨 + * + * @param attachmentAgg 闄勪欢gg + * @return {@link Long} + */ + @Override + public Long saveAttachment(AttachmentAgg attachmentAgg) { + Long id; + AttachmentAgg byPersistentId = IAttachmentRepository.findByPersistentId(attachmentAgg.getId()); + if (ObjectUtils.isEmpty(attachmentAgg.getId()) || ObjectUtils.isEmpty(byPersistentId)) { + //鏂板 + id = IAttachmentRepository.save(byPersistentId); + }else { + //淇敼 + byPersistentId.modify(attachmentAgg); + id = IAttachmentRepository.modifyAttachment(byPersistentId); + } + return id; + } + + /** + * 鍒犻櫎 + * + * @param attachmentAgg 闄勪欢gg + */ + @Override + public void removeAttachment(AttachmentAgg attachmentAgg) { + AttachmentAgg byPersistentId = IAttachmentRepository.findByPersistentId(attachmentAgg.getId()); + IAttachmentRepository.remove(byPersistentId); + } + + /** + * 鏌ヨ闄勪欢gg + * + * @param id id + * @return {@link AttachmentAgg} + */ + @Override + public AttachmentAgg getAttachmentById(Long id) { + AttachmentAgg byPersistentId = IAttachmentRepository.findByPersistentId(id); + if (ObjectUtils.isEmpty(byPersistentId)) { + throw new DataAccessException( + Error.builder() + .responseCode(ResponseCode.DATA_VERIFY_NULL_POINTER) + .message(id + "瀵瑰簲鐨凙gg涓嶅瓨鍦�") + .build() + ); + } + return byPersistentId; + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/SendEmailDomainServiceImpl.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/SendEmailDomainServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..3b7055f3f0556e640e1ca35c0c0466827c676a8f --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/SendEmailDomainServiceImpl.java @@ -0,0 +1,18 @@ +package com.seasky.adjustproject.domain.service; + +import com.seasky.adjustproject.domain.event.SendMessageEvent; +import org.springframework.context.event.EventListener; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; + +@Service +public class SendEmailDomainServiceImpl { + + @EventListener + @Async + public void send(SendMessageEvent event) { + // 鎶奺vent杞垚 鍙戦€侀偖浠剁殑鑱氬悎 + // 鐒跺悗鍘诲彂閫佹秷鎭� + System.out.println("閭欢娑堟伅鏀跺埌浜嬩欢锛屽弬鏁�:" + event.getMessage());//鑾峰彇鍙傛暟 + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/SendWXDomainServiceImpl.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/SendWXDomainServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..21e01f730caa90fb94fa1846050b927a59c51519 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/SendWXDomainServiceImpl.java @@ -0,0 +1,17 @@ +package com.seasky.adjustproject.domain.service; + +import com.seasky.adjustproject.domain.event.SendMessageEvent; +import org.springframework.context.event.EventListener; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; + +@Service +public class SendWXDomainServiceImpl { + @EventListener + @Async + public void send(SendMessageEvent event) { + // 鎶奺vent杞垚 鍙戦€佸井淇$殑鑱氬悎 + // 鐒跺悗鍘诲彂閫佹秷鎭� + System.out.println("寰俊娑堟伅鏀跺埌浜嬩欢锛屽弬鏁�:" + event.getMessage());//鑾峰彇鍙傛暟 + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/api/IAttachmentDomainService.java b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/api/IAttachmentDomainService.java new file mode 100644 index 0000000000000000000000000000000000000000..c26e55db91e3a4be804da77b1b9ef07ccf715de7 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/domain/service/api/IAttachmentDomainService.java @@ -0,0 +1,34 @@ +package com.seasky.adjustproject.domain.service.api; + +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.AttachmentAgg; +import com.seasky.adjustproject.dto.attachment.AttachmentCmd; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:22 + */ +public interface IAttachmentDomainService { + + /** + * 淇濆瓨 + * + * @param attachmentAgg + * @return {@link Long} + */ + Long saveAttachment(AttachmentAgg attachmentAgg); + + /** + * 鍒犻櫎 + * + * @param attachmentAgg 闄勪欢gg + */ + void removeAttachment(AttachmentAgg attachmentAgg); + + /** + * 鏌ヨ闄勪欢gg + * + * @param id id + * @return {@link AttachmentAgg} + */ + AttachmentAgg getAttachmentById(Long id); +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/AttachmentPO.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/AttachmentPO.java new file mode 100644 index 0000000000000000000000000000000000000000..5c92ebcc523eb48e6d62ad4560ce88a6a4a6ece9 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/AttachmentPO.java @@ -0,0 +1,52 @@ +package com.seasky.adjustproject.infrastructure.dataobject.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author wangxingjun + * @Data 2022/4/20 11:07 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "attach", autoResultMap = true) +public class AttachmentPO extends BasePO { + + /** + * 鍧愭爣 + */ + @TableField("coordinate") + private String coordinate; + + /** + * 鍚庣紑鍚� + */ + @TableField("extension") + private String extension; + + /** + * 鍏宠仈鐨処D + */ + @TableField("parent_id") + private Long parentId; + + /** + * 鏂囦欢鍚� + */ + @TableField("filename") + private String fileName; + + /** + * 鏂囦欢浜岃繘鍒舵祦 + */ + @TableField("filestream") + private String fileStream; + +} \ No newline at end of file diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/BasePO.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/BasePO.java new file mode 100644 index 0000000000000000000000000000000000000000..06b3c019f2446b9b900e5ea9be8bba6e1ba478c3 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/BasePO.java @@ -0,0 +1,15 @@ +package com.seasky.adjustproject.infrastructure.dataobject.po; + +import com.seasky.core.ddd.base.BaseDataObject; +import lombok.Data; + +/** + * 鍩哄湴Po绫� + * + * @author XueYawei + * @date 2020/12/08 + */ +@Data +public class BasePO extends BaseDataObject { + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/TestPo.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/TestPo.java new file mode 100644 index 0000000000000000000000000000000000000000..1a55d8c3fc59cf8f0a808df35c7b14335383f261 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/dataobject/po/TestPo.java @@ -0,0 +1,34 @@ +package com.seasky.adjustproject.infrastructure.dataobject.po; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 绀轰緥Po绫� + * + * @author XueYawei + * @date 2020/12/07 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@TableName(value = "tb_user",autoResultMap = true) +public class TestPo extends BasePO { + @TableField("name") + private String name; + @TableField("code") + private String code; + @TableField("sex") + private String sex; + @TableField("age") + private Integer age; + + + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/table/AttachmentMapper.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/table/AttachmentMapper.java new file mode 100644 index 0000000000000000000000000000000000000000..4cc3ec9133844009f53b35b2801d21fd36baa880 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/table/AttachmentMapper.java @@ -0,0 +1,13 @@ +package com.seasky.adjustproject.infrastructure.db.mapper.table; + +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.core.base.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author wangxingjun + * @Data 2022/4/20 14:50 + */ +@Mapper +public interface AttachmentMapper extends BaseMapper<AttachmentPO> { +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/table/TestMapper.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/table/TestMapper.java new file mode 100644 index 0000000000000000000000000000000000000000..52d9fe863f89721b6169c6815c0d701f9fee48fe --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/table/TestMapper.java @@ -0,0 +1,29 @@ +package com.seasky.adjustproject.infrastructure.db.mapper.table; + +import com.seasky.core.base.BaseMapper; +import com.seasky.adjustproject.dto.test.TestQueryQry; +import com.seasky.adjustproject.infrastructure.dataobject.po.TestPo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 绀轰緥鏄犲皠鍣� + * + * @author XueYawei + * @date 2020/12/08 + */ +@Mapper +public interface TestMapper extends BaseMapper<TestPo> { + + /** + * 閫夋嫨鐢ㄦ埛鍒楄〃 + * + * @param testQry 绀轰緥qry + * @return {@link List<TestPo>} + */ + List<TestPo> selectUserList(@Param("pm") TestQueryQry testQry); + + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/xml/AttachmentMapper.xml b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/xml/AttachmentMapper.xml new file mode 100644 index 0000000000000000000000000000000000000000..0115627ddffeb799c6c8a10e67b3253d1f91b9b5 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/xml/AttachmentMapper.xml @@ -0,0 +1,4 @@ +<?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.seasky.adjustproject.infrastructure.db.mapper.table.AttachmentMapper"> +</mapper> \ No newline at end of file diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/xml/TestMapper.xml b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/xml/TestMapper.xml new file mode 100644 index 0000000000000000000000000000000000000000..270cd457b0490e9450fbcf463e652b95b1c98f16 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/db/mapper/xml/TestMapper.xml @@ -0,0 +1,46 @@ +<?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.seasky.adjustproject.infrastructure.db.mapper.table.TestMapper"> + + + <select id="selectIdPage" resultType="java.lang.Long"> + select id from tb_user + <where> + available = 'YES' + <if test="cm.name != null and cm.name != ''"> + and name = #{cm.name} + </if> + <if test="cm.code != null and cm.code != ''"> + and code = #{cm.code} + </if> + <if test="cm.age != null "> + and age = #{cm.age} + </if> + <if test="cm.sex != null and cm.sex != ''"> + and sex = #{cm.sex} + </if> + </where> + </select> + + + + <select id="selectUserList" resultType="com.seasky.adjustproject.infrastructure.dataobject.po.TestPo"> + select * from tb_user + <where> + available = 'YES' + <if test="pm.name != null and pm.name != ''"> + and name = #{pm.name} + </if> + <if test="pm.code != null and pm.code != ''"> + and code = #{pm.code} + </if> + <if test="pm.age != null "> + and age = #{pm.age} + </if> + <if test="pm.sex != null and pm.sex != ''"> + and sex = #{pm.sex} + </if> + + </where> + </select> +</mapper> \ No newline at end of file diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/reader/attachment/AttachmentQueryConvert.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/reader/attachment/AttachmentQueryConvert.java new file mode 100644 index 0000000000000000000000000000000000000000..8d19d3af85c6a85e6f11f16391c55269188290b1 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/reader/attachment/AttachmentQueryConvert.java @@ -0,0 +1,19 @@ +package com.seasky.adjustproject.infrastructure.reader.attachment; + +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.core.ddd.utils.MapperUtils; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:59 + */ +public class AttachmentQueryConvert { + + public static List<AttachmentOut> AttachmentPOToOut(List<AttachmentPO> attachmentPOList) { + return MapperUtils.INSTANCE.mapAsList(AttachmentOut.class, attachmentPOList); + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/reader/attachment/AttachmentQueryServiceImpl.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/reader/attachment/AttachmentQueryServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..18ebe4f3eb91114d8b27c0fa6aa701759c0a7c0b --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/reader/attachment/AttachmentQueryServiceImpl.java @@ -0,0 +1,62 @@ +package com.seasky.adjustproject.infrastructure.reader.attachment; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.seasky.adjustproject.application.query.attachment.IAttachmentQueryService; +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.dto.attachment.AttachmentQry; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.adjustproject.infrastructure.db.mapper.table.AttachmentMapper; +import com.seasky.core.base.AbstractService; +import com.seasky.core.base.BaseService; +import com.seasky.core.common.Pagination; +import org.springframework.stereotype.Repository; +import org.springframework.util.ObjectUtils; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @Author wangxingjun + * @Data 2022/4/21 15:58 + */ +@Repository +public class AttachmentQueryServiceImpl extends AbstractService<AttachmentPO, AttachmentMapper> implements IAttachmentQueryService { + + @Resource + AttachmentMapper attachmentMapper; + + /** + * 闄勪欢鍒楄〃 + * + * @param attachmentQry 闄勪欢qry + * @return {@link Pagination}<{@link AttachmentOut}> + */ + @Override + public Pagination<AttachmentOut> listAttachment(AttachmentQry attachmentQry) { + + Page<AttachmentPO> attachmentPOPage; + Page<AttachmentOut> attachmentOutPage; + if (ObjectUtils.isEmpty(attachmentQry.getPageSize()) || + ObjectUtils.isEmpty(attachmentQry.getPageIndex())) { + attachmentPOPage = new Page<>(1,10); + attachmentOutPage = new Page<>(1,10); + }else { + attachmentPOPage = new Page<>(attachmentQry.getPageIndex(), attachmentQry.getPageSize()); + attachmentOutPage = new Page<>(attachmentQry.getPageIndex(), attachmentQry.getPageSize()); + } + //鏍规嵁鏉′欢杩涜鍒嗛〉鏌ヨ + QueryWrapper<AttachmentPO> attachmentPOQueryWrapper = new QueryWrapper<>(); + Page<AttachmentPO> attachmentPOList = + attachmentMapper.selectPage(attachmentPOPage, attachmentPOQueryWrapper); + //灏唒o杞垚out + List<AttachmentOut> attachmentOuts = + AttachmentQueryConvert.AttachmentPOToOut(attachmentPOList.getRecords()); + + //璁剧疆杩斿洖鍊� + attachmentOutPage.setTotal(attachmentPOList.getTotal()); + attachmentOutPage.setRecords(attachmentOuts); + return Pagination.fromPage(attachmentOutPage); + } + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/repository/attachment/AttachmentConvert.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/repository/attachment/AttachmentConvert.java new file mode 100644 index 0000000000000000000000000000000000000000..e432b2d7cebd4c32c0d8f7487d19483c7e5665ee --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/repository/attachment/AttachmentConvert.java @@ -0,0 +1,33 @@ +package com.seasky.adjustproject.infrastructure.repository.attachment; + +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.AttachmentAgg; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.core.ddd.utils.MapperUtils; + +/** + * @Author wangxingjun + * @Data 2022/4/20 14:56 + */ +public class AttachmentConvert { + + /** + * 闄勪欢gg杞琍o + * + * @param attachmentAgg 闄勪欢gg + * @return {@link AttachmentPO} + */ + public static AttachmentPO attachmentAggToPo(AttachmentAgg attachmentAgg) { + return MapperUtils.INSTANCE.map(AttachmentPO.class, attachmentAgg); + } + + /** + * Po杞檮浠禔gg + * + * @param attachmentPo 闄勪欢璁㈠崟 + * @return {@link AttachmentAgg} + */ + public static AttachmentAgg attachmentPoToAgg(AttachmentPO attachmentPo) { + return MapperUtils.INSTANCE.map(AttachmentAgg.class, attachmentPo); + } + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/repository/attachment/AttachmentRepositoryImpl.java b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/repository/attachment/AttachmentRepositoryImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..4867b58a464fb7ba76970200671cbbfd295b089f --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/infrastructure/repository/attachment/AttachmentRepositoryImpl.java @@ -0,0 +1,127 @@ +package com.seasky.adjustproject.infrastructure.repository.attachment; + +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.AttachmentAgg; +import com.seasky.adjustproject.domain.aggregate.attachmentAggregate.IAttachmentRepository; +import com.seasky.adjustproject.infrastructure.dataobject.po.AttachmentPO; +import com.seasky.adjustproject.infrastructure.db.mapper.table.AttachmentMapper; +import com.seasky.core.base.AbstractService; +import com.seasky.core.common.Error; +import com.seasky.core.common.ResponseCode; +import com.seasky.core.ddd.base.DomainKeysMap; +import com.seasky.core.exception.DataAccessException; +import org.springframework.stereotype.Repository; + +import javax.annotation.Resource; + +/** + * @Author wangxingjun + * @Data 2022/4/20 14:56 + */ +@Repository +public class AttachmentRepositoryImpl extends AbstractService<AttachmentPO, AttachmentMapper> implements IAttachmentRepository { + + @Resource + private AttachmentMapper attachmentMapper; + + /** + * 鏂板 + * + * @param aggregate + * @return {@link Long} + */ + @Override + public Long save(AttachmentAgg aggregate) { + + AttachmentPO attachmentPo = AttachmentConvert.attachmentAggToPo(aggregate); + + int insert = attachmentMapper.insert(attachmentPo); + if (insert != 1) { + throw new DataAccessException( + Error.builder() + .responseCode(ResponseCode.DATA_VERIFY_EXCEPTION) + .message("鏂板澶辫触") + .build() + ); + } + return attachmentPo.getId(); + } + + /** + * 鍒犻櫎 + * + * @param aggregate + */ + @Override + public void remove(AttachmentAgg aggregate) { + AttachmentPO attachmentPo = AttachmentConvert.attachmentAggToPo(aggregate); + int i = attachmentMapper.deleteById(attachmentPo.getId()); + if (i != 1) { + throw new DataAccessException( + Error.builder() + .responseCode(ResponseCode.DATA_VERIFY_EXCEPTION) + .message("鍒犻櫎澶辫触") + .build() + ); + } + + } + + /** + * 淇敼闄勪欢 + * + * @param attachmentAgg 闄勪欢gg + * @return {@link Long} + */ + @Override + public Long modifyAttachment(AttachmentAgg attachmentAgg) { + AttachmentPO attachmentPo = AttachmentConvert.attachmentAggToPo(attachmentAgg); + int i = attachmentMapper.updateById(attachmentPo); + if (i != 1) { + throw new DataAccessException( + Error.builder() + .responseCode(ResponseCode.DATA_VERIFY_EXCEPTION) + .message("淇敼澶辫触") + .build() + ); + } + + return attachmentPo.getId(); + } + + /** + * 閫氳繃鍩熼敭鎵惧埌 + * + * @param domainKeysMap + * @return {@link AttachmentAgg} + */ + @Override + public AttachmentAgg findByDomainKey(DomainKeysMap domainKeysMap) { + return null; + } + + /** + * 閫氳繃鍩熼敭瀛樺湪鍚� + * + * @param domainKeysMap + * @return {@link Boolean} + */ + @Override + public Boolean isExistsByDomainKey(DomainKeysMap domainKeysMap) { + return null; + } + + /** + * 閫氳繃id鏌ヨ + * + * @param aLong + * @return {@link AttachmentAgg} + */ + @Override + public AttachmentAgg findByPersistentId(Long aLong) { + AttachmentPO attachmentPo = attachmentMapper.selectById(aLong); + AttachmentAgg attachmentAgg = AttachmentConvert.attachmentPoToAgg(attachmentPo); + return attachmentAgg; + } + + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/controller/AttachmentController.java b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/controller/AttachmentController.java new file mode 100644 index 0000000000000000000000000000000000000000..34843b19210b59c1dbac4c15a1cadb5851eb19f5 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/controller/AttachmentController.java @@ -0,0 +1,85 @@ +package com.seasky.adjustproject.interfaces.controller; + +import com.seasky.adjustproject.api.IAttachmentController; +import com.seasky.adjustproject.application.command.attachment.IAttachmentCmdService; +import com.seasky.adjustproject.application.query.attachment.IAttachmentQueryService; +import com.seasky.adjustproject.dto.attachment.AttachmentCmd; +import com.seasky.adjustproject.dto.attachment.AttachmentOut; +import com.seasky.adjustproject.dto.attachment.AttachmentQry; +import com.seasky.core.common.ResponseCode; +import com.seasky.core.common.Result; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +import static com.seasky.core.common.Response.ok; + +/** + * @Author wangxingjun + * @Data 2022/4/22 15:56 + */ +@RestController +@Api("Attachment") +public class AttachmentController extends BaseController implements IAttachmentController { + + @Resource + IAttachmentCmdService iAttachmentCmdService; + + @Resource + IAttachmentQueryService iAttachmentQueryService; + + /** + * 淇濆瓨闄勪欢 + * + * @param attachmentCmd 闄勪欢cmd + * @return {@link Result}<{@link Object}> + */ + @Override + @ApiOperation("淇濆瓨闄勪欢") + public Result<Object> saveAttachment(@RequestBody AttachmentCmd attachmentCmd) { + return ok(ResponseCode.SUCCESS, iAttachmentCmdService.saveAttachment(attachmentCmd)); + } + + /** + * 鍒犻櫎闄勪欢 + * + * @param attachmentCmd 闄勪欢cmd + * @return {@link Result}<{@link Object}> + */ + @Override + @ApiOperation("鍒犻櫎闄勪欢") + public Result<Object> removeAttachment(@RequestBody AttachmentCmd attachmentCmd) { + iAttachmentCmdService.removeAttachment(attachmentCmd); + return ok(ResponseCode.SUCCESS); + } + + /** + * 閫氳繃id鑾峰彇闄勪欢 + * + * @param id id + * @return {@link Result}<{@link AttachmentQry}> + */ + @Override + @ApiOperation("鏌ヨ鍗曚釜闄勪欢") + public Result<AttachmentOut> getAttachmentById(@RequestParam Long id) { + return ok(ResponseCode.SUCCESS, iAttachmentCmdService.getAttachmentById(id)); + } + + /** + * 闄勪欢鍒楄〃 + * + * @param attachmentQry 闄勪欢qry + * @return {@link Result}<{@link AttachmentOut}> + */ + @Override + @ApiOperation("鏌ヨ鍗曚釜闄勪欢") + public Result<AttachmentOut> listAttachment(@RequestBody AttachmentQry attachmentQry) { + return ok(ResponseCode.SUCCESS, iAttachmentQueryService.listAttachment(attachmentQry)); + } + +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/rpc/TestRPC.java b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/rpc/TestRPC.java new file mode 100644 index 0000000000000000000000000000000000000000..657cf6e9b0107b7ebc009db609853d671fc244c5 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/rpc/TestRPC.java @@ -0,0 +1,4 @@ +package com.seasky.adjustproject.interfaces.rpc; + +public class TestRPC { +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/soap/SOAPConfig.java b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/soap/SOAPConfig.java new file mode 100644 index 0000000000000000000000000000000000000000..af146e54613d7dda3b18428afa4e6e1b4027661b --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/soap/SOAPConfig.java @@ -0,0 +1,65 @@ +package com.seasky.adjustproject.interfaces.soap; + +import com.seasky.adjustproject.api.ITestWebService; +import org.apache.cxf.Bus; +import org.apache.cxf.bus.spring.SpringBus; +import org.apache.cxf.jaxws.EndpointImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import javax.xml.ws.Endpoint; + + +@Configuration +public class SOAPConfig { + @Autowired + private ITestWebService testWebServiceImpl; + + @Autowired + private ITestWebService test2WebServiceImpl; + + /** + * Apache CXF 鏍稿績鏋舵瀯鏄互BUS涓烘牳蹇冿紝鏁村悎鍏朵粬缁勪欢銆� + * Bus鏄疌XF鐨勪富骞�, 涓哄叡浜祫婧愭彁渚涗竴涓彲閰嶇疆鐨勫満鎵€锛屼綔鐢ㄧ被浼间簬Spring鐨凙pplicationContext锛岃繖浜涘叡浜祫婧愬寘鎷� + * WSDl绠$悊鍣ㄣ€佺粦瀹氬伐鍘傜瓑銆傞€氳繃瀵笲US杩涜鎵╁睍锛屽彲浠ユ柟渚垮湴瀹圭撼鑷繁鐨勮祫婧愶紝鎴栬€呮浛鎹㈢幇鏈夌殑璧勬簮銆傞粯璁us瀹炵幇鍩轰簬Spring鏋舵瀯锛� + * 閫氳繃渚濊禆娉ㄥ叆锛屽湪杩愯鏃跺皢缁勪欢涓茶仈璧锋潵銆侭usFactory璐熻矗Bus鐨勫垱寤恒€傞粯璁ょ殑BusFactory鏄疭pringBusFactory锛屽搴斾簬榛樿 + * 鐨凚us瀹炵幇銆傚湪鏋勯€犺繃绋嬩腑锛孲pringBusFactory浼氭悳绱ETA-INF/cxf锛堝寘鍚湪 CXF 鐨刯ar涓級涓嬬殑鎵€鏈塨ean閰嶇疆鏂囦欢銆� + * 鏍规嵁杩欎簺閰嶇疆鏂囦欢鏋勫缓涓€涓狝pplicationContext銆傚紑鍙戣€呬篃鍙互鎻愪緵鑷繁鐨勯厤缃枃浠舵潵瀹氬埗Bus銆� + */ + @Bean(name = Bus.DEFAULT_BUS_ID) + public SpringBus springBus() { + return new SpringBus(); + } + + /** + * 姝ゆ柟娉曚綔鐢ㄦ槸鏀瑰彉椤圭洰涓湇鍔″悕鐨勫墠缂€鍚嶏紝姝ゅ127.0.0.1鎴栬€卨ocalhost涓嶈兘璁块棶鏃讹紝璇蜂娇鐢╥pconfig鏌ョ湅鏈満ip鏉ヨ闂� + * 姝ゆ柟娉曡娉ㄩ噴鍚�, 鍗充笉鏀瑰彉鍓嶇紑鍚�(榛樿鏄痵ervices), wsdl璁块棶鍦板潃涓� http://127.0.0.1:8080/services/ws/api?wsdl + * 鍘绘帀娉ㄩ噴鍚巜sdl璁块棶鍦板潃涓猴細http://127.0.0.1:8080/soap/ws/api?wsdl + * http://127.0.0.1:8080/soap/鍒楀嚭鏈嶅姟鍒楄〃 鎴� http://127.0.0.1:8080/soap/ws/api?wsdl 鏌ョ湅瀹為檯鐨勬湇鍔� + * 鏂板缓Servlet璁板緱闇€瑕佸湪鍚姩绫绘坊鍔犳敞瑙o細@ServletComponentScan + * + * 濡傛灉鍚姩鏃跺嚭鐜伴敊璇細not loaded because DispatcherServlet Registration found non dispatcher servlet dispatcherServlet + * 鍙兘鏄痵pringboot涓巆fx鐗堟湰涓嶅吋瀹广€� + * 鍚屾椂鍦╯pring boot2.0.6涔嬪悗鐨勭増鏈笌xcf闆嗘垚锛屼笉闇€瑕佸湪瀹氫箟浠ヤ笅鏂规硶锛岀洿鎺ュ湪application.properties閰嶇疆鏂囦欢涓坊鍔狅細 + * cxf.path=/service锛堥粯璁ゆ槸services锛� + */ + //@Bean + //public ServletRegistrationBean dispatcherServlet() { + // return new ServletRegistrationBean(new CXFServlet(), "/soap/*"); + //} + + @Bean + public Endpoint testendpoint() { + EndpointImpl endpoint = new EndpointImpl(springBus(), testWebServiceImpl); + endpoint.publish("/ws/api"); + return endpoint; + } + + @Bean + public Endpoint test2endpoint() { + EndpointImpl endpoint = new EndpointImpl(springBus(), test2WebServiceImpl); + endpoint.publish("/ws/api2"); + return endpoint; + } +} diff --git a/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/soap/TestWebService.java b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/soap/TestWebService.java new file mode 100644 index 0000000000000000000000000000000000000000..c1b36d90327de42c20df6f37f6dbc49bb822a739 --- /dev/null +++ b/ServiceSite/src/main/java/com/seasky/adjustproject/interfaces/soap/TestWebService.java @@ -0,0 +1,26 @@ +package com.seasky.adjustproject.interfaces.soap; + +import com.seasky.core.common.ResponseCode; +import com.seasky.core.common.Result; +import com.seasky.adjustproject.api.ITestWebService; +import com.seasky.adjustproject.application.query.TestQueryService; +import com.seasky.adjustproject.dto.test.TestQueryOut; +import com.seasky.adjustproject.dto.test.TestQueryQry; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import javax.jws.WebService; +import static com.seasky.core.common.Response.ok; + +@Component +@WebService(name = "TestService", targetNamespace = "http://www.seaskysh.com", + endpointInterface = "com.seasky.adjustproject.api.ITestWebService") +public class TestWebService implements ITestWebService { + @Autowired + private TestQueryService testQueryService; + + @Override + public Result<TestQueryOut> testQ(TestQueryQry testQry) { + return ok(ResponseCode.SUCCESS, testQueryService.queryTestList(testQry)); + } +} diff --git a/ServiceSite/src/test/java/com/seasky/adjustproject/ApplicationTests.java b/ServiceSite/src/test/java/com/seasky/adjustproject/ApplicationTests.java new file mode 100644 index 0000000000000000000000000000000000000000..0c57dbb70197797658d480e65fe2da6c95154408 --- /dev/null +++ b/ServiceSite/src/test/java/com/seasky/adjustproject/ApplicationTests.java @@ -0,0 +1,13 @@ +package com.seasky.adjustproject; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class ApplicationTests { + + @Test + void contextLoads() { + } + +}