diff --git a/intc-modules/intc-collect/README.md b/intc-modules/intc-collect/README.md
new file mode 100644
index 0000000..d76f839
--- /dev/null
+++ b/intc-modules/intc-collect/README.md
@@ -0,0 +1 @@
+特定业务模块
\ No newline at end of file
diff --git a/intc-modules/intc-collect/pom.xml b/intc-modules/intc-collect/pom.xml
new file mode 100644
index 0000000..c6420b9
--- /dev/null
+++ b/intc-modules/intc-collect/pom.xml
@@ -0,0 +1,143 @@
+
+
+
+ com.intc
+ intc-modules
+ 3.6.3
+
+ 4.0.0
+
+ intc-collect
+
+
+ intc-collect 智聪收藏
+
+
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-discovery
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-config
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-sentinel
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+
+
+ org.springframework.boot
+ spring-boot-starter-security
+
+
+ io.micrometer
+ micrometer-registry-prometheus
+
+
+
+
+
+ io.springfox
+ springfox-swagger-ui
+ ${swagger.fox.version}
+
+
+
+
+
+
+
+
+
+
+ com.intc
+ intc-common-datasource
+ 3.6.3
+
+
+
+
+ com.intc
+ intc-common-datascope
+ 3.6.3
+
+
+
+ org.postgresql
+ postgresql
+ 42.2.22
+
+
+
+ org.projectlombok
+ lombok
+
+
+
+
+
+ com.intc
+ intc-common-log
+
+
+
+
+ com.intc
+ intc-common-swagger
+
+
+ ws.schild
+ jave-core
+ 2.4.6
+
+
+ ws.schild
+ jave-native-win64
+ 2.4.6
+
+
+ ws.schild
+ jave-native-linux64
+ 2.4.6
+
+
+ org.springframework
+ spring-test
+ 5.3.3
+ compile
+
+
+
+
+ ${project.artifactId}
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ repackage
+
+
+
+
+
+
+
+
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/IntcCollectApplication.java b/intc-modules/intc-collect/src/main/java/com/intc/IntcCollectApplication.java
new file mode 100644
index 0000000..c11e9e9
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/IntcCollectApplication.java
@@ -0,0 +1,25 @@
+package com.intc;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import com.intc.common.security.annotation.EnableCustomConfig;
+import com.intc.common.security.annotation.EnableRyFeignClients;
+import com.intc.common.swagger.annotation.EnableCustomSwagger2;
+
+/**
+ * 系统模块
+ *
+ * @author ruoyi
+ */
+@EnableCustomConfig
+@EnableCustomSwagger2
+@EnableRyFeignClients
+@SpringBootApplication
+public class IntcCollectApplication
+{
+ public static void main(String[] args)
+ {
+ SpringApplication.run(IntcCollectApplication.class, args);
+ System.out.println("(♥◠‿◠)ノ゙ 智聪收藏业务模块启动成功 ლ(´ڡ`ლ)゙");
+ }
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/collect/controller/CommemorativeCoinController.java b/intc-modules/intc-collect/src/main/java/com/intc/collect/controller/CommemorativeCoinController.java
new file mode 100644
index 0000000..898e0b6
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/collect/controller/CommemorativeCoinController.java
@@ -0,0 +1,116 @@
+package com.intc.collect.controller;
+
+import java.util.List;
+import java.io.IOException;
+import javax.servlet.http.HttpServletResponse;
+import javax.annotation.Resource;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.intc.common.log.annotation.Log;
+import com.intc.common.log.enums.BusinessType;
+import com.intc.common.security.annotation.RequiresPermissions;
+import com.intc.collect.domain.CommemorativeCoin;
+import com.intc.collect.domain.vo.CommemorativeCoinVo;
+import com.intc.collect.domain.dto.CommemorativeCoinDto;
+import com.intc.collect.service.ICommemorativeCoinService;
+import com.intc.common.core.web.controller.BaseController;
+import com.intc.common.core.web.domain.AjaxResult;
+import com.intc.common.core.utils.poi.ExcelUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import com.intc.common.core.web.page.TableDataInfo;
+
+/**
+ * 流通纪念币Controller
+ *
+ * @author tianyongbao
+ * @date 2026-02-21
+ */
+@Api(tags=" 流通纪念币")
+@RestController
+@RequestMapping("/commemorativeCoin")
+public class CommemorativeCoinController extends BaseController
+{
+ @Resource
+ private ICommemorativeCoinService commemorativeCoinService;
+
+ /**
+ * 查询流通纪念币列表
+ */
+ @ApiOperation(value="查询流通纪念币列表",response = CommemorativeCoinVo.class)
+ @RequiresPermissions("collect:commemorativeCoin:list")
+ @GetMapping("/list")
+ public TableDataInfo list(CommemorativeCoinDto commemorativeCoinDto)
+ {
+ startPage();
+ List list = commemorativeCoinService.selectCommemorativeCoinList(commemorativeCoinDto);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出流通纪念币列表
+ */
+ @ApiOperation(value="导出流通纪念币列表")
+ @RequiresPermissions("collect:commemorativeCoin:export")
+ @Log(title = "流通纪念币", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, CommemorativeCoinDto commemorativeCoinDto)
+ {
+ List list = commemorativeCoinService.selectCommemorativeCoinList(commemorativeCoinDto);
+ ExcelUtil util = new ExcelUtil(CommemorativeCoinVo.class);
+ util.exportExcel(response, list, "流通纪念币数据");
+ }
+
+ /**
+ * 获取流通纪念币详细信息
+ */
+ @ApiOperation(value="获取流通纪念币详细信息")
+ @RequiresPermissions("collect:commemorativeCoin:query")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return success(commemorativeCoinService.selectCommemorativeCoinById(id));
+ }
+
+ /**
+ * 新增流通纪念币
+ */
+ @ApiOperation(value="新增流通纪念币")
+ @RequiresPermissions("collect:commemorativeCoin:add")
+ @Log(title = "流通纪念币", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody CommemorativeCoin commemorativeCoin)
+ {
+ return toAjax(commemorativeCoinService.insertCommemorativeCoin(commemorativeCoin));
+ }
+
+ /**
+ * 修改流通纪念币
+ */
+ @ApiOperation(value="修改流通纪念币")
+ @RequiresPermissions("collect:commemorativeCoin:edit")
+ @Log(title = "流通纪念币", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody CommemorativeCoin commemorativeCoin)
+ {
+ return toAjax(commemorativeCoinService.updateCommemorativeCoin(commemorativeCoin));
+ }
+
+ /**
+ * 删除流通纪念币
+ */
+ @ApiOperation(value="删除流通纪念币")
+ @RequiresPermissions("collect:commemorativeCoin:remove")
+ @Log(title = "流通纪念币", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(commemorativeCoinService.deleteCommemorativeCoinByIds(ids));
+ }
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/CommemorativeCoin.java b/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/CommemorativeCoin.java
new file mode 100644
index 0000000..60cb528
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/CommemorativeCoin.java
@@ -0,0 +1,102 @@
+package com.intc.collect.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.intc.common.core.annotation.Excel;
+import com.intc.common.core.web.domain.BaseEntity;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import javax.validation.constraints.*;
+/**
+ * 流通纪念币对象 col_commemorative_coin
+ *
+ * @author tianyongbao
+ * @date 2026-02-21
+ */
+@ApiModel("流通纪念币对象")
+@Data
+public class CommemorativeCoin extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键 */
+ private Long id;
+
+ /** 类型 */
+ @ApiModelProperty(value="类型)")
+ @NotNull(message="类型不能为空")
+ @Excel(name = "类型")
+ private String type;
+
+ /** 全称 */
+ @ApiModelProperty(value="全称)")
+ @NotNull(message="全称不能为空")
+ @Excel(name = "全称")
+ private String fullName;
+
+ /** 简称 */
+ @ApiModelProperty(value="简称)")
+ @NotNull(message="简称不能为空")
+ @Excel(name = "简称")
+ private String shortName;
+
+ /** 面值 */
+ @ApiModelProperty(value="面值)")
+ @NotNull(message="面值不能为空")
+ @Excel(name = "面值")
+ private String faceValue;
+
+ /** 发行时间 */
+ @ApiModelProperty(value="发行时间)")
+ @NotNull(message="发行时间不能为空")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "发行时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date issueDate;
+
+ /** 发行年份 */
+ private String issueYear;
+
+ /** 系列 */
+ @ApiModelProperty(value="系列)")
+ @NotNull(message="系列不能为空")
+ @Excel(name = "系列")
+ private String series;
+
+ /** 套装编号 */
+ private String setNumber;
+
+ /** 版别 */
+ private String blockType;
+
+ /** 形状 */
+ private String shape;
+
+ /** 删除标志(0代表存在 1代表删除) */
+ private String delFlag;
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("type", getType())
+ .append("fullName", getFullName())
+ .append("shortName", getShortName())
+ .append("faceValue", getFaceValue())
+ .append("issueDate", getIssueDate())
+ .append("issueYear", getIssueYear())
+ .append("series", getSeries())
+ .append("setNumber", getSetNumber())
+ .append("blockType", getBlockType())
+ .append("shape", getShape())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .append("delFlag", getDelFlag())
+ .append("remark", getRemark())
+ .toString();
+ }
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/dto/CommemorativeCoinDto.java b/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/dto/CommemorativeCoinDto.java
new file mode 100644
index 0000000..4328e24
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/dto/CommemorativeCoinDto.java
@@ -0,0 +1,54 @@
+package com.intc.collect.domain.dto;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import java.io.Serializable;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+/**
+ * 流通纪念币Dto对象 col_commemorative_coin
+ *
+ * @author tianyongbao
+ * @date 2026-02-21
+ */
+@ApiModel("流通纪念币Dto对象")
+@Data
+public class CommemorativeCoinDto implements Serializable
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 类型 */
+ @ApiModelProperty(value="类型")
+ private String type;
+
+ /** 全称 */
+ @ApiModelProperty(value="全称")
+ private String fullName;
+
+ /** 简称 */
+ @ApiModelProperty(value="简称")
+ private String shortName;
+
+ /** 发行时间 */
+ @ApiModelProperty(value="发行时间")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date issueDate;
+
+ /** 发行年份 */
+ @ApiModelProperty(value="发行年份")
+ private String issueYear;
+
+ /** 系列 */
+ @ApiModelProperty(value="系列")
+ private String series;
+
+ /** 版别 */
+ @ApiModelProperty(value="版别")
+ private String blockType;
+
+ /** 形状 */
+ @ApiModelProperty(value="形状")
+ private String shape;
+
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/vo/CommemorativeCoinVo.java b/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/vo/CommemorativeCoinVo.java
new file mode 100644
index 0000000..ebc8a1e
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/collect/domain/vo/CommemorativeCoinVo.java
@@ -0,0 +1,17 @@
+package com.intc.collect.domain.vo;
+
+import com.intc.collect.domain.CommemorativeCoin;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+/**
+ * 流通纪念币Vo对象 col_commemorative_coin
+ *
+ * @author tianyongbao
+ * @date 2026-02-21
+ */
+@ApiModel("流通纪念币Vo对象")
+@Data
+public class CommemorativeCoinVo extends CommemorativeCoin
+{
+
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/collect/mapper/CommemorativeCoinMapper.java b/intc-modules/intc-collect/src/main/java/com/intc/collect/mapper/CommemorativeCoinMapper.java
new file mode 100644
index 0000000..76f9d39
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/collect/mapper/CommemorativeCoinMapper.java
@@ -0,0 +1,79 @@
+package com.intc.collect.mapper;
+
+import java.util.List;
+import com.intc.collect.domain.CommemorativeCoin;
+import com.intc.collect.domain.dto.CommemorativeCoinDto;
+import com.intc.collect.domain.vo.CommemorativeCoinVo;
+
+/**
+ * 流通纪念币Mapper接口
+ *
+ * @author tianyongbao
+ * @date 2026-02-21
+ */
+public interface CommemorativeCoinMapper
+{
+ /**
+ * 查询流通纪念币
+ *
+ * @param id 流通纪念币主键
+ * @return 流通纪念币
+ */
+ public CommemorativeCoinVo selectCommemorativeCoinById(Long id);
+
+ /**
+ * 查询流通纪念币列表
+ *
+ * @param commemorativeCoinDto 流通纪念币
+ * @return 流通纪念币集合
+ */
+ public List selectCommemorativeCoinList(CommemorativeCoinDto commemorativeCoinDto);
+
+ /**
+ * 新增流通纪念币
+ *
+ * @param commemorativeCoin 流通纪念币
+ * @return 结果
+ */
+ public int insertCommemorativeCoin(CommemorativeCoin commemorativeCoin);
+
+ /**
+ * 修改流通纪念币
+ *
+ * @param commemorativeCoin 流通纪念币
+ * @return 结果
+ */
+ public int updateCommemorativeCoin(CommemorativeCoin commemorativeCoin);
+
+ /**
+ * 删除流通纪念币
+ *
+ * @param id 流通纪念币主键
+ * @return 结果
+ */
+ public int deleteCommemorativeCoinById(Long id);
+
+ /**
+ * 批量删除流通纪念币
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteCommemorativeCoinByIds(Long[] ids);
+
+ /**
+ * 逻辑删除流通纪念币
+ *
+ * @param id 流通纪念币主键
+ * @return 结果
+ */
+ public int removeCommemorativeCoinById(Long id);
+
+ /**
+ * 批量逻辑删除流通纪念币
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int removeCommemorativeCoinByIds(Long[] ids);
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/collect/service/ICommemorativeCoinService.java b/intc-modules/intc-collect/src/main/java/com/intc/collect/service/ICommemorativeCoinService.java
new file mode 100644
index 0000000..2af69bc
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/collect/service/ICommemorativeCoinService.java
@@ -0,0 +1,63 @@
+package com.intc.collect.service;
+
+import java.util.List;
+import com.intc.collect.domain.CommemorativeCoin;
+import com.intc.collect.domain.dto.CommemorativeCoinDto;
+import com.intc.collect.domain.vo.CommemorativeCoinVo;
+
+/**
+ * 流通纪念币Service接口
+ *
+ * @author tianyongbao
+ * @date 2026-02-21
+ */
+public interface ICommemorativeCoinService
+{
+ /**
+ * 查询流通纪念币
+ *
+ * @param id 流通纪念币主键
+ * @return 流通纪念币
+ */
+ public CommemorativeCoinVo selectCommemorativeCoinById(Long id);
+
+ /**
+ * 查询流通纪念币列表
+ *
+ * @param commemorativeCoinDto 流通纪念币
+ * @return 流通纪念币集合
+ */
+ public List selectCommemorativeCoinList(CommemorativeCoinDto commemorativeCoinDto);
+
+ /**
+ * 新增流通纪念币
+ *
+ * @param commemorativeCoin 流通纪念币
+ * @return 结果
+ */
+ public int insertCommemorativeCoin(CommemorativeCoin commemorativeCoin);
+
+ /**
+ * 修改流通纪念币
+ *
+ * @param commemorativeCoin 流通纪念币
+ * @return 结果
+ */
+ public int updateCommemorativeCoin(CommemorativeCoin commemorativeCoin);
+
+ /**
+ * 批量删除流通纪念币
+ *
+ * @param ids 需要删除的流通纪念币主键集合
+ * @return 结果
+ */
+ public int deleteCommemorativeCoinByIds(Long[] ids);
+
+ /**
+ * 删除流通纪念币信息
+ *
+ * @param id 流通纪念币主键
+ * @return 结果
+ */
+ public int deleteCommemorativeCoinById(Long id);
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/collect/service/impl/CommemorativeCoinServiceImpl.java b/intc-modules/intc-collect/src/main/java/com/intc/collect/service/impl/CommemorativeCoinServiceImpl.java
new file mode 100644
index 0000000..47082bd
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/collect/service/impl/CommemorativeCoinServiceImpl.java
@@ -0,0 +1,103 @@
+package com.intc.collect.service.impl;
+
+import java.util.List;
+import com.intc.common.core.utils.DateUtils;
+import com.intc.common.security.utils.SecurityUtils;
+import com.intc.common.core.utils.IdWorker;
+import javax.annotation.Resource;
+import org.springframework.stereotype.Service;
+import com.intc.collect.mapper.CommemorativeCoinMapper;
+import com.intc.collect.domain.CommemorativeCoin;
+import com.intc.collect.domain.dto.CommemorativeCoinDto;
+import com.intc.collect.domain.vo.CommemorativeCoinVo;
+import com.intc.collect.service.ICommemorativeCoinService;
+
+/**
+ * 流通纪念币Service业务层处理
+ *
+ * @author tianyongbao
+ * @date 2026-02-21
+ */
+@Service
+public class CommemorativeCoinServiceImpl implements ICommemorativeCoinService
+{
+ @Resource
+ private CommemorativeCoinMapper commemorativeCoinMapper;
+
+ /**
+ * 查询流通纪念币
+ *
+ * @param id 流通纪念币主键
+ * @return 流通纪念币
+ */
+ @Override
+ public CommemorativeCoinVo selectCommemorativeCoinById(Long id)
+ {
+ return commemorativeCoinMapper.selectCommemorativeCoinById(id);
+ }
+
+ /**
+ * 查询流通纪念币列表
+ *
+ * @param commemorativeCoinDto 流通纪念币
+ * @return 流通纪念币
+ */
+ @Override
+ public List selectCommemorativeCoinList(CommemorativeCoinDto commemorativeCoinDto)
+ {
+ return commemorativeCoinMapper.selectCommemorativeCoinList(commemorativeCoinDto);
+ }
+
+ /**
+ * 新增流通纪念币
+ *
+ * @param commemorativeCoin 流通纪念币
+ * @return 结果
+ */
+ @Override
+ public int insertCommemorativeCoin(CommemorativeCoin commemorativeCoin)
+ {
+ commemorativeCoin.setId(IdWorker.getId());
+ commemorativeCoin.setCreateBy(SecurityUtils.getUsername());
+ commemorativeCoin.setCreateTime(DateUtils.getNowDate());
+ return commemorativeCoinMapper.insertCommemorativeCoin(commemorativeCoin);
+ }
+
+ /**
+ * 修改流通纪念币
+ *
+ * @param commemorativeCoin 流通纪念币
+ * @return 结果
+ */
+ @Override
+ public int updateCommemorativeCoin(CommemorativeCoin commemorativeCoin)
+ {
+ commemorativeCoin.setUpdateBy(SecurityUtils.getUsername());
+ commemorativeCoin.setUpdateTime(DateUtils.getNowDate());
+ return commemorativeCoinMapper.updateCommemorativeCoin(commemorativeCoin);
+ }
+
+ /**
+ * 批量删除流通纪念币
+ *
+ * @param ids 需要删除的流通纪念币主键
+ * @return 结果
+ */
+ @Override
+ public int deleteCommemorativeCoinByIds(Long[] ids)
+ {
+ return commemorativeCoinMapper.removeCommemorativeCoinByIds(ids);
+ }
+
+ /**
+ * 删除流通纪念币信息
+ *
+ * @param id 流通纪念币主键
+ * @return 结果
+ */
+ @Override
+ public int deleteCommemorativeCoinById(Long id)
+ {
+ return commemorativeCoinMapper.removeCommemorativeCoinById(id);
+ }
+}
diff --git a/intc-modules/intc-collect/src/main/java/com/intc/config/ActuatorSecurityConfig.java b/intc-modules/intc-collect/src/main/java/com/intc/config/ActuatorSecurityConfig.java
new file mode 100644
index 0000000..04d6411
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/java/com/intc/config/ActuatorSecurityConfig.java
@@ -0,0 +1,44 @@
+package com.intc.config;
+
+import com.intc.common.core.utils.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.core.env.Environment;
+import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
+import org.springframework.security.config.annotation.web.builders.HttpSecurity;
+import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
+import org.springframework.security.web.SecurityFilterChain;
+
+/**
+ * @ClassName ActuatorSecurityConfig
+ * @Author YaphetS
+ * @Date 2023/3/14 9:18
+ * @Version 1.0
+ * @Description TODO
+ */
+@Configuration
+@EnableWebSecurity
+@EnableGlobalMethodSecurity(prePostEnabled = true)
+public class ActuatorSecurityConfig {
+
+ @Autowired
+ Environment env;
+
+ @Bean
+ public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
+ String contextPath = env.getProperty("management.endpoints.web.base-path");
+ if(StringUtils.isEmpty(contextPath)) {
+ contextPath = "/actuator";
+ }
+ http.csrf().disable();
+ http.authorizeRequests()
+ .antMatchers("/**"+contextPath+"/**")
+ .authenticated()
+ .anyRequest()
+ .permitAll()
+ .and()
+ .httpBasic();
+ return http.build();
+ }
+}
diff --git a/intc-modules/intc-collect/src/main/resources/banner.txt b/intc-modules/intc-collect/src/main/resources/banner.txt
new file mode 100644
index 0000000..44b733e
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/resources/banner.txt
@@ -0,0 +1,15 @@
+Spring Boot Version: ${spring-boot.version}
+Spring Application Name: ${spring.application.name}
+(♥◠‿◠)ノ゙ 智聪健康业务模块开始启动 ლ(´ڡ`ლ)
+ .----------------. .-----------------. .----------------. .----------------.
+| .--------------. || .--------------. || .--------------. || .--------------. |
+| | _____ | || | ____ _____ | || | _________ | || | ______ | |
+| | |_ _| | || ||_ \|_ _| | || | | _ _ | | || | .' ___ | | |
+| | | | | || | | \ | | | || | |_/ | | \_| | || | / .' \_| | |
+| | | | | || | | |\ \| | | || | | | | || | | | | |
+| | _| |_ | || | _| |_\ |_ | || | _| |_ | || | \ `.___.'\ | |
+| | |_____| | || ||_____|\____| | || | |_____| | || | `._____.' | |
+| | | || | | || | | || | | |
+| '--------------' || '--------------' || '--------------' || '--------------' |
+ '----------------' '----------------' '----------------' '----------------'
+
diff --git a/intc-modules/intc-collect/src/main/resources/bootstrap.yml b/intc-modules/intc-collect/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..7f06c74
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/resources/bootstrap.yml
@@ -0,0 +1,48 @@
+# Tomcat
+server:
+ max-http-header-size: 4048576
+ port: 9258
+ tomcat:
+ max-http-form-post-size: -1
+
+# Spring
+spring:
+ application:
+ # 应用名称
+ name: intc-collect
+ profiles:
+ # 环境配置
+ active: dev
+ banner:
+ charset: UTF-8
+ location: classpath:banner.txt
+ servlet:
+ multipart:
+ enabled: true
+ max-file-size: -1
+ max-request-size: -1
+ cloud:
+ nacos:
+ discovery:
+ namespace: intc
+ username: nacos
+ password: ZmNDMacAng
+ # 配置中心地址
+ server-addr: 117.72.197.29:8858
+ group: dev
+# ip: 8.140.22.151
+ config:
+ namespace: intc
+ username: nacos
+ password: ZmNDMacAng
+ # 配置中心地址
+ server-addr: 117.72.197.29:8858
+ # 配置文件格式
+ file-extension: yml
+ # 共享配置
+ shared-configs:
+ - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+# 用于服务监控可在线查看日志,该配置用于生产环境
+logging:
+ file:
+ name: logs/${spring.application.name}/info.log
diff --git a/intc-modules/intc-collect/src/main/resources/logback.xml b/intc-modules/intc-collect/src/main/resources/logback.xml
new file mode 100644
index 0000000..d54265e
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/resources/logback.xml
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+ ${log.pattern}
+
+
+
+
+
+ ${log.path}/info.log
+
+
+
+ ${log.path}/info.%d{yyyy-MM-dd}.log
+
+ 60
+
+
+ ${log.pattern}
+
+
+
+ INFO
+
+ ACCEPT
+
+ DENY
+
+
+
+
+ ${log.path}/error.log
+
+
+
+ ${log.path}/error.%d{yyyy-MM}.log
+
+ 60
+
+
+ ${log.pattern}
+
+
+
+ ERROR
+
+ ACCEPT
+
+ DENY
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/intc-modules/intc-collect/src/main/resources/mapper/collect/CommemorativeCoinMapper.xml b/intc-modules/intc-collect/src/main/resources/mapper/collect/CommemorativeCoinMapper.xml
new file mode 100644
index 0000000..1a1b456
--- /dev/null
+++ b/intc-modules/intc-collect/src/main/resources/mapper/collect/CommemorativeCoinMapper.xml
@@ -0,0 +1,137 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select a.id, a.type, a.full_name, a.short_name, a.face_value, a.issue_date, a.issue_year, a.series, a.set_number, a.block_type, a.shape, a.create_by, a.create_time, a.update_by, a.update_time, a.del_flag, a.remark from col_commemorative_coin a
+
+
+
+
+
+
+
+ insert into col_commemorative_coin
+
+ id,
+ type,
+ full_name,
+ short_name,
+ face_value,
+ issue_date,
+ issue_year,
+ series,
+ set_number,
+ block_type,
+ shape,
+ create_by,
+ create_time,
+ update_by,
+ update_time,
+ del_flag,
+ remark,
+
+
+ #{id},
+ #{type},
+ #{fullName},
+ #{shortName},
+ #{faceValue},
+ #{issueDate},
+ #{issueYear},
+ #{series},
+ #{setNumber},
+ #{blockType},
+ #{shape},
+ #{createBy},
+ #{createTime},
+ #{updateBy},
+ #{updateTime},
+ #{delFlag},
+ #{remark},
+
+
+
+
+ update col_commemorative_coin
+
+ type = #{type},
+ full_name = #{fullName},
+ short_name = #{shortName},
+ face_value = #{faceValue},
+ issue_date = #{issueDate},
+ issue_year = #{issueYear},
+ series = #{series},
+ set_number = #{setNumber},
+ block_type = #{blockType},
+ shape = #{shape},
+ create_by = #{createBy},
+ create_time = #{createTime},
+ update_by = #{updateBy},
+ update_time = #{updateTime},
+ del_flag = #{delFlag},
+ remark = #{remark},
+
+ where id = #{id}
+
+
+
+ delete from col_commemorative_coin where id = #{id}
+
+
+
+ delete from col_commemorative_coin where id in
+
+ #{id}
+
+
+
+ update col_commemorative_coin set del_flag='1' where id = #{id}
+
+
+
+ update col_commemorative_coin set del_flag='1' where id in
+
+ #{id}
+
+
+
diff --git a/intc-modules/intc-collect/src/main/resources/static/images/qrcode_logo.jpg b/intc-modules/intc-collect/src/main/resources/static/images/qrcode_logo.jpg
new file mode 100644
index 0000000..ff9f93a
Binary files /dev/null and b/intc-modules/intc-collect/src/main/resources/static/images/qrcode_logo.jpg differ
diff --git a/intc-modules/intc-collect/src/main/resources/static/images/qrcode_template.jpg b/intc-modules/intc-collect/src/main/resources/static/images/qrcode_template.jpg
new file mode 100644
index 0000000..3ee550b
Binary files /dev/null and b/intc-modules/intc-collect/src/main/resources/static/images/qrcode_template.jpg differ
diff --git a/intc-modules/pom.xml b/intc-modules/pom.xml
index a2af52c..b9357ea 100644
--- a/intc-modules/pom.xml
+++ b/intc-modules/pom.xml
@@ -16,6 +16,7 @@
intc-invest
intc-health
intc-weixin
+ intc-collect
intc-modules