提交 2fd9362f authored 作者: yangqi's avatar yangqi

lot服务

上级
## Eclipse
.project
.metadata
.classpath
.settings/
.loadpath
## Maven
target/
**/target/
## Idea
.idea/
.idea/*
*.iml
#*.yml
## Mac crap
.DS_Store
/log/
**/log/
##cache
cache/
*.log
*.out
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>lefull-lot-microservice</artifactId>
<groupId>cn.lefull</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>lefull-lot-api-web</artifactId>
<version>${project.build.version}</version>
<name>lefull-lot-api-web</name>
<dependencies>
<dependency>
<groupId>cn.lefull</groupId>
<artifactId>lefull-lot-service</artifactId>
<version>${project.build.version}</version>
</dependency>
<dependency>
<groupId>cn.lefull</groupId>
<artifactId>lefull-lot-interaction</artifactId>
<version>${project.build.version}</version>
</dependency>
<dependency>
<groupId>cn.lefull</groupId>
<artifactId>lefull-lot-repository</artifactId>
<version>${project.build.version}</version>
</dependency>
</dependencies>
</project>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>Every-Color</id>
<formats>
<format>tar.gz</format>
</formats>
<fileSets>
<fileSet>
<directory>${project.basedir}/src/sbin</directory>
<outputDirectory>./sbin</outputDirectory>
<useDefaultExcludes>false</useDefaultExcludes>
<excludes>
<exclude>assembly*</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>target/classes</directory>
<outputDirectory>./classes</outputDirectory>
<useDefaultExcludes>true</useDefaultExcludes>
</fileSet>
<fileSet>
<directory>logs</directory>
<outputDirectory>../${project.basedir}/logs</outputDirectory>
<excludes>
<exclude>*.*</exclude>
</excludes>
<useDefaultExcludes>true</useDefaultExcludes>
</fileSet>
<!--<fileSet>
<directory>../${project.basedir}/csp-third/lib</directory>
<outputDirectory>/lib</outputDirectory>
</fileSet>-->
</fileSets>
<dependencySets>
<dependencySet>
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>/lib</outputDirectory>
<scope>runtime</scope>
</dependencySet>
</dependencySets>
</assembly>
#基础镜像
FROM microservice/jdk1.8-skywalking-agent:latest
#维护者
MAINTAINER sumengxuan
#镜像说明
LABEL version="1.0" description="示例服务" by="只圣睿"
#拷贝app包到镜像目录
COPY app.tar.gz /
#解压文件
RUN ["tar", "-zxvf", "/app.tar.gz"]
#创建日志目录
RUN ["mkdir", "-p", "/app/log"]
#删除文件
RUN ["rm", "-f", "/app.tar.gz"]
#拷贝启动命令
COPY start.sh /app/
#设置环境变量
ENV SPRING_PROFILES_ACTIVE=dev
#服务端口
EXPOSE 8010
#挂载目录
VOLUME ["/tmp"," /app/log"]
#启动命令
ENTRYPOINT cd /app && sh start.sh $SPRING_PROFILES_ACTIVE
#!/usr/bin/env bash
#JDK路径
#JAVA_HOME=""
#利用pwd命令获取当前工程目录,实际获取到的是该shell脚本的目录。再利用sed命令将/bin替换为空
Project_HOME=$(echo `pwd` | sed 's/\/sbin//')
APPLICATION_NAME=lefull-organization
LOG_DIR=$Project_HOME/log
APPLICATION_MAIN=cn.lefull.organization.OrganizationApplication
CLASSPATH=$Project_HOME/classes
PORT=9099
#EVN=development
#EVN=default
#EVN=production
#EVN=dev
EVN=$1
#JVM启动参数
#-server:一定要作为第一个参数,在多个CPU时性能佳
#-Xloggc:记录GC日志,这里建议写成绝对路径,如此便可在任意目录下执行该shell脚本
#JAVA_OPTS="-ms512m -mx512m -Xmn256m -Djava.awt.headless=true -XX:MaxPermSize=128m"
JAVA_OPTS="-Dspring.profiles.active=$EVN -Dserver.port=$PORT -Duser.timezone=GMT+8 -server -Xms512m -Xmx512m -Xloggc:${LOG_DIR}/gc.log -javaagent:/usr/local/skywalking/agent/skywalking-agent.jar -Dskywalking.agent.service_name=lefull-$EVN-$APPLICATION_NAME -Dskywalking.collector.backend_service=172.17.17.21:11800"
for jarfile in "$Project_HOME"/lib/*.jar
do
CLASSPATH="$CLASSPATH":"$jarfile"
done
#-------------------------------------------------------------------------------------------------------------
#getPID()-->获取Java应用的PID
#说明:通过JDK自带的JPS命令及grep命令,准确查找Java应用的PID
#其中:[jps -l]表示显示Java主程序的完整包路径
# awk命令可以分割出PID($1部分)及Java主程序名称($2部分)
#例子:[$jps -l | grep $APPLICATION_MAIN]-->>[5775 jrx.anytxn.cms.App]
#另外:用这个命令也可以直接取到程序的PID-->>[ps aux|grep java|grep $APPLICATION_MAIN|grep -v grep|awk '{print $2}']
#-------------------------------------------------------------------------------------------------------------
#初始化全局变量tradePortalPID,用于标识交易前置系统的PID,0表示未启动
TPID=0
getPID(){
javaps=`jps -l | grep $APPLICATION_MAIN`
if [ -n "$javaps" ]; then
TPID=`echo $javaps | awk '{print $1}'`
else
TPID=0
fi
}
logDir(){
if [ ! -d "$LOG_DIR" ]; then
mkdir "$LOG_DIR"
fi
}
startup(){
getPID
logDir
echo "================================================================================================================"
if [ $TPID -ne 0 ]; then
echo "$APP_MAIN already started(PID=$TPID)"
echo "================================================================================================================"
else
echo -n "Starting $APPLICATION_MAIN"
java $JAVA_OPTS -classpath $CLASSPATH $APPLICATION_MAIN
fi
}
startup
\ No newline at end of file
package cn.lefull;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
/**
* 启动类
*
* @author zhizhi
* @date 2022/7/18 13:49
*/
@EnableEurekaClient
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
package cn.lefull.api.test;
import cn.lefull.common.annotation.NoAuth;
import cn.lefull.common.response.ApiResponse;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/test")
public class TestController {
@NoAuth
@GetMapping("/test")
public ApiResponse test() {
return new ApiResponse("1000", "2000");
}
}
server:
port: 10001
spring:
profiles:
active: dev
common:
auth:
checkLogin: true # 表示使用框架做登录验证
---
spring:
profiles: dev
application:
name: lefull-demo-microservice
cloud:
config:
name: lefull-demo-microservice, lefull-common
profile: dev
label: master
uri: http://59.110.163.210:7001 #指定使用ip访问配置中心
bus:
trace:
enabled: true
---
spring:
profiles: test
application:
name: lefull-demo-microservice
cloud:
config:
name: lefull-demo-microservice, lefull-common
profile: test
label: master
uri: http://172.17.17.13:7001 #指定使用ip访问配置中心
bus:
trace:
enabled: true
---
spring:
profiles: pre
application:
name: lefull-demo-microservice
cloud:
config:
name: lefull-demo-microservice, lefull-common
profile: pre
label: master
uri: http://172.17.17.21:7001 #指定使用ip访问配置中心
bus:
trace:
enabled: true
---
spring:
profiles: lxx
application:
name: lefull-demo-microservice
cloud:
config:
name: lefull-demo-microservice, lefull-common
profile: lxx
label: master
uri: http://172.17.17.16:17001 #指定使用ip访问配置中心
bus:
trace:
enabled: true
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<!-- %m输出的信息,%p日志级别,%t线程名,%d日期,%c类的全名,%i索引【从数字0开始递增】,,, -->
<!-- appender是configuration的子节点,是负责写日志的组件。 -->
<!-- ConsoleAppender:把日志输出到控制台 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d %p (%file:%line\)-[%X{GLOBAL_MSG_ID}] %m%n</pattern>
<!-- 控制台也要使用UTF-8,不要使用GBK,否则会中文乱码 -->
<charset>UTF-8</charset>
</encoder>
</appender>
<!-- RollingFileAppender:滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 -->
<!-- 以下的大概意思是:1.先按日期存日志,日期变了,将前一天的日志文件名重命名为XXX%日期%索引,新的日志仍然是log.log -->
<!-- 2.如果日期没有发生变化,但是当前日志的文件大小超过1KB时,对当前日志进行分割 重命名-->
<appender name="syslog"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>log/log.log</File>
<!-- rollingPolicy:当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名。 -->
<!-- TimeBasedRollingPolicy: 最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责出发滚动 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 活动文件的名字会根据fileNamePattern的值,每隔一段时间改变一次 -->
<!-- 文件名:log/log.2018-01-04.0.log -->
<fileNamePattern>log/log.%d.%i.log</fileNamePattern>
<!-- 每产生一个日志文件,该日志文件的保存期限为5天 -->
<maxHistory>5</maxHistory>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- maxFileSize:这是活动文件的大小,默认值是10MB,设置为20480KB-->
<maxFileSize>20480KB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<!-- pattern节点,用来设置日志的输入格式 -->
<pattern>%d %p (%file:%line\)-[%X{GLOBAL_MSG_ID}] %m%n</pattern>
<!-- 记录日志的编码 -->
<charset>UTF-8</charset> <!-- 此处设置字符集 -->
</encoder>
</appender>
<!-- 控制台输出日志级别 -->
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
<!-- 测试及生产环境 -->
<springProfile name="test,pre,lxx">
<root level="info">
<appender-ref ref="syslog" />
</root>
<!-- 打印执行的SQL. -->
<logger name="cn.lefull.repository.mapper" level="debug" additivity="false" >
<appender-ref ref="syslog" />
</logger>
</springProfile>
</configuration>
<?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="cn.lefull.repository.mapper.test.TestMapper">
<insert id="addTest" keyProperty="id" useGeneratedKeys="true" parameterType="cn.lefull.repository.model.test.Test">
INSERT INTO test
(user_id, user_name, phone, id_number, bank_no, operator_employee_id, create_time, update_time, is_delete, delete_time)
VALUES(#{userId}, #{userName}, #{phone}, #{idNumber}, #{bankNo}, #{operateEmployeeId}, #{createTime}, #{updateTime}, #{isDelete}, #{deleteTime});
</insert>
<update id="updateById">
update test set user_uame = #{userName} where
<if test="id != null">
id = #{id}
</if>
<if test="id == null">
1 != 1
</if>
</update>
<select id="getTestById" resultType="cn.lefull.repository.model.test.Test">
SELECT id, user_id, user_name, phone, id_number, bank_no, operator_employee_id, create_time, update_time, is_delete, delete_time
FROM test where id = #{id}
</select>
<select id="getTestList" resultType="cn.lefull.repository.model.test.Test">
SELECT id, user_id, user_name, phone, id_number, bank_no, operator_employee_id, create_time, update_time, is_delete, delete_time
FROM test;
</select>
</mapper>
#!/usr/bin/env bash
Project_HOME=$(echo `pwd` | sed 's/\/sbin//')
echo "$Project_HOME"
mvn -f $Project_HOME/pom.xml clean assembly:assembly -DskipTests
#!/usr/bin/env bash
#JDK路径
#JAVA_HOME=""
#利用pwd命令获取当前工程目录,实际获取到的是该shell脚本的目录。再利用sed命令将/bin替换为空
Project_HOME=$(echo `pwd` | sed 's/\/sbin//')
APPLICATION_MAIN=cn.lefull.organization.OrganizationApplication
#-------------------------------------------------------------------------------------------------------------
#getPID()-->获取Java应用的PID
#说明:通过JDK自带的JPS命令及grep命令,准确查找Java应用的PID
#其中:[jps -l]表示显示Java主程序的完整包路径
# awk命令可以分割出PID($1部分)及Java主程序名称($2部分)
#另外:用这个命令也可以直接取到程序的PID-->>[ps aux|grep java|grep $APPLICATION_MAIN|grep -v grep|awk '{print $2}']
#-------------------------------------------------------------------------------------------------------------
#初始化全局变量tradePortalPID,用于标识交易前置系统的PID,0表示未启动
TPID=0
getPID(){
javaps=`jps -l | grep $APPLICATION_MAIN`
if [ -n "$javaps" ]; then
TPID=`echo $javaps | awk '{print $1}'`
else
TPID=0
fi
}
TIMES=0
TIMEOUT=20
shutdown(){
getPID
if [ $TPID -ne 0 ]; then
if [ $1 -ne 0 ]; then
echo "=========================Stopping Service=============================="
kill $TPID
#echo $?
if [ $? -eq 0 ]; then
echo ""
else
echo "[Service Stop Failed]"
return
fi
echo -n "Stopping $APPLICATION_MAIN(PID=$TPID)...";
fi
while [ $TPID -ne 0 ] && [ $TIMES -lt $TIMEOUT ]
do
getPID
((TIMES++))
sleep 1
echo -n "."
done
else
echo "$APPLICATION_MAIN is not running"
return
fi
sleep 1
echo "."
getPID
if [ $TPID -eq 0 ]
then
echo "Service Stop Success."
elif [ $TIMES -gt $TIMEOUT ] || [ $TIMES -eq $TIMEOUT ]
then
echo "Service Stop Time out, please kill -9 $TPID"
fi
}
shutdown 3
#!/usr/bin/env bash
#JDK路径
#JAVA_HOME=""
#利用pwd命令获取当前工程目录,实际获取到的是该shell脚本的目录。再利用sed命令将/bin替换为空
Project_HOME=$(echo `pwd` | sed 's/\/sbin//')
LOG_DIR=$Project_HOME/log
APPLICATION_NAME=organization-microservice
APPLICATION_MAIN=cn.lefull.organization.OrganizationApplication
CLASSPATH=$Project_HOME/classes
PORT=9099
#EVN=development
#EVN=default
#EVN=production
#EVN=dev
EVN=$1
#JVM启动参数
#-server:一定要作为第一个参数,在多个CPU时性能佳
#-Xloggc:记录GC日志,这里建议写成绝对路径,如此便可在任意目录下执行该shell脚本
#JAVA_OPTS="-ms512m -mx512m -Xmn256m -Djava.awt.headless=true -XX:MaxPermSize=128m"
JAVA_OPTS="-Dspring.profiles.active=$EVN -Dserver.port=$PORT -Duser.timezone=GMT+8 -server -Xms1024m -Xmx1024m -Xloggc:${LOG_DIR}/gc.log -javaagent:/usr/local/skywalking/agent/skywalking-agent.jar -Dskywalking.agent.service_name=lefull-$EVN-$APPLICATION_NAME -Dskywalking.collector.backend_service=172.17.17.21:11800"
for jarfile in "$Project_HOME"/lib/*.jar
do
CLASSPATH="$CLASSPATH":"$jarfile"
done
#-------------------------------------------------------------------------------------------------------------
#getPID()-->获取Java应用的PID
#说明:通过JDK自带的JPS命令及grep命令,准确查找Java应用的PID
#其中:[jps -l]表示显示Java主程序的完整包路径
# awk命令可以分割出PID($1部分)及Java主程序名称($2部分)
#例子:[$jps -l | grep $APPLICATION_MAIN]-->>[5775 jrx.anytxn.cms.App]
#另外:用这个命令也可以直接取到程序的PID-->>[ps aux|grep java|grep $APPLICATION_MAIN|grep -v grep|awk '{print $2}']
#-------------------------------------------------------------------------------------------------------------
#初始化全局变量tradePortalPID,用于标识交易前置系统的PID,0表示未启动
TPID=0
getPID(){
javaps=`jps -l | grep $APPLICATION_MAIN`
if [ -n "$javaps" ]; then
TPID=`echo $javaps | awk '{print $1}'`
else
TPID=0
fi
}
logDir(){
if [ ! -d "$LOG_DIR" ]; then
mkdir "$LOG_DIR"
fi
}
startup(){
getPID
logDir
echo "================================================================================================================"
if [ $TPID -ne 0 ]; then
echo "$APP_MAIN already started(PID=$TPID)"
echo "================================================================================================================"
else
echo -n "Starting $APPLICATION_MAIN"
nohup java $JAVA_OPTS -classpath $CLASSPATH $APPLICATION_MAIN >/dev/null 2>&1 &
getPID
if [ $TPID -ne 0 ]; then
echo "(PID=$TPID)...[Success]"
echo "================================================================================================================"
else
echo "[Failed]"
echo "================================================================================================================"
fi
fi
}
startup
#tail -f $LOG_DIR/nohup.log
package cn.lefull;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
/**
* Rigorous Test :-)
*/
@Test
public void shouldAnswerWithTrue()
{
assertTrue( true );
}
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>lefull-lot-microservice</artifactId>
<groupId>cn.lefull</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>lefull-lot-common</artifactId>
<version>${project.build.version}</version>
<packaging>jar</packaging>
<name>lefull-lot-common</name>
</project>
package cn.lefull;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
/**
* Rigorous Test :-)
*/
@Test
public void shouldAnswerWithTrue()
{
assertTrue( true );
}
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>lefull-lot-microservice</artifactId>
<groupId>cn.lefull</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>lefull-lot-interaction</artifactId>
<version>${project.build.version}</version>
<name>lefull-lot-interaction</name>
<description>乐乎lot交互层</description>
</project>
package cn.lefull.interaction.dto.test;
import cn.lefull.common.security.mybatis.aspect.DesensitizationFiled;
import cn.lefull.common.security.mybatis.enums.FieldTypeEnum;
import lombok.Data;
/**
* 对上传资源的若干操作
*
* @author zhizhi
* @date 2022/7/18 15:01
*/
@Data
public class TestDTO {
private Integer userId;
private String userName;
private String phone;
private String idNumber;
private String bankNo;
private Integer operateEmployeeId;
}
package cn.lefull.interaction.vo.test;
import lombok.Data;
import java.math.BigDecimal;
/**
* 对上传资源的若干操作
*
* @author zhizhi
* @date 2022/8/23 9:37
*/
@Data
public class TestVO {
private Integer userId;
private String userName;
private Integer apartmentId;
private BigDecimal rentRate;
// private String companyCode;
}
package cn.lefull;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
/**
* Rigorous Test :-)
*/
@Test
public void shouldAnswerWithTrue()
{
assertTrue( true );
}
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>lefull-lot-microservice</artifactId>
<groupId>cn.lefull</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>lefull-lot-repository</artifactId>
<version>${project.build.version}</version>
<packaging>jar</packaging>
<name>lefull-lot-repository</name>
<dependencies>
<dependency>
<groupId>cn.lefull</groupId>
<artifactId>lefull-lot-interaction</artifactId>
<version>${project.build.version}</version>
</dependency>
</dependencies>
</project>
package cn.lefull.repository.mapper.test;
import cn.lefull.repository.model.test.Test;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 测试
*
* @author zhizhi
* @date 2022/7/18 14:50
*/
@Mapper
public interface TestMapper {
int addTest(Test test);
Test getTestById(Integer id);
List<Test> getTestList();
int updateById(Test test);
}
package cn.lefull.repository.model.test;
import cn.lefull.common.security.mybatis.aspect.DesensitizationData;
import cn.lefull.common.security.mybatis.aspect.DesensitizationFiled;
import cn.lefull.common.security.mybatis.aspect.SensitiveData;
import cn.lefull.common.security.mybatis.aspect.SensitiveFiled;
import cn.lefull.common.security.mybatis.enums.FieldTypeEnum;
import lombok.Data;
/**
* 测试实体类
*
* @author zhizhi
* @date 2022/7/18 14:48
*/
@SensitiveData
@DesensitizationData
@Data
public class Test {
private Integer id;
private Integer userId;
@DesensitizationFiled(value = FieldTypeEnum.NAME)
@SensitiveFiled
private String userName;
@DesensitizationFiled(value = FieldTypeEnum.PHONE)
private String phone;
@DesensitizationFiled(value = FieldTypeEnum.ID_NUMBER)
private String idNumber;
@DesensitizationFiled(value = FieldTypeEnum.BANK_CARD)
private String bankNo;
private Integer operateEmployeeId;
private Integer createTime;
private Integer updateTime;
private Byte isDelete;
private Integer deleteTime;
}
package cn.lefull;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
/**
* Rigorous Test :-)
*/
@Test
public void shouldAnswerWithTrue()
{
assertTrue( true );
}
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>lefull-lot-microservice</artifactId>
<groupId>cn.lefull</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>lefull-lot-service</artifactId>
<version>${project.build.version}</version>
<packaging>jar</packaging>
<name>lefull-lot-service</name>
<dependencies>
<dependency>
<groupId>cn.lefull</groupId>
<artifactId>lefull-lot-interaction</artifactId>
<version>${project.build.version}</version>
</dependency>
<dependency>
<groupId>cn.lefull</groupId>
<artifactId>lefull-lot-repository</artifactId>
<version>${project.build.version}</version>
</dependency>
</dependencies>
</project>
package cn.lefull.service.test;
import cn.lefull.interaction.dto.test.TestDTO;
import cn.lefull.repository.model.test.Test;
import java.util.List;
/**
* 测试
*
* @author zhizhi
* @date 2022/7/18 14:47
*/
public interface TestService {
void add(TestDTO dto);
Test getTestById(Integer id);
/**
* 查列表
* @return
*/
List<Test> getTestList();
void addOrUpdate(TestDTO dto);
}
package cn.lefull.service.test;
import cn.lefull.interaction.dto.test.TestDTO;
import cn.lefull.repository.mapper.test.TestMapper;
import cn.lefull.repository.model.test.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 测试
*
* @author zhizhi
* @date 2022/7/18 14:47
*/
@Service
public class TestServiceImpl implements TestService {
@Autowired
private TestMapper testMapper;
@Override
public void add(TestDTO dto) {
Test test = new Test();
test.setUserId(dto.getUserId());
test.setUserName(dto.getUserName());
test.setOperateEmployeeId(dto.getOperateEmployeeId());
test.setCreateTime((int)(System.currentTimeMillis()/1000));
test.setUpdateTime(0);
test.setIsDelete((byte) 0);
test.setDeleteTime((int) 0);
test.setPhone(dto.getPhone());
test.setIdNumber(dto.getIdNumber());
test.setBankNo(dto.getBankNo());
int i = testMapper.addTest(test);
System.err.println(i);
System.out.println(test.getId());
}
@Override
public Test getTestById(Integer id) {
return testMapper.getTestById(id);
}
@Override
public List<Test> getTestList() {
return testMapper.getTestList();
}
@Override
public void addOrUpdate(TestDTO dto) {
Test test = new Test();
test.setUserId(dto.getUserId());
test.setUserName(dto.getUserName());
test.setOperateEmployeeId(dto.getOperateEmployeeId());
test.setCreateTime((int)(System.currentTimeMillis()/1000));
test.setUpdateTime(0);
test.setIsDelete((byte) 0);
test.setDeleteTime((int) 0);
test.setPhone(dto.getPhone());
test.setIdNumber(dto.getIdNumber());
test.setBankNo(dto.getBankNo());
testMapper.addTest(test);
testMapper.addTest(test);
/*int rows = testMapper.updateById(test);
if (rows != 1) {
testMapper.addTest(test);
}*/
}
}
package cn.lefull;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
/**
* Rigorous Test :-)
*/
@Test
public void shouldAnswerWithTrue()
{
assertTrue( true );
}
}
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.lefull</groupId>
<artifactId>lefull-lot-microservice</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>lefull-lot-api-web</module>
<module>lefull-lot-service</module>
<module>lefull-lot-common</module>
<module>lefull-lot-repository</module>
<module>lefull-lot-interaction</module>
</modules>
<name>lefull-lot-microservice</name>
<description>lefull-lot-microservice</description>
<parent>
<groupId>cn.lefull</groupId>
<artifactId>lefull-parent</artifactId>
<version>2.2.0-SNAPSHOT</version>
<relativePath/>
</parent>
<properties>
<project.build.version>1.0.0</project.build.version>
</properties>
<dependencies>
<dependency>
<groupId>cn.lefull</groupId>
<artifactId>lefull-common</artifactId>
<version>2.2.0-SNAPSHOT</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>lefull-maven</id>
<url>https://tool-maven.lefull.cn/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>lefull-plugin</id>
<url>https://tool-maven.lefull.cn/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</project>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论