Merge remote-tracking branch 'remotes/origin/dev' into test

# Conflicts:
#	modules/i3plus-core-api/i3plus-core-api.iml
#	modules/i3plus-core-apiservice/i3plus-core-apiservice.iml
#	modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java
yun-zuoyi
yunhao.wang 6 years ago
commit 034e3b77a1

8
.gitignore vendored

@ -7,8 +7,8 @@ out
gen
target
.idea
.iml
.jar
.class
*.iml
*.jar
*.class
.md
.log
*.log

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

@ -1,96 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="Spring" name="Spring">
<configuration />
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="i3plus-pojo-platform" />
<orderEntry type="module" module-name="i3plus-pojo-base" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.8.1" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.8" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-jpa:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.0.7.RELEASE" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.19" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.8.13" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:2.7.9" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.2.17.Final" level="project" />
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.2.Final" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.2.Final" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.22.0-GA" level="project" />
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
<orderEntry type="library" name="Maven: org.jboss:jandex:2.0.3.Final" level="project" />
<orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" />
<orderEntry type="library" name="Maven: javax.transaction:javax.transaction-api:1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-jpa:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-orm:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aspects:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-mongodb:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.mongodb:mongodb-driver:3.6.4" level="project" />
<orderEntry type="library" name="Maven: org.mongodb:bson:3.6.4" level="project" />
<orderEntry type="library" name="Maven: org.mongodb:mongodb-driver-core:3.6.4" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-mongodb:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.20" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.20" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-core:2.9.2" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.7.11" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.9.2" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:20.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.3.4" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.25" level="project" />
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" level="project" />
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.16.22" level="project" />
<orderEntry type="module" module-name="i3plus-pojo-mes" />
<orderEntry type="module" module-name="i3plus-pojo-model" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.6" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.9.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.6" level="project" />
<orderEntry type="module" module-name="i3plus-pojo-report" />
<orderEntry type="module" module-name="i3plus-pojo-form" />
<orderEntry type="module" module-name="i3plus-pojo-wms" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-core:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-lang:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-cache:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-hash:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-core:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-cipher:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-core:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-ogdl:1.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.3" level="project" />
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-event:1.4.0" level="project" />
</component>
</module>

@ -0,0 +1,46 @@
package cn.estsh.i3plus.core.api.iservice.busi;
import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @Date : 2018-10-25 17:10
* @Modify :
**/
public interface ISysFileAttachService {
/**
*
* @param sysFileAttach
* @return
*/
@ApiOperation(value = "添加附件信息")
SysFileAttach insertSysFileAttach(SysFileAttach sysFileAttach);
/**
* id
* @param id id
*/
@ApiOperation(value = "根据id删除附件信息")
void deleteSysFileAttachById(Long id);
/**
* RefId
* @param refId id
*/
@ApiOperation(value = "根据id删除附件信息")
List<SysFileAttach> findSysFileAttachByRefId(Long refId);
/**
* RefId
* @param refId id
*/
@ApiOperation(value = "根据id删除附件信息")
void deleteSysFileAttachByRefId(Long refId);
}

@ -3,6 +3,7 @@ package cn.estsh.i3plus.core.api.iservice.busi;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.model.platform.LabelTemplateModel;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplate;
import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplateParam;
import io.swagger.annotations.ApiOperation;
@ -72,4 +73,13 @@ public interface ISysLabelTemplateService {
*/
@ApiOperation(value = "根据模板编号查询模板信息")
LabelTemplateModel getLabelTemplateInfoById(String labelTemplateId);
/**
*
* @param id ID
* @param status
* @param user
*/
@ApiOperation(value = "修改打印模板状态",notes = "修改打印模板状态")
void updateSysLabelTemplateStatus(Long id, int status, SessionUser user);
}

@ -24,6 +24,20 @@ public interface ISysToolService {
SysTool insertSysTool(SysTool tool);
/**
*
* @param tool
*/
@ApiOperation(value = "保存硬件信息")
SysTool saveSysTool(SysTool tool);
/**
*
* @param tool
*/
@ApiOperation(value = "保存硬件信息")
SysTool insertTestSysTool(SysTool tool,Boolean autoFill);
/**
*
* @param tool
*/

@ -227,4 +227,12 @@ public interface ISysUserService {
*/
@ApiOperation(value = "封装用户信息",notes = "封装登录完成后的用户信息(角色、权限、部门、组织、岗位)")
SessionUser packSessionUser(SessionUser sessionUser, SysUser user, Integer userType, String languageCode);
/**
* id
* @param ids id
* @return
*/
@ApiOperation(value = "根据id查询用户信息")
List<SysUser> findSysUserByIds(Long[] ids);
}

@ -1,299 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="Spring" name="Spring">
<configuration />
</facet>
<facet type="web" name="Web">
<configuration>
<webroots />
<sourceRoots>
<root url="file://$MODULE_DIR$/src/main/java" />
<root url="file://$MODULE_DIR$/src/main/resources" />
</sourceRoots>
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/target/classes" />
<output-test url="file://$MODULE_DIR$/target/test-classes" />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="i3plus-icloud-core" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-openfeign:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-context:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-rsa:1.0.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.bouncycastle:bcpkix-jdk15on:1.56" level="project" />
<orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.56" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-openfeign-core:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-commons:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-crypto:5.0.6.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign:feign-core:9.5.1" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign:feign-slf4j:9.5.1" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign:feign-hystrix:9.5.1" level="project" />
<orderEntry type="library" name="Maven: com.netflix.archaius:archaius-core:0.6.6" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.google.code.findbugs:annotations:2.0.0" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign:feign-java8:9.5.1" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-ribbon:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon:2.2.5" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.ribbon:ribbon-transport:2.2.5" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty-contexts:0.4.9" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty-servo:0.4.9" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: javax.inject:javax.inject:1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty:0.4.9" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: io.netty:netty-codec-http:4.1.25.Final" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: io.netty:netty-transport-native-epoll:4.1.25.Final" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: io.netty:netty-transport-native-unix-common:4.1.25.Final" level="project" />
<orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-core:2.2.5" level="project" />
<orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
<orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-httpclient:2.2.5" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.netflix-commons:netflix-commons-util:0.1.1" level="project" />
<orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-loadbalancer:2.2.5" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.netflix-commons:netflix-statistics:0.1.1" level="project" />
<orderEntry type="library" name="Maven: io.reactivex:rxjava:1.3.8" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-archaius:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-archaius:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: commons-configuration:commons-configuration:1.8" level="project" />
<orderEntry type="module" module-name="i3plus-icloud-wms" />
<orderEntry type="module" module-name="i3plus-pojo-platform" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-jpa:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.8.13" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:2.7.9" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.2.17.Final" level="project" />
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.2.Final" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.2.Final" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.22.0-GA" level="project" />
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
<orderEntry type="library" name="Maven: org.jboss:jandex:2.0.3.Final" level="project" />
<orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.0.1.Final" level="project" />
<orderEntry type="library" name="Maven: javax.transaction:javax.transaction-api:1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-jpa:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-orm:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aspects:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-mongodb:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.mongodb:mongodb-driver:3.6.4" level="project" />
<orderEntry type="library" name="Maven: org.mongodb:bson:3.6.4" level="project" />
<orderEntry type="library" name="Maven: org.mongodb:mongodb-driver-core:3.6.4" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-mongodb:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.20" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.20" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-core:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.9.2" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.9.2" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:20.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.3.4" level="project" />
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" level="project" />
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.16.22" level="project" />
<orderEntry type="module" module-name="i3plus-pojo-model" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.6" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.9.0" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.6" level="project" />
<orderEntry type="module" module-name="i3plus-pojo-report" />
<orderEntry type="module" module-name="i3plus-pojo-form" />
<orderEntry type="module" module-name="i3plus-pojo-wms" />
<orderEntry type="module" module-name="i3plus-pojo-base" />
<orderEntry type="module" module-name="i3plus-core-api" />
<orderEntry type="library" name="Maven: impp.framework:impp-framework-boot:1.0-TEST-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.6" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.6" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.9.6" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:8.5.31" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.0.10.Final" level="project" />
<orderEntry type="library" name="Maven: javax.validation:validation-api:2.0.1.Final" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-log4j2:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-slf4j-impl:2.10.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.10.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-core:2.10.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-jul:2.10.0" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.25" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-websocket:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-redis:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.0.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.lettuce:lettuce-core:5.0.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.1.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-common:4.1.25.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-transport:4.1.25.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-buffer:4.1.25.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.25.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-handler:4.1.25.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-codec:4.1.25.Final" level="project" />
<orderEntry type="library" name="Maven: redis.clients:jedis:2.9.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-pool2:2.5.0" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-amqp:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-messaging:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.amqp:spring-rabbit:2.0.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.amqp:spring-amqp:2.0.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.rabbitmq:amqp-client:5.1.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework.retry:spring-retry:1.2.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.csource:fastdfs-client-java:1.27" level="project" />
<orderEntry type="library" name="Maven: org.quartz-scheduler:quartz:2.3.0" level="project" />
<orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.11" level="project" />
<orderEntry type="library" name="Maven: org.quartz-scheduler:quartz-jobs:2.3.0" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-core:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-eureka-client:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.netflix.eureka:eureka-client:1.9.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.codehaus.jettison:jettison:1.3.7" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: stax:stax-api:1.0.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.netflix-commons:netflix-eventbus:0.3.0" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.netflix-commons:netflix-infix:0.3.0" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: commons-jxpath:commons-jxpath:1.3" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: joda-time:joda-time:2.9.9" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.antlr:antlr-runtime:3.4" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.antlr:stringtemplate:3.2.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.google.code.gson:gson:2.8.5" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.apache.commons:commons-math:2.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: javax.ws.rs:jsr311-api:1.1.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.servo:servo-core:0.12.21" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-core:1.19.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-client:1.19.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey.contribs:jersey-apache-client4:1.19.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.google.inject:guice:4.1.0" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: aopalliance:aopalliance:1.0" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.github.vlsi.compactmap:compactmap:1.2.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.github.andrewoma.dexx:dexx-collections:0.2" level="project" />
<orderEntry type="library" name="Maven: com.netflix.eureka:eureka-core:1.9.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.codehaus.woodstox:woodstox-core-asl:4.4.1" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: javax.xml.stream:stax-api:1.0-2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.codehaus.woodstox:stax2-api:3.1.4" level="project" />
<orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-eureka:2.2.5" level="project" />
<orderEntry type="library" name="Maven: com.thoughtworks.xstream:xstream:1.4.10" level="project" />
<orderEntry type="library" name="Maven: xmlpull:xmlpull:1.1.3.1" level="project" />
<orderEntry type="library" name="Maven: xpp3:xpp3_min:1.1.4c" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-actuator:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator-autoconfigure:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.micrometer:micrometer-core:1.0.5" level="project" />
<orderEntry type="library" name="Maven: org.hdrhistogram:HdrHistogram:2.1.10" level="project" />
<orderEntry type="library" name="Maven: org.latencyutils:LatencyUtils:2.0.3" level="project" />
<orderEntry type="library" name="Maven: net.bull.javamelody:javamelody-spring-boot-starter:1.76.0" level="project" />
<orderEntry type="library" name="Maven: net.bull.javamelody:javamelody-core:1.76.0" level="project" />
<orderEntry type="library" name="Maven: org.jrobin:jrobin:1.5.9" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-hystrix:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-ribbon:2.0.0.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.netflix.hystrix:hystrix-core:1.5.12" level="project" />
<orderEntry type="library" name="Maven: com.netflix.hystrix:hystrix-serialization:1.5.12" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.fasterxml.jackson.module:jackson-module-afterburner:2.9.6" level="project" />
<orderEntry type="library" name="Maven: com.netflix.hystrix:hystrix-metrics-event-stream:1.5.12" level="project" />
<orderEntry type="library" name="Maven: com.netflix.hystrix:hystrix-javanica:1.5.12" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
<orderEntry type="library" name="Maven: io.reactivex:rxjava-reactive-streams:1.2.1" level="project" />
<orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.2" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-zipkin:2.0.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-sleuth:2.0.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-sleuth-core:2.0.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.aspectj:aspectjrt:1.8.13" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-context-log4j2:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-spring-web:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-http:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-spring-rabbit:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-kafka-clients:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-httpclient:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-httpasyncclient:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-spring-webmvc:5.4.3" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-servlet:5.4.3" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-sleuth-zipkin:2.0.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.zipkin2:zipkin:2.11.7" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.reporter2:zipkin-reporter:2.7.10" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.reporter2:zipkin-sender-kafka11:2.7.10" level="project" />
<orderEntry type="library" name="Maven: io.zipkin.reporter2:zipkin-sender-amqp-client:2.7.10" level="project" />
<orderEntry type="module" module-name="i3plus-platform-common" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:8.5.31" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat:tomcat-annotations-api:8.5.31" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.5" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.9" level="project" />
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.39" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-jasper:8.5.31" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:8.5.31" level="project" />
<orderEntry type="library" name="Maven: org.eclipse.jdt:ecj:3.12.3" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.8.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-core:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-lang:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-cache:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-hash:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-core:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-cipher:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-core:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-ogdl:1.4.0" level="project" />
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.3" level="project" />
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-event:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-spring:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-web:1.4.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-ehcache:1.4.0" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.8" level="project" />
<orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.11" level="project" />
<orderEntry type="module" module-name="i3plus-pojo-mes" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.25" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.0.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.19" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.0.3.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.0.3.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.9.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-core:2.15.0" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.7.11" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy-agent:1.7.11" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:2.6" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-library:1.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.0.7.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.0.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.0.7.RELEASE" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.5.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
<orderEntry type="library" name="Maven: javax.mail:mail:1.4.7" level="project" />
<orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" />
<orderEntry type="library" name="Maven: org.jdom:jdom2:2.0.6" level="project" />
<orderEntry type="library" name="Maven: jaxen:jaxen:1.1.6" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi:4.0.1" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.11" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math3:3.6.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:4.0.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:4.0.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:3.0.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-compress:1.18" level="project" />
<orderEntry type="library" name="Maven: com.github.virtuald:curvesapi:1.05" level="project" />
</component>
</module>

@ -6,11 +6,13 @@ import cn.estsh.i3plus.pojo.base.bean.BaseResultBean;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
@ -82,4 +84,11 @@ public class DemoDdlPackController {
.setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultList(list);
}
@GetMapping(value="/testpager")
@ApiOperation(value="ddl测试分页")
public BaseResultBean testDdlPager(SysUser user,Pager pager){
ListPager<SysUser> listPager = testService.querySysUserByPager(user,pager);
return ResultBean.success("操作成功").setListPager(listPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}
}

@ -4,17 +4,22 @@ import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService;
import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginService;
import cn.estsh.i3plus.core.api.iservice.busi.*;
import cn.estsh.i3plus.platform.common.tool.ServletRequestTool;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysDictionary;
import cn.estsh.i3plus.pojo.platform.bean.SysFile;
import cn.estsh.i3plus.pojo.platform.bean.SysLogUserLogin;
import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.fastdfs.FastDFSClient;
import cn.estsh.impp.framework.boot.util.ImppRedis;
import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
@ -24,10 +29,7 @@ import org.apache.shiro.authc.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@ -63,6 +65,15 @@ public class WhiteController extends CoreBaseController {
@Autowired
private ISystemInitService systemInitService;
@Autowired
private ISysFileService sysFileService;
@Autowired
private ISysDictionaryService dictionaryService;
@Autowired
private FastDFSClient dfsClient;
@Resource(name="redisRes")
private ImppRedis redisRes;
@ -109,7 +120,11 @@ public class WhiteController extends CoreBaseController {
logout();
SessionUser user = userService.queryUserLogin(loginName,loginPwd.trim(),languageCode);
// 去除前后空格
loginName = loginName.trim();
loginPwd = loginPwd.trim();
SessionUser user = userService.queryUserLogin(loginName,loginPwd,languageCode);
String redisKey = CommonConstWords.USER_LOGIN_ERROR + "_" + user.getUser().getId();
redisCore.deleteKey(redisKey);
@ -215,4 +230,61 @@ public class WhiteController extends CoreBaseController {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PostMapping(value = "/sys-file/insert")
@ApiOperation(value = "新增文件资源", notes = "新增文件资源")
public ResultBean insertSysFile(@RequestBody SysFile sysFile){
try {
// 条件验证
ValidatorBean.beginValid(sysFile)
.notNull("dfsFileName", sysFile.getDfsFileName())
.notNull("dfsGroupName", sysFile.getDfsGroupName())
.notNull("fileSoftType", sysFile.getFileSoftType())
.notNull("fileOriginalName", sysFile.getFileOriginalName());
// 文件类型验证
SysDictionary dictionary = dictionaryService.getSysDictionaryByParentCodeAndCode(BaseConstWords.DICTIONARY_FILE_TYPE,
StringTool.getStringFileSuffix(sysFile.getFileOriginalName(), false));
if(dictionary == null){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_FORMAT.getCode())
.setErrorDetail("文件格式不支持")
.setErrorSolution("请到字典管理中添加文件类型")
.build();
}
// 初始化数据
sysFile.setFileTypeId(dictionary.getId());
sysFile.setFileTypeName(dictionary.getName());
sysFile = sysFileService.insertSysFile(sysFile);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysFile);
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
/**
*
* @param fileCode
* @return
*/
@GetMapping("/sys-file/get-file-code/{code}")
@ApiOperation(value = "根据文件代码查询文件信息")
public ResultBean getSysFileByFileCode(@PathVariable("code") String fileCode) {
try {
// 条件验证
ValidatorBean.checkNotNull(fileCode, "文件代码不能为空");
SysFile sysFile = sysFileService.getSysFileByFileCode(fileCode);
return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysFile);
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -252,8 +252,8 @@ public class SysConfigController extends CoreBaseController {
mailUtil.setTo(mailConfig.getTestTo());
mailUtil.send();
return ResultBean.success("测试邮件已发送").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(MessagingException messageExcep){
return ImppExceptionBuilder.newInstance().buildExceptionResult(messageExcep);
} catch(MessagingException messageExcep){
return ResultBean.fail("邮件配置错误:" + messageExcep.getMessage());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){

@ -197,4 +197,22 @@ public class SysLabelTemplateController extends CoreBaseController {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PutMapping(value = "/status")
@ApiOperation(value = "根据编号修改打印模板状态",notes = "根据编号修改打印模板状态")
public ResultBean updateSysLabelTemplateByStatus(String id, int status){
try {
// 登录用户
SessionUser user = AuthUtil.getSessionUser();
ValidatorBean.checkNotNull(id, "打印模板编号不能为空");
sysLabelTemplateService.updateSysLabelTemplateStatus(Long.parseLong(id), status, getSessionUser());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -1,14 +1,18 @@
package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.model.platform.MessagePagerModel;
import cn.estsh.i3plus.pojo.model.platform.RefUserMessagePagerModel;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage;
@ -29,6 +33,7 @@ import org.springframework.web.bind.annotation.*;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* @Description :
@ -46,11 +51,13 @@ public class SysMessageController extends CoreBaseController {
@Autowired
private ISysMessageService sysMessageService;
@Autowired
private ISysUserService sysUserService;
@PostMapping(value = "/sys-message/insert")
@ApiOperation(value = "新增消息",notes = "新增消息")
public ResultBean insertSysMessage(SysMessage sysMessage){
public ResultBean<SysMessage> insertSysMessage(@RequestBody SysMessage sysMessage){
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 条件校验
ValidatorBean.beginValid(sysMessage)
.notNull("messageTitle",sysMessage.getMessageTitle())
@ -59,11 +66,28 @@ public class SysMessageController extends CoreBaseController {
.notNull("messageReceiversId",sysMessage.getMessageReceiversId());
// 设置发件人名称
sysMessage.setMessageSenderId(getSessionUser().getUser().getId());
sysMessage.setMessageSenderNameRdd(getSessionUser().getUserName());
sysMessage.setMessageSendTime(sdf.format(new Date()));
if(sysMessage.getMessageSenderId() == null || sysMessage.getMessageSenderNameRdd() == null){
sysMessage.setMessageSenderId(getSessionUser().getUser().getId());
sysMessage.setMessageSenderNameRdd(getSessionUser().getUserName());
}
// 设置收件人名称
if(sysMessage.getMessageReceiversNameRdd() == null){
String[] messageReceiver = sysMessage.getMessageReceiversId().split(",");
String receiversName = sysUserService.findSysUserByIds(StringTool.getArrayLong(messageReceiver))
.stream().map(e -> e.getUserName()).collect(Collectors.joining(","));
sysMessage.setMessageReceiversNameRdd(receiversName);
}
// 设置接收人类型
if(sysMessage.getMessageReceiverType() == null){
sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue());
}
sysMessage.setMessageSendTime(TimeTool.getNowTime(true));
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue());
sysMessage.setReadCount(0L);
sysMessageService.doSendSysMessage(sysMessage);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
@ -94,9 +118,6 @@ public class SysMessageController extends CoreBaseController {
@ApiOperation(value = "修改信息",notes = "修改信息")
public ResultBean updateSysMessage(SysMessage sysMessage){
try {
// 登录用户
SessionUser user = AuthUtil.getSessionUser();
// 条件校验
ValidatorBean.beginValid(sysMessage)
.notNull("messageTitle",sysMessage.getMessageTitle())
@ -127,7 +148,7 @@ public class SysMessageController extends CoreBaseController {
@GetMapping(value = "/sys-message/get/{id}")
@ApiOperation(value = "根据id查询消息",notes = "根据id查询消息")
public ResultBean getSysMessageById(@PathVariable("id") String idStr){
public ResultBean<SysMessage> getSysMessageById(@PathVariable("id") String idStr){
try {
SysMessage sysMessage = sysMessageService.getSysMessageById(Long.parseLong(idStr));
if (sysMessage != null) {
@ -144,9 +165,10 @@ public class SysMessageController extends CoreBaseController {
@GetMapping(value = "/sys-message/query")
@ApiOperation(value = "消息复杂查询,分页,排序",notes = "消息复杂查询,分页,排序")
public ResultBean querySysMessageByPager(SysMessage sysMessage, Pager pager){
public ResultBean<SysMessage> querySysMessageByPager(@RequestBody MessagePagerModel messagePagerModel){
try {
ListPager sysMessageListPager = sysMessageService.querySysMessageByPager(sysMessage,pager);
ListPager sysMessageListPager = sysMessageService.querySysMessageByPager(messagePagerModel.getSysMessage(),
messagePagerModel.getPager());
return ResultBean.success("操作成功").setListPager(sysMessageListPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
@ -179,7 +201,7 @@ public class SysMessageController extends CoreBaseController {
@GetMapping(value = "/user-message/query-inbox")
@ApiOperation(value = "查询用户收件箱,分页,排序")
public ResultBean queryInboxByPager(SysRefUserMessage sysRefUserMessage,Pager pager){
public ResultBean<SysMessage> queryInboxByPager(SysRefUserMessage sysRefUserMessage,Pager pager){
try {
// 设置消息类型为站内信
sysRefUserMessage.setMessageTypeRdd(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue());
@ -196,7 +218,7 @@ public class SysMessageController extends CoreBaseController {
@GetMapping(value = "/user-message/query-outbox")
@ApiOperation(value = "查询用户发件箱,分页,排序")
public ResultBean querySysRefUserMessageByPager(SysMessage sysMessage,Pager pager){
public ResultBean<SysMessage> queryOutboxByPager(SysMessage sysMessage,Pager pager){
try {
// 发件人为当前用户
sysMessage.setMessageType(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue());
@ -213,10 +235,10 @@ public class SysMessageController extends CoreBaseController {
@GetMapping(value = "/user-message/find-unread")
@ApiOperation(value = "查看用户未读站内信")
public ResultBean findUnreadUserMessage(){
public ResultBean<SysRefUserMessage> findUnreadUserMessage(){
try {
List userMessageList = sysMessageService.findSysRefUserMessageByUserIdAndStatus(getSessionUser().getUser().getId(),
ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
List<SysRefUserMessage> userMessageList = sysMessageService.findSysRefUserMessageByUserIdAndStatus(
getSessionUser().getUser().getId(), ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
return ResultBean.success("操作成功").setResultList(userMessageList).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
@ -227,7 +249,7 @@ public class SysMessageController extends CoreBaseController {
@GetMapping(value = "/user-message/get/{id}")
@ApiOperation(value = "根据id查询消息",notes = "根据id查询消息")
public ResultBean getUserMessageById(@PathVariable("id") String idStr){
public ResultBean<SysMessage> getUserMessageById(@PathVariable("id") String idStr){
try {
ValidatorBean.checkNotNull(idStr,"id");
@ -295,7 +317,7 @@ public class SysMessageController extends CoreBaseController {
@PostMapping(value = "/user-message/insert")
@ApiOperation(value = "用户新增消息",notes = "用户新增消息")
public ResultBean insertUserMessage(SysMessage sysMessage){
public ResultBean insertUserMessage(SysMessage sysMessage) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 条件校验
@ -321,4 +343,17 @@ public class SysMessageController extends CoreBaseController {
}
}
@GetMapping(value = "/user-message/query")
@ApiOperation(value = "消息复杂查询,分页,排序",notes = "消息复杂查询,分页,排序")
public ResultBean<SysRefUserMessage> querySysRefUserMessageByPager(@RequestBody RefUserMessagePagerModel refUserMessagePagerModel){
try {
ListPager sysMessageListPager = sysMessageService.querySysRefUserMessageByPager(
refUserMessagePagerModel.getSysRefUserMessage(),refUserMessagePagerModel.getPager());
return ResultBean.success("操作成功").setListPager(sysMessageListPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -24,11 +24,14 @@ import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.quartz.impl.triggers.CronTriggerImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.text.ParseException;
import java.util.Date;
import java.util.List;
/**
@ -87,11 +90,17 @@ public class SysTaskCycleController extends CoreBaseController{
.notNull("name", sysTaskCycle.getName())
.notNull("taskCycleExps", sysTaskCycle.getTaskCycleExps());
CronTriggerImpl trigger = new CronTriggerImpl();
trigger.setCronExpression(sysTaskCycle.getTaskCycleExps());
trigger.computeFirstFireTime(null);
sysTaskCycleService.insertSysTaskCycle(sysTaskCycle);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
} catch (ParseException parseException){
return ResultBean.fail("表达式错误");
} catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@ -106,6 +115,10 @@ public class SysTaskCycleController extends CoreBaseController{
.notNull("name", sysTaskCycle.getName())
.notNull("taskCycleExps", sysTaskCycle.getTaskCycleExps());
CronTriggerImpl trigger = new CronTriggerImpl();
trigger.setCronExpression(sysTaskCycle.getTaskCycleExps());
trigger.computeFirstFireTime(null);
sysTaskCycleService.updateSysTaskCycle(sysTaskCycle);
// 查询关联任务计划信息,并进行修改

@ -449,5 +449,22 @@ public class SysUserController extends CoreBaseController{
}
}
@PutMapping("/update-organize")
@ApiOperation(value = "修改用户操作组织id")
public ResultBean updateSysUserOrganize(String idStr, String organizeIdStr){
try{
ValidatorBean.checkNotNull(idStr, "id不能为空");
SysUser sysUser = sysUserService.getSysUserById(Long.parseLong(idStr));
ValidatorBean.checkNotNull(sysUser, "用户不存在");
sysUser.setOrganizeId(Long.parseLong(organizeIdStr));
sysUserService.updateSysUser(sysUser);
return null;
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -12,7 +12,6 @@ import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage;
import cn.estsh.i3plus.pojo.platform.bean.SysUser;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.rabbitmq.client.Channel;
import org.apache.commons.lang3.StringUtils;
@ -42,10 +41,10 @@ public class MessageLetterQueueReceiver {
private static final Logger LOGGER = LoggerFactory.getLogger(MessageLetterQueueReceiver.class);
@Autowired
ISysMessageService sysMessageService;
private ISysMessageService sysMessageService;
@Autowired
ISysUserService sysUserService;
private ISysUserService sysUserService;
@Autowired
private IPersonnelService personnelService;
@ -57,30 +56,31 @@ public class MessageLetterQueueReceiver {
/**
*
*
* @param msg
* @param channel
* @param message rabbitTemplate.convertAndSend(I3CoreQueueConfig.IMPP_MESSAGE_QUEUE, new SysMessage(....));
*/
@RabbitListener(queues = PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE)
public void processImppMessage(SysMessage msg, Channel channel, Message message) {
LOGGER.info("【MQ-{}】 数据接收成功:{}",PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, msg);
LOGGER.info("【MQ-{}】 数据接收成功:{}", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, msg);
try {
msg = sysMessageService.insertSysMessage(msg);
if (!StringUtils.isBlank(msg.getMessageReceiversId())) {
String[] userIds = msg.getMessageReceiversId().split(",");
if(userIds != null && userIds.length > 0){
if (userIds != null && userIds.length > 0) {
List<SysUser> userList = personnelService.findSysUserByIds(StringTool.getArrayLong(userIds));
if(userList != null && userList.size() > 0){
List<String> names = new ArrayList<>(userList.size());
if (userList != null && userList.size() > 0) {
List<SysRefUserMessage> insertList = new ArrayList<>(userList.size());
SysRefUserMessage refUserMessage;
for (SysUser user : userList){
for (SysUser user : userList) {
refUserMessage = new SysRefUserMessage();
refUserMessage.setMessageId(msg.getId());
refUserMessage.setMessageSoftType(msg.getMessageSoftType());
refUserMessage.setMessageTitleRdd(msg.getMessageTitle());
refUserMessage.setMessageTypeRdd(msg.getMessageType());
refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd());
@ -90,43 +90,38 @@ public class MessageLetterQueueReceiver {
refUserMessage.setReceiverTime(TimeTool.getNowTime(true));
refUserMessage.setIsUrgent(msg.getIsUrgent());
names.add(user.getUserName());
insertList.add(refUserMessage);
}
List<SysRefUserMessage> refList = sysMessageService.insertSysRefUserMessage(insertList);
// 站内信使用 Web Socket 推送
if(refList != null && refList.size() > 0){
if (refList != null && refList.size() > 0) {
for (SysRefUserMessage userMessage : refList) {
MessageWebSocket.sendMessage(userMessage.getReceiverId(), MAPPER.writeValueAsString(userMessage));
}
}
// 更新冗余信息
msg.setMessageReceiversNameRdd(StringUtils.join(names,","));
sysMessageService.updateSysMessage(msg);
}
}
}
// 消息处理完成
LOGGER.info("【MQ-{}】站内信{} DeliveryTag:{} 处理成功", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,
msg,message.getMessageProperties().getDeliveryTag());
msg, message.getMessageProperties().getDeliveryTag());
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
}catch (IOException e){
printErrorMessage(e,Exception.class, msg);
} catch (IOException e) {
printErrorMessage(e, Exception.class, msg);
try {
// 未成功处理,重新发送
channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true);
channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, true);
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
private void printErrorMessage(Exception e,Class zlass,SysMessage msg){
private void printErrorMessage(Exception e, Class zlass, SysMessage msg) {
Long time = System.currentTimeMillis();
LOGGER.error("【MQ-{}】{} 异常代码:{} 消息内容{},处理出错:{}", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, time, zlass, msg, e.getMessage());
e.printStackTrace();
@ -135,13 +130,13 @@ public class MessageLetterQueueReceiver {
SysMessage sysMessage = new SysMessage();
sysMessage.setMessageSenderNameRdd("系统管理员");
sysMessage.setMessageTitle("【IMPP-MQ异常】站内信消息推送失败");
sysMessage.setMessageContent("推送站内信["+zlass+"]错误异常代码:"+time);
sysMessage.setMessageContent("推送站内信[" + zlass + "]错误异常代码:" + time);
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
sysMessage.setMessageSendTime(TimeTool.getNowTime(true));
sysMessage.setIsSystem(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue());
sysMessage.setMessageReceiversNameRdd("yunhao.wang@estsh.com,wei.peng@estsh.com");
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage);
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE, sysMessage);
}

@ -6,6 +6,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.core.apiservice.util.MailUtil;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage;
@ -35,17 +36,18 @@ public class MessageMailQueueReceiver {
private static final Logger LOGGER = LoggerFactory.getLogger(MessageMailQueueReceiver.class);
@Autowired
ISysMessageService sysMessageService;
private ISysMessageService sysMessageService;
@Autowired
ISysUserService sysUserService;
private ISysUserService sysUserService;
@Autowired
ISysConfigService sysConfigService;
private ISysConfigService sysConfigService;
@Autowired
MailUtil mailUtil;
private MailUtil mailUtil;
/**
*
* @param msg
*
* @param msg
* @param channel
* @param message
*/
@ -56,6 +58,7 @@ public class MessageMailQueueReceiver {
if (msg.getMessageSendTime() == null) {
msg.setMessageSendTime(TimeTool.getNowTime(true));
}
msg = sysMessageService.insertSysMessage(msg);
// 设置邮件主题内容及收件人
@ -63,7 +66,8 @@ public class MessageMailQueueReceiver {
mailUtil.setSubject(msg.getMessageTitle());
mailUtil.setContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.valueOfDescription(msg.getMessageContentType()));
mailUtil.setBody(msg.getMessageContent());
if(msg.getMessageReceiverType() != null){
if (msg.getMessageReceiverType() != null) {
if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.URGENT.getValue()) {
// 判断是否为系统紧急提示 微服注册状态提示
mailUtil.setTo(sysConfigService.getSysConfigByCode(PlatformConstWords.CONTACT_MAIL).getConfigValue());
@ -78,17 +82,16 @@ public class MessageMailQueueReceiver {
} else if (msg.getMessageReceiverType().intValue() == ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue()) {
// 收件人信息
String[] messageReceiver = msg.getMessageReceiversId().split(",");
String[] receiverName = new String[messageReceiver.length];
SysRefUserMessage refUserMessage;
SysUser sysUser;
for (int i = 0; i < messageReceiver.length; i++) {
sysUser = sysUserService.getSysUserById(Long.parseLong(messageReceiver[i]));
receiverName[i] = sysUser.getUserName();
refUserMessage = new SysRefUserMessage();
refUserMessage.setMessageId(msg.getId());
refUserMessage.setMessageSoftType(msg.getMessageSoftType());
refUserMessage.setMessageTitleRdd(msg.getMessageTitle());
refUserMessage.setMessageTypeRdd(msg.getMessageType());
refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd());
@ -96,31 +99,27 @@ public class MessageMailQueueReceiver {
refUserMessage.setReceiverNameRdd(sysUser.getUserName());
refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
refUserMessage.setReceiverTime(TimeTool.getNowTime(true));
refUserMessage.setIsUrgent(msg.getIsUrgent());
sysMessageService.insertSysRefUserMessage(refUserMessage);
mailUtil.setTo(sysUser.getUserEmail());
mailUtil.send();
}
msg.setMessageReceiversNameRdd(StringUtils.join(receiverName, ","));
sysMessageService.updateSysMessage(msg);
}
}
//信息已处理
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
}catch (NullPointerException e){
LOGGER.error(e.getMessage());
} catch (Exception e) {
LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错{}",e.getMessage(),e);
LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错{}", e.getMessage(), e);
//丢弃这条消息
try {
// 未成功处理,重新发送
//channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true);
//todo 此处对邮件持久化,通过参数设置,是否还需要重复重新发送
// 改为接收成功
channel.basicAck(message.getMessageProperties().getDeliveryTag(),false);
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
} catch (IOException e1) {
e1.printStackTrace();
}

@ -0,0 +1,124 @@
package cn.estsh.i3plus.core.apiservice.mq;
import cn.estsh.i3plus.core.api.iservice.busi.ISysFileAttachService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysFile;
import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach;
import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.rabbitmq.client.Channel;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
/**
* @Description : SWEB
* @Reference :
* @Author : yunhao
* @CreateDate : 2018-11-15 22:15
* @Modify:
**/
@ConditionalOnExpression("'${impp.mq.queue.sweb.notice}' == 'true'")
@Component
public class MessageSWebNoticeQueueReceiver {
private static final Logger LOGGER = LoggerFactory.getLogger(MessageSWebNoticeQueueReceiver.class);
@Autowired
private ISysMessageService sysMessageService;
@Autowired
private ISysFileAttachService sysFileAttachService;
@Autowired
private ISysFileService sysFileService;
/**
* SWEB
*
* @param msg
* @param channel
* @param message
*/
@RabbitListener(queues = PlatformConstWords.SWEB_NOTICE_QUEUE)
public void processImppMail(SysMessage msg, Channel channel, Message message) {
LOGGER.info("【MQ-{}】 数据接收成功:{}", PlatformConstWords.SWEB_NOTICE_QUEUE, msg);
try {
// 添加消息
msg = sysMessageService.insertSysMessage(msg);
// 添加附件信息
if(msg.getSysFileAttachList() != null){
SysFile sysFile;
for (SysFileAttach sysFileAttach : msg.getSysFileAttachList()) {
sysFile = sysFileService.getSysFileById(sysFileAttach.getFileId());
if(sysFile != null){
sysFileAttach.setRefId(msg.getId());
sysFileAttach.setFileNameRdd(sysFile.getFileOriginalName());
sysFileAttach.setFilePathRdd(sysFile.getFilePath());
// 初始数据
ConvertBean.serviceModelInitialize(sysFileAttach, msg.getCreateUser());
sysFileAttachService.insertSysFileAttach(sysFileAttach);
}
}
}
// 添加消息明细信息
if (StringUtils.isNotBlank(msg.getMessageReceiversId())) {
// 获取供应商信息 由string转换为json对象
JSONObject userJsonObject = JSON.parseObject(msg.getMessageReceiversId());
List<SysRefUserMessage> insertList = new ArrayList<>(userJsonObject.size());
SysRefUserMessage refUserMessage;
for (String user : userJsonObject.keySet()) {
refUserMessage = new SysRefUserMessage();
refUserMessage.setMessageId(msg.getId());
refUserMessage.setMessageSoftType(msg.getMessageSoftType());
refUserMessage.setMessageTitleRdd(msg.getMessageTitle());
refUserMessage.setMessageTypeRdd(msg.getMessageType());
refUserMessage.setMessageSenderNameRdd(msg.getMessageSenderNameRdd());
refUserMessage.setReceiverId(Long.parseLong(user));
refUserMessage.setReceiverNameRdd(userJsonObject.get(user).toString());
refUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue());
refUserMessage.setReceiverTime(TimeTool.getNowTime(true));
refUserMessage.setIsUrgent(msg.getIsUrgent());
insertList.add(refUserMessage);
}
sysMessageService.insertSysRefUserMessage(insertList);
}
// 消息处理完成
LOGGER.info("【MQ-{}】站内信{} DeliveryTag:{} 处理成功", PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,
msg, message.getMessageProperties().getDeliveryTag());
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
} catch (IOException e) {
try {
// 未成功处理,重新发送
channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, true);
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}

@ -1,6 +1,8 @@
package cn.estsh.i3plus.core.apiservice.mq;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
@ -19,6 +21,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.stream.Collectors;
/**
* @Description :
@ -37,10 +40,14 @@ public class ScheduleQueueReceiver {
private ISysTaskPlanService sysTaskPlanService;
@Autowired
private ISysUserService sysUserService;
@Autowired
private RabbitTemplate rabbitTemplate;
/**
*
*
* @param logTaskTime
* @param channel
* @param message
@ -48,9 +55,9 @@ public class ScheduleQueueReceiver {
@RabbitListener(queues = PlatformConstWords.IMPP_SCHEDULE_QUEUE)
public void processSchedule(SysLogTaskTime logTaskTime, Channel channel, Message message) {
try {
LOGGER.info("【MQ-IMPP_SCHEDULE_QUEUE】数据接收成功{}",logTaskTime);
LOGGER.info("【MQ-IMPP_SCHEDULE_QUEUE】数据接收成功{}", logTaskTime);
// 跟新最后执行时间 及 任务状态
SysTaskPlan taskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(logTaskTime.getName(),logTaskTime.getGroupName());
SysTaskPlan taskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(logTaskTime.getName(), logTaskTime.getGroupName());
if (taskPlan != null) {
taskPlan.setLastRunDateTime(logTaskTime.getCreateDatetime());
taskPlan.setTaskPlanExecNum(taskPlan.getTaskPlanExecNumValue() + 1);
@ -60,6 +67,7 @@ public class ScheduleQueueReceiver {
// 添加定时任务日志
logTaskTime.setTaskPlanId(taskPlan.getId());
logTaskTime.setTaskSoftTypeRdd(taskPlan.getTaskSoftTypeRdd());
logTaskTime.setTaskCycleNameRdd(taskPlan.getTaskCycleNameRdd());
logTaskTime.setTaskCycleExpsRdd(taskPlan.getTaskCycleExpsRdd());
sysTaskPlanService.logInsertSysLogTaskTime(logTaskTime);
@ -69,12 +77,13 @@ public class ScheduleQueueReceiver {
&& CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == taskPlan.getIsNotice()) {
// 设置通知邮件内容
SysMessage sysMessage = new SysMessage();
sysMessage.setMessageType(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue());
sysMessage.setMessageSoftType(logTaskTime.getTaskSoftTypeRdd());
sysMessage.setMessageType(taskPlan.getNoticeMethod());
sysMessage.setMessageSenderNameRdd("系统管理员");
sysMessage.setMessageTitle("任务计划失败通知");
sysMessage.setMessageContent(
String.format("<p>管理员 您好:</p><div style=\"text-align:center\">任务计划(Name: %s,GroupName: %s执行失败,详细信息请查看定时任务日志(ID: %s).</div>",
taskPlan.getName(),taskPlan.getGroupName(),logTaskTime.getId())
taskPlan.getName(), taskPlan.getGroupName(), logTaskTime.getId())
);
sysMessage.setMessageContentType(ImppEnumUtil.MESSAGE_TYPE_CONTENT.HTML.getValue());
sysMessage.setMessageSendTime(TimeTool.getNowTime(true));
@ -84,27 +93,33 @@ public class ScheduleQueueReceiver {
if (CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == taskPlan.getIsInternalUser()) {
sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.EXTERNAL.getValue());
sysMessage.setMessageReceiversNameRdd(taskPlan.getNoticeChannel());
}else{
} else {
sysMessage.setMessageReceiverType(ImppEnumUtil.MESSAGE_RECEIVER_TYPE.INTERNAL.getValue());
// 设置收件人名称
String[] messageReceiver = taskPlan.getNoticeChannel().split(",");
String receiversName = sysUserService.findSysUserByIds(StringTool.getArrayLong(messageReceiver))
.stream().map(e -> e.getUserName()).collect(Collectors.joining(","));
sysMessage.setMessageReceiversNameRdd(receiversName);
}
// 发送到对应处理队列
if(taskPlan.getNoticeMethod() != null && ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()){
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage);
}else{
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage);
if (taskPlan.getNoticeMethod() != null && ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == taskPlan.getNoticeMethod().intValue()) {
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE, sysMessage);
} else {
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE, sysMessage);
}
}
}
//信息已处理
channel.basicAck(message.getMessageProperties().getDeliveryTag(),false);
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
} catch (IOException e) {
LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错{}",e.getMessage(),e);
LOGGER.error("【MQ-IMPP_MESSAGE_MAIL_QUEUE】处理出错{}", e.getMessage(), e);
//丢弃这条消息
try {
// 未成功处理,重新发送
channel.basicNack(message.getMessageProperties().getDeliveryTag(),false,true);
channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, true);
} catch (IOException e1) {
e1.printStackTrace();
}

@ -1,13 +1,11 @@
package cn.estsh.i3plus.core.apiservice.schedulejob.wms;
import cn.estsh.i3plus.icloud.wms.sdk.IWmsScheduleJobCloud;
import cn.estsh.impp.framework.base.schedule.BaseImppScheduleJob;
import cn.estsh.impp.framework.boot.init.ApplicationProperties;
import io.swagger.annotations.ApiOperation;
import org.quartz.JobExecutionContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
/**
* @Description :

@ -0,0 +1,52 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysFileAttachService;
import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach;
import cn.estsh.i3plus.pojo.platform.repository.SysFileAttachRepository;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-04-12 19:43
* @Modify:
**/
@Service
public class SysFileAttachService implements ISysFileAttachService {
public static final Logger LOGGER = LoggerFactory.getLogger(SysFileAttachService.class);
@Autowired
private SysFileAttachRepository sysFileAttachRDao;
@Override
@ApiOperation(value = "添加附件信息")
public SysFileAttach insertSysFileAttach(SysFileAttach sysFileAttach) {
return sysFileAttachRDao.insert(sysFileAttach);
}
@Override
@ApiOperation(value = "根据id删除附件信息")
public void deleteSysFileAttachById(Long id) {
sysFileAttachRDao.deleteById(id);
}
@Override
@ApiOperation(value = "根据id删除附件信息")
public List<SysFileAttach> findSysFileAttachByRefId(Long refId) {
return sysFileAttachRDao.findByProperty("refId",refId);
}
@Override
@ApiOperation(value = "根据id删除附件信息")
public void deleteSysFileAttachByRefId(Long refId) {
sysFileAttachRDao.deleteByProperty("refId",refId);
}
}

@ -8,6 +8,7 @@ import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.model.platform.LabelTemplateModel;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplate;
import cn.estsh.i3plus.pojo.platform.bean.SysLabelTemplateParam;
import cn.estsh.i3plus.pojo.platform.repository.SysLabelTemplateParamRepository;
@ -115,10 +116,10 @@ public class SysLabelTemplateService implements ISysLabelTemplateService {
// 更新打印模板
sysLabelTemplateRDao.update(sysLabelTemplate);
int effect = sysLabelTemplateParamRDao.deleteByProperty("templateId", sysLabelTemplate.getId());
sysLabelTemplateParamRDao.deleteByProperty("templateId", sysLabelTemplate.getId());
// 判断模板参数是否存在,存在就进行数据操作
if (StringUtils.isNotBlank(sysLabelTemplate.getParamsPack()) && effect > 1) {
if (StringUtils.isNotBlank(sysLabelTemplate.getParamsPack())) {
// 更新打印模板参数
SysLabelTemplateParam templateParam;
String[] paramArr = sysLabelTemplate.getParamsPack().trim().split(",");
@ -175,4 +176,16 @@ public class SysLabelTemplateService implements ISysLabelTemplateService {
templateModel.setTemplateParamList(listSysLabelTemplateParam(labelTemplateId));
return templateModel;
}
@Override
@ApiOperation(value = "修改打印模板状态",notes = "修改打印模板状态")
public void updateSysLabelTemplateStatus(Long id, int status, SessionUser user) {
SysLabelTemplate sysLabelTemplate = sysLabelTemplateRDao.getById(id);
sysLabelTemplate.setIsValid(status);
sysLabelTemplate.setModifyUser(user.getUserName());
//添加初始化
ConvertBean.modelUpdate(sysLabelTemplate, user);
sysLabelTemplateRDao.update(sysLabelTemplate);
}
}

@ -1,24 +1,25 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysMessageService;
import cn.estsh.i3plus.core.apiservice.mq.I3CoreQueueConfig;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.SysFile;
import cn.estsh.i3plus.pojo.platform.bean.SysFileAttach;
import cn.estsh.i3plus.pojo.platform.bean.SysMessage;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserMessage;
import cn.estsh.i3plus.pojo.platform.repository.SysMessageRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysRefUserMessageRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository;
import cn.estsh.i3plus.pojo.platform.repository.*;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ImppRedis;
import com.netflix.discovery.converters.Auto;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -27,7 +28,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
/**
@ -51,6 +51,12 @@ public class SysMessageService implements ISysMessageService {
@Autowired
private SysUserRepository sysUserRDao;
@Autowired
private SysFileAttachRepository sysFileAttachRDao;
@Autowired
private SysFileRepository sysFileRDao;
/**
* rabbitMQ
*/
@ -75,6 +81,7 @@ public class SysMessageService implements ISysMessageService {
public void deleteSysMessageById(Long id) {
LOGGER.info("消息 SYS_MESSAGE id:{}",id);
sysRefUserMessageRDao.deleteByProperty("messageId",id);
sysFileAttachRDao.deleteByProperty("refId",id);
sysMessageRDao.deleteById(id);
}
@ -83,6 +90,20 @@ public class SysMessageService implements ISysMessageService {
public void updateSysMessage(SysMessage sysMessage){
LOGGER.info("消息 SYS_MESSAGE :{}",sysMessage);
sysMessageRDao.update(sysMessage);
// 更新附件信息
sysFileAttachRDao.deleteByProperty("refId",sysMessage.getId());
if(sysMessage.getSysFileAttachList() != null){
SysFile sysFile;
for (SysFileAttach sysFileAttach : sysMessage.getSysFileAttachList()) {
sysFile = sysFileRDao.getById(sysFileAttach.getFileId());
if(sysFile == null){
sysFileAttach.setRefId(sysMessage.getId());
sysFileAttach.setFileNameRdd(sysFile.getName());
sysFileAttach.setFilePathRdd(sysFile.getFilePath());
}
}
}
}
@Override
@ -107,9 +128,9 @@ public class SysMessageService implements ISysMessageService {
pager = PagerHelper.getPager(pager, sysMessageRDao.listCount());
return new ListPager(sysMessageRDao.listPager(pager),pager);
}else {
String hqlPack = CoreHqlPack.packHqlSysMessage(sysMessage);
DdlPackBean hqlPack = CoreHqlPack.packHqlSysMessage(sysMessage);
pager = PagerHelper.getPager(pager, sysMessageRDao.findByHqlWhereCount(hqlPack));
return new ListPager(sysMessageRDao.findByHqlWherePage(hqlPack + sysMessage.orderBy(),pager),pager);
return new ListPager(sysMessageRDao.findByHqlWherePage(hqlPack,pager),pager);
}
}
@ -136,11 +157,20 @@ public class SysMessageService implements ISysMessageService {
@ApiOperation(value = "添加消息并发送")
public void doSendSysMessage(SysMessage sysMessage) {
// 判断消息类型推送到对应的队列
if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == sysMessage.getMessageType().intValue()){
if(ImppEnumUtil.MESSAGE_TYPE.MAIL.getValue() == sysMessage.getMessageTypeValue()){
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE,sysMessage);
}else{
}else if(ImppEnumUtil.MESSAGE_TYPE.LETTER.getValue() == sysMessage.getMessageTypeValue()){
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE,sysMessage);
rabbitTemplate.convertAndSend(PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE_BAK,sysMessage);
} else if(ImppEnumUtil.MESSAGE_TYPE.SWEB_NOTICE.getValue() == sysMessage.getMessageTypeValue()){
rabbitTemplate.convertAndSend(PlatformConstWords.SWEB_NOTICE_QUEUE,sysMessage);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("消息类型不存在")
.setErrorSolution("请重新设置消息类型")
.build();
}
}
@ -172,13 +202,33 @@ public class SysMessageService implements ISysMessageService {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("数据不存在")
.setErrorDetail("用户消息不存在")
.build();
}
sysRefUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.READ.getValue());
sysRefUserMessageRDao.update(sysRefUserMessage);
return sysMessageRDao.getById(sysRefUserMessage.getMessageId());
SysMessage sysMessage = sysMessageRDao.getById(sysRefUserMessage.getMessageId());
if (sysMessage == null){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("消息主体不存在")
.build();
}
// 更新状态消息状态以及阅读数量
if(sysRefUserMessage.getMessageStatusValue() == ImppEnumUtil.MESSAGE_STATUS.UNREAD.getValue()) {
sysRefUserMessage.setMessageStatus(ImppEnumUtil.MESSAGE_STATUS.READ.getValue());
sysRefUserMessageRDao.update(sysRefUserMessage);
// 阅读数累加1
sysMessage.setReadCount(sysMessage.getReadCount() + 1);
sysMessageRDao.update(sysMessage);
}
// 查询附件信息
sysMessage.setSysFileAttachList(sysFileAttachRDao.findByProperty("refId",sysMessage.getId()));
return sysMessage;
}
@Override

@ -1,6 +1,7 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
@ -13,6 +14,7 @@ import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogTaskTimeRepositor
import cn.estsh.i3plus.pojo.platform.repository.SysRefTaskCyclePlanRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysTaskPlanRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
@ -75,34 +77,35 @@ public class SysTaskPlanService implements ISysTaskPlanService {
@Override
@ApiOperation(value = "修改任务计划", notes = "修改任务计划")
public void updateSysTaskPlan(SysTaskPlan sysTaskPlan) {
SysTaskPlan oldSysTaskPlan = sysTaskPlanRDao.getById(sysTaskPlan.getId());
SysTaskPlan originSysTaskPlan = sysTaskPlanRDao.getById(sysTaskPlan.getId());
// 更新关系表
sysRefTaskCyclePlanRDao.updateByProperties(new String[]{"taskPlanName", "taskPlanGroupName"},
new String[]{oldSysTaskPlan.getName(), oldSysTaskPlan.getGroupName()},
"taskCycleId", oldSysTaskPlan.getTaskCycleId()
new String[]{originSysTaskPlan.getName(), originSysTaskPlan.getGroupName()},
"taskCycleId", originSysTaskPlan.getTaskCycleId()
);
oldSysTaskPlan.setTaskCycleId(sysTaskPlan.getTaskCycleId());
oldSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd());
oldSysTaskPlan.setTaskCycleExpsRdd(sysTaskPlan.getTaskCycleExpsRdd());
oldSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd());
oldSysTaskPlan.setTaskPlanExecNum(sysTaskPlan.getTaskPlanExecNum());
oldSysTaskPlan.setTaskMethodType(sysTaskPlan.getTaskMethodType());
oldSysTaskPlan.setTaskId(sysTaskPlan.getTaskId());
oldSysTaskPlan.setTaskNameRdd(sysTaskPlan.getTaskNameRdd());
oldSysTaskPlan.setTaskSoftTypeRdd(sysTaskPlan.getTaskSoftTypeRdd());
oldSysTaskPlan.setTaskPlanParam(sysTaskPlan.getTaskPlanParam());
oldSysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskPlan.getTaskCycleStartDateTimeRdd());
oldSysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskPlan.getTaskCycleEndDateTimeRdd());
oldSysTaskPlan.setTaskPlanDescription(sysTaskPlan.getTaskPlanDescription());
oldSysTaskPlan.setLastRunDateTime(sysTaskPlan.getLastRunDateTime());
oldSysTaskPlan.setIsNotice(sysTaskPlan.getIsNotice());
oldSysTaskPlan.setIsInternalUser(sysTaskPlan.getIsInternalUser());
oldSysTaskPlan.setNoticeChannel(sysTaskPlan.getNoticeChannel());
oldSysTaskPlan.setNoticeMethod(sysTaskPlan.getNoticeMethod());
oldSysTaskPlan.setTaskPlanStatus(sysTaskPlan.getTaskPlanStatus());
sysTaskPlanRDao.update(oldSysTaskPlan);
originSysTaskPlan.setTaskCycleId(sysTaskPlan.getTaskCycleId());
originSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd());
originSysTaskPlan.setTaskCycleExpsRdd(sysTaskPlan.getTaskCycleExpsRdd());
originSysTaskPlan.setTaskCycleNameRdd(sysTaskPlan.getTaskCycleNameRdd());
originSysTaskPlan.setTaskPlanExecNum(sysTaskPlan.getTaskPlanExecNum());
originSysTaskPlan.setTaskMethodType(sysTaskPlan.getTaskMethodType());
originSysTaskPlan.setTaskId(sysTaskPlan.getTaskId());
originSysTaskPlan.setTaskNameRdd(sysTaskPlan.getTaskNameRdd());
originSysTaskPlan.setTaskSoftTypeRdd(sysTaskPlan.getTaskSoftTypeRdd());
originSysTaskPlan.setTaskPlanParam(sysTaskPlan.getTaskPlanParam());
originSysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskPlan.getTaskCycleStartDateTimeRdd());
originSysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskPlan.getTaskCycleEndDateTimeRdd());
originSysTaskPlan.setTaskPlanDescription(sysTaskPlan.getTaskPlanDescription());
originSysTaskPlan.setLastRunDateTime(sysTaskPlan.getLastRunDateTime());
originSysTaskPlan.setIsNotice(sysTaskPlan.getIsNotice());
originSysTaskPlan.setIsInternalUser(sysTaskPlan.getIsInternalUser());
originSysTaskPlan.setNoticeChannel(sysTaskPlan.getNoticeChannel());
originSysTaskPlan.setNoticeMethod(sysTaskPlan.getNoticeMethod());
sysTaskPlanRDao.update(originSysTaskPlan);
}
@Override

@ -12,6 +12,7 @@ import cn.estsh.i3plus.pojo.platform.repository.SysToolRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysToolTypeRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
@ -46,18 +47,35 @@ public class SysToolService implements ISysToolService {
@ApiOperation(value = "新增硬件信息")
public SysTool insertSysTool(SysTool tool) {
// 查询硬件类型名称
//todo 压测关闭校验提高处理速度
// LOGGER.info("硬件类型 TOOL_TYPE :{}", tool);
// SysToolType toolType = toolTypeRDao.getById(tool.getToolTypeId());
// ValidatorBean.checkNotNull(toolType);
//
// tool.setToolTypeNameRdd(toolType.getName());
//
// LOGGER.info("硬件 TOOL tool:{}",tool);
LOGGER.info("硬件类型 TOOL_TYPE :{}", tool);
SysToolType toolType = toolTypeRDao.getById(tool.getToolTypeId());
ValidatorBean.checkNotNull(toolType);
tool.setToolTypeNameRdd(toolType.getName());
LOGGER.info("硬件 TOOL tool:{}",tool);
return toolRDao.insert(tool);
}
@Override
public SysTool saveSysTool(SysTool tool) {
return toolRDao.save(tool);
}
@Override
public SysTool insertTestSysTool(SysTool tool, Boolean autoFill) {
SysTool temp;
if(autoFill == null){
temp = toolRDao.insert(tool);
} else if (autoFill) {
temp = toolRDao.insert(tool, autoFill);
} else {
temp = toolRDao.insert(tool, autoFill);
}
return temp;
}
@Override
@ApiOperation(value = "删除硬件信息",notes = "根据 ID 删除硬件信息")
public int deleteSysToolById(Long id) {
LOGGER.info("硬件 TOOL id:{}",id);

@ -9,11 +9,13 @@ import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.EncryptTool;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.shirotoken.UserToken;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.*;
@ -550,6 +552,13 @@ public class SysUserService implements ISysUserService {
return sessionUser;
}
@Override
public List<SysUser> findSysUserByIds(Long[] ids) {
DdlPackBean ddlPackBean = new DdlPackBean();
DdlPreparedPack.getInPackArray(ids, "id", ddlPackBean);
return sysUserRDao.findByHqlWhere(ddlPackBean);
}
/**
*
*

@ -60,14 +60,21 @@ public class TestService implements ITestService {
ListPager<SysUser> list = new ListPager(sysUserRDao.findByHqlWherePage(hqlPack + user.orderBy(), pager), pager);
LOGGER.info("size:{},pager:{}",list.getObjectList().size(),list.getObjectPager());
DdlPackBean packBean = new DdlPackBean();
DdlPreparedPack.getNumEqualPackOverZero(CommonEnumUtil.IS_VAILD.VAILD.getValue(),"isValid",packBean);
DdlPreparedPack.getNumEqualPackOverZero(user.getDepartmentId(),"departmentId",packBean);
DdlPreparedPack.getNumEqualPackOverZero(user.getUserStatus(),"userStatus",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserName(),"userName",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserLoginName(),"userLoginName",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserEmail(),"userEmail",packBean);
DdlPreparedPack.getStringLikerPack(user.getUserPhone(),"userPhone",packBean);
// DdlPackBean packBean = new DdlPackBean();
// DdlPreparedPack.getNumEqualPackOverZero(CommonEnumUtil.IS_VAILD.VAILD.getValue(),"isValid",packBean);
// DdlPreparedPack.getNumEqualPackOverZero(user.getDepartmentId(),"departmentId",packBean);
// DdlPreparedPack.getNumEqualPackOverZero(user.getUserStatus(),"userStatus",packBean);
// DdlPreparedPack.getStringLikerPack(user.getUserName(),"userName",packBean);
// DdlPreparedPack.getStringLikerPack(user.getUserLoginName(),"userLoginName",packBean);
// DdlPreparedPack.getStringLikerPack(user.getUserEmail(),"userEmail",packBean);
// DdlPreparedPack.getStringLikerPack(user.getUserPhone(),"userPhone",packBean);
DdlPackBean packBean = CoreHqlPack.packDdlSysUser(user);
System.out.println("getPackedHql=="+packBean.getPackedHql());
System.out.println("getPackedHqlAll=="+packBean.getPackedHqlAll());
System.out.println("getHqlAppend=="+packBean.getHqlAppend());
System.out.println("getWhereAppend=="+packBean.getWhereAppend());
System.out.println("getOrderByStr=="+packBean.getOrderByStr());
pager = PagerHelper.getPager(pager, sysUserRDao.findByHqlWhereCount(packBean));
list = new ListPager(sysUserRDao.findByHqlWherePage(packBean, pager), pager);

@ -43,7 +43,7 @@ public class OrderNoMakeUtil {
String serialNoFormatStr = MessageFormat.format(PlatformConstWords.SERIAL_NO_FORMAT, orderNoRule.getSerialNoLength());
// 判断是否首次生成SerialNo初始值-1
if (orderNoRule.getSerialNo() > 0) {
if (orderNoRule.getSerialNo() > 0 && orderNo.indexOf(PlatformConstWords.SERIAL_NO) != -1) {
String newNo = orderNo.substring(0,orderNo.indexOf(PlatformConstWords.SERIAL_NO));
String oldNo = orderNoRule.getOrderNo().substring(0,orderNo.indexOf(PlatformConstWords.SERIAL_NO));
// 前缀(日期)不同后是否重置流水号

@ -174,6 +174,11 @@ spring.jpa.properties.hibernate.hbm2ddl.auto=update
spring.jpa.show-sql=true
################ MQ队列处理 ################
# 站内信
impp.mq.queue.letter = true
# 邮件
impp.mq.queue.mail = true
impp.mq.queue.schedule = true
# 定时任务
impp.mq.queue.schedule = true
# SWEB通知处理队列
impp.mq.queue.sweb.notice = true

@ -169,6 +169,11 @@ spring.jpa.properties.hibernate.hbm2ddl.auto=update
spring.jpa.show-sql=true
################ MQ队列处理 ################
# 站内信
impp.mq.queue.letter = true
# 邮件
impp.mq.queue.mail = true
impp.mq.queue.schedule = true
# 定时任务
impp.mq.queue.schedule = true
# SWEB通知处理队列
impp.mq.queue.sweb.notice = true

@ -175,6 +175,11 @@ spring.jpa.properties.hibernate.hbm2ddl.auto=update
spring.jpa.show-sql=true
################ MQ队列处理 ################
# 站内信
impp.mq.queue.letter = true
# 邮件
impp.mq.queue.mail = true
impp.mq.queue.schedule = true
# 定时任务
impp.mq.queue.schedule = true
# SWEB通知处理队列
impp.mq.queue.sweb.notice = true

@ -0,0 +1,54 @@
package test.cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysToolService;
import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase;
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
import cn.estsh.i3plus.pojo.platform.repository.SysToolRepository;
import com.alibaba.fastjson.JSON;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.annotation.Transient;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-04-04 16:53
* @Modify:
**/
public class TestAutoFillData extends TestBase {
@Autowired
private ISysToolService sysToolService;
@Autowired
private SysToolRepository sysToolRepository;
@Test
@Transient
public void testAutoFillDataInsert(){
SysTool sysTool = new SysTool();
// 自动注入默认值
System.out.println(JSON.toJSONString(sysTool));
sysTool = sysToolService.insertTestSysTool(sysTool, true);
System.out.println(JSON.toJSONString(sysTool));
// 不注入默认值
sysTool = new SysTool();
System.out.println(JSON.toJSONString(sysTool));
sysTool = sysToolService.insertTestSysTool(sysTool, false);
System.out.println(JSON.toJSONString(sysTool));
// 默认insert不显示设置
sysTool = new SysTool();
System.out.println(JSON.toJSONString(sysTool));
sysTool = sysToolService.insertTestSysTool(sysTool,null);
System.out.println(JSON.toJSONString(sysTool));
}
public void testAutoFilDataSave(){
SysTool sysTool = new SysTool();
sysToolService.saveSysTool(sysTool);
}
}

@ -3,23 +3,14 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.platform.common.tool.EncryptTool;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.*;
import com.alibaba.fastjson.JSON;
import io.swagger.models.auth.In;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.jdom2.Document;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
@ -27,7 +18,7 @@ import java.util.List;
/**
*
*/
public class TestExcelPermission extends TestBase {
public class TestExcelPermission extends cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase {
//public class TestExcelPermission {
public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelPermission.class);

Loading…
Cancel
Save