Commit f3e14f54 authored by machengbo's avatar machengbo

Merge branch 'dm_dev' of http://gitlab.ioubuy.cn/yaobenzhang/dm_project into dm_dev

parents ba97f026 d13d83a6
......@@ -3,6 +3,7 @@ package com.jz.dm;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
......@@ -16,7 +17,7 @@ import org.springframework.transaction.annotation.EnableTransactionManagement;
* @Description:
**/
@SpringBootApplication
//@ComponentScan(basePackages = {"com.jz"})
@ComponentScan(basePackages = {"com.jz"})
@MapperScan("com.jz.dm.mapper")
@EnableTransactionManagement
public class ApiGatewayApplication {
......
#数据源
spring:
security:
basic:
enabled: false
datasource:
url: jdbc:mysql://rm-wz9n399q2avsy3k6m4o.mysql.rds.aliyuncs.com:3306/wj-mkt-project?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&useSSL=false
username: root
password: I%ou$buy!ok
driver-class-name: com.mysql.jdbc.Driver
druid:
# 初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次getConnection时
initialSize: 1
# 最小连接池数量
minIdle: 1
# 最大连接池数量
maxActive: 10
# 配置获取连接等待超时的时间
maxWait: 10000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
# 验证连接有效与否的SQL,不同的数据配置不同
validationQuery: select 1
# 建议配置为true,不影响性能,并且保证安全性。
# 申请连接的时候检测,如果空闲时间大于
# timeBetweenEvictionRunsMillis,
# 执行validationQuery检测连接是否有效。
testWhileIdle: true
# 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
# 这里建议配置为TRUE,防止取到的连接不可用
testOnBorrow: true
# 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
testOnReturn: false
# 是否缓存preparedStatement,也就是PSCache。
# PSCache对支持游标的数据库性能提升巨大,比如说oracle。
# 在mysql5.5以下的版本中没有PSCache功能,建议关闭掉。
# 作者在5.5版本中使用PSCache,通过监控界面发现PSCache有缓存命中率记录,
# 该应该是支持PSCache。
# 打开PSCache,并且指定每个连接上PSCache的大小
poolPreparedStatements: true
maxPoolPreparedStatementPerConnectionSize: 20
# 属性类型是字符串,通过别名的方式配置扩展插件,
# 常用的插件有:
# 监控统计用的filter:stat
# 日志用的filter:log4j
# 防御sql注入的filter:wall
filters: stat
# ====================MybatisPlus====================
......@@ -49,32 +49,3 @@ spring:
filters: stat
# ====================MybatisPlus====================
mybatis-plus:
# 如果是放在src/main/java目录下 classpath:/com/yourpackage/*/mapper/*Mapper.xml
# 如果是放在resource目录 classpath:/mapper/*Mapper.xml
mapper-locations: classpath*:com/frame/**/**.xml,classpath*:mapping/**/**.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: com.frame.**.entity,com.frame.**.dto
global-config:
#刷新mapper 调试神器
db-config:
#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
id-type: UUID
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
field-strategy: 2
#驼峰下划线转换
column-underline: false
#数据库大写下划线转换
# capital-mode: true
#逻辑删除配置
logic-delete-value: 1
logic-not-delete-value: 0
refresh: true
configuration:
#配置返回数据库(column下划线命名&&返回java实体是驼峰命名),自动匹配无需as(没开启这个,SQL需要写as: select user_id as userId)
map-underscore-to-camel-case: true
cache-enabled: false
#配置JdbcTypeForNull, oracle数据库必须配置
jdbc-type-for-null: 'null'
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
database-id: mysql
\ No newline at end of file
......@@ -19,19 +19,34 @@ spring:
active: test #默认使用的配置文件
#MyBatis
#mybatis-plus:
# mapper-locations: classpath:/mapper/**/*.xml
# typeAliasesPackage: com.jz.common.entity
# #type-handlers-package: com.btcpay.commons.typehandler
# global-config:
# id-type: 1
# field-strategy: 2
# db-column-underline: true
# refresh-mapper: true
# configuration:
# map-underscore-to-camel-case: true
# cache-enabled: false
# #log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mybatis-plus:
# 如果是放在src/main/java目录下 classpath:/com/yourpackage/*/mapper/*Mapper.xml
# 如果是放在resource目录 classpath:/mapper/*Mapper.xml
mapper-locations: classpath*:com/frame/**/**.xml,classpath*:mapping/**/**.xml
#实体扫描,多个package用逗号或者分号分隔
typeAliasesPackage: com.frame.**.entity,com.frame.**.dto
global-config:
#刷新mapper 调试神器
db-config:
#主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
id-type: UUID
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
field-strategy: 2
#驼峰下划线转换
column-underline: false
#数据库大写下划线转换
# capital-mode: true
#逻辑删除配置
logic-delete-value: 1
logic-not-delete-value: 0
refresh: true
configuration:
#配置返回数据库(column下划线命名&&返回java实体是驼峰命名),自动匹配无需as(没开启这个,SQL需要写as: select user_id as userId)
map-underscore-to-camel-case: true
cache-enabled: false
#配置JdbcTypeForNull, oracle数据库必须配置
jdbc-type-for-null: 'null'
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
database-id: mysql
......@@ -74,6 +74,11 @@
<version>RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--阿里云服务器短信平台-->
<dependency>
<groupId>com.aliyun</groupId>
......
package com.jz.common.constant;
import com.alibaba.fastjson.JSON;
/**
* @author ZC
* @PACKAGE_NAME: com.fbpay.broker.common
* @PROJECT_NAME: fbp-parent
* @NAME: ResultCode
* @USER: Administrator
* @DATE: 2020/5/24/10:39
* @DAY_NAME_SHORT: 周日
* @Description: 返回状态吗枚举类
**/
public enum ResultCode {
/** 执行成功 */
SUCCESS(200, ResultMsg.SUCCESS),
/** 执行失败 */
FAILURE(300, ResultMsg.DATA_NOT_FOUND),
/** 未授权的访问 */
UNAUTHORIZED(401, ResultMsg.UNAUTHORIZED),
/** 授权过期 */
INVALID_TOKEN(402, ResultMsg.INVALID_TOKEN),
/** 禁止访问 */
FORBIDOM(403, ResultMsg.FORBIDOM);
private int code;
/**
* 提示信息
*/
private ResultMsg msg;
private ResultCode(int code, ResultMsg msg) {
this.code = code;
this.msg = msg;
}
/**
* 通过业务代码获取业务操作枚举
* @param code 业务代码
* @return 业务枚举
*/
public static ResultCode getResultStatusEnum(int code) {
for (ResultCode item : ResultCode.values()) {
if (item.code == code) {
return item;
}
}
return null;
}
@Override
public String toString() {
return JSON.toJSONString(this);
}
public int getCode() {
return code;
}
public ResultMsg getMsg() {
return this.msg;
}
public void setMsg(ResultMsg msg) {
this.msg = msg;
}
}
package com.jz.common.exception;
import com.jz.common.constant.ResultCode;
import com.jz.common.constant.ResultMsg;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @date 业务异常 父类。在restful 接口层使用切面捕获,统一封装输出。
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class ResponseException extends RuntimeException {
private static final long serialVersionUID = -721489076559710085L;
/**
* 错误代码
*/
protected ResultCode code;
/**
* 错误信息
*/
protected String message;
private Throwable cause;
public static ResponseException of_error(ResultMsg errorMsg) {
return ResponseException.of(ResultCode.FAILURE,errorMsg.getMsg());
}
public static ResponseException of_error(String errorMsg) {
return ResponseException.of(ResultCode.FAILURE,errorMsg);
}
public static ResponseException of(ResultCode code) {
ResponseException ufaceException = new ResponseException();
ufaceException.setCode(code);
ufaceException.setMessage(code.getMsg().getMsg());
return ufaceException;
}
public static ResponseException of(ResultCode code, String message) {
ResponseException ufaceException = new ResponseException();
ufaceException.setCode(code);
ufaceException.setMessage(message);
return ufaceException;
}
public static ResponseException ofDetail(ResultCode code, Object... params) {
String message = String.format(code.getMsg().getMsg(), params);
ResponseException ufaceException = new ResponseException();
ufaceException.setCode(code);
ufaceException.setMessage(message);
return ufaceException;
}
public static ResponseException of(ResultCode code, Throwable cause) {
ResponseException ufaceException = new ResponseException();
ufaceException.setCode(code);
ufaceException.setCause(cause);
ufaceException.setMessage("todo need get from db/properties");
return ufaceException;
}
}
package com.jz.common.utils;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
/**
* @ClassName:
* @Author: Carl
* @Date: 2020/12/3
* @Version:
*/
public class SessionUtils {
/**
* 把数据存储到session中
* @param objName 存储到session中的对象的变量名
* @param o 存储的任意数据
*/
public static void push(String objName, Object o) {
HttpServletRequest request =
((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
request.getSession().setAttribute(objName, o);
}
/**
* 从session中获取数据
* @param objName 存储到session中的对象的变量名
*/
public static Object pop(String objName) {
HttpServletRequest request =
((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
return request.getSession().getAttribute(objName);
}
}
package com.jz.dm.mall.moduls.service.impl;
import com.jz.common.entity.Department;
import com.jz.common.exception.ResponseException;
import com.jz.dm.mall.moduls.entity.FinanceCustomerAssets;
import com.jz.dm.mall.moduls.entity.MallCustomer;
import com.jz.common.utils.Result;
......@@ -104,7 +105,7 @@ public class CompanyAuthServiceImpl implements CompanyAuthService {
departmentInset.setCrePerson(req.getLoginName());
BeanUtils.copyProperties(req,departmentInset);
if (departmentDao.insert(departmentInset) != 1){
throw new RuntimeException("保存企业信息失败");
throw ResponseException.of_error("保存企业信息失败");
}
//初始化用户资产表
FinanceCustomerAssets finance = new FinanceCustomerAssets();
......@@ -112,7 +113,7 @@ public class CompanyAuthServiceImpl implements CompanyAuthService {
finance.setCreTime(new Date());
finance.setCrePerson(req.getLoginName());
if (financeCustomerAssetsDao.insert(finance) != 1){
throw new RuntimeException("初始化用户资产失败");
throw ResponseException.of_error("初始化用户资产失败");
}
//更新用户企业信息
MallCustomer mallCustomer = new MallCustomer();
......@@ -121,7 +122,7 @@ public class CompanyAuthServiceImpl implements CompanyAuthService {
mallCustomer.setUptTime(new Date());
// mallCustomer.setUptPerson(req.getLoginName());
if (mallCustomerDao.updateById(mallCustomer) != 1){
throw new RuntimeException("更新用户企业信息失败");
throw ResponseException.of_error("更新用户企业信息失败");
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment