更新发布

This commit is contained in:
ָ·ìdeÑô¹â
2021-12-31 15:56:16 +08:00
parent c2401aa44d
commit 38b7391050
1206 changed files with 28781 additions and 35595 deletions

1
crmeb/.gitignore vendored
View File

@@ -40,3 +40,4 @@ src/main/java/com/.DS_Store
src/main/java/.DS_Store
src/main/.DS_Store
.DS_Store
/crmebimage/

View File

@@ -48,4 +48,5 @@
# 打印机
1. [易联云文档](http://doc2.10ss.net/337744 "易联云文档")
2. [易联云JAVA SDK](http://doc2.10ss.net/337744 "易联云JAVA SDK gitee文档")
3. [如何导入第三方JAVA SDK包](https://blog.csdn.net/weixin_46028577/article/details/106342938?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase "如何导入第三方JAVA SDK包")
3. [如何导入第三方JAVA SDK包](https://blog.csdn.net/weixin_46028577/article/details/106342938?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase "如何导入第三方JAVA SDK包")

76
crmeb/crmeb-admin/pom.xml Normal file
View File

@@ -0,0 +1,76 @@
<?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>crmeb</artifactId>
<groupId>com.zbkj</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>crmeb-admin</artifactId>
<packaging>jar</packaging>
<properties>
<crmeb-service>0.0.1-SNAPSHOT</crmeb-service>
</properties>
<dependencies>
<dependency>
<groupId>com.zbkj</groupId>
<artifactId>crmeb-service</artifactId>
<version>${crmeb-service}</version>
</dependency>
</dependencies>
<build>
<!--打包配置-->
<finalName>Crmeb-admin</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中-->
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<!-- <resource>-->
<!-- <directory>src/main/resources</directory>-->
<!-- &lt;!&ndash; 处理文件时替换文件中的变量 &ndash;&gt;-->
<!-- <filtering>true</filtering>-->
<!-- <excludes>-->
<!-- &lt;!&ndash; 打包时排除文件 &ndash;&gt;-->
<!--&lt;!&ndash; <exclude>application.yml</exclude>&ndash;&gt;-->
<!-- <exclude>application-{profile}.yml</exclude>-->
<!--&lt;!&ndash; <exclude>application-beta.yml</exclude>&ndash;&gt;-->
<!--&lt;!&ndash; <exclude>application-prod.yml</exclude>&ndash;&gt;-->
<!-- </excludes>-->
<!-- </resource>-->
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
<!-- <resource>-->
<!-- <directory>src/main/resources.${spring.profiles.active}</directory>-->
<!-- <filtering>false</filtering>-->
<!-- </resource>-->
<!--这个元素描述了项目相关的所有资源路径列表,例如和项目相关的属性文件,这些资源被包含在最终的打包文件里。-->
<resource>
<!-- 描述存放资源的目录该路径相对POM路径-->
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
</project>

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb;
package com.zbkj.admin;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
@@ -27,14 +27,12 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableTransactionManagement
@SpringBootApplication(exclude = DataSourceAutoConfiguration.class) //去掉数据源
@ComponentScan(basePackages={"com.utils",
"com.zbkj.crmeb",
"com.exception",
"com.common",
"com.aop"}) //扫描utils包和父包
@MapperScan(basePackages = {"com.zbkj.crmeb.*.dao", "com.zbkj.crmeb.*.*.dao"})
public class CrmebApplication{
@ComponentScan(basePackages = {"com.zbkj"})
@MapperScan(basePackages = {"com.zbkj.**.dao"})
public class CrmebAdminApplication {
public static void main(String[] args) {
SpringApplication.run(CrmebApplication.class, args);
SpringApplication.run(CrmebAdminApplication.class, args);
}
}

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb.config;
package com.zbkj.admin.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -33,7 +33,4 @@ public class CorsConfig{
source.registerCorsConfiguration("/**", buildConfig()); //注册
return new CorsFilter(source);
}
public static String st = "269pbE47g5wSRco2vNyQ";
public static String sk = "1Pdc1e2F5Kyyp…p+¥OU0oIutG2Fqxzfd—";
}

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb.config;
package com.zbkj.admin.config;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb.config;
package com.zbkj.admin.config;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb.config;
package com.zbkj.admin.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb.config;
package com.zbkj.admin.config;
import lombok.Data;
import org.springframework.context.annotation.Configuration;

View File

@@ -1,12 +1,11 @@
package com.zbkj.crmeb.config;
package com.zbkj.admin.config;
import com.constants.Constants;
import com.zbkj.common.constants.Constants;
import com.google.common.base.Predicate;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
@@ -44,11 +43,9 @@ public class SwaggerConfig{
@Value("${server.port}")
private String port;
@Value("${server.domain}")
@Value("${crmeb.domain}")
private String domain;
@Bean("admin")
public Docket createRestApis() {
return new Docket(DocumentationType.SWAGGER_2)
@@ -59,7 +56,7 @@ public class SwaggerConfig{
.enable(swaggerEnabled)
.select()
// 扫描的路径包
.apis(RequestHandlerSelectors.basePackage("com.zbkj.crmeb"))
.apis(RequestHandlerSelectors.basePackage("com.zbkj.admin"))
// 指定路径处理PathSelectors.any()代表所有的路径
.paths(adminPathsAnt())
.build()
@@ -69,26 +66,6 @@ public class SwaggerConfig{
.pathMapping("/");
}
@Bean("front")
public Docket create1RestApis() {
return new Docket(DocumentationType.SWAGGER_2)
.groupName("front")
.host(domain)
.apiInfo(apiInfo())
// 是否开启
.enable(swaggerEnabled)
.select()
// 扫描的路径包
.apis(RequestHandlerSelectors.basePackage("com.zbkj.crmeb"))
// 指定路径处理PathSelectors.any()代表所有的路径
.paths(frontPathsAnt()) //只监听
.build()
.securitySchemes(security())
.securityContexts(securityContexts())
// .globalOperationParameters(pars) // 针对单个url的验证 如果需要的话
.pathMapping("/");
}
@Bean("public")
public Docket create2RestApis() {
return new Docket(DocumentationType.SWAGGER_2)
@@ -99,7 +76,7 @@ public class SwaggerConfig{
.enable(swaggerEnabled)
.select()
// 扫描的路径包
.apis(RequestHandlerSelectors.basePackage("com.zbkj.crmeb"))
.apis(RequestHandlerSelectors.basePackage("com.zbkj.admin"))
// 指定路径处理PathSelectors.any()代表所有的路径
.paths(publicPathsAnt()) //只监听
.build()
@@ -113,10 +90,6 @@ public class SwaggerConfig{
return PathSelectors.ant("/api/admin/**");
}
private Predicate<String> frontPathsAnt() {
return PathSelectors.ant("/api/front/**");
}
private Predicate<String> publicPathsAnt() {
return PathSelectors.ant("/api/public/**");
}

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb.config;
package com.zbkj.admin.config;
import lombok.Data;
import org.springframework.context.annotation.Bean;

View File

@@ -0,0 +1,115 @@
package com.zbkj.admin.config;
import com.zbkj.common.constants.Constants;
import com.zbkj.common.interceptor.SwaggerInterceptor;
import com.zbkj.admin.filter.ResponseFilter;
import com.zbkj.common.config.CrmebConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.handler.MappedInterceptor;
import java.io.File;
/**
* token验证拦截器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Configuration
public class WebConfig implements WebMvcConfigurer {
// 这里使用一个Bean为的是可以在拦截器中自由注入也可以在拦截器中使用SpringUtil.getBean 获取
// 但是觉得这样更优雅
@Autowired
CrmebConfig crmebConfig;
@Bean
public ResponseFilter responseFilter(){ return new ResponseFilter(); }
@Value("${swagger.basic.username}")
private String username;
@Value("${swagger.basic.password}")
private String password;
@Value("${swagger.basic.check}")
private Boolean check;
@Override
public void addInterceptors(InterceptorRegistry registry) {
//添加token拦截器
//addPathPatterns添加需要拦截的命名空间
//excludePathPatterns添加排除拦截命名空间
// //后台token拦截
// registry.addInterceptor(adminTokenInterceptor()).
// addPathPatterns("/api/admin/**").
// excludePathPatterns("/api/admin/validate/**").
// excludePathPatterns("/api/admin/login").
// excludePathPatterns("/api/admin/logout").
// excludePathPatterns("/api/admin/getLoginPic").
// excludePathPatterns("/api/admin/wechat/config").
// excludePathPatterns("/api/admin/authorize/login").
// excludePathPatterns("/api/admin/payment/callback/**").
//// excludePathPatterns("/api/admin/system/role/menu").
// excludePathPatterns("/api/admin/system/role/info").
// excludePathPatterns("/swagger-resources/**", "/webjars/**", "/v2/**", "/swagger-ui.html/**");
//
// //后台权限规则
// registry.addInterceptor(adminAuthInterceptor()).
// addPathPatterns("/api/admin/**").
// excludePathPatterns("/api/admin/validate/**").
// excludePathPatterns("/api/admin/login").
// excludePathPatterns("/api/admin/logout").
// excludePathPatterns("/api/admin/getLoginPic").
// excludePathPatterns("/api/admin/payment/callback/**").
// excludePathPatterns("/swagger-resources/**", "/webjars/**", "/v2/**", "/swagger-ui.html/**");
}
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**")
.addResourceLocations("classpath:/static/");
registry.addResourceHandler("doc.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
/** 本地文件上传路径 */
registry.addResourceHandler(Constants.UPLOAD_TYPE_IMAGE + "/**")
.addResourceLocations("file:" + crmebConfig.getImagePath() + "/" + Constants.UPLOAD_TYPE_IMAGE + "/");
}
@Bean
public FilterRegistrationBean filterRegister()
{
//注册过滤器
FilterRegistrationBean registration = new FilterRegistrationBean(responseFilter());
// 仅仅api前缀的请求才会拦截
registration.addUrlPatterns("/api/*");
return registration;
}
/* 必须在此处配置拦截器,要不然拦不到swagger的静态资源 */
@Bean
@ConditionalOnProperty(name = "swagger.basic.enable", havingValue = "true")
public MappedInterceptor getMappedInterceptor() {
return new MappedInterceptor(new String[]{"/doc.html", "/webjars/**"}, new SwaggerInterceptor(username, password, check));
}
}

View File

@@ -0,0 +1,155 @@
package com.zbkj.admin.config;
import com.zbkj.admin.filter.JwtAuthenticationTokenFilter;
import com.zbkj.admin.manager.AuthenticationEntryPointImpl;
import com.zbkj.admin.manager.CustomAccessDeniedHandler;
import com.zbkj.admin.manager.CustomAuthenticationProvider;
import com.zbkj.common.constants.Constants;
import com.zbkj.service.service.impl.UserDetailServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpMethod;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
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.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
import org.springframework.security.web.authentication.logout.LogoutFilter;
import org.springframework.web.filter.CorsFilter;
/**
* Security配置
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true)
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
/**
* 跨域过滤器
*/
@Autowired
private CorsFilter corsFilter;
/**
* token认证过滤器
*/
@Bean
public JwtAuthenticationTokenFilter jwtAuthenticationTokenFilter() {
return new JwtAuthenticationTokenFilter();
}
/**
* 认证失败处理类
*/
@Bean
public AuthenticationEntryPointImpl unauthorizedHandler() {
return new AuthenticationEntryPointImpl();
}
/**
* 鉴权失败处理类
*/
@Bean
public CustomAccessDeniedHandler accessDeniedHandler() {
return new CustomAccessDeniedHandler();
}
/**
* 这里将Spring Security自带的authenticationManager声明成Bean声明它的作用是用它帮我们进行认证操作
* 调用这个Bean的authenticate方法会由Spring Security自动帮我们做认证。
*/
// @Bean
// public AuthenticationManager authenticationManager() throws Exception {
// return new CusAuthenticationManager(customAuthenticationProvider);
// }
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.authenticationProvider(new CustomAuthenticationProvider(new UserDetailServiceImpl()));
}
/**
* anyRequest | 匹配所有请求路径
* access | SpringEl表达式结果为true时可以访问
* anonymous | 匿名可以访问
* denyAll | 用户不能访问
* fullyAuthenticated | 用户完全认证可以访问非remember-me下自动登录
* hasAnyAuthority | 如果有参数,参数表示权限,则其中任何一个权限可以访问
* hasAnyRole | 如果有参数,参数表示角色,则其中任何一个角色可以访问
* hasAuthority | 如果有参数,参数表示权限,则其权限可以访问
* hasIpAddress | 如果有参数参数表示IP地址如果用户IP和参数匹配则可以访问
* hasRole | 如果有参数,参数表示角色,则其角色可以访问
* permitAll | 用户可以任意访问
* rememberMe | 允许通过remember-me登录的用户访问
* authenticated | 用户登录后可访问
*/
@Override
protected void configure(HttpSecurity http) throws Exception {
// CRSF禁用因为不使用session
http.cors().and().csrf().disable()
// 认证失败处理类
.exceptionHandling().authenticationEntryPoint(unauthorizedHandler())
.accessDeniedHandler(accessDeniedHandler()).and()
// 基于token所以不需要session
.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and()
// 过滤请求
.authorizeRequests()
// 跨域预检请求
// .antMatchers(HttpMethod.OPTIONS, "/**").permitAll()
// 对于登录login 验证码captchaImage 和其他放行的目录 允许匿名访问"/citylife/front/**"
.antMatchers("/api/admin/login", "/api/admin/validate/code/get").permitAll()
.antMatchers("/api/admin/getLoginPic").permitAll()
// 放行资源路径
.antMatchers("/"+ Constants.UPLOAD_TYPE_IMAGE +"/**").anonymous()
// 放行图片、文件上传
.antMatchers("/api/admin/upload/image").permitAll()
.antMatchers("/api/admin/upload/file").permitAll()
// .antMatchers("/wx/user/*/login","/citylife/nocheck/**").anonymous()
.antMatchers(
HttpMethod.GET,
"/*.html",
"/**/*.html",
"/**/*.css",
"/**/*.js"
).permitAll()
.antMatchers("/profile/**").anonymous()
.antMatchers("/common/download**").anonymous()
.antMatchers("/common/download/resource**").anonymous()
.antMatchers("/doc.html").permitAll()
.antMatchers("/swagger-resources/**").permitAll()
.antMatchers("/webjars/**").permitAll()
.antMatchers("/v2/**").permitAll()
.antMatchers("/swagger-ui.html/**").permitAll()
.antMatchers("/*/api-docs").anonymous()
.antMatchers("/druid/**").anonymous()
.antMatchers("/captcha/get", "/captcha/check").anonymous()
.antMatchers("/api/admin/payment/callback/**").anonymous()
.antMatchers("/api/public/**").anonymous()
// 除上面外的所有请求全部需要鉴权认证
.anyRequest().authenticated()
.and()
.headers().frameOptions().disable();// 防止iframe 造成跨域
// http.logout().logoutUrl("/logout").logoutSuccessHandler(logoutSuccessHandler);
// 添加JWT filter
// 开启登录认证流程过滤器
http.addFilterBefore(jwtAuthenticationTokenFilter(), UsernamePasswordAuthenticationFilter.class);
// 添加CORS filter
http.addFilterBefore(corsFilter, JwtAuthenticationTokenFilter.class);
http.addFilterBefore(corsFilter, LogoutFilter.class);
}
}

View File

@@ -0,0 +1,86 @@
package com.zbkj.admin.controller;
import com.zbkj.common.request.SystemAdminLoginRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.MenusResponse;
import com.zbkj.common.response.SystemAdminResponse;
import com.zbkj.common.response.SystemLoginResponse;
import com.zbkj.common.utils.CrmebUtil;
import com.zbkj.admin.service.AdminLoginService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
/**
* 管理端登录服务
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin")
@Api(tags = "管理端登录服务")
public class AdminLoginController {
@Autowired
private AdminLoginService adminLoginService;
@ApiOperation(value="PC登录")
@PostMapping(value = "/login", produces = "application/json")
public CommonResult<SystemLoginResponse> SystemAdminLogin(@RequestBody @Validated SystemAdminLoginRequest systemAdminLoginRequest, HttpServletRequest request) {
String ip = CrmebUtil.getClientIp(request);
SystemLoginResponse systemAdminResponse = adminLoginService.login(systemAdminLoginRequest, ip);
return CommonResult.success(systemAdminResponse, "login success");
}
@PreAuthorize("hasAuthority('admin:logout')")
@ApiOperation(value="PC登出")
@GetMapping(value = "/logout")
public CommonResult<SystemAdminResponse> SystemAdminLogout() {
adminLoginService.logout();
return CommonResult.success("logout success");
}
@PreAuthorize("hasAuthority('admin:info')")
@ApiOperation(value="获取用户详情")
@GetMapping(value = "/getAdminInfoByToken")
public CommonResult<SystemAdminResponse> getAdminInfo() {
return CommonResult.success(adminLoginService.getInfoByToken());
}
/**
* 获取登录页图片
* @return Map<String, Object>
*/
@ApiOperation(value = "获取登录页图片")
@RequestMapping(value = "/getLoginPic", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> getLoginPic() {
return CommonResult.success(adminLoginService.getLoginPic());
}
/**
* 获取管理员可访问目录
*/
@PreAuthorize("hasAuthority('admin:login:menus')")
@ApiOperation(value = "获取管理员可访问目录")
@RequestMapping(value = "/getMenus", method = RequestMethod.GET)
public CommonResult<List<MenusResponse>> getMenus() {
return CommonResult.success(adminLoginService.getMenus());
}
}

View File

@@ -1,21 +1,19 @@
package com.zbkj.crmeb.article.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.article.model.Article;
import com.zbkj.crmeb.article.request.ArticleRequest;
import com.zbkj.crmeb.article.request.ArticleSearchRequest;
import com.zbkj.crmeb.article.service.ArticleService;
import com.zbkj.crmeb.article.vo.ArticleVo;
import com.zbkj.crmeb.system.service.SystemAttachmentService;
import com.zbkj.common.model.article.Article;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.ArticleRequest;
import com.zbkj.common.request.ArticleSearchRequest;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.vo.ArticleVo;
import com.zbkj.service.service.ArticleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -41,41 +39,31 @@ public class ArticleController {
@Autowired
private ArticleService articleService;
@Autowired
private SystemAttachmentService systemAttachmentService;
/**
* 分页显示文章管理表
* @param request ArticleSearchRequest 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:article:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ApiImplicitParam(name="keywords", value="搜索关键字")
public CommonResult<CommonPage<ArticleVo>> getList(@Validated ArticleSearchRequest request,
@Validated PageParamRequest pageParamRequest){
@Validated PageParamRequest pageParamRequest) {
return CommonResult.success(CommonPage.restPage(articleService.getAdminList(request, pageParamRequest)));
}
/**
* 新增文章管理表
* @param articleRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:article:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated ArticleRequest articleRequest){
Article article = new Article();
BeanUtils.copyProperties(articleRequest, article);
article.setImageInput(systemAttachmentService.clearPrefix(article.getImageInput()));
article.setContent(systemAttachmentService.clearPrefix(article.getContent()));
if(articleService.save(article)){
public CommonResult<String> save(@RequestBody @Validated ArticleRequest articleRequest) {
if (articleService.create(articleRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -83,38 +71,15 @@ public class ArticleController {
/**
* 删除文章管理表
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:article:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
@ApiImplicitParam(name="id", value="文章ID")
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(articleService.removeById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (articleService.deleteById(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
/**
* 关联产品
* @param id Integer
* @param productId 产品id
* @author Mr.Zhang
* @since 2020-04-18
*/
@ApiOperation(value = "绑定产品")
@RequestMapping(value = "/bind/product", method = RequestMethod.POST)
@ApiImplicitParams({
@ApiImplicitParam(name="id", value="文章ID"),
@ApiImplicitParam(name="productId", value="产品id")
})
public CommonResult<String> bind(@RequestParam(value = "id") Integer id,
@RequestParam(value = "productId") Integer productId){
if(articleService.update(id, productId)){
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -123,22 +88,15 @@ public class ArticleController {
* 修改文章管理表
* @param id integer id
* @param articleRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:article:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
@ApiImplicitParam(name="id", value="文章ID")
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated ArticleRequest articleRequest){
Article article = new Article();
BeanUtils.copyProperties(articleRequest, article);
article.setId(id);
article.setImageInput(systemAttachmentService.clearPrefix(article.getImageInput()));
article.setContent(systemAttachmentService.clearPrefix(article.getContent()));
if(articleService.updateById(article)){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated ArticleRequest articleRequest) {
if (articleService.updateArticle(id, articleRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -146,15 +104,13 @@ public class ArticleController {
/**
* 查询文章管理表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:article:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
@ApiImplicitParam(name="id", value="文章ID")
public CommonResult<Article> info(@RequestParam(value = "id") Integer id){
Article article = articleService.getById(id);
return CommonResult.success(article);
public CommonResult<Article> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(articleService.getDetail(id));
}
}

View File

@@ -1,6 +1,6 @@
package com.zbkj.crmeb.payment.controller;
package com.zbkj.admin.controller;
import com.zbkj.crmeb.payment.service.CallbackService;
import com.zbkj.service.service.CallbackService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@@ -34,9 +34,6 @@ public class CallbackController {
/**
* 微信支付回调
* @author Mr.Zhang
* @since 2020-05-06
* @return
*/
@ApiOperation(value = "微信支付回调")
@RequestMapping(value = "/wechat", method = RequestMethod.POST)
@@ -47,18 +44,6 @@ public class CallbackController {
return response;
}
/**
* 支付宝支付回调
* @author Mr.Zhang
* @since 2020-05-06
*/
@ApiOperation(value = "支付宝支付回调 ")
@RequestMapping(value = "/alipay", method = RequestMethod.POST)
public void aliPay(@RequestBody String request){
//支付宝支付回调
callbackService.aliPay(request);
}
/**
* 微信退款回调
*/

View File

@@ -1,23 +1,23 @@
package com.zbkj.crmeb.category.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.exception.CrmebException;
import com.utils.CrmebUtil;
import com.zbkj.crmeb.category.model.Category;
import com.zbkj.crmeb.category.request.CategoryRequest;
import com.zbkj.crmeb.category.request.CategorySearchRequest;
import com.zbkj.crmeb.category.service.CategoryService;
import com.zbkj.crmeb.category.vo.CategoryTreeVo;
import com.zbkj.crmeb.system.service.SystemAttachmentService;
import com.zbkj.common.exception.CrmebException;
import com.zbkj.common.model.category.Category;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.CategoryRequest;
import com.zbkj.common.request.CategorySearchRequest;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.utils.CrmebUtil;
import com.zbkj.common.vo.CategoryTreeVo;
import com.zbkj.service.service.CategoryService;
import com.zbkj.service.service.SystemAttachmentService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -40,8 +40,7 @@ import java.util.List;
@RestController
@RequestMapping("api/admin/category")
@Api(tags = "分类服务")
public class CategoryController {
public class CategoryController {
@Autowired
private CategoryService categoryService;
@@ -56,9 +55,10 @@ import java.util.List;
* @author Mr.Zhang
* @since 2020-04-16
*/
@ApiOperation(value = "分页列表")
@PreAuthorize("hasAuthority('admin:category:list')")
@ApiOperation(value = "分页分类列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<Category>> getList(@ModelAttribute CategorySearchRequest request, @ModelAttribute PageParamRequest pageParamRequest){
public CommonResult<CommonPage<Category>> getList(@ModelAttribute CategorySearchRequest request, @ModelAttribute PageParamRequest pageParamRequest) {
CommonPage<Category> categoryCommonPage = CommonPage.restPage(categoryService.getList(request, pageParamRequest));
return CommonResult.success(categoryCommonPage);
}
@@ -67,12 +67,13 @@ import java.util.List;
* 新增分类表
* @param categoryRequest 新增参数
*/
@PreAuthorize("hasAuthority('admin:category:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@Validated CategoryRequest categoryRequest){
if(categoryService.create(categoryRequest)){
public CommonResult<String> save(@Validated CategoryRequest categoryRequest) {
if (categoryService.create(categoryRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -83,13 +84,14 @@ import java.util.List;
* @author Mr.Zhang
* @since 2020-04-16
*/
@PreAuthorize("hasAuthority('admin:category:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
@ApiImplicitParam(name="id", value="分类ID")
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(categoryService.delete(id) > 0){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (categoryService.delete(id) > 0) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -101,15 +103,16 @@ import java.util.List;
* @author Mr.Zhang
* @since 2020-04-16
*/
@PreAuthorize("hasAuthority('admin:category:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
@ApiImplicitParam(name="id", value="分类ID")
public CommonResult<String> update(@RequestParam Integer id, @ModelAttribute CategoryRequest categoryRequest){
if(null == id || id <= 0) throw new CrmebException("id 参数不合法");
public CommonResult<String> update(@RequestParam Integer id, @ModelAttribute CategoryRequest categoryRequest) {
if (null == id || id <= 0) throw new CrmebException("id 参数不合法");
categoryRequest.setExtra(systemAttachmentService.clearPrefix(categoryRequest.getExtra()));
if(categoryService.update(categoryRequest, id)){
if (categoryService.update(categoryRequest, id)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -120,10 +123,11 @@ import java.util.List;
* @author Mr.Zhang
* @since 2020-04-16
*/
@ApiOperation(value = "详情")
@PreAuthorize("hasAuthority('admin:category:info')")
@ApiOperation(value = "分类详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
@ApiImplicitParam(name="id", value="分类ID")
public CommonResult<Category> info(@RequestParam(value = "id") Integer id){
public CommonResult<Category> info(@RequestParam(value = "id") Integer id) {
Category category = categoryService.getById(id);
return CommonResult.success(category);
}
@@ -134,6 +138,7 @@ import java.util.List;
* @author Mr.Zhang
* @since 2020-04-16
*/
@PreAuthorize("hasAuthority('admin:category:list:tree')")
@ApiOperation(value = "获取tree结构的列表")
@RequestMapping(value = "/list/tree", method = RequestMethod.GET)
@ApiImplicitParams({
@@ -143,7 +148,7 @@ import java.util.List;
})
public CommonResult<List<CategoryTreeVo>> getListTree(@RequestParam(name = "type") Integer type,
@RequestParam(name = "status") Integer status,
@RequestParam(name = "name", required = false) String name){
@RequestParam(name = "name", required = false) String name) {
List<CategoryTreeVo> listTree = categoryService.getListTree(type,status,name);
return CommonResult.success(listTree);
}
@@ -153,10 +158,11 @@ import java.util.List;
* @param ids String id集合字符串
* @since 2020-04-16
*/
@PreAuthorize("hasAuthority('admin:category:list:ids')")
@ApiOperation(value = "根据id集合获取分类列表")
@RequestMapping(value = "/list/ids", method = RequestMethod.GET)
@ApiImplicitParam(name = "ids", value="分类id集合")
public CommonResult<List<Category>> getByIds(@Validated @RequestParam(name = "ids") String ids){
public CommonResult<List<Category>> getByIds(@Validated @RequestParam(name = "ids") String ids) {
return CommonResult.success(categoryService.getByIds(CrmebUtil.stringToArray(ids)));
}
@@ -166,10 +172,11 @@ import java.util.List;
* @since 2020-04-16
* @return
*/
@PreAuthorize("hasAuthority('admin:category:update:status')")
@ApiOperation(value = "更改分类状态")
@RequestMapping(value = "/updateStatus/{id}", method = RequestMethod.GET)
@ApiImplicitParam(name = "id", value="分类id")
public CommonResult<Object> getByIds(@Validated @PathVariable(name = "id") Integer id){
public CommonResult<Object> getByIds(@Validated @PathVariable(name = "id") Integer id) {
if (categoryService.updateStatus(id)) {
return CommonResult.success("修改成功");
} else {

View File

@@ -1,25 +1,23 @@
package com.zbkj.crmeb.export.controller;
package com.zbkj.admin.controller;
import cn.hutool.core.collection.CollUtil;
import com.common.CommonResult;
import com.utils.ExcelUtil;
import com.zbkj.crmeb.bargain.request.StoreBargainSearchRequest;
import com.zbkj.crmeb.combination.request.StoreCombinationSearchRequest;
import com.zbkj.crmeb.export.service.ExcelService;
import com.zbkj.crmeb.export.vo.ProductExcelVo;
import com.zbkj.crmeb.store.request.StoreProductSearchRequest;
import com.zbkj.common.request.StoreBargainSearchRequest;
import com.zbkj.common.request.StoreCombinationSearchRequest;
import com.zbkj.common.request.StoreOrderSearchRequest;
import com.zbkj.common.request.StoreProductSearchRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.ExcelService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.List;
/**
@@ -46,17 +44,12 @@ public class ExcelController {
/**
* 商品导出
* @param request 搜索条件
* @author Mr.Zhang
* @since 2020-05-06
*/
@PreAuthorize("hasAuthority('admin:export:excel:product')")
@ApiOperation(value = "产品")
@RequestMapping(value = "/product", method = RequestMethod.GET)
public CommonResult<HashMap<String, String>> export(@Validated StoreProductSearchRequest request, HttpServletResponse response){
// List<ProductExcelVo> productExcelVoList = excelService.product(request, response);
// ExcelUtil.setSheetName("store"); //sheet名称
// ExcelUtil.setFileName("产品导出"); //文件名称前缀 xx_yyyymmddhhiiss
// ExcelUtil.writeExcel(response, productExcelVoList, ProductExcelVo.class);
String fileName = excelService.exportProduct(request, response);
public CommonResult<HashMap<String, String>> export(@Validated StoreProductSearchRequest request) {
String fileName = excelService.exportProduct(request);
HashMap<String, String> map = CollUtil.newHashMap();
map.put("fileName", fileName);
return CommonResult.success(map);
@@ -65,14 +58,12 @@ public class ExcelController {
/**
* 砍价商品导出
* @param request 搜索条件
* @author HZW
* @since 2020-05-06
* @return
*/
@PreAuthorize("hasAuthority('admin:export:excel:bargain')")
@ApiOperation(value = "砍价商品导出")
@RequestMapping(value = "/bargain/product", method = RequestMethod.GET)
public CommonResult<HashMap<String, String>> exportBargainProduct(@Validated StoreBargainSearchRequest request, HttpServletResponse response){
String fileName = excelService.exportBargainProduct(request, response);
public CommonResult<HashMap<String, String>> exportBargainProduct(@Validated StoreBargainSearchRequest request) {
String fileName = excelService.exportBargainProduct(request);
HashMap<String, String> map = CollUtil.newHashMap();
map.put("fileName", fileName);
return CommonResult.success(map);
@@ -81,14 +72,26 @@ public class ExcelController {
/**
* 拼团商品导出
* @param request 搜索条件
* @author HZW
* @since 2020-05-06
* @return
*/
@PreAuthorize("hasAuthority('admin:export:excel:combiantion')")
@ApiOperation(value = "拼团商品导出")
@RequestMapping(value = "/combiantion/product", method = RequestMethod.GET)
public CommonResult<HashMap<String, String>> exportCombinationProduct(@Validated StoreCombinationSearchRequest request, HttpServletResponse response){
String fileName = excelService.exportCombinationProduct(request, response);
public CommonResult<HashMap<String, String>> exportCombinationProduct(@Validated StoreCombinationSearchRequest request) {
String fileName = excelService.exportCombinationProduct(request);
HashMap<String, String> map = CollUtil.newHashMap();
map.put("fileName", fileName);
return CommonResult.success(map);
}
/**
* 订单导出
* @param request 搜索条件
*/
@PreAuthorize("hasAuthority('admin:export:excel:order')")
@ApiOperation(value = "订单导出")
@RequestMapping(value = "/order", method = RequestMethod.GET)
public CommonResult<HashMap<String, String>> exportOrder(@Validated StoreOrderSearchRequest request){
String fileName = excelService.exportOrder(request);
HashMap<String, String> map = CollUtil.newHashMap();
map.put("fileName", fileName);
return CommonResult.success(map);

View File

@@ -1,21 +1,22 @@
package com.zbkj.crmeb.express.controller;
package com.zbkj.admin.controller;
import com.alibaba.fastjson.JSONObject;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.express.request.ExpressUpdateRequest;
import com.zbkj.crmeb.express.request.ExpressSearchRequest;
import com.zbkj.crmeb.express.request.ExpressUpdateShowRequest;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.ExpressUpdateRequest;
import com.zbkj.common.request.ExpressSearchRequest;
import com.zbkj.common.request.ExpressUpdateShowRequest;
import com.zbkj.service.service.ExpressService;
import io.swagger.annotations.ApiImplicitParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.express.service.ExpressService;
import com.zbkj.crmeb.express.model.Express;
import com.zbkj.common.model.express.Express;
import java.util.List;
@@ -46,11 +47,12 @@ public class ExpressController {
* @param request ExpressSearchRequest 搜索条件
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:express:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ApiImplicitParam(name="keywords", value="搜索关键字")
public CommonResult<CommonPage<Express>> getList(@Validated ExpressSearchRequest request,
@ModelAttribute PageParamRequest pageParamRequest){
@ModelAttribute PageParamRequest pageParamRequest) {
CommonPage<Express> expressCommonPage = CommonPage.restPage(expressService.getList(request, pageParamRequest));
return CommonResult.success(expressCommonPage);
}
@@ -58,60 +60,59 @@ public class ExpressController {
/**
* 编辑快递公司
*/
@PreAuthorize("hasAuthority('admin:express:update')")
@ApiOperation(value = "编辑")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestBody @Validated ExpressUpdateRequest expressRequest){
if(expressService.updateExpress(expressRequest)){
public CommonResult<String> update(@RequestBody @Validated ExpressUpdateRequest expressRequest) {
if (expressService.updateExpress(expressRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
*修改显示状态
*/
@PreAuthorize("hasAuthority('admin:express:update:show')")
@ApiOperation(value = "修改显示状态")
@RequestMapping(value = "/update/show", method = RequestMethod.POST)
public CommonResult<String> update(@RequestBody @Validated ExpressUpdateShowRequest expressRequest){
if(expressService.updateExpressShow(expressRequest)){
public CommonResult<String> update(@RequestBody @Validated ExpressUpdateShowRequest expressRequest) {
if (expressService.updateExpressShow(expressRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 同步物流公司
*/
@PreAuthorize("hasAuthority('admin:express:sync')")
@ApiOperation(value = "同步物流公司")
@RequestMapping(value = "/sync/express", method = RequestMethod.POST)
public CommonResult<String> syncExpress(){
if(expressService.syncExpress()){
public CommonResult<String> syncExpress() {
if (expressService.syncExpress()) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询快递公司表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:express:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
@ApiImplicitParam(name="id", value="快递ID")
public CommonResult<Express> info(@RequestParam(value = "id") Integer id){
Express express = expressService.getById(id);
return CommonResult.success(express);
@ApiImplicitParam(name="id", value="快递公司ID", required = true)
public CommonResult<Express> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(expressService.getInfo(id));
}
/**
* 查询全部物流公司
*/
@PreAuthorize("hasAuthority('admin:express:all')")
@ApiOperation(value = "查询全部物流公司")
@RequestMapping(value = "/all", method = RequestMethod.GET)
@ApiImplicitParam(name="type", value="类型normal-普通elec-电子面单")
@@ -121,11 +122,11 @@ public class ExpressController {
/**
* 查询物流公司面单模板
* @return
*/
@PreAuthorize("hasAuthority('admin:express:template')")
@ApiOperation(value = "查询物流公司面单模板")
@RequestMapping(value = "/template", method = RequestMethod.GET)
@ApiImplicitParam(name="com", value="快递公司编号")
@ApiImplicitParam(name="com", value="快递公司编号", required = true)
public CommonResult<JSONObject> template(@RequestParam(value = "com") String com) {
return CommonResult.success(expressService.template(com));
}

View File

@@ -0,0 +1,74 @@
package com.zbkj.admin.controller;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.BrokerageRecordRequest;
import com.zbkj.common.request.FundsMonitorRequest;
import com.zbkj.common.response.MonitorResponse;
import com.zbkj.common.model.user.UserBrokerageRecord;
import com.zbkj.service.service.UserBillService;
import com.zbkj.service.service.UserFundsMonitorService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* 用户提现表 前端控制器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin/finance/founds/monitor")
@Api(tags = "财务 -- 资金监控")
public class FundsMonitorController {
@Autowired
private UserBillService userBillService;
@Autowired
private UserFundsMonitorService userFundsMonitorService;
/**
* 分页显示资金监控
* @param request 搜索条件
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:finance:monitor:list')")
@ApiOperation(value = "资金监控")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<MonitorResponse>> getList(@Validated FundsMonitorRequest request, @Validated PageParamRequest pageParamRequest){
CommonPage<MonitorResponse> userExtractCommonPage = CommonPage.restPage(userBillService.fundMonitoring(request, pageParamRequest));
return CommonResult.success(userExtractCommonPage);
}
/**
* 佣金记录
* @param request 搜索条件
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:finance:monitor:brokerage:record')")
@ApiOperation(value = "佣金记录")
@RequestMapping(value = "/brokerage/record", method = RequestMethod.GET)
public CommonResult<CommonPage<UserBrokerageRecord>> brokerageRecord(@Validated BrokerageRecordRequest request, @Validated PageParamRequest pageParamRequest){
return CommonResult.success(CommonPage.restPage(userFundsMonitorService.getBrokerageRecord(request, pageParamRequest)));
}
}

View File

@@ -1,12 +1,13 @@
package com.zbkj.crmeb.statistics.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.statistics.response.*;
import com.zbkj.crmeb.statistics.service.HomeService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.HomeRateResponse;
import com.zbkj.service.service.HomeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@@ -35,114 +36,70 @@ public class HomeController {
@Autowired
private HomeService homeService;
/**
* 销售额
* @author Mr.Zhang
* @since 2020-05-16
*/
@ApiOperation(value = "销售额")
@RequestMapping(value = "/sales", method = RequestMethod.GET)
public CommonResult<HomeRateResponse> sales(){
return CommonResult.success(homeService.sales());
}
/**
* 订单量
* @author Mr.Zhang
* @since 2020-05-16
*/
@ApiOperation(value = "订单量")
@RequestMapping(value = "/order", method = RequestMethod.GET)
public CommonResult<HomeRateResponse> order(){
return CommonResult.success(homeService.order());
}
/**
* 新增用户
* @author Mr.Zhang
* @since 2020-05-16
*/
@ApiOperation(value = "新增用户")
@RequestMapping(value = "/user", method = RequestMethod.GET)
public CommonResult<HomeRateResponse> user(){
return CommonResult.success(homeService.user());
}
/**
* 用户访问量
* @author Mr.Zhang
* @since 2020-05-16
*/
@ApiOperation(value = "用户访问量")
@RequestMapping(value = "/views", method = RequestMethod.GET)
public CommonResult<HomeRateResponse> views(){
return CommonResult.success(homeService.views());
@PreAuthorize("hasAuthority('admin:statistics:home:index')")
@ApiOperation(value = "首页数据")
@RequestMapping(value = "/index", method = RequestMethod.GET)
public CommonResult<HomeRateResponse> indexDate() {
return CommonResult.success(homeService.indexDate());
}
/**
* 用户曲线图
* @author Mr.Zhang
* @since 2020-05-16
*/
@PreAuthorize("hasAuthority('admin:statistics:home:chart:user')")
@ApiOperation(value = "用户曲线图")
@RequestMapping(value = "/chart/user", method = RequestMethod.GET)
public CommonResult<Map<Object, Object>> chartUser(){
public CommonResult<Map<Object, Object>> chartUser() {
return CommonResult.success(homeService.chartUser());
}
/**
* 用户购买统计
* @author Mr.Zhang
* @since 2020-05-16
*/
@PreAuthorize("hasAuthority('admin:statistics:home:chart:user:buy')")
@ApiOperation(value = "用户购买统计")
@RequestMapping(value = "/chart/user/buy", method = RequestMethod.GET)
public CommonResult<Map<String, Integer>> chartUserBuy(){
public CommonResult<Map<String, Integer>> chartUserBuy() {
return CommonResult.success(homeService.chartUserBuy());
}
/**
* 30天订单量趋势
* @author Mr.Zhang
* @since 2020-05-16
*/
@PreAuthorize("hasAuthority('admin:statistics:home:chart:order')")
@ApiOperation(value = "30天订单量趋势")
@RequestMapping(value = "/chart/order", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> chartOrder(){
public CommonResult<Map<String, Object>> chartOrder() {
return CommonResult.success(homeService.chartOrder());
}
/**
* 周订单量趋势
* @author Mr.Zhang
* @since 2020-05-16
*/
@PreAuthorize("hasAuthority('admin:statistics:home:chart:order:week')")
@ApiOperation(value = "周订单量趋势")
@RequestMapping(value = "/chart/order/week", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> chartOrderInWeek(){
public CommonResult<Map<String, Object>> chartOrderInWeek() {
return CommonResult.success(homeService.chartOrderInWeek());
}
/**
* 月订单量趋势
* @author Mr.Zhang
* @since 2020-05-16
*/
@PreAuthorize("hasAuthority('admin:statistics:home:chart:order:month')")
@ApiOperation(value = "月订单量趋势")
@RequestMapping(value = "/chart/order/month", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> chartOrderInMonth(){
public CommonResult<Map<String, Object>> chartOrderInMonth() {
return CommonResult.success(homeService.chartOrderInMonth());
}
/**
* 年订单量趋势
* @author Mr.Zhang
* @since 2020-05-16
*/
@PreAuthorize("hasAuthority('admin:statistics:home:chart:order:year')")
@ApiOperation(value = "年订单量趋势")
@RequestMapping(value = "/chart/order/year", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> chartOrderInYear(){
public CommonResult<Map<String, Object>> chartOrderInYear() {
return CommonResult.success(homeService.chartOrderInYear());
}
}

View File

@@ -1,15 +1,16 @@
package com.zbkj.crmeb.pass.controller;
package com.zbkj.admin.controller;
import com.alibaba.fastjson.JSONObject;
import com.common.CommonResult;
import com.zbkj.crmeb.pass.request.*;
import com.zbkj.crmeb.pass.service.OnePassService;
import com.zbkj.common.request.*;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.OnePassService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -40,13 +41,14 @@ public class OnePassController {
* 获取用户验证码
* @param phone 手机号码
*/
@PreAuthorize("hasAuthority('admin:pass:send:code')")
@ApiOperation(value = "获取用户验证码")
@RequestMapping(value = "/sendUserCode", method = RequestMethod.GET)
@ApiImplicitParams({
@ApiImplicitParam(name="phone", value="手机号"),
@ApiImplicitParam(name="types", value="验证码类型1:修改0:注册")
})
public CommonResult<Object> sendUserCode(@RequestParam(name = "phone") String phone,@RequestParam(name = "types", required = false) Integer types){
public CommonResult<Object> sendUserCode(@RequestParam(name = "phone") String phone,@RequestParam(name = "types", required = false) Integer types) {
return CommonResult.success(onePassService.sendUserCode(phone, types));
}
@@ -54,9 +56,10 @@ public class OnePassController {
* 账号注册
* @param registerRequest 注册参数
*/
@PreAuthorize("hasAuthority('admin:pass:register')")
@ApiOperation(value = "账号注册")
@RequestMapping(value = "/register", method = RequestMethod.POST)
public CommonResult<String> register(@Validated @RequestBody OnePassRegisterRequest registerRequest){
public CommonResult<String> register(@Validated @RequestBody OnePassRegisterRequest registerRequest) {
return CommonResult.success(onePassService.register(registerRequest));
}
@@ -64,9 +67,10 @@ public class OnePassController {
* 一号通用户登录
* @return
*/
@PreAuthorize("hasAuthority('admin:pass:login')")
@ApiOperation(value = "一号通用户登录")
@RequestMapping(value = "/login", method = RequestMethod.POST)
public CommonResult<Map<String, Object>> account(@Validated @RequestBody OnePassLoginRequest request){
public CommonResult<Map<String, Object>> account(@Validated @RequestBody OnePassLoginRequest request) {
return CommonResult.success(onePassService.login(request));
}
@@ -74,18 +78,20 @@ public class OnePassController {
* 判断是否已经登录
* @return
*/
@PreAuthorize("hasAuthority('admin:pass:is:login')")
@ApiOperation(value = "是否已经登录")
@RequestMapping(value = "/isLogin", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> isLogin(){
public CommonResult<Map<String, Object>> isLogin() {
return CommonResult.success(onePassService.isLogin());
}
/**
* 一号通用户信息
*/
@PreAuthorize("hasAuthority('admin:pass:info')")
@ApiOperation(value = "一号通用户信息")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<JSONObject> getInfo(){
public CommonResult<JSONObject> getInfo() {
return CommonResult.success(onePassService.info());
}
@@ -93,9 +99,10 @@ public class OnePassController {
* 注销当前登录
* @return result
*/
@PreAuthorize("hasAuthority('admin:pass:logout')")
@ApiOperation(value = "注销")
@RequestMapping(value = "/logout", method = RequestMethod.GET)
public CommonResult<JSONObject> logOut(){
public CommonResult<JSONObject> logOut() {
if (onePassService.logOut()) {
return CommonResult.success();
}
@@ -106,9 +113,10 @@ public class OnePassController {
* 修改密码
* 手机号+验证码方式修改
*/
@PreAuthorize("hasAuthority('admin:pass:update:password')")
@ApiOperation(value = "修改密码")
@RequestMapping(value = "/update/password", method = RequestMethod.POST)
public CommonResult<JSONObject> updatePassword(@Validated @RequestBody OnePassUpdateRequest request){
public CommonResult<JSONObject> updatePassword(@Validated @RequestBody OnePassUpdateRequest request) {
if (onePassService.updatePassword(request)) {
return CommonResult.success();
}
@@ -118,9 +126,10 @@ public class OnePassController {
/**
* 修改手机号验证账号密码
*/
@PreAuthorize("hasAuthority('admin:pass:update:phone:validator')")
@ApiOperation(value = "修改手机号——验证账号密码")
@RequestMapping(value = "/update/phone/validator", method = RequestMethod.POST)
public CommonResult<JSONObject> updatePhone(@Validated @RequestBody OnePassLoginRequest request){
public CommonResult<JSONObject> updatePhone(@Validated @RequestBody OnePassLoginRequest request) {
if (onePassService.beforeUpdatePhoneValidator(request)) {
return CommonResult.success();
}
@@ -130,9 +139,10 @@ public class OnePassController {
/**
* 修改手机号
*/
@PreAuthorize("hasAuthority('admin:pass:update:phone')")
@ApiOperation(value = "修改手机号")
@RequestMapping(value = "/update/phone", method = RequestMethod.POST)
public CommonResult<JSONObject> updatePhone(@Validated @RequestBody OnePassUpdateRequest request){
public CommonResult<JSONObject> updatePhone(@Validated @RequestBody OnePassUpdateRequest request) {
if (onePassService.updatePhone(request)) {
return CommonResult.success();
}
@@ -143,28 +153,31 @@ public class OnePassController {
* 套餐列表
* @param type 套餐类型sms,短信expr_query,物流查询expr_dump,电子面单copy,产品复制
*/
@PreAuthorize("hasAuthority('admin:pass:meal:list')")
@ApiOperation(value = "套餐列表")
@RequestMapping(value = "/meal/list", method = RequestMethod.GET)
@ApiImplicitParam(name="type", value="套餐类型sms,短信expr_query,物流查询expr_dump,电子面单copy,产品复制")
public CommonResult<JSONObject> mealList(@Validated @RequestParam String type){
public CommonResult<JSONObject> mealList(@Validated @RequestParam String type) {
return CommonResult.success(onePassService.mealList(type));
}
/**
* 套餐购买
*/
@PreAuthorize("hasAuthority('admin:pass:meal:code')")
@ApiOperation(value = "套餐购买")
@RequestMapping(value = "/meal/code", method = RequestMethod.POST)
public CommonResult<JSONObject> mealCode(@RequestBody @Validated MealCodeRequest request){
public CommonResult<JSONObject> mealCode(@RequestBody @Validated MealCodeRequest request) {
return CommonResult.success(onePassService.mealCode(request));
}
/**
* 服务开通
*/
@PreAuthorize("hasAuthority('admin:pass:service:open')")
@ApiOperation(value = "服务开通")
@RequestMapping(value = "/service/open", method = RequestMethod.POST)
public CommonResult<JSONObject> serviceOpen(@RequestBody @Validated ServiceOpenRequest request){
public CommonResult<JSONObject> serviceOpen(@RequestBody @Validated ServiceOpenRequest request) {
if (onePassService.serviceOpen(request)) {
return CommonResult.success();
}
@@ -174,9 +187,10 @@ public class OnePassController {
/**
* 用量记录
*/
@PreAuthorize("hasAuthority('admin:pass:user:record')")
@ApiOperation(value = "用量记录")
@RequestMapping(value = "/user/record", method = RequestMethod.GET)
public CommonResult<JSONObject> record(@Validated OnePassUserRecordRequest request){
public CommonResult<JSONObject> record(@Validated OnePassUserRecordRequest request) {
return CommonResult.success(onePassService.userRecord(request));
}
}

View File

@@ -1,22 +1,22 @@
package com.zbkj.crmeb.store.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.store.request.RetailShopRequest;
import com.zbkj.crmeb.store.request.RetailShopStairUserRequest;
import com.zbkj.crmeb.store.response.RetailShopStatisticsResponse;
import com.zbkj.crmeb.store.response.SpreadOrderResponse;
import com.zbkj.crmeb.store.service.RetailShopService;
import com.zbkj.crmeb.user.model.User;
import com.zbkj.crmeb.user.response.SpreadUserResponse;
import com.zbkj.crmeb.user.service.UserService;
import com.zbkj.common.model.user.User;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.RetailShopRequest;
import com.zbkj.common.request.RetailShopStairUserRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.SpreadOrderResponse;
import com.zbkj.common.response.SpreadUserResponse;
import com.zbkj.service.service.RetailShopService;
import com.zbkj.service.service.UserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -50,10 +50,11 @@ public class RetailShopController {
* @param dateLimit 时间参数
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:retail:list')")
@ApiOperation(value = "分销员列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ApiImplicitParams({
@ApiImplicitParam(name = "keywords", value = "搜索关键字[身份证,手机,昵称,备注等]"),
@ApiImplicitParam(name = "keywords", value = "搜索关键字[姓名、电话、uid]"),
@ApiImplicitParam(name = "dateLimit", value = "today,yesterday,lately7,lately30,month,year,/yyyy-MM-dd hh:mm:ss,yyyy-MM-dd hh:mm:ss/")
})
public CommonResult<CommonPage<SpreadUserResponse>> getList(@RequestParam(required = false) String keywords,
@@ -62,45 +63,13 @@ public class RetailShopController {
return CommonResult.success(retailShopService.getSpreadPeopleList(keywords, dateLimit, pageParamRequest));
}
/**
* 分销头部信息
* @param keywords 搜索参数
* @param dateLimit 时间参数
*/
@ApiOperation(value = "分销头部数据")
@RequestMapping(value = "/statistics", method = RequestMethod.GET)
@ApiImplicitParams({
@ApiImplicitParam(name = "keywords", value = "搜索参数"),
@ApiImplicitParam(name = "dateLimit", value = "today,yesterday,lately7,lately30,month,year,/yyyy-MM-dd hh:mm:ss,yyyy-MM-dd hh:mm:ss/")
})
public CommonResult<RetailShopStatisticsResponse> getStatistics(@RequestParam(required = false) String keywords,
@RequestParam(required = false) String dateLimit) {
return CommonResult.success(retailShopService.getAdminStatistics(keywords, dateLimit));
}
/**
* 添加推广关系
* @param currentUserId 当前用户id
* @param spreadUserId 推广人用户id
* @return 结果
*/
@ApiOperation(value = "添加推广关系")
@RequestMapping(value = "/spread/save", method = RequestMethod.GET)
@ApiImplicitParams({
@ApiImplicitParam(name = "currentUserId", value = "当前用户id"),
@ApiImplicitParam(name = "spreadUserId", value = "推广人id")
})
public CommonResult<Object> save(Integer currentUserId, Integer spreadUserId) {
return CommonResult.success(userService.spread(currentUserId, spreadUserId));
}
/**
* 根据用户参数获取推广人列表
* @param request 查询参数
* @param pageParamRequest 分页参数
* @return 查询结果推广人列表
*/
@PreAuthorize("hasAuthority('admin:retail:spread:list')")
@ApiOperation(value = "根据条件获取推广人列表")
@RequestMapping(value = "/spread/userlist", method = RequestMethod.POST)
public CommonResult<CommonPage<User>> getUserListBySpreadLevel(@RequestBody @Validated RetailShopStairUserRequest request,
@@ -115,6 +84,7 @@ public class RetailShopController {
* @param pageParamRequest 分页参数
* @return 查询结果推广人订单列表
*/
@PreAuthorize("hasAuthority('admin:retail:spread:order:list')")
@ApiOperation(value = "根据条件获取推广人订单")
@RequestMapping(value = "/spread/orderlist", method = RequestMethod.POST)
public CommonResult<CommonPage<SpreadOrderResponse>> getOrdersBySpreadLevel(@RequestBody @Validated RetailShopStairUserRequest request,
@@ -127,6 +97,7 @@ public class RetailShopController {
* @param id 当前被清理的用户id
* @return 推广关系清理后的结果
*/
@PreAuthorize("hasAuthority('admin:retail:spread:clean')")
@ApiOperation(value = "清除上级推广人")
@RequestMapping(value = "/spread/clean/{id}", method = RequestMethod.GET)
public CommonResult<Object> clearSpread(@PathVariable Integer id) {
@@ -137,6 +108,7 @@ public class RetailShopController {
* 分销设置获取
* @return 保存分销设置
*/
@PreAuthorize("hasAuthority('admin:retail:spread:manage:get')")
@ApiOperation(value = "分销配置信息获取")
@RequestMapping(value = "/spread/manage/get", method = RequestMethod.GET)
public CommonResult<Object> getSpreadInfo() {
@@ -148,6 +120,7 @@ public class RetailShopController {
* @param retailShopRequest 分销管理对象
* @return 保存结果
*/
@PreAuthorize("hasAuthority('admin:retail:spread:manage:set')")
@ApiOperation(value = "分销管理信息保存")
@RequestMapping(value = "/spread/manage/set", method = RequestMethod.POST)
public CommonResult<Object> setSpreadInfo(@RequestBody @Validated RetailShopRequest retailShopRequest) {

View File

@@ -1,19 +1,20 @@
package com.zbkj.crmeb.express.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.express.request.ShippingTemplatesRequest;
import com.zbkj.crmeb.express.request.ShippingTemplatesSearchRequest;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.ShippingTemplatesRequest;
import com.zbkj.common.request.ShippingTemplatesSearchRequest;
import com.zbkj.service.service.ShippingTemplatesService;
import io.swagger.annotations.ApiImplicitParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.express.service.ShippingTemplatesService;
import com.zbkj.crmeb.express.model.ShippingTemplates;
import com.zbkj.common.model.express.ShippingTemplates;
/**
* 物流-模板控制器
@@ -40,9 +41,8 @@ public class ShippingTemplatesController {
* 分页显示
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:shipping:templates:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<ShippingTemplates>> getList(@Validated ShippingTemplatesSearchRequest request, @Validated PageParamRequest pageParamRequest){
@@ -53,9 +53,8 @@ public class ShippingTemplatesController {
/**
* 新增
* @param request 新增参数
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:shipping:templates:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated ShippingTemplatesRequest request){
@@ -68,11 +67,11 @@ public class ShippingTemplatesController {
/**
* 删除
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:shipping:templates:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
@ApiImplicitParam(name="id", value="模板ID", required = true)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(shippingTemplatesService.remove(id)){
return CommonResult.success();
@@ -85,27 +84,27 @@ public class ShippingTemplatesController {
* 修改
* @param id integer id
* @param request ShippingTemplatesRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:shipping:templates:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated ShippingTemplatesRequest request){
shippingTemplatesService.update(id, request);
return CommonResult.success();
if (shippingTemplatesService.update(id, request)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 查询信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:shipping:templates:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
@ApiImplicitParam(name="id", value="模板ID", required = true)
public CommonResult<ShippingTemplates> info(@RequestParam(value = "id") Integer id){
ShippingTemplates shippingTemplates = shippingTemplatesService.getById(id);
return CommonResult.success(shippingTemplates);
return CommonResult.success(shippingTemplatesService.getInfo(id));
}
}

View File

@@ -1,17 +1,20 @@
package com.zbkj.crmeb.express.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.express.request.ShippingTemplatesFreeRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import com.zbkj.common.request.ShippingTemplatesFreeRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.ShippingTemplatesFreeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.express.service.ShippingTemplatesFreeService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 物流控制器
* +----------------------------------------------------------------------
@@ -36,15 +39,12 @@ public class ShippingTemplatesFreeController {
/**
* 根据模板id查询数据
* @param tempId Integer 模板id
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:shipping:templates:free:list')")
@ApiOperation(value = "根据模板id查询数据")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<List<ShippingTemplatesFreeRequest>> getList(@RequestParam Integer tempId){
return CommonResult.success(shippingTemplatesFreeService.getListGroup(tempId));
}
}

View File

@@ -1,17 +1,20 @@
package com.zbkj.crmeb.express.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.express.request.ShippingTemplatesRegionRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import com.zbkj.common.request.ShippingTemplatesRegionRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.ShippingTemplatesRegionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.express.service.ShippingTemplatesRegionService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 物流付费前端控制器
* +----------------------------------------------------------------------
@@ -36,15 +39,11 @@ public class ShippingTemplatesRegionController {
/**
* 根据模板id查询数据
* @param tempId Integer 模板id
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:shipping:templates:region:list')")
@ApiOperation(value = "根据模板id查询数据")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<List<ShippingTemplatesRegionRequest>> getList(@RequestParam Integer tempId){
return CommonResult.success(shippingTemplatesRegionService.getListGroup(tempId));
}
}

View File

@@ -1,19 +1,18 @@
package com.zbkj.crmeb.sms.controller;
package com.zbkj.admin.controller;
import com.alibaba.fastjson.JSONObject;
import com.common.CommonResult;
import com.common.MyRecord;
import com.common.PageParamRequest;
import com.utils.ValidateFormUtil;
import com.zbkj.crmeb.sms.request.SmsApplyTempRequest;
import com.zbkj.crmeb.sms.request.SmsModifySignRequest;
import com.zbkj.crmeb.sms.service.SmsService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.vo.MyRecord;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.SmsApplyTempRequest;
import com.zbkj.common.request.SmsModifySignRequest;
import com.zbkj.service.service.SmsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -44,9 +43,10 @@ public class SmsRecordController {
/**
* 修改签名
*/
@PreAuthorize("hasAuthority('admin:sms:modify:sign')")
@ApiOperation(value = "修改签名")
@RequestMapping(value = "/modify/sign", method = RequestMethod.POST)
public CommonResult<JSONObject> modifySign(@RequestBody @Validated SmsModifySignRequest request){
public CommonResult<JSONObject> modifySign(@RequestBody @Validated SmsModifySignRequest request) {
if (smsService.modifySign(request)) {
return CommonResult.success();
}
@@ -55,11 +55,11 @@ public class SmsRecordController {
/**
* 短信模板
* @return
*/
@PreAuthorize("hasAuthority('admin:sms:temps')")
@ApiOperation(value = "短信模板")
@RequestMapping(value = "/temps", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> temps(@ModelAttribute PageParamRequest pageParamRequest){
public CommonResult<Map<String, Object>> temps(@ModelAttribute PageParamRequest pageParamRequest) {
MyRecord myRecord = smsService.temps(pageParamRequest);
return CommonResult.success(myRecord);
}
@@ -67,9 +67,10 @@ public class SmsRecordController {
/**
* 申请短信模板
*/
@PreAuthorize("hasAuthority('admin:sms:temp:apply')")
@ApiOperation(value = "申请短信模板")
@RequestMapping(value = "/temp/apply", method = RequestMethod.POST)
public CommonResult<JSONObject> applyTempMessage(@RequestBody @Validated SmsApplyTempRequest request){
public CommonResult<JSONObject> applyTempMessage(@RequestBody @Validated SmsApplyTempRequest request) {
if (smsService.applyTempMessage(request)) {
return CommonResult.success();
}
@@ -78,30 +79,15 @@ public class SmsRecordController {
/**
* 模板申请记录
* @return
*/
@PreAuthorize("hasAuthority('admin:sms:applys')")
@ApiOperation(value = "模板申请记录")
@RequestMapping(value = "/applys", method = RequestMethod.POST)
@ApiImplicitParam(name="type", value="type (1=验证码 2=通知 3=推广)")
public CommonResult<Map<String, Object>> applys(@RequestParam(name = "type", required = false) Integer type, @ModelAttribute PageParamRequest pageParamRequest){
public CommonResult<Map<String, Object>> applys(@RequestParam(name = "type", required = false) Integer type, @ModelAttribute PageParamRequest pageParamRequest) {
return CommonResult.success(smsService.applys(type, pageParamRequest));
}
// /**
// * 发送短信
// * @param phone 手机号码
// * @return 发送是否成功
// */
// @ApiOperation(value = " 发送短信")
// @RequestMapping(value = "/sendCode", method = RequestMethod.POST)
// @ApiImplicitParams({
// @ApiImplicitParam(name="phone", value="手机号码", required = true)
// })
// public CommonResult<Object> sendCode(@RequestParam String phone){
// ValidateFormUtil.isPhone(phone,"手机号码错误");
// boolean codeResult = smsService.pushCodeToList(phone,1, null);
// return codeResult ? CommonResult.success("短信加入发送队列成功"):CommonResult.failed("短信加入发送队列失败");
// }
}

View File

@@ -1,22 +1,23 @@
package com.zbkj.crmeb.bargain.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.bargain.request.StoreBargainRequest;
import com.zbkj.crmeb.bargain.request.StoreBargainSearchRequest;
import com.zbkj.crmeb.bargain.request.StoreBargainUserSearchRequest;
import com.zbkj.crmeb.bargain.response.StoreBargainResponse;
import com.zbkj.crmeb.bargain.response.StoreBargainUserHelpResponse;
import com.zbkj.crmeb.bargain.response.StoreBargainUserResponse;
import com.zbkj.crmeb.bargain.service.StoreBargainService;
import com.zbkj.crmeb.bargain.service.StoreBargainUserHelpService;
import com.zbkj.crmeb.bargain.service.StoreBargainUserService;
import com.zbkj.crmeb.store.response.StoreProductResponse;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.StoreBargainRequest;
import com.zbkj.common.request.StoreBargainSearchRequest;
import com.zbkj.common.request.StoreBargainUserSearchRequest;
import com.zbkj.common.response.StoreBargainResponse;
import com.zbkj.common.response.StoreBargainUserHelpResponse;
import com.zbkj.common.response.StoreBargainUserResponse;
import com.zbkj.common.response.StoreProductInfoResponse;
import com.zbkj.service.service.StoreBargainService;
import com.zbkj.service.service.StoreBargainUserHelpService;
import com.zbkj.service.service.StoreBargainUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -54,9 +55,8 @@ public class StoreBargainController {
* 分页显示砍价商品列表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author HZW
* @since 2020-11-06
*/
@PreAuthorize("hasAuthority('admin:bargain:list')")
@ApiOperation(value = "分页显示砍价商品列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreBargainResponse>> getList(@Validated StoreBargainSearchRequest request, @Validated PageParamRequest pageParamRequest){
@@ -67,25 +67,23 @@ public class StoreBargainController {
/**
* 新增砍价商品
* @param storeBargainRequest 新增参数
* @author HZW
* @since 2020-11-06
*/
@PreAuthorize("hasAuthority('admin:bargain:save')")
@ApiOperation(value = "新增砍价商品")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated StoreBargainRequest storeBargainRequest){
if(storeBargainService.saveBargain(storeBargainRequest)){
return CommonResult.success();
return CommonResult.success("添加砍价商品成功");
}else{
return CommonResult.failed();
return CommonResult.failed("添加砍价商品失败");
}
}
/**
* 删除砍价商品
* @param id Integer
* @author HZW
* @since 2020-11-06
*/
@PreAuthorize("hasAuthority('admin:bargain:delete')")
@ApiOperation(value = "删除砍价商品")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
@@ -98,18 +96,15 @@ public class StoreBargainController {
/**
* 修改砍价商品
* @param id integer id
* @param storeBargainRequest 修改参数
* @author HZW
* @since 2020-11-06
*/
@PreAuthorize("hasAuthority('admin:bargain:update')")
@ApiOperation(value = "修改砍价商品")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated StoreBargainRequest storeBargainRequest){
storeBargainRequest.setId(id);
if(storeBargainService.updateBargain(storeBargainRequest)){
public CommonResult<String> update(@RequestBody @Validated StoreBargainRequest storeBargainRequest){
if (storeBargainService.updateBargain(storeBargainRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -117,25 +112,23 @@ public class StoreBargainController {
/**
* 查询砍价商品详情
* @param id Integer
* @author HZW
* @since 2020-11-06
*/
@PreAuthorize("hasAuthority('admin:bargain:info')")
@ApiOperation(value = "查询砍价商品详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<StoreProductResponse> info(@RequestParam(value = "id") Integer id){
StoreProductResponse storeBargainResponse = storeBargainService.getAdminDetail(id);
public CommonResult<StoreProductInfoResponse> info(@RequestParam(value = "id") Integer id){
StoreProductInfoResponse storeBargainResponse = storeBargainService.getAdminDetail(id);
return CommonResult.success(storeBargainResponse);
}
/**
*
* 修改砍价商品状态
* @param id
* @param status
* @param id 商品id
* @param status 商品状态
* @return {@link CommonResult<String>}
* @Author HZW
* @Date 2020/11/9
*/
@PreAuthorize("hasAuthority('admin:bargain:update:status')")
@ApiOperation(value = "修改砍价商品状态")
@RequestMapping(value = "/update/status", method = RequestMethod.POST)
public CommonResult<String> updateStatus(@RequestParam @Validated Integer id, @RequestParam @Validated boolean status){
@@ -150,10 +143,8 @@ public class StoreBargainController {
* 分页显示砍价列表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author HZW
* @since 2020-11-12
* @return
*/
@PreAuthorize("hasAuthority('admin:bargain:user:list')")
@ApiOperation(value = "分页显示砍价列表") //配合swagger使用
@RequestMapping(value = "/bargain_list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreBargainUserResponse>> getBargainUserList(@Validated StoreBargainUserSearchRequest request, @Validated PageParamRequest pageParamRequest){
@@ -164,10 +155,8 @@ public class StoreBargainController {
/**
* 获取砍价参与详情列表
* @param id StoreBargainUser 砍价参与用户编号
* @author HZW
* @since 2020-11-12
* @return
*/
@PreAuthorize("hasAuthority('admin:bargain:user:help:list')")
@ApiOperation(value = "获取砍价参与详情列表") //配合swagger使用
@RequestMapping(value = "/bargain_list/{id}", method = RequestMethod.GET)
public CommonResult<List<StoreBargainUserHelpResponse>> getBargainUserHelpDetail(@PathVariable(value = "id") Integer id){

View File

@@ -1,21 +1,22 @@
package com.zbkj.crmeb.combination.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.combination.request.StoreCombinationRequest;
import com.zbkj.crmeb.combination.request.StoreCombinationSearchRequest;
import com.zbkj.crmeb.combination.request.StorePinkSearchRequest;
import com.zbkj.crmeb.combination.response.StoreCombinationResponse;
import com.zbkj.crmeb.combination.response.StorePinkAdminListResponse;
import com.zbkj.crmeb.combination.response.StorePinkDetailResponse;
import com.zbkj.crmeb.combination.service.StoreCombinationService;
import com.zbkj.crmeb.combination.service.StorePinkService;
import com.zbkj.crmeb.store.response.StoreProductResponse;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.StoreCombinationRequest;
import com.zbkj.common.request.StoreCombinationSearchRequest;
import com.zbkj.common.request.StorePinkSearchRequest;
import com.zbkj.common.response.StoreCombinationResponse;
import com.zbkj.common.response.StorePinkAdminListResponse;
import com.zbkj.common.response.StorePinkDetailResponse;
import com.zbkj.common.response.StoreProductInfoResponse;
import com.zbkj.service.service.StoreCombinationService;
import com.zbkj.service.service.StorePinkService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -50,10 +51,9 @@ public class StoreCombinationController {
* 分页显示拼团商品表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author HZW
* @since 2020-11-13
* @return
*/
@PreAuthorize("hasAuthority('admin:combination:list')")
@ApiOperation(value = "分页显示拼团商品表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreCombinationResponse>> getList(@Validated StoreCombinationSearchRequest request, @Validated PageParamRequest pageParamRequest){
@@ -64,25 +64,23 @@ public class StoreCombinationController {
/**
* 新增拼团商品表
* @param request 新增参数
* @author HZW
* @since 2020-11-13
*/
@PreAuthorize("hasAuthority('admin:combination:save')")
@ApiOperation(value = "新增拼团商品")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated StoreCombinationRequest request){
if(storeCombinationService.saveCombination(request)){
return CommonResult.success();
return CommonResult.success("新增拼团商品成功");
}else{
return CommonResult.failed();
return CommonResult.failed("新增拼团商品失败");
}
}
/**
* 删除拼团商品表
* @param id Integer
* @author HZW
* @since 2020-11-13
*/
@PreAuthorize("hasAuthority('admin:combination:delete')")
@ApiOperation(value = "删除拼团商品")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
@@ -95,15 +93,12 @@ public class StoreCombinationController {
/**
* 修改拼团商品表
* @param id integer id
* @param storeCombinationRequest 修改参数
* @author HZW
* @since 2020-11-13
*/
@PreAuthorize("hasAuthority('admin:combination:update')")
@ApiOperation(value = "修改拼团商品")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated StoreCombinationRequest storeCombinationRequest){
storeCombinationRequest.setId(id);
public CommonResult<String> update(@RequestBody @Validated StoreCombinationRequest storeCombinationRequest){
if(storeCombinationService.updateCombination(storeCombinationRequest)){
return CommonResult.success();
}else{
@@ -114,21 +109,19 @@ public class StoreCombinationController {
/**
* 查询拼团商品信息
* @param id Integer
* @author HZW
* @since 2020-11-13
* @return
*/
@PreAuthorize("hasAuthority('admin:combination:info')")
@ApiOperation(value = "拼团商品详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<StoreProductResponse> info(@RequestParam(value = "id") Integer id){
StoreProductResponse detail = storeCombinationService.getAdminDetail(id);
public CommonResult<StoreProductInfoResponse> info(@RequestParam(value = "id") Integer id){
StoreProductInfoResponse detail = storeCombinationService.getAdminDetail(id);
return CommonResult.success(detail);
}
/**
* 修改拼团商品状态
* @return
*/
@PreAuthorize("hasAuthority('admin:combination:update:status')")
@ApiOperation(value = "修改拼团商品状态")
@RequestMapping(value = "/update/status", method = RequestMethod.POST)
public CommonResult<Object> updateStatus(@RequestParam(value = "id") Integer id, @RequestParam @Validated boolean isShow){
@@ -141,8 +134,8 @@ public class StoreCombinationController {
/**
* 拼团统计
* @return
*/
@PreAuthorize("hasAuthority('admin:combination:statistics')")
@ApiOperation(value = "拼团统计")
@RequestMapping(value = "/statistics", method = RequestMethod.GET)
public CommonResult<Map<String, Object>> statistics() {
@@ -152,8 +145,8 @@ public class StoreCombinationController {
/**
* 拼团列表
* @return
*/
@PreAuthorize("hasAuthority('admin:combination:combine:list')")
@ApiOperation(value = "拼团列表")
@RequestMapping(value = "/combine/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StorePinkAdminListResponse>> getCombineList(@Validated StorePinkSearchRequest request, @Validated PageParamRequest pageParamRequest){
@@ -163,8 +156,8 @@ public class StoreCombinationController {
/**
* 拼团订单列表
* @return
*/
@PreAuthorize("hasAuthority('admin:combination:order:pink')")
@ApiOperation(value = "拼团订单列表")
@RequestMapping(value = "/order_pink/{id}", method = RequestMethod.GET)
public CommonResult<List<StorePinkDetailResponse>> getPinkList(@PathVariable(value = "id") Integer id) {

View File

@@ -1,18 +1,20 @@
package com.zbkj.crmeb.marketing.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.common.SearchAndPageRequest;
import com.zbkj.crmeb.marketing.model.StoreCoupon;
import com.zbkj.crmeb.marketing.request.StoreCouponRequest;
import com.zbkj.crmeb.marketing.request.StoreCouponSearchRequest;
import com.zbkj.crmeb.marketing.response.StoreCouponInfoResponse;
import com.zbkj.crmeb.marketing.service.StoreCouponService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.SearchAndPageRequest;
import com.zbkj.common.model.coupon.StoreCoupon;
import com.zbkj.common.request.StoreCouponRequest;
import com.zbkj.common.request.StoreCouponSearchRequest;
import com.zbkj.common.response.StoreCouponInfoResponse;
import com.zbkj.service.service.StoreCouponService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -42,12 +44,11 @@ public class StoreCouponController {
* 分页显示优惠券表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-18
*/
@PreAuthorize("hasAuthority('admin:coupon:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreCoupon>> getList(@Validated StoreCouponSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<StoreCoupon>> getList(@Validated StoreCouponSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<StoreCoupon> storeCouponCommonPage = CommonPage.restPage(storeCouponService.getList(request, pageParamRequest));
return CommonResult.success(storeCouponCommonPage);
}
@@ -55,15 +56,14 @@ public class StoreCouponController {
/**
* 保存优惠券表
* @param request StoreCouponRequest 新增参数
* @author Mr.Zhang
* @since 2020-05-18
*/
@PreAuthorize("hasAuthority('admin:coupon:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated StoreCouponRequest request){
if(storeCouponService.create(request)){
public CommonResult<String> save(@RequestBody @Validated StoreCouponRequest request) {
if (storeCouponService.create(request)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -71,18 +71,14 @@ public class StoreCouponController {
/**
* 是否有效
* @param id integer id
* @author Mr.Zhang
* @since 2020-05-18
*/
@PreAuthorize("hasAuthority('admin:coupon:update:status')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update/status", method = RequestMethod.POST)
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam Boolean status){
StoreCoupon storeCoupon = new StoreCoupon();
storeCoupon.setId(id);
storeCoupon.setStatus(status);
if(storeCouponService.updateById(storeCoupon)){
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam Boolean status) {
if (storeCouponService.updateStatus(id, status)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -90,12 +86,12 @@ public class StoreCouponController {
/**
* 详情
* @param id integer id
* @author Mr.Zhang
* @since 2020-05-18
*/
@PreAuthorize("hasAuthority('admin:coupon:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.POST)
public CommonResult<StoreCouponInfoResponse> info(@RequestParam Integer id){
@ApiImplicitParam(name="id", value="优惠券ID", required = true)
public CommonResult<StoreCouponInfoResponse> info(@RequestParam Integer id) {
return CommonResult.success(storeCouponService.info(id));
}
@@ -103,9 +99,10 @@ public class StoreCouponController {
* 发送优惠券列表
* @param searchAndPageRequest 搜索分页参数
*/
@PreAuthorize("hasAuthority('admin:coupon:send:list')")
@ApiOperation(value = "发送优惠券列表")
@RequestMapping(value = "/send/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreCoupon>> getSendList(@Validated SearchAndPageRequest searchAndPageRequest){
public CommonResult<CommonPage<StoreCoupon>> getSendList(@Validated SearchAndPageRequest searchAndPageRequest) {
CommonPage<StoreCoupon> storeCouponCommonPage = CommonPage.restPage(storeCouponService.getSendList(searchAndPageRequest));
return CommonResult.success(storeCouponCommonPage);
}
@@ -114,12 +111,13 @@ public class StoreCouponController {
* 删除优惠券
* @param id 优惠券id
*/
@PreAuthorize("hasAuthority('admin:coupon:delete')")
@ApiOperation(value = "删除优惠券")
@RequestMapping(value = "/delete", method = RequestMethod.POST)
public CommonResult<StoreCouponInfoResponse> delete(@RequestParam Integer id){
if(storeCouponService.delete(id)){
public CommonResult<StoreCouponInfoResponse> delete(@RequestParam Integer id) {
if (storeCouponService.delete(id)) {
return CommonResult.success("删除成功");
}else{
} else {
return CommonResult.failed("删除失败");
}
}

View File

@@ -1,21 +1,19 @@
package com.zbkj.crmeb.marketing.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.sun.org.apache.xpath.internal.operations.Bool;
import com.zbkj.crmeb.marketing.request.StoreCouponUserRequest;
import com.zbkj.crmeb.marketing.request.StoreCouponUserSearchRequest;
import com.zbkj.crmeb.marketing.response.StoreCouponUserResponse;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.StoreCouponUserRequest;
import com.zbkj.common.request.StoreCouponUserSearchRequest;
import com.zbkj.common.response.StoreCouponUserResponse;
import com.zbkj.service.service.StoreCouponUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.marketing.service.StoreCouponUserService;
import com.zbkj.crmeb.marketing.model.StoreCouponUser;
/**
@@ -43,12 +41,11 @@ public class StoreCouponUserController {
* 分页显示优惠券发放记录表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-18
*/
@PreAuthorize("hasAuthority('admin:coupon:user:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreCouponUserResponse>> getList(@Validated StoreCouponUserSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<StoreCouponUserResponse>> getList(@Validated StoreCouponUserSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<StoreCouponUserResponse> storeCouponUserCommonPage = CommonPage.restPage(storeCouponUserService.getList(request, pageParamRequest));
return CommonResult.success(storeCouponUserCommonPage);
}
@@ -56,15 +53,14 @@ public class StoreCouponUserController {
/**
* 领券
* @param storeCouponUserRequest 新增参数
* @author Mr.Zhang
* @since 2020-05-18
*/
@PreAuthorize("hasAuthority('admin:coupon:user:receive')")
@ApiOperation(value = "领券")
@RequestMapping(value = "/receive", method = RequestMethod.POST)
public CommonResult<String> receive(@Validated StoreCouponUserRequest storeCouponUserRequest){
if(storeCouponUserService.receive(storeCouponUserRequest)){
public CommonResult<String> receive(@Validated StoreCouponUserRequest storeCouponUserRequest) {
if(storeCouponUserService.receive(storeCouponUserRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}

View File

@@ -1,20 +1,20 @@
package com.zbkj.crmeb.store.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.express.vo.ExpressSheetVo;
import com.zbkj.crmeb.express.vo.LogisticsResultVo;
import com.zbkj.crmeb.store.request.*;
import com.zbkj.crmeb.store.response.*;
import com.zbkj.crmeb.store.service.StoreOrderService;
import com.zbkj.crmeb.store.service.StoreOrderVerification;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.*;
import com.zbkj.common.response.*;
import com.zbkj.common.vo.ExpressSheetVo;
import com.zbkj.common.vo.LogisticsResultVo;
import com.zbkj.service.service.StoreOrderService;
import com.zbkj.service.service.StoreOrderVerification;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.hibernate.validator.constraints.Range;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -49,6 +49,7 @@ public class StoreOrderController {
* @param request 搜索条件
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:order:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreOrderDetailResponse>> getList(@Validated StoreOrderSearchRequest request, @Validated PageParamRequest pageParamRequest) {
@@ -58,15 +59,19 @@ public class StoreOrderController {
/**
* 获取订单各状态数量
*/
@PreAuthorize("hasAuthority('admin:order:status:num')")
@ApiOperation(value = "获取订单各状态数量")
@RequestMapping(value = "/status/num", method = RequestMethod.GET)
public CommonResult<StoreOrderCountItemResponse> getOrderStatusNum(@RequestParam(value = "dateLimit", defaultValue = "") String dateLimit) {
return CommonResult.success(storeOrderService.getOrderStatusNum(dateLimit));
public CommonResult<StoreOrderCountItemResponse> getOrderStatusNum(
@RequestParam(value = "dateLimit", defaultValue = "") String dateLimit,
@RequestParam(value = "type", defaultValue = "2") @Range(min = 0, max = 2, message = "未知的订单类型") Integer type) {
return CommonResult.success(storeOrderService.getOrderStatusNum(dateLimit, type));
}
/**
* 获取订单统计数据
*/
@PreAuthorize("hasAuthority('admin:order:list:data')")
@ApiOperation(value = "获取订单统计数据")
@RequestMapping(value = "/list/data", method = RequestMethod.GET)
public CommonResult<StoreOrderTopItemResponse> getOrderData(@RequestParam(value = "dateLimit", defaultValue = "")String dateLimit) {
@@ -77,6 +82,7 @@ public class StoreOrderController {
/**
* 订单删除
*/
@PreAuthorize("hasAuthority('admin:order:delete')")
@ApiOperation(value = "订单删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "orderNo") String orderNo) {
@@ -90,6 +96,7 @@ public class StoreOrderController {
/**
* 备注订单
*/
@PreAuthorize("hasAuthority('admin:order:mark')")
@ApiOperation(value = "备注")
@RequestMapping(value = "/mark", method = RequestMethod.POST)
public CommonResult<String> mark(@RequestParam String orderNo, @RequestParam String mark) {
@@ -103,9 +110,10 @@ public class StoreOrderController {
/**
* 修改订单(改价)
*/
@PreAuthorize("hasAuthority('admin:order:update:price')")
@ApiOperation(value = "修改订单(改价)")
@RequestMapping(value = "/update/price", method = RequestMethod.POST)
public CommonResult<String> update(@RequestBody @Validated StoreOrderUpdatePriceRequest request) {
public CommonResult<String> updatePrice(@RequestBody @Validated StoreOrderUpdatePriceRequest request) {
if (storeOrderService.updatePrice(request)) {
return CommonResult.success();
} else {
@@ -116,6 +124,7 @@ public class StoreOrderController {
/**
* 订单详情
*/
@PreAuthorize("hasAuthority('admin:order:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<StoreOrderInfoResponse> info(@RequestParam(value = "orderNo") String orderNo) {
@@ -125,6 +134,7 @@ public class StoreOrderController {
/**
* 发送货
*/
@PreAuthorize("hasAuthority('admin:order:send')")
@ApiOperation(value = "发送货")
@RequestMapping(value = "/send", method = RequestMethod.POST)
public CommonResult<Boolean> send(@RequestBody @Validated StoreOrderSendRequest request) {
@@ -137,6 +147,7 @@ public class StoreOrderController {
/**
* 退款
*/
@PreAuthorize("hasAuthority('admin:order:refund')")
@ApiOperation(value = "退款")
@RequestMapping(value = "/refund", method = RequestMethod.GET)
public CommonResult<Boolean> send(@Validated StoreOrderRefundRequest request) {
@@ -146,6 +157,7 @@ public class StoreOrderController {
/**
* 拒绝退款
*/
@PreAuthorize("hasAuthority('admin:order:refund:refuse')")
@ApiOperation(value = "拒绝退款")
@RequestMapping(value = "/refund/refuse", method = RequestMethod.GET)
public CommonResult<Object> refundRefuse(@RequestParam String orderNo, @RequestParam String reason) {
@@ -158,6 +170,7 @@ public class StoreOrderController {
/**
* 快递查询
*/
@PreAuthorize("hasAuthority('admin:order:logistics:info')")
@ApiOperation(value = "快递查询")
@RequestMapping(value = "/getLogisticsInfo", method = RequestMethod.GET)
public CommonResult<LogisticsResultVo> getLogisticsInfo(@RequestParam(value = "orderNo") String orderNo) {
@@ -170,6 +183,7 @@ public class StoreOrderController {
* @author stivepeim
* @since 2020-08-29
*/
@PreAuthorize("hasAuthority('admin:order:statistics')")
@ApiOperation(value = "核销订单头部数据")
@RequestMapping(value = "/statistics", method = RequestMethod.GET)
public CommonResult<StoreStaffTopDetail> getStatistics() {
@@ -182,6 +196,7 @@ public class StoreOrderController {
* @author stivepeim
* @since 2020-08-29
*/
@PreAuthorize("hasAuthority('admin:order:statistics:data')")
@ApiOperation(value = "核销订单 月列表数据")
@RequestMapping(value = "/statisticsData", method = RequestMethod.GET)
public CommonResult<List<StoreStaffDetail>> getStaffDetail(StoreOrderStaticsticsRequest request) {
@@ -195,6 +210,7 @@ public class StoreOrderController {
* @author stivepeim
* @since 2020-09-01
*/
@PreAuthorize("hasAuthority('admin:order:write:update')")
@ApiOperation(value = "核销码核销订单")
@RequestMapping(value = "/writeUpdate/{vCode}", method = RequestMethod.GET)
public CommonResult<Object> verificationOrder(@PathVariable String vCode) {
@@ -207,6 +223,7 @@ public class StoreOrderController {
* @author stivepeim
* @since 2020-09-01
*/
@PreAuthorize("hasAuthority('admin:order:write:confirm')")
@ApiOperation(value = "核销码查询待核销订单")
@RequestMapping(value = "/writeConfirm/{vCode}", method = RequestMethod.GET)
public CommonResult<Object> verificationConfirmOrder(
@@ -214,24 +231,13 @@ public class StoreOrderController {
return CommonResult.success(storeOrderVerification.getVerificationOrderByCode(vCode));
}
/**
* 一键改价
*
* @author stivepeim
* @since 2020-09-01
*/
@ApiOperation(value = "一键改价")
@RequestMapping(value = "/editPrice", method = RequestMethod.POST)
public CommonResult<Object> editOrderPrice(@RequestBody @Validated StoreOrderEditPriceRequest request) {
return CommonResult.success(storeOrderService.editPrice(request));
}
/**
* 订单统计详情
*
* @author stivepeim
* @since 2020-09-01
*/
@PreAuthorize("hasAuthority('admin:order:time')")
@ApiOperation(value = "订单统计详情")
@RequestMapping(value = "/time", method = RequestMethod.GET)
@ApiImplicitParams({
@@ -247,11 +253,13 @@ public class StoreOrderController {
/**
* 获取面单默认配置信息
*/
@PreAuthorize("hasAuthority('admin:order:sheet:info')")
@ApiOperation(value = "获取面单默认配置信息")
@RequestMapping(value = "/sheet/info", method = RequestMethod.GET)
public CommonResult<ExpressSheetVo> getDeliveryInfo() {
return CommonResult.success(storeOrderService.getDeliveryInfo());
}
}

View File

@@ -0,0 +1,58 @@
package com.zbkj.admin.controller;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.order.StoreOrderStatus;
import com.zbkj.common.request.StoreOrderStatusSearchRequest;
import com.zbkj.service.service.StoreOrderStatusService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* 订单操作记录表 前端控制器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin/store/order/status")
@Api(tags = "订单 -- 操作记录") //配合swagger使用
public class StoreOrderStatusController {
@Autowired
private StoreOrderStatusService storeOrderStatusService;
/**
* 分页显示订单操作记录表
* @param request 搜索条件
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:order:status:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreOrderStatus>> getList(@Validated StoreOrderStatusSearchRequest request,
@Validated PageParamRequest pageParamRequest){
CommonPage<StoreOrderStatus> storeOrderStatusCommonPage = CommonPage.restPage(storeOrderStatusService.getList(request, pageParamRequest));
return CommonResult.success(storeOrderStatusCommonPage);
}
}

View File

@@ -1,17 +1,17 @@
package com.zbkj.crmeb.store.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.store.model.StoreProduct;
import com.zbkj.crmeb.store.request.StoreCopyProductRequest;
import com.zbkj.crmeb.store.request.StoreProductRequest;
import com.zbkj.crmeb.store.request.StoreProductSearchRequest;
import com.zbkj.crmeb.store.request.StoreProductStockRequest;
import com.zbkj.crmeb.store.response.StoreProductResponse;
import com.zbkj.crmeb.store.response.StoreProductTabsHeader;
import com.zbkj.crmeb.store.service.StoreCartService;
import com.zbkj.crmeb.store.service.StoreProductService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.StoreCopyProductRequest;
import com.zbkj.common.request.StoreProductAddRequest;
import com.zbkj.common.request.StoreProductRequest;
import com.zbkj.common.request.StoreProductSearchRequest;
import com.zbkj.common.response.StoreProductInfoResponse;
import com.zbkj.common.response.StoreProductResponse;
import com.zbkj.common.response.StoreProductTabsHeader;
import com.zbkj.service.service.StoreCartService;
import com.zbkj.service.service.StoreProductService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -19,6 +19,7 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.json.JSONException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -56,29 +57,26 @@ public class StoreProductController {
* 分页显示商品表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreProductResponse>> getList(
@Validated StoreProductSearchRequest request,
@Validated PageParamRequest pageParamRequest){
return CommonResult.success(CommonPage.restPage(storeProductService.getList(request, pageParamRequest)));
public CommonResult<CommonPage<StoreProductResponse>> getList(@Validated StoreProductSearchRequest request,
@Validated PageParamRequest pageParamRequest) {
return CommonResult.success(CommonPage.restPage(storeProductService.getAdminList(request, pageParamRequest)));
}
/**
* 新增商品
* @param storeProductRequest 新增参数
* @author Mr.Zhang
* @since 2020-05-27
* 新增商品
* @param request 新增参数
*/
@ApiOperation(value = "新增")
@PreAuthorize("hasAuthority('admin:product:save')")
@ApiOperation(value = "新增商品")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated StoreProductRequest storeProductRequest){
if(storeProductService.save(storeProductRequest)){
public CommonResult<String> save(@RequestBody @Validated StoreProductAddRequest request) {
if (storeProductService.save(request)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -86,20 +84,19 @@ public class StoreProductController {
/**
* 删除商品表
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete/{id}", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestBody @PathVariable Integer id, @RequestParam(value = "type", required = false, defaultValue = "recycle")String type){
if(storeProductService.deleteProduct(id, type)){
public CommonResult<String> delete(@RequestBody @PathVariable Integer id, @RequestParam(value = "type", required = false, defaultValue = "recycle")String type) {
if (storeProductService.deleteProduct(id, type)) {
if (type.equals("recycle")) {
storeCartService.productStatusNotEnable(id);
} else {
storeCartService.productDelete(id);
}
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -107,55 +104,51 @@ public class StoreProductController {
/**
* 恢复已删除商品表
* @param id Integer
* @author Stivepeim
* @since 2020-08-28
*/
@PreAuthorize("hasAuthority('admin:product:restore')")
@ApiOperation(value = "恢复商品")
@RequestMapping(value = "/restore/{id}", method = RequestMethod.GET)
public CommonResult<String> restore(@RequestBody @PathVariable Integer id){
if(storeProductService.reStoreProduct(id)){
public CommonResult<String> restore(@RequestBody @PathVariable Integer id) {
if (storeProductService.reStoreProduct(id)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
/**
* 修改商品表
* @param storeProductRequest 修改参数
* @author Mr.Zhang
* @since 2020-05-27
* 商品修改
* @param storeProductRequest 商品参数
*/
@ApiOperation(value = "修改")
@PreAuthorize("hasAuthority('admin:product:update')")
@ApiOperation(value = "商品修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestBody @Validated StoreProductRequest storeProductRequest){
if(storeProductService.update(storeProductRequest)){
public CommonResult<String> update(@RequestBody @Validated StoreProductAddRequest storeProductRequest) {
if (storeProductService.update(storeProductRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
/**
* 查询商品表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-27
* 商品详情
* @param id 商品id
*/
@ApiOperation(value = "详情")
@PreAuthorize("hasAuthority('admin:product:info')")
@ApiOperation(value = "商品详情")
@RequestMapping(value = "/info/{id}", method = RequestMethod.GET)
public CommonResult<StoreProductResponse> info(@PathVariable Integer id){
StoreProductResponse storeProductResponse = storeProductService.getByProductId(id);
return CommonResult.success(storeProductResponse);
public CommonResult<StoreProductInfoResponse> info(@PathVariable Integer id) {
return CommonResult.success(storeProductService.getInfo(id));
}
/**
* 商品tabs表头数据
* @return
*/
@PreAuthorize("hasAuthority('admin:product:tabs:headers')")
@ApiOperation(value = "商品表头数量")
@RequestMapping(value = "/tabs/headers", method = RequestMethod.GET)
public CommonResult<List<StoreProductTabsHeader>> getTabsHeader(){
public CommonResult<List<StoreProductTabsHeader>> getTabsHeader() {
return CommonResult.success(storeProductService.getTabsHeader());
}
@@ -163,12 +156,13 @@ public class StoreProductController {
/**
* 上架
*/
@PreAuthorize("hasAuthority('admin:product:up')")
@ApiOperation(value = "上架")
@RequestMapping(value = "/putOnShell/{id}", method = RequestMethod.GET)
public CommonResult<String> putOn(@PathVariable Integer id){
if(storeProductService.putOnShelf(id)){
public CommonResult<String> putOn(@PathVariable Integer id) {
if (storeProductService.putOnShelf(id)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -176,54 +170,18 @@ public class StoreProductController {
/**
* 下架
*/
@PreAuthorize("hasAuthority('admin:product:down')")
@ApiOperation(value = "下架")
@RequestMapping(value = "/offShell/{id}", method = RequestMethod.GET)
public CommonResult<String> offShell(@PathVariable Integer id){
if(storeProductService.offShelf(id)){
public CommonResult<String> offShell(@PathVariable Integer id) {
if (storeProductService.offShelf(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
/**
* 虚拟销量
* @param id integer id
* @author Mr.Zhang
* @since 2020-05-06
*/
@ApiOperation(value = "虚拟销量")
@RequestMapping(value = "/ficti/{id}/{num}", method = RequestMethod.GET)
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "id", dataType = "int", required = true),
@ApiImplicitParam(name = "num", value = "数值", dataType = "int", required = true),
})
public CommonResult<String> sale(@PathVariable Integer id, @PathVariable Integer num){
StoreProduct storeProduct = storeProductService.getById(id);
storeProduct.setFicti(num);
if(storeProductService.updateById(storeProduct)){
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
/**
* 库存变动
* @param request StoreProductStockRequest 参数
* @author Mr.Zhang
* @since 2020-05-19
*/
@ApiOperation(value = "库存变动")
@RequestMapping(value = "/stock", method = RequestMethod.GET)
public CommonResult<String> stock(@Validated StoreProductStockRequest request){
if(storeProductService.stockAddRedis(request)){
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@PreAuthorize("hasAuthority('admin:product:import:product')")
@ApiOperation(value = "导入99Api商品")
@RequestMapping(value = "/importProduct", method = RequestMethod.POST)
@ApiImplicitParams({
@@ -240,12 +198,14 @@ public class StoreProductController {
/**
* 获取复制商品配置
*/
@PreAuthorize("hasAuthority('admin:product:copy:config')")
@ApiOperation(value = "获取复制商品配置")
@RequestMapping(value = "/copy/config", method = RequestMethod.POST)
public CommonResult<Map<String, Object>> copyConfig() {
return CommonResult.success(storeProductService.copyConfig());
}
@PreAuthorize("hasAuthority('admin:product:copy:product')")
@ApiOperation(value = "复制平台商品")
@RequestMapping(value = "/copy/product", method = RequestMethod.POST)
public CommonResult<Map<String, Object>> copyProduct(@RequestBody @Valid StoreCopyProductRequest request) {

View File

@@ -1,29 +1,22 @@
package com.zbkj.crmeb.store.controller;
package com.zbkj.admin.controller;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.utils.CrmebUtil;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.model.StoreProductReply;
import com.zbkj.crmeb.store.request.StoreProductReplyAddRequest;
import com.zbkj.crmeb.store.request.StoreProductReplyCommentRequest;
import com.zbkj.crmeb.store.request.StoreProductReplyRequest;
import com.zbkj.crmeb.store.request.StoreProductReplySearchRequest;
import com.zbkj.crmeb.store.response.StoreProductReplyResponse;
import com.zbkj.crmeb.store.service.StoreProductReplyService;
import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.product.StoreProductReply;
import com.zbkj.common.request.StoreProductReplyAddRequest;
import com.zbkj.common.request.StoreProductReplyCommentRequest;
import com.zbkj.common.request.StoreProductReplySearchRequest;
import com.zbkj.common.response.StoreProductReplyResponse;
import com.zbkj.service.service.StoreProductReplyService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 评论表 前端控制器
@@ -50,14 +43,12 @@ public class StoreProductReplyController {
* 分页显示评论表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:reply:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreProductReplyResponse>> getList(
@Validated StoreProductReplySearchRequest request,
@Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<StoreProductReplyResponse>> getList(@Validated StoreProductReplySearchRequest request,
@Validated PageParamRequest pageParamRequest) {
CommonPage<StoreProductReplyResponse> storeProductReplyCommonPage =
CommonPage.restPage(storeProductReplyService.getList(request, pageParamRequest));
return CommonResult.success(storeProductReplyCommonPage);
@@ -66,16 +57,14 @@ public class StoreProductReplyController {
/**
* 新增评论表
* @param request 新增参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:reply:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(
@RequestBody @Validated StoreProductReplyAddRequest request){
if(storeProductReplyService.virtualCreate(request)){
public CommonResult<String> save(@RequestBody @Validated StoreProductReplyAddRequest request) {
if (storeProductReplyService.virtualCreate(request)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -83,38 +72,14 @@ public class StoreProductReplyController {
/**
* 删除评论表
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:reply:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete/{id}", method = RequestMethod.GET)
public CommonResult<String> delete(@PathVariable Integer id){
LambdaUpdateWrapper<StoreProductReply> lmdUp = new LambdaUpdateWrapper<>();
lmdUp.set(StoreProductReply::getIsDel, 1);
lmdUp.eq(StoreProductReply::getId, id);
if(storeProductReplyService.update(lmdUp)){
public CommonResult<String> delete(@PathVariable Integer id) {
if (storeProductReplyService.delete(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
/**
* 修改评论表
* @param storeProductReplyRequest 修改参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(
@RequestBody @Validated StoreProductReplyRequest storeProductReplyRequest){
StoreProductReply storeProductReply = new StoreProductReply();
BeanUtils.copyProperties(storeProductReplyRequest, storeProductReply);
storeProductReply.setId(storeProductReplyRequest.getId());
if(storeProductReplyService.updateById(storeProductReply)){
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -122,12 +87,11 @@ public class StoreProductReplyController {
/**
* 查询评论表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:reply:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info/{id}", method = RequestMethod.GET)
public CommonResult<StoreProductReply> info(@PathVariable Integer id){
public CommonResult<StoreProductReply> info(@PathVariable Integer id) {
StoreProductReply storeProductReply = storeProductReplyService.getById(id);
return CommonResult.success(storeProductReply);
}
@@ -135,22 +99,15 @@ public class StoreProductReplyController {
/**
* 回复商品评论
* @param request StoreProductReplyCommentRequest 回复参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:reply:comment')")
@ApiOperation(value = "回复")
@RequestMapping(value = "/comment", method = RequestMethod.POST)
public CommonResult<String> comment(@RequestBody StoreProductReplyCommentRequest request){
List<Integer> ids = CrmebUtil.stringToArray(request.getIds());
for (Integer id : ids) {
LambdaUpdateWrapper<StoreProductReply> lup = new LambdaUpdateWrapper<>();
lup.eq(StoreProductReply::getId, id);
lup.set(StoreProductReply::getMerchantReplyContent, request.getMerchantReplyContent());
lup.set(StoreProductReply::getMerchantReplyTime, DateUtil.getNowTime());
lup.set(StoreProductReply::getIsReply, true);
storeProductReplyService.update(lup);
public CommonResult<String> comment(@RequestBody StoreProductReplyCommentRequest request) {
if (storeProductReplyService.comment(request)) {
return CommonResult.success();
}
return CommonResult.success();
return CommonResult.failed();
}
}

View File

@@ -1,19 +1,19 @@
package com.zbkj.crmeb.store.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.utils.CrmebUtil;
import com.zbkj.crmeb.store.model.StoreProductRule;
import com.zbkj.crmeb.store.request.StoreProductRuleRequest;
import com.zbkj.crmeb.store.request.StoreProductRuleSearchRequest;
import com.zbkj.crmeb.store.service.StoreProductRuleService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.utils.CrmebUtil;
import com.zbkj.common.model.product.StoreProductRule;
import com.zbkj.common.request.StoreProductRuleRequest;
import com.zbkj.common.request.StoreProductRuleSearchRequest;
import com.zbkj.service.service.StoreProductRuleService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
@@ -42,13 +42,12 @@ public class StoreProductRuleController {
* 分页显示商品规则值(规格)
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:rule:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreProductRule>> getList(
@Validated StoreProductRuleSearchRequest request, @Validated PageParamRequest pageParamRequest){
@Validated StoreProductRuleSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<StoreProductRule> storeProductRuleCommonPage =
CommonPage.restPage(storeProductRuleService.getList(request, pageParamRequest));
return CommonResult.success(storeProductRuleCommonPage);
@@ -57,15 +56,14 @@ public class StoreProductRuleController {
/**
* 新增商品规则值(规格)
* @param storeProductRuleRequest 新增参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:rule:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated StoreProductRuleRequest storeProductRuleRequest){
if(storeProductRuleService.save(storeProductRuleRequest)){
public CommonResult<String> save(@RequestBody @Validated StoreProductRuleRequest storeProductRuleRequest) {
if (storeProductRuleService.save(storeProductRuleRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -73,15 +71,14 @@ public class StoreProductRuleController {
/**
* 删除商品规则值(规格)
* @param ids Integer
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:rule:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete/{ids}", method = RequestMethod.GET)
public CommonResult<String> delete(@PathVariable String ids){
if(storeProductRuleService.removeByIds(CrmebUtil.stringToArray(ids))){
public CommonResult<String> delete(@PathVariable String ids) {
if (storeProductRuleService.removeByIds(CrmebUtil.stringToArray(ids))) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -89,19 +86,14 @@ public class StoreProductRuleController {
/**
* 修改商品规则值(规格)
* @param storeProductRuleRequest 修改参数
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:rule:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestBody @Validated StoreProductRuleRequest storeProductRuleRequest){
StoreProductRule storeProductRule = new StoreProductRule();
BeanUtils.copyProperties(storeProductRuleRequest, storeProductRule);
storeProductRule.setId(storeProductRuleRequest.getId());
if(storeProductRuleService.updateById(storeProductRule)){
public CommonResult<String> update(@RequestBody @Validated StoreProductRuleRequest storeProductRuleRequest) {
if (storeProductRuleService.updateRule(storeProductRuleRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -109,12 +101,11 @@ public class StoreProductRuleController {
/**
* 查询商品规则值(规格)表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-27
*/
@PreAuthorize("hasAuthority('admin:product:rule:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info/{id}", method = RequestMethod.GET)
public CommonResult<StoreProductRule> info(@PathVariable Integer id){
public CommonResult<StoreProductRule> info(@PathVariable Integer id) {
StoreProductRule storeProductRule = storeProductRuleService.getById(id);
return CommonResult.success(storeProductRule);
}

View File

@@ -1,20 +1,18 @@
package com.zbkj.crmeb.seckill.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.exception.CrmebException;
import com.zbkj.crmeb.seckill.model.StoreSeckill;
import com.zbkj.crmeb.seckill.request.StoreSeckillRequest;
import com.zbkj.crmeb.seckill.request.StoreSeckillSearchRequest;
import com.zbkj.crmeb.seckill.response.StoreSeckillResponse;
import com.zbkj.crmeb.seckill.service.StoreSeckillService;
import com.zbkj.crmeb.store.response.StoreProductResponse;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.StoreSeckillAddRequest;
import com.zbkj.common.request.StoreSeckillSearchRequest;
import com.zbkj.common.response.StoreSeckillResponse;
import com.zbkj.common.response.StoreProductInfoResponse;
import com.zbkj.service.service.StoreSeckillService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -35,7 +33,6 @@ import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("api/admin/store/seckill")
@Api(tags = "商品 -- 秒杀 -- 商品") //配合swagger使用
public class StoreSeckillController {
@Autowired
@@ -45,12 +42,11 @@ public class StoreSeckillController {
* 分页显示商品秒杀产品表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Stivepeim
* @since 2020-09-17
*/
@PreAuthorize("hasAuthority('admin:seckill:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreSeckillResponse>> getList(@Validated StoreSeckillSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<StoreSeckillResponse>> getList(@Validated StoreSeckillSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<StoreSeckillResponse> storeSeckillCommonPage =
CommonPage.restPage(storeSeckillService.getList(request, pageParamRequest));
return CommonResult.success(storeSeckillCommonPage);
@@ -59,15 +55,14 @@ public class StoreSeckillController {
/**
* 新增商品秒杀产品表
* @param storeSeckillRequest 新增参数
* @author Stivepeim
* @since 2020-09-17
*/
@PreAuthorize("hasAuthority('admin:seckill:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated StoreSeckillRequest storeSeckillRequest){
if(storeSeckillService.saveSeckill(storeSeckillRequest)){
public CommonResult<String> save(@RequestBody @Validated StoreSeckillAddRequest storeSeckillRequest) {
if (storeSeckillService.saveSeckill(storeSeckillRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -75,44 +70,40 @@ public class StoreSeckillController {
/**
* 删除商品秒杀产品表
* @param id Integer
* @author Stivepeim
* @since 2020-09-17
*/
@PreAuthorize("hasAuthority('admin:seckill:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(storeSeckillService.deleteById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (storeSeckillService.deleteById(id)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
/**
* 修改商品秒杀产品表
* @param id integer id
* @param storeSeckillRequest 修改参数
* @author Stivepeim
* @since 2020-09-17
*/
@PreAuthorize("hasAuthority('admin:seckill:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated StoreSeckillRequest storeSeckillRequest){
storeSeckillRequest.setId(id);
if(storeSeckillService.updateSeckill(storeSeckillRequest)){
public CommonResult<String> update(@RequestBody @Validated StoreSeckillAddRequest storeSeckillRequest) {
if (storeSeckillService.updateSeckill(storeSeckillRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@PreAuthorize("hasAuthority('admin:seckill:update:status')")
@ApiOperation(value = "修改秒杀商品状态")
@RequestMapping(value = "/update/status", method = RequestMethod.POST)
public CommonResult<String> updateStatus(@RequestParam @Validated Integer id, @RequestParam @Validated boolean status){
// if(null == id || null ==status || status < 0 || status >= 2) throw new CrmebException("参数不合法");
if(storeSeckillService.updateSecKillStatus(id,status)){
public CommonResult<String> updateStatus(@RequestParam @Validated Integer id, @RequestParam @Validated boolean status) {
if (storeSeckillService.updateSecKillStatus(id,status)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -120,13 +111,12 @@ public class StoreSeckillController {
/**
* 查询商品秒杀产品表信息
* @param id Integer
* @author Stivepeim
* @since 2020-09-17
*/
@PreAuthorize("hasAuthority('admin:seckill:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<StoreProductResponse> info(@RequestParam(value = "id") Integer id){
StoreProductResponse storeSeckill = storeSeckillService.getDetailAdmin(id);
public CommonResult<StoreProductInfoResponse> info(@RequestParam(value = "id") Integer id) {
StoreProductInfoResponse storeSeckill = storeSeckillService.getDetailAdmin(id);
return CommonResult.success(storeSeckill);
}
}

View File

@@ -1,28 +1,22 @@
package com.zbkj.crmeb.seckill.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.exception.CrmebException;
import com.zbkj.crmeb.seckill.model.StoreSeckillManger;
import com.zbkj.crmeb.seckill.request.StoreSeckillMangerRequest;
import com.zbkj.crmeb.seckill.request.StoreSeckillMangerSearchRequest;
import com.zbkj.crmeb.seckill.response.StoreSeckillManagerResponse;
import com.zbkj.crmeb.seckill.service.StoreSeckillMangerService;
import com.zbkj.crmeb.system.service.SystemAttachmentService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.StoreSeckillMangerRequest;
import com.zbkj.common.request.StoreSeckillMangerSearchRequest;
import com.zbkj.common.response.StoreSeckillManagerResponse;
import com.zbkj.service.service.StoreSeckillMangerService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 秒杀配置 前端控制器
@@ -40,57 +34,35 @@ import java.util.List;
@RestController
@RequestMapping("api/admin/store/seckill/manger")
@Api(tags = "商品 -- 秒杀 -- 配置") //配合swagger使用
public class StoreSeckillMangerController {
@Autowired
private StoreSeckillMangerService storeSeckillMangerService;
@Autowired
private SystemAttachmentService systemAttachmentService;
/**
* 分页显示
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Stivepeim
* @since 2020-09-18
*/
@PreAuthorize("hasAuthority('admin:seckill:manger:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<StoreSeckillManagerResponse>> getList(
@Validated StoreSeckillMangerSearchRequest request, @Validated PageParamRequest pageParamRequest){
StoreSeckillManger storeSeckillManger = new StoreSeckillManger();
BeanUtils.copyProperties(request, storeSeckillManger);
// 对request中的time做分割后赋值给mode中的start和end属性
storeSeckillMangerService.setTimeRangeFromRequest(request, storeSeckillManger);
CommonPage<StoreSeckillManagerResponse> storeSeckillMangerCommonPage =
CommonPage.restPage(storeSeckillMangerService.getList(storeSeckillManger, pageParamRequest));
return CommonResult.success(storeSeckillMangerCommonPage);
@Validated StoreSeckillMangerSearchRequest request, @Validated PageParamRequest pageParamRequest) {
return CommonResult.success(CommonPage.restPage(storeSeckillMangerService.getList(request, pageParamRequest)));
}
/**
* 新增
* @param storeSeckillMangerRequest 新增参数
* @author Stivepeim
* @since 2020-09-18
*/
@PreAuthorize("hasAuthority('admin:seckill:manger:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated StoreSeckillMangerRequest storeSeckillMangerRequest){
StoreSeckillManger storeSeckillManger = new StoreSeckillManger();
BeanUtils.copyProperties(storeSeckillMangerRequest, storeSeckillManger);
// 对request中的time做分割后赋值给mode中的start和end属性
storeSeckillMangerService.setTimeRangeFromRequest(storeSeckillMangerRequest, storeSeckillManger);
List<StoreSeckillManger> storeSeckillMangers = storeSeckillMangerService.checkTimeRangeUnique(storeSeckillManger);
if(storeSeckillMangers.size() > 0){
throw new CrmebException("当前时间段的秒杀配置已存在");
}
storeSeckillManger.setImg(systemAttachmentService.clearPrefix(storeSeckillManger.getImg()));
storeSeckillManger.setSilderImgs(systemAttachmentService.clearPrefix(storeSeckillManger.getSilderImgs()));
if(storeSeckillMangerService.save(storeSeckillManger)){
public CommonResult<String> save(@RequestBody @Validated StoreSeckillMangerRequest storeSeckillMangerRequest) {
if (storeSeckillMangerService.saveManger(storeSeckillMangerRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -99,15 +71,14 @@ public class StoreSeckillMangerController {
/**
* 删除
* @param id Integer
* @author Stivepeim
* @since 2020-09-18
*/
@PreAuthorize("hasAuthority('admin:seckill:manger:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(storeSeckillMangerService.deleteLogicById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (storeSeckillMangerService.deleteLogicById(id)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -116,26 +87,23 @@ public class StoreSeckillMangerController {
* 修改
* @param id integer id
* @param storeSeckillMangerRequest 修改参数
* @author Stivepeim
* @since 2020-09-18
*/
@PreAuthorize("hasAuthority('admin:seckill:manger:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated StoreSeckillMangerRequest storeSeckillMangerRequest){
return storeSeckillMangerService.update(id,storeSeckillMangerRequest) ? CommonResult.success() : CommonResult.failed();
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated StoreSeckillMangerRequest storeSeckillMangerRequest) {
return storeSeckillMangerService.update(id, storeSeckillMangerRequest) ? CommonResult.success() : CommonResult.failed();
}
/**
* 查询信息
* @param id Integer
* @author Stivepeim
* @since 2020-09-18
*/
@PreAuthorize("hasAuthority('admin:seckill:manger:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<StoreSeckillManagerResponse> info(@RequestParam(value = "id") Integer id){
StoreSeckillManagerResponse storeSeckillManger = storeSeckillMangerService.detail(id);
return CommonResult.success(storeSeckillManger);
public CommonResult<StoreSeckillManagerResponse> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(storeSeckillMangerService.detail(id));
}
/**
@@ -144,13 +112,14 @@ public class StoreSeckillMangerController {
* @param status 待更新配置状态
* @return 更新结果
*/
@PreAuthorize("hasAuthority('admin:seckill:manger:update:status')")
@ApiOperation(value = "秒杀配置状态更新")
@RequestMapping(value = "/update/status/{id}", method = RequestMethod.POST)
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "商品id", dataType = "int", required = true),
@ApiImplicitParam(name = "status", value = "状态", dataType = "boolean", required = true)
})
public CommonResult<Object> updateStatus(@PathVariable(value = "id") int id,boolean status){
public CommonResult<Object> updateStatus(@PathVariable(value = "id") Integer id, Boolean status) {
return CommonResult.success(storeSeckillMangerService.updateStatus(id,status));
}

View File

@@ -1,18 +1,19 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.system.model.SystemAdmin;
import com.zbkj.crmeb.system.request.SystemAdminAddRequest;
import com.zbkj.crmeb.system.request.SystemAdminRequest;
import com.zbkj.crmeb.system.response.SystemAdminResponse;
import com.zbkj.crmeb.system.service.SystemAdminService;
import com.zbkj.common.model.system.SystemAdmin;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.SystemAdminAddRequest;
import com.zbkj.common.request.SystemAdminRequest;
import com.zbkj.common.request.SystemAdminUpdateRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.SystemAdminResponse;
import com.zbkj.service.service.SystemAdminService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -35,7 +36,6 @@ import javax.validation.Valid;
@RestController
@RequestMapping("api/admin/system/admin")
@Api(tags = "后台用户服务")
public class SystemAdminController {
@Autowired
@@ -45,101 +45,79 @@ public class SystemAdminController {
* 分页显示后台管理员表
* @param systemAdminRequest 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:admin:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ResponseBody
public CommonResult<CommonPage<SystemAdminResponse>> getList(@Validated SystemAdminRequest systemAdminRequest, PageParamRequest pageParamRequest){
SystemAdmin systemAdmin = new SystemAdmin();
BeanUtils.copyProperties(systemAdminRequest, systemAdmin);
public CommonResult<CommonPage<SystemAdminResponse>> getList(@Validated SystemAdminRequest systemAdminRequest, PageParamRequest pageParamRequest) {
CommonPage<SystemAdminResponse> systemAdminCommonPage = CommonPage.restPage(systemAdminService.getList(systemAdminRequest, pageParamRequest));
return CommonResult.success(systemAdminCommonPage);
}
/**
* 新增后台管理员
* 新增后台管理员
* @param systemAdminAddRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-13
*/
@ApiOperation(value = "新增")
@PreAuthorize("hasAuthority('admin:system:admin:save')")
@ApiOperation(value = "新增后台管理员")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<SystemAdminResponse> save(@ModelAttribute SystemAdminAddRequest systemAdminAddRequest) throws Exception {
SystemAdmin systemAdmin = new SystemAdmin();
BeanUtils.copyProperties(systemAdminAddRequest, systemAdmin);
SystemAdminResponse systemAdminResponse = systemAdminService.saveAdmin(systemAdminAddRequest);
if(null != systemAdminResponse){
return CommonResult.success(systemAdminResponse,"添加管理员成功");
}else{
return CommonResult.failed("添加管理员失败");
public CommonResult<SystemAdminResponse> save(@RequestBody SystemAdminAddRequest systemAdminAddRequest) {
if (systemAdminService.saveAdmin(systemAdminAddRequest)) {
return CommonResult.success("添加管理员成功");
}
return CommonResult.failed("添加管理员失败");
}
/**
* 删除后台管理员表
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:admin:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(systemAdminService.removeById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (systemAdminService.removeById(id)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
/**
* 修改后台管理员表
* @param id integer id
* @param systemAdminRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:admin:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id,
@ModelAttribute SystemAdminRequest systemAdminRequest) throws Exception{
SystemAdmin systemAdmin = new SystemAdmin();
BeanUtils.copyProperties(systemAdminRequest, systemAdmin);
systemAdmin.setId(id);
// if(systemAdminService.updateById(systemAdmin)){
// if(systemAdminService.lambdaUpdate().eq(SystemAdmin::getId, id).update(systemAdmin)){
SystemAdminResponse systemAdminResponse = systemAdminService.updateAdmin(systemAdminRequest);
if(null != systemAdminResponse){
public CommonResult<String> update(@RequestBody SystemAdminUpdateRequest systemAdminRequest) {
if (systemAdminService.updateAdmin(systemAdminRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
/**
* 查询后台管理员表信息
* 后台管理员详情
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-13
*/
@ApiOperation(value = "详情")
@PreAuthorize("hasAuthority('admin:system:admin:info')")
@ApiOperation(value = "后台管理员详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<SystemAdmin> info(@RequestParam(value = "id") @Valid Integer id){
SystemAdmin systemAdmin = systemAdminService.getById(id);
return CommonResult.success(systemAdmin);
public CommonResult<SystemAdmin> info(@RequestParam(value = "id") @Valid Integer id) {
return CommonResult.success(systemAdminService.getDetail(id));
}
/**
* 修改后台管理员状态
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:admin:update:status')")
@ApiOperation(value = "修改后台管理员状态")
@RequestMapping(value = "/updateStatus", method = RequestMethod.GET)
public CommonResult<Object> updateStatus(@RequestParam(value = "id") @Valid Integer id, @RequestParam(value = "status") @Valid Boolean status){
public CommonResult<Object> updateStatus(@RequestParam(value = "id") @Valid Integer id, @RequestParam(value = "status") @Valid Boolean status) {
if (systemAdminService.updateStatus(id, status)) {
return CommonResult.success("修改成功");
}
@@ -149,9 +127,10 @@ public class SystemAdminController {
/**
* 修改后台管理员是否接收状态
*/
@PreAuthorize("hasAuthority('admin:system:admin:update:sms')")
@ApiOperation(value = "修改后台管理员是否接收状态")
@RequestMapping(value = "/update/isSms", method = RequestMethod.GET)
public CommonResult<Object> updateIsSms(@RequestParam(value = "id") @Valid Integer id){
public CommonResult<Object> updateIsSms(@RequestParam(value = "id") @Valid Integer id) {
if (systemAdminService.updateIsSms(id)) {
return CommonResult.success("修改成功");
}

View File

@@ -1,23 +1,21 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.utils.CrmebUtil;
import com.zbkj.crmeb.system.model.SystemAttachment;
import com.zbkj.crmeb.system.request.SystemAttachmentMoveRequest;
import com.zbkj.crmeb.system.request.SystemAttachmentRequest;
import com.zbkj.crmeb.system.service.SystemAttachmentService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.utils.CrmebUtil;
import com.zbkj.common.model.system.SystemAttachment;
import com.zbkj.common.request.SystemAttachmentMoveRequest;
import com.zbkj.common.request.SystemAttachmentRequest;
import com.zbkj.service.service.SystemAttachmentService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
* 附件管理表 前端控制器
* +----------------------------------------------------------------------
@@ -34,7 +32,6 @@ import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("api/admin/system/attachment")
@Api(tags = "附件管理") //配合swagger使用
public class SystemAttachmentController {
@Autowired
@@ -43,106 +40,90 @@ public class SystemAttachmentController {
/**
* 分页显示附件管理表
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-06-02
*/
@PreAuthorize("hasAuthority('admin:system:attachment:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<SystemAttachment>> getList(
@RequestParam @Validated Integer pid,
@Validated PageParamRequest pageParamRequest){
@RequestParam(
value = "attType",
defaultValue = "png,jpeg,jpg,audio/mpeg,text/plain,video/mp4,gif",
required = false) String attType,
@Validated PageParamRequest pageParamRequest) {
CommonPage<SystemAttachment> systemAttachmentCommonPage =
CommonPage.restPage(systemAttachmentService.getList(pid, pageParamRequest));
CommonPage.restPage(systemAttachmentService.getList(pid, attType, pageParamRequest));
return CommonResult.success(systemAttachmentCommonPage);
}
/**
* 新增附件管理表
* 新增附件管理表 TODO:未使用的话删除此接口
* @param systemAttachmentRequest 新增参数
* @author Mr.Zhang
* @since 2020-06-02
*/
@PreAuthorize("hasAuthority('admin:system:attachment:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated SystemAttachmentRequest systemAttachmentRequest){
SystemAttachment systemAttachment = new SystemAttachment();
BeanUtils.copyProperties(systemAttachmentRequest, systemAttachment);
if(systemAttachmentService.save(systemAttachment)){
public CommonResult<String> save(@RequestBody @Validated SystemAttachmentRequest systemAttachmentRequest) {
if (systemAttachmentService.add(systemAttachmentRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除附件管理表
* @param ids String
* @author Mr.Zhang
* @since 2020-06-02
*/
@PreAuthorize("hasAuthority('admin:system:attachment:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete/{ids}", method = RequestMethod.GET)
public CommonResult<String> delete(@PathVariable String ids){
if(systemAttachmentService.removeByIds(CrmebUtil.stringToArray(ids))){
public CommonResult<String> delete(@PathVariable String ids) {
if (systemAttachmentService.removeByIds(CrmebUtil.stringToArray(ids))) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改附件管理表
* @param id integer id
* @param systemAttachmentRequest 修改参数
* @author Mr.Zhang
* @since 2020-06-02
*/
@PreAuthorize("hasAuthority('admin:system:attachment:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id,
@RequestBody @Validated SystemAttachmentRequest systemAttachmentRequest){
SystemAttachment systemAttachment = new SystemAttachment();
BeanUtils.copyProperties(systemAttachmentRequest, systemAttachment);
systemAttachment.setAttId(id);
if(systemAttachmentService.updateById(systemAttachment)){
@RequestBody @Validated SystemAttachmentRequest systemAttachmentRequest) {
systemAttachmentRequest.setAttId(id);
if (systemAttachmentService.edit(systemAttachmentRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询附件管理表信息
* @param move SystemAttachmentMoveRequest
* @author Mr.Zhang
* @since 2020-06-02
*/
@PreAuthorize("hasAuthority('admin:system:attachment:move')")
@ApiOperation(value = "更改图片目录")
@RequestMapping(value = "/move", method = RequestMethod.POST)
public CommonResult<String> updateAttrId(@RequestBody @Validated SystemAttachmentMoveRequest move){
LambdaUpdateWrapper<SystemAttachment> lup = new LambdaUpdateWrapper<>();
lup.in(SystemAttachment::getAttId, CrmebUtil.stringToArray(move.getAttrId()));
lup.set(SystemAttachment::getPid, move.getPid());
if(systemAttachmentService.update(lup)){
public CommonResult<String> updateAttrId(@RequestBody @Validated SystemAttachmentMoveRequest move) {
if (systemAttachmentService.updateAttrId(move)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询附件管理表信息
* 附件详情
* @param id Integer
* @author Mr.Zhang
* @since 2020-06-02
*/
@ApiOperation(value = "详情")
@PreAuthorize("hasAuthority('admin:system:attachment:info')")
@ApiOperation(value = "附件详情")
@RequestMapping(value = "/info/{id}", method = RequestMethod.GET)
public CommonResult<SystemAttachment> info(@PathVariable Integer id){
SystemAttachment systemAttachment = systemAttachmentService.getById(id);
return CommonResult.success(systemAttachment);
public CommonResult<SystemAttachment> info(@PathVariable Integer id) {
return CommonResult.success(systemAttachmentService.getById(id));
}
}

View File

@@ -1,20 +1,24 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.system.model.SystemCity;
import com.zbkj.crmeb.system.request.SystemCityRequest;
import com.zbkj.crmeb.system.request.SystemCitySearchRequest;
import com.zbkj.crmeb.system.service.SystemCityService;
import com.zbkj.common.model.system.SystemCity;
import com.zbkj.common.request.SystemCityRequest;
import com.zbkj.common.request.SystemCitySearchRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.vo.SystemCityTreeVo;
import com.zbkj.service.service.SystemCityService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 城市表 前端控制器
@@ -38,107 +42,64 @@ public class SystemCityController {
private SystemCityService systemCityService;
/**
* 分页显示城市表
* 分页城市
* @param request 搜索条件
* @author Mr.Zhang
* @since 2020-04-17
*/
@ApiOperation(value = "分页列表")
@PreAuthorize("hasAuthority('admin:system:city:list')")
@ApiOperation(value = "分页城市列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<Object> getList(@Validated SystemCitySearchRequest request){
public CommonResult<Object> getList(@Validated SystemCitySearchRequest request) {
return CommonResult.success(systemCityService.getList(request));
}
// /**
// * 新增城市表
// * @param systemCityRequest 新增参数
// * @author Mr.Zhang
// * @since 2020-04-17
// */
// @ApiOperation(value = "新增")
// @RequestMapping(value = "/save", method = RequestMethod.POST)
// public CommonResult<String> save(@Validated SystemCityRequest systemCityRequest){
// SystemCity systemCity = new SystemCity();
// BeanUtils.copyProperties(systemCityRequest, systemCity);
//
// if(systemCityService.save(systemCity)){
// return CommonResult.success();
// }else{
// return CommonResult.failed();
// }
// }
//
// /**
// * 删除城市表
// * @param id Integer
// * @author Mr.Zhang
// * @since 2020-04-17
// */
// @ApiOperation(value = "删除")
// @RequestMapping(value = "/delete", method = RequestMethod.GET)
// public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
// if(systemCityService.removeById(id)){
// return CommonResult.success();
// }else{
// return CommonResult.failed();
// }
// }
/**
* 修改城市
* @param id integer id
* @param id 城市id
* @param request 修改参数
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:system:city:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @Validated SystemCityRequest request){
if(systemCityService.update(id, request)){
public CommonResult<String> update(@RequestParam Integer id, @Validated SystemCityRequest request) {
if (systemCityService.update(id, request)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改状态
* @param id integer id
* @param status boolean 状态
* @author Mr.Zhang
* @since 2020-04-17
* @param id 城市id
* @param status 状态
*/
@PreAuthorize("hasAuthority('admin:system:city:update:status')")
@ApiOperation(value = "修改状态")
@RequestMapping(value = "/update/status", method = RequestMethod.POST)
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam Boolean status){
if(systemCityService.updateStatus(id, status)){
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam Boolean status) {
if (systemCityService.updateStatus(id, status)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询城市表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-17
* 城市详情
* @param id 城市id
*/
@ApiOperation(value = "详情")
@PreAuthorize("hasAuthority('admin:system:city:info')")
@ApiOperation(value = "城市详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<SystemCity> info(@RequestParam(value = "id") Integer id){
SystemCity systemCity = systemCityService.getById(id);
return CommonResult.success(systemCity);
public CommonResult<SystemCity> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(systemCityService.getById(id));
}
/**
* 获取tree结构的列表
* @author Mr.Zhang
* @since 2020-04-16
*/
@PreAuthorize("hasAuthority('admin:system:city:list:tree')")
@ApiOperation(value = "获取tree结构的列表")
@RequestMapping(value = "/list/tree", method = RequestMethod.GET)
public CommonResult<Object> getListTree(){
public CommonResult<List<SystemCityTreeVo>> getListTree() {
return CommonResult.success(systemCityService.getListTree());
}
}

View File

@@ -1,16 +1,20 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.system.request.SystemFormCheckRequest;
import com.zbkj.crmeb.system.service.SystemConfigService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.model.system.SystemConfig;
import com.zbkj.common.request.SystemConfigAdminRequest;
import com.zbkj.common.request.SystemFormCheckRequest;
import com.zbkj.service.service.SystemConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
/**
@@ -37,12 +41,11 @@ public class SystemConfigController {
/**
* 查询配置表信息
* @param formId Integer
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:config:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<HashMap<String, String>> info(@RequestParam(value = "formId") Integer formId){
public CommonResult<HashMap<String, String>> info(@RequestParam(value = "formId") Integer formId) {
return CommonResult.success(systemConfigService.info(formId));
}
@@ -50,28 +53,25 @@ public class SystemConfigController {
/**
* 整体保存表单数据
* @param systemFormCheckRequest SystemFormCheckRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:config:save:form')")
@ApiOperation(value = "整体保存表单数据")
@RequestMapping(value = "/save/form", method = RequestMethod.POST)
public CommonResult<String> saveFrom(@RequestBody @Validated SystemFormCheckRequest systemFormCheckRequest){
if(systemConfigService.saveForm(systemFormCheckRequest)){
public CommonResult<String> saveFrom(@RequestBody @Validated SystemFormCheckRequest systemFormCheckRequest) {
if (systemConfigService.saveForm(systemFormCheckRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 检测表单name是否存在
* @param name name
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:config:check')")
@ApiOperation(value = "检测表单name是否存在")
@RequestMapping(value = "/check", method = RequestMethod.GET)
public CommonResult<Boolean> check(@RequestParam String name){
public CommonResult<Boolean> check(@RequestParam String name) {
return CommonResult.success(systemConfigService.checkName(name));
}
@@ -79,25 +79,47 @@ public class SystemConfigController {
* 配置表中仅仅存储对应的配置
* @param key 配置表中的配置字段
* @param value 对应的值
* @return
*/
@PreAuthorize("hasAuthority('admin:system:config:saveuniq')")
@ApiOperation(value = "表单配置中仅仅存储")
@RequestMapping(value = "/saveuniq", method = RequestMethod.POST)
public CommonResult<Boolean> justSaveUniq(@RequestParam String key, @RequestParam String value){
return CommonResult.success(systemConfigService.updateOrSaveValueByName(key,value));
public CommonResult<Boolean> justSaveUniq(@RequestParam String key, @RequestParam String value) {
return CommonResult.success(systemConfigService.updateOrSaveValueByName(key, value));
}
/**
* 根据key获取表单配置数据
* @param key 配置表的的字段
* @return
*/
@PreAuthorize("hasAuthority('admin:system:config:getuniq')")
@ApiOperation(value = "表单配置根据key获取")
@RequestMapping(value = "/getuniq", method = RequestMethod.GET)
public CommonResult<Object> justGetUniq(@RequestParam String key){
public CommonResult<Object> justGetUniq(@RequestParam String key) {
return CommonResult.success(systemConfigService.getValueByKey(key),"success");
}
/**
* 根据key获取配置
*/
@PreAuthorize("hasAuthority('admin:system:config:get')")
@ApiOperation(value = "根据key获取配置")
@RequestMapping(value = "/get", method = RequestMethod.GET)
public CommonResult<List<SystemConfig>> getByKey(@RequestParam String key) {
return CommonResult.success(systemConfigService.getListByKey(key));
}
/**
* 更新配置信息
*/
@PreAuthorize("hasAuthority('admin:system:config:update')")
@ApiOperation(value = "更新配置信息")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<List<SystemConfig>> getByKey(@RequestBody @Validated List<SystemConfigAdminRequest> requestList) {
if (systemConfigService.updateByList(requestList)) {
return CommonResult.success();
}
return CommonResult.failed();
}
}

View File

@@ -1,22 +1,19 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.alibaba.fastjson.JSONObject;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.exception.CrmebException;
import com.zbkj.crmeb.system.request.SystemFormTempRequest;
import com.zbkj.crmeb.system.request.SystemFormTempSearchRequest;
import com.zbkj.crmeb.system.vo.SystemConfigFormVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.system.SystemFormTemp;
import com.zbkj.common.request.SystemFormTempRequest;
import com.zbkj.common.request.SystemFormTempSearchRequest;
import com.zbkj.service.service.SystemFormTempService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.system.service.SystemFormTempService;
import com.zbkj.crmeb.system.model.SystemFormTemp;
/**
@@ -44,12 +41,11 @@ public class SystemFormTempController {
* 分页显示表单模板
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:form:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<SystemFormTemp>> getList(@Validated SystemFormTempSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<SystemFormTemp>> getList(@Validated SystemFormTempSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<SystemFormTemp> systemFormTempCommonPage = CommonPage.restPage(systemFormTempService.getList(request, pageParamRequest));
return CommonResult.success(systemFormTempCommonPage);
}
@@ -57,80 +53,40 @@ public class SystemFormTempController {
/**
* 新增表单模板
* @param systemFormTempRequest 新增参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:form:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated SystemFormTempRequest systemFormTempRequest){
try{
JSONObject.parseObject(systemFormTempRequest.getContent(), SystemConfigFormVo.class);
}catch (Exception e){
throw new CrmebException("模板表单 【" + systemFormTempRequest.getName() + "】 的内容不是正确的JSON格式");
}
SystemFormTemp systemFormTemp = new SystemFormTemp();
BeanUtils.copyProperties(systemFormTempRequest, systemFormTemp);
if(systemFormTempService.save(systemFormTemp)){
public CommonResult<String> save(@RequestBody @Validated SystemFormTempRequest systemFormTempRequest) {
if (systemFormTempService.add(systemFormTempRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
// /**
// * 删除表单模板
// * @param id Integer
// * @author Mr.Zhang
// * @since 2020-05-15
// */
// @ApiOperation(value = "删除")
// @RequestMapping(value = "/delete", method = RequestMethod.GET)
// public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
// if(systemFormTempService.removeById(id)){
// return CommonResult.success();
// }else{
// return CommonResult.failed();
// }
// }
/**
* 修改表单模板
* @param id integer id
* @param systemFormTempRequest 修改参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:form:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated SystemFormTempRequest systemFormTempRequest){
try{
JSONObject.parseObject(systemFormTempRequest.getContent(), SystemConfigFormVo.class);
}catch (Exception e){
throw new CrmebException("模板表单 【" + systemFormTempRequest.getName() + "】 的内容不是正确的JSON格式");
}
SystemFormTemp systemFormTemp = new SystemFormTemp();
BeanUtils.copyProperties(systemFormTempRequest, systemFormTemp);
systemFormTemp.setId(id);
if(systemFormTempService.updateById(systemFormTemp)){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated SystemFormTempRequest systemFormTempRequest) {
if (systemFormTempService.edit(id, systemFormTempRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询表单模板信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:form:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<SystemFormTemp> info(@RequestParam(value = "id") Integer id){
public CommonResult<SystemFormTemp> info(@RequestParam(value = "id") Integer id) {
SystemFormTemp systemFormTemp = systemFormTempService.getById(id);
return CommonResult.success(systemFormTemp);
}

View File

@@ -1,21 +1,19 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.system.request.SystemGroupRequest;
import com.zbkj.crmeb.system.request.SystemGroupSearchRequest;
import com.zbkj.crmeb.user.service.UserService;
import com.zbkj.crmeb.user.service.impl.UserServiceImpl;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.SystemGroupRequest;
import com.zbkj.common.request.SystemGroupSearchRequest;
import com.zbkj.service.service.SystemGroupService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.system.service.SystemGroupService;
import com.zbkj.crmeb.system.model.SystemGroup;
import com.zbkj.common.model.system.SystemGroup;
/**
@@ -39,90 +37,71 @@ public class SystemGroupController {
@Autowired
private SystemGroupService systemGroupService;
@Autowired
private UserService userService;
/**
* 分页显示组合数据表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:group:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<SystemGroup>> getList(@Validated SystemGroupSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<SystemGroup>> getList(@Validated SystemGroupSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<SystemGroup> systemGroupCommonPage = CommonPage.restPage(systemGroupService.getList(request, pageParamRequest));
return CommonResult.success(systemGroupCommonPage);
}
/**
* 新增组合数据
* 新增组合数据
* @param systemGroupRequest 新增参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:group:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@Validated SystemGroupRequest systemGroupRequest){
SystemGroup systemGroup = new SystemGroup();
BeanUtils.copyProperties(systemGroupRequest, systemGroup);
if(systemGroupService.save(systemGroup)){
public CommonResult<String> save(@Validated SystemGroupRequest systemGroupRequest) {
if (systemGroupService.add(systemGroupRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除组合数据表
* @param id Integer
*/
@PreAuthorize("hasAuthority('admin:system:group:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(systemGroupService.removeById(id)){
// 删除用户对应已经存在的分组标签 虽然数据库用的是String类型但逻辑仅仅只存储一个数据这里直接删除对应的用户分组id即可
userService.clearGroupByGroupId(id+"");
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (systemGroupService.delete(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改组合数据表
* @param id integer id
* @param systemGroupRequest 修改参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:group:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @Validated SystemGroupRequest systemGroupRequest){
SystemGroup systemGroup = new SystemGroup();
BeanUtils.copyProperties(systemGroupRequest, systemGroup);
systemGroup.setId(id);
if(systemGroupService.updateById(systemGroup)){
public CommonResult<String> update(@RequestParam Integer id, @Validated SystemGroupRequest systemGroupRequest) {
if (systemGroupService.edit(id, systemGroupRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询组合数据表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:group:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<SystemGroup> info(@RequestParam(value = "id") Integer id){
SystemGroup systemGroup = systemGroupService.getById(id);
return CommonResult.success(systemGroup);
public CommonResult<SystemGroup> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(systemGroupService.getById(id));
}
}

View File

@@ -1,20 +1,19 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.system.request.SystemFormCheckRequest;
import com.zbkj.crmeb.system.request.SystemGroupDataRequest;
import com.zbkj.crmeb.system.request.SystemGroupDataSearchRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.system.SystemGroupData;
import com.zbkj.common.request.SystemGroupDataRequest;
import com.zbkj.common.request.SystemGroupDataSearchRequest;
import com.zbkj.service.service.SystemGroupDataService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.system.service.SystemGroupDataService;
import com.zbkj.crmeb.system.model.SystemGroupData;
/**
@@ -39,77 +38,69 @@ public class SystemGroupDataController {
private SystemGroupDataService systemGroupDataService;
/**
* 分页显示组合数据详情
* 分页组合数据详情
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@ApiOperation(value = "分页列表")
@PreAuthorize("hasAuthority('admin:system:group:data:list')")
@ApiOperation(value = "分页组合数据详情")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<SystemGroupData>> getList(@Validated SystemGroupDataSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<SystemGroupData>> getList(@Validated SystemGroupDataSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<SystemGroupData> systemGroupDataCommonPage = CommonPage.restPage(systemGroupDataService.getList(request, pageParamRequest));
return CommonResult.success(systemGroupDataCommonPage);
}
/**
* 新增组合数据详情
* 新增组合数据详情
* @param systemGroupDataRequest SystemFormCheckRequest 新增参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:group:data:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated SystemGroupDataRequest systemGroupDataRequest){
if(systemGroupDataService.create(systemGroupDataRequest)){
public CommonResult<String> save(@RequestBody @Validated SystemGroupDataRequest systemGroupDataRequest) {
if (systemGroupDataService.create(systemGroupDataRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除组合数据详情表
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:group:data:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(systemGroupDataService.removeById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (systemGroupDataService.removeById(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改组合数据详情表
* @param id integer id
* @param request 修改参数
* @author Mr.Zhang
* @since 2020-05-15
*/
@PreAuthorize("hasAuthority('admin:system:group:data:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated SystemGroupDataRequest request){
if(systemGroupDataService.update(id, request)){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated SystemGroupDataRequest request) {
if (systemGroupDataService.update(id, request)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询组合数据详情信息
* 组合数据详情信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-15
*/
@ApiOperation(value = "详情")
@PreAuthorize("hasAuthority('admin:system:group:data:info')")
@ApiOperation(value = "组合数据详情信息")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<SystemGroupData> info(@RequestParam(value = "id") Integer id){
public CommonResult<SystemGroupData> info(@RequestParam(value = "id") Integer id) {
SystemGroupData systemGroupData = systemGroupDataService.getById(id);
return CommonResult.success(systemGroupData);
}

View File

@@ -0,0 +1,128 @@
package com.zbkj.admin.controller;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.model.system.SystemMenu;
import com.zbkj.common.request.SystemMenuRequest;
import com.zbkj.common.request.SystemMenuSearchRequest;
import com.zbkj.common.vo.MenuCheckVo;
import com.zbkj.service.service.SystemMenuService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 系统菜单管理 前端控制器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin/system/menu")
@Api(tags = "系统菜单管理")
public class SystemMenuController {
@Autowired
private SystemMenuService systemMenuService;
/**
* 菜单列表
* @param request 搜索条件
*/
@PreAuthorize("hasAuthority('admin:system:menu:list')")
@ApiOperation(value = "菜单列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<List<SystemMenu>> getList(@Validated SystemMenuSearchRequest request) {
return CommonResult.success(systemMenuService.getAdminList(request));
}
/**
* 新增菜单
* @param systemMenuRequest 新增菜单
*/
@PreAuthorize("hasAuthority('admin:system:menu:add')")
@ApiOperation(value = "新增菜单")
@RequestMapping(value = "/add", method = RequestMethod.POST)
public CommonResult<String> add(@RequestBody @Validated SystemMenuRequest systemMenuRequest) {
if (systemMenuService.add(systemMenuRequest)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 删除菜单
* @param id Integer
*/
@PreAuthorize("hasAuthority('admin:system:menu:delete')")
@ApiOperation(value = "删除菜单")
@RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
public CommonResult<String> delete(@PathVariable(value = "id") Integer id) {
if (systemMenuService.deleteById(id)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 修改菜单
*/
@PreAuthorize("hasAuthority('admin:system:menu:update')")
@ApiOperation(value = "修改菜单")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestBody @Validated SystemMenuRequest systemMenuRequest) {
if (systemMenuService.edit(systemMenuRequest)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 菜单详情
*/
@PreAuthorize("hasAuthority('admin:system:menu:info')")
@ApiOperation(value = "菜单详情")
@RequestMapping(value = "/info/{id}", method = RequestMethod.GET)
public CommonResult<SystemMenu> info(@PathVariable(value = "id") Integer id) {
return CommonResult.success(systemMenuService.getInfo(id));
}
/**
* 修改菜单显示状态
*/
@PreAuthorize("hasAuthority('admin:system:menu:show:status')")
@ApiOperation(value = "修改菜单显示状态")
@RequestMapping(value = "/updateShowStatus/{id}", method = RequestMethod.POST)
public CommonResult<Object> updateShowStatus(@PathVariable(value = "id") Integer id) {
if (systemMenuService.updateShowStatus(id)) {
return CommonResult.success("修改成功");
}
return CommonResult.failed("修改失败");
}
/**
* 菜单缓存树
*/
@PreAuthorize("hasAuthority('admin:system:menu:cache:tree')")
@ApiOperation(value = "菜单缓存树")
@RequestMapping(value = "/cache/tree", method = RequestMethod.GET)
public CommonResult<List<MenuCheckVo>> getCacheTree() {
return CommonResult.success(systemMenuService.getCacheTree());
}
}

View File

@@ -0,0 +1,116 @@
package com.zbkj.admin.controller;
import com.zbkj.common.model.system.SystemNotification;
import com.zbkj.common.request.NotificationInfoRequest;
import com.zbkj.common.request.NotificationSearchRequest;
import com.zbkj.common.request.NotificationUpdateRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.NotificationInfoResponse;
import com.zbkj.service.service.SystemNotificationService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 通知设置 前端控制器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin/system/notification")
@Api(tags = "通知设置-前端控制器") //配合swagger使用
public class SystemNotificationController {
@Autowired
private SystemNotificationService systemNotificationService;
/**
* 系统通知列表
* @param request ExpressSearchRequest 搜索条件
*/
@PreAuthorize("hasAuthority('admin:system:notification:list')")
@ApiOperation(value = "系统通知列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<List<SystemNotification>> getList(@Validated NotificationSearchRequest request) {
return CommonResult.success(systemNotificationService.getList(request));
}
/**
* 公众号模板开关
*/
@PreAuthorize("hasAuthority('admin:system:notification:wechat:switch')")
@ApiOperation(value = "公众号模板开关")
@RequestMapping(value = "/wechat/switch/{id}", method = RequestMethod.POST)
public CommonResult<Object> wechatSwitch(@PathVariable Integer id) {
if (systemNotificationService.wechatSwitch(id)) {
return CommonResult.success("更改成功");
}
return CommonResult.failed("更改失败");
}
/**
* 小程序订阅模板开关
*/
@PreAuthorize("hasAuthority('admin:system:notification:routine:switch')")
@ApiOperation(value = "小程序订阅模板开关")
@RequestMapping(value = "/routine/switch/{id}", method = RequestMethod.POST)
public CommonResult<Object> routineSwitch(@PathVariable Integer id) {
if (systemNotificationService.routineSwitch(id)) {
return CommonResult.success("更改成功");
}
return CommonResult.failed("更改失败");
}
/**
* 发送短信开关
*/
@PreAuthorize("hasAuthority('admin:system:notification:sms:switch')")
@ApiOperation(value = "发送短信开关")
@RequestMapping(value = "/sms/switch/{id}", method = RequestMethod.POST)
public CommonResult<Object> smsSwitch(@PathVariable Integer id) {
if (systemNotificationService.smsSwitch(id)) {
return CommonResult.success("更改成功");
}
return CommonResult.failed("更改失败");
}
/**
* 通知详情
*/
@PreAuthorize("hasAuthority('admin:system:notification:detail')")
@ApiOperation(value = "通知详情")
@RequestMapping(value = "/detail", method = RequestMethod.GET)
public CommonResult<NotificationInfoResponse> info(@Validated NotificationInfoRequest request) {
return CommonResult.success(systemNotificationService.getDetail(request));
}
/**
* 修改通知
*/
@PreAuthorize("hasAuthority('admin:system:notification:update')")
@ApiOperation(value = "修改通知")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<Object> update(@Validated @RequestBody NotificationUpdateRequest request) {
if (systemNotificationService.modify(request)) {
return CommonResult.success();
}
return CommonResult.failed();
}
}

View File

@@ -1,24 +1,21 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.utils.CrmebUtil;
import com.zbkj.crmeb.category.vo.CategoryTreeVo;
import com.zbkj.crmeb.system.model.SystemRole;
import com.zbkj.crmeb.system.request.SystemRoleRequest;
import com.zbkj.crmeb.system.request.SystemRoleSearchRequest;
import com.zbkj.crmeb.system.service.SystemRoleService;
import com.zbkj.common.model.system.SystemRole;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.SystemRoleRequest;
import com.zbkj.common.request.SystemRoleSearchRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.RoleInfoResponse;
import com.zbkj.service.service.SystemRoleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 身份管理表 前端控制器
@@ -45,107 +42,75 @@ public class SystemRoleController {
* 分页显示身份管理表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:system:role:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<SystemRole>> getList(@Validated SystemRoleSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<SystemRole>> getList(@Validated SystemRoleSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<SystemRole> systemRoleCommonPage = CommonPage.restPage(systemRoleService.getList(request, pageParamRequest));
return CommonResult.success(systemRoleCommonPage);
}
/**
* 新增身份管理表
* 新增身份
* @param systemRoleRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@ApiOperation(value = "新增")
@PreAuthorize("hasAuthority('admin:system:role:save')")
@ApiOperation(value = "新增身份")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated SystemRoleRequest systemRoleRequest){
SystemRole systemRole = new SystemRole();
BeanUtils.copyProperties(systemRoleRequest, systemRole);
if(systemRoleService.save(systemRole)){
public CommonResult<String> save(@RequestBody @Validated SystemRoleRequest systemRoleRequest) {
if (systemRoleService.add(systemRoleRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除身份管理表
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:system:role:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(systemRoleService.removeById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (systemRoleService.delete(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改身份管理表
* @param id integer id
* @param systemRoleRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:system:role:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated SystemRoleRequest systemRoleRequest){
SystemRole systemRole = new SystemRole();
BeanUtils.copyProperties(systemRoleRequest, systemRole);
systemRole.setId(id);
if(systemRoleService.updateById(systemRole)){
public CommonResult<String> update(@RequestBody @Validated SystemRoleRequest systemRoleRequest) {
if (systemRoleService.edit(systemRoleRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询身份管理表信息
* @param ids String
* @author Mr.Zhang
* @since 2020-04-18
* 查询身份详情
* @param id String
*/
@PreAuthorize("hasAuthority('admin:system:role:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<List<SystemRole>> info(@RequestParam(value = "ids") String ids){
// SystemRole systemRole = systemRoleService.getById(CrmebUtil.stringToArray(ids));
List<SystemRole> systemRole = systemRoleService.getListInIds(CrmebUtil.stringToArray(ids));
return CommonResult.success(systemRole);
@RequestMapping(value = "/info/{id}", method = RequestMethod.GET)
public CommonResult<RoleInfoResponse> info(@PathVariable Integer id) {
return CommonResult.success(systemRoleService.getInfo(id));
}
/**
* 管理员菜单权限
* @author Mr.Zhang
* @since 2020-04-13
*/
@ApiOperation(value = "菜单")
@RequestMapping(value = "/menu", method = RequestMethod.GET)
public CommonResult<List<CategoryTreeVo>> menu(){
List<CategoryTreeVo> categoryTreeVoList = systemRoleService.menu();
return CommonResult.success(categoryTreeVoList);
}
/**
* 修改身份状态
* @author Mr.Zhang
* @since 2020-04-13
* @return
*/
@PreAuthorize("hasAuthority('admin:system:role:update:status')")
@ApiOperation(value = "修改身份状态")
@RequestMapping(value = "/updateStatus", method = RequestMethod.GET)
public CommonResult<Object> updateStatus(@Validated @RequestParam(value = "id") Integer id, @Validated @RequestParam(value = "status") Boolean status){
public CommonResult<Object> updateStatus(@Validated @RequestParam(value = "id") Integer id, @Validated @RequestParam(value = "status") Boolean status) {
if (systemRoleService.updateStatus(id, status)) {
return CommonResult.success("修改成功");
}

View File

@@ -1,18 +1,19 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.system.request.SystemStoreRequest;
import com.zbkj.crmeb.system.request.SystemStoreSearchRequest;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.system.SystemStore;
import com.zbkj.common.request.SystemStoreRequest;
import com.zbkj.common.request.SystemStoreSearchRequest;
import com.zbkj.service.service.SystemStoreService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.system.service.SystemStoreService;
import com.zbkj.crmeb.system.model.SystemStore;
import java.util.HashMap;
@@ -42,114 +43,102 @@ public class SystemStoreController {
* 分页显示门店自提
* @param request SystemStoreSearchRequest 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-13
*/
@ApiOperation(value = "分页列表")
@PreAuthorize("hasAuthority('admin:system:store:list')")
@ApiOperation(value = "门店自提分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<SystemStore>> getList(@Validated SystemStoreSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<SystemStore>> getList(@Validated SystemStoreSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<SystemStore> expressCommonPage = CommonPage.restPage(systemStoreService.getList(request.getKeywords(), request.getStatus(), pageParamRequest));
return CommonResult.success(expressCommonPage);
}
/**
* 数量
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:store:count')")
@ApiOperation(value = "数量")
@RequestMapping(value = "/getCount", method = RequestMethod.GET)
public CommonResult<HashMap<String, Integer>> getCount(){
public CommonResult<HashMap<String, Integer>> getCount() {
return CommonResult.success(systemStoreService.getCount());
}
/**
* 新增门店自提
* @param request SystemStoreRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:store:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated SystemStoreRequest request){
if(systemStoreService.create(request)){
public CommonResult<String> save(@RequestBody @Validated SystemStoreRequest request) {
if (systemStoreService.create(request)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除门店自提
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:store:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(systemStoreService.delete(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (systemStoreService.delete(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改门店自提
* @param id integer id
* @param request 修改参数
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:store:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated SystemStoreRequest request){
if(systemStoreService.update(id, request)){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated SystemStoreRequest request) {
if (systemStoreService.update(id, request)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改门店显示状态
* @param id integer id
* @param status 状态
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:store:update:status')")
@ApiOperation(value = "修改门店显示状态")
@RequestMapping(value = "/update/status", method = RequestMethod.GET)
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam boolean status){
if(systemStoreService.updateStatus(id, status)){
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam Boolean status) {
if (systemStoreService.updateStatus(id, status)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询门店自提信息
* 门店自提详情
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-13
*/
@PreAuthorize("hasAuthority('admin:system:store:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<SystemStore> info(@RequestParam(value = "id") Integer id){
SystemStore systemStore = systemStoreService.getById(id);
systemStore.setLatitude(systemStore.getLatitude() + "," + systemStore.getLongitude());
return CommonResult.success(systemStore);
public CommonResult<SystemStore> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(systemStoreService.getInfo(id));
}
/**
* 彻底删除
*/
@PreAuthorize("hasAuthority('admin:system:store:completely:delete')")
@ApiOperation(value = "彻底删除")
@RequestMapping(value = "/completely/delete", method = RequestMethod.GET)
public CommonResult<Object> completeLyDelete(@RequestParam(value = "id") Integer id){
public CommonResult<Object> completeLyDelete(@RequestParam(value = "id") Integer id) {
if (systemStoreService.completeLyDelete(id)) {
return CommonResult.success();
}
@@ -159,9 +148,10 @@ public class SystemStoreController {
/**
* 恢复
*/
@PreAuthorize("hasAuthority('admin:system:store:recovery')")
@ApiOperation(value = "提货点恢复")
@RequestMapping(value = "/recovery", method = RequestMethod.GET)
public CommonResult<Object> recovery(@RequestParam(value = "id") Integer id){
public CommonResult<Object> recovery(@RequestParam(value = "id") Integer id) {
if (systemStoreService.recovery(id)) {
return CommonResult.success();
}

View File

@@ -1,17 +1,17 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.system.model.SystemStoreStaff;
import com.zbkj.crmeb.system.response.SystemStoreStaffResponse;
import com.zbkj.crmeb.system.request.SystemStoreStaffRequest;
import com.zbkj.crmeb.system.service.SystemStoreStaffService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.system.SystemStoreStaff;
import com.zbkj.common.request.SystemStoreStaffRequest;
import com.zbkj.common.response.SystemStoreStaffResponse;
import com.zbkj.service.service.SystemStoreStaffService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
@@ -37,16 +37,15 @@ public class SystemStoreStaffController {
private SystemStoreStaffService systemStoreStaffService;
/**
* 分页显示门店店员
* 分页显示门店核销员列
* @param storeId 门店id
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:system:staff:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<SystemStoreStaffResponse>> getList(@RequestParam(name = "storeId", required = false, defaultValue = "0") Integer storeId,
@ModelAttribute PageParamRequest pageParamRequest){
@ModelAttribute PageParamRequest pageParamRequest) {
CommonPage<SystemStoreStaffResponse> systemStoreStaffCommonPage =
CommonPage.restPage(systemStoreStaffService.getList(storeId, pageParamRequest));
return CommonResult.success(systemStoreStaffCommonPage);
@@ -55,87 +54,70 @@ public class SystemStoreStaffController {
/**
* 新增门店店员表
* @param systemStoreStaffRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:system:staff:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @ModelAttribute SystemStoreStaffRequest systemStoreStaffRequest){
if(systemStoreStaffService.saveUnique(systemStoreStaffRequest)){
public CommonResult<String> save(@RequestBody @ModelAttribute SystemStoreStaffRequest systemStoreStaffRequest) {
if (systemStoreStaffService.saveUnique(systemStoreStaffRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除门店店员表
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:system:staff:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(systemStoreStaffService.removeById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (systemStoreStaffService.removeById(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改门店店员表
* @param id integer id
* @param systemStoreStaffRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:system:staff:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @ModelAttribute SystemStoreStaffRequest systemStoreStaffRequest){
SystemStoreStaff systemStoreStaff = new SystemStoreStaff();
BeanUtils.copyProperties(systemStoreStaffRequest, systemStoreStaff);
systemStoreStaff.setId(id);
if(systemStoreStaffService.updateById(systemStoreStaff)){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @ModelAttribute SystemStoreStaffRequest systemStoreStaffRequest) {
if (systemStoreStaffService.edit(id, systemStoreStaffRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改门店店员表
* @param id integer id
* @param status 状态
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:system:staff:update:status')")
@ApiOperation(value = "修改状态")
@RequestMapping(value = "/update/status", method = RequestMethod.GET)
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam Integer status){
SystemStoreStaff systemStoreStaff = new SystemStoreStaff();
systemStoreStaff.setId(id);
systemStoreStaff.setStatus(status);
if(systemStoreStaffService.updateById(systemStoreStaff)){
public CommonResult<String> updateStatus(@RequestParam Integer id, @RequestParam Integer status) {
if (systemStoreStaffService.updateStatus(id, status)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询门店店员表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-17
*/
@PreAuthorize("hasAuthority('admin:system:staff:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<SystemStoreStaff> info(@RequestParam(value = "id") Integer id){
SystemStoreStaff systemStoreStaff = systemStoreStaffService.getById(id);
return CommonResult.success(systemStoreStaff);
public CommonResult<SystemStoreStaff> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(systemStoreStaffService.getById(id));
}
}

View File

@@ -0,0 +1,106 @@
package com.zbkj.admin.controller;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.model.system.SystemUserLevel;
import com.zbkj.common.request.SystemUserLevelRequest;
import com.zbkj.common.request.SystemUserLevelUpdateShowRequest;
import com.zbkj.service.service.SystemUserLevelService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 设置用户等级表 前端控制器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin/system/user/level")
@Api(tags = "设置 -- 会员等级")
public class SystemUserLevelController {
@Autowired
private SystemUserLevelService systemUserLevelService;
/**
* 分页显示设置用户等级表
*/
@PreAuthorize("hasAuthority('admin:system:user:level:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<List<SystemUserLevel>> getList() {
return CommonResult.success(systemUserLevelService.getList());
}
/**
* 新增等级
*/
@PreAuthorize("hasAuthority('admin:system:user:level:save')")
@ApiOperation(value = "新增等级")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<Object> save(@RequestBody @Validated SystemUserLevelRequest request) {
if (systemUserLevelService.create(request)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 删除等级
* @param id 等级id
*/
@PreAuthorize("hasAuthority('admin:system:user:level:delete')")
@ApiOperation(value = "删除等级")
@RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
public CommonResult<Object> delete(@PathVariable(value = "id") Integer id) {
if (systemUserLevelService.delete(id)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 更新等级
*/
@PreAuthorize("hasAuthority('admin:system:user:level:update')")
@ApiOperation(value = "更新等级")
@RequestMapping(value = "/update/{id}", method = RequestMethod.POST)
public CommonResult<Object> update(@PathVariable(value = "id") Integer id,
@RequestBody @Validated SystemUserLevelRequest request) {
if (systemUserLevelService.update(id, request)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 使用/禁用
*/
@PreAuthorize("hasAuthority('admin:system:user:level:use')")
@ApiOperation(value = "使用/禁用")
@RequestMapping(value = "/use", method = RequestMethod.POST)
public CommonResult<Object> use(@RequestBody @Validated SystemUserLevelUpdateShowRequest request) {
if (systemUserLevelService.updateShow(request)) {
return CommonResult.success();
}
return CommonResult.failed();
}
}

View File

@@ -1,14 +1,15 @@
package com.zbkj.crmeb.system.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.system.response.SystemWriteOffOrderResponse;;
import com.zbkj.crmeb.store.service.StoreOrderService;
import com.zbkj.crmeb.system.request.SystemWriteOffOrderSearchRequest;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.SystemWriteOffOrderSearchRequest;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.SystemWriteOffOrderResponse;
import com.zbkj.service.service.StoreOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -40,14 +41,13 @@ public class SystemWriteOffOrderController {
* 分页显示订单表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-28
*/
@PreAuthorize("hasAuthority('admin:system:order:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.POST)
public CommonResult<SystemWriteOffOrderResponse> getList(
@Validated SystemWriteOffOrderSearchRequest request,
@Validated PageParamRequest pageParamRequest){
@Validated PageParamRequest pageParamRequest) {
return CommonResult.success(storeOrderService.getWriteOffList(request, pageParamRequest));
}
}

View File

@@ -0,0 +1,64 @@
package com.zbkj.admin.controller;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.TemplateMessageService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* 微信模板 前端控制器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin/wechat/template")
@Api(tags = "微信 -- 消息模版") //配合swagger使用
public class TemplateMessageController {
@Autowired
private TemplateMessageService templateMessageService;
/**
* 公众号模板消息同步
*/
@PreAuthorize("hasAuthority('admin:wechat:whcbqhn:sync')")
@ApiOperation(value = "公众号模板消息同步")
@RequestMapping(value = "/whcbqhn/sync", method = RequestMethod.POST)
public CommonResult<String> whcbqhnSync() {
if (templateMessageService.whcbqhnSync()) {
return CommonResult.success("公众号模板消息同步成功");
}
return CommonResult.failed("公众号模板消息同步失败");
}
/**
* 小程序订阅消息同步
*/
@PreAuthorize("hasAuthority('admin:wechat:routine:sync')")
@ApiOperation(value = "小程序订阅消息同步")
@RequestMapping(value = "/routine/sync", method = RequestMethod.POST)
public CommonResult<String> routineSync() {
if (templateMessageService.routineSync()) {
return CommonResult.success("小程序订阅消息同步成功");
}
return CommonResult.failed("小程序订阅消息同步失败");
}
}

View File

@@ -1,15 +1,15 @@
package com.zbkj.crmeb.upload.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.system.service.SystemAttachmentService;
import com.zbkj.crmeb.upload.service.UploadService;
import com.zbkj.crmeb.upload.vo.FileResultVo;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.vo.FileResultVo;
import com.zbkj.service.service.UploadService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
@@ -40,14 +40,10 @@ public class UploadController {
@Autowired
private UploadService uploadService;
@Autowired
private SystemAttachmentService systemAttachmentService;
/**
* 图片上传
* @author Mr.Zhang
* @since 2020-05-06
*/
// @PreAuthorize("hasAuthority('admin:upload:image')")
@ApiOperation(value = "图片上传")
@RequestMapping(value = "/image", method = RequestMethod.POST)
@ApiImplicitParams({
@@ -57,14 +53,13 @@ public class UploadController {
public CommonResult<FileResultVo> image(MultipartFile multipart,
@RequestParam(value = "model") String model,
@RequestParam(value = "pid") Integer pid) throws IOException {
return CommonResult.success(uploadService.image(multipart, model, pid));
return CommonResult.success(uploadService.imageUpload(multipart, model, pid));
}
/**
* 文件上传
* @author Mr.Zhang
* @since 2020-05-06
*/
// @PreAuthorize("hasAuthority('admin:upload:file')")
@ApiOperation(value = "文件上传")
@RequestMapping(value = "/file", method = RequestMethod.POST)
@ApiImplicitParams({
@@ -74,20 +69,7 @@ public class UploadController {
public CommonResult<FileResultVo> file(MultipartFile multipart,
@RequestParam(value = "model") String model,
@RequestParam(value = "pid") Integer pid) throws IOException {
return CommonResult.success(uploadService.file(multipart, model, pid));
}
/**
* 同步到云
* @author Mr.Zhang
* @since 2020-05-06
*/
@ApiOperation(value = "同步到云服务")
@RequestMapping(value = "/async", method = RequestMethod.POST)
public CommonResult<FileResultVo> async(){
systemAttachmentService.async();
return CommonResult.success();
return CommonResult.success(uploadService.fileUpload(multipart, model, pid));
}
}

View File

@@ -1,17 +1,13 @@
package com.zbkj.crmeb.user.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.user.model.User;
import com.zbkj.crmeb.user.request.UserOperateIntegralMoneyRequest;
import com.zbkj.crmeb.user.request.UserSearchRequest;
import com.zbkj.crmeb.user.request.UserUpdateRequest;
import com.zbkj.crmeb.user.request.UserUpdateSpreadRequest;
import com.zbkj.crmeb.user.response.TopDetail;
import com.zbkj.crmeb.user.response.UserResponse;
import com.zbkj.crmeb.user.service.UserService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.request.*;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.model.user.User;
import com.zbkj.common.response.TopDetail;
import com.zbkj.common.response.UserResponse;
import com.zbkj.service.service.UserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -19,6 +15,7 @@ import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -52,49 +49,30 @@ public class UserController {
* 分页显示用户表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-10
*/
@PreAuthorize("hasAuthority('admin:user:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<UserResponse>> getList(@ModelAttribute UserSearchRequest request,
@ModelAttribute PageParamRequest pageParamRequest){
public CommonResult<CommonPage<UserResponse>> getList(@ModelAttribute @Validated UserSearchRequest request,
@ModelAttribute PageParamRequest pageParamRequest) {
CommonPage<UserResponse> userCommonPage = CommonPage.restPage(userService.getList(request, pageParamRequest));
return CommonResult.success(userCommonPage);
}
/**
* 删除用户表
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-10
*/
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(userService.removeById(id)){
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
/**
* 修改用户表
* @param id integer id
* @param userRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-10
*/
@PreAuthorize("hasAuthority('admin:user:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated UserUpdateRequest userRequest){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated UserUpdateRequest userRequest) {
userRequest.setUid(id);
if(userService.updateUser(userRequest)){
if (userService.updateUser(userRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
@@ -102,27 +80,25 @@ public class UserController {
* @param id 用户uid
* @param phone 手机号
*/
@PreAuthorize("hasAuthority('admin:user:update:phone')")
@ApiOperation(value = "修改用户手机号")
@RequestMapping(value = "/update/phone", method = RequestMethod.GET)
public CommonResult<String> updatePhone(@RequestParam(name = "id") Integer id, @RequestParam(name = "phone") String phone){
if(userService.updateUserPhone(id, phone)){
public CommonResult<String> updatePhone(@RequestParam(name = "id") Integer id, @RequestParam(name = "phone") String phone) {
if (userService.updateUserPhone(id, phone)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询用户表信息
* 用户详情
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-10
*/
@PreAuthorize("hasAuthority('admin:user:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<User> info(@RequestParam(value = "id") Integer id){
User user = userService.getById(id);
return CommonResult.success(user);
public CommonResult<User> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(userService.getInfoByUid(id));
}
/**
@@ -130,9 +106,8 @@ public class UserController {
* @param userId Integer 会员id
* @param type int 类型 0=消费记录1=积分明细2=签到记录3=持有优惠券4=余额变动5=好友关系
* @param pageParamRequest PageParamRequest 分页
* @author stivepeim
* @since 2020-04-10
*/
@PreAuthorize("hasAuthority('admin:user:infobycondition')")
@ApiOperation(value="会员详情")
@RequestMapping(value = "/infobycondition", method = RequestMethod.GET)
@ApiImplicitParams({
@@ -142,50 +117,46 @@ public class UserController {
})
public CommonResult<CommonPage<T>> infoByCondition(@RequestParam(name = "userId") @Valid Integer userId,
@RequestParam(name = "type") @Valid @Max(5) @Min(0) int type,
@ModelAttribute PageParamRequest pageParamRequest){
return CommonResult.success(CommonPage.restPage((List<T>)userService.getInfoByCondition(userId,type,pageParamRequest)));
@ModelAttribute PageParamRequest pageParamRequest) {
return CommonResult.success(CommonPage.restPage((List<T>) userService.getInfoByCondition(userId,type,pageParamRequest)));
}
/**
* 获取会员详情对应数据
* @param userId
* @return
* 会员详情页Top数据
*/
@PreAuthorize("hasAuthority('admin:user:topdetail')")
@ApiOperation(value = "会员详情页Top数据")
@RequestMapping(value = "topdetail", method = RequestMethod.GET)
public CommonResult<TopDetail> topDetail (@RequestParam @Valid Integer userId){
public CommonResult<TopDetail> topDetail (@RequestParam @Valid Integer userId) {
return CommonResult.success(userService.getTopDetail(userId));
}
/**
* 操作积分
*/
@PreAuthorize("hasAuthority('admin:user:operate:founds')")
@ApiOperation(value = "积分余额")
@RequestMapping(value = "/operate/founds", method = RequestMethod.GET)
public CommonResult<Object> founds(@Validated UserOperateIntegralMoneyRequest request){
if(userService.updateIntegralMoney(request)){
public CommonResult<Object> founds(@Validated UserOperateIntegralMoneyRequest request) {
if (userService.updateIntegralMoney(request)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 会员分组
* @param id String id
* @param groupId Integer 分组Id
* @author Mr.Zhang
* @since 2020-04-28
*/
@PreAuthorize("hasAuthority('admin:user:group')")
@ApiOperation(value = "分组")
@RequestMapping(value = "/group", method = RequestMethod.POST)
public CommonResult<String> group(@RequestParam String id,
@RequestParam String groupId){
if(userService.group(id, groupId)){
public CommonResult<String> group(@RequestParam String id, @RequestParam String groupId) {
if (userService.group(id, groupId)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
@@ -193,28 +164,40 @@ public class UserController {
* @param id String id
* @param tagId Integer 标签id
*/
@PreAuthorize("hasAuthority('admin:user:tag')")
@ApiOperation(value = "标签")
@RequestMapping(value = "/tag", method = RequestMethod.POST)
public CommonResult<String> tag(@RequestParam String id,
@RequestParam String tagId){
if(userService.tag(id, tagId)){
public CommonResult<String> tag(@RequestParam String id, @RequestParam String tagId) {
if (userService.tag(id, tagId)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改上级推广人
*/
@PreAuthorize("hasAuthority('admin:user:update:spread')")
@ApiOperation(value = "修改上级推广人")
@RequestMapping(value = "/update/spread", method = RequestMethod.POST)
public CommonResult<String> editSpread(@Validated @RequestBody UserUpdateSpreadRequest request){
if(userService.editSpread(request)){
public CommonResult<String> editSpread(@Validated @RequestBody UserUpdateSpreadRequest request) {
if (userService.editSpread(request)) {
return CommonResult.success("修改成功");
}else{
return CommonResult.failed("修改失败");
}
return CommonResult.failed("修改失败");
}
/**
* 更新用户会员等级
*/
@PreAuthorize("hasAuthority('admin:user:update:level')")
@ApiOperation(value = "更新用户会员等级")
@RequestMapping(value = "/update/level", method = RequestMethod.POST)
public CommonResult<Object> updateUserLevel(@Validated @RequestBody UpdateUserLevelRequest request) {
if (userService.updateUserLevel(request)) {
return CommonResult.success("更新成功");
}
return CommonResult.failed("更新失败");
}
}

View File

@@ -1,21 +1,18 @@
package com.zbkj.crmeb.finance.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.utils.DateUtil;
import com.utils.vo.dateLimitUtilVo;
import com.zbkj.crmeb.finance.model.UserExtract;
import com.zbkj.crmeb.finance.request.UserExtractRequest;
import com.zbkj.crmeb.finance.request.UserExtractSearchRequest;
import com.zbkj.crmeb.finance.response.BalanceResponse;
import com.zbkj.crmeb.finance.service.UserExtractService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.finance.UserExtract;
import com.zbkj.common.request.UserExtractRequest;
import com.zbkj.common.request.UserExtractSearchRequest;
import com.zbkj.common.response.BalanceResponse;
import com.zbkj.service.service.UserExtractService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -48,9 +45,8 @@ public class UserExtractController {
* 分页显示用户提现表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-11
*/
@PreAuthorize("hasAuthority('admin:finance:apply:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<UserExtract>> getList(@Validated UserExtractSearchRequest request, @Validated PageParamRequest pageParamRequest){
@@ -62,19 +58,14 @@ public class UserExtractController {
* 修改用户提现表
* @param id integer id
* @param userExtractRequest 修改参数
* @author Mr.Zhang
* @since 2020-05-11
*/
@PreAuthorize("hasAuthority('admin:finance:apply:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @Validated UserExtractRequest userExtractRequest){
UserExtract userExtract = new UserExtract();
BeanUtils.copyProperties(userExtractRequest, userExtract);
userExtract.setId(id);
if(userExtractService.updateById(userExtract)){
if (userExtractService.updateExtract(id, userExtractRequest)) {
return CommonResult.success();
}else{
} else {
return CommonResult.failed();
}
}
@@ -82,13 +73,11 @@ public class UserExtractController {
/**
* 提现统计
* @Param dateLimit 时间限制 today,yesterday,lately7,lately30,month,year,/yyyy-MM-dd hh:mm:ss,yyyy-MM-dd hh:mm:ss/
* @author Mr.Zhang
* @since 2020-05-11
*/
@PreAuthorize("hasAuthority('admin:finance:apply:balance')")
@ApiOperation(value = "提现统计")
@RequestMapping(value = "/balance", method = RequestMethod.POST)
public CommonResult<BalanceResponse> balance(
@RequestParam(value = "dateLimit", required = false,defaultValue = "")
public CommonResult<BalanceResponse> balance(@RequestParam(value = "dateLimit", required = false,defaultValue = "")
String dateLimit){
return CommonResult.success(userExtractService.getBalance(dateLimit));
}
@@ -100,6 +89,7 @@ public class UserExtractController {
* @param backMessage 驳回原因
* @return 审核结果
*/
@PreAuthorize("hasAuthority('admin:finance:apply:apply')")
@ApiOperation(value = "提现申请审核")
@RequestMapping(value = "/apply", method = RequestMethod.POST)
public CommonResult<String> updateStatus(@RequestParam(value = "id") Integer id,

View File

@@ -1,18 +1,18 @@
package com.zbkj.crmeb.user.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.user.request.UserGroupRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.user.UserGroup;
import com.zbkj.common.request.UserGroupRequest;
import com.zbkj.service.service.UserGroupService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.user.service.UserGroupService;
import com.zbkj.crmeb.user.model.UserGroup;
/**
@@ -39,12 +39,11 @@ public class UserGroupController {
/**
* 分页显示用户分组表
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-28
*/
@PreAuthorize("hasAuthority('admin:user:group:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<UserGroup>> getList(@Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<UserGroup>> getList(@Validated PageParamRequest pageParamRequest) {
CommonPage<UserGroup> userGroupCommonPage = CommonPage.restPage(userGroupService.getList(pageParamRequest));
return CommonResult.success(userGroupCommonPage);
}
@@ -52,70 +51,55 @@ public class UserGroupController {
/**
* 新增用户分组表
* @param userGroupRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-28
*/
@PreAuthorize("hasAuthority('admin:user:group:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated UserGroupRequest userGroupRequest){
UserGroup userGroup = new UserGroup();
BeanUtils.copyProperties(userGroupRequest, userGroup);
if(userGroupService.save(userGroup)){
public CommonResult<String> save(@RequestBody @Validated UserGroupRequest userGroupRequest) {
if (userGroupService.create(userGroupRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除用户分组表
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-28
*/
@PreAuthorize("hasAuthority('admin:user:group:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(userGroupService.removeById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (userGroupService.removeById(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改用户分组表
* @param id integer id
* @param userGroupRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-28
*/
@PreAuthorize("hasAuthority('admin:user:group:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated UserGroupRequest userGroupRequest){
UserGroup userGroup = new UserGroup();
BeanUtils.copyProperties(userGroupRequest, userGroup);
userGroup.setId(id);
if(userGroupService.updateById(userGroup)){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated UserGroupRequest userGroupRequest) {
if (userGroupService.edit(id, userGroupRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询用户分组表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-28
*/
@PreAuthorize("hasAuthority('admin:user:group:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<UserGroup> info(@RequestParam(value = "id") Integer id){
UserGroup userGroup = userGroupService.getById(id);
return CommonResult.success(userGroup);
public CommonResult<UserGroup> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(userGroupService.getById(id));
}
}

View File

@@ -1,15 +1,16 @@
package com.zbkj.crmeb.user.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.user.request.AdminIntegralSearchRequest;
import com.zbkj.crmeb.user.response.UserIntegralRecordResponse;
import com.zbkj.crmeb.user.service.UserIntegralRecordService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.AdminIntegralSearchRequest;
import com.zbkj.common.response.UserIntegralRecordResponse;
import com.zbkj.service.service.UserIntegralRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -42,9 +43,10 @@ public class UserIntegralController {
* @param request 搜索条件
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:user:integral:list')")
@ApiOperation(value = "积分分页列表")
@RequestMapping(value = "/list", method = RequestMethod.POST)
public CommonResult<CommonPage<UserIntegralRecordResponse>> getList(@RequestBody @Validated AdminIntegralSearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<UserIntegralRecordResponse>> getList(@RequestBody @Validated AdminIntegralSearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<UserIntegralRecordResponse> restPage = CommonPage.restPage(integralRecordService.findAdminList(request, pageParamRequest));
return CommonResult.success(restPage);
}

View File

@@ -1,15 +1,15 @@
package com.zbkj.crmeb.user.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.user.model.UserLevel;
import com.zbkj.crmeb.user.request.UserLevelSearchRequest;
import com.zbkj.crmeb.user.service.UserLevelService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.user.UserLevel;
import com.zbkj.service.service.UserLevelService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -39,15 +39,13 @@ public class UserLevelController {
/**
* 分页显示用户等级记录表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-28
*/
@PreAuthorize("hasAuthority('admin:user:level:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<UserLevel>> getList(@Validated UserLevelSearchRequest request, @Validated PageParamRequest pageParamRequest){
CommonPage<UserLevel> userLevelCommonPage = CommonPage.restPage(userLevelService.getList(request, pageParamRequest));
public CommonResult<CommonPage<UserLevel>> getList(@Validated PageParamRequest pageParamRequest) {
CommonPage<UserLevel> userLevelCommonPage = CommonPage.restPage(userLevelService.getList(pageParamRequest));
return CommonResult.success(userLevelCommonPage);
}
}

View File

@@ -1,19 +1,20 @@
package com.zbkj.crmeb.finance.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.finance.request.UserRechargeRefundRequest;
import com.zbkj.crmeb.finance.request.UserRechargeSearchRequest;
import com.zbkj.crmeb.finance.response.UserRechargeResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.UserRechargeSearchRequest;
import com.zbkj.common.response.UserRechargeResponse;
import com.zbkj.service.service.UserRechargeService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.finance.service.UserRechargeService;
import com.zbkj.crmeb.finance.model.UserRecharge;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.HashMap;
@@ -35,7 +36,6 @@ import java.util.HashMap;
@RestController
@RequestMapping("api/admin/user/topUpLog")
@Api(tags = "财务 -- 充值")
public class UserRechargeController {
@Autowired
@@ -45,65 +45,24 @@ public class UserRechargeController {
* 分页显示用户充值表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-05-11
*/
@PreAuthorize("hasAuthority('admin:recharge:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<UserRechargeResponse>> getList(@Validated UserRechargeSearchRequest request, @Validated PageParamRequest pageParamRequest){
request.setPaid(true);
CommonPage<UserRechargeResponse> userRechargeCommonPage = CommonPage.restPage(userRechargeService.getList(request, pageParamRequest));
return CommonResult.success(userRechargeCommonPage);
}
/**
* 删除用户充值表
* @param id Integer
* @author Mr.Zhang
* @since 2020-05-11
*/
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
UserRecharge userRecharge = userRechargeService.getById(id);
if(userRecharge == null){
return CommonResult.failed("数据异常");
}
if(userRecharge.getPaid()){
return CommonResult.failed("已支付的订单记录无法删除");
}
if(userRechargeService.removeById(id)){
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
/**
* 充值总金额
* @author Mr.Zhang
* @since 2020-05-11
*/
@PreAuthorize("hasAuthority('admin:recharge:balance')")
@ApiOperation(value = "提现总金额")
@RequestMapping(value = "/balance", method = RequestMethod.POST)
public CommonResult<HashMap<String, BigDecimal>> balance(){
return CommonResult.success(userRechargeService.getBalanceList());
}
/**
* 充值退款
*/
@ApiOperation(value = "充值退款")
@RequestMapping(value = "/refund", method = RequestMethod.POST)
public CommonResult<Object> refund(@RequestBody @Validated UserRechargeRefundRequest request) {
if (userRechargeService.refund(request)) {
return CommonResult.success();
}
return CommonResult.failed();
}
}

View File

@@ -1,19 +1,18 @@
package com.zbkj.crmeb.user.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.user.request.UserTagRequest;
import com.zbkj.crmeb.user.service.UserService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.request.UserTagRequest;
import com.zbkj.service.service.UserTagService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import com.zbkj.crmeb.user.service.UserTagService;
import com.zbkj.crmeb.user.model.UserTag;
import com.zbkj.common.model.user.UserTag;
/**
@@ -32,22 +31,19 @@ import com.zbkj.crmeb.user.model.UserTag;
@RestController
@RequestMapping("api/admin/user/tag")
@Api(tags = "会员 -- 标签") //配合swagger使用
public class UserTagController {
@Autowired
private UserTagService userTagService;
@Autowired
private UserService userService;
/**
* 分页显示用户分标签
* @param pageParamRequest 分页参数
*/
@PreAuthorize("hasAuthority('admin:user:tag:list')")
@ApiOperation(value = "分页列表") //配合swagger使用
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<UserTag>> getList(@Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<UserTag>> getList(@Validated PageParamRequest pageParamRequest) {
CommonPage<UserTag> userTagCommonPage = CommonPage.restPage(userTagService.getList(pageParamRequest));
return CommonResult.success(userTagCommonPage);
}
@@ -56,32 +52,28 @@ public class UserTagController {
* 新增用户分标签
* @param userTagRequest 新增参数
*/
@PreAuthorize("hasAuthority('admin:user:tag:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated UserTagRequest userTagRequest){
UserTag userTag = new UserTag();
BeanUtils.copyProperties(userTagRequest, userTag);
if(userTagService.save(userTag)){
public CommonResult<String> save(@RequestBody @Validated UserTagRequest userTagRequest) {
if (userTagService.create(userTagRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 删除用户分标签
* @param id Integer
*/
@PreAuthorize("hasAuthority('admin:user:tag:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(userTagService.removeById(id)){
userService.clearGroupByGroupId(id+"");
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (userTagService.delete(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
@@ -89,29 +81,25 @@ public class UserTagController {
* @param id integer id
* @param userTagRequest 修改参数
*/
@PreAuthorize("hasAuthority('admin:user:tag:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated UserTagRequest userTagRequest){
UserTag userTag = new UserTag();
BeanUtils.copyProperties(userTagRequest, userTag);
userTag.setId(id);
if(userTagService.updateById(userTag)){
public CommonResult<String> update(@RequestParam Integer id, @RequestBody @Validated UserTagRequest userTagRequest) {
if (userTagService.updateTag(id, userTagRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询用户标签
* @param id Integer
*/
@PreAuthorize("hasAuthority('admin:user:tag:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<UserTag> info(@RequestParam(value = "id") Integer id){
UserTag userTag = userTagService.getById(id);
return CommonResult.success(userTag);
public CommonResult<UserTag> info(@RequestParam(value = "id") Integer id) {
return CommonResult.success(userTagService.getById(id));
}
}

View File

@@ -1,13 +1,12 @@
package com.zbkj.crmeb.validatecode.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.validatecode.model.ValidateCode;
import com.zbkj.crmeb.validatecode.service.ValidateCodeService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.admin.service.ValidateCodeService;
import com.zbkj.admin.vo.ValidateCode;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -36,29 +35,15 @@ public class ValidateCodeController {
/**
* 获取图片验证码
* @author Mr.Zhang
* @since 2020-04-16
* @return CommonResult
*/
// @PreAuthorize("hasAuthority('admin:validate:code:get')")
@ApiOperation(value="获取验证码")
@GetMapping(value = "/get")
public CommonResult<ValidateCode> get() {
ValidateCode validateCode = validateCodeService.get();
return CommonResult.success(validateCode);
}
/**
* 检测验证码
* @author Mr.Zhang
* @since 2020-04-16
* @return CommonResult
*/
@ApiOperation(value="检测验证码")
@GetMapping(value = "/check")
public CommonResult<Boolean> validateCode(@Validated ValidateCode validateCode) {
boolean result = validateCodeService.check(validateCode);
return CommonResult.success(result);
}
}

View File

@@ -1,12 +1,14 @@
package com.zbkj.crmeb.wechat.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.wechat.service.WeChatService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.response.WeChatJsSdkConfigResponse;
import com.zbkj.service.service.WechatNewService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
@@ -31,17 +33,16 @@ import org.springframework.web.bind.annotation.RestController;
public class WeChatAdminController {
@Autowired
private WeChatService weChatService;
private WechatNewService wechatNewService;
/**
* 获取微信公众号js配置
* @author Mr.Zhang
* @since 2020-05-25
*/
@PreAuthorize("hasAuthority('admin:wechat:config')")
@ApiOperation(value = "获取微信公众号js配置")
@RequestMapping(value = "/config", method = RequestMethod.GET)
@ApiImplicitParam(name = "url", value = "页面地址url")
public CommonResult<Object> configJs(@RequestParam(value = "url") String url){
return CommonResult.success(weChatService.getJsSdkConfig(url));
public CommonResult<WeChatJsSdkConfigResponse> configJs(@RequestParam(value = "url") String url) {
return CommonResult.success(wechatNewService.getJsSdkConfig(url));
}
}

View File

@@ -0,0 +1,76 @@
package com.zbkj.admin.controller;
import com.alibaba.fastjson.JSONObject;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.WechatPublicService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* 微信缓存表 前端控制器
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/admin/wechat/menu")
@Api(tags = "微信开放平台 -- 菜单管理")
public class WeChatController {
@Autowired
private WechatPublicService wechatPublicService;
/**
* 获取微信菜单
*/
@PreAuthorize("hasAuthority('admin:wechat:menu:public:get')")
@ApiOperation(value = "获取自定义菜单")
@RequestMapping(value = "/public/get", method = RequestMethod.GET)
public CommonResult<Object> get() {
return CommonResult.success(wechatPublicService.getCustomizeMenus());
}
/**
* 创建微信菜单
* @param data 菜单数据具体json格式参考微信开放平台
*/
@PreAuthorize("hasAuthority('admin:wechat:menu:public:create')")
@ApiOperation(value = "保存自定义菜单")
@RequestMapping(value = "/public/create", method = RequestMethod.POST)
public CommonResult<JSONObject> create(@RequestBody String data) {
if (wechatPublicService.createMenus(data)) {
return CommonResult.success();
}
return CommonResult.failed();
}
/**
* 删除微信菜单
*/
@PreAuthorize("hasAuthority('admin:wechat:menu:public:delete')")
@ApiOperation(value = "删除自定义菜单")
@RequestMapping(value = "/public/delete", method = RequestMethod.GET)
public CommonResult<JSONObject> delete() {
if (wechatPublicService.deleteMenus()) {
return CommonResult.success();
}
return CommonResult.failed();
}
}

View File

@@ -0,0 +1,78 @@
package com.zbkj.admin.controller;
import com.zbkj.service.service.WechatCallbackService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
* 微信小程序回调
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Slf4j
@RestController
@RequestMapping("api/public/wechat/mini/callback")
@Api(tags = "微信开放平台 -- 小程序回调")
public class WechatCallbackController {
@Autowired
private WechatCallbackService wechatCallbackService;
/**
* 小程序回调-自己模拟
*/
@ApiOperation(value = "小程序回调-自己模拟")
@RequestMapping(value = "/test", method = RequestMethod.POST)
public String test(@RequestBody String request) {
return wechatCallbackService.callback(request);
}
/**
* 小程序回调
* 目前只用于视频号直播
*/
@ApiOperation(value = "小程序回调")
@RequestMapping(value = "/index", method = RequestMethod.POST)
public String webHook(@RequestBody String request) {
return wechatCallbackService.callback(request);
}
/**
* 微信推送地址验证
* @param signature 微信加密签名signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。
* @param timestamp 时间戳
* @param nonce 随机数
* @param echostr 随机字符串
*/
@RequestMapping(value = { "/index" }, method = RequestMethod.GET)
private void webHook(
@RequestParam(value = "signature", required = false) String signature,
@RequestParam(value = "timestamp", required = false) String timestamp,
@RequestParam(value = "nonce", required = false) String nonce,
@RequestParam(value = "echostr") String echostr,
HttpServletResponse response) throws IOException {
System.out.println("微信小程序回调测试成功");
PrintWriter writer = response.getWriter();
writer.print(echostr);
writer.flush();
writer.close();
}
}

View File

@@ -1,12 +1,13 @@
package com.zbkj.crmeb.wechat.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.wechat.service.WechatMediaService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.WechatMediaService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
@@ -30,15 +31,14 @@ public class WechatMediaController {
/**
* 上传
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:media:upload')")
@ApiOperation(value = "上传")
@RequestMapping(value = "/upload", method = RequestMethod.POST)
public CommonResult<Map<String, String>> upload(
@RequestParam("media") @ApiParam(name = "media", value = "待上传素材图片文件", required = true) MultipartFile file,
@RequestParam("type") @ApiParam(name = "type", value = "媒体文件类型分别有图片image、语音voice", required = true, allowableValues = "range[image,voice]") String type
) throws Exception {
) {
return CommonResult.success(wechatMediaService.upload(file, type));
}
}

View File

@@ -1,17 +1,18 @@
package com.zbkj.crmeb.wechat.controller;
package com.zbkj.admin.controller;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.zbkj.crmeb.wechat.model.WechatReply;
import com.zbkj.crmeb.wechat.request.WechatReplyRequest;
import com.zbkj.crmeb.wechat.request.WechatReplySearchRequest;
import com.zbkj.crmeb.wechat.service.WechatReplyService;
import com.zbkj.common.page.CommonPage;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.common.model.wechat.WechatReply;
import com.zbkj.common.request.WechatReplyRequest;
import com.zbkj.common.request.WechatReplySearchRequest;
import com.zbkj.service.service.WechatReplyService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -41,12 +42,11 @@ public class WechatReplyController {
* 分页显示微信关键字回复表
* @param request 搜索条件
* @param pageParamRequest 分页参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:keywords:reply:list')")
@ApiOperation(value = "分页列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
public CommonResult<CommonPage<WechatReply>> getList(@Validated WechatReplySearchRequest request, @Validated PageParamRequest pageParamRequest){
public CommonResult<CommonPage<WechatReply>> getList(@Validated WechatReplySearchRequest request, @Validated PageParamRequest pageParamRequest) {
CommonPage<WechatReply> wechatReplyCommonPage = CommonPage.restPage(wechatReplyService.getList(request, pageParamRequest));
return CommonResult.success(wechatReplyCommonPage);
}
@@ -54,16 +54,14 @@ public class WechatReplyController {
/**
* 新增微信关键字回复表
* @param wechatReplyRequest 新增参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:keywords:reply:save')")
@ApiOperation(value = "新增")
@RequestMapping(value = "/save", method = RequestMethod.POST)
public CommonResult<String> save(@RequestBody @Validated WechatReplyRequest wechatReplyRequest){
public CommonResult<String> save(@RequestBody @Validated WechatReplyRequest wechatReplyRequest) {
WechatReply wechatReply = new WechatReply();
BeanUtils.copyProperties(wechatReplyRequest, wechatReply);
if(wechatReplyService.create(wechatReply)){
if (wechatReplyService.create(wechatReply)) {
return CommonResult.success();
}else{
return CommonResult.failed();
@@ -73,66 +71,54 @@ public class WechatReplyController {
/**
* 删除微信关键字回复表
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:keywords:reply:delete')")
@ApiOperation(value = "删除")
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@RequestParam(value = "id") Integer id){
if(wechatReplyService.removeById(id)){
public CommonResult<String> delete(@RequestParam(value = "id") Integer id) {
if (wechatReplyService.removeById(id)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改微信关键字回复表
* @param id integer id
* @param wechatReplyRequest 修改参数
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:keywords:reply:update')")
@ApiOperation(value = "修改")
@RequestMapping(value = "/update", method = RequestMethod.POST)
public CommonResult<String> update(@RequestBody @Validated WechatReplyRequest wechatReplyRequest){
WechatReply wechatReply = wechatReplyService.getInfoException(wechatReplyRequest.getId(), false);
BeanUtils.copyProperties(wechatReplyRequest, wechatReply);
if(wechatReplyService.updateVo(wechatReply)){
public CommonResult<String> update(@RequestBody @Validated WechatReplyRequest wechatReplyRequest) {
if (wechatReplyService.updateReply(wechatReplyRequest)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 修改状态
* @param id integer id
* @param status boolean 状态
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:keywords:reply:status')")
@ApiOperation(value = "状态")
@RequestMapping(value = "/status", method = RequestMethod.POST)
public CommonResult<String> update(@RequestParam(value = "id") Integer id, @RequestParam(value = "status") boolean status){
WechatReply wechatReply = wechatReplyService.getInfoException(id, false);
wechatReply.setStatus(status);
if(wechatReplyService.updateVo(wechatReply)){
public CommonResult<String> update(@RequestParam(value = "id") Integer id, @RequestParam(value = "status") Boolean status) {
if (wechatReplyService.updateStatus(id, status)) {
return CommonResult.success();
}else{
return CommonResult.failed();
}
return CommonResult.failed();
}
/**
* 查询微信关键字回复表信息
* @param id Integer
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:keywords:reply:info')")
@ApiOperation(value = "详情")
@RequestMapping(value = "/info", method = RequestMethod.GET)
public CommonResult<WechatReply> info(@RequestParam(value = "id") Integer id){
public CommonResult<WechatReply> info(@RequestParam(value = "id") Integer id) {
WechatReply wechatReply = wechatReplyService.getInfo(id);
return CommonResult.success(wechatReply);
}
@@ -140,12 +126,11 @@ public class WechatReplyController {
/**
* 根据关键字查询数据
* @param keywords String 关键字
* @author Mr.Zhang
* @since 2020-04-18
*/
@PreAuthorize("hasAuthority('admin:wechat:keywords:reply:info:keywords')")
@ApiOperation(value = "根据关键字查询数据")
@RequestMapping(value = "/info/keywords", method = RequestMethod.GET)
public CommonResult<WechatReply> info(@RequestParam(value = "keywords") String keywords){
public CommonResult<WechatReply> info(@RequestParam(value = "keywords") String keywords) {
WechatReply wechatReply = wechatReplyService.getVoByKeywords(keywords);
return CommonResult.success(wechatReply);
}

View File

@@ -1,16 +1,16 @@
package com.zbkj.crmeb.wechat.controller;
package com.zbkj.admin.controller;
import com.common.CommonResult;
import com.zbkj.crmeb.wechat.service.WechatUserService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.service.service.YlyPrintService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
/**
* 微信用户表 前端控制器
* 易联云打印订单
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
@@ -23,28 +23,19 @@ import org.springframework.web.bind.annotation.*;
*/
@Slf4j
@RestController
@RequestMapping("api/admin/wechat/user")
@Api(tags = "微信开放平台 -- 微信用户")
public class WechatUserController {
@RequestMapping("api/admin/yly")
@Api(tags = "易联云 打印订单小票") //配合swagger使用
public class YlyPrintController {
@Autowired
private WechatUserService wechatUserService;
private YlyPrintService ylyPrintService;
/**
* 消息推送
* @param userId 用户id
* @param newsId 图文消息id
* @author Mr.Zhang
* @since 2020-04-11
*/
@ApiOperation(value = "消息推送")
@RequestMapping(value = "/push", method = RequestMethod.GET)
public CommonResult<Boolean> info(@RequestParam(value = "userId") String userId,
@RequestParam(value = "newsId") Integer newsId){
wechatUserService.push(userId, newsId);
@PreAuthorize("hasAuthority('admin:yly:print')")
@ApiOperation(value = "打印小票")
@RequestMapping(value = "/print/{ordid}", method = RequestMethod.GET)
public CommonResult<String> updateStatus(@PathVariable String ordid) {
ylyPrintService.YlyPrint(ordid,false);
return CommonResult.success();
}
}

View File

@@ -0,0 +1,39 @@
package com.zbkj.admin.filter;
import cn.hutool.core.util.ObjectUtil;
import com.zbkj.common.vo.LoginUserVo;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.web.authentication.WebAuthenticationDetailsSource;
import org.springframework.web.filter.OncePerRequestFilter;
import javax.annotation.Resource;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
* token过滤器 验证token有效性
*/
//@Component
public class JwtAuthenticationTokenFilter extends OncePerRequestFilter {
@Resource
private TokenComponent tokenComponent;
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
LoginUserVo loginUser = tokenComponent.getLoginUser(request);
// if (ObjectUtil.isNotNull(loginUser) && StringUtils.isNull(SecurityUtils.getAuthentication())) {
if (ObjectUtil.isNotNull(loginUser)) {
tokenComponent.verifyToken(loginUser);
UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(loginUser, null, loginUser.getAuthorities());
authenticationToken.setDetails(new WebAuthenticationDetailsSource().buildDetails(request));
// 将authentication信息放入到上下文对象中
SecurityContextHolder.getContext().setAuthentication(authenticationToken);
}
filterChain.doFilter(request, response);
}
}

View File

@@ -1,8 +1,7 @@
package com.filter;
package com.zbkj.admin.filter;
import com.utils.RequestUtil;
import org.springframework.stereotype.Component;
import com.zbkj.common.utils.RequestUtil;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
@@ -23,7 +22,7 @@ import java.nio.charset.StandardCharsets;
* +----------------------------------------------------------------------
* 返回值输出过滤器
*/
@Component
//@Component
public class ResponseFilter implements Filter {
@Override

View File

@@ -0,0 +1,46 @@
package com.zbkj.admin.filter;
import com.zbkj.common.constants.Constants;
import com.zbkj.common.utils.SpringUtil;
import com.zbkj.service.service.SystemAttachmentService;
/**
* response路径处理
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
public class ResponseRouter {
public String filter(String data, String path) {
boolean result = un().contains(path);
if (result) {
return data;
}
if (!path.contains("api/admin/") && !path.contains("api/front/")) {
return data;
}
//根据需要处理返回值
if (data.contains(Constants.UPLOAD_TYPE_IMAGE+"/") && !data.contains("data:image/png;base64")) {
data = SpringUtil.getBean(SystemAttachmentService.class).prefixImage(data);
}
// if (data.contains("file/")) { 附件也走crmebimage 目录下
// data = SpringUtil.getBean(SystemAttachmentService.class).prefixFile(data);
// }
return data;
}
public static String un() {
return "";
}
}

View File

@@ -1,4 +1,4 @@
package com.filter;
package com.zbkj.admin.filter;
import java.io.ByteArrayOutputStream;

View File

@@ -0,0 +1,137 @@
package com.zbkj.admin.filter;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.zbkj.common.constants.Constants;
import com.zbkj.common.utils.RedisUtil;
import com.zbkj.common.vo.LoginUserVo;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
/**
* token验证处理
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Component
public class TokenComponent {
@Resource
private RedisUtil redisUtil;
private static final Long MILLIS_MINUTE_TEN = 20 * 60 * 1000L;
private static final Long MILLIS_MINUTE = 60 * 1000L;
// 令牌有效期默认30分钟 todo 调试期改为5小时
// private static final int expireTime = 30;
private static final int expireTime = 5 * 60;
// Redis 存储的key
private static final String TOKEN_REDIS = "TOKEN:ADMIN:";
/**
* 获取用户身份信息
*
* @return 用户信息
*/
public LoginUserVo getLoginUser(HttpServletRequest request) {
// 获取请求携带的令牌
String token = getToken(request);
if (StrUtil.isNotEmpty(token)) {
String userKey = getTokenKey(token);
return redisUtil.get(userKey);
}
return null;
}
/**
* 设置用户身份信息
*/
public void setLoginUser(LoginUserVo loginUser) {
if (ObjectUtil.isNotNull(loginUser) && StrUtil.isNotEmpty(loginUser.getToken())) {
refreshToken(loginUser);
}
}
/**
* 删除用户身份信息
*/
public void delLoginUser(String token) {
if (StrUtil.isNotEmpty(token)) {
String userKey = getTokenKey(token);
redisUtil.delete(userKey);
}
}
/**
* 创建令牌
*
* @param loginUser 用户信息
* @return 令牌
*/
public String createToken(LoginUserVo loginUser) {
String token = UUID.randomUUID().toString().replace("-", "");
loginUser.setToken(token);
// setUserAgent(loginUser);
refreshToken(loginUser);
return token;
}
/**
* 验证令牌有效期相差不足20分钟自动刷新缓存
*
* @param loginUser LoginUserVo
*/
public void verifyToken(LoginUserVo loginUser) {
long expireTime = loginUser.getExpireTime();
long currentTime = System.currentTimeMillis();
if (expireTime - currentTime <= MILLIS_MINUTE_TEN)
{
refreshToken(loginUser);
}
}
/**
* 刷新令牌有效期
*
* @param loginUser 登录信息
*/
public void refreshToken(LoginUserVo loginUser) {
loginUser.setLoginTime(System.currentTimeMillis());
loginUser.setExpireTime(loginUser.getLoginTime() + expireTime * MILLIS_MINUTE);
// 根据uuid将loginUser缓存
String userKey = getTokenKey(loginUser.getToken());
redisUtil.set(userKey, loginUser, (long) expireTime, TimeUnit.MINUTES);
}
/**
* 获取请求token
*
* @param request HttpServletRequest
* @return token
*/
private String getToken(HttpServletRequest request) {
String token = request.getHeader(Constants.HEADER_AUTHORIZATION_KEY);
if (StrUtil.isNotEmpty(token) && token.startsWith(TOKEN_REDIS)) {
token = token.replace(TOKEN_REDIS, "");
}
return token;
}
private String getTokenKey(String uuid) {
return TOKEN_REDIS + uuid;
}
}

View File

@@ -0,0 +1,34 @@
package com.zbkj.admin.manager;
import com.alibaba.fastjson.JSONObject;
import com.zbkj.common.response.CommonResult;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.AuthenticationEntryPoint;
import org.springframework.stereotype.Component;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.Serializable;
/**
* 认证失败处理类 返回未授权
*/
@Component
public class AuthenticationEntryPointImpl implements AuthenticationEntryPoint, Serializable {
private static final long serialVersionUID = -8970718410437077606L;
@Override
public void commence(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, AuthenticationException e) {
// String msg = StrUtil.format("请求访问:{},认证失败,无法访问系统资源", httpServletRequest.getRequestURI());
httpServletResponse.setStatus(200);
httpServletResponse.setContentType("application/json");
httpServletResponse.setCharacterEncoding("utf-8");
try {
httpServletResponse.getWriter().print(JSONObject.toJSONString(CommonResult.unauthorized()));
} catch (IOException ioException) {
ioException.printStackTrace();
}
}
}

View File

@@ -0,0 +1,35 @@
package com.zbkj.admin.manager;
import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.authentication.ProviderNotFoundException;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.AuthenticationException;
import org.springframework.stereotype.Component;
import java.util.Objects;
/**
* 自定义认证管理器
* @Author 指缝de阳光
* @Date 2021/11/17 15:23
* @Version 1.0
*/
@Component
public class CusAuthenticationManager implements AuthenticationManager {
// private final CustomAuthenticationProvider customAuthenticationProvider = new CustomAuthenticationProvider();
private final CustomAuthenticationProvider customAuthenticationProvider;
public CusAuthenticationManager(CustomAuthenticationProvider customAuthenticationProvider) {
this.customAuthenticationProvider = customAuthenticationProvider;
}
@Override
public Authentication authenticate(Authentication authentication) throws AuthenticationException {
Authentication result = customAuthenticationProvider.authenticate(authentication);
if (Objects.nonNull(result)) {
return result;
}
throw new ProviderNotFoundException("Authentication failed!");
}
}

View File

@@ -0,0 +1,38 @@
package com.zbkj.admin.manager;
import com.alibaba.fastjson.JSONObject;
import com.zbkj.common.response.CommonResult;
import org.springframework.security.access.AccessDeniedException;
import org.springframework.security.web.access.AccessDeniedHandler;
import org.springframework.stereotype.Component;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.Serializable;
/**
* 自定义权限不足处理程序
*
* @Author 指缝de阳光
* @Date 2021/11/19 14:45
* @Version 1.0
*/
@Component
public class CustomAccessDeniedHandler implements AccessDeniedHandler, Serializable {
private static final long serialVersionUID = -8970718410437077606L;
@Override
public void handle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, AccessDeniedException e) throws IOException, ServletException {
httpServletResponse.setStatus(200);
httpServletResponse.setContentType("application/json");
httpServletResponse.setCharacterEncoding("utf-8");
try {
httpServletResponse.getWriter().print(JSONObject.toJSONString(CommonResult.forbidden()));
} catch (IOException ioException) {
ioException.printStackTrace();
}
}
}

View File

@@ -0,0 +1,52 @@
package com.zbkj.admin.manager;
import cn.hutool.core.util.ObjectUtil;
import com.zbkj.common.exception.CrmebException;
import com.zbkj.common.utils.CrmebUtil;
import com.zbkj.common.vo.LoginUserVo;
import com.zbkj.service.service.impl.UserDetailServiceImpl;
import org.springframework.security.authentication.AuthenticationProvider;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.AuthenticationException;
import org.springframework.stereotype.Component;
/**
* 自定义验证admin登录
*/
@Component
public class CustomAuthenticationProvider implements AuthenticationProvider {
private UserDetailServiceImpl userDetailsService;
public CustomAuthenticationProvider(UserDetailServiceImpl userDetailsService) {
this.userDetailsService = userDetailsService;
}
// private final UserDetailServiceImpl userDetailsService = new UserDetailServiceImpl();
@Override
public Authentication authenticate(Authentication authentication) throws AuthenticationException {
String name = authentication.getPrincipal().toString();
String password = authentication.getCredentials().toString();
//以下自定义方法,判断是否登录成功
LoginUserVo userDetails = (LoginUserVo) userDetailsService.loadUserByUsername(name);
if (ObjectUtil.isNull(userDetails)) {
throw new CrmebException("用户名不存在");
}
// base64加密获取真正密码
String encryptPassword = CrmebUtil.encryptPassword(password, name);
if (!userDetails.getUser().getPwd().equals(encryptPassword)) {
throw new CrmebException("账号或者密码不正确");
}
return new UsernamePasswordAuthenticationToken(userDetails, password, userDetails.getAuthorities());
}
@Override
public boolean supports(Class<?> authentication) {
//确保authentication能转成该类
return authentication.equals(UsernamePasswordAuthenticationToken.class);
}
}

View File

@@ -0,0 +1,34 @@
package com.zbkj.admin.pub;
import com.zbkj.common.constants.Constants;
import com.zbkj.service.service.SystemConfigService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* @program: crmeb
* @author: 大粽子
* @create: 2021-09-23 09:18
**/
@Slf4j
@RestController
@RequestMapping("api/public/jsconfig")
@Api(tags = "公共JS配置")
public class GetJSConfig {
@Autowired
private SystemConfigService systemConfigService;
@PreAuthorize("hasAuthority('public:jsconfig:getcrmebchatconfig')")
@ApiOperation(value = "CRMEB-chat客服统计")
@RequestMapping(value = "/getcrmebchatconfig", method = RequestMethod.GET)
public String set(){
return systemConfigService.getValueByKey(Constants.JS_CONFIG_CRMEB_CHAT_TONGJI);
}
}

View File

@@ -1,14 +1,12 @@
package com.zbkj.crmeb.pub.controller;
package com.zbkj.admin.pub;
import com.common.CommonResult;
import com.utils.CrmebUtil;
import com.utils.ImageMergeUtil;
import com.utils.vo.ImageMergeUtilVo;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.utils.ImageMergeUtil;
import com.zbkj.common.vo.ImageMergeUtilVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@@ -33,6 +31,8 @@ import java.util.Map;
@RequestMapping("api/public/qrcode")
@Api(tags = "图片操作")
public class ImageMergeController {
@PreAuthorize("hasAuthority('public:qrcode:merge:list')")
@ApiOperation(value = "合并图片返回文件")
@RequestMapping(value = "/mergeList", method = RequestMethod.POST)
public CommonResult<Map<String, String>> mergeList(@RequestBody @Validated List<ImageMergeUtilVo> list){

View File

@@ -1,6 +1,6 @@
package com.zbkj.crmeb.pub.controller;
package com.zbkj.admin.pub;
import com.zbkj.crmeb.wechatMessage.service.WeChatMessageService;
import com.zbkj.admin.service.WeChatMessageService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;

View File

@@ -1,16 +1,13 @@
package com.zbkj.crmeb.pub.controller;
package com.zbkj.admin.pub;
import com.alibaba.fastjson.JSONObject;
import com.common.CommonResult;
import com.utils.RestTemplateUtil;
import com.zbkj.crmeb.system.service.SystemAdminService;
import com.zbkj.common.response.CommonResult;
import com.zbkj.common.utils.RestTemplateUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@@ -36,16 +33,12 @@ import java.util.Map;
@RequestMapping("api/public/wechat")
@Api(tags = "企业微信消息推送")
public class WeChatPushController {
private static final Logger logger = LoggerFactory.getLogger(WeChatPushController.class);
private static String url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=";
@Resource
private RestTemplateUtil restTemplateUtil;
@Resource
private SystemAdminService systemAdminService;
/**
* 新增后台管理员表

View File

@@ -0,0 +1,51 @@
package com.zbkj.admin.service;
import com.zbkj.common.request.SystemAdminLoginRequest;
import com.zbkj.common.response.MenusResponse;
import com.zbkj.common.response.SystemAdminResponse;
import com.zbkj.common.response.SystemLoginResponse;
import java.util.List;
import java.util.Map;
/**
* 管理端登录服务
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
public interface AdminLoginService {
/**
* PC登录
*/
SystemLoginResponse login(SystemAdminLoginRequest request, String ip);
/**
* 用户登出
*/
Boolean logout();
/**
* 获取登录页图片
* @return Map
*/
Map<String, Object> getLoginPic();
/**
* 获取管理员可访问目录
* @return List<MenusResponse>
*/
List<MenusResponse> getMenus();
/**
* 根据Token获取对应用户信息
*/
SystemAdminResponse getInfoByToken();
}

View File

@@ -1,6 +1,7 @@
package com.zbkj.crmeb.validatecode.service;
package com.zbkj.admin.service;
import com.zbkj.crmeb.validatecode.model.ValidateCode;
import com.zbkj.admin.vo.ValidateCode;
import java.util.HashMap;
@@ -18,7 +19,14 @@ import java.util.HashMap;
*/
public interface ValidateCodeService {
/**
* 获取图片验证码
* @return CommonResult
*/
ValidateCode get();
boolean check(ValidateCode validateCode);
/**
* 验证验证码
*/
Boolean check(String key, String code);
}

View File

@@ -1,4 +1,4 @@
package com.zbkj.crmeb.wechatMessage.service;
package com.zbkj.admin.service;
import javax.servlet.http.HttpServletRequest;

View File

@@ -0,0 +1,187 @@
package com.zbkj.admin.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.zbkj.admin.filter.TokenComponent;
import com.zbkj.admin.service.AdminLoginService;
import com.zbkj.admin.service.ValidateCodeService;
import com.zbkj.common.constants.SysConfigConstants;
import com.zbkj.common.constants.SysGroupDataConstants;
import com.zbkj.common.exception.CrmebException;
import com.zbkj.common.model.system.SystemAdmin;
import com.zbkj.common.model.system.SystemMenu;
import com.zbkj.common.model.system.SystemPermissions;
import com.zbkj.common.request.SystemAdminLoginRequest;
import com.zbkj.common.response.MenusResponse;
import com.zbkj.common.response.SystemAdminResponse;
import com.zbkj.common.response.SystemGroupDataAdminLoginBannerResponse;
import com.zbkj.common.response.SystemLoginResponse;
import com.zbkj.common.utils.SecurityUtil;
import com.zbkj.common.vo.LoginUserVo;
import com.zbkj.common.vo.MenuTree;
import com.zbkj.service.service.SystemAdminService;
import com.zbkj.service.service.SystemConfigService;
import com.zbkj.service.service.SystemGroupDataService;
import com.zbkj.service.service.SystemMenuService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.authentication.AuthenticationManager;
import org.springframework.security.authentication.BadCredentialsException;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.AuthenticationException;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* 管理端登录服务实现类
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
* | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
* +----------------------------------------------------------------------
* | Licensed CRMEB并不是自由软件未经许可不能去掉CRMEB相关版权
* +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com>
* +----------------------------------------------------------------------
*/
@Service
public class AdminLoginServiceImpl implements AdminLoginService {
@Resource
private TokenComponent tokenComponent;
@Resource
private AuthenticationManager authenticationManager;
@Autowired
private SystemAdminService systemAdminService;
@Autowired
private ValidateCodeService validateCodeService;
@Autowired
private SystemConfigService systemConfigService;
@Autowired
private SystemGroupDataService systemGroupDataService;
@Autowired
private SystemMenuService systemMenuService;
/**
* PC登录
*/
@Override
public SystemLoginResponse login(SystemAdminLoginRequest systemAdminLoginRequest, String ip) {
// 判断验证码
boolean codeCheckResult = validateCodeService.check(systemAdminLoginRequest.getKey(), systemAdminLoginRequest.getCode());
if (!codeCheckResult) throw new CrmebException("验证码不正确");
// 用户验证
Authentication authentication = null;
// 该方法会去调用UserDetailsServiceImpl.loadUserByUsername
try {
authentication = authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(systemAdminLoginRequest.getAccount(), systemAdminLoginRequest.getPwd()));
} catch (AuthenticationException e) {
if (e instanceof BadCredentialsException) {
throw new CrmebException("用户不存在或密码错误");
}
throw new CrmebException(e.getMessage());
}
LoginUserVo loginUser = (LoginUserVo) authentication.getPrincipal();
SystemAdmin systemAdmin = loginUser.getUser();
String token = tokenComponent.createToken(loginUser);
SystemLoginResponse systemAdminResponse = new SystemLoginResponse();
systemAdminResponse.setToken(token);
BeanUtils.copyProperties(systemAdmin, systemAdminResponse);
//更新最后登录信息
systemAdmin.setLoginCount(systemAdmin.getLoginCount() + 1);
systemAdmin.setLastIp(ip);
systemAdminService.updateById(systemAdmin);
return systemAdminResponse;
}
/**
* 用户登出
*/
@Override
public Boolean logout() {
LoginUserVo loginUserVo = SecurityUtil.getLoginUserVo();
if (ObjectUtil.isNotNull(loginUserVo)) {
// 删除用户缓存记录
tokenComponent.delLoginUser(loginUserVo.getToken());
}
return true;
}
/**
* 获取登录页图片
* @return Map
*/
@Override
public Map<String, Object> getLoginPic() {
Map<String, Object> map = new HashMap<>();
//背景图
map.put("backgroundImage", systemConfigService.getValueByKey(SysConfigConstants.CONFIG_KEY_ADMIN_LOGIN_BACKGROUND_IMAGE));
//logo
map.put("logo", systemConfigService.getValueByKey(SysConfigConstants.CONFIG_KEY_ADMIN_LOGIN_LOGO_LEFT_TOP));
map.put("loginLogo", systemConfigService.getValueByKey(SysConfigConstants.CONFIG_KEY_ADMIN_LOGIN_LOGO_LOGIN));
//轮播图
List<SystemGroupDataAdminLoginBannerResponse> bannerList = systemGroupDataService.getListByGid(SysGroupDataConstants.GROUP_DATA_ID_ADMIN_LOGIN_BANNER_IMAGE_LIST, SystemGroupDataAdminLoginBannerResponse.class);
map.put("banner", bannerList);
return map;
}
/**
* 获取管理员可访问目录
* @return List<MenusResponse>
*/
@Override
public List<MenusResponse> getMenus() {
LoginUserVo loginUserVo = SecurityUtil.getLoginUserVo();
List<String> roleList = Stream.of(loginUserVo.getUser().getRoles().split(",")).collect(Collectors.toList());
List<SystemMenu> menuList;
if (roleList.contains("1")) {// 超管
menuList = systemMenuService.findAllCatalogue();
} else {
menuList = systemMenuService.getMenusByUserId(loginUserVo.getUser().getId());
}
// 组装前端对象
List<MenusResponse> responseList = menuList.stream().map(e -> {
MenusResponse response = new MenusResponse();
BeanUtils.copyProperties(e, response);
return response;
}).collect(Collectors.toList());
MenuTree menuTree = new MenuTree(responseList);
return menuTree.buildTree();
}
/**
* 根据Token获取对应用户信息
*/
@Override
public SystemAdminResponse getInfoByToken() {
LoginUserVo loginUserVo = SecurityUtil.getLoginUserVo();
SystemAdmin systemAdmin = loginUserVo.getUser();
SystemAdminResponse systemAdminResponse = new SystemAdminResponse();
BeanUtils.copyProperties(systemAdmin, systemAdminResponse);
List<String> roleList = Stream.of(systemAdmin.getRoles().split(",")).collect(Collectors.toList());
List<String> permList = CollUtil.newArrayList();
if (roleList.contains("1")) {
permList.add("*:*:*");
} else {
permList = loginUserVo.getPermissions().stream().map(SystemPermissions::getPath).collect(Collectors.toList());
}
systemAdminResponse.setPermissionsList(permList);
return systemAdminResponse;
}
}

View File

@@ -1,12 +1,13 @@
package com.zbkj.crmeb.validatecode.service.impl;
package com.zbkj.admin.service.impl;
import com.constants.Constants;
import com.exception.CrmebException;
import com.utils.CrmebUtil;
import com.utils.RedisUtil;
import com.utils.ValidateCodeUtil;
import com.zbkj.crmeb.validatecode.model.ValidateCode;
import com.zbkj.crmeb.validatecode.service.ValidateCodeService;
import cn.hutool.core.util.ObjectUtil;
import com.zbkj.common.constants.Constants;
import com.zbkj.common.exception.CrmebException;
import com.zbkj.common.utils.CrmebUtil;
import com.zbkj.common.utils.RedisUtil;
import com.zbkj.common.utils.ValidateCodeUtil;
import com.zbkj.admin.service.ValidateCodeService;
import com.zbkj.admin.vo.ValidateCode;
import org.apache.commons.codec.digest.DigestUtils;
import org.springframework.stereotype.Service;
@@ -29,24 +30,22 @@ import java.util.concurrent.TimeUnit;
public class ValidateCodeServiceImpl implements ValidateCodeService {
@Resource
private RedisUtil redisUtil;
private RedisUtil redisAdminUtil;
/**
* 获取验证码信息
* @author Mr.Zhang
* @since 2020-04-16
*/
@Override
public ValidateCode get() {
ValidateCodeUtil.Validate randomCode = ValidateCodeUtil.getRandomCode();//直接调用静态方法返回验证码对象
if(randomCode == null){
if (ObjectUtil.isNull(randomCode)) {
return null;
}
String value = randomCode.getValue().toLowerCase();
String md5Key = DigestUtils.md5Hex(value);
String redisKey = getRedisKey(md5Key);
redisUtil.set(redisKey, value, 5L, TimeUnit.MINUTES); //5分钟过期
redisAdminUtil.set(redisKey, value, 5L, TimeUnit.MINUTES); //5分钟过期
String base64Str = randomCode.getBase64Str();
return new ValidateCode(md5Key, CrmebUtil.getBase64Image(base64Str));
}
@@ -54,29 +53,23 @@ public class ValidateCodeServiceImpl implements ValidateCodeService {
/**
* 获取redis key
* @param md5Key value的md5加密值
* @author Mr.Zhang
* @since 2020-04-16
*/
public String getRedisKey(String md5Key){
public String getRedisKey(String md5Key) {
return Constants.VALIDATE_REDIS_KEY_PREFIX + md5Key;
}
/**
* 验证
* @param validateCode
* @author Mr.Zhang
* @since 2020-04-16
*/
public boolean check(ValidateCode validateCode){
if(!redisUtil.exists(getRedisKey(validateCode.getKey()))) throw new CrmebException("验证码错误");
Object redisValue = redisUtil.get(getRedisKey(validateCode.getKey()));
if(!redisValue.equals(validateCode.getCode().toLowerCase())){
public Boolean check(String key, String code) {
if (!redisAdminUtil.exists(getRedisKey(key))) {
throw new CrmebException("验证码错误");
}
Object redisValue = redisAdminUtil.get(getRedisKey(key));
if (ObjectUtil.isNull(redisValue)) {
return false;
}
return true;
return redisValue.equals(code.toLowerCase());
}
public static String st = "fmZc8AgVI3jwYdL+RRLyL5e9Yl6SzD92";
public static String sk = "0b7…*#~Nel4MGKdoEaRagoxQ";
}

View File

@@ -1,18 +1,18 @@
package com.zbkj.crmeb.wechatMessage.service.impl;
package com.zbkj.admin.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.constants.WeChatConstants;
import com.utils.DateUtil;
import com.utils.RedisUtil;
import com.utils.XmlUtil;
import com.zbkj.crmeb.article.model.Article;
import com.zbkj.crmeb.article.service.ArticleService;
import com.zbkj.crmeb.system.service.SystemAttachmentService;
import com.zbkj.crmeb.user.service.UserTokenService;
import com.zbkj.crmeb.wechat.model.WechatReply;
import com.zbkj.crmeb.wechat.service.WechatReplyService;
import com.zbkj.crmeb.wechatMessage.service.WeChatMessageService;
import com.zbkj.crmeb.wechatMessage.vo.*;
import com.zbkj.common.constants.WeChatConstants;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.common.utils.RedisUtil;
import com.zbkj.common.utils.XmlUtil;
import com.zbkj.common.model.article.Article;
import com.zbkj.admin.service.WeChatMessageService;
import com.zbkj.admin.vo.*;
import com.zbkj.common.model.wechat.WechatReply;
import com.zbkj.service.service.ArticleService;
import com.zbkj.service.service.SystemAttachmentService;
import com.zbkj.service.service.UserTokenService;
import com.zbkj.service.service.WechatReplyService;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.bargain;
package com.zbkj.admin.task.bargain;
import com.utils.DateUtil;
import com.zbkj.crmeb.bargain.service.StoreBargainService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.StoreBargainService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -33,7 +33,7 @@ public class BargainStopChangeTask {
@Autowired
private StoreBargainService storeBargainService;
@Scheduled(cron = "0 0 0 */1 * ?") //每天0点执行
@Scheduled(cron = "0 0 0 */1 * ?") //5秒钟同步一次数据
public void init(){
logger.info("---BargainStopChangeTask------bargain stop status change task: Execution Time - {}", DateUtil.nowDateTime());
try {

View File

@@ -1,9 +1,9 @@
package com.zbkj.crmeb.task.brokerage;
package com.zbkj.admin.task.brokerage;
import com.utils.DateUtil;
import com.zbkj.crmeb.task.order.OrderReceiptTask;
import com.zbkj.crmeb.user.service.UserBrokerageRecordService;
import com.zbkj.admin.task.order.OrderReceiptTask;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.UserBrokerageRecordService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -35,14 +35,14 @@ public class BrokerageFrozenTask {
@Autowired
private UserBrokerageRecordService userBrokerageRecordService;
// @Scheduled(fixedDelay = 1000 * 60 * 60L) //1小时同步一次数据
@Scheduled(fixedDelay = 1000 * 60L) //1小时同步一次数据
// @Scheduled(fixedDelay = 1000 * 60 * 60L) //1小时同步一次数据
@Scheduled(fixedDelay = 1000 * 60L) //1分钟同步一次数据
public void init(){
logger.info("---BrokerageFrozenTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
userBrokerageRecordService.brokerageThaw();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("BrokerageFrozenTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,9 +1,7 @@
package com.zbkj.crmeb.task.coupon;
package com.zbkj.admin.task.coupon;
import com.utils.DateUtil;
import com.zbkj.crmeb.marketing.service.StoreCouponUserService;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.crmeb.task.order.OrderCancelTask;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.StoreCouponUserService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -40,11 +38,11 @@ public class CouponOverdueTask {
logger.info("---CouponOverdueTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
couponUserService.overdueTask();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("CouponOverdueTask.task" + " | msg : " + e.getMessage());
}
}
}
}

View File

@@ -1,10 +1,8 @@
package com.zbkj.crmeb.task.integral;
package com.zbkj.admin.task.integral;
import com.utils.DateUtil;
import com.zbkj.crmeb.task.order.OrderReceiptTask;
import com.zbkj.crmeb.user.service.UserBrokerageRecordService;
import com.zbkj.crmeb.user.service.UserIntegralRecordService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.UserIntegralRecordService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -37,11 +35,11 @@ public class IntegralFrozenTask {
private UserIntegralRecordService userIntegralRecordService;
@Scheduled(fixedDelay = 1000 * 60L) //1分钟同步一次数据
public void init(){
public void init() {
logger.info("---IntegralFrozenTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
userIntegralRecordService.integralThaw();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("IntegralFrozenTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.log;
package com.zbkj.admin.task.log;
import com.utils.DateUtil;
import com.zbkj.crmeb.log.service.StoreProductLogService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.WechatExceptionsService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -11,7 +11,7 @@ import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
* 日志记录task
* 自动删除不需要的历史日志
* +----------------------------------------------------------------------
* | CRMEB [ CRMEB赋能开发者助力企业发展 ]
* +----------------------------------------------------------------------
@@ -25,24 +25,27 @@ import org.springframework.stereotype.Component;
@Component
@Configuration //读取配置
@EnableScheduling // 2.开启定时任务
public class ProductLogAddTask {
public class AutoDeleteLogTask {
//日志
private static final Logger logger = LoggerFactory.getLogger(ProductLogAddTask.class);
private static final Logger logger = LoggerFactory.getLogger(AutoDeleteLogTask.class);
@Autowired
private StoreProductLogService logService;
private WechatExceptionsService wechatExceptionsService;
@Scheduled(fixedDelay = 1000 * 60L) // 一分钟同步一次数据
public void init(){
logger.info("---ProductLogAddTask------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDate());
/**
* 每天0点执行
*/
@Scheduled(cron = "0 0 0 */1 * ?")
public void autoDeleteLog() {
// cron : 0 0 0 */1 * ?
logger.info("---AutoDeleteLogTask------bargain stop status change task: Execution Time - {}", DateUtil.nowDateTime());
try {
logService.addLogTask();
}catch (Exception e){
wechatExceptionsService.autoDeleteLog();
} catch (Exception e) {
e.printStackTrace();
logger.error("ProductLogAddTask" + " | msg : " + e.getMessage());
logger.error("AutoDeleteLogTask" + " | msg : " + e.getMessage());
}
}
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.order;
package com.zbkj.admin.task.order;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.OrderTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -33,12 +33,12 @@ public class OrderAutoCancelTask {
private OrderTaskService orderTaskService;
@Scheduled(fixedDelay = 1000 * 60L) //1分钟同步一次数据
public void init(){
public void init() {
logger.info("---OrderAutoCancelTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
orderTaskService.autoCancel();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("OrderAutoCancelTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.order;
package com.zbkj.admin.task.order;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.OrderTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -34,11 +34,11 @@ public class OrderAutoCompleteTask {
private OrderTaskService orderTaskService;
@Scheduled(fixedDelay = 1000 * 60L * 60) //每小时同步一次数据
public void init(){
public void init() {
logger.info("---OrderAutoCompleteTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
orderTaskService.autoComplete();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("OrderAutoCompleteTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.order;
package com.zbkj.admin.task.order;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.OrderTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -33,12 +33,12 @@ public class OrderCancelTask {
private OrderTaskService orderTaskService;
@Scheduled(fixedDelay = 1000 * 60L) //1分钟同步一次数据
public void init(){
public void init() {
logger.info("---OrderCancelTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
orderTaskService.cancelByUser();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("OrderCancelTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.order;
package com.zbkj.admin.task.order;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.OrderTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -33,12 +33,12 @@ public class OrderCompleteTask {
private OrderTaskService orderTaskService;
@Scheduled(fixedDelay = 1000 * 60L) //1分钟同步一次数据
public void init(){
public void init() {
logger.info("---OrderCompleteTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
orderTaskService.complete();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("OrderCompleteTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.order;
package com.zbkj.admin.task.order;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.OrderTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -34,11 +34,11 @@ public class OrderPaySuccessTask {
private OrderTaskService orderTaskService;
@Scheduled(fixedDelay = 1000 * 60L) //1分钟同步一次数据
public void init(){
public void init() {
logger.info("---OrderPaySuccessTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
orderTaskService.orderPaySuccessAfter();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("OrderPaySuccessTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.order;
package com.zbkj.admin.task.order;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.OrderTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -32,12 +32,12 @@ public class OrderReceiptTask {
private OrderTaskService orderTaskService;
@Scheduled(fixedDelay = 1000 * 60L) //1分钟同步一次数据
public void init(){
public void init() {
logger.info("---OrderReceiptTask task------produce Data with fixed rate task: Execution Time - {}", DateUtil.nowDateTime());
try {
orderTaskService.orderReceiving();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("OrderReceiptTask.task" + " | msg : " + e.getMessage());
}

View File

@@ -1,7 +1,7 @@
package com.zbkj.crmeb.task.order;
package com.zbkj.admin.task.order;
import com.utils.DateUtil;
import com.zbkj.crmeb.store.service.OrderTaskService;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.OrderTaskService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -38,10 +38,10 @@ public class OrderRefundTask {
try {
orderTaskService.refundApply();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("OrderRefundTask.task" + " | msg : " + e.getMessage());
}
}
}
}

View File

@@ -1,8 +1,6 @@
package com.zbkj.crmeb.task.pink;
import com.utils.DateUtil;
import com.zbkj.crmeb.combination.model.StorePink;
import com.zbkj.crmeb.combination.service.StoreCombinationService;
import com.zbkj.crmeb.combination.service.StorePinkService;
package com.zbkj.admin.task.pink;
import com.zbkj.common.utils.DateUtil;
import com.zbkj.service.service.StorePinkService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -26,10 +24,10 @@ import org.springframework.stereotype.Component;
@Component
@Configuration //读取配置
@EnableScheduling // 2.开启定时任务
public class PinkStatusChange {
public class PinkStatusChangeTask {
//日志
private static final Logger logger = LoggerFactory.getLogger(PinkStatusChange.class);
private static final Logger logger = LoggerFactory.getLogger(PinkStatusChangeTask.class);
@Autowired
private StorePinkService storePinkService;
@@ -39,7 +37,7 @@ public class PinkStatusChange {
logger.info("---PinkStatusChange------bargain stop status change task: Execution Time - {}", DateUtil.nowDateTime());
try {
storePinkService.detectionStatus();
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
logger.error("PinkStatusChange" + " | msg : " + e.getMessage());
}

Some files were not shown because too many files have changed in this diff Show More