This commit is contained in:
esacpe
2024-07-17 21:00:42 +08:00
commit b80c560e87
1931 changed files with 163526 additions and 0 deletions

273
mosty-qwzx/mosty-qwzx.iml Normal file
View File

@ -0,0 +1,273 @@
<?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 />
</configuration>
</facet>
<facet type="JRebel" name="JRebel">
<configuration>
<option name="ideModuleStorage">
<map>
<entry key="com.zeroturnaround.jrebel.FormatVersion" value="7.0.0" />
<entry key="com.zeroturnaround.jrebel.remoting.DeleteUnindexedFiles" value="false" />
<entry key="com.zeroturnaround.jrebel.remoting.ModuleRemoteServerSelection" value="off" />
<entry key="jrebelEnabled" value="true" />
<entry key="lastExternalPluginCheckTime" value="1721024353924" />
</map>
</option>
<option name="version" value="2" />
</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" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.12.1" level="project" />
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.13.3" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.25" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-test:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-test:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
<orderEntry type="library" name="Maven: net.minidev:json-smart:2.3" level="project" />
<orderEntry type="library" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
<orderEntry type="library" name="Maven: org.ow2.asm:asm:5.0.4" level="project" />
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
<orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.2" level="project" />
<orderEntry type="library" name="Maven: jakarta.activation:jakarta.activation-api:1.2.1" level="project" />
<orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter:5.6.2" level="project" />
<orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter-api:5.6.2" level="project" />
<orderEntry type="library" name="Maven: org.opentest4j:opentest4j:1.2.0" level="project" />
<orderEntry type="library" name="Maven: org.junit.platform:junit-platform-commons:1.6.2" level="project" />
<orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter-params:5.6.2" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.6.2" level="project" />
<orderEntry type="library" name="Maven: org.junit.vintage:junit-vintage-engine:5.6.2" level="project" />
<orderEntry type="library" name="Maven: org.apiguardian:apiguardian-api:1.1.0" level="project" />
<orderEntry type="library" name="Maven: org.junit.platform:junit-platform-engine:1.6.2" level="project" />
<orderEntry type="library" name="Maven: junit:junit:4.12" level="project" />
<orderEntry type="library" name="Maven: org.mockito:mockito-junit-jupiter:3.1.0" level="project" />
<orderEntry type="library" name="Maven: org.assertj:assertj-core:3.13.2" level="project" />
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest:2.1" level="project" />
<orderEntry type="library" name="Maven: org.mockito:mockito-core:3.1.0" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.10.6" level="project" />
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy-agent:1.10.6" level="project" />
<orderEntry type="library" name="Maven: org.objenesis:objenesis:2.6" level="project" />
<orderEntry type="library" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" />
<orderEntry type="library" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-test:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-context:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-crypto:5.3.3.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-commons:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-rsa:1.0.9.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.bouncycastle:bcpkix-jdk15on:1.64" level="project" />
<orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.64" level="project" />
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:8.0.16" level="project" />
<orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-client:1.4.1" level="project" />
<orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-common:1.4.1" level="project" />
<orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpasyncclient:4.1.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore-nio:4.4.13" level="project" />
<orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-api:1.4.1" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:guava:29.0-jre" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:failureaccess:1.0.1" level="project" />
<orderEntry type="library" name="Maven: com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava" level="project" />
<orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:3.0.2" level="project" />
<orderEntry type="library" name="Maven: org.checkerframework:checker-qual:2.11.1" level="project" />
<orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.3.4" level="project" />
<orderEntry type="library" name="Maven: com.google.j2objc:j2objc-annotations:1.3" level="project" />
<orderEntry type="library" name="Maven: commons-codec:commons-codec:1.13" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.11.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.1" level="project" />
<orderEntry type="library" name="Maven: io.prometheus:simpleclient:0.5.0" level="project" />
<orderEntry type="library" name="Maven: com.alibaba.spring:spring-context-support:1.0.10" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-ribbon:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-ribbon:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-archaius:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-archaius:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: commons-configuration:commons-configuration:1.8" level="project" />
<orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon:2.3.0" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.ribbon:ribbon-transport:2.3.0" 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" name="Maven: com.netflix.ribbon:ribbon-core:2.3.0" 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.3.0" level="project" />
<orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.2" 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:jersey-core:1.19.1" 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.sun.jersey.contribs:jersey-apache-client4:1.19.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.netflix.netflix-commons:netflix-commons-util:0.3.0" level="project" />
<orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-loadbalancer:2.3.0" 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-openfeign:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-openfeign-core:2.2.5.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.5" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form-spring:3.8.0" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form:3.8.0" level="project" />
<orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.4" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign:feign-core:10.10.1" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign:feign-slf4j:10.10.1" level="project" />
<orderEntry type="library" name="Maven: io.github.openfeign:feign-hystrix:10.10.1" level="project" />
<orderEntry type="library" name="Maven: com.netflix.archaius:archaius-core:0.7.6" level="project" />
<orderEntry type="library" name="Maven: com.netflix.hystrix:hystrix-core:1.5.18" level="project" />
<orderEntry type="library" name="Maven: org.hdrhistogram:HdrHistogram:2.1.9" level="project" />
<orderEntry type="library" name="Maven: com.mosty:common-magic-api-starter:1.0.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.mosty:common-base-starter:1.0.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.apache.velocity:velocity-engine-core:2.3" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.8.0" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.14" level="project" />
<orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.14" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.8.0" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-core:2.8.0" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.8.0" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.8.0" level="project" />
<orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.8.0" level="project" />
<orderEntry type="library" name="Maven: org.reflections:reflections:0.9.11" level="project" />
<orderEntry type="library" name="Maven: org.javassist:javassist:3.21.0-GA" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" 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.8.0" level="project" />
<orderEntry type="library" name="Maven: com.github.caspar-chen:swagger-ui-layer:1.1.3" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.11.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.11.1" level="project" />
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.11.1" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.30" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.30" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: cn.hutool:hutool-all:5.7.20" level="project" />
<orderEntry type="library" name="Maven: com.belerweb:pinyin4j:2.5.0" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.83" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.9" level="project" />
<orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.10" level="project" />
<orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper:5.3.0" level="project" />
<orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:4.2" level="project" />
<orderEntry type="library" name="Maven: jakarta.validation:jakarta.validation-api:2.0.2" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-boot-starter:3.4.3" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus:3.4.3" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.4.2" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-extension:3.4.3" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-core:3.4.3" level="project" />
<orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-annotation:3.4.3" level="project" />
<orderEntry type="library" name="Maven: org.mybatis:mybatis:3.5.7" level="project" />
<orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:2.0.6" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:4.1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:4.1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:3.1.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-compress:1.19" level="project" />
<orderEntry type="library" name="Maven: com.github.virtuald:curvesapi:1.06" level="project" />
<orderEntry type="library" name="Maven: org.apache.poi:poi:4.1.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.4" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-math3:3.6.1" level="project" />
<orderEntry type="library" name="Maven: com.zaxxer:SparseBitSet:1.2" level="project" />
<orderEntry type="library" name="Maven: org.ssssssss:magic-api-spring-boot-starter:2.0.1" level="project" />
<orderEntry type="library" name="Maven: org.ssssssss:magic-api:2.0.1" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-websocket:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-messaging:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-websocket:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.commons:commons-text:1.6" level="project" />
<orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.9.4" level="project" />
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" />
<orderEntry type="library" name="Maven: org.ssssssss:magic-script:1.8.5" level="project" />
<orderEntry type="library" name="Maven: org.ssssssss:magic-editor:2.0.1" level="project" />
<orderEntry type="library" name="Maven: org.ssssssss:magic-api-plugin-swagger:2.0.1" level="project" />
<orderEntry type="library" name="Maven: com.mosty:common-token-starter:1.0.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.alibaba:transmittable-thread-local:2.11.5" level="project" />
<orderEntry type="library" name="Maven: com.auth0:java-jwt:3.8.1" level="project" />
<orderEntry type="library" name="Maven: com.mosty:common-redis-starter:1.0.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-redis:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.3.2.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.2.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.lettuce:lettuce-core:5.2.1.RELEASE" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-common:4.1.51.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-handler:4.1.51.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.51.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-buffer:4.1.51.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-codec:4.1.51.Final" level="project" />
<orderEntry type="library" name="Maven: io.netty:netty-transport:4.1.51.Final" level="project" />
<orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.3.8.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.3" level="project" />
<orderEntry type="module" module-name="mosty-base-feign-sdk" />
<orderEntry type="library" name="Maven: com.netflix.feign:feign-slf4j:8.14.4" level="project" />
<orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.feign:feign-core:8.14.4" level="project" />
<orderEntry type="library" name="Maven: com.mosty:common-core-starter:1.0.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.mosty:common-config-starter:1.0.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-starter:2.2.0" level="project" />
<orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-autoconfigure:2.2.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-core:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-lang:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-cache:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-hash:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-core:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-crypto-cipher:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-core:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-config-ogdl:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-event:1.8.0" level="project" />
<orderEntry type="library" name="Maven: org.apache.shiro:shiro-ehcache:1.8.0" level="project" />
<orderEntry type="library" name="Maven: net.sf.ehcache:ehcache-core:2.6.11" level="project" />
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-validation:2.2.4.RELEASE" level="project" />
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.30" level="project" />
<orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.0.18.Final" level="project" />
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" level="project" />
<orderEntry type="library" name="Maven: com.github.penggle:kaptcha:2.3.2" level="project" />
<orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:4.0.1" level="project" />
<orderEntry type="library" name="Maven: com.jhlabs:filters:2.0.235-1" level="project" />
<orderEntry type="library" name="Maven: io.minio:minio:8.0.3" level="project" />
<orderEntry type="library" name="Maven: com.carrotsearch.thirdparty:simple-xml-safe:2.7.1" level="project" />
<orderEntry type="library" name="Maven: com.squareup.okhttp3:okhttp:3.14.6" level="project" />
<orderEntry type="library" name="Maven: com.squareup.okio:okio:1.17.2" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.10" level="project" />
<orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.13" level="project" />
<orderEntry type="library" name="Maven: com.hikvision.ga:artemis-http-client:1.1.3" level="project" />
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
<orderEntry type="library" name="Maven: org.locationtech.jts:jts-core:1.18.0" level="project" />
<orderEntry type="library" name="Maven: com.mosty:operation-log-aspect-starter:1.0.0-SNAPSHOT" level="project" />
<orderEntry type="library" name="Maven: com.vividsolutions:jts:1.13" level="project" />
</component>
</module>

108
mosty-qwzx/pom.xml Normal file
View File

@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>mosty-dyga-cloud</artifactId>
<groupId>com.mosty</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>mosty-qwzx</artifactId>
<description>勤务中心</description>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<!--magicAPI-->
<dependency>
<groupId>com.mosty</groupId>
<artifactId>common-magic-api-starter</artifactId>
<version>1.0.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<!--登录jar包-->
<dependency>
<groupId>com.mosty</groupId>
<artifactId>common-token-starter</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
<!--redis包-->
<dependency>
<groupId>com.mosty</groupId>
<artifactId>common-redis-starter</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
<!--base-feign-->
<dependency>
<groupId>com.mosty</groupId>
<artifactId>mosty-base-feign-sdk</artifactId>
</dependency>
<!--日志包-->
<dependency>
<groupId>com.mosty</groupId>
<artifactId>operation-log-aspect-starter</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.vividsolutions</groupId>
<artifactId>jts</artifactId>
<version>1.13</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 这个插件可以将应用打包成一个可执行的jar包-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@ -0,0 +1,32 @@
package com.mosty.qwzx;
import com.mosty.common.base.timeconsume.EnableTimeConsume;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.scheduling.annotation.EnableScheduling;
/**
* 勤务中心 微服务
* @author kevin
* @date 2022/1/22 4:23 PM[
* @since 1.0.0
*/
@EnableTimeConsume
//@ComponentScan("com.mosty")
@EnableFeignClients(basePackages = "com.mosty.base.feign.service")
@MapperScan("com.mosty.qwzx.mapper")
@EnableDiscoveryClient
@EnableScheduling
@SpringBootApplication
public class MostyQwzxApplication {
public static void main(String[] args) {
SpringApplication.run(MostyQwzxApplication.class, args);
}
}

View File

@ -0,0 +1,23 @@
package com.mosty.qwzx.config;
import feign.RequestInterceptor;
import feign.RequestTemplate;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
@Configuration
public class FeignConfig implements RequestInterceptor {
@Override
public void apply(RequestTemplate requestTemplate) {
ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
if (attr != null) {
HttpServletRequest request = attr.getRequest();
// 添加token
requestTemplate.header("Authorization", request.getHeader("Authorization"));
}
}
}

View File

@ -0,0 +1,25 @@
package com.mosty.qwzx.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import java.util.List;
/**
* 全局配置
* @author kevin
* @date 2022/5/25 1:56 上午
* @since 1.0.0
*/
@Data
@Configuration
@ConfigurationProperties("exclude.path-patterns")
public class GlobalYmlConfig {
/**
* swagger 静态文件的放行列表
*/
private List<String> swagger;
}

View File

@ -0,0 +1,120 @@
package com.mosty.qwzx.config;
import com.alibaba.fastjson.JSON;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.module.SimpleModule;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer;
import com.mosty.common.token.SysUserInterceptor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
import org.springframework.web.servlet.config.annotation.*;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.List;
/**
* 单体服务拦截器
* @author kevin
* @date 2022/3/21 11:17 PM
* @since 1.0.0
*/
@Configuration
@Slf4j
public class WebMvcConfig implements WebMvcConfigurer, InitializingBean {
private static final String DEFAULT_TIME_FORMAT = "HH:mm:ss";
private static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd";
private static final String DEFAULT_DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
@Value("${server.servlet.context-path:/}")
private String contextPath;
@Autowired
private GlobalYmlConfig globalYmlConfig;
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
ObjectMapper objectMapper = converter.getObjectMapper();
// 生成JSON时,将所有Long转换成String
SimpleModule simpleModule = new SimpleModule();
//日期格式化
simpleModule.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT)));
simpleModule.addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT)));
simpleModule.addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT)));
simpleModule.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT)));
simpleModule.addDeserializer(LocalDate.class, new LocalDateDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT)));
simpleModule.addDeserializer(LocalTime.class, new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT)));
objectMapper.registerModule(simpleModule);
// 时间格式化
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
objectMapper.configure(JsonGenerator.Feature.WRITE_BIGDECIMAL_AS_PLAIN, true);
objectMapper.configure(JsonGenerator.Feature.IGNORE_UNKNOWN, true);
objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
objectMapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
// 设置格式化内容
converter.setObjectMapper(objectMapper);
converters.add(0, converter);
}
@Override
public void afterPropertiesSet() throws Exception {
log.info("当前服务的 contextPath={}", contextPath);
log.info("当前服务的 swaggerExcludePathPatterns={}", JSON.toJSONString(globalYmlConfig.getSwagger()));
}
@Override
public void addViewControllers(ViewControllerRegistry registry) {
}
@Override
public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
configurer.defaultContentType(MediaType.APPLICATION_JSON);
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(userInfoInterceptor()).addPathPatterns("/**")
.excludePathPatterns(globalYmlConfig.getSwagger());
log.info("初始化WebMvcConfig 监控拦截器SysUserInterceptor");
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
if (!registry.hasMappingForPattern("/template/**")) {
registry.addResourceHandler("/template/**").addResourceLocations("classpath:/template/");
}
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("docs.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
WebMvcConfigurer.super.addResourceHandlers(registry);
}
@Bean
public SysUserInterceptor userInfoInterceptor() {
log.info("初始化WebMvcConfig 拦截器SysUserInterceptor");
return new SysUserInterceptor();
}
}

View File

@ -0,0 +1,40 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwMfjSearchDto;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.token.JwtSysUser;
import com.mosty.qwzx.service.QwzxQwlbService;
import com.mosty.qwzx.service.QwzxStatisticsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@Api(tags = "勤务类别统计接口-源MAGIC接口")
@RestController
@AllArgsConstructor
@RequestMapping("/qwlb")
public class QwzxQwlbController {
private QwzxQwlbService qwzxQwlbService;
@ApiOperation("勤务列表-不在岗警力清单")
@GetMapping("/bzgjlqd")
@JwtSysUser
public ResponseResult<List<Map<String, Object>>> bzgjlqd(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxQwlbService.bzgjlqd(dto));
}
@ApiOperation("勤务列表-街面巡组")
@GetMapping("/jmxz")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> jmxz(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxQwlbService.jmxz(dto));
}
}

View File

@ -0,0 +1,279 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwMfjSearchDto;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.token.JwtSysUser;
import com.mosty.qwzx.service.QwzxStatisticsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@Api(tags = "勤务中心统计接口-源MAGIC接口")
@RestController
@AllArgsConstructor
@RequestMapping("/jlqk")
public class QwzxStatisticsController {
private QwzxStatisticsService qwzxStatisticsService;
@ApiOperation("警力情况-辅警-全部辅警数量")
@GetMapping("/fj/qbfj")
@JwtSysUser
public ResponseResult<Integer> qbfj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qbfj(dto));
}
@ApiOperation("警力情况-辅警-全部辅警列表")
@GetMapping("/fj/qbfjList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qbfjList(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qbfjList(dto));
}
@ApiOperation("警力情况-辅警-全部列表")
@GetMapping("/fj/qblb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qblb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qblb(dto));
}
@ApiOperation("警力情况-辅警-全部列表-第三方")
@GetMapping("other/fj/qblb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qblbOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qblbOther(dto));
}
@ApiOperation("警力情况-辅警-全部在岗统计")
@GetMapping("/fj/qbzgtj")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qbzgtj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qbzgtj(dto));
}
@ApiOperation("警力情况-辅警-在岗辅警")
@GetMapping("/fj/zgfj")
@JwtSysUser
public ResponseResult<Integer> zgfj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgfj(dto));
}
@ApiOperation("警力情况-辅警-在岗辅警列表")
@GetMapping("/fj/zgfjList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> zgfjList(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgfjList(dto));
}
@ApiOperation("警力情况-辅警-在岗辅警列表-第三方")
@GetMapping("other/fj/zgfjList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> zgfjListOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgfjListOther(dto));
}
@ApiOperation("警力情况-辅警-在岗列表")
@GetMapping("/fj/zglb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> zglb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zglb(dto));
}
@ApiOperation("警力情况-街面警力-辅警列表")
@GetMapping("/jmjl/fjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> fjlb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.fjlb(dto));
}
@ApiOperation("警力情况-街面警力-辅警列表-第三方")
@GetMapping("other/jmjl/fjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> fjlbOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.fjlbOther(dto));
}
@ApiOperation("警力情况-街面警力-民警列表")
@GetMapping("/jmjl/mjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> mjlb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjlb(dto));
}
@ApiOperation("警力情况-街面警力-民警列表-第三方")
@GetMapping("other/jmjl/mjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> mjlbOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjlbOther(dto));
}
@ApiOperation("警力情况-街面警力-全部民警辅警")
@GetMapping("/jmjl/qb")
@JwtSysUser
public ResponseResult<Integer> qb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qb(dto));
}
@ApiOperation("警力情况-街面警力-全部民警辅警列表")
@GetMapping("/jmjl/qbList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qbList(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qbList(dto));
}
@ApiOperation("警力情况-街面警力-全部在岗民警辅警")
@GetMapping("/jmjl/zg")
@JwtSysUser
public ResponseResult<Integer> zg(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zg(dto));
}
@ApiOperation("警力情况-街面警力-在岗民警辅警列表")
@GetMapping("/jmjl/zgList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> zgList(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgList(dto));
}
@ApiOperation("警力情况-可抽调-可抽调辅警列表")
@GetMapping("/kcd/fjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> kcdFjlb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.kcdFjlb(dto));
}
@ApiOperation("警力情况-可抽调-可抽调民警辅警数量")
@GetMapping("/kcd/zbtj")
@JwtSysUser
public ResponseResult<List<Map<String,Object>>> zbtj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zbtj(dto));
}
@ApiOperation("警力情况-可抽调-可抽调民警列表")
@GetMapping("/kcd/mjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> kcdMjlb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.kcdMjlb(dto));
}
@ApiOperation("警力情况-民警-民警辅警整合列表")
@GetMapping("/mj/mjfjzh")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> mjfjzh(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjfjzh(dto));
}
@ApiOperation("警力情况-民警-全部列表")
@GetMapping("/mj/qblb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> mjQblb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjQblb(dto));
}
//===============================================================================================
@ApiOperation("警力情况-民警-全部列表-第三方")
@GetMapping("other/mj/qblb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> mjQblbOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjQblbOther(dto));
}
@ApiOperation("警力情况-民警-全部民警")
@GetMapping("/mj/qbmj")
@JwtSysUser
public ResponseResult<Integer> qbmj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qbmj(dto));
}
@ApiOperation("警力情况-民警-全部民警列表")
@GetMapping("/mj/qbmjList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qbmjList(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qbmjList(dto));
}
@ApiOperation("警力情况-民警-全部在岗统计")
@GetMapping("/mj/qbzgtj")
@JwtSysUser
public ResponseResult<Integer> mjQbzgtj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjQbzgtj(dto));
}
@ApiOperation("警力情况-民警-在岗列表")
@GetMapping("/mj/zglb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> mjZglb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjZglb(dto));
}
@ApiOperation("警力情况-民警-在岗民警")
@GetMapping("/mj/zgmj")
@JwtSysUser
public ResponseResult<Integer> zgmj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgmj(dto));
}
@ApiOperation("警力情况-民警-在岗民警辅警整合")
@GetMapping("/mj/zgmjfjzh")
@JwtSysUser
public ResponseResult<List<Map<String, Object>>> zgmjfjzh(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgmjfjzh(dto));
}
@ApiOperation("警力情况-民警-在岗民警列表")
@GetMapping("/mj/zgmjList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> zgmjList(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgmjList(dto));
}
@ApiOperation("警力情况-民警-在岗民警列表-第三方")
@GetMapping("other/mj/zgmjList")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> zgmjListOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.zgmjListOther(dto));
}
@ApiOperation("警力情况-请休假-辅警列表")
@GetMapping("/qxj/fjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qxFjlb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qxFjlb(dto));
}
@ApiOperation("警力情况-请休假-辅警列表-第三方")
@GetMapping("other/qxj/fjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qxFjlbOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qxFjlbOther(dto));
}
@ApiOperation("警力情况-请休假-民警辅警统计")
@GetMapping("/qxj/mjfjtj")
@JwtSysUser
public ResponseResult<List<Map<String,Object>>> mjfjtj(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.mjfjtj(dto));
}
@ApiOperation("警力情况-请休假-民警列表")
@GetMapping("/qxj/mjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qxjMjlb(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qxjMjlb(dto));
}
@ApiOperation("警力情况-请休假-民警列表-第三方")
@GetMapping("other/qxj/mjlb")
@JwtSysUser
public ResponseResult<IPage<Map<String, Object>>> qxjMjlbOther(TbQwMfjSearchDto dto) {
return ResponseResult.success(this.qwzxStatisticsService.qxjMjlbOther(dto));
}
}

View File

@ -0,0 +1,89 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwSearchJlqdDto;
import com.mosty.base.model.entity.qwzx.TbQwBmjlbbJlmx;
import com.mosty.base.model.vo.qwzx.TbQwBmjlbbCountVo;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.dto.qwzx.TbQwSearchZgmfjDto;
import com.mosty.base.model.query.qwzx.TbQwBmjlbbCountQuery;
import com.mosty.base.model.query.qwzx.TbQwBmjlbbQuery;
import com.mosty.base.model.vo.qwzx.Gzqk;
import com.mosty.base.model.vo.qwzx.TbQwBmjlbbVo;
import com.mosty.qwzx.service.TbQwBmjlbbService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* <p>
* 部门每日警力报备表 前端控制器
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Api(tags = "部门每日警力报备接口")
@RestController
@AllArgsConstructor
@RequestMapping("/tbQwBmjlbb")
public class TbQwBmjlbbController {
private TbQwBmjlbbService tbQwBmjlbbService;
@ApiOperation("大屏-查询在岗警力")
@GetMapping("/selectOnCop")
@JwtSysUser
@Log(title = "查询在岗警力", businessType = BusinessType.OTHER)
public ResponseResult<Gzqk> selectOnCop() {
return ResponseResult.success(tbQwBmjlbbService.selectOnCop());
}
@ApiOperation("计算今日部门警力报备情况")
@PostMapping("/setBmjlbbInfo")
@JwtSysUser
public ResponseResult<Void> setBmjlbbInfo(String time) {
tbQwBmjlbbService.setBmjlbbInfo(time);
return ResponseResult.success();
}
@ApiOperation("查询警力清单")
@JwtSysUser
@GetMapping("/getJlqdList")
public ResponseResult<List<Map<String, Object>>> getJlqdList(TbQwSearchJlqdDto dto) {
return ResponseResult.success(tbQwBmjlbbService.getJlqdList(dto));
}
@ApiOperation("查询警力清单,存入redis中")
@JwtSysUser
@GetMapping("/getJlqdListToRedis")
public ResponseResult<List<Map<String, Object>>> getJlqdListToRedis(TbQwSearchJlqdDto dto) {
return ResponseResult.success(tbQwBmjlbbService.getJlqdListToRedis(dto));
}
@ApiOperation("高新领导端--查询在岗警力数量")
@GetMapping("/getZgjlCount")
@JwtSysUser
public ResponseResult<Map<String, Object>> getZgjlCount() {
return ResponseResult.success(tbQwBmjlbbService.getZgjlCount());
}
@ApiOperation("值班统计")
@GetMapping("/countCdepTree")
@JwtSysUser
public ResponseResult<List<Map<String, Object>>> countCdepTree(String ssbmdm) {
return ResponseResult.success(tbQwBmjlbbService.countCdepTree(ssbmdm));
}
}

View File

@ -0,0 +1,114 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.entity.qwzx.TbQwFa;
import com.mosty.base.model.query.qwzx.TbQwFaQuery;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.qwzx.service.TbQwFaService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 巡防方案
*/
@Api(tags = "巡防方案")
@RestController
@AllArgsConstructor
@RequestMapping("/tbqwfa")
public class TbQwFaController {
private final TbQwFaService tbQwFaService;
/**
* 通过ID查询单条数据
*
* @param id 主键
* @return 实例对象
*/
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("{id}")
@Log(title = "巡防方案单条数据", businessType = BusinessType.OTHER)
@ApiImplicitParam(name = "id", value = "方案ID", paramType = "path", required = true, dataType = "String")
public ResponseResult<TbQwFa> queryById(@PathVariable String id) {
return ResponseResult.success(tbQwFaService.queryById(id));
}
/**
* 分页查询
*
* @param query 筛选条件
* @return 查询结果
*/
@ApiOperation("巡防方案分页查询")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwFa>> paginQuery(TbQwFaQuery query) {
IPage<TbQwFa> page = tbQwFaService.paginQuery(query);
return ResponseResult.success(page);
}
/**
* 新增数据
*
* @param xf 实例对象
* @return 实例对象
*/
@ApiOperation("巡防方案新增")
@JwtSysUser
@PostMapping
@Log(title = "巡防方案新增", businessType = BusinessType.INSERT)
public ResponseResult<Integer> add(@RequestBody TbQwFa xf) {
return ResponseResult.success(tbQwFaService.insert(xf));
}
/**
* 更新数据
*
* @param xf 实例对象
* @return 实例对象
*/
@ApiOperation("更新巡防方案")
@JwtSysUser
@PutMapping
@Log(title = "巡防方案更新", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> edit(@RequestBody TbQwFa xf) {
return ResponseResult.success(tbQwFaService.update(xf));
}
/**
* 通过主键删除数据
*
* @param id 主键
* @return 是否成功
*/
@ApiOperation("通过主键删除数据")
@DeleteMapping("{id}")
@Log(title = "巡防方案删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteById(@PathVariable("id") String id) {
return ResponseResult.success(tbQwFaService.deleteById(id));
}
/**
* 批量删除
*
* @param id 主键
* @return 是否成功
*/
@ApiOperation("批量删除")
@PostMapping("/bacth")
@Log(title = "巡防方案删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteByIds(@RequestBody List<String> id) {
return ResponseResult.success(tbQwFaService.deleteByIds(id));
}
}

View File

@ -0,0 +1,80 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.base.model.dto.qwzx.AppSearchQuery;
import com.mosty.base.model.dto.qwzx.TbQwQwbcEditDto;
import com.mosty.base.model.entity.qwzx.TbQwJjr;
import com.mosty.base.model.entity.qwzx.TbQwQwbc;
import com.mosty.base.model.query.qwzx.TbQwJjrQuery;
import com.mosty.base.model.query.qwzx.TbQwQwbcQuery;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.qwzx.service.TbQwJjrService;
import com.mosty.qwzx.service.TbQwQwbcService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Api(tags = "节假日相关接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwJjr")
public class TbQwJjrController {
private final TbQwJjrService tbQwJjrService;
@ApiOperation("新增节假日")
@JwtSysUser
@PostMapping("add")
@Log(title = "新增节假日", businessType = BusinessType.INSERT)
public ResponseResult<Void> add(@RequestBody TbQwJjr jjr) {
this.tbQwJjrService.add(jjr);
return ResponseResult.success();
}
@ApiOperation("修改节假日")
@JwtSysUser
@PostMapping("update")
@Log(title = "修改节假日", businessType = BusinessType.UPDATE)
public ResponseResult<Void> update(@RequestBody TbQwJjr jjr) {
this.tbQwJjrService.update(jjr);
return ResponseResult.success();
}
@ApiOperation("批量删除节假日")
@JwtSysUser
@PostMapping("deleteBatch")
@Log(title = "批量删除节假日", businessType = BusinessType.DELETE)
@ApiImplicitParam(name = "ids", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteBatch(@RequestParam List<String> ids) {
tbQwJjrService.deleteBatch(ids);
return ResponseResult.success();
}
@ApiOperation("单条删除节假日")
@JwtSysUser
@PostMapping("del/{id}")
@Log(title = "单条删除节假日", businessType = BusinessType.DELETE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteByIds(@PathVariable("id") String id) {
tbQwJjrService.deleteByIds(id);
return ResponseResult.success();
}
@ApiOperation("分页查询节假日信息")
@JwtSysUser
@PostMapping("getPageList")
public ResponseResult<IPage<TbQwJjr>> getPageList(@RequestBody TbQwJjrQuery dto) {
return ResponseResult.success(tbQwJjrService.getPageList(dto));
}
}

View File

@ -0,0 +1,96 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.base.model.dto.qwzx.AppSearchQuery;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.dto.qwzx.TbQwQwbcEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQwbc;
import com.mosty.base.model.query.qwzx.TbQwQwbcQuery;
import com.mosty.qwzx.service.TbQwQwbcService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 勤务班次表 前端控制器
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Api(tags = "勤务班次表接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwQwbc")
public class TbQwQwbcController {
private TbQwQwbcService tbQwQwbcService;
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("{id}")
@Log(title = "勤务班次表单条数据", businessType = BusinessType.OTHER)
@ApiImplicitParam(name = "id", value = "报备ID", paramType = "path", required = true, dataType = "String")
public ResponseResult<TbQwQwbc> queryById(@PathVariable String id) {
return ResponseResult.success(tbQwQwbcService.selectById(id));
}
@ApiOperation("分页查询")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwQwbc>> paginQuery(TbQwQwbcQuery tbQwQwbcQuery) {
IPage<TbQwQwbc> page = new Page<>(tbQwQwbcQuery.getPageCurrent(), tbQwQwbcQuery.getPageSize());
return ResponseResult.success(tbQwQwbcService.getQwbc(tbQwQwbcQuery, page));
}
@ApiOperation("新增数据")
@JwtSysUser
@PostMapping
@Log(title = "勤务班次表新增", businessType = BusinessType.INSERT)
public ResponseResult<Integer> add(@RequestBody TbQwQwbc qwbc) {
return ResponseResult.success(tbQwQwbcService.addQwbc(qwbc));
}
@ApiOperation("更新数据")
@JwtSysUser
@PutMapping
@Log(title = "勤务班次表更新", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> edit(@RequestBody TbQwQwbcEditDto qwbc) {
return ResponseResult.success(tbQwQwbcService.editQwbc(qwbc));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("{id}")
@Log(title = "勤务班次表删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteById(@PathVariable("id") String id) {
return ResponseResult.success(tbQwQwbcService.deleteById(id));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("/bacth")
@Log(title = "勤务班次表删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteByIds(@RequestParam List<String> id) {
return ResponseResult.success(tbQwQwbcService.deleteBatch(id));
}
@ApiOperation("app查询班次信息")
@GetMapping("/getBcList")
@JwtSysUser
public ResponseResult<Page<TbQwQwbc>> getBcList(AppSearchQuery dto) {
return ResponseResult.success(tbQwQwbcService.getBcList(dto));
}
}

View File

@ -0,0 +1,106 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.dto.qwzx.TbQwQwdjDto;
import com.mosty.base.model.dto.qwzx.TbQwQwdjEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQwdj;
import com.mosty.base.model.query.qwzx.TbQwQwdjQuery;
import com.mosty.qwzx.service.TbQwQwdjService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 勤务等级表 前端控制器
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Api(tags = "勤务等级接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwQwdj")
public class TbQwQwdjController {
private TbQwQwdjService tbQwQwdjService;
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("{id}")
@Log(title = "勤务等级单条数据", businessType = BusinessType.OTHER)
@ApiImplicitParam(name = "id", value = "报备ID", paramType = "path", required = true, dataType = "String")
public ResponseResult<TbQwQwdj> queryById(@PathVariable String id) {
return ResponseResult.success(tbQwQwdjService.selectById(id));
}
@ApiOperation("分页查询")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwQwdj>> paginQuery(TbQwQwdjQuery dto) {
IPage<TbQwQwdj> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
return ResponseResult.success(tbQwQwdjService.getQwdj(dto, page));
}
@ApiOperation("新增数据")
@JwtSysUser
@PostMapping
@Log(title = "勤务等级新增", businessType = BusinessType.INSERT)
public ResponseResult<Integer> add(@RequestBody TbQwQwdj qwdj) {
return ResponseResult.success(tbQwQwdjService.addQwdj(qwdj));
}
@ApiOperation("更新数据")
@JwtSysUser
@PutMapping
@Log(title = "勤务等级更新", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> edit(@RequestBody TbQwQwdjEditDto qwdj) {
return ResponseResult.success(tbQwQwdjService.editQwdj(qwdj));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("{id}")
@Log(title = "勤务等级删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteById(@PathVariable("id") String id) {
return ResponseResult.success(tbQwQwdjService.deleteById(id));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("/bacth")
@Log(title = "勤务等级删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteByIds(@RequestParam List<String> id) {
return ResponseResult.success(tbQwQwdjService.deleteBatch(id));
}
@ApiOperation("发布勤务等级")
@PostMapping("/publish")
@Log(title = "发布勤务等级", businessType = BusinessType.UPDATE)
public ResponseResult<Boolean> publishQwdj(@RequestBody TbQwQwdjDto dto) {
return ResponseResult.success(tbQwQwdjService.publishQwdj(dto.getId()));
}
@ApiOperation("查询当前勤务等级")
@JwtSysUser
@GetMapping("/currentQwdj")
@Log(title = "查询当前勤务等级", businessType = BusinessType.OTHER)
@ApiImplicitParams({@ApiImplicitParam(paramType = "query", name = "dateTime", value = "dateTime", dataType = "String", required = true)})
public ResponseResult<TbQwQwdj> currentQwdj(String dateTime) {
return ResponseResult.success(tbQwQwdjService.queryCurrentQwdj(dateTime));
}
}

View File

@ -0,0 +1,92 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.base.model.query.qwzx.TbQwQxjMyQuery;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.dto.qwzx.TbQwQxjEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQxj;
import com.mosty.base.model.query.qwzx.TbQwQxjQuery;
import com.mosty.qwzx.service.TbQwQxjService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author zengbo
* @since 2022-06-27
*/
@Api(tags = "请休假接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwQxj")
public class TbQwQxjController {
private TbQwQxjService tbQwQxjService;
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("{id}")
@Log(title = "请休假单条数据", businessType = BusinessType.OTHER)
@ApiImplicitParam(name = "id", value = "报备ID", paramType = "path", required = true, dataType="String")
public ResponseResult<TbQwQxj> queryById(@PathVariable String id){
return ResponseResult.success(tbQwQxjService.selectById(id));
}
@ApiOperation("分页查询")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwQxj>> paginQuery(TbQwQxjQuery tbQwQxjQuery){
IPage<TbQwQxj> page = new Page<>(tbQwQxjQuery.getPageCurrent(), tbQwQxjQuery.getPageSize());
return ResponseResult.success(tbQwQxjService.getQxj(tbQwQxjQuery, page));
}
@ApiOperation("APP查询我的请休假记录")
@JwtSysUser
@GetMapping("getMyQxjList")
public ResponseResult<IPage<TbQwQxj>> getMyQxjList(TbQwQxjMyQuery dto){
return ResponseResult.success(tbQwQxjService.getMyQxjList(dto));
}
@ApiOperation("请休假新增")
@JwtSysUser
@PostMapping
@Log(title = "请休假新增", businessType = BusinessType.INSERT)
public ResponseResult<Integer> add(@RequestBody TbQwQxj qxj){
return ResponseResult.success(tbQwQxjService.addQxj(qxj));
}
@ApiOperation("请休假更新")
@JwtSysUser
@PutMapping
@Log(title = "请休假更新", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> edit(@RequestBody TbQwQxjEditDto qxj){
return ResponseResult.success(tbQwQxjService.editQxj(qxj));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("{id}")
@Log(title = "请休假删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType="String")
public ResponseResult<Boolean> deleteById(@PathVariable("id") String id){
return ResponseResult.success(tbQwQxjService.deleteById(id));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("/bacth")
@Log(title = "请休假删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType="String")
public ResponseResult<Boolean> deleteByIds(@RequestParam List<String> id){
return ResponseResult.success(tbQwQxjService.deleteBatch(id));
}
}

View File

@ -0,0 +1,58 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwSpsHdgjChangeDto;
import com.mosty.base.model.dto.spxl.TbSpxlSpxlfaUpdateDto;
import com.mosty.base.model.entity.qwzx.TbQwSpsCsdw;
import com.mosty.base.model.entity.spxl.TbSpxlSpxlfa;
import com.mosty.base.model.query.qwzx.TbQwSpsCsdwQuery;
import com.mosty.base.model.query.spxl.TbSpxlSpxlfaQuery;
import com.mosty.base.model.vo.qwzx.TbQwSpsCsdwVo;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.qwzx.service.TbQwSpsCsdwService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
* @author dw
* @since 2022/9/17
**/
@Api(tags = "世乒赛参赛队伍相关接口")
@RestController
@AllArgsConstructor
@RequestMapping("/tbQwSpsCsdw")
public class TbQwSpsCsdwController {
@Resource
private TbQwSpsCsdwService tbQwSpsCsdwService;
@ApiOperation("根据条件查询所有的参赛队伍")
@JwtSysUser
@GetMapping("getList")
public ResponseResult<Object> getList(TbQwSpsCsdwQuery dto) {
return ResponseResult.success(this.tbQwSpsCsdwService.getList(dto));
}
@ApiOperation("查询某一个队伍的当前的状态")
@JwtSysUser
@GetMapping("getCsdwInfo/{id}")
public ResponseResult<TbQwSpsCsdwVo> getCsdwInfo(@PathVariable("id") String id) {
return ResponseResult.success(this.tbQwSpsCsdwService.getCsdwInfo(id));
}
@ApiOperation("参赛队伍活动轨迹变更")
@JwtSysUser
@PostMapping("changeHdgj")
public ResponseResult<Void> changeHdgj(@RequestBody TbQwSpsHdgjChangeDto dto) {
this.tbQwSpsCsdwService.changeHdgj(dto);
return ResponseResult.success();
}
}

View File

@ -0,0 +1,90 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.dto.qwzx.TbQwBxfsqEditDto;
import com.mosty.base.model.entity.qwzx.TbQwXfBxfsq;
import com.mosty.base.model.query.qwzx.TbQwXfBxfsqQuery;
import com.mosty.qwzx.service.TbQwXfBxfsqService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Api(tags = "不巡防申请接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwXfBxfsq")
public class TbQwXfBxfsqController {
private TbQwXfBxfsqService tbQwXfBxfsqService;
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("{id}")
@Log(title = "不巡防申请数据", businessType = BusinessType.OTHER)
@ApiImplicitParam(name = "id", value = "报备ID", paramType = "path", required = true, dataType="String")
public ResponseResult<TbQwXfBxfsq> queryById(@PathVariable String id){
return ResponseResult.success(tbQwXfBxfsqService.selectById(id));
}
@ApiOperation("分页查询")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwXfBxfsq>> paginQuery(TbQwXfBxfsqQuery dto){
IPage<TbQwXfBxfsq> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
return ResponseResult.success(tbQwXfBxfsqService.getBxfsq(dto, page));
}
@ApiOperation("新增数据")
@JwtSysUser
@PostMapping
@Log(title = "不巡防申请新增", businessType = BusinessType.INSERT)
public ResponseResult<Integer> add(@RequestBody TbQwXfBxfsq bxfsq){
return ResponseResult.success(tbQwXfBxfsqService.addBxfsq(bxfsq));
}
@ApiOperation("更新数据")
@JwtSysUser
@PutMapping
@Log(title = "不巡防申请更新", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> edit(@RequestBody TbQwXfBxfsq dto){
return ResponseResult.success(tbQwXfBxfsqService.editBxfsq(dto));
}
@ApiOperation("审批不巡防申请")
@JwtSysUser
@PutMapping("judge")
@Log(title = "审批不巡防申请", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> judge(@RequestBody TbQwBxfsqEditDto dto){
return ResponseResult.success(tbQwXfBxfsqService.judge(dto));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("{id}")
@Log(title = "不巡防申请删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType="String")
public ResponseResult<Boolean> deleteById(@PathVariable("id") String id){
return ResponseResult.success(tbQwXfBxfsqService.deleteById(id));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("/bacth")
@Log(title = "不巡防申请删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType="String")
public ResponseResult<Boolean> deleteByIds(@RequestParam List<String> id){
return ResponseResult.success(tbQwXfBxfsqService.deleteBatch(id));
}
}

View File

@ -0,0 +1,348 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.*;
import com.mosty.base.model.entity.qwzx.TbQwJl;
import com.mosty.base.model.entity.qwzx.TbQwxfbbDk;
import com.mosty.base.model.query.qwzx.TbQwJmxzSearchDto;
import com.mosty.base.model.query.sjzx.XfbbQuery;
import com.mosty.base.model.query.sjzx.XfbbTjQuery;
import com.mosty.base.model.query.sjzx.XftjQuery;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.entity.qwzx.TbQwXfbb;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import com.mosty.base.model.query.qwzx.TbQwXfbbJmxzQuery;
import com.mosty.base.model.query.qwzx.TbQwXfbbQuery;
import com.mosty.qwzx.service.TbQwXfbbService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
* @author zengbo
* @since 2022-06-27
* 巡防报备表 前端控制器
*/
@Api(tags = "巡防报备接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwXfbb")
public class TbQwXfbbController {
@Resource
private TbQwXfbbService tbQwXfbbService;
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("{id}")
@Log(title = "巡防报备数据", businessType = BusinessType.OTHER)
@ApiImplicitParam(name = "id", value = "报备ID", paramType = "path", required = true, dataType = "String")
public ResponseResult<TbQwXfbbVo> queryById(@PathVariable String id) {
return ResponseResult.success(tbQwXfbbService.selectById(id));
}
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("getBbxxInfo")
public ResponseResult<TbQwXfbb> getBbxxInfo(String id) {
return ResponseResult.success(tbQwXfbbService.getBbxxInfo(id));
}
@ApiOperation("分页查询")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwXfbbVo>> paginQuery(TbQwXfbbQuery tbQwXfbbQuery) {
return ResponseResult.success(tbQwXfbbService.queryPage(tbQwXfbbQuery));
}
@ApiOperation("新增数据")
@JwtSysUser
@PostMapping
@Log(title = "巡防报备新增", businessType = BusinessType.INSERT)
public ResponseResult<String> add(@RequestBody TbQwXfbbVo xfbb) {
return ResponseResult.success(tbQwXfbbService.addXfbb(xfbb));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("{id}")
@Log(title = "巡防报备删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteById(@PathVariable("id") String id) {
return ResponseResult.success(tbQwXfbbService.deleteById(id));
}
@ApiOperation("通过主键删除数据")
@DeleteMapping("/bacth")
@Log(title = "巡防报备删除", businessType = BusinessType.UPDATE)
@ApiImplicitParam(name = "id", value = "标签主键", paramType = "path", required = true, dataType = "String")
public ResponseResult<Boolean> deleteByIds(@RequestParam List<String> id) {
return ResponseResult.success(tbQwXfbbService.deleteBatch(id));
}
@ApiOperation("查询街面巡组,力量,时长,里程")
@GetMapping("/selectDeck")
@JwtSysUser
public ResponseResult<Map<String, Integer>> selectDeck() {
return ResponseResult.success(tbQwXfbbService.selectDeck());
}
@ApiOperation("大屏-计划街面巡组列表-分页")
@GetMapping("/selectJhjmxzList")
@JwtSysUser
public ResponseResult<IPage<TbQwXfpbZq>> selectJhjmxzList(TbQwXzSearchDto dto) {
return ResponseResult.success(tbQwXfbbService.selectJhjmxzList(dto));
}
@ApiOperation("大屏-实际街面巡组列表-分页")
@GetMapping("/selectSjjmxzList")
@JwtSysUser
public ResponseResult<IPage<TbQwXfbb>> selectSjjmxzList(TbQwXzSearchDto dto) {
return ResponseResult.success(tbQwXfbbService.selectSjjmxzList(dto));
}
@ApiOperation("大屏-街面力量-分页")
@GetMapping("/selectJmllList")
@JwtSysUser
public ResponseResult<IPage<TbQwJl>> selectJmllList(TbQwJmllSearchDto dto) {
return ResponseResult.success(tbQwXfbbService.selectJmllList(dto));
}
@ApiOperation("大屏-查询街面巡组列表,附近警组")
@GetMapping("/selectDeckList")
@JwtSysUser
public ResponseResult<IPage<TbQwXfbb>> selectDeckList(TbQwXfbbJmxzQuery dto) {
return ResponseResult.success(tbQwXfbbService.selectDeckList(dto));
}
@ApiOperation("查询巡组信息第三方")
@GetMapping("/other/selectDeckList")
@JwtSysUser
public ResponseResult<IPage<TbQwXfbb>> selectDeckListOther(TbQwXfbbJmxzQuery dto) {
return ResponseResult.success(tbQwXfbbService.selectDeckListOther(dto));
}
@ApiOperation("查询街面巡组")
@GetMapping("/selectJmxz")
@JwtSysUser
public ResponseResult<IPage<TbQwXfbb>> selectJmxz(TbQwJmxzSearchDto dto) {
return ResponseResult.success(tbQwXfbbService.selectJmxz(dto));
}
@ApiOperation("大屏-巡组气泡-查询周边巡组")
@PostMapping("/selectNearbyDeck")
@Log(title = "大屏-巡组气泡-查询周边巡组", businessType = BusinessType.OTHER)
public ResponseResult<List<TbQwXfbb>> selectNearbyDeck(@RequestBody TbQwXfbb tbQwXfbb) {
return ResponseResult.success(tbQwXfbbService.selectNearbyDeck(tbQwXfbb));
}
@ApiOperation("开始、结束报备")
@PostMapping("/startOrEndBb")
@JwtSysUser
@Log(title = "开始、结束报备", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> startOrEndBb(@RequestBody TbQwXfbbStartOrEndBbDto dto) {
return ResponseResult.success(tbQwXfbbService.startOrEndBb(dto));
}
@ApiOperation("查询我今天的报备new")
@GetMapping("/getMybbTodayNew")
@JwtSysUser
public ResponseResult<TbQwXfbb> getMybbTodayNew(String bblx) {
return ResponseResult.success(tbQwXfbbService.getMybbTodayNew(bblx));
}
@ApiOperation("判断派出所、巡防区范围内是否有巡组")
@GetMapping("/getFjbbByYsId")
@JwtSysUser
public ResponseResult<List<TbQwXfbb>> getFjbbByYsId(String ysid) {
return ResponseResult.success(tbQwXfbbService.getFjbbByYsId(ysid));
}
@ApiOperation("根据身份证号获取最后一次报备的数据 进行显示")
@GetMapping("/getMybbLastBySfzh")
@JwtSysUser
public ResponseResult<TbQwXfbb> getMybbLastBySfzh(String sfzh) {
return ResponseResult.success(tbQwXfbbService.getMybbLastBySfzh(sfzh));
}
@ApiOperation("自动结束报备")
@GetMapping("/authJsbb")
@JwtSysUser
public ResponseResult<Void> authJsbb() {
tbQwXfbbService.authJsbb();
return ResponseResult.success();
}
@ApiOperation("根据报备ID查询巡组下的人员列表")
@GetMapping("/getJlxxByBbid/{id}")
public ResponseResult<List<TbQwJlDto>> getJlxxByBbid(@PathVariable("id") String id) {
return ResponseResult.success(tbQwXfbbService.getJlxxByBbid(id));
}
@ApiOperation("查询范围内的最近的巡组信息")
@PostMapping("/getBbxxByJi")
public ResponseResult<TbQwXfbb> getBbxxByJi(@RequestBody TbQwXfbbQueryByJlDto dto) {
return ResponseResult.success(tbQwXfbbService.getBbxxByJi(dto));
}
@ApiOperation("app查询界面警力民警辅警数量")
@GetMapping("/selectMfjCount")
@JwtSysUser
@ApiImplicitParam(name = "bbrq", value = "查询日期", required = true, dataType = "String")
public ResponseResult<Map<String, Object>> selectMfjCount(String bbrq) {
return ResponseResult.success(tbQwXfbbService.selectMfjCount(bbrq));
}
@ApiOperation("根据设备ID查询该设备所在的巡组")
@PostMapping("/getBbList/{sbid}")
@JwtSysUser
@ApiImplicitParam(name = "sbid", value = "设备ID", required = true, dataType = "String")
public ResponseResult<List<TbQwXfbb>> getBbList(@PathVariable("sbid") String sbid) {
return ResponseResult.success(tbQwXfbbService.getBbList(sbid));
}
@ApiOperation("根据设备ID查询该设备所在的巡组")
@PostMapping("/getClBbList/{gpsId}")
@JwtSysUser
@ApiImplicitParam(name = "pgsId", value = "车辆gpsiID", required = true, dataType = "String")
public ResponseResult<List<TbQwXfbb>> getClBbList(@PathVariable("gpsId") String gpsId) {
return ResponseResult.success(tbQwXfbbService.getClBbList(gpsId));
}
@ApiOperation("新增巡防报备打卡")
@PostMapping("/addXfbbDk")
@JwtSysUser
@Log(title = "新增巡防报备打卡", businessType = BusinessType.INSERT)
public ResponseResult<Void> addXfbbDk(@RequestBody TbQwXfbbDkDto dto) {
tbQwXfbbService.addXfbbDk(dto);
return ResponseResult.success();
}
@ApiOperation("判断当前位置是否再报备的巡防区内")
@PostMapping("/isDdWz")
@JwtSysUser
public ResponseResult<Boolean> isDdWz(@RequestBody TbQwXfbbDkWzDto dto) {
return ResponseResult.success(tbQwXfbbService.isDdWz(dto));
}
@ApiOperation("高新领导段-查询街面警力数量")
@PostMapping("/getJmjlCount")
@JwtSysUser
public ResponseResult<Map<String, Object>> getJmjlCount() {
return ResponseResult.success(tbQwXfbbService.getJmjlCount());
}
// 泸州态势统计-各区县巡防时长和里程
@ApiOperation("泸州态势统计-各区县巡防时长和里程")
@PostMapping("/getXfscAndLc")
@JwtSysUser
public ResponseResult<Map<String, Object>> getXfscAndLcTj(XfbbQuery dto) {
return ResponseResult.success(tbQwXfbbService.getXfscAndLc(dto));
}
// 查询部门的报备的数量
@ApiOperation("查询部门的报备的数量")
@PostMapping("/getBbCount")
@JwtSysUser
public ResponseResult<Integer> getBbCount(@RequestParam("ssbmdm") String ssbmdm,
@RequestParam("time") String time) {
return ResponseResult.success(tbQwXfbbService.getBbCount(ssbmdm, time));
}
// 查询部门时长、里程
@ApiOperation("查询部门时长、里程")
@PostMapping("/getScLc")
@JwtSysUser
public ResponseResult<Map<String, Integer>> getScLc(@RequestParam("ssbmdm") String ssbmdm,
@RequestParam("time") String time) {
return ResponseResult.success(tbQwXfbbService.getScLc(ssbmdm, time));
}
// 查询部门的报备的数量
@ApiOperation("修改巡逻状态数据")
@PostMapping("/updateXfzt")
@JwtSysUser
@Log(title = "修改巡逻状态数据", businessType = BusinessType.UPDATE)
public ResponseResult<Void> updateXfzt() {
tbQwXfbbService.updateXfzt();
return ResponseResult.success();
}
// 大屏巡防报备统计
@ApiOperation("大屏巡防报备统计")
@PostMapping("/xfbbTj")
@JwtSysUser
public ResponseResult<Map<String, Integer>> xfbbTj() {
return ResponseResult.success(tbQwXfbbService.xfbbTj());
}
// 部门统计
@ApiOperation("部门统计")
@PostMapping("/bmtj")
@JwtSysUser
@Log(title = "部门统计", businessType = BusinessType.OTHER)
public ResponseResult<IPage<Object>> bmtj(@RequestBody XfbbTjQuery query) {
return ResponseResult.success(tbQwXfbbService.bmtj(query));
}
@ApiOperation("部门统计All")
@PostMapping("/bmtjAll")
@JwtSysUser
@Log(title = "部门统计All", businessType = BusinessType.OTHER)
public ResponseResult<Object> bmtjAll(@RequestBody XfbbTjQuery query) {
return ResponseResult.success(tbQwXfbbService.bmtjAll(query));
}
@ApiOperation("巡区统计")
@PostMapping("/xqtj")
@JwtSysUser
@Log(title = "巡区统计", businessType = BusinessType.OTHER)
public ResponseResult<IPage<Object>> xqtj(@RequestBody XfbbTjQuery query) {
return ResponseResult.success(tbQwXfbbService.xqtj(query));
}
@ApiOperation("个人统计")
@PostMapping("/grtj")
@JwtSysUser
@Log(title = "个人统计", businessType = BusinessType.OTHER)
public ResponseResult<IPage<Object>> grtj(@RequestBody XfbbTjQuery query) {
return ResponseResult.success(tbQwXfbbService.grtj(query));
}
@ApiOperation("根据巡区获取报备id")
@GetMapping("/getBbidByXq")
@JwtSysUser
public ResponseResult<List<TbQwXfbb>> getBbidByXq(String xqid) {
return ResponseResult.success(tbQwXfbbService.getBbidByXq(xqid));
}
@ApiOperation("删除reidsxfwz")
@GetMapping("/delRedisXfwz")
@JwtSysUser
public ResponseResult<Void> delRedisXfwz() {
tbQwXfbbService.delRedisXfwz();
return ResponseResult.success();
}
@ApiOperation("更新巡防里程")
@GetMapping("/updateXflc")
@JwtSysUser
public ResponseResult<Integer> updateXflc(String bbid) {
return ResponseResult.success(tbQwXfbbService.updateXflc(bbid));
}
}

View File

@ -0,0 +1,158 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwXfpbZqDto;
import com.mosty.base.model.entity.qwzx.TbQwZbpbZq;
import com.mosty.base.model.vo.qwzx.TbQwXfpbZqMyVo;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.dto.qwzx.TbQwXfpbAddAndEditDto;
import com.mosty.base.model.dto.qwzx.TbQwXzSearchDto;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import com.mosty.base.model.query.qwzx.TbQwXfpbQuery;
import com.mosty.base.model.query.qwzx.TbQwXfpbSearchMyQuery;
import com.mosty.base.model.vo.qwzx.TbQwXfpbZqVo;
import com.mosty.qwzx.service.TbQwXfpbService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022/8/3
**/
@Api(tags = "巡防排班接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwXfpb")
public class TbQwXfpbController {
private TbQwXfpbService tbQwXfpbService;
@ApiOperation("巡防排班新增")
@JwtSysUser
@PostMapping
@Log(title = "巡防排班新增", businessType = BusinessType.INSERT)
public ResponseResult<Integer> addEntity(@RequestBody TbQwXfpbAddAndEditDto dto) {
return ResponseResult.success(this.tbQwXfpbService.addEntity(dto));
}
@ApiOperation("巡防排班修改")
@JwtSysUser
@PutMapping
@Log(title = "巡防排班修改", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> editEntity(@RequestBody TbQwXfpbAddAndEditDto dto) {
return ResponseResult.success(this.tbQwXfpbService.editEntity(dto));
}
@ApiOperation("删除单条巡防排班")
@JwtSysUser
@DeleteMapping("{id}")
@Log(title = "删除单条巡防排班", businessType = BusinessType.DELETE)
public ResponseResult<Integer> delEntity(@PathVariable("id") String id) {
return ResponseResult.success(this.tbQwXfpbService.delEntity(id));
}
@ApiOperation("批量删除巡防排班")
@JwtSysUser
@DeleteMapping
@Log(title = "批量删除巡防排班", businessType = BusinessType.DELETE)
public ResponseResult<Void> delBatch(@RequestBody List<String> ids) {
this.tbQwXfpbService.delBatch(ids);
return ResponseResult.success();
}
@ApiOperation("分页查询巡防排班")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwXfpbAddAndEditDto>> getPageList(TbQwXfpbQuery dto) {
return ResponseResult.success(this.tbQwXfpbService.getPageList(dto));
}
@ApiOperation("查询巡防排班详细信息")
@JwtSysUser
@GetMapping("{id}")
public ResponseResult<TbQwXfpbAddAndEditDto> getInfo(@PathVariable("id") String id) {
return ResponseResult.success(this.tbQwXfpbService.getInfo(id));
}
@ApiOperation("分页查询我的巡防排班")
@JwtSysUser
@GetMapping("getMyXfpb")
public ResponseResult<IPage<TbQwXfpbAddAndEditDto>> getMyXfpb(TbQwXfpbSearchMyQuery dto) {
return ResponseResult.success(this.tbQwXfpbService.getMyXfpb(dto));
}
@ApiOperation("APP获取我的排班信息")
@JwtSysUser
@GetMapping("getMyXfpbToday")
public ResponseResult<TbQwXfpbZqMyVo> getMyXfpbToday() {
return ResponseResult.success(this.tbQwXfpbService.getMyXfpbToday());
}
@ApiOperation("查询本月的巡防排班信息")
@JwtSysUser
@GetMapping("getThisMonthPbList")
public ResponseResult<IPage<TbQwXfpbZqVo>> getThisMonthPbList(TbQwXzSearchDto dto) {
return ResponseResult.success(this.tbQwXfpbService.getThisMonthPbList(dto));
}
@ApiOperation("查询当前时间的巡防排班情况,发送消息提醒报备(定时任务)")
@JwtSysUser
@GetMapping("checkThisTimeXfpb")
public ResponseResult<IPage<TbQwXfpbZqVo>> checkThisTimeXfpb() {
this.tbQwXfpbService.checkThisTimeXfpb();
return ResponseResult.success();
}
@ApiOperation("根据周期Id查询排班信息")
@JwtSysUser
@GetMapping("getPbZq")
public ResponseResult<TbQwXfpbZqMyVo> getPbZq(String id, String time) {
return ResponseResult.success(this.tbQwXfpbService.getPbZq(id, time));
}
@ApiOperation("每月一日添加本月的每日警力(定时任务)")
@JwtSysUser
@GetMapping("addMrjl")
public ResponseResult<Void> addMrjl() {
this.tbQwXfpbService.addMrjl();
return ResponseResult.success();
}
@ApiOperation("根据时间查询月份排班、报备情况")
@JwtSysUser
@GetMapping("getPbbbByMonth")
public ResponseResult<List<Map<String, Object>>> getPbbbByMonth(String time) {
return ResponseResult.success(this.tbQwXfpbService.getPbbbByMonth(time));
}
@ApiOperation("根据时间部门月份巡防排班、巡防报备情况")
@JwtSysUser
@GetMapping("getXfbbByMonth")
@ApiImplicitParams({
@ApiImplicitParam(name = "time", value = "月份yyyy-MM", required = true, dataType = "String")
})
public ResponseResult<List<Map<String, Object>>> getXfbbByMonth(String time) {
return ResponseResult.success(this.tbQwXfpbService.getXfbbByMonth(time));
}
@ApiOperation("根据时间查询部门月份排班、报备情况")
@JwtSysUser
@GetMapping("getPbbbByMonthBm")
public ResponseResult<List<Map<String, Object>>> getPbbbByMonthBm(String time,String ssbmdm) {
return ResponseResult.success(this.tbQwXfpbService.getPbbbByMonthBm(time, ssbmdm));
}
}

View File

@ -0,0 +1,123 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwXfbbStartOrEndBbDto;
import com.mosty.base.model.dto.qwzx.TbQwZbpbZqDto;
import com.mosty.base.model.entity.qwzx.TbQwXfbb;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.entity.qwzx.TbQwZbbb;
import com.mosty.base.model.query.qwzx.TbQwZbbbQuery;
import com.mosty.base.model.vo.qwzx.TbQwZbbbVo;
import com.mosty.qwzx.service.TbQwZbbbService;
import io.swagger.annotations.*;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022-10-09
*/
@Api(tags = "值班报备接口")
@AllArgsConstructor
@RestController
@RequestMapping("/tbQwZbbb")
public class TbQwZbbbController {
public static final String 根据时间部门查询警力情况 = "根据时间部门查询警力情况";
private final TbQwZbbbService tbQwZbbbService;
@ApiOperation("值班报备新增")
@JwtSysUser
@PostMapping
@Log(title = "值班报备新增", businessType = BusinessType.INSERT)
public ResponseResult<String> add(@RequestBody TbQwZbbbVo zb) {
return ResponseResult.success(tbQwZbbbService.addQwzb(zb));
}
@ApiOperation("通过ID查询单条数据")
@JwtSysUser
@GetMapping("{id}")
@Log(title = "值班数据", businessType = BusinessType.OTHER)
@ApiImplicitParam(name = "id", value = "报备ID", paramType = "path", required = true, dataType = "String")
public ResponseResult<TbQwZbbbVo> queryById(@PathVariable String id) {
return ResponseResult.success(tbQwZbbbService.selectById(id));
}
@ApiOperation("分页查询值班报备列表")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwZbbbVo>> paginQuery(TbQwZbbbQuery dto) {
return ResponseResult.success(tbQwZbbbService.queryPage(dto));
}
@ApiOperation("值班报备批量删除")
@DeleteMapping("/batch")
@JwtSysUser
@Log(title = "值班报备批量删除", businessType = BusinessType.DELETE)
public ResponseResult<Boolean> deleteByIds(@RequestParam List<String> ids) {
return ResponseResult.success(tbQwZbbbService.deleteBatch(ids));
}
@ApiOperation("APP获取我当前的报备信息")
@GetMapping("/getMyBbInfoToday")
@JwtSysUser
public ResponseResult<TbQwZbbb> getMyBbInfoToday() {
return ResponseResult.success(tbQwZbbbService.getMyBbInfoToday());
}
@ApiOperation("开始、结束报备")
@PostMapping("/startOrEndBb")
@JwtSysUser
@Log(title = "开始、结束报备", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> startOrEndBb(@RequestBody TbQwXfbbStartOrEndBbDto dto) {
return ResponseResult.success(this.tbQwZbbbService.startOrEndBb(dto));
}
@ApiOperation("自动结束报备")
@GetMapping("/authJsbb")
@JwtSysUser
public ResponseResult<Void> authJsbb() {
this.tbQwZbbbService.authJsbb();
return ResponseResult.success();
}
@ApiOperation("APP根据时间统计报备数量")
@PostMapping("/getBbCountByDept")
@JwtSysUser
@ApiImplicitParam(name = "time", value = "查询日期", required = true, dataType = "String")
public ResponseResult<Map<String,Object>> getBbCountByDept(String time) {
return ResponseResult.success(this.tbQwZbbbService.getBbCountByDept(time));
}
@ApiOperation("APP根据时间统计报备列表")
@PostMapping("/getBbListByDept")
@JwtSysUser
@ApiImplicitParam(name = "time", value = "查询日期", required = true, dataType = "String")
public ResponseResult<List<Map<String,Object>>> getBbListByDept(String time) {
return ResponseResult.success(this.tbQwZbbbService.getBbListByDept(time));
}
@ApiOperation("查询值班领导")
@PostMapping("/getZbld")
@JwtSysUser
public ResponseResult<Map<String,Object>> getZbld() {
return ResponseResult.success(this.tbQwZbbbService.getZbld());
}
@ApiOperation("根据时间部门查询警力情况")
@GetMapping("getJlByBm")
@JwtSysUser
public ResponseResult<Map<String,Object>> getJlByBm(String time, String ssbmdm) {
return ResponseResult.success(this.tbQwZbbbService.getJlByBm(time,ssbmdm));
}
}

View File

@ -0,0 +1,146 @@
package com.mosty.qwzx.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwZbpbZqDto;
import com.mosty.base.model.entity.qwzx.TbQwZbpbZq;
import com.mosty.base.model.vo.qwzx.TbQwXfpbZqMyVo;
import com.mosty.base.model.vo.qwzx.TbQwZbpbZqMyVo;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.entity.log.BusinessType;
import com.mosty.common.base.entity.log.Log;
import com.mosty.common.token.JwtSysUser;
import com.mosty.base.model.dto.qwzx.TbQwZbpbInsertOrUpdateDto;
import com.mosty.base.model.query.qwzx.TbQwZbpbQuery;
import com.mosty.base.model.query.qwzx.TbQwZbpbSearchMyQuery;
import com.mosty.qwzx.service.TbQwZbpbService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022/8/3
**/
@Api(tags = "值班排班相关接口(新)")
@RestController
@AllArgsConstructor
@RequestMapping("/tbQwZbpb")
public class TbQwZbpbController {
@Resource
private TbQwZbpbService tbQwZbpbService;
@ApiOperation("新增值班排班信息")
@JwtSysUser
@PostMapping
@Log(title = "新增值班排班信息", businessType = BusinessType.INSERT)
public ResponseResult<Integer> addEntity(@RequestBody TbQwZbpbInsertOrUpdateDto dto) {
return ResponseResult.success(this.tbQwZbpbService.addEntity(dto));
}
@ApiOperation("修改值班排班信息")
@JwtSysUser
@PutMapping
@Log(title = "修改值班排班信息", businessType = BusinessType.UPDATE)
public ResponseResult<Integer> updateEntity(@RequestBody TbQwZbpbInsertOrUpdateDto dto) {
return ResponseResult.success(this.tbQwZbpbService.updateEntity(dto));
}
@ApiOperation("批量删除值班排班信息")
@JwtSysUser
@DeleteMapping
@Log(title = "删除值班排班信息", businessType = BusinessType.DELETE)
public ResponseResult<Void> deleteBatch(@RequestBody List<String> ids) {
this.tbQwZbpbService.deleteBatch(ids);
return ResponseResult.success();
}
@ApiOperation("删除单条值班排班信息")
@JwtSysUser
@DeleteMapping("{id}")
@Log(title = "删除单条值班排班信息", businessType = BusinessType.DELETE)
public ResponseResult<Void> deleteEntity(@PathVariable("id") String id) {
this.tbQwZbpbService.deleteEntity(id);
return ResponseResult.success();
}
@ApiOperation("查询值班排班列表信息--分页")
@JwtSysUser
@GetMapping
public ResponseResult<IPage<TbQwZbpbInsertOrUpdateDto>> selectPage(TbQwZbpbQuery dto) {
return ResponseResult.success(this.tbQwZbpbService.selectPage(dto));
}
@ApiOperation("查询值班排班详情信息")
@JwtSysUser
@GetMapping("{id}")
public ResponseResult<TbQwZbpbInsertOrUpdateDto> getInfo(@PathVariable("id") String id) {
return ResponseResult.success(this.tbQwZbpbService.getInfo(id));
}
@ApiOperation("分页查询我的值班排班")
@JwtSysUser
@GetMapping("getMyZbpb")
public ResponseResult<IPage<TbQwZbpbInsertOrUpdateDto>> getMyZbpb(TbQwZbpbSearchMyQuery dto) {
return ResponseResult.success(this.tbQwZbpbService.getMyZbpb(dto));
}
@ApiOperation("查询当前时间的值班排班情况,发送定时任务(定时任务)")
@JwtSysUser
@GetMapping("checkThisTimeZbpb")
public ResponseResult<Void> checkThisTimeZbpb() {
this.tbQwZbpbService.checkThisTimeZbpb();
return ResponseResult.success();
}
@ApiOperation("APP获取我的值班排班信息")
@JwtSysUser
@GetMapping("getMyZbpbToday")
public ResponseResult<TbQwZbpbZqMyVo> getMyZbpbToday() {
return ResponseResult.success(this.tbQwZbpbService.getMyZbpbToday());
}
@ApiOperation("根据周期ID查询周期详细信息")
@GetMapping("/getZbpbZqInfo/{id}")
public ResponseResult<TbQwZbpbZqDto> getZbpbZqInfo(@PathVariable("id") String id) {
return ResponseResult.success(this.tbQwZbpbService.getZbpbZqInfo(id));
}
@ApiOperation("根据月份导出值班排班表情况")
@JwtSysUser
@GetMapping("exportData")
@ApiImplicitParams({
@ApiImplicitParam(name = "time", value = "月份yyyy-MM", required = true, dataType="String"),
@ApiImplicitParam(name = "pbid", value = "排班ID", required = true, dataType="String")
})
public ResponseResult<List<Map<String,Object>>> exportData(String time,String pbid) {
return ResponseResult.success(this.tbQwZbpbService.exportData(time,pbid));
}
@ApiOperation("查询部门月排班情况")
@JwtSysUser
@GetMapping("getDeptByMonth")
@ApiImplicitParams({
@ApiImplicitParam(name = "time", value = "月份yyyy-MM", required = true, dataType="String")
})
public ResponseResult<List<Map<String,Object>>> getDeptByMonth(String time) {
return ResponseResult.success(this.tbQwZbpbService.getDeptByMonth(time));
}
@ApiOperation("根据时间查询部门值班排班、值班报备情况")
@JwtSysUser
@GetMapping("getZbbbByMonth")
@ApiImplicitParams({
@ApiImplicitParam(name = "time", value = "月份yyyy-MM", required = true, dataType="String")
})
public ResponseResult<List<Map<String, Object>>> getZbbbByMonth(String time) {
return ResponseResult.success(this.tbQwZbpbService.getZbbbByMonth(time));
}
}

View File

@ -0,0 +1,20 @@
package com.mosty.qwzx.mapper;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
@Mapper
public interface QwzxQwlbMapper {
@ApiOperation("不在岗警力清单")
List<Map<String, Object>> qxjMjlb(Map<String, Object> map);
@ApiOperation("街面巡组")
List<Map<String, Object>> jmxz(Map<String, Object> map);
@ApiOperation("街面巡组count")
int jmxzCount(Map<String, Object> map);
}

View File

@ -0,0 +1,133 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
@Mapper
public interface QwzxStatisticsMapper {
@ApiOperation("查询辅警数量")
int getQbfjCount(Map<String, Object> map);
@ApiOperation("查询辅警列表")
List<Map<String, Object>> getQbfjList(Map<String, Object> map);
@ApiOperation("查询全部列表")
List<Map<String, Object>> qblb(Map<String, Object> map);
@ApiOperation("查询全部列表计数")
int getQblbCount(Map<String, Object> map);
@ApiOperation("全部在岗统计")
List<Map<String, Object>> qbzgtj(Map<String, Object> map);
@ApiOperation("全部在岗统计计数")
int getQbzgtjCount(Map<String, Object> map);
@ApiOperation("在岗辅警数量")
int getZgfjCount(Map<String, Object> map);
@ApiOperation("在岗辅警列表")
List<Map<String, Object>> getZgfjList(Map<String, Object> map);
@ApiOperation("在岗列表")
List<Map<String, Object>> zglb(Map<String, Object> map);
@ApiOperation("在岗列表统计")
int getZglbCount(Map<String, Object> map);
@ApiOperation("辅警列表")
List<Map<String, Object>> fjlb(Map<String, Object> map);
@ApiOperation("辅警列表计数")
int getFjlbCount(Map<String, Object> map);
@ApiOperation("民警列表")
List<Map<String, Object>> mjlb(Map<String, Object> map);
@ApiOperation("民警列表计数")
int getMjlbCount(Map<String, Object> map);
@ApiOperation("全部民警和辅警数量")
int getQbCount(Map<String, Object> map);
@ApiOperation("全部民警和辅警列表")
List<Map<String, Object>> qbList(Map<String, Object> map);
@ApiOperation("在岗民警辅警数量")
int getZgCount(Map<String, Object> map);
@ApiOperation("在岗民警辅警列表")
List<Map<String, Object>> zgList(Map<String, Object> map);
@ApiOperation("可抽调辅警列表")
List<Map<String, Object>> kcdFjlb(Map<String, Object> map);
@ApiOperation("可抽调辅警列表计数")
int getKcdFjlbCount(Map<String, Object> map);
@ApiOperation("可抽调民警辅警数量")
List<Map<String,Object>> getZbtjCount(Map<String, Object> map);
@ApiOperation("可抽调民警列表")
List<Map<String, Object>> kcdMjList(Map<String, Object> map);
@ApiOperation("民警辅警整合列表")
List<Map<String, Object>> mjfjzh(Map<String, Object> map);
@ApiOperation("全部列表")
List<Map<String, Object>> mjQblb(Map<String, Object> map);
@ApiOperation("全部民警")
Integer getQbmjCount(Map<String, Object> map);
@ApiOperation("全部民警列表")
List<Map<String, Object>> qbmjList(Map<String, Object> map);
@ApiOperation("全部在岗统计")
int getQbzgCount(Map<String, Object> map);
@ApiOperation("民警-在岗列表")
List<Map<String, Object>> mjZglb(Map<String, Object> map);
@ApiOperation("民警-在岗列表")
int getmMjzglbCount(Map<String, Object> map);
@ApiOperation("在岗民警")
int getZgmj(Map<String, Object> map);
@ApiOperation("在岗民警辅警整合")
List<Map<String, Object>> zgmjfjzh(Map<String, Object> map);
@ApiOperation("在岗民警列表")
List<Map<String, Object>> zgmjList(Map<String, Object> map);
@ApiOperation("请休假-辅警列表")
List<Map<String, Object>> qxFjlb(Map<String, Object> map);
@ApiOperation("请休假-民警辅警统计")
List<Map<String,Object>> mjfjtj(Map<String, Object> map);
@ApiOperation("警力情况-请休假-民警列表")
List<Map<String, Object>> qxjMjlb(Map<String, Object> map);
@ApiOperation("可抽调民警列表")
int kcdMjCount(Map<String, Object> map);
@ApiOperation("民警数量")
int mjQblbCount(Map<String, Object> map);
@ApiOperation("民警辅警整合count")
int mjfjzhCount(Map<String, Object> map);
@ApiOperation("请休假-民警列表")
int qxjMjlbCount(Map<String, Object> map);
@ApiOperation("请休假-辅警列表")
int qxFjlbCount(Map<String, Object> map);
}

View File

@ -0,0 +1,28 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwBmjlbbJlmx;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* <p>
* 部门每日警力报备-警力明细 Mapper 接口
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwBmjlbbJlmxMapper extends BaseMapper<TbQwBmjlbbJlmx> {
@ApiOperation("删除部门每日警力报备-警力明细")
int deleteJlmx(@Param("list") List<String> list);
@ApiOperation("根据警组ID删除")
void deleteByJlbbId(@Param("jlbbId") String jlbbId);
}

View File

@ -0,0 +1,29 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwBmjlbbCountDto;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwBmjlbb;
import com.mosty.base.model.query.qwzx.TbQwBmjlbbCountQuery;
import com.mosty.base.model.query.qwzx.TbQwBmjlbbQuery;
import com.mosty.base.model.vo.qwzx.Gzqk;
import com.mosty.base.model.vo.qwzx.TbQwBmjlbbCountVo;
import com.mosty.base.model.vo.qwzx.TbQwBmjlbbVo;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwBmjlbbMapper extends BaseMapper<TbQwBmjlbb> {
@ApiOperation("警力报备统计")
TbQwBmjlbbCountVo jlbbCount(@Param("params") TbQwBmjlbbCountQuery bbjlQuery);
Gzqk selectOnCop(@Param("ssbmdm") String ssbmdm);
}

View File

@ -0,0 +1,40 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwCl;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 巡防排班或报备或值班-车辆表 Mapper 接口
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwClMapper extends BaseMapper<TbQwCl> {
/**
* 删除车辆
* @param list
*/
int deleteCl(@Param("list") List<String> list);
/**
* 根据业务ID删除
* @param ywid
*/
void deleteByYwid(@Param("ywid") String ywid);
/**
* 根据 业务ID查询
* @param ywidList
* @return
*/
List<TbQwCl> queryListByYwid(@Param("list") List<String> ywidList);
}

View File

@ -0,0 +1,10 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwFa;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TbQwFaMapper extends BaseMapper<TbQwFa> {
}

View File

@ -0,0 +1,19 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwJjr;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author dw
* @since 2022/8/8
**/
@Mapper
public interface TbQwJjrMapper extends BaseMapper<TbQwJjr> {
@ApiOperation("删除节假日数据")
void deleteBatch(List<String> ids);
}

View File

@ -0,0 +1,57 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwJl;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
/**
* 巡防排班或报备或值班-警力表(TbQwJl)表数据库访问层
*
* @author zhangHaiJun
* @since 2022-07-20 15:43:32
*/
@Mapper
public interface TbQwJlMapper extends BaseMapper<TbQwJl> {
@ApiOperation("查询所有数据")
List<TbQwJl> queryAll();
@ApiOperation("通过ID查询单条数据")
TbQwJl queryById(String id);
@ApiOperation("统计总行数")
long count(TbQwJl tbQwJl);
@ApiOperation("MyBatis原生foreach方法")
int insertBatch(@Param("entities") List<TbQwJl> entities);
@ApiOperation("批量新增或按主键更新数据MyBatis原生foreach方法")
int insertOrUpdateBatch(@Param("entities") List<TbQwJl> entities);
@ApiOperation("修改数据")
int update(TbQwJl tbQwJl);
@ApiOperation("通过主键删除数据")
int deleteById(String id);
List<Map<String, Integer>> countReportPolice(@Param("sql") String sql);
@ApiOperation("根据ywid删除警力信息")
void deleteByYwid(String id);
@ApiOperation("根据业务ID查询")
List<TbQwJl> queryListByYwid(@Param("list") List<String> list);
@ApiOperation("查询今日警力列表")
List<TbQwJl> getList(Map<String, Object> map);
@ApiOperation("查询今日警力统计")
int getCount(Map<String, Object> map);
}

View File

@ -0,0 +1,40 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwJyqx;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 巡防排班或报备或值班-警用器械表 Mapper 接口
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwJyqxMapper extends BaseMapper<TbQwJyqx> {
/**
* 删除警用器械
* @param list
*/
int deleteJyqx(@Param("list") List<String> list);
/**
* 根据业务ID删除
* @param ywid
*/
void deleteByYwid(@Param("ywid") String ywid);
/**
* 根据 业务ID查询
* @param ywidList
* @return
*/
List<TbQwJyqx> queryListByYwid(@Param("list") List<String> ywidList);
}

View File

@ -0,0 +1,17 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwQwbc;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface TbQwQwbcMapper extends BaseMapper<TbQwQwbc> {
@ApiOperation("删除勤务班次")
int deleteQwbc(@Param("list") List<String> list);
}

View File

@ -0,0 +1,28 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwQwdj;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 勤务等级表 Mapper 接口
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwQwdjMapper extends BaseMapper<TbQwQwdj> {
@ApiOperation("删除勤务等级")
int deleteQwdj(@Param("list") List<String> list);
@ApiOperation("查询当前等级")
TbQwQwdj queryCurrentQwdj(@Param("datetime") String datetime);
}

View File

@ -0,0 +1,29 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwQxj;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apiguardian.api.API;
import java.util.List;
import java.util.Map;
/**
* <p>
* 请休假 Mapper 接口
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwQxjMapper extends BaseMapper<TbQwQxj> {
@ApiOperation("删除通讯装备")
int deleteQxj(@Param("list") List<String> list);
@ApiOperation("")
List<Map<String,Integer>> selectHolidayCount(@Param("sql") String sql);
}

View File

@ -0,0 +1,14 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwSpsCsdw;
import org.apache.ibatis.annotations.Mapper;
/**
* @author dw
* @since 2022/9/17
**/
@Mapper
public interface TbQwSpsCsdwMapper extends BaseMapper<TbQwSpsCsdw> {
}

View File

@ -0,0 +1,15 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwSpsCsdw;
import com.mosty.base.model.entity.qwzx.TbQwSpsCsdwhdgj;
import org.apache.ibatis.annotations.Mapper;
/**
* @author dw
* @since 2022/9/17
**/
@Mapper
public interface TbQwSpsCsdwhdgjMapper extends BaseMapper<TbQwSpsCsdwhdgj> {
}

View File

@ -0,0 +1,17 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwXfBxfsq;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface TbQwXfBxfsqMapper extends BaseMapper<TbQwXfBxfsq> {
@ApiOperation("删除不巡防申请")
int deleteBxfsq(@Param("list") List<String> list);
}

View File

@ -0,0 +1,125 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwXfbbQueryByJlDto;
import com.mosty.base.model.dto.qwzx.TbQwXfbbVo;
import com.mosty.base.model.entity.qwzx.TbQwXfbb;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import com.mosty.base.model.entity.wzzx.TbWzLswz;
import com.mosty.base.model.query.qwzx.TbQwXfbbQuery;
import com.mosty.base.model.query.sjzx.XfbbTjQuery;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* <p>
* 巡防报备表 Mapper 接口
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwXfbbMapper extends BaseMapper<TbQwXfbb> {
@ApiOperation("删除巡防报备")
int deleteXfbb(@Param("list") List<String> list);
@ApiOperation("值班查询")
IPage<TbQwXfbbVo> queryList(@Param("page") IPage<TbQwXfbbVo> page, @Param("params") TbQwXfbbQuery zfbb);
@ApiOperation("id查询")
TbQwXfbbVo queryById(@Param("id") String id);
@ApiOperation("查询街面巡组计划数")
Integer selectJhsl(Map<String, Object> map);
@ApiOperation("查询街面巡组实际数")
Integer selectSjsl(Map<String, Object> map);
@ApiOperation("查询巡逻力量和时长里程")
Map<String, Integer> selectPowerAndDayLength(@Param("ssbmdm") String ssbmdm);
@ApiOperation("查询周边巡组")
List<TbQwXfbb> selectNearbyDeck(@Param("t") TbQwXfbb tbQwXfbb);
@ApiOperation("查询计划巡组列表")
List<TbQwXfpbZq> selectJhslList(Map<String, Object> map);
@ApiOperation("查询数据巡组列表")
List<TbQwXfbb> selectSjslList(Map<String, Object> map);
@ApiOperation("查询周边巡组或街面巡组数量")
int getCountZbxz(Map<String, Object> map);
@ApiOperation("查询周边巡组或街面巡组列表")
List<TbQwXfbb> getListZbxz(Map<String, Object> map);
@ApiOperation("查询我今天的报备new")
TbQwXfbb getMybbTodayNew(@Param("sfzh") String sfzh,
@Param("bblx") String bblx);
@ApiOperation("根据时间查询报备信息")
List<TbQwXfbb> getMybbTodayByTime(@Param("userId") String userId,
@Param("bblx") String bblx,
@Param("time") String time);
@ApiOperation("查询范围内的最近的巡组信息")
TbQwXfbb getBbxxByJi(TbQwXfbbQueryByJlDto dto);
@ApiOperation("根据设备ID查询该设备所在的巡组")
List<TbQwXfbb> getBbList(String sbid);
@ApiOperation("根据车辆gpsid查询该设备所在的巡组")
List<TbQwXfbb> getClBbList(String sbid);
@ApiOperation("新增巡防报备")
void insertEntity(TbQwXfbb xfbb);
@ApiOperation("巡防时长统计")
List<Map<String, Object>> getSumXfsc(@Param("kssj") String kssj, @Param("jssj") String jssj);
@ApiOperation("巡防里程统计")
List<Map<String, Object>> getSumXflc(@Param("kssj") String kssj, @Param("jssj") String jssj);
@ApiOperation("查询当前所有报备中的数据")
List<TbQwXfbb> getBbAll();
@ApiOperation("修改巡逻状态")
int updateByXlzt(@Param("xlzt") String xlzt,
@Param("id") String id);
@ApiOperation("修改巡逻时长")
int updateXfscById(TbQwXfbb xfbb);
@ApiOperation("部门统计")
IPage<Object> bmtj(@Param("page") IPage<TbQwXfbbVo> page, @Param("params") XfbbTjQuery query);
@ApiOperation("部门统计")
Map<String, Object> bmtjAll(XfbbTjQuery query);
@ApiOperation("巡区统计")
IPage<Object> xqtj(@Param("page") IPage<TbQwXfbbVo> page, @Param("params") XfbbTjQuery query);
@ApiOperation("个人统计")
IPage<Object> grtj(@Param("page") IPage<TbQwXfbbVo> page, @Param("params") XfbbTjQuery query);
@ApiOperation("根据设备ID查询该设备所在的巡组")
List<TbQwXfbb> getBbidByXq(String xqid);
@ApiOperation("部门统计")
Map<String, Integer> getScLc(@Param("ssbmdm") String ssbmdm, @Param("time") String time);
@ApiOperation("根据报备id获取巡逻轨迹")
List<TbWzLswz> getBbgj(String bbid);
}

View File

@ -0,0 +1,13 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwXffw;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TbQwXffwMapper extends BaseMapper<TbQwXffw> {
@ApiOperation("删除巡防范围数据")
void deleteByYwid(String id);
}

View File

@ -0,0 +1,38 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwXfpb;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwXfpbMrjl;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022/8/3
**/
@Mapper
public interface TbQwXfpbMapper extends BaseMapper<TbQwXfpb> {
@ApiOperation("根据条件按查询总数")
int getCount(Map<String, Object> map);
@ApiOperation("根据条件按查询列表")
List<TbQwXfpb> getList(Map<String, Object> map);
@ApiOperation("查询当前时间的巡防排班情况,发送消息提醒报备")
List<TbQwXfpbMrjl> checkThisTimeXfpb();
@ApiOperation("根据时间查询排班情况")
List<TbQwXfpb> getPbBySjAndJl(@Param("pbksrq") String pbksrq,
@Param("pbjsrq") String pbjsrq,
@Param("jlId") String jlId,
@Param("kssj") String kssj,
@Param("jssj") String jssj,
@Param("id") String id);
}

View File

@ -0,0 +1,26 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwXfpbMrjl;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
* @author dw
* @since 2022/8/10
**/
@Mapper
public interface TbQwXfpbMrjlMapper extends BaseMapper<TbQwXfpbMrjl> {
@ApiOperation("删除警力报备数据")
void deleteByYwid(@Param("pbId") String pbId, @Param("pbzqId") String pbzqId);
@ApiOperation("根据时间查询每日警力信息")
List<TbQwXfpbMrjl> getMrjlByTime(@Param("xfkssj")String xfkssj,
@Param("xfjssj")String xfjssj,
@Param("pbid")String pbid);
}

View File

@ -0,0 +1,33 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import com.mosty.base.model.entity.qwzx.TbQwZbpbZq;
import com.mosty.base.model.vo.qwzx.TbQwXfpbZqMyVo;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
* @author dw
* @since 2022/8/3
**/
@Mapper
public interface TbQwXfpbZqMapper extends BaseMapper<TbQwXfpbZq> {
@ApiOperation("删除巡防排班周期数据")
void deleteByPbId(@Param("pbId") String pbId);
@ApiOperation("APP获取我的排班信息")
TbQwXfpbZqMyVo getMyXfpbToday(@Param("userId") String userId);
@ApiOperation("查询当天的排班信息")
List<TbQwXfpbZq> getMyXfpbByTime(@Param("kssj") Date kssj,
@Param("userId") String userId);
@ApiOperation("查询部门排班情况")
List<TbQwXfpbZq> getDeptByMonth(@Param("kssj") Date kssj, @Param("ssbmdm") String ssbmdm);
}

View File

@ -0,0 +1,32 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.entity.qwzx.TbQwXfbb;
import com.mosty.base.model.entity.qwzx.TbQwZbbb;
import com.mosty.base.model.query.qwzx.TbQwZbbbQuery;
import com.mosty.base.model.vo.qwzx.TbQwZbbbVo;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface TbQwZbbbMapper extends BaseMapper<TbQwZbbb> {
@ApiOperation("根据ID删除值班")
int deleteZb(@Param("id") List<String> id);
@ApiOperation("值班查询")
IPage<TbQwZbbbVo> queryList(@Param("page") IPage<TbQwZbbbVo> page, @Param("params") TbQwZbbbQuery zb);
@ApiOperation("id查询")
TbQwZbbbVo queryById(@Param("id") String id);
@ApiOperation("APP获取我当前的报备信息")
TbQwZbbb getMyBbInfoToday(String valueOf);
@ApiOperation("查询我的报备信息")
List<TbQwZbbb> getMybbTodayByTime(@Param("userId") String userId, @Param("time") String time);
}

View File

@ -0,0 +1,38 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwXfpb;
import com.mosty.base.model.entity.qwzx.TbQwZbpb;
import com.mosty.base.model.entity.qwzx.TbQwZbpbMrjl;
import com.mosty.base.model.entity.qwzx.TbQwZbpbZq;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022/8/3
**/
@Mapper
public interface TbQwZbpbMapper extends BaseMapper<TbQwZbpb> {
@ApiOperation("根据条件按查询总数")
int getCount(Map<String, Object> map);
@ApiOperation("根据条件按查询列表")
List<TbQwZbpb> getList(Map<String, Object> map);
@ApiOperation("查询当前时间的值班排班情况,发送消息提醒报备")
List<TbQwZbpbMrjl> checkThisTimeZbpb();
@ApiOperation("根据时间查询排班情况")
List<TbQwZbpb> getZbBySjAndJl(@Param("zbpbksrq") String zbpbksrq,
@Param("zbpbjsrq") String zbpbjsrq,
@Param("jlId") String jlId,
@Param("kssj") String kssj,
@Param("jssj") String jssj,
@Param("id") String id);
}

View File

@ -0,0 +1,26 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwZbpbMrjl;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
* @author dw
* @since 2022/8/10
**/
@Mapper
public interface TbQwZbpbMrjlMapper extends BaseMapper<TbQwZbpbMrjl> {
@ApiOperation("删除警力报备数据")
void deleteByYwid(@Param("pbId") String pbId, @Param("pbzqId") String pbzqId);
@ApiOperation("根据时间查询每日警力信息")
List<TbQwZbpbMrjl> getMrjlByTime(@Param("zbkssj") String zbkssj,
@Param("zbjssj") String zbjssj,
@Param("pbid") String pbid);
}

View File

@ -0,0 +1,31 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwZbpbZq;
import com.mosty.base.model.vo.qwzx.TbQwZbpbZqMyVo;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
* @author dw
* @since 2022/8/3
**/
@Mapper
public interface TbQwZbpbZqMapper extends BaseMapper<TbQwZbpbZq> {
@ApiOperation("根据排班ID删除排班周期信息")
void deleteByPbId(@Param("pbId") String pbId);
@ApiOperation("APP获取我的值班排班信息")
TbQwZbpbZqMyVo getMyZbpbToday(String userId);
@ApiOperation("根据时间查询用户的排班情况")
List<TbQwZbpbZq> getMyZbpbByTime(@Param("kssj") Date kssj, @Param("userId") String userId);
@ApiOperation("查询部门排班情况")
List<TbQwZbpbZq> getDeptByMonth(@Param("kssj") Date kssj, @Param("ssbmid") String ssbmid);
}

View File

@ -0,0 +1,40 @@
package com.mosty.qwzx.mapper;
import com.mosty.base.model.entity.qwzx.TbQwZnzb;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 巡防排班或报备或值班-通讯装备表 Mapper 接口
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@Mapper
public interface TbQwZnzbMapper extends BaseMapper<TbQwZnzb> {
/**
* 删除通讯装备
* @param list
*/
int deleteZnzb(@Param("list") List<String> list);
/**
* 根据业务ID删除
* @param ywid
*/
void deleteByYwid(@Param("ywid") String ywid);
/**
* 根据 业务ID查询
* @param ywidList
* @return
*/
List<TbQwZnzb> queryListByYwid(@Param("list") List<String> ywidList);
}

View File

@ -0,0 +1,10 @@
package com.mosty.qwzx.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mosty.base.model.entity.qwzx.TbQwxfbbDk;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TbQwxfbbDkMapper extends BaseMapper<TbQwxfbbDk> {
}

View File

@ -0,0 +1,118 @@
package com.mosty.qwzx.mybatisplus;
import cn.hutool.http.HttpStatus;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.base.util.IpUtil;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import org.apache.ibatis.reflection.MetaObject;
import java.sql.Timestamp;
import java.util.Objects;
/**
* MybatisPlus注入处理器
*
* @author Lhh
* @date 2021/4/25
*/
public class CreateAndUpdateMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
try {
UserInfo userInfo = UserInfoManager.getUser();
//根据属性名字设置要填充的值
if (metaObject.hasGetter("xtCjip")) {
if (metaObject.getValue("xtCjip") == null) {
this.strictInsertFill(metaObject, "xtCjip", String.class, IpUtil.getIpAddress());
}
}
//根据属性名字设置要填充的值
if (metaObject.hasGetter("xtSjzt")) {
if (metaObject.getValue("xtSjzt") == null) {
this.strictInsertFill(metaObject, "xtSjzt", String.class, "1");
}
}
if (metaObject.hasGetter("xtScbz")) {
if (metaObject.getValue("xtScbz") == null) {
this.strictInsertFill(metaObject, "xtScbz", String.class, "0");
}
}
if (metaObject.hasGetter("xtCjsj")) {
if (metaObject.getValue("xtCjsj") == null) {
this.strictInsertFill(metaObject, "xtCjsj", Timestamp.class, new Timestamp(System.currentTimeMillis()));
}
}
if (Objects.nonNull(userInfo)) {
if (metaObject.hasGetter("xtCjrId")) {
if (metaObject.getValue("xtCjrId") == null) {
this.strictInsertFill(metaObject, "xtCjrId", String.class, String.valueOf(userInfo.userId));
}
}
if (metaObject.hasGetter("xtCjr")) {
if (metaObject.getValue("xtCjr") == null) {
this.strictInsertFill(metaObject, "xtCjr", String.class, String.valueOf(userInfo.userName));
}
}
if (metaObject.hasGetter("xtCjbmdm")) {
if (metaObject.getValue("xtCjbmdm") == null) {
this.strictInsertFill(metaObject, "xtCjbmdm", String.class, String.valueOf(userInfo.getDeptId()));
}
}
if (metaObject.hasGetter("xtCjbmmc")) {
if (metaObject.getValue("xtCjbmmc") == null) {
this.strictInsertFill(metaObject, "xtCjbmmc", String.class, userInfo.getDeptName());
}
}
}
} catch (Exception e) {
throw new BusinessException("自动注入异常 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED);
}
}
@Override
public void updateFill(MetaObject metaObject) {
try {
UserInfo userInfo = UserInfoManager.getUser();
if (metaObject.hasGetter("xtZhgxip")) {
if (metaObject.getValue("xtZhgxip") == null) {
this.strictUpdateFill(metaObject, "xtZhgxip", String.class, IpUtil.getIpAddress());
}
}
if (metaObject.hasGetter("xtZhgxsj")) {
if (metaObject.getValue("xtZhgxsj") == null) {
this.strictUpdateFill(metaObject, "xtZhgxsj", Timestamp.class, new Timestamp(System.currentTimeMillis()));
}
}
if (Objects.nonNull(userInfo)) {
if (metaObject.hasGetter("xtZhgxrid")) {
if (metaObject.getValue("xtZhgxrid") == null) {
this.strictUpdateFill(metaObject, "xtZhgxrid", String.class, String.valueOf(userInfo.userId));
}
}
if (metaObject.hasGetter("xtZhgxr")) {
if (metaObject.getValue("xtZhgxr") == null) {
this.strictUpdateFill(metaObject, "xtZhgxr", String.class, userInfo.userName);
}
}
if (metaObject.hasGetter("xtZhgxbmdm")) {
if (metaObject.getValue("xtZhgxbmdm") == null) {
this.strictUpdateFill(metaObject, "xtZhgxbmdm", String.class, String.valueOf(userInfo.getDeptId()));
}
}
if (metaObject.hasGetter("xtZhgxbm")) {
if (metaObject.getValue("xtZhgxbm") == null) {
this.strictUpdateFill(metaObject, "xtZhgxbm", String.class, userInfo.getDeptName());
}
}
}
} catch (Exception e) {
throw new BusinessException("自动注入异常 => " + e.getMessage(), HttpStatus.HTTP_UNAUTHORIZED);
}
}
}

View File

@ -0,0 +1,29 @@
package com.mosty.qwzx.mybatisplus;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
* mybatis-plus配置类
*
* @author Lhh
*/
@EnableTransactionManagement(proxyTargetClass = true)
@Configuration
@MapperScan("com.mosty.wqzx.mapper")
public class MybatisPlusConfig {
/**
* 元对象字段填充控制器
* https://baomidou.com/guide/auto-fill-metainfo.html
*/
@Bean
public MetaObjectHandler metaObjectHandler() {
return new CreateAndUpdateMetaObjectHandler();
}
}

View File

@ -0,0 +1,197 @@
package com.mosty.qwzx.remote;
import com.alibaba.fastjson.JSON;
import com.mosty.base.model.dto.base.GetDeptListDTO;
import com.mosty.base.model.dto.base.GetSsbmDto;
import com.mosty.base.model.dto.base.SysDeptDTO;
import com.mosty.base.model.dto.base.SysMessageInfoInsertDto;
import com.mosty.base.feign.service.MostyBaseFeignService;
import com.mosty.base.model.query.base.GetSysDeptListQuery;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.core.business.entity.SysDept;
import com.mosty.common.core.business.entity.SysUser;
import com.mosty.common.core.business.entity.vo.SysUserDeptVO;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
* 调用部门信息远程适配层
*
* @author kevin
* @date 2022/7/6 10:37 上午
* @since 1.0.0
*/
@Slf4j
@Service
@AllArgsConstructor
public class TbBaseAdaptRemoteService {
private final MostyBaseFeignService mostyBaseFeignService;
// 根据部门deptid获取所属分县局、所属地市州
public DeptInfoVo getOrgByDeptId(String deptid) {
if (StringUtils.isBlank(deptid)) {
return null;
}
ResponseResult<DeptInfoVo> responseResult = mostyBaseFeignService.getOrgByDeptId(deptid);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("调用部门id查询部门详情信息异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("调用部门id查询部门详情信息异常");
}
return responseResult.getData();
}
public DeptInfoVo getOrgByOrgcode(String orgcode) {
if (StringUtils.isBlank(orgcode)) {
return null;
}
ResponseResult<DeptInfoVo> responseResult = mostyBaseFeignService.getOrgByOrgcode(orgcode);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("调用部门id查询部门详情信息异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("调用部门id查询部门详情信息异常");
}
return responseResult.getData();
}
// 获取部门下的用户列表,不包含子部门
public List<SysUserDeptVO> getUserList(String deptid) {
ResponseResult<List<SysUserDeptVO>> responseResult = mostyBaseFeignService.getUserList(deptid);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取部门下的用户列表异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取部门下的用户列表异常");
}
return responseResult.getData();
}
// 获取所有的用户数据
public List<SysUserDeptVO> getUserAll(String deptId) {
ResponseResult<List<SysUserDeptVO>> responseResult = mostyBaseFeignService.getUserAll(deptId);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("调用部门id查询部门详情信息异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("调用部门id查询部门详情信息异常");
}
return responseResult.getData();
}
// 获取所有的部门信息集合
public List<DeptInfoVo> getDeptAll() {
ResponseResult<List<DeptInfoVo>> responseResult = mostyBaseFeignService.getDeptAll();
if (responseResult == null || !responseResult.isSuccess()) {
log.error("调用部门id查询部门详情信息异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("调用部门id查询部门详情信息异常");
}
return responseResult.getData();
}
// 给人员发送消息
public Integer sendMsg(SysMessageInfoInsertDto dto) {
ResponseResult<Integer> responseResult = mostyBaseFeignService.sendMsg(dto);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("给人员发送消息失败, responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("给人员发送消息失败");
}
return responseResult.getData();
}
// 获取人员的部门所属
public DeptInfoVo getDeptInfoByUserId(String userId) {
ResponseResult<DeptInfoVo> responseResult = mostyBaseFeignService.getDeptInfoByUserId(userId);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取人员的部门所属失败, responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取人员的部门所属失败");
}
return responseResult.getData();
}
// 获取用户信息
public SysUser getUserInfoBySfzh(String sfzh) {
ResponseResult<SysUser> responseResult = mostyBaseFeignService.getUserInfoBySfzh(sfzh);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取用户信息失败, responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取用户信息失败");
}
return responseResult.getData();
}
// 获取用户信息
public List<String> getChildDept(String deptId) {
ResponseResult<List<String>> responseResult = mostyBaseFeignService.getChildDept(deptId);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取用户信息失败, responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取用户信息失败");
}
return responseResult.getData();
}
// 查询部门下的所有的子部门信息列表
public List<DeptInfoVo> getChildDept(GetDeptListDTO dto) {
ResponseResult<List<DeptInfoVo>> responseResult = mostyBaseFeignService.getChildDept(dto);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取用户信息失败, responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取用户信息失败");
}
return responseResult.getData();
}
// 获取权限查询条件
public String getSsbm(String ssbmdm, String isChild) {
GetSsbmDto dto = new GetSsbmDto(ssbmdm, isChild);
ResponseResult<String> responseResult = mostyBaseFeignService.getSsbm(dto);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取权限查询条件异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取权限查询条件异常");
}
return responseResult.getData();
}
/**
* 获取下级部门列表
*
* @param query 组织机构部门查询对象
* @return 组织机构列表
*/
public List<SysDept> getChildOrgList(GetSysDeptListQuery query) {
if (null == query) {
return new ArrayList<>();
}
ResponseResult<List<SysDept>> responseResult = mostyBaseFeignService.getOrganizationList(query);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取查询条件异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取查询条件异常");
}
return responseResult.getData();
}
// 查询部门详情
public SysDept getSysDeptBySsbmdm(String ssbmdm) {
ResponseResult<SysDept> responseResult = mostyBaseFeignService.getSysDeptBySsbmdm(ssbmdm);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询部门详情 异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("查询部门详情 异常");
}
return responseResult.getData();
}
// 通过key获取配置信息
public String getValue(String pzj) {
if (StringUtils.isBlank(pzj)) {
return null;
}
ResponseResult<String> responseResult = mostyBaseFeignService.getValue(pzj);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询系统配置异常 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("查询系统配置异常");
}
return responseResult.getData();
}
}

View File

@ -0,0 +1,106 @@
package com.mosty.qwzx.remote;
import com.alibaba.fastjson.JSON;
import com.mosty.base.model.dto.jcgl.TbJcglKfdDto;
import com.mosty.base.model.dto.jcgl.TbJcglXfllVo;
import com.mosty.base.feign.service.MostyJcglFeignService;
import com.mosty.base.model.dto.jcgl.TbJcglXfqyDto;
import com.mosty.base.model.entity.jcgl.TbJcglJwz;
import com.mosty.base.model.entity.jcgl.TbJcglKfd;
import com.mosty.base.model.entity.jcgl.TbJcglXfll;
import com.mosty.base.model.entity.jcgl.TbJcglXfqy;
import com.mosty.base.model.query.jcgl.TbJcglXfllQueryAllDto;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.exception.BusinessException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
* @author dw
* @since 2022/7/23
* 外部调用基础管理接口
**/
@Service
@Slf4j
public class TbJcglAdaptRemoteService {
@Resource
private MostyJcglFeignService mostyJcglFeignService;
// 获取部门下的巡防力量信息
public List<TbJcglXfllVo> getXfll(TbJcglXfllQueryAllDto dto) {
ResponseResult<List<TbJcglXfllVo>> responseResult = mostyJcglFeignService.getXfll(dto);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("获取部门下的巡防力量信息失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("获取部门下的巡防力量信息失败");
}
return responseResult.getData();
}
// 查询部门下的所有的辅警信息
public List<TbJcglXfllVo> getFjList(String deptid) {
ResponseResult<List<TbJcglXfllVo>> responseResult = mostyJcglFeignService.getFjList(deptid);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询部门下的所有的辅警信息失败 responseResult = {}", JSON.toJSONString(responseResult));
return new ArrayList<>();
}
return responseResult.getData();
}
// 根据ID查询巡防区域
public TbJcglXfqyDto getxfqById(String id) {
ResponseResult<TbJcglXfqyDto> responseResult = mostyJcglFeignService.getxfqById(id);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("根据ID查询巡防区域失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("根据ID查询巡防区域失败");
}
return responseResult.getData();
}
// 根据ID查询快反点
public TbJcglKfdDto getKfdById(String id) {
ResponseResult<TbJcglKfdDto> responseResult = mostyJcglFeignService.getKfdById(id);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("根据ID查询快反点失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("根据ID查询快反点失败");
}
return responseResult.getData();
}
// 根据ID查询警务站
public TbJcglJwz getJwzById(String id) {
ResponseResult<TbJcglJwz> responseResult = mostyJcglFeignService.getJwzById(id);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("根据ID查询警务站失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("根据ID查询警务站失败");
}
return responseResult.getData();
}
// 查询部门下面人员数量
public Integer getRysl(String ssbmdm) {
ResponseResult<Integer> responseResult = mostyJcglFeignService.getRysl(ssbmdm);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("根据ID查询警务站失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("根据ID查询警务站失败");
}
return responseResult.getData();
}
// 查询查询巡防部门
public List<TbJcglXfll> getBmAll() {
ResponseResult<List<TbJcglXfll>> responseResult = mostyJcglFeignService.getBmAll();
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询巡防部门失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("查询巡防部门失败");
}
return responseResult.getData();
}
}

View File

@ -0,0 +1,39 @@
package com.mosty.qwzx.remote;
import com.alibaba.fastjson.JSON;
import com.mosty.base.feign.service.MostyLzotherFeignService;
import com.mosty.base.model.entity.lzother.BphJlxx;
import com.mosty.base.model.entity.lzother.VJcxx;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.exception.BusinessException;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Slf4j
@Service
@AllArgsConstructor
public class TbLzotherAdaptRemoteService {
private final MostyLzotherFeignService mostyLzotherFeignService;
// 根据身份证查询是否有接警数据
public BphJlxx getjlxx(String sfzh) {
ResponseResult<BphJlxx> responseResult = this.mostyLzotherFeignService.getjlxx(sfzh);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询警情类别类型细类中文异常Result = {}", JSON.toJSONString(responseResult));
throw new BusinessException("查询警情类别类型细类中文异常");
}
return responseResult.getData();
}
// 根据信息查询是否处警
public BphJlxx getjlxxCz(BphJlxx bphJlxx) {
ResponseResult<BphJlxx> responseResult = this.mostyLzotherFeignService.getjlxxCz(bphJlxx);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询警情类别类型细类中文异常Result = {}", JSON.toJSONString(responseResult));
throw new BusinessException("查询警情类别类型细类中文异常");
}
return responseResult.getData();
}
}

View File

@ -0,0 +1,57 @@
package com.mosty.qwzx.remote;
import com.alibaba.fastjson.JSON;
import com.mosty.base.feign.service.MostyJcglFeignService;
import com.mosty.base.feign.service.MostyRwzxFeignService;
import com.mosty.base.model.dto.jcgl.TbJcglXfllVo;
import com.mosty.base.model.dto.rwzx.TbRwTaskDto;
import com.mosty.base.model.entity.rwzx.TbRwTask;
import com.mosty.base.model.query.rwzx.TbRwTaskByYwidQuery;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.exception.BusinessException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
/**
* @author dw
* @since 2022/10/05
* 外部调用任务中心接口
**/
@Service
@Slf4j
public class TbRwzxAdaptRemoteService {
@Resource
private MostyRwzxFeignService mostyRwzxFeignService;
/**
* 发送任务给各个用户
*
* @return
*/
public Integer addRw(TbRwTaskDto dto) {
ResponseResult<Integer> responseResult = mostyRwzxFeignService.addRw(dto);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("任务下发失败 responseResult = {}", JSON.toJSONString(responseResult));
return 0;
}
return responseResult.getData();
}
/**
* 发送任务给各个用户
*
* @return
*/
public TbRwTask getRwByYwid(TbRwTaskByYwidQuery dto) {
ResponseResult<TbRwTask> responseResult = mostyRwzxFeignService.getRwByYwid(dto);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("任务下发失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("任务查询报错!!");
}
return responseResult.getData();
}
}

View File

@ -0,0 +1,42 @@
package com.mosty.qwzx.remote;
import com.alibaba.fastjson.JSON;
import com.mosty.base.feign.service.MostyWebSocketFeignService;
import com.mosty.base.model.dto.websocket.WebSocketObject;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.exception.BusinessException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* @author dw
* @since 2022/7/23
* websocket外部调用基础管理接口
**/
@Service
@Slf4j
public class TbWebSocketAdaptRemoteService {
@Resource
private MostyWebSocketFeignService mostyWebSocketFeignService;
// 发送websocket信息
public void sendMessage(WebSocketObject obj) {
ResponseResult<Void> responseResult = this.mostyWebSocketFeignService.sendMessage(obj);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("发送websocket信息异常 Result = {}", JSON.toJSONString(responseResult));
throw new BusinessException("发送websocket信息异常");
}
}
// 发送报备数据websocket信息
public void sendBbMessage(WebSocketObject obj) {
ResponseResult<Void> responseResult = this.mostyWebSocketFeignService.sendBbMessage(obj);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("发送报备数据websocket信息 异常 Result = {}", JSON.toJSONString(responseResult));
throw new BusinessException("发送报备数据websocket信息 异常");
}
}
}

View File

@ -0,0 +1,50 @@
package com.mosty.qwzx.remote;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.feign.service.MostyYszxFeignService;
import com.mosty.base.model.dto.yszx.TbYsGajgGlbmDto;
import com.mosty.base.model.vo.yszx.TbYsGajgGlbmVo;
import com.mosty.base.model.vo.yszx.TbYsGajgQuery;
import com.mosty.base.model.vo.yszx.TbYsGajgVo;
import com.mosty.common.base.domain.ResponseResult;
import com.mosty.common.base.exception.BusinessException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestBody;
import javax.annotation.Resource;
import java.util.List;
/**
* @author dw
* @since 2022/8/29
* 外部调用要素中心接口
**/
@Service
@Slf4j
public class TbYszxAdaptRemoteService {
@Resource
private MostyYszxFeignService mostyYszxFeignService;
// 查询公安机关要素详情
public TbYsGajgVo getInfo(String id) {
ResponseResult<TbYsGajgVo> responseResult = mostyYszxFeignService.getInfo(id);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询公安机关要素详情失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("查询公安机关要素详情失败");
}
return responseResult.getData();
}
// 查询公安机关要素列表
public List<TbYsGajgGlbmVo> getGajgList(TbYsGajgQuery dto) {
ResponseResult<List<TbYsGajgGlbmVo>> responseResult = mostyYszxFeignService.getGajgList(dto);
if (responseResult == null || !responseResult.isSuccess()) {
log.error("查询公安机关要素列表失败 responseResult = {}", JSON.toJSONString(responseResult));
throw new BusinessException("查询公安机关要素列表失败");
}
return responseResult.getData();
}
}

View File

@ -0,0 +1,17 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwMfjSearchDto;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
public interface QwzxQwlbService {
@ApiOperation("勤务列表-不在岗警力清单")
List<Map<String, Object>> bzgjlqd(TbQwMfjSearchDto dto);
@ApiOperation("勤务列表-街面巡组")
IPage<Map<String, Object>> jmxz(TbQwMfjSearchDto dto);
}

View File

@ -0,0 +1,121 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwMfjSearchDto;
import com.mosty.common.base.domain.ResponseResult;
import io.swagger.annotations.ApiOperation;
import javax.swing.*;
import java.util.List;
import java.util.Map;
public interface QwzxStatisticsService {
@ApiOperation("警力情况-辅警-全部辅警数量")
Integer qbfj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-全部辅警列表")
IPage<Map<String, Object>> qbfjList(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-全部列表")
IPage<Map<String, Object>> qblb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-全部在岗统计")
IPage<Map<String, Object>> qbzgtj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-在岗辅警")
Integer zgfj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-在岗辅警列表")
IPage<Map<String, Object>> zgfjList(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-在岗列表")
IPage<Map<String, Object>> zglb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-街面警力-辅警列表")
IPage<Map<String, Object>> fjlb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-街面警力-民警列表")
IPage<Map<String, Object>> mjlb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-街面警力-全部名民警辅警")
Integer qb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-街面警力-民警列表")
IPage<Map<String, Object>> qbList(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-街面警力-在岗民警辅警")
Integer zg(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-街面警力-在岗民警辅警列表")
IPage<Map<String, Object>> zgList(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-可抽调-可抽调辅警列表")
IPage<Map<String, Object>> kcdFjlb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-可抽调-可抽调民警辅警数量")
List<Map<String,Object>> zbtj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-可抽调-可抽调民警列表")
IPage<Map<String, Object>> kcdMjlb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-民警辅警整合列表")
IPage<Map<String, Object>> mjfjzh(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-全部列表")
IPage<Map<String, Object>> mjQblb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-全部民警")
Integer qbmj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-全部民警列表")
IPage<Map<String, Object>> qbmjList(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-全部在岗统计")
Integer mjQbzgtj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-在岗列表")
IPage<Map<String, Object>> mjZglb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-在岗民警")
Integer zgmj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-在岗民警辅警整合")
List<Map<String, Object>> zgmjfjzh(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-在岗民警列表")
IPage<Map<String, Object>> zgmjList(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-请休假-辅警列表")
IPage<Map<String, Object>> qxFjlb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-请休假-民警辅警统计")
List<Map<String,Object>> mjfjtj(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-请休假-民警列表")
IPage<Map<String, Object>> qxjMjlb(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-全部列表-第三方")
IPage<Map<String, Object>> mjQblbOther(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-民警列表-第三方")
IPage<Map<String, Object>> mjlbOther(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-民警-在岗民警列表-第三方")
IPage<Map<String, Object>> zgmjListOther(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-请休假-民警列表-第三方")
IPage<Map<String, Object>> qxjMjlbOther(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-全部列表-第三方")
IPage<Map<String, Object>> qblbOther(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-街面警力-辅警列表-第三方")
IPage<Map<String, Object>> fjlbOther(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-辅警-在岗辅警列表-第三方")
IPage<Map<String, Object>> zgfjListOther(TbQwMfjSearchDto dto);
@ApiOperation("警力情况-请休假-辅警列表-第三方")
IPage<Map<String, Object>> qxFjlbOther(TbQwMfjSearchDto dto);
}

View File

@ -0,0 +1,40 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwSearchJlqdDto;
import com.mosty.base.model.dto.qwzx.TbQwSearchZgmfjDto;
import com.mosty.base.model.entity.qwzx.TbQwBmjlbbJlmx;
import com.mosty.base.model.query.qwzx.TbQwBmjlbbCountQuery;
import com.mosty.base.model.query.qwzx.TbQwBmjlbbQuery;
import com.mosty.base.model.vo.qwzx.Gzqk;
import com.mosty.base.model.vo.qwzx.TbQwBmjlbbCountVo;
import com.mosty.base.model.vo.qwzx.TbQwBmjlbbVo;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
/**
* @author zengbo
* @since 2022-06-27
*/
public interface TbQwBmjlbbService {
@ApiOperation("查询在岗民警辅警数量")
Gzqk selectOnCop();
@ApiOperation("计算今日部门警力报备情况")
void setBmjlbbInfo(String time);
@ApiOperation("查询警力清单,存入redis中")
List<Map<String, Object>> getJlqdListToRedis(TbQwSearchJlqdDto dto);
@ApiOperation("查询警力清单")
List<Map<String, Object>> getJlqdList(TbQwSearchJlqdDto dto);
@ApiOperation("高新领导端--查询在岗警力数量")
Map<String, Object> getZgjlCount();
@ApiOperation("值班表统计")
List<Map<String, Object>> countCdepTree(String ssbmdm);
}

View File

@ -0,0 +1,22 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.entity.qwzx.TbQwFa;
import com.mosty.base.model.query.qwzx.TbQwFaQuery;
import java.util.List;
public interface TbQwFaService {
TbQwFa queryById(String id);
IPage<TbQwFa> paginQuery(TbQwFaQuery query);
Integer insert(TbQwFa xf);
Integer update(TbQwFa xf);
Boolean deleteById(String id);
Boolean deleteByIds(List<String> id);
}

View File

@ -0,0 +1,27 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.entity.qwzx.TbQwJjr;
import com.mosty.base.model.query.qwzx.TbQwJjrQuery;
import io.swagger.annotations.ApiOperation;
import java.util.List;
public interface TbQwJjrService {
@ApiOperation("添加节假日")
void add(TbQwJjr jjr);
@ApiOperation("修改节假日")
void update(TbQwJjr jjr);
@ApiOperation("删除节假日数据")
void deleteBatch(List<String> ids);
@ApiOperation("单条删除节假日")
void deleteByIds(String id);
@ApiOperation("分页查询节假日信息")
IPage<TbQwJjr> getPageList(TbQwJjrQuery dto);
}

View File

@ -0,0 +1,43 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.AppSearchQuery;
import com.mosty.base.model.dto.qwzx.TbQwQwbcEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQwbc;
import com.mosty.base.model.query.qwzx.TbQwQwbcQuery;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* <p>
* 勤务班次表 服务类
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
public interface TbQwQwbcService {
@ApiOperation("新增勤务班次")
int addQwbc(TbQwQwbc qwbc);
@ApiOperation("查询勤务班次")
IPage<TbQwQwbc> getQwbc(TbQwQwbcQuery qwbc, IPage<TbQwQwbc> page);
@ApiOperation("编辑勤务班次")
int editQwbc(TbQwQwbcEditDto qwbc);
@ApiOperation("删除勤务班次")
boolean deleteBatch(List<String> ids);
@ApiOperation("id删除")
boolean deleteById(String id);
@ApiOperation("根据ID查询")
TbQwQwbc selectById(String id);
@ApiOperation("app查询班次信息")
Page<TbQwQwbc> getBcList(AppSearchQuery dto);
}

View File

@ -0,0 +1,44 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwQwdjEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQwdj;
import com.mosty.base.model.query.qwzx.TbQwQwdjQuery;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* <p>
* 勤务等级表 服务类
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
public interface TbQwQwdjService {
@ApiOperation("新增勤务等级")
int addQwdj(TbQwQwdj qwdj);
@ApiOperation("查询勤务等级")
IPage<TbQwQwdj> getQwdj(TbQwQwdjQuery qwdj, IPage<TbQwQwdj> page);
@ApiOperation("编辑勤务等级")
int editQwdj(TbQwQwdjEditDto qwdj);
@ApiOperation("删除勤务等级")
boolean deleteBatch(List<String> ids);
@ApiOperation("id删除")
boolean deleteById(String id);
@ApiOperation("根据ID查询")
TbQwQwdj selectById(String id);
@ApiOperation("勤务等级发布")
boolean publishQwdj(String id);
@ApiOperation("查询当前勤务等级")
TbQwQwdj queryCurrentQwdj(String dateTime);
}

View File

@ -0,0 +1,38 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwQxjEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQxj;
import com.mosty.base.model.query.qwzx.TbQwQxjMyQuery;
import com.mosty.base.model.query.qwzx.TbQwQxjQuery;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* @author zengbo
* @since 2022-06-27
*/
public interface TbQwQxjService {
@ApiOperation("新增请休假")
int addQxj(TbQwQxj qxj);
@ApiOperation("查询请休假")
IPage<TbQwQxj> getQxj(TbQwQxjQuery qxj, IPage<TbQwQxj> page);
@ApiOperation("编辑请休假")
int editQxj(TbQwQxjEditDto qxj);
@ApiOperation("删除请休假")
boolean deleteBatch(List<String> ids);
@ApiOperation("id删除")
boolean deleteById(String id);
@ApiOperation("根据ID查询")
TbQwQxj selectById(String id);
@ApiOperation("APP查询我的请休假记录")
IPage<TbQwQxj> getMyQxjList(TbQwQxjMyQuery dto);
}

View File

@ -0,0 +1,23 @@
package com.mosty.qwzx.service;
import com.mosty.base.model.dto.qwzx.TbQwSpsHdgjChangeDto;
import com.mosty.base.model.query.qwzx.TbQwSpsCsdwQuery;
import com.mosty.base.model.vo.qwzx.TbQwSpsCsdwVo;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Service;
/**
* @author dw
* @since 2022/9/17
**/
public interface TbQwSpsCsdwService {
@ApiOperation("根据条件查询所有的参赛队伍")
Object getList(TbQwSpsCsdwQuery dto);
@ApiOperation("查询某一个队伍的当前的状态")
TbQwSpsCsdwVo getCsdwInfo(String id);
@ApiOperation("参赛队伍活动轨迹变更")
void changeHdgj(TbQwSpsHdgjChangeDto dto);
}

View File

@ -0,0 +1,33 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwBxfsqEditDto;
import com.mosty.base.model.entity.qwzx.TbQwXfBxfsq;
import com.mosty.base.model.query.qwzx.TbQwXfBxfsqQuery;
import io.swagger.annotations.ApiOperation;
import java.util.List;
public interface TbQwXfBxfsqService {
@ApiOperation("新增不巡防申请")
int addBxfsq(TbQwXfBxfsq bxfsq);
@ApiOperation("查询不巡防申请")
IPage<TbQwXfBxfsq> getBxfsq(TbQwXfBxfsqQuery bxfsq, IPage<TbQwXfBxfsq> page);
@ApiOperation("编辑不巡防申请")
int editBxfsq(TbQwXfBxfsq bxfsq);
@ApiOperation("删除不巡防申请")
boolean deleteBatch(List<String> ids);
@ApiOperation("ID删除")
boolean deleteById(String id);
@ApiOperation("根据ID查询")
TbQwXfBxfsq selectById(String id);
@ApiOperation("审批不巡防申请")
int judge(TbQwBxfsqEditDto dto);
}

View File

@ -0,0 +1,155 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.*;
import com.mosty.base.model.entity.qwzx.TbQwJl;
import com.mosty.base.model.entity.qwzx.TbQwXfbb;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import com.mosty.base.model.query.qwzx.TbQwJmxzSearchDto;
import com.mosty.base.model.query.qwzx.TbQwXfbbJmxzQuery;
import com.mosty.base.model.query.qwzx.TbQwXfbbQuery;
import com.mosty.base.model.query.sjzx.XfbbQuery;
import com.mosty.base.model.query.sjzx.XfbbTjQuery;
import com.mosty.base.model.query.sjzx.XftjQuery;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
/**
* <p>
* 巡防报备表 服务类
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
public interface TbQwXfbbService {
@ApiOperation("查询巡防报备")
IPage<TbQwXfbbVo> queryList(TbQwXfbbQuery xfbb);
@ApiOperation("根据ID查询")
TbQwXfbbVo selectById(String id);
@ApiOperation("新增巡防报备")
String addXfbb(TbQwXfbbVo xfbb);
@ApiOperation("删除巡防报备")
boolean deleteBatch(List<String> ids);
@ApiOperation("id删除")
boolean deleteById(String id);
@ApiOperation("查询巡组")
Map<String, Integer> selectDeck();
@ApiOperation("查询巡组列表")
IPage<TbQwXfbb> selectDeckList(TbQwXfbbJmxzQuery dto);
@ApiOperation("查询周边巡组")
List<TbQwXfbb> selectNearbyDeck(TbQwXfbb tbQwXfbb);
@ApiOperation("查询巡防报备")
IPage<TbQwXfbbVo> queryPage(TbQwXfbbQuery xfbb);
@ApiOperation("开始、结束报备")
int startOrEndBb(TbQwXfbbStartOrEndBbDto dto);
@ApiOperation("大屏-计划街面巡组列表-分页")
IPage<TbQwXfpbZq> selectJhjmxzList(TbQwXzSearchDto dto);
@ApiOperation("大屏-实际街面巡组列表-分页")
IPage<TbQwXfbb> selectSjjmxzList(TbQwXzSearchDto dto);
@ApiOperation("大屏-街面力量-分页")
IPage<TbQwJl> selectJmllList(TbQwJmllSearchDto dto);
@ApiOperation("查询我今天的报备信息")
TbQwXfbb getMybbTodayNew(String bblx);
@ApiOperation("判断派出所、巡防区范围内是否有巡组")
List<TbQwXfbb> getFjbbByYsId(String ysid);
@ApiOperation("根据身份证号获取最后一次报备的数据")
TbQwXfbb getMybbLastBySfzh(String sfzh);
@ApiOperation("每半个小时查询已报备的状态,结束当前报备")
void authJsbb();
@ApiOperation("每周一凌晨结束特殊报备")
void authJsbbTs();
@ApiOperation("根据用户ID查询巡组下的人员列表")
List<TbQwJlDto> getJlxxByBbid(String id);
@ApiOperation("查询范围内的最近的巡组信息")
TbQwXfbb getBbxxByJi(TbQwXfbbQueryByJlDto dto);
@ApiOperation("app查询界面警力民警辅警数量")
Map<String, Object> selectMfjCount(String bbrq);
@ApiOperation("根据设备ID查询该设备所在的巡组")
List<TbQwXfbb> getBbList(String sbid);
@ApiOperation("根据车辆gpsID查询该设备所在的巡组")
List<TbQwXfbb> getClBbList(String sbid);
@ApiOperation("查询街面巡组")
IPage<TbQwXfbb> selectJmxz(TbQwJmxzSearchDto dto);
@ApiOperation("新增巡防报备打卡")
void addXfbbDk(TbQwXfbbDkDto dto);
@ApiOperation("判断当前位置是否再报备的巡防区内")
boolean isDdWz(TbQwXfbbDkWzDto dto);
@ApiOperation("根据ID查询报备信息")
TbQwXfbb getBbxxInfo(String id);
@ApiOperation("高新领导段-查询街面警力数量")
Map<String, Object> getJmjlCount();
@ApiOperation("计算巡防报备时长")
void checkXfbbSc();
@ApiOperation("查询巡组信息第三方")
IPage<TbQwXfbb> selectDeckListOther(TbQwXfbbJmxzQuery dto);
@ApiOperation("泸州态势统计-各区县巡防时长和里程")
Map<String, Object> getXfscAndLc(XfbbQuery dto);
@ApiOperation("查询部门的报备的数量")
Integer getBbCount(String ssbmdm, String time);
@ApiOperation("查询部门时长、里程")
Map<String,Integer> getScLc(String ssbmdm, String time);
@ApiOperation("根据警情信息 修改巡防状态")
void updateXfzt();
@ApiOperation("大屏巡防报备统计")
Map<String, Integer> xfbbTj();
@ApiOperation("部门统计")
IPage<Object> bmtj(XfbbTjQuery query);
@ApiOperation("部门统计")
Object bmtjAll(XfbbTjQuery query);
@ApiOperation("巡区统计")
IPage<Object> xqtj(XfbbTjQuery query);
@ApiOperation("巡区统计")
IPage<Object> grtj(XfbbTjQuery query);
@ApiOperation("根据巡区获取报备id")
List<TbQwXfbb> getBbidByXq(String xqid);
void delRedisXfwz();
@ApiOperation("更新巡防里程")
Integer updateXflc(String bbid);
}

View File

@ -0,0 +1,72 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwXfpbAddAndEditDto;
import com.mosty.base.model.dto.qwzx.TbQwXfpbZqDto;
import com.mosty.base.model.dto.qwzx.TbQwXzSearchDto;
import com.mosty.base.model.entity.qwzx.TbQwXfpbZq;
import com.mosty.base.model.entity.qwzx.TbQwZbpbZq;
import com.mosty.base.model.query.qwzx.TbQwXfpbQuery;
import com.mosty.base.model.query.qwzx.TbQwXfpbSearchMyQuery;
import com.mosty.base.model.vo.qwzx.TbQwXfpbZqMyVo;
import com.mosty.base.model.vo.qwzx.TbQwXfpbZqVo;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022/8/3
**/
public interface TbQwXfpbService {
@ApiOperation("新增巡防排班")
int addEntity(TbQwXfpbAddAndEditDto dto);
@ApiOperation("巡防排班修改")
Integer editEntity(TbQwXfpbAddAndEditDto dto);
@ApiOperation("删除单条巡防排班")
Integer delEntity(String id);
@ApiOperation("批量删除巡防排班")
void delBatch(List<String> ids);
@ApiOperation("查询巡防排班分页")
IPage<TbQwXfpbAddAndEditDto> getPageList(TbQwXfpbQuery dto);
@ApiOperation("查询巡防排班详细信息")
TbQwXfpbAddAndEditDto getInfo(String id);
@ApiOperation("分页查询我的巡防排班")
IPage<TbQwXfpbAddAndEditDto> getMyXfpb(TbQwXfpbSearchMyQuery dto);
@ApiOperation("APP获取我的排班信息")
TbQwXfpbZqMyVo getMyXfpbToday();
@ApiOperation("查询本月的巡防排班信息")
IPage<TbQwXfpbZqVo> getThisMonthPbList(TbQwXzSearchDto dto);
@ApiOperation("查询当前时间的巡防排班情况,发送消息提醒报备")
void checkThisTimeXfpb();
@ApiOperation("根据周期Id查询排班信息")
TbQwXfpbZqMyVo getPbZq(String id,String time);
@ApiOperation("每月一日添加每日警力")
void addMrjl();
@ApiOperation("根据时间查询月份排班、报备情况")
List<Map<String, Object>> getPbbbByMonth(String time);
@ApiOperation("根据时间查询月份巡防排班、巡防报备情况")
List<Map<String, Object>> getXfbbByMonth(String time);
@ApiOperation("根据时间查询部门月份排班、报备情况")
List<Map<String, Object>> getPbbbByMonthBm(String time,String ssbmdm);
}

View File

@ -0,0 +1,54 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwXfbbStartOrEndBbDto;
import com.mosty.base.model.entity.qwzx.TbQwZbbb;
import com.mosty.base.model.query.qwzx.TbQwZbbbQuery;
import com.mosty.base.model.vo.qwzx.TbQwZbbbVo;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022-10-09
*/
public interface TbQwZbbbService {
@ApiOperation("值班报备新增")
String addQwzb(TbQwZbbbVo zbVo);
@ApiOperation("查询勤务装备")
IPage<TbQwZbbbVo> queryList(TbQwZbbbQuery zb);
@ApiOperation("根据ID查询")
TbQwZbbbVo selectById(String id);
@ApiOperation("删除勤务装备")
boolean deleteBatch(List<String> list);
@ApiOperation("分页查询值班报备列表")
IPage<TbQwZbbbVo> queryPage(TbQwZbbbQuery zb);
@ApiOperation("APP获取我当前的报备信息")
TbQwZbbb getMyBbInfoToday();
@ApiOperation("开始、结束报备")
Integer startOrEndBb(TbQwXfbbStartOrEndBbDto dto);
@ApiOperation("自动结束报备")
void authJsbb();
@ApiOperation("APP根据时间统计报备数量")
Map<String, Object> getBbCountByDept(String time);
@ApiOperation("APP根据时间统计报备列表")
List<Map<String, Object>> getBbListByDept(String time);
@ApiOperation("查询值班领导")
Map<String, Object> getZbld();
@ApiOperation("查询值班领导")
Map<String, Object> getJlByBm(String time, String ssbmdm);
}

View File

@ -0,0 +1,62 @@
package com.mosty.qwzx.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mosty.base.model.dto.qwzx.TbQwZbpbInsertOrUpdateDto;
import com.mosty.base.model.dto.qwzx.TbQwZbpbZqDto;
import com.mosty.base.model.entity.qwzx.TbQwZbpbZq;
import com.mosty.base.model.query.qwzx.TbQwZbpbQuery;
import com.mosty.base.model.query.qwzx.TbQwZbpbSearchMyQuery;
import com.mosty.base.model.vo.qwzx.TbQwZbpbZqMyVo;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
/**
* @author dw
* @since 2022/8/3
**/
public interface TbQwZbpbService {
@ApiOperation("新增值班排班")
Integer addEntity(TbQwZbpbInsertOrUpdateDto dto);
@ApiOperation("修改值班报备信息")
Integer updateEntity(TbQwZbpbInsertOrUpdateDto dto);
@ApiOperation("删除值班报备信息")
void deleteBatch(List<String> ids);
@ApiOperation("删除单条值班报备信息")
void deleteEntity(String id);
@ApiOperation("查询值班排班列表信息--分页")
IPage<TbQwZbpbInsertOrUpdateDto> selectPage(TbQwZbpbQuery dto);
@ApiOperation("查询值班排班详情信息")
TbQwZbpbInsertOrUpdateDto getInfo(String id);
@ApiOperation("分页查询我的值班排班")
IPage<TbQwZbpbInsertOrUpdateDto> getMyZbpb(TbQwZbpbSearchMyQuery dto);
@ApiOperation("查询当前时间的值班排班情况,发送定时任务(定时任务)")
void checkThisTimeZbpb();
@ApiOperation("APP获取我的值班排班信息")
TbQwZbpbZqMyVo getMyZbpbToday();
@ApiOperation("根据周期ID查询周期详细信息")
TbQwZbpbZqDto getZbpbZqInfo(String id);
@ApiOperation("每月一日添加每日警力")
void addMrjl();
@ApiOperation("根据时间查询月份排班、报备情况")
List<Map<String, Object>> getZbbbByMonth(String time);
@ApiOperation("根据月份导出值班排班表情况")
List<Map<String, Object>> exportData(String time, String pbid);
@ApiOperation("查询部门月排班情况")
List<Map<String, Object>> getDeptByMonth(String time);
}

View File

@ -0,0 +1,54 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.base.model.dto.qwzx.TbQwMfjSearchDto;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.common.util.PermissionsUtil;
import com.mosty.qwzx.mapper.QwzxQwlbMapper;
import com.mosty.qwzx.mapper.QwzxStatisticsMapper;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.service.QwzxQwlbService;
import com.mosty.qwzx.service.QwzxStatisticsService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
@AllArgsConstructor
public class QwzxQwlbServiceImpl implements QwzxQwlbService {
private final QwzxQwlbMapper qwzxQwlbMapper;
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
@Override
public List<Map<String, Object>> bzgjlqd(TbQwMfjSearchDto dto) {
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("", user));
dto.setSsbmdm(tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
map.put("dto", dto);
return this.qwzxQwlbMapper.qxjMjlb(map);
}
@Override
public IPage<Map<String, Object>> jmxz(TbQwMfjSearchDto dto) {
dto.setSsbmdm(tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
List<Map<String, Object>> list = this.qwzxQwlbMapper.jmxz(map);
int count = this.qwzxQwlbMapper.jmxzCount(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setRecords(list);
page.setTotal(count);
return page;
}
}

View File

@ -0,0 +1,621 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.base.model.dto.qwzx.TbQwMfjSearchDto;
import com.mosty.base.model.entity.qwzx.TbQwQxj;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.utils.DateUtils;
import com.mosty.common.core.business.entity.SysUser;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.common.util.PermissionsUtil;
import com.mosty.qwzx.mapper.QwzxStatisticsMapper;
import com.mosty.qwzx.mapper.TbQwQxjMapper;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.service.QwzxStatisticsService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.swing.*;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
@AllArgsConstructor
public class QwzxStatisticsServiceImpl implements QwzxStatisticsService {
private final QwzxStatisticsMapper qwzxStatisticsMapper;
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
private final TbQwQxjMapper tbQwQxjMapper;
@Override
public Integer qbfj(TbQwMfjSearchDto dto) {
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("a", user));
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getQbfjCount(map);
}
@Override
public IPage<Map<String, Object>> qbfjList(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getQbfjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.getQbfjList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
/**
* 查询全部列表 qblb
* 警力情况-辅警-全部列表
*
* @param dto
* @return
*/
@Override
public IPage<Map<String, Object>> qblb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getQblbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qblb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
/**
* 警力情况-辅警-全部在岗统计 qbzgtj
*
* @param dto
* @return
*/
@Override
public IPage<Map<String, Object>> qbzgtj(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getQbzgtjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qbzgtj(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public Integer zgfj(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getZgfjCount(map);
}
@Override
public IPage<Map<String, Object>> zgfjList(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getZgfjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.getZgfjList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> zglb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getZglbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.zglb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> fjlb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getFjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.fjlb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> mjlb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getMjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.mjlb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public Integer qb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getQbCount(map);
}
@Override
public IPage<Map<String, Object>> qbList(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getQbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qbList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public Integer zg(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getZgCount(map);
}
@Override
public IPage<Map<String, Object>> zgList(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getZgCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.zgList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> kcdFjlb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getKcdFjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.kcdFjlb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public List<Map<String, Object>> zbtj(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getZbtjCount(map);
}
@Override
public IPage<Map<String, Object>> kcdMjlb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.kcdMjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.kcdMjList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> mjfjzh(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
// map.put("useDept", user.getUserPermissionsInfo() == null ? "" : user.getUserPermissionsInfo().getIds());
map.put("dto", dto);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.mjfjzh(map);
int count = this.qwzxStatisticsMapper.mjfjzhCount(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setRecords(list);
page.setTotal(count);
return page;
}
@Override
public IPage<Map<String, Object>> mjQblb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSqlOfCode("a", user));
map.put("dto", dto);
// map.put("useDept", user.getUserPermissionsInfo() == null ? "" : user.getUserPermissionsInfo().getIds());
int count = this.qwzxStatisticsMapper.mjQblbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.mjQblb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setRecords(list);
page.setTotal(count);
return page;
}
@Override
public Integer qbmj(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getQbmjCount(map);
}
@Override
public IPage<Map<String, Object>> qbmjList(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getQbmjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qbmjList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public Integer mjQbzgtj(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
UserInfo user = UserInfoManager.get();
// map.put("useDept", user.getUserPermissionsInfo() == null ? "" : user.getUserPermissionsInfo().getIds());
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getQbzgCount(map);
}
@Override
public IPage<Map<String, Object>> mjZglb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSqlOfCode("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getmMjzglbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.mjZglb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setRecords(list);
page.setTotal(count);
return page;
}
@Override
public Integer zgmj(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.getZgmj(map);
}
@Override
public List<Map<String, Object>> zgmjfjzh(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.fjlb(map);
}
@Override
public IPage<Map<String, Object>> zgmjList(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSqlOfCode("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.kcdMjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.zgmjList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> qxFjlb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("a", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.qxFjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qxFjlb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public List<Map<String, Object>> mjfjtj(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
// map.put("useSql", PermissionsUtil.createSqlOfCode("a", user));
map.put("dto", dto);
return this.qwzxStatisticsMapper.mjfjtj(map);
}
@Override
public IPage<Map<String, Object>> qxjMjlb(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
// UserInfo user = UserInfoManager.get();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
// map.put("useSql", PermissionsUtil.createSql("", user));
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.qxjMjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qxjMjlb(map);
list.forEach(item -> {
SysUser sysUser = this.tbBaseAdaptRemoteService.getUserInfoBySfzh(String.valueOf(item.get("sfzh")));
if (sysUser != null) {
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getDeptInfoByUserId(String.valueOf(sysUser.getId()));
item.put("orgcode", dept.getDeptcode());
item.put("orgid", dept.getDeptid());
item.put("orgname", dept.getDeptname());
TbQwQxj qxj = this.tbQwQxjMapper.selectOne(
new LambdaQueryWrapper<TbQwQxj>()
.ge(StringUtils.isNotBlank(dto.getKssj()), TbQwQxj::getKssj, dto.getKssj())
.le(StringUtils.isNotBlank(dto.getJssj()), TbQwQxj::getJssj, dto.getJssj())
.orderByDesc(TbQwQxj::getKssj)
.last(" limit 1")
);
if (qxj != null) {
item.put("kssj", DateUtils.getQueryDateString(qxj.getKssj(), "01"));
item.put("jssj", DateUtils.getQueryDateString(qxj.getJssj(), "01"));
}
}
});
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> mjQblbOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.mjQblbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.mjQblb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setRecords(list);
page.setTotal(count);
return page;
}
@Override
public IPage<Map<String, Object>> mjlbOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getMjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.mjlb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> zgmjListOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.kcdMjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.zgmjList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> qxjMjlbOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.qxjMjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qxjMjlb(map);
list.forEach(item -> {
SysUser sysUser = this.tbBaseAdaptRemoteService.getUserInfoBySfzh(String.valueOf(item.get("sfzh")));
if (sysUser != null) {
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getDeptInfoByUserId(String.valueOf(sysUser.getId()));
item.put("orgcode", dept.getDeptcode());
item.put("orgid", dept.getDeptid());
item.put("orgname", dept.getDeptname());
TbQwQxj qxj = this.tbQwQxjMapper.selectOne(
new LambdaQueryWrapper<TbQwQxj>()
.ge(StringUtils.isNotBlank(dto.getKssj()), TbQwQxj::getKssj, dto.getKssj())
.le(StringUtils.isNotBlank(dto.getJssj()), TbQwQxj::getJssj, dto.getJssj())
.orderByDesc(TbQwQxj::getKssj)
.last(" limit 1")
);
if (qxj != null) {
item.put("kssj", DateUtils.getQueryDateString(qxj.getKssj(), "01"));
item.put("jssj", DateUtils.getQueryDateString(qxj.getJssj(), "01"));
}
}
});
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> qblbOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getQblbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qblb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> fjlbOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getFjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.fjlb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> zgfjListOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.getZgfjCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.getZgfjList(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
@Override
public IPage<Map<String, Object>> qxFjlbOther(TbQwMfjSearchDto dto) {
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
Map<String, Object> map = new HashMap<>();
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("dto", dto);
int count = this.qwzxStatisticsMapper.qxFjlbCount(map);
List<Map<String, Object>> list = this.qwzxStatisticsMapper.qxFjlb(map);
IPage<Map<String, Object>> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page.setTotal(count);
page.setRecords(list);
return page;
}
}

View File

@ -0,0 +1,512 @@
package com.mosty.qwzx.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.model.dto.base.GetDeptListDTO;
import com.mosty.base.model.dto.jcgl.TbJcglXfllVo;
import com.mosty.base.model.dto.qwzx.TbQwSearchJlqdDto;
import com.mosty.base.model.entity.jcgl.TbJcglXfll;
import com.mosty.base.model.entity.qwzx.*;
import com.mosty.base.model.query.jcgl.TbJcglXfllQueryAllDto;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.model.vo.qwzx.Gzqk;
import com.mosty.base.model.vo.yszx.TbYsGajgGlbmVo;
import com.mosty.base.model.vo.yszx.TbYsGajgQuery;
import com.mosty.base.utils.Constant;
import com.mosty.base.utils.Kit;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.common.base.util.DateUtils;
import com.mosty.common.core.business.entity.SysDept;
import com.mosty.common.core.business.entity.vo.SysUserDeptVO;
import com.mosty.common.redis.service.RedisService;
import com.mosty.qwzx.mapper.*;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.remote.TbJcglAdaptRemoteService;
import com.mosty.qwzx.remote.TbYszxAdaptRemoteService;
import com.mosty.qwzx.service.TbQwBmjlbbService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* <p>
* 部门每日警力报备表 服务实现类
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@AllArgsConstructor
@Service
public class TbQwBmjlbbServiceImpl extends ServiceImpl<TbQwBmjlbbMapper, TbQwBmjlbb>
implements TbQwBmjlbbService {
private final TbQwBmjlbbJlmxMapper tbQwBmjlbbJlmxMapper;
private final TbQwJjrMapper tbQwJjrMapper;
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
private final TbQwQxjMapper tbQwQxjMapper;
private final TbJcglAdaptRemoteService tbJcglAdaptRemoteService;
private final TbYszxAdaptRemoteService tbYszxAdaptRemoteService;
private final TbQwZbbbMapper tbQwzbbbMapper;
private final TbQwZbpbZqMapper tbQwZbpbZqMapper;
private final RedisService redisService;
private final TbQwXfbbMapper tbQwXfbbMapper;
private final TbQwZbpbMapper tbQwZbpbMapper;
private final TbQwJlMapper tbQwJlMapper;
private final TbQwXfpbMapper tbQwXfpbMapper;
@Override
public Gzqk selectOnCop() {
// UserInfo userInfo = UserInfoManager.get();
String ssbmdm = tbBaseAdaptRemoteService.getSsbm(null, null);
return this.baseMapper.selectOnCop(ssbmdm);
}
@Override
public void setBmjlbbInfo(String time) {
// 查询所有的部门信息
// List<DeptInfoVo> deptList = this.tbBaseAdaptRemoteService.getDeptAll();
//获取所有巡防里面表的部门
List<TbJcglXfll> bmAll = this.tbJcglAdaptRemoteService.getBmAll();
if (!CollectionUtils.isEmpty(bmAll)) {
for (TbJcglXfll xfll : bmAll) {
DeptInfoVo item = this.tbBaseAdaptRemoteService.getOrgByOrgcode(xfll.getSsbmdm());
TbQwBmjlbb bb = new TbQwBmjlbb();
bb.setBbrq(DateUtils.dateTime("yyyy-MM-dd", time));
bb.setId(UUIDGenerator.getUUID());
// 查询是否节假日
TbQwJjr jjr = this.tbQwJjrMapper.selectOne(
new LambdaQueryWrapper<TbQwJjr>()
.eq(TbQwJjr::getJjrq, new Date())
);
if (jjr != null) {
bb.setSfjjr("1");
bb.setJjrmc(jjr.getJjrmc());
} else {
bb.setSfjjr("0");
}
String date = DateUtils.getDate();
try {
bb.setKssj(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(date + " 00:00:00"));
bb.setJssj(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(date + " 23:59:59"));
} catch (ParseException e) {
e.printStackTrace();
}
bb.setSsbm(item.getDeptname());
bb.setSsbmid(item.getDeptid());
bb.setSsbmdm(item.getDeptcode());
bb.setSsxgajdm(item.getFxjcode());
bb.setSsxgajid(item.getFxjid());
bb.setSsxgaj(item.getFxjname());
bb.setSssgaj(item.getDszname());
bb.setSssgajdm(item.getDszcode());
bb.setSssgajid(item.getDszid());
// 查询部门下的人员信息(民警)
if (item.getDeptid() != null) {
// List<SysUserDeptVO> userList = this.tbBaseAdaptRemoteService.getUserAll(item.getDeptid());
TbJcglXfllQueryAllDto dto = new TbJcglXfllQueryAllDto();
dto.setFl("01");
dto.setSsbmdm(item.getDeptcode());
//查询巡逻民警数据
List<TbJcglXfllVo> mjList = this.tbJcglAdaptRemoteService.getXfll(dto);
bb.setBmmjsl(mjList.size());
int zgmjsl = mjList.size();
List<String> zgmj = mjList.stream().map(it -> String.valueOf(it.getId())).collect(Collectors.toList());
List<String> bzgmj = new ArrayList<>();
int bzmjsl = 0;
for (TbJcglXfllVo user : mjList) {
// 查询是否在岗(是否请休假)
TbQwQxj qxj = this.tbQwQxjMapper.selectOne(
new LambdaQueryWrapper<TbQwQxj>()
.eq(TbQwQxj::getSqrlx, "01")
.eq(TbQwQxj::getSqrSfzh, user.getSfzh())
.le(TbQwQxj::getKssj, DateUtils.getDate())
.ge(TbQwQxj::getJssj, DateUtils.getDate())
);
if (qxj == null) {
// 保存子表数据
this.setJlmx(user, bb.getId(), "1", "1", DateUtils.dateTime("yyyy-MM-dd", time));
} else {
zgmjsl--;
zgmj = zgmj.stream().filter(it -> !it.equals(String.valueOf(user.getId()))).collect(Collectors.toList());
bzmjsl++;
bzgmj.add(String.valueOf(user.getId()));
this.setJlmx(user, bb.getId(), "0", "4", DateUtils.dateTime("yyyy-MM-dd", time));
}
}
// 查询部门下的辅警
dto.setFl("02");
List<TbJcglXfllVo> fjList = this.tbJcglAdaptRemoteService.getXfll(dto);
bb.setBmfjsl(fjList.size());
int zgfjsl = fjList.size();
int bzfjsl = 0;
List<String> zgfj = fjList.stream().map(TbJcglXfllVo::getId).collect(Collectors.toList());
List<String> bzgfj = new ArrayList<>();
for (TbJcglXfllVo fj : fjList) {
// 查询是否在岗(是否请休假)
TbQwQxj qxj = this.tbQwQxjMapper.selectOne(
new LambdaQueryWrapper<TbQwQxj>()
.eq(TbQwQxj::getSqrlx, "02")
.eq(TbQwQxj::getSqrId, fj.getId())
.le(TbQwQxj::getKssj, DateUtils.getDate())
.ge(TbQwQxj::getJssj, DateUtils.getDate())
);
if (qxj == null) {
// 保存子表数据
this.setJlmxFj(fj, bb.getId(), "1", "2", DateUtils.dateTime("yyyy-MM-dd", time));
} else {
zgfjsl--;
zgfj = zgfj.stream().filter(it -> !it.equals(fj.getId())).collect(Collectors.toList());
bzfjsl++;
bzgfj.add(fj.getId());
this.setJlmxFj(fj, bb.getId(), "0", "5", DateUtils.dateTime("yyyy-MM-dd", time));
}
}
bb.setZgfjsl(zgfjsl);
bb.setBzgfjsl(bzfjsl);
bb.setZgmjsl(zgmjsl);
bb.setBzmjlsl(bzmjsl);
bb.setXtSjly("1");
bb.setZgmj(JSONArray.toJSONString(zgmj));
bb.setBzgmj(JSONArray.toJSONString(bzgmj));
bb.setZgfj(JSONArray.toJSONString(zgfj));
bb.setBzgfj(JSONArray.toJSONString(bzgfj));
this.baseMapper.insert(bb);
}
}
}
}
@Override
public List<Map<String, Object>> getJlqdListToRedis(TbQwSearchJlqdDto dto) {
List<Map<String, Object>> resList = new ArrayList<>();
// TbYsGajgQuery query = new TbYsGajgQuery();
// query.setYsxl("001001003,001001004");
// query.setJd(dto.getJd());
// query.setWd(dto.getWd());
// query.setRadius(dto.getDistance());
// List<TbYsGajgGlbmVo> list = this.tbYszxAdaptRemoteService.getGajgList(query);
List<TbJcglXfll> list = this.tbJcglAdaptRemoteService.getBmAll();
if (!CollectionUtils.isEmpty(list)) {
for (TbJcglXfll item : list) {
SysDept org = this.tbBaseAdaptRemoteService.getSysDeptBySsbmdm(item.getSsbmdm());
Map<String, Object> map = new HashMap<>();
map.put("ssbmdm", org.getOrgCode());
map.put("ssbmid", org.getId());
map.put("ssbmmc", org.getOrgName());
map.put("ssbmjc", org.getOrgJc());
map.put("wzXz", org.getAddress());
// String ssbm = this.tbBaseAdaptRemoteService.getSsbm(org.getOrgCode(), null);
// 查询在岗警力数
int mj = this.tbQwBmjlbbJlmxMapper.selectCount(
new LambdaQueryWrapper<TbQwBmjlbbJlmx>()
.eq(TbQwBmjlbbJlmx::getBbrq, dto.getBbrq())
.eq(TbQwBmjlbbJlmx::getJllx, "01")
.ne(TbQwBmjlbbJlmx::getJlzt, "0")
.eq(StringUtils.isNotBlank(org.getOrgCode()),TbQwBmjlbbJlmx::getSsbmdm,org.getOrgCode())
// .in(TbQwBmjlbbJlmx::getSsbmid, item.getGlbmSsbmdmList())
);
int fj = this.tbQwBmjlbbJlmxMapper.selectCount(
new LambdaQueryWrapper<TbQwBmjlbbJlmx>()
.eq(TbQwBmjlbbJlmx::getBbrq, dto.getBbrq())
.eq(TbQwBmjlbbJlmx::getJllx, "02")
.ne(TbQwBmjlbbJlmx::getJlzt, "0")
.eq(StringUtils.isNotBlank(org.getOrgCode()),TbQwBmjlbbJlmx::getSsbmdm,org.getOrgCode())
// .in(TbQwBmjlbbJlmx::getSsbmid, item.getGlbmSsbmdmList())
);
map.put("mj", mj);
map.put("fj", fj);
map.put("jl", mj + fj);
// 查询该部门的值班排班或值班报备情况
this.getZbpb(map, item.getSsbmid());
resList.add(map);
}
}
if (dto != null) {
// 删除之前的数据
redisService.deleteObject(Constant.BMJLBB + dto.getBbrq());
if (!CollectionUtils.isEmpty(resList)) {
redisService.setCacheList(Constant.BMJLBB + dto.getBbrq(), resList);
}
}
return resList;
}
@Override
public List<Map<String, Object>> getJlqdList(TbQwSearchJlqdDto dto) {
List<Map<String, Object>> list = redisService.getCacheList(Constant.BMJLBB + dto.getBbrq());
if (CollectionUtils.isEmpty(list)) return new ArrayList<>();
if (dto.getJd() != null && dto.getWd() != null && dto.getDistance() != null) {
list = list.stream().filter(item -> {
double jl = Kit.getDistance(Double.parseDouble(String.valueOf(item.get("jd"))),
Double.parseDouble(String.valueOf(item.get("wd"))),
dto.getJd().doubleValue(), dto.getWd().doubleValue());
item.put("distance", jl);
return jl <= dto.getDistance().doubleValue();
}).collect(Collectors.toList());
}
return list;
}
@Override
public Map<String, Object> getZgjlCount() {
String ssbmdm = tbBaseAdaptRemoteService.getSsbm(null, null);
// UserInfo user = UserInfoManager.get();
TbQwBmjlbb bb = this.baseMapper.selectOne(
new LambdaQueryWrapper<TbQwBmjlbb>()
.eq(TbQwBmjlbb::getBbrq, com.mosty.base.utils.DateUtils.getQueryDateString(new Date(), "01"))
// .eq(TbQwBmjlbb::getSsbmid, String.valueOf(user.getDeptId()))
.likeRight(StringUtils.isNotBlank(ssbmdm), TbQwBmjlbb::getSsbmdm, ssbmdm)
.last(" limit 1")
);
if (bb == null) return null;
Map<String, Object> map = new HashMap<>();
map.put("orgcode", bb.getSsbmdm());
map.put("orgid", bb.getSsbmid());
map.put("orgname", bb.getSsbm());
map.put("zgfj", bb.getZgfjsl());
map.put("zgmj", bb.getZgmjsl());
map.put("zgjl", bb.getZgfjsl() + bb.getZgmjsl());
return map;
}
private void getZbpb(Map<String, Object> map, String ssbmid) {
// 过去,有值班展示值班信息,没有就不展示
List<TbQwZbbb> bbList = this.tbQwzbbbMapper.selectList(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getZbrq, com.mosty.base.utils.DateUtils.getQueryDateString(new Date(), "01"))
.eq(TbQwZbbb::getXtSjzt, "1")
.eq(TbQwZbbb::getSsbmid, ssbmid)
);
if (bbList != null && bbList.size() != 0) {
map.put("zbld", bbList.get(0).getZbldXm());
map.put("zbldDh", bbList.get(0).getZbldDh());
} else {
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.getDeptByMonth(new Date(), ssbmid);
if (zqList != null && zqList.size() > 0) {
map.put("zbld", zqList.get(0).getZbldXm());
map.put("zbldDh", zqList.get(0).getZbldDh());
} else {
map.put("zbld", "暂无");
map.put("zbldDh", "暂无");
}
}
}
// 保存警力表的数据
public void setJlmxFj(TbJcglXfllVo fj, String bbid, String jlzt, String bblx, Date date) {
// 查询是否保存了该人员今天的数据
TbQwBmjlbbJlmx jlmx = this.tbQwBmjlbbJlmxMapper.selectOne(
new LambdaQueryWrapper<TbQwBmjlbbJlmx>()
.eq(TbQwBmjlbbJlmx::getJlId, fj.getId())
.eq(TbQwBmjlbbJlmx::getBbrq, DateUtils.dateTime(date))
);
if (jlmx != null) {
return;
}
// 查询该人员是否报备了值班报备
jlmx = new TbQwBmjlbbJlmx();
jlmx.setJlzt(jlzt);
jlmx.setBblx(bblx);
jlmx.setId(UUIDGenerator.getUUID());
jlmx.setJlbbId(bbid);
jlmx.setJlId(String.valueOf(fj.getId()));
jlmx.setJlxm(fj.getXm());
jlmx.setSfzh(fj.getSfzh());
jlmx.setJh(fj.getJh());
jlmx.setXbdm(fj.getXbdm());
jlmx.setLxdh(fj.getLxdh());
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(String.valueOf(fj.getSsbmdm()));
if (dept != null) {
jlmx.setSsbm(dept.getDeptname());
jlmx.setSsbmid(dept.getDeptid());
jlmx.setSsbmdm(dept.getDeptcode());
jlmx.setSsxgajdm(dept.getFxjcode());
jlmx.setSsxgajid(dept.getFxjid());
jlmx.setSsxgaj(dept.getFxjname());
jlmx.setSssgaj(dept.getDszname());
jlmx.setSssgajdm(dept.getDszcode());
jlmx.setSssgajid(dept.getDszid());
}
jlmx.setJllx("02");
jlmx.setBbrq(date);
jlmx.setXtSjly("1");
this.tbQwBmjlbbJlmxMapper.insert(jlmx);
}
// 保存警力表的数据
public void setJlmx(TbJcglXfllVo user, String bbid, String jlzt, String bblx, Date date) {
// 查询是否保存了该人员今天的数据
TbQwBmjlbbJlmx jlmx = this.tbQwBmjlbbJlmxMapper.selectOne(
new LambdaQueryWrapper<TbQwBmjlbbJlmx>()
.eq(TbQwBmjlbbJlmx::getJlId, String.valueOf(user.getId()))
.eq(TbQwBmjlbbJlmx::getBbrq, DateUtils.dateTime(date))
);
if (jlmx != null) {
return;
}
// 查询该人员是否报备了值班报备
jlmx = new TbQwBmjlbbJlmx();
jlmx.setJlzt(jlzt);
jlmx.setBblx(bblx);
jlmx.setId(UUIDGenerator.getUUID());
jlmx.setJlbbId(bbid);
jlmx.setJlId(String.valueOf(user.getId()));
jlmx.setJlxm(user.getXm());
jlmx.setSfzh(user.getSfzh());
jlmx.setJh(user.getJh());
jlmx.setXbdm(user.getXbdm());
jlmx.setLxdh(user.getLxdh());
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(user.getSsbmdm());
if (dept != null) {
jlmx.setSsbm(dept.getDeptname());
jlmx.setSsbmid(dept.getDeptid());
jlmx.setSsbmdm(dept.getDeptcode());
jlmx.setSsxgajdm(dept.getFxjcode());
jlmx.setSsxgajid(dept.getFxjid());
jlmx.setSsxgaj(dept.getFxjname());
jlmx.setSssgaj(dept.getDszname());
jlmx.setSssgajdm(dept.getDszcode());
jlmx.setSssgajid(dept.getDszid());
}
jlmx.setJllx("01");
jlmx.setXtSjly("1");
jlmx.setBbrq(date);
this.tbQwBmjlbbJlmxMapper.insert(jlmx);
}
@Override
public List<Map<String, Object>> countCdepTree(String ssbmdm) {
List<Map<String, Object>> resList = new ArrayList<>();
ssbmdm = tbBaseAdaptRemoteService.getSsbm(ssbmdm, null);
if (StringUtils.isNotBlank(ssbmdm) && ssbmdm.length() == 2) {
ssbmdm = Constant.SSDSZ;
}
ssbmdm = StringUtils.rightPad(ssbmdm, 12, "0");
SysDept dept = this.tbBaseAdaptRemoteService.getSysDeptBySsbmdm(ssbmdm);
if (ObjectUtils.isNotEmpty(dept)) {
GetDeptListDTO dto = new GetDeptListDTO();
dto.setDeptid(String.valueOf(dept.getId()));
List<String> levle = new ArrayList<>();
// levle.add("30");
// levle.add("31");
// levle.add("40");
// levle.add("21");
dto.setLevels(levle);
List<DeptInfoVo> deptList = this.tbBaseAdaptRemoteService.getChildDept(dto);
if (!CollectionUtils.isEmpty(deptList)) {
for (DeptInfoVo item : deptList) {
if (StringUtils.isNotBlank(item.getOrgLevel()) && Integer.valueOf(item.getOrgLevel()) > 20) {
Map<String, Object> resMap = new HashMap<>();
String ssbm = tbBaseAdaptRemoteService.getSsbm(item.getDeptcode(), null);
//查询报备数据
List<TbQwXfbb> xfbbList = this.tbQwXfbbMapper.selectList(new LambdaQueryWrapper<TbQwXfbb>()
.likeRight(StringUtils.isNotBlank(ssbm), TbQwXfbb::getSsbmdm, ssbm)
.eq(TbQwXfbb::getBbzt, "0")
);
int bbmj = 0;
int bbfj = 0;
if (!CollectionUtils.isEmpty(xfbbList)) {
//获取人员数据
bbmj = xfbbList.stream().collect(Collectors.summingInt(TbQwXfbb::getMjsl));
bbfj = xfbbList.stream().collect(Collectors.summingInt(TbQwXfbb::getFjsl));
}
//获取未在岗数据
List<TbQwQxj> qxjList = this.tbQwQxjMapper.selectList(new LambdaQueryWrapper<TbQwQxj>()
.le(TbQwQxj::getKssj, new Date())
.ge(TbQwQxj::getJssj, new Date())
.likeRight(StringUtils.isNotBlank(ssbm), TbQwQxj::getSsbmdm, ssbm)
);
int qjmj = 0;
int qjfj = 0;
if (!CollectionUtils.isEmpty(qxjList)) {
qjmj = qxjList.stream().filter(s -> s.getSqrlx().equals("1")).collect(Collectors.toList()).size();
qjfj = qxjList.stream().filter(s -> s.getSqrlx().equals("2")).collect(Collectors.toList()).size();
}
//值班数据
List<TbQwZbpb> tbQwZbpbs = this.tbQwZbpbMapper.selectList(new LambdaQueryWrapper<TbQwZbpb>()
.likeRight(StringUtils.isNotBlank(ssbm), TbQwZbpb::getSsbmdm, ssbm)
.le(TbQwZbpb::getZbpbksrq, new Date())
.ge(TbQwZbpb::getZbpbjsrq, new Date())
);
int zbmj = 0;
int zbfj = 0;
if (!CollectionUtils.isEmpty(tbQwZbpbs)) {
for (TbQwZbpb zbpb : tbQwZbpbs) {
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(new LambdaQueryWrapper<TbQwJl>()
.eq(TbQwJl::getYwid, zbpb.getId())
);
if (!CollectionUtils.isEmpty(jlList)) {
zbmj += jlList.stream().filter(s -> s.getJllx().equals("01")).collect(Collectors.toList()).size();
zbfj += jlList.stream().filter(s -> s.getJllx().equals("02")).collect(Collectors.toList()).size();
}
}
}
//获取排班数据
List<TbQwXfpb> xfpbList = this.tbQwXfpbMapper.selectList(new LambdaQueryWrapper<TbQwXfpb>()
.likeRight(StringUtils.isNotBlank(ssbm), TbQwXfpb::getSsbmdm, ssbm)
.le(TbQwXfpb::getPbksrq, new Date())
.ge(TbQwXfpb::getPbjsrq, new Date())
);
int pbmj = 0;
int pbfj = 0;
if (!CollectionUtils.isEmpty(xfpbList)) {
for (TbQwXfpb xfpb : xfpbList) {
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(new LambdaQueryWrapper<TbQwJl>()
.eq(TbQwJl::getYwid, xfpb.getId())
);
if (!CollectionUtils.isEmpty(jlList)) {
pbmj += jlList.stream().filter(s -> s.getJllx().equals("01")).collect(Collectors.toList()).size();
pbfj += jlList.stream().filter(s -> s.getJllx().equals("02")).collect(Collectors.toList()).size();
}
}
}
//获取总民辅警
TbJcglXfllQueryAllDto jcglXfllQueryAllDto = new TbJcglXfllQueryAllDto();
jcglXfllQueryAllDto.setSsbmdm(item.getDeptcode());
List<TbJcglXfllVo> xfll = tbJcglAdaptRemoteService.getXfll(jcglXfllQueryAllDto);
int mjAll = 0;
int fjAll = 0;
if (!CollectionUtils.isEmpty(xfll)) {
mjAll = xfll.stream().filter(s -> s.getFl().equals("01")).collect(Collectors.toList()).size();
fjAll = xfll.stream().filter(s -> s.getFl().equals("02")).collect(Collectors.toList()).size();
}
//可抽调
int kcdmj = (mjAll - pbmj - zbmj - bbmj) < 0 ? 0 : mjAll - pbmj - zbmj - bbmj;
int kcdfj = (fjAll - pbfj - zbfj - bbfj) < 0 ? 0 : fjAll - pbfj - zbfj - bbfj;
resMap.put("kcdmj", kcdmj);
resMap.put("kcdfj", kcdfj);
resMap.put("fjAll", fjAll);
resMap.put("mjAll", mjAll);
resMap.put("pbmj", pbmj);
resMap.put("pbfj", pbfj);
resMap.put("zbmj", zbmj);
resMap.put("zbfj", zbfj);
resMap.put("qjmj", qjmj);
resMap.put("qjfj", qjfj);
resMap.put("bbmj", bbmj);
resMap.put("bbfj", bbfj);
resMap.put("ssbmmc", item.getDeptname());
resMap.put("ssbmdm", item.getDeptcode());
resMap.put("ssbmid", item.getDeptid());
resList.add(resMap);
}
}
}
}
return resList;
}
}

View File

@ -0,0 +1,108 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.model.entity.jcgl.TbJcglXf;
import com.mosty.base.model.entity.qwzx.TbQwFa;
import com.mosty.base.model.query.jcgl.TbJcglXfQuery;
import com.mosty.base.model.query.qwzx.TbQwFaQuery;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.qwzx.mapper.TbQwFaMapper;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.service.TbQwFaService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Map;
@AllArgsConstructor
@Service
public class TbQwFaServiceImpl extends ServiceImpl<TbQwFaMapper, TbQwFa>
implements TbQwFaService {
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
@Override
public TbQwFa queryById(String id) {
return this.baseMapper.selectById(id);
}
@Override
public IPage<TbQwFa> paginQuery(TbQwFaQuery query) {
query.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(query.getSsbmdm(), null));
Page<TbQwFa> tbJcglXfPage = this.baseMapper.selectPage(new Page<>(query.getPageCurrent(), query.getPageSize()), new LambdaQueryWrapper<TbQwFa>()
.likeRight(StringUtils.isNotBlank(query.getSsbmdm()), TbQwFa::getSsbmdm, query.getSsbmdm())
.like(StringUtils.isNotBlank(query.getFamc()), TbQwFa::getFamc, query.getFamc())
);
return tbJcglXfPage;
}
@Override
public Integer insert(TbQwFa fa) {
if (StringUtils.isEmpty(fa.getSsbmdm())) {
UserInfo userInfo = UserInfoManager.get();
fa.setSsbmdm(userInfo.getDeptCode());
}
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(fa.getSsbmdm());
if (ObjectUtils.isNotEmpty(dept)) {
fa.setSsbm(dept.getDeptname());
fa.setSsbmid(dept.getDeptid());
fa.setSsbmdm(dept.getDeptcode());
fa.setSsxgajdm(dept.getFxjcode());
fa.setSsxgajid(dept.getFxjid());
fa.setSsxgaj(dept.getFxjname());
fa.setSssgaj(dept.getDszname());
fa.setSssgajdm(dept.getDszcode());
fa.setSssgajid(dept.getDszid());
}
fa.setId(UUIDGenerator.getUUID());
return this.baseMapper.insert(fa);
}
@Override
public Integer update(TbQwFa fa) {
if (StringUtils.isEmpty(fa.getSsbmdm())) {
UserInfo userInfo = UserInfoManager.get();
fa.setSsbmdm(userInfo.getDeptCode());
}
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(fa.getSsbmdm());
if (ObjectUtils.isNotEmpty(dept)) {
fa.setSsbm(dept.getDeptname());
fa.setSsbmid(dept.getDeptid());
fa.setSsbmdm(dept.getDeptcode());
fa.setSsxgajdm(dept.getFxjcode());
fa.setSsxgajid(dept.getFxjid());
fa.setSsxgaj(dept.getFxjname());
fa.setSssgaj(dept.getDszname());
fa.setSssgajdm(dept.getDszcode());
fa.setSssgajid(dept.getDszid());
}
return this.baseMapper.updateById(fa);
}
@Override
public Boolean deleteById(String id) {
int total = this.baseMapper.deleteById(id);
return total > 0;
}
@Override
public Boolean deleteByIds(List<String> id) {
if (!CollectionUtils.isEmpty(id)) {
int total = this.baseMapper.deleteBatchIds(id);
return total > 0;
}
return false;
}
}

View File

@ -0,0 +1,62 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.model.entity.qwzx.TbQwJjr;
import com.mosty.base.model.query.qwzx.TbQwJjrQuery;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.qwzx.mapper.TbQwJjrMapper;
import com.mosty.qwzx.service.TbQwJjrService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
@AllArgsConstructor
public class TbQwJjrServiceImpl extends ServiceImpl<TbQwJjrMapper, TbQwJjr>
implements TbQwJjrService {
@Override
public void add(TbQwJjr jjr) {
jjr.setId(UUIDGenerator.getUUID());
jjr.setXtSjly("1");
this.baseMapper.insert(jjr);
}
@Override
public void update(TbQwJjr jjr) {
this.baseMapper.updateById(jjr);
}
@Override
public void deleteBatch(List<String> ids) {
if (ids.size() > 0) {
this.baseMapper.deleteBatch(ids);
}
}
@Override
public void deleteByIds(String id) {
List<String> list = new ArrayList<String>() {{
this.add(id);
}};
this.baseMapper.deleteBatch(list);
}
@Override
public IPage<TbQwJjr> getPageList(TbQwJjrQuery dto) {
return this.baseMapper.selectPage(
new Page<>(dto.getPageCurrent(), dto.getPageSize()),
new LambdaQueryWrapper<TbQwJjr>()
.eq(StringUtils.isNotBlank(dto.getRqlx()), TbQwJjr::getRqlx, dto.getRqlx())
.like(StringUtils.isNotBlank(dto.getJjrmc()), TbQwJjr::getJjrmc, dto.getJjrmc())
.eq(dto.getJjrq() != null, TbQwJjr::getJjrq, dto.getJjrq())
.orderByDesc(TbQwJjr::getJjrq)
);
}
}

View File

@ -0,0 +1,165 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.base.model.dto.qwzx.AppSearchQuery;
import com.mosty.base.model.dto.qwzx.TbQwQwbcEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQwbc;
import com.mosty.base.model.query.qwzx.TbQwQwbcQuery;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.qwzx.mapper.TbQwQwbcMapper;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.service.TbQwQwbcService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* <p>
* 勤务班次表- 服务实现类
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@AllArgsConstructor
@Service
public class TbQwQwbcServiceImpl implements TbQwQwbcService {
private final TbQwQwbcMapper tbQwQwbcMapper;
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
@Override
public int addQwbc(TbQwQwbc qwbc) {
qwbc.setId(UUIDGenerator.getUUID());
qwbc.setXtSjly("1");
if (StringUtils.isBlank(qwbc.getSsbmdm())) throw new BusinessException("请选择部门!!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(qwbc.getSsbmdm());
if (dept != null) {
qwbc.setSsbm(dept.getDeptname());
qwbc.setSsbmid(dept.getDeptid());
qwbc.setSsbmdm(dept.getDeptcode());
qwbc.setSsxgajdm(dept.getFxjcode());
qwbc.setSsxgajid(dept.getFxjid());
qwbc.setSsxgaj(dept.getFxjname());
qwbc.setSssgaj(dept.getDszname());
qwbc.setSssgajdm(dept.getDszcode());
qwbc.setSssgajid(dept.getDszid());
}
// UserInfo user = UserInfoManager.get();
// qwbc.setSsbm(user.getDeptName());
// qwbc.setSsbmid(String.valueOf(user.getDeptId()));
// qwbc.setSsbmdm(user.getDeptCode());
// qwbc.setSsxgaj(user.getFxjDeptName());
// qwbc.setSsxgajid(String.valueOf(user.getFxjDeptId()));
// qwbc.setSsxgajdm(user.getFxjDeptCode());
// qwbc.setSssgaj(user.getDszDeptName());
// qwbc.setSssgajid(String.valueOf(user.getDszDeptId()));
// qwbc.setSssgajdm(user.getDszDeptCode());
return tbQwQwbcMapper.insert(qwbc);
}
@Override
public IPage<TbQwQwbc> getQwbc(TbQwQwbcQuery qwbc, IPage<TbQwQwbc> page) {
QueryWrapper<TbQwQwbc> queryWrapper = new QueryWrapper<>();
// UserInfo userInfo = UserInfoManager.get();
// PermissionsUtil.queryWrapperUtil(queryWrapper, userInfo);
qwbc.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(qwbc.getSsbmdm(), null));
if (qwbc != null) {
queryWrapper.lambda()
.like(StringUtils.isNotBlank(qwbc.getBcmc()), TbQwQwbc::getBcmc, qwbc.getBcmc())
.likeRight(StringUtils.isNotBlank(qwbc.getSsbmdm()), TbQwQwbc::getSsbmdm, qwbc.getSsbmdm())
.ge(qwbc.getKssj() != null, TbQwQwbc::getKssj, qwbc.getKssj())
.le(qwbc.getJssj() != null, TbQwQwbc::getJssj, qwbc.getJssj())
.eq(StringUtils.isNotBlank(qwbc.getPbjb()), TbQwQwbc::getPbjb, qwbc.getPbjb())
.eq(StringUtils.isNotBlank(qwbc.getBclx()), TbQwQwbc::getBclx, qwbc.getBclx());
}
return tbQwQwbcMapper.selectPage(page, queryWrapper);
}
@Override
public int editQwbc(TbQwQwbcEditDto qwbc) {
TbQwQwbc bc = new TbQwQwbc();
BeanUtils.copyProperties(qwbc, bc);
if (StringUtils.isBlank(qwbc.getSsbmdm())) throw new BusinessException("请选择部门!!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(qwbc.getSsbmdm());
if (dept != null) {
bc.setSsbm(dept.getDeptname());
bc.setSsbmid(dept.getDeptid());
bc.setSsbmdm(dept.getDeptcode());
bc.setSsxgajdm(dept.getFxjcode());
bc.setSsxgajid(dept.getFxjid());
bc.setSsxgaj(dept.getFxjname());
bc.setSssgaj(dept.getDszname());
bc.setSssgajdm(dept.getDszcode());
bc.setSssgajid(dept.getDszid());
}
// UserInfo user = UserInfoManager.get();
// qwbc.setSsbm(user.getDeptName());
// qwbc.setSsbmid(String.valueOf(user.getDeptId()));
// qwbc.setSsbmdm(user.getDeptCode());
// qwbc.setSsxgaj(user.getFxjDeptName());
// qwbc.setSsxgajid(String.valueOf(user.getFxjDeptId()));
// qwbc.setSsxgajdm(user.getFxjDeptCode());
// qwbc.setSssgaj(user.getDszDeptName());
// qwbc.setSssgajid(String.valueOf(user.getDszDeptId()));
// qwbc.setSssgajdm(user.getDszDeptCode());
return tbQwQwbcMapper.updateById(bc);
}
@Override
public boolean deleteBatch(List<String> ids) {
if (ids.size() > 0) {
int rs = tbQwQwbcMapper.deleteQwbc(ids);
return rs > 0;
}
return true;
}
@Override
public boolean deleteById(String id) {
List<String> ids = new ArrayList<>();
ids.add(id);
int rs = tbQwQwbcMapper.deleteQwbc(ids);
return rs > 0;
}
@Override
public TbQwQwbc selectById(String id) {
return tbQwQwbcMapper.selectById(id);
}
@Override
public Page<TbQwQwbc> getBcList(AppSearchQuery dto) {
UserInfo user = UserInfoManager.get();
LambdaQueryWrapper<TbQwQwbc> wrapper = new LambdaQueryWrapper<TbQwQwbc>()
.eq(StringUtils.isNotBlank(dto.getBclx()), TbQwQwbc::getBclx, dto.getBclx())
.eq(TbQwQwbc::getXtSjzt, "1");
if ("1".equals(dto.getType())) {
wrapper.like(StringUtils.isNotBlank(dto.getKeyword()), TbQwQwbc::getBcmc, dto.getKeyword())
.eq(TbQwQwbc::getSsbmdm, String.valueOf(user.getDeptCode()));
} else {
String ssbm = this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null);
wrapper.likeRight(StringUtils.isNotBlank(ssbm), TbQwQwbc::getSsbmdm, ssbm)
.and(StringUtils.isNotBlank(dto.getKeyword()),
it -> it.like(TbQwQwbc::getBcmc, dto.getKeyword())
.or()
.like(TbQwQwbc::getSsbm, dto.getKeyword())
);
}
return this.tbQwQwbcMapper.selectPage(new Page<>(dto.getPageCurrent(), dto.getPageSize()), wrapper);
}
}

View File

@ -0,0 +1,195 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.model.dto.base.SysMessageInfoInsertDto;
import com.mosty.base.model.dto.base.SysMessageItemInsertDto;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.model.vo.yjzl.TbFzJlVo;
import com.mosty.base.utils.DateUtils;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.common.core.business.entity.vo.SysUserDeptVO;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.common.util.PermissionsUtil;
import com.mosty.base.model.dto.qwzx.TbQwQwdjEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQwdj;
import com.mosty.base.model.query.qwzx.TbQwQwdjQuery;
import com.mosty.qwzx.mapper.TbQwQwdjMapper;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.service.TbQwQwdjService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* <p>
* 勤务等级表 服务实现类
* </p>
*
* @author zengbo
* @since 2022-06-27
*/
@AllArgsConstructor
@Service
public class TbQwQwdjServiceImpl extends ServiceImpl<TbQwQwdjMapper, TbQwQwdj>
implements TbQwQwdjService {
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
@Override
public int addQwdj(TbQwQwdj qwdj) {
UserInfo user = UserInfoManager.get();
qwdj.setId(UUIDGenerator.getUUID());
qwdj.setPzrId(String.valueOf(user.getUserId()));
qwdj.setPzrSfzh(user.getIdEntityCard());
qwdj.setPzrSsbmid(String.valueOf(user.getDeptId()));
qwdj.setPzrSsbmdm(user.getDeptCode());
qwdj.setPzrSsbm(user.getDeptName());
qwdj.setPzrXm(user.getUserName());
qwdj.setFbzt("0");
qwdj.setXtSjly("1");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(qwdj.getSsbmdm());
if (dept != null) {
qwdj.setSsbm(dept.getDeptname());
qwdj.setSsbmid(dept.getDeptid());
qwdj.setSsbmdm(dept.getDeptcode());
qwdj.setSsxgajdm(dept.getFxjcode());
qwdj.setSsxgajid(dept.getFxjid());
qwdj.setSsxgaj(dept.getFxjname());
qwdj.setSssgaj(dept.getDszname());
qwdj.setSssgajdm(dept.getDszcode());
qwdj.setSssgajid(dept.getDszid());
}
return this.baseMapper.insert(qwdj);
}
@Override
public IPage<TbQwQwdj> getQwdj(TbQwQwdjQuery qwdj, IPage<TbQwQwdj> page) {
QueryWrapper<TbQwQwdj> queryWrapper = new QueryWrapper<>();
// UserInfo userInfo = UserInfoManager.get();
// PermissionsUtil.queryWrapperUtil(queryWrapper, userInfo);
qwdj.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(qwdj.getSsbmdm(), null));
if (qwdj != null) {
queryWrapper.lambda()
.likeRight(StringUtils.isNotBlank(qwdj.getSsbmdm()), TbQwQwdj::getSsbmdm, qwdj.getSsbmdm())
.eq(StringUtils.isNotBlank(qwdj.getQwdj()), TbQwQwdj::getQwdj, qwdj.getQwdj())
.eq(StringUtils.isNotBlank(qwdj.getZxfw()), TbQwQwdj::getZxfw, qwdj.getZxfw())
.eq(StringUtils.isNotBlank(qwdj.getFbzt()), TbQwQwdj::getFbzt, qwdj.getFbzt())
.eq(qwdj.getKssj() != null && qwdj.getJssj() == null, TbQwQwdj::getQwkssj, qwdj.getKssj())
.eq(qwdj.getKssj() == null && qwdj.getJssj() != null, TbQwQwdj::getQwjssj, qwdj.getJssj())
.between(qwdj.getKssj() != null && qwdj.getJssj() != null, TbQwQwdj::getQwkssj, qwdj.getKssj(), qwdj.getJssj())
// .between(qwdj.getKssj() != null && qwdj.getJssj() != null, TbQwQwdj::getQwjssj, qwdj.getKssj(), qwdj.getJssj())
.eq(TbQwQwdj::getXtScbz, "0");
}
return this.baseMapper.selectPage(page, queryWrapper);
}
@Override
public int editQwdj(TbQwQwdjEditDto qwdj) {
TbQwQwdj item = new TbQwQwdj();
BeanUtils.copyProperties(qwdj, item);
// UserInfo user = UserInfoManager.get();
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(qwdj.getSsbmdm());
if (dept != null) {
qwdj.setSsbm(dept.getDeptname());
qwdj.setSsbmid(dept.getDeptid());
qwdj.setSsbmdm(dept.getDeptcode());
qwdj.setSsxgajdm(dept.getFxjcode());
qwdj.setSsxgajid(dept.getFxjid());
qwdj.setSsxgaj(dept.getFxjname());
qwdj.setSssgaj(dept.getDszname());
qwdj.setSssgajdm(dept.getDszcode());
qwdj.setSssgajid(dept.getDszid());
}
// item.setSsbm(user.getDeptName());
// item.setSsbmid(String.valueOf(user.getDeptId()));
// item.setSsbmdm(user.getDeptCode());
// item.setSsxgaj(user.getFxjDeptName());
// item.setSsxgajid(String.valueOf(user.getFxjDeptId()));
// item.setSsxgajdm(user.getFxjDeptCode());
// item.setSssgaj(user.getDszDeptName());
// item.setSssgajid(String.valueOf(user.getDszDeptId()));
// item.setSssgajdm(user.getDszDeptCode());
return this.baseMapper.updateById(item);
}
@Override
public boolean deleteBatch(List<String> ids) {
if (ids.size() > 0) {
int rs = this.baseMapper.deleteQwdj(ids);
return rs > 0;
}
return true;
}
@Override
public boolean deleteById(String id) {
List<String> ids = new ArrayList<>();
ids.add(id);
int rs = this.baseMapper.deleteQwdj(ids);
return rs > 0;
}
@Override
public TbQwQwdj selectById(String id) {
return this.baseMapper.selectById(id);
}
@Override
public boolean publishQwdj(String id) {
TbQwQwdj qwdj = this.baseMapper.selectById(id);
qwdj.setFbsj(new Date());
qwdj.setFbzt("1");
int rs = this.baseMapper.updateById(qwdj);
if (rs > 0) {
//发布任务以后通知人员信息 数据较多 使用线程方式下发
new Thread(new Runnable() {
@Override
public void run() {
//获取部门下面的所有人员
List<SysUserDeptVO> list = new ArrayList<>();
if (StringUtils.isNotEmpty(qwdj.getSfxj()) && qwdj.getSfxj().equals("1")) {
list = tbBaseAdaptRemoteService.getUserAll(qwdj.getSsbmid());
} else {
list = tbBaseAdaptRemoteService.getUserList(qwdj.getSsbmid());
}
if (!CollectionUtils.isEmpty(list)) {
SysMessageInfoInsertDto dto = new SysMessageInfoInsertDto();
List<SysMessageItemInsertDto> itemList = new ArrayList<>();
list.forEach(item -> {
SysMessageItemInsertDto itemDto = new SysMessageItemInsertDto();
itemDto.setXxjsrXm(item.getUserName());
itemDto.setXxjsrSfzh(item.getIdEntityCard());
itemDto.setXxjsrId(String.valueOf(item.getId()));
itemDto.setXxjsbm(qwdj.getSsbm());
itemDto.setXxjsbmId(qwdj.getSsbmid());
itemList.add(itemDto);
});
if (itemList.size() > 0) {
dto.setItemList(itemList);
String xxnr = qwdj.getPzrSsbm() + "" + qwdj.getPzrXm() + ")下发:" + qwdj.getQwdjmc() + ",勤务时间:" + DateUtils.getQueryDateString(qwdj.getQwkssj(), "02") + "-" + DateUtils.getQueryDateString(qwdj.getQwjssj(), "02") + ",请注意查收!";
dto.setXxnr(xxnr);
dto.setXxlx("1");
dto.setXxzt("2");
tbBaseAdaptRemoteService.sendMsg(dto);
}
}
}
}).start();
}
return rs > 0;
}
@Override
public TbQwQwdj queryCurrentQwdj(String dateTime) {
return this.baseMapper.queryCurrentQwdj(dateTime);
}
}

View File

@ -0,0 +1,324 @@
package com.mosty.qwzx.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mosty.base.model.entity.bkzx.TbBkRy;
import com.mosty.base.model.entity.qwzx.TbQwBmjlbb;
import com.mosty.base.model.entity.qwzx.TbQwBmjlbbJlmx;
import com.mosty.base.model.query.qwzx.TbQwQxjMyQuery;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.utils.DateUtils;
import com.mosty.base.utils.Kit;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.common.util.PermissionsUtil;
import com.mosty.base.model.dto.qwzx.TbQwQxjEditDto;
import com.mosty.base.model.entity.qwzx.TbQwQxj;
import com.mosty.base.model.query.qwzx.TbQwQxjQuery;
import com.mosty.qwzx.mapper.TbQwBmjlbbJlmxMapper;
import com.mosty.qwzx.mapper.TbQwBmjlbbMapper;
import com.mosty.qwzx.mapper.TbQwQxjMapper;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.service.TbQwQxjService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author zengbo
* @since 2022-06-27
*/
@AllArgsConstructor
@Service
public class TbQwQxjServiceImpl implements TbQwQxjService {
private final TbQwQxjMapper tbQwQxjMapper;
private final TbQwBmjlbbJlmxMapper tbQwBmjlbbJlmxMapper;
private final TbQwBmjlbbMapper tbQwBmjlbbMapper;
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
@Override
@Transactional
public int addQxj(TbQwQxj qxj) {
if (StringUtils.isBlank(qxj.getSqbmdm())) throw new BusinessException("请选择申请人部门!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(qxj.getSqbmdm());
// if (dept != null) {
// qxj.setSsbmid(dept.getDeptid());
// qxj.setSqbmdm(dept.getDeptcode());
// qxj.setSqbm(dept.getDeptname());
// }
// 查询该人员同时段是否有请修改数据
List<TbQwQxj> list = this.tbQwQxjMapper.selectList(
new LambdaQueryWrapper<TbQwQxj>()
.eq(TbQwQxj::getSqrId, qxj.getSqrId())
.eq(TbQwQxj::getXtScbz, "0")
.eq(TbQwQxj::getXtSjzt, "1")
.and(
t -> t.between(TbQwQxj::getKssj, qxj.getKssj(), qxj.getJssj()).or()
.between(TbQwQxj::getJssj, qxj.getKssj(), qxj.getJssj())
)
);
if (list.size() > 0) {
throw new BusinessException("该人员同时段有请休假数据,添加失败!");
}
qxj.setId(UUIDGenerator.getUUID());
qxj.setXtSjly("1");
int time = (int) ((qxj.getJssj().getTime() - qxj.getKssj().getTime()) / 24 / 60 / 60 / 1000) + 1;
qxj.setQjsc(time);
if (dept != null) {
qxj.setSsbm(dept.getDeptname());
qxj.setSsbmid(dept.getDeptid());
qxj.setSsbmdm(dept.getDeptcode());
qxj.setSsxgajdm(dept.getFxjcode());
qxj.setSsxgajid(dept.getFxjid());
qxj.setSsxgaj(dept.getFxjname());
qxj.setSssgaj(dept.getDszname());
qxj.setSssgajdm(dept.getDszcode());
qxj.setSssgajid(dept.getDszid());
}
this.setBmjlbb(qxj);
return tbQwQxjMapper.insert(qxj);
}
private void setBmjlbb(TbQwQxj qxj) {
// 更新部门警力报备数据
Date now = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "01"), "01");
if (now.getTime() >= qxj.getKssj().getTime() && now.getTime() <= qxj.getJssj().getTime()) {
TbQwBmjlbbJlmx jlmx = this.tbQwBmjlbbJlmxMapper.selectOne(
new LambdaQueryWrapper<TbQwBmjlbbJlmx>()
.eq(TbQwBmjlbbJlmx::getJlId, qxj.getSqrId())
.eq(TbQwBmjlbbJlmx::getBbrq, DateUtils.getQueryDateString(now, "01"))
.eq(TbQwBmjlbbJlmx::getJllx, qxj.getSqrlx())
);
if (jlmx != null) {
jlmx.setJlzt("0");
jlmx.setBblx("01".equals(qxj.getSqrlx()) ? "4" : "5");
this.tbQwBmjlbbJlmxMapper.updateById(jlmx);
}
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(qxj.getSsbmdm());
List<TbQwBmjlbb> bbList = this.tbQwBmjlbbMapper.selectList(
new LambdaQueryWrapper<TbQwBmjlbb>()
.eq(TbQwBmjlbb::getBbrq, DateUtils.getQueryDateString(now, "01"))
.and(
it -> it.eq(TbQwBmjlbb::getSsbmdm, dept.getDeptcode()).or()
.eq(TbQwBmjlbb::getSsbmdm, dept.getFxjcode()).or()
.eq(TbQwBmjlbb::getSsbmdm, dept.getDszcode())
)
);
bbList.forEach(item -> {
if ("01".equals(qxj.getSqrlx())) {
// 删除在岗民警
item.setZgmjsl(item.getZgmjsl() - 1);
List<String> zgmjList = JSON.parseArray(item.getZgmj()).toJavaList(String.class);
zgmjList.remove(qxj.getSqrId());
item.setZgmj(JSON.toJSONString(zgmjList));
// 添加不在岗民警
List<String> bzgmjList = JSON.parseArray(item.getBzgmj()).toJavaList(String.class);
bzgmjList.add(qxj.getSqrId());
item.setBzgmj(JSON.toJSONString(bzgmjList));
} else {
// 删除在岗辅警
item.setZgfjsl(item.getZgfjsl() - 1);
List<String> zgfjList = JSON.parseArray(item.getZgfj()).toJavaList(String.class);
zgfjList.remove(qxj.getSqrId());
item.setZgfj(JSON.toJSONString(zgfjList));
// 添加在岗辅警
List<String> bzgfjList = JSON.parseArray(item.getBzgfj()).toJavaList(String.class);
bzgfjList.add(qxj.getSqrId());
item.setBzgfj(JSON.toJSONString(bzgfjList));
}
this.tbQwBmjlbbMapper.updateById(item);
});
}
}
@Override
public IPage<TbQwQxj> getQxj(TbQwQxjQuery qxj, IPage<TbQwQxj> page) {
QueryWrapper<TbQwQxj> queryWrapper = new QueryWrapper<>();
// UserInfo userInfo = UserInfoManager.get();
// PermissionsUtil.queryWrapperUtil(queryWrapper, userInfo);
qxj.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(qxj.getSsbmdm(), null));
if (qxj != null) {
queryWrapper.lambda().eq(StringUtils.isNotBlank(qxj.getSqrlx()), TbQwQxj::getSqrlx, qxj.getSqrlx())
.eq(StringUtils.isNotBlank(qxj.getSqbmdm()), TbQwQxj::getSqbmdm, qxj.getSqbmdm())
.eq(StringUtils.isNotBlank(qxj.getSqbmid()), TbQwQxj::getSqbmid, qxj.getSqbmid())
.likeRight(StringUtils.isNotBlank(qxj.getSsbmdm()), TbQwQxj::getSsbmdm, qxj.getSsbmdm())
.eq(StringUtils.isNotBlank(qxj.getQjlx()), TbQwQxj::getQjlx, qxj.getQjlx())
.like(StringUtils.isNotBlank(qxj.getSqrXm()), TbQwQxj::getSqrXm, qxj.getSqrXm())
.like(StringUtils.isNotBlank(qxj.getLxdh()), TbQwQxj::getLxdh, qxj.getLxdh())
.orderByDesc(TbQwQxj::getXtCjsj);
if (qxj.getKssj() != null) {
queryWrapper.lambda().le(TbQwQxj::getKssj, qxj.getKssj());
}
if (qxj.getJssj() != null) {
queryWrapper.lambda().ge(TbQwQxj::getJssj, qxj.getJssj());
}
}
return tbQwQxjMapper.selectPage(page, queryWrapper);
}
@Override
@Transactional
public int editQxj(TbQwQxjEditDto qxj) {
if (StringUtils.isBlank(qxj.getSqbmdm())) throw new BusinessException("请选择申请人部门!");
// 暂时规定,时间开始不能删除和修改
Date now = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "01"), "01");
if (now.getTime() >= qxj.getKssj().getTime() && now.getTime() <= qxj.getJssj().getTime()) {
throw new BusinessException("请假设置时间已到,不能修改数据");
}
// 查询该人员同时段是否有请修改数据
List<TbQwQxj> list = this.tbQwQxjMapper.selectList(
new LambdaQueryWrapper<TbQwQxj>()
.eq(TbQwQxj::getSqrId, qxj.getSqrId())
.eq(TbQwQxj::getXtSjzt, "1")
.ne(TbQwQxj::getId, qxj.getId())
.and(
t -> t.between(TbQwQxj::getKssj, qxj.getKssj(), qxj.getJssj()).or()
.between(TbQwQxj::getJssj, qxj.getKssj(), qxj.getJssj())
)
);
if (list.size() > 0) {
throw new BusinessException("该人员同时段有请休假数据,添加失败!");
}
int time = (int) ((qxj.getJssj().getTime() - qxj.getKssj().getTime()) / 24 / 60 / 60 / 1000) + 1;
qxj.setQjsc(time);
TbQwQxj item = new TbQwQxj();
BeanUtils.copyProperties(qxj, item);
// 清除之前的人的数据
this.deleteOldBmjlbb(qxj.getId());
// 添加新的数据
this.setBmjlbb(item);
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(item.getSqbmdm());
if (dept != null) {
qxj.setSsbm(dept.getDeptname());
qxj.setSsbmid(dept.getDeptid());
qxj.setSsbmdm(dept.getDeptcode());
qxj.setSsxgajdm(dept.getFxjcode());
qxj.setSsxgajid(dept.getFxjid());
qxj.setSsxgaj(dept.getFxjname());
qxj.setSssgaj(dept.getDszname());
qxj.setSssgajdm(dept.getDszcode());
qxj.setSssgajid(dept.getDszid());
}
return tbQwQxjMapper.updateById(item);
}
private void deleteOldBmjlbb(String id) {
TbQwQxj qxj = this.tbQwQxjMapper.selectById(id);
Date now = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "01"), "01");
if (now.getTime() >= qxj.getKssj().getTime() && now.getTime() <= qxj.getJssj().getTime()) {
TbQwBmjlbbJlmx jlmx = this.tbQwBmjlbbJlmxMapper.selectOne(
new LambdaQueryWrapper<TbQwBmjlbbJlmx>()
.eq(TbQwBmjlbbJlmx::getJlId, qxj.getSqrId())
.eq(TbQwBmjlbbJlmx::getBbrq, DateUtils.getQueryDateString(now, "01"))
.eq(TbQwBmjlbbJlmx::getJllx, qxj.getSqrlx())
);
if (jlmx != null) {
jlmx.setJlzt("1");
jlmx.setBblx("01".equals(qxj.getSqrlx()) ? "1" : "2");
this.tbQwBmjlbbJlmxMapper.updateById(jlmx);
}
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(qxj.getSqbmdm());
List<TbQwBmjlbb> bbList = this.tbQwBmjlbbMapper.selectList(
new LambdaQueryWrapper<TbQwBmjlbb>()
.eq(TbQwBmjlbb::getBbrq, DateUtils.getQueryDateString(now, "01"))
.and(it -> it.eq(TbQwBmjlbb::getSsbmdm, dept.getDeptcode()).or()
.eq(TbQwBmjlbb::getSsbmdm, dept.getFxjcode()).or()
.eq(TbQwBmjlbb::getSsbmdm, dept.getDszcode())
)
);
bbList.forEach(item -> {
if ("01".equals(qxj.getSqrlx())) {
// 添加在岗民警
item.setZgmjsl(item.getZgmjsl() + 1);
List<String> zgmjList = JSON.parseArray(item.getZgmj()).toJavaList(String.class);
zgmjList.add(qxj.getSqrId());
item.setZgmj(JSON.toJSONString(zgmjList));
// 删除不在岗民警
List<String> bzgmjList = JSON.parseArray(item.getBzgmj()).toJavaList(String.class);
bzgmjList.remove(qxj.getSqrId());
item.setBzgmj(JSON.toJSONString(bzgmjList));
} else {
// 删除在岗辅警
item.setZgfjsl(item.getZgfjsl() + 1);
List<String> zgfjList = JSON.parseArray(item.getZgfj()).toJavaList(String.class);
zgfjList.add(qxj.getSqrId());
item.setZgfj(JSON.toJSONString(zgfjList));
// 添加在岗辅警
List<String> bzgfjList = JSON.parseArray(item.getBzgfj()).toJavaList(String.class);
bzgfjList.remove(qxj.getSqrId());
item.setBzgfj(JSON.toJSONString(bzgfjList));
}
this.tbQwBmjlbbMapper.updateById(item);
});
}
}
@Override
@Transactional
public boolean deleteBatch(List<String> ids) {
List<TbQwQxj> list = this.tbQwQxjMapper.selectList(
new LambdaQueryWrapper<TbQwQxj>()
.in(TbQwQxj::getId, ids)
);
list.forEach(item -> {
Date now = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "01"), "01");
if (now.getTime() >= item.getKssj().getTime() && now.getTime() <= item.getJssj().getTime()) {
throw new BusinessException("请假设置时间已到,不能删除数据");
}
// 清除之前的人的数据
this.deleteOldBmjlbb(item.getId());
});
if (ids.size() > 0) {
int rs = tbQwQxjMapper.deleteQxj(ids);
return rs > 0;
}
return true;
}
@Override
public boolean deleteById(String id) {
TbQwQxj qxj = this.tbQwQxjMapper.selectById(id);
Date now = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "01"), "01");
if (now.getTime() >= qxj.getKssj().getTime() && now.getTime() <= qxj.getJssj().getTime()) {
throw new BusinessException("请假设置时间已到,不能删除数据");
}
this.deleteOldBmjlbb(id);
List<String> ids = new ArrayList<>();
ids.add(id);
return tbQwQxjMapper.deleteQxj(ids) > 0;
}
@Override
public TbQwQxj selectById(String id) {
return tbQwQxjMapper.selectById(id);
}
@Override
public IPage<TbQwQxj> getMyQxjList(TbQwQxjMyQuery dto) {
UserInfo user = UserInfoManager.get();
return this.tbQwQxjMapper.selectPage(
new Page<>(dto.getPageCurrent(), dto.getPageSize()),
new LambdaQueryWrapper<TbQwQxj>()
.eq(TbQwQxj::getSqrId, String.valueOf(user.getUserId()))
.eq(StringUtils.isNotBlank(dto.getQjlx()), TbQwQxj::getQjlx, dto.getQjlx())
.and(dto.getKssj() != null && dto.getJssj() != null,
t -> t.between(TbQwQxj::getKssj, dto.getKssj(), dto.getJssj()).or()
.between(TbQwQxj::getJssj, dto.getKssj(), dto.getJssj())
)
.orderByDesc(TbQwQxj::getXtCjsj)
);
}
}

View File

@ -0,0 +1,129 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.model.dto.qwzx.TbQwSpsHdgjChangeDto;
import com.mosty.base.model.entity.qwzx.TbQwSpsCsdw;
import com.mosty.base.model.entity.qwzx.TbQwSpsCsdwhdgj;
import com.mosty.base.model.query.qwzx.TbQwSpsCsdwQuery;
import com.mosty.base.model.vo.qwzx.TbQwSpsCsdwVo;
import com.mosty.base.model.vo.qwzx.TbQwSpsCsdwhdgjVo;
import com.mosty.base.utils.DateUtils;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.qwzx.mapper.TbQwSpsCsdwMapper;
import com.mosty.qwzx.mapper.TbQwSpsCsdwhdgjMapper;
import com.mosty.qwzx.service.TbQwSpsCsdwService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
* @author dw
* @since 2022/9/17
**/
@Service
@AllArgsConstructor
public class TbQwSpsCsdwServiceImpl extends ServiceImpl<TbQwSpsCsdwMapper, TbQwSpsCsdw>
implements TbQwSpsCsdwService {
private final TbQwSpsCsdwhdgjMapper tbQwSpsCsdwhdgjMapper;
@Override
public Object getList(TbQwSpsCsdwQuery dto) {
List<String> dqwzList = null;
if (dto.getDqwzs() != null) {
dqwzList = Arrays.asList(dto.getDqwzs().split(","));
}
if (dto.getPageCurrent() == null || dto.getPageSize() == null) {
return this.baseMapper.selectList(
new LambdaQueryWrapper<TbQwSpsCsdw>()
.in(!CollectionUtils.isEmpty(dqwzList), TbQwSpsCsdw::getDqwz, dqwzList)
.like(StringUtils.isNotBlank(dto.getCddwmc()), TbQwSpsCsdw::getCddwmc, dto.getCddwmc())
.eq(StringUtils.isNotBlank(dto.getSsxz()), TbQwSpsCsdw::getSsxz, dto.getSsxz())
);
} else {
return this.baseMapper.selectPage(
new Page<>(dto.getPageCurrent(), dto.getPageSize()),
new LambdaQueryWrapper<TbQwSpsCsdw>()
.in(!CollectionUtils.isEmpty(dqwzList), TbQwSpsCsdw::getDqwz, dqwzList)
.like(StringUtils.isNotBlank(dto.getCddwmc()), TbQwSpsCsdw::getCddwmc, dto.getCddwmc())
.eq(StringUtils.isNotBlank(dto.getSsxz()), TbQwSpsCsdw::getSsxz, dto.getSsxz())
);
}
}
@Override
public TbQwSpsCsdwVo getCsdwInfo(String id) {
TbQwSpsCsdw dw = this.baseMapper.selectById(id);
if (dw == null) {
throw new BusinessException("没有查询到参赛队伍信息");
}
TbQwSpsCsdwVo vo = new TbQwSpsCsdwVo();
BeanUtils.copyProperties(dw, vo);
TbQwSpsCsdwhdgj gj = this.tbQwSpsCsdwhdgjMapper.selectOne(
new LambdaQueryWrapper<TbQwSpsCsdwhdgj>()
.eq(TbQwSpsCsdwhdgj::getCddwid, id)
.orderByDesc(TbQwSpsCsdwhdgj::getHdsj)
.last(" limit 1")
);
if (gj != null) {
TbQwSpsCsdwhdgjVo gjVo = new TbQwSpsCsdwhdgjVo();
BeanUtils.copyProperties(gj, gjVo);
vo.setGjVo(gjVo);
}
return vo;
}
@Override
@Transactional
public void changeHdgj(TbQwSpsHdgjChangeDto dto) {
UserInfo user = UserInfoManager.get();
List<String> ids = dto.getIds();
ids.forEach(id -> {
TbQwSpsCsdw dw = this.baseMapper.selectById(id);
if (dw != null) {
dw.setDqwz(dto.getHdlx());
dw.setDqwzsj(new Date());
if (user != null) {
dw.setSsbmdm(String.valueOf(user.getDeptId()));
dw.setSsbm(user.getDeptName());
dw.setSsxgaj(user.getFxjDeptName());
dw.setSsxgajdm(String.valueOf(user.getFxjDeptId()));
dw.setSssgaj(user.getDszDeptName());
dw.setSssgajdm(String.valueOf(user.getDszDeptId()));
}
dw.setXtSjly("2");
this.baseMapper.updateById(dw);
TbQwSpsCsdwhdgj gj = new TbQwSpsCsdwhdgj();
gj.setCddwid(id);
gj.setCddwmc(dw.getCddwmc());
gj.setSsxz(dw.getSsxz());
gj.setHdlx(dto.getHdlx());
gj.setHdrq(new Date());
gj.setHdsj(new Date());
if (user != null) {
gj.setSsbmdm(String.valueOf(user.getDeptId()));
gj.setSsbm(user.getDeptName());
gj.setSsxgaj(user.getFxjDeptName());
gj.setSsxgajdm(String.valueOf(user.getFxjDeptId()));
gj.setSssgaj(user.getDszDeptName());
gj.setSssgajdm(String.valueOf(user.getDszDeptId()));
}
gj.setXtSjly("2");
this.tbQwSpsCsdwhdgjMapper.insert(gj);
}
});
}
}

View File

@ -0,0 +1,127 @@
package com.mosty.qwzx.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.common.util.PermissionsUtil;
import com.mosty.base.model.dto.qwzx.TbQwBxfsqEditDto;
import com.mosty.base.model.entity.qwzx.TbQwXfBxfsq;
import com.mosty.base.model.query.qwzx.TbQwXfBxfsqQuery;
import com.mosty.qwzx.mapper.TbQwXfBxfsqMapper;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.service.TbQwXfBxfsqService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@AllArgsConstructor
@Service
public class TbQwXfBxfsqServiceImpl extends ServiceImpl<TbQwXfBxfsqMapper, TbQwXfBxfsq>
implements TbQwXfBxfsqService {
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
@Override
public int addBxfsq(TbQwXfBxfsq bxfsq) {
bxfsq.setId(UUIDGenerator.getUUID());
if (StringUtils.isBlank(bxfsq.getSqbmid())) throw new BusinessException("请选择申请部门!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByDeptId(bxfsq.getSqbmid());
bxfsq.setSsbm(dept.getDeptname());
bxfsq.setSsbmid(dept.getDeptid());
bxfsq.setSsbmdm(dept.getDeptcode());
bxfsq.setSsxgajdm(dept.getFxjcode());
bxfsq.setSsxgajid(dept.getFxjid());
bxfsq.setSsxgaj(dept.getFxjname());
bxfsq.setSssgaj(dept.getDszname());
bxfsq.setSssgajdm(dept.getDszcode());
bxfsq.setSssgajid(dept.getDszid());
bxfsq.setXtSjly("1");
bxfsq.setSqsj(new Date());
bxfsq.setShzt("0");
return this.baseMapper.insert(bxfsq);
}
@Override
public IPage<TbQwXfBxfsq> getBxfsq(TbQwXfBxfsqQuery bxfsq, IPage<TbQwXfBxfsq> page) {
QueryWrapper<TbQwXfBxfsq> qw = new QueryWrapper<>();
// UserInfo userInfo = UserInfoManager.get();
// PermissionsUtil.queryWrapperUtil(qw, userInfo);
bxfsq.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(bxfsq.getSsbmdm(), null));
qw.lambda().eq(StringUtils.isNotBlank(bxfsq.getXfpbId()), TbQwXfBxfsq::getXfpbId, bxfsq.getXfpbId())
.like(StringUtils.isNotBlank(bxfsq.getSqrXm()), TbQwXfBxfsq::getSqrXm, bxfsq.getSqrXm())
.likeRight(StringUtils.isNotBlank(bxfsq.getSsbmdm()), TbQwXfBxfsq::getSsbmdm, bxfsq.getSsbmdm())
.eq(StringUtils.isNotBlank(bxfsq.getSqbmdm()), TbQwXfBxfsq::getSqbmdm, bxfsq.getSqbmdm())
.eq(StringUtils.isNotBlank(bxfsq.getSqbmid()), TbQwXfBxfsq::getSqbmid, bxfsq.getSqbmid())
.eq(StringUtils.isNotBlank(bxfsq.getShbmdm()), TbQwXfBxfsq::getShbmdm, bxfsq.getShbmdm())
.eq(StringUtils.isNotBlank(bxfsq.getShbmid()), TbQwXfBxfsq::getShbmid, bxfsq.getShbmid())
.eq(StringUtils.isNotBlank(bxfsq.getShzt()), TbQwXfBxfsq::getShzt, bxfsq.getShzt())
.ge(bxfsq.getKssj() != null, TbQwXfBxfsq::getBxfsj, bxfsq.getKssj())
.le(bxfsq.getJssj() != null, TbQwXfBxfsq::getBxfsj, bxfsq.getJssj());
return this.baseMapper.selectPage(page, qw);
}
@Override
public int editBxfsq(TbQwXfBxfsq bxfsq) {
TbQwXfBxfsq item = new TbQwXfBxfsq();
BeanUtils.copyProperties(bxfsq, item);
if (StringUtils.isBlank(bxfsq.getSqbmid())) throw new BusinessException("请选择申请部门!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByDeptId(bxfsq.getSqbmid());
item.setSsbm(dept.getDeptname());
item.setSsbmid(dept.getDeptid());
item.setSsbmdm(dept.getDeptcode());
item.setSsxgajdm(dept.getFxjcode());
item.setSsxgajid(dept.getFxjid());
item.setSsxgaj(dept.getFxjname());
item.setSssgaj(dept.getDszname());
item.setSssgajdm(dept.getDszcode());
item.setSssgajid(dept.getDszid());
return this.baseMapper.updateById(item);
}
@Override
public boolean deleteBatch(List<String> ids) {
if (ids.size() > 0) {
int rs = this.baseMapper.deleteBxfsq(ids);
return rs > 0;
}
return true;
}
@Override
public boolean deleteById(String id) {
List<String> ids = new ArrayList<>();
ids.add(id);
int rs = this.baseMapper.deleteBxfsq(ids);
return rs > 0;
}
@Override
public TbQwXfBxfsq selectById(String id) {
return this.baseMapper.selectById(id);
}
@Override
public int judge(TbQwBxfsqEditDto dto) {
TbQwXfBxfsq item = new TbQwXfBxfsq();
BeanUtils.copyProperties(dto, item);
UserInfo user = UserInfoManager.get();
item.setShrId(String.valueOf(user.getUserId()));
item.setShrXm(user.getUserName());
item.setShbm(user.getDeptName());
item.setShbmid(String.valueOf(user.getDeptId()));
item.setShbmdm(user.getDeptCode());
item.setSpsj(new Date());
return this.baseMapper.updateById(item);
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,396 @@
package com.mosty.qwzx.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.feign.service.MostyJcglFeignService;
import com.mosty.base.model.dto.qwzx.TbQwXfbbStartOrEndBbDto;
import com.mosty.base.model.entity.qwzx.*;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.base.utils.Constant;
import com.mosty.base.utils.DateUtils;
import com.mosty.base.utils.PageUtils;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.core.business.entity.SysDept;
import com.mosty.common.core.business.service.SysDeptService;
import com.mosty.common.core.business.service.SysRoleService;
import com.mosty.common.token.DeptInfo;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.common.util.PermissionsUtil;
import com.mosty.base.model.query.qwzx.TbQwZbbbQuery;
import com.mosty.base.model.vo.qwzx.TbQwZbbbVo;
import com.mosty.qwzx.mapper.*;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.remote.TbJcglAdaptRemoteService;
import com.mosty.qwzx.service.TbQwZbbbService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
/**
* @author dw
* @since 2022-10-09
*/
@AllArgsConstructor
@Service
public class TbQwZbbbServiceImpl extends ServiceImpl<TbQwZbbbMapper, TbQwZbbb>
implements TbQwZbbbService {
private final TbQwJlMapper tbQwJlMapper;
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
private final TbQwZbpbZqMapper tbQwZbpbZqMapper;
private final SysRoleService sysRoleService;
private TbJcglAdaptRemoteService tbJcglAdaptRemoteService;
private final TbQwQxjMapper tbQwQxjMapper;
private final SysDeptService sysDeptService;
@Override
public Map<String, Object> getJlByBm(String time, String ssbmdm) {
if (StringUtils.isBlank(ssbmdm)) {
UserInfo user = UserInfoManager.get();
ssbmdm = user.getDeptCode();
}
Map<String, Object> ryMap = new HashMap<>();
// SysDept deptByParentid = sysDeptService.getDeptByParentid(ssbmid);
// ssbmdm = deptByParentid.getOrgCode();
// DeptInfo sysDeptLevel = sysRoleService.getSysDeptLevel(ssbmdm);
//查询部门下面所有警力
Integer rysl = tbJcglAdaptRemoteService.getRysl(ssbmdm);
ssbmdm = tbBaseAdaptRemoteService.getSsbm(ssbmdm, null);
ryMap.put("all", rysl);
//查询值班警力
QueryWrapper<TbQwZbbb> tb = new QueryWrapper<>();
// PermissionsUtil.queryWrapperUtilByDeptInfo(tb, sysDeptLevel);
tb.lambda().ne(TbQwZbbb::getBbzt, "1").likeRight(TbQwZbbb::getSsbmdm, ssbmdm);
List<TbQwZbbb> tbQwZbbbs = this.baseMapper.selectList(tb);
Set<String> zbSet = new HashSet<>();
if (!CollectionUtils.isEmpty(tbQwZbbbs)) {
for (TbQwZbbb zb : tbQwZbbbs) {
String zbmj = zb.getZbmj();
if (StringUtils.isNotBlank(zbmj)) {
List<TbQwJl> mjList = JSONObject.parseArray(zbmj, TbQwJl.class);
mjList.forEach(v -> {
zbSet.add(v.getSfzh());
});
}
String zbfj = zb.getZbfj();
if (StringUtils.isNotBlank(zbfj)) {
List<TbQwJl> fjList = JSONObject.parseArray(zbfj, TbQwJl.class);
fjList.forEach(v -> {
zbSet.add(v.getSfzh());
});
}
}
}
ryMap.put("zbjl", zbSet.size());
//查询未在岗警力
//查询人员请假休假
QueryWrapper<TbQwQxj> ryqj = new QueryWrapper<>();
// PermissionsUtil.queryWrapperUtilByDeptInfo(ryqj, sysDeptLevel);
ryqj.lambda().likeRight(TbQwQxj::getSsbmdm, ssbmdm).last("and DATE_FORMAT('" + time + "', '%Y-%m-%d') <= jssj and DATE_FORMAT('" + time + "', '%Y-%m-%d') >= kssj");
List<TbQwQxj> tbQwQxjs = tbQwQxjMapper.selectList(ryqj);
ryMap.put("wzgjl", tbQwQxjs.size());
return ryMap;
}
@Override
public IPage<TbQwZbbbVo> queryList(TbQwZbbbQuery zb) {
zb.setSsbmdm(tbBaseAdaptRemoteService.getSsbm(zb.getSsbmdm(), null));
// UserInfo userInfo = UserInfoManager.get();
IPage<TbQwZbbbVo> page = PageUtils.buildPage(zb.getPageSize(), zb.getPageCurrent());
return this.baseMapper.queryList(page, zb);
}
@Override
public TbQwZbbbVo selectById(String id) {
TbQwZbbb zb = this.baseMapper.selectById(id);
TbQwZbbbVo vo = new TbQwZbbbVo();
BeanUtils.copyProperties(zb, vo);
List<String> list = new ArrayList<>();
list.add(id);
List<TbQwJl> jlList = this.tbQwJlMapper.queryListByYwid(list);
vo.setJlList(jlList);
return vo;
}
@Override
public String addQwzb(TbQwZbbbVo vo) {
TbQwZbbb zbbb = new TbQwZbbb();
BeanUtils.copyProperties(vo, zbbb);
zbbb.setId(UUIDGenerator.getUUID());
if (StringUtils.isBlank(zbbb.getBblx())) {
zbbb.setBblx("01");
}
if (StringUtils.isBlank(vo.getSsbmdm())) throw new BusinessException("请选择值班部门!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByOrgcode(vo.getSsbmdm());
zbbb.setSsbm(dept.getDeptname());
zbbb.setSsbmid(dept.getDeptid());
zbbb.setSsbmdm(dept.getDeptcode());
zbbb.setSsxgajdm(dept.getFxjcode());
zbbb.setSsxgajid(dept.getFxjid());
zbbb.setSsxgaj(dept.getFxjname());
zbbb.setSssgaj(dept.getDszname());
zbbb.setSssgajdm(dept.getDszcode());
zbbb.setSssgajid(dept.getDszid());
zbbb.setXtSjly("2");
this.saveRelevanceData(zbbb, vo, zbbb.getId());
this.baseMapper.insert(zbbb);
return zbbb.getId();
}
/**
* 保存关联数据
*
* @param vo
* @param ywid
*/
public void saveRelevanceData(TbQwZbbb zbbb, TbQwZbbbVo vo, String ywid) {
UserInfo user = UserInfoManager.get();
if (vo != null) {
List<TbQwJl> jlList = vo.getJlList();
if (!CollectionUtils.isEmpty(jlList)) {
List<TbQwJl> mjLists = new ArrayList<>();
List<TbQwJl> fjLists = new ArrayList<>();
for (TbQwJl jl : jlList) {
if (Constant.JLLX_MJ.equals(jl.getJllx())) {
mjLists.add(jl);
} else {
fjLists.add(jl);
}
}
zbbb.setZbmj(JSONArray.toJSONString(mjLists));
zbbb.setZbfj(JSONArray.toJSONString(fjLists));
zbbb.setMjsl(mjLists.size());
zbbb.setFjsl(fjLists.size());
for (TbQwJl jl : jlList) {
jl.setId(UUIDGenerator.getUUID());
jl.setZblx("4");
jl.setYwid(ywid);
jl.setXtSjzt("1");
jl.setJlzt("1");
jl.setXtSjly(StringUtils.isBlank(jl.getXtSjly()) ? "1" : jl.getXtSjly());
jl.setXtScbz("0");
if (user != null) {
jl.setSsbm(user.getDeptName());
jl.setSsbmdm(String.valueOf(user.getDeptId()));
jl.setSsxgaj(user.getFxjDeptName());
jl.setSsxgajdm(String.valueOf(user.getFxjDeptId()));
jl.setSssgaj(user.getDszDeptName());
jl.setSssgajdm(String.valueOf(user.getDszDeptId()));
}
tbQwJlMapper.insert(jl);
}
}
}
}
@Override
public boolean deleteBatch(List<String> list) {
if (list.size() > 0) {
for (String id : list) {
deleteRelevanceData(id);
}
int rs = this.baseMapper.deleteZb(list);
return rs > 0;
}
return true;
}
@Override
public IPage<TbQwZbbbVo> queryPage(TbQwZbbbQuery zb) {
IPage<TbQwZbbb> xfpbIPage = queryXfzb(zb);
IPage<TbQwZbbbVo> voIPage = new Page<>(zb.getPageCurrent(), zb.getPageSize());
voIPage.setTotal(xfpbIPage.getTotal());
List<TbQwZbbb> records = xfpbIPage.getRecords();
List<TbQwZbbbVo> vos = new ArrayList<>();
if (!CollectionUtils.isEmpty(records)) {
for (TbQwZbbb record : records) {
TbQwZbbbVo vo = new TbQwZbbbVo();
BeanUtils.copyProperties(record, vo);
List<TbQwJl> jl = tbQwJlMapper.queryListByYwid(new ArrayList<String>() {{
this.add(record.getId());
}});
vo.setJlList(jl);
vos.add(vo);
}
}
voIPage.setRecords(vos);
return voIPage;
}
@Override
public TbQwZbbb getMyBbInfoToday() {
UserInfo user = UserInfoManager.get();
if (user == null) {
throw new BusinessException("登录异常,请重新登录!");
}
return this.baseMapper.getMyBbInfoToday(String.valueOf(user.getUserId()));
}
@Override
public Integer startOrEndBb(TbQwXfbbStartOrEndBbDto dto) {
TbQwZbbb bb = this.baseMapper.selectById(dto.getId());
if ("0".equals(dto.getBbzt())) {
bb.setBbkssj(new Date());
} else {
bb.setBbjssj(new Date());
}
bb.setBbzt(dto.getBbzt());
return this.baseMapper.updateById(bb);
}
@Override
public void authJsbb() {
// 查询所有的已经报备的报备信息
List<TbQwZbbb> bbList = this.baseMapper.selectList(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getBbzt, "0")
.eq(TbQwZbbb::getXtSjzt, "1")
);
bbList.forEach(bb -> {
Date jssj;
if (bb.getKssj().getTime() > bb.getJssj().getTime()) {
jssj = DateUtils.strToDate(DateUtils.getQueryDateString(
DateUtils.getNextDate(bb.getZbrq(), "D", +1), "01") + " "
+ DateUtils.getQueryDateString(bb.getJssj(), "10"), "02");
} else {
jssj = DateUtils.strToDate(DateUtils.getQueryDateString(bb.getZbrq(), "01") + " "
+ DateUtils.getQueryDateString(bb.getJssj(), "10"), "02");
}
if (new Date().getTime() >= jssj.getTime()) {
bb.setBbzt("1");
bb.setBbjssj(new Date());
this.baseMapper.updateById(bb);
}
});
}
@Override
public Map<String, Object> getBbCountByDept(String time) {
Map<String, Object> map = new HashMap<>();
time = StringUtils.isBlank(time) ? DateUtils.getQueryDateString(new Date(), "01") : time;
// 查询所有的部门信息
List<DeptInfoVo> list = this.tbBaseAdaptRemoteService.getDeptAll();
AtomicInteger y = new AtomicInteger();
AtomicInteger n = new AtomicInteger();
String finalTime = time;
list.forEach(item -> {
// 查询部门值班信息
int count = this.baseMapper.selectCount(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getSsbmdm, item.getDeptid())
.eq(TbQwZbbb::getXtSjzt, "1")
.eq(TbQwZbbb::getZbrq, finalTime)
);
if (count > 0) y.addAndGet(count);
else n.addAndGet(1);
});
map.put("y", y);
map.put("n", n);
return map;
}
@Override
public List<Map<String, Object>> getBbListByDept(String time) {
List<Map<String, Object>> list = new ArrayList<>();
time = StringUtils.isBlank(time) ? DateUtils.getQueryDateString(new Date(), "01") : time;
// 查询所有的部门信息
List<DeptInfoVo> deptList = this.tbBaseAdaptRemoteService.getDeptAll();
for (DeptInfoVo dept : deptList) {
Map<String, Object> map = new HashMap<>();
map.put("ssbmid", dept.getDeptid());
map.put("ssbmdm", dept.getDeptcode());
map.put("ssbmmc", dept.getDeptname());
List<TbQwZbbb> bbList = this.baseMapper.selectList(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getSsbmdm, dept.getDeptid())
.eq(TbQwZbbb::getXtSjzt, "1")
.eq(TbQwZbbb::getZbrq, time)
);
if (bbList != null && bbList.size() > 0) {
map.put("type", "ybb");
map.put("list", bbList);
} else {
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.getDeptByMonth(DateUtils.strToDate(time, "01"),
dept.getDeptid());
if (zqList != null && zqList.size() > 0) {
map.put("type", "wbb");
map.put("list", zqList);
} else {
map.put("type", "wpb");
}
}
list.add(map);
}
return list;
}
@Override
public Map<String, Object> getZbld() {
UserInfo user = UserInfoManager.get();
if (user == null) {
return null;
}
TbQwZbbb bb = this.baseMapper.selectOne(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getSsbmdm, String.valueOf(user.getDeptId()))
.eq(TbQwZbbb::getZbrq, DateUtils.getQueryDateString(new Date(), "01"))
.eq(TbQwZbbb::getBbzt, "0")
.last(" limit 1")
);
if (bb == null) return null;
Map<String, Object> map = new HashMap<>();
map.put("zbldid", bb.getZbldId());
map.put("zbldxm", bb.getZbldXm());
map.put("zblddh", bb.getZbldDh());
map.put("zbldsfzh", bb.getZbldSfzh());
return map;
}
// 获取巡防排班数据
public IPage<TbQwZbbb> queryXfzb(TbQwZbbbQuery xfpb) {
IPage<TbQwZbbb> page = new Page<>(xfpb.getPageCurrent(), xfpb.getPageSize());
LambdaQueryWrapper<TbQwZbbb> queryWrapper = new LambdaQueryWrapper<>();
// UserInfo userInfo = UserInfoManager.get();
// PermissionsUtil.queryWrapperUtil(queryWrapper, userInfo);
xfpb.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(xfpb.getSsbmdm(), null));
queryWrapper
.like(StringUtils.isNotBlank(xfpb.getZbldXm()), TbQwZbbb::getZbldXm, xfpb.getZbldXm())
.likeRight(StringUtils.isNotBlank(xfpb.getSsbmdm()), TbQwZbbb::getSsbmdm, xfpb.getSsbmdm());
if (xfpb.getStartTime() != null && xfpb.getEndTime() == null) {
queryWrapper.ge(TbQwZbbb::getZbrq, xfpb.getStartTime());
}
if (xfpb.getStartTime() == null && xfpb.getEndTime() != null) {
queryWrapper.le(TbQwZbbb::getZbrq, xfpb.getEndTime());
}
if (xfpb.getStartTime() != null && xfpb.getEndTime() != null) {
queryWrapper.between(TbQwZbbb::getZbrq, xfpb.getStartTime(), xfpb.getEndTime());
}
queryWrapper.orderByDesc(TbQwZbbb::getZbrq);
return this.baseMapper.selectPage(page, queryWrapper);
}
/**
* 删除关联数据
*
* @param id
*/
public void deleteRelevanceData(String id) {
tbQwJlMapper.deleteByYwid(id);
}
}

View File

@ -0,0 +1,993 @@
package com.mosty.qwzx.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mosty.base.model.dto.rwzx.TbRwTaskDto;
import com.mosty.base.model.dto.rwzx.TbRwTaskUserDto;
import com.mosty.base.model.entity.qwzx.*;
import com.mosty.base.model.entity.rwzx.TbRwTask;
import com.mosty.base.model.query.rwzx.TbRwTaskByYwidQuery;
import com.mosty.base.model.vo.qwzx.TbQwZbpbZqMyVo;
import com.mosty.base.utils.Constant;
import com.mosty.base.utils.DateUtils;
import com.mosty.base.utils.Kit;
import com.mosty.base.utils.UUIDGenerator;
import com.mosty.base.model.vo.base.DeptInfoVo;
import com.mosty.common.base.exception.BusinessException;
import com.mosty.common.token.UserInfo;
import com.mosty.common.token.UserInfoManager;
import com.mosty.common.util.PermissionsUtil;
import com.mosty.base.model.dto.qwzx.TbQwZbpbInsertOrUpdateDto;
import com.mosty.base.model.dto.qwzx.TbQwZbpbZqDto;
import com.mosty.base.model.query.qwzx.TbQwZbpbQuery;
import com.mosty.base.model.query.qwzx.TbQwZbpbSearchMyQuery;
import com.mosty.qwzx.mapper.*;
import com.mosty.qwzx.remote.TbBaseAdaptRemoteService;
import com.mosty.qwzx.remote.TbRwzxAdaptRemoteService;
import com.mosty.qwzx.service.TbQwZbpbService;
import lombok.AllArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author dw
* @since 2022/8/3
**/
@Service
@AllArgsConstructor
public class TbQwZbpbServiceImpl extends ServiceImpl<TbQwZbpbMapper, TbQwZbpb> implements TbQwZbpbService {
private final TbBaseAdaptRemoteService tbBaseAdaptRemoteService;
private final TbQwZbpbZqMapper tbQwZbpbZqMapper;
private final TbQwJlMapper tbQwJlMapper;
private final TbQwZbpbMrjlMapper tbQwZbpbMrjlMapper;
private final TbQwJjrMapper tbQwJjrMapper;
private final TbQwZbbbMapper tbQwzbbbMapper;
private final TbRwzxAdaptRemoteService tbRwzxAdaptRemoteService;
private final TbQwQxjMapper tbQwQxjMapper;
@Override
@Transactional
public Integer addEntity(TbQwZbpbInsertOrUpdateDto dto) {
String year = DateUtils.getQueryDateString(new Date(), "13");
if (!DateUtils.getQueryDateString(dto.getZbpbksrq(), "13").equals(year) || (
dto.getZbpbjsrq() != null && !DateUtils.getQueryDateString(dto.getZbpbjsrq(), "13").equals(year)
)) {
throw new BusinessException("排班开始日期和结束日期必须为本年度!!");
}
TbQwZbpb pb = new TbQwZbpb();
BeanUtils.copyProperties(dto, pb);
UserInfo user = UserInfoManager.get();
pb.setId(UUIDGenerator.getUUID());
pb.setPbrid(String.valueOf(user.getUserId()));
pb.setPbr(user.getUserName());
pb.setPbrsfzh(user.getIdEntityCard());
if ("0".equals(pb.getJsrqlx())) {
try {
pb.setZbpbjsrq(new SimpleDateFormat("yyyy-MM-dd").parse("2099-12-31"));
} catch (ParseException e) {
e.printStackTrace();
throw new BusinessException("时间格式转换异常!!");
}
}
if (StringUtils.isBlank(pb.getSsbmid())) throw new BusinessException("请选择值班部门!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByDeptId(pb.getSsbmid());
if (dept != null) {
pb.setSsbm(dept.getDeptname());
pb.setSsbmid(dept.getDeptid());
pb.setSsbmdm(dept.getDeptcode());
pb.setSsxgajdm(dept.getFxjcode());
pb.setSsxgajid(dept.getFxjid());
pb.setSsxgaj(dept.getFxjname());
pb.setSssgaj(dept.getDszname());
pb.setSssgajdm(dept.getDszcode());
pb.setSssgajid(dept.getDszid());
}
pb.setXtSjly("1");
// 保存周期表信息和警力信息
this.setZbpbzq(dto, pb, dept, null);
return this.baseMapper.insert(pb);
}
// 判断是否有时间重合、任务重合的情况,如果存在,则提示给前端
private void checkZbxx(TbQwZbpbInsertOrUpdateDto dto) {
// 查询所有的人员,根据人员查询该时间段是否有排班信息
List<TbQwZbpbZqDto> zqList = dto.getPbzqList();
if (zqList == null || zqList.size() == 0) {
throw new BusinessException("请配置周期信息");
}
for (int i = 0; i < zqList.size(); i++) {
TbQwZbpbZqDto zq = zqList.get(i);
this.checkUserZb(zq, dto, zq.getZbldId(), "01", zq.getZbldXm());
this.checkUserZb(zq, dto, zq.getZbzhzId(), "01", zq.getZbzhzXm());
this.checkUserZb(zq, dto, zq.getZzzhzId(), "01", zq.getZzzhzXm());
this.checkUserZb(zq, dto, zq.getFzzbId(), "01", zq.getFzzbXm());
List<TbQwJl> jlList = zq.getJlList();
if (jlList == null || jlList.size() == 0) {
throw new BusinessException("请配置第" + (i + 1) + "班的警力信息");
}
jlList.forEach(jl -> this.checkUserZb(zq, dto, jl.getJlId(), jl.getJllx(), jl.getJlxm()));
}
}
// 检查用户信息是否重合
private void checkUserZb(TbQwZbpbZqDto zq, TbQwZbpbInsertOrUpdateDto dto, String jlId,
String jlLx, String jlxm) {
// 查询重合的排班信息
String kssj = DateUtils.getQueryDateString(zq.getKssj(), "02");
String jssj = "";
if (zq.getKssj().getTime() > zq.getJssj().getTime()) {
jssj = "1970-01-02" + " " + DateUtils.getQueryDateString(zq.getJssj(), "10");
}
List<TbQwZbpb> pbTempList = this.baseMapper.getZbBySjAndJl
(DateUtils.getQueryDateString(dto.getZbpbksrq(), "01"),
DateUtils.getQueryDateString(dto.getZbpbjsrq(), "01"),
jlId, kssj, jssj, dto.getId());
pbTempList.forEach(pbTemp -> {
throw new BusinessException(("01".equals(jlLx) ? "民警" : "辅警") + "(" + jlxm + ")在" +
"其他排班中时间冲突,冲突排班名称:" + pbTemp.getZbmc());
});
}
@Override
@Transactional
public Integer updateEntity(TbQwZbpbInsertOrUpdateDto dto) {
// 判断是否有时间重合、任务重合的情况,如果存在,则提示给前端
// this.checkZbxx(dto);
String year = DateUtils.getQueryDateString(new Date(), "13");
if (!DateUtils.getQueryDateString(dto.getZbpbksrq(), "13").equals(year)
|| (dto.getZbpbjsrq() != null && !DateUtils.getQueryDateString(dto.getZbpbjsrq(), "13")
.equals(year)
)) {
throw new BusinessException("排班开始日期和结束日期必须为本年度!!");
}
TbQwZbpb pb = new TbQwZbpb();
BeanUtils.copyProperties(dto, pb);
if ("0".equals(pb.getJsrqlx())) {
try {
pb.setZbpbjsrq(new SimpleDateFormat("yyyy-MM-dd").parse("2099-12-31"));
} catch (ParseException e) {
e.printStackTrace();
throw new BusinessException("时间格式转换异常!!");
}
}
if (StringUtils.isBlank(pb.getSsbmid())) throw new BusinessException("请选择值班部门!");
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getOrgByDeptId(pb.getSsbmid());
if (dept != null) {
pb.setSsbm(dept.getDeptname());
pb.setSsbmid(dept.getDeptid());
pb.setSsbmdm(dept.getDeptcode());
pb.setSsxgajdm(dept.getFxjcode());
pb.setSsxgajid(dept.getFxjid());
pb.setSsxgaj(dept.getFxjname());
pb.setSssgaj(dept.getDszname());
pb.setSssgajdm(dept.getDszcode());
pb.setSssgajid(dept.getDszid());
}
// 删除排班表的数据
this.deleteZbpb(pb.getId());
// 添加排班表数据
this.setZbpbzq(dto, pb, dept, dto.getId());
return this.baseMapper.updateById(pb);
}
@Override
@Transactional
public void deleteBatch(List<String> ids) {
if (ids.size() > 0) {
ids.forEach(id -> {
// 删除值班排班周期和警力信息
this.deleteZbpb(id);
// 删除排班信息
this.baseMapper.deleteById(id);
});
}
}
@Override
@Transactional
public void deleteEntity(String id) {
// 删除值班排班周期和警力信息
this.deleteZbpb(id);
// 删除排班信息
this.baseMapper.deleteById(id);
}
@Override
public IPage<TbQwZbpbInsertOrUpdateDto> selectPage(TbQwZbpbQuery dto) {
QueryWrapper<TbQwZbpb> qw = new QueryWrapper<>();
// UserInfo userInfo = UserInfoManager.get();
// PermissionsUtil.queryWrapperUtil(qw, userInfo);
dto.setSsbmdm(this.tbBaseAdaptRemoteService.getSsbm(dto.getSsbmdm(), null));
qw.lambda().eq(StringUtils.isNotBlank(dto.getJsrqlx()), TbQwZbpb::getJsrqlx, dto.getJsrqlx())
.eq(dto.getXhzq() != null, TbQwZbpb::getXhzq, dto.getXhzq())
.eq(StringUtils.isNotBlank(dto.getXhlx()), TbQwZbpb::getXhlx, dto.getXhlx())
.eq(dto.getMrbc() != null, TbQwZbpb::getMrbc, dto.getMrbc())
.likeRight(StringUtils.isNotBlank(dto.getSsbmdm()), TbQwZbpb::getSsbmdm, dto.getSsbmdm())
.like(StringUtils.isNotBlank(dto.getZbmc()), TbQwZbpb::getZbmc, dto.getZbmc())
.like(StringUtils.isNotBlank(dto.getZbms()), TbQwZbpb::getZbms, dto.getZbms());
if (dto.getZbpbksrq() != null && dto.getZbpbjsrq() != null) {
qw.lambda().and(
it -> it.between(TbQwZbpb::getZbpbksrq, dto.getZbpbksrq(), dto.getZbpbjsrq()).or()
.between(TbQwZbpb::getZbpbjsrq, dto.getZbpbksrq(), dto.getZbpbjsrq())
);
}
IPage<TbQwZbpb> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
page = this.baseMapper.selectPage(page, qw);
IPage<TbQwZbpbInsertOrUpdateDto> rPage = new Page<>(dto.getPageCurrent(), dto.getPageSize());
List<TbQwZbpb> list = page.getRecords();
List<TbQwZbpbInsertOrUpdateDto> rList = new ArrayList<>();
list.forEach(item -> {
TbQwZbpbInsertOrUpdateDto entity = new TbQwZbpbInsertOrUpdateDto();
BeanUtils.copyProperties(item, entity);
// 查询排班周期
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.selectList(
new LambdaQueryWrapper<TbQwZbpbZq>().eq(TbQwZbpbZq::getPbId, item.getId())
);
List<TbQwZbpbZqDto> zqDtoList = new ArrayList<>();
zqList.forEach(zqItem -> {
TbQwZbpbZqDto zqDto = new TbQwZbpbZqDto();
BeanUtils.copyProperties(zqItem, zqDto);
// 查询警力列表
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(
new LambdaQueryWrapper<TbQwJl>().eq(TbQwJl::getYwid, zqDto.getId())
);
zqDto.setJlList(jlList);
zqDtoList.add(zqDto);
});
entity.setPbzqList(zqDtoList);
rList.add(entity);
});
rPage.setRecords(rList);
rPage.setTotal(page.getTotal());
return rPage;
}
@Override
public TbQwZbpbInsertOrUpdateDto getInfo(String id) {
TbQwZbpb item = this.baseMapper.selectById(id);
if (item != null) {
TbQwZbpbInsertOrUpdateDto entity = new TbQwZbpbInsertOrUpdateDto();
BeanUtils.copyProperties(item, entity);
// 查询排班周期
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.selectList(
new LambdaQueryWrapper<TbQwZbpbZq>().eq(TbQwZbpbZq::getPbId, item.getId())
);
List<TbQwZbpbZqDto> zqDtoList = new ArrayList<>();
zqList.forEach(zqItem -> {
TbQwZbpbZqDto zqDto = new TbQwZbpbZqDto();
BeanUtils.copyProperties(zqItem, zqDto);
// 查询警力列表
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(
new LambdaQueryWrapper<TbQwJl>().eq(TbQwJl::getYwid, zqDto.getId())
);
zqDto.setJlList(jlList);
zqDtoList.add(zqDto);
});
entity.setPbzqList(zqDtoList);
return entity;
}
return null;
}
@Override
public IPage<TbQwZbpbInsertOrUpdateDto> getMyZbpb(TbQwZbpbSearchMyQuery dto) {
IPage<TbQwZbpbInsertOrUpdateDto> page = new Page<>(dto.getPageCurrent(), dto.getPageSize());
Map<String, Object> map = new HashMap<>();
UserInfo userInfo = UserInfoManager.get();
map.put("dto", dto);
map.put("pageIndex", (dto.getPageCurrent() - 1) * dto.getPageSize());
map.put("pageSize", dto.getPageSize());
map.put("ryid", String.valueOf(userInfo.getUserId()));
int count = this.baseMapper.getCount(map);
List<TbQwZbpb> list = this.baseMapper.getList(map);
List<TbQwZbpbInsertOrUpdateDto> rList = new ArrayList<>();
list.forEach(item -> {
TbQwZbpbInsertOrUpdateDto entity = new TbQwZbpbInsertOrUpdateDto();
BeanUtils.copyProperties(item, entity);
// 查询排班周期
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.selectList(
new LambdaQueryWrapper<TbQwZbpbZq>().eq(TbQwZbpbZq::getPbId, item.getId())
);
List<TbQwZbpbZqDto> zqDtoList = new ArrayList<>();
zqList.forEach(zqItem -> {
TbQwZbpbZqDto zqDto = new TbQwZbpbZqDto();
BeanUtils.copyProperties(zqItem, zqDto);
// 查询警力列表
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(
new LambdaQueryWrapper<TbQwJl>().eq(TbQwJl::getYwid, zqDto.getId())
);
zqDto.setJlList(jlList);
zqDtoList.add(zqDto);
});
entity.setPbzqList(zqDtoList);
rList.add(entity);
});
page.setTotal(count);
page.setRecords(rList);
return page;
}
@Override
public void checkThisTimeZbpb() {
List<TbQwZbpbMrjl> list = this.baseMapper.checkThisTimeZbpb();
TbRwTaskDto task = new TbRwTaskDto();
List<TbRwTaskUserDto> userDtoList = new ArrayList<>();
if (list.size() > 0) {
list.forEach(item -> {
// 查询是否发送消息,如果发送则无需发送了
TbRwTaskByYwidQuery query = new TbRwTaskByYwidQuery();
query.setYwid(item.getId());
query.setRwxl("04");
TbRwTask temp = this.tbRwzxAdaptRemoteService.getRwByYwid(query);
if (temp == null) {
// 判断本次排班是否报备,如果没有报备就不需要提醒了
int count = this.tbQwzbbbMapper.selectCount(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getZbpbId, item.getPbId())
.eq(TbQwZbbb::getBbzt, "0")
.eq(TbQwZbbb::getZbrq, new Date())
);
TbQwZbpbZq zq = this.tbQwZbpbZqMapper.selectById(item.getPbzqId());
if (count == 0) {
// 需要发出提醒
// 值班领导
if (StringUtils.isNotBlank(zq.getZbldId())) {
this.addZbld(zq, userDtoList);
}
// 值班指挥长
if (StringUtils.isNotBlank(zq.getZbzhzId())) {
this.addZbzhz(zq, userDtoList);
}
// 专职指挥长
if (StringUtils.isNotBlank(zq.getZzzhzId())) {
this.addZzzhz(zq, userDtoList);
}
// 法制值班
if (StringUtils.isNotBlank(zq.getFzzbId())) {
this.addFzzb(zq, userDtoList);
}
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(
new LambdaQueryWrapper<TbQwJl>()
.eq(TbQwJl::getYwid, item.getPbzqId())
.eq(TbQwJl::getJllx, "01")
);
if (!CollectionUtils.isEmpty(jlList)) {
jlList.forEach(jl -> {
TbRwTaskUserDto itemDtos = new TbRwTaskUserDto();
itemDtos.setRwzflx("1");
itemDtos.setJsrid(jl.getJlId());
itemDtos.setJsrmc(jl.getJlxm());
itemDtos.setJsrsfzh(jl.getSfzh());
itemDtos.setJsrlxdh(jl.getLxdh());
DeptInfoVo deptVo = this.tbBaseAdaptRemoteService.getDeptInfoByUserId(jl.getJlId());
if (deptVo != null) {
itemDtos.setSsbm(deptVo.getDeptname());
itemDtos.setSsbmid(deptVo.getDeptid());
}
// 判断重复数据
List<TbRwTaskUserDto> tempList = userDtoList.stream().filter(t -> t.getJsrid().equals(jl.getJlId())).collect(Collectors.toList());
if (tempList.size() == 0) {
userDtoList.add(itemDtos);
}
});
}
}
if (userDtoList.size() > 0) {
task.setSsbmid(zq.getSsbmid());
task.setSsbmdm(zq.getSsbmdm());
task.setRwmc("值班报备提醒");
task.setRwnr("根据值班排班安排,请您于" + new SimpleDateFormat("HH:mm").format(zq.getKssj()) + "前," +
"进行值班报备!!");
task.setRwjsdx("01");
task.setRwlx("2");
task.setRwxl("04");
task.setRwjjcd("3");
task.setSfaqwc("1");
task.setRwms("1");
task.setCjrid("-1");
task.setCjrxm("系统");
Date sj;
// 跨天
if (zq.getJssj().getTime() <= zq.getKssj().getTime()) {
sj = DateUtils.getNextDate(
DateUtils.strToDate(
DateUtils.getQueryDateString(
DateUtils.getNextDate(new Date(), "D", +1), "01") + " " +
DateUtils.getQueryDateString(zq.getJssj(), "10"), "02"
), "H", +2
);
} else {
sj = DateUtils.getNextDate(
DateUtils.strToDate(
DateUtils.getQueryDateString(new Date(), "01") + " " +
DateUtils.getQueryDateString(zq.getJssj(), "10"), "02"
), "H", +2
);
}
task.setRwyqwcsj(sj);
task.setCjrlxdh("");
task.setYwid(item.getId());
task.setUserDtoList(userDtoList);
this.tbRwzxAdaptRemoteService.addRw(task);
}
}
});
}
}
@Override
public TbQwZbpbZqMyVo getMyZbpbToday() {
UserInfo user = UserInfoManager.get();
return this.tbQwZbpbZqMapper.getMyZbpbToday(String.valueOf(user.getUserId()));
}
@Override
public TbQwZbpbZqDto getZbpbZqInfo(String id) {
TbQwZbpbZq zqItem = this.tbQwZbpbZqMapper.selectById(id);
if (zqItem == null) {
return null;
}
TbQwZbpbZqDto zqDto = new TbQwZbpbZqDto();
BeanUtils.copyProperties(zqItem, zqDto);
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(
new LambdaQueryWrapper<TbQwJl>()
.eq(TbQwJl::getYwid, zqDto.getId())
);
zqDto.setJlList(jlList);
return zqDto;
}
@Override
public void addMrjl() {
// 查询值班排班信息
List<TbQwZbpb> pbList = this.baseMapper.selectList(
new LambdaQueryWrapper<TbQwZbpb>()
.eq(TbQwZbpb::getXtSjzt, "1")
.eq(TbQwZbpb::getJsrqlx, "0")
);
if (!CollectionUtils.isEmpty(pbList)) {
pbList.forEach(zb -> {
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.selectList(
new LambdaQueryWrapper<TbQwZbpbZq>()
.eq(TbQwZbpbZq::getPbId, zb.getId())
.eq(TbQwZbpbZq::getXtSjzt, "1")
);
zqList.forEach(zq -> {
// 获取本年的第一天
Date firstDay = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "13") + "-01-01", "01");
zb.setZbpbksrq(firstDay);
// 获取本年最后一天的数据
Date lastDay = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "13") + "-12-31", "01");
if (lastDay.getTime() >= zb.getZbpbjsrq().getTime()) {
lastDay = zb.getZbpbjsrq();
}
zb.setZbpbjsrq(lastDay);
this.setZbpbMrjlOther(zb, zq);
});
});
}
}
@Override
public List<Map<String, Object>> exportData(String time, String pbid) {
List<TbQwZbpbMrjl> list = this.tbQwZbpbMrjlMapper.selectList(
new LambdaQueryWrapper<TbQwZbpbMrjl>()
.isNotNull(TbQwZbpbMrjl::getId)
.eq(TbQwZbpbMrjl::getPbId, pbid)
.last(" and date_format(zbrq,'%Y-%m') = '" + time + "' order by zbrq")
);
List<Map<String, Object>> rList = new ArrayList<>();
list.forEach(item -> {
TbQwZbpbZq zq = this.tbQwZbpbZqMapper.selectById(item.getPbzqId());
if (zq != null) {
Map<String, Object> map = new HashMap<>();
map.put("time", DateUtils.getQueryDateString(item.getZbrq(), "01"));
map.put("zbldXm", zq.getZbldXm());
map.put("zbzhzXm", zq.getZbzhzXm());
map.put("zzzhzXm", zq.getZzzhzXm());
map.put("fzzbXm", zq.getFzzbXm());
map.put("zbmj", zq.getZbmj());
map.put("zbfj", zq.getZbfj());
rList.add(map);
}
});
return rList;
}
@Override
public List<Map<String, Object>> getDeptByMonth(String time) {
UserInfo user = UserInfoManager.get();
String ssbmid = String.valueOf(user.getDeptId());
List<Map<String, Object>> rList = new ArrayList<>();
Date kssj = DateUtils.strToDate(time + "-01", "01");
Date jssj = DateUtils.getThisMonthLastDay(time);
while (kssj.getTime() <= jssj.getTime()) {
// 查询排班情况
Date now = DateUtils.strToDate(DateUtils.getQueryDateString(new Date(), "01"), "01");
Map<String, Object> map = new HashMap<>();
map.put("time", DateUtils.getQueryDateString(kssj, "01"));
// 过去,有值班展示值班信息,没有就不展示
if (now.getTime() > kssj.getTime()) {
List<TbQwZbbb> bbList = this.tbQwzbbbMapper.selectList(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getZbrq, kssj)
.eq(TbQwZbbb::getXtSjzt, "1")
.eq(TbQwZbbb::getSsbmid, ssbmid)
);
if (bbList != null && bbList.size() != 0) {
map.put("type", "01");
map.put("list", bbList);
} else {
map.put("type", "00");
}
// 当天,有报备展示报备,没有报备展示排班
} else if (now.getTime() == kssj.getTime()) {
List<TbQwZbbb> bbList = this.tbQwzbbbMapper.selectList(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getZbrq, kssj)
.eq(TbQwZbbb::getXtSjzt, "1")
.eq(TbQwZbbb::getSsbmid, ssbmid)
);
if (bbList != null && bbList.size() != 0) {
map.put("type", "02");
map.put("list", bbList);
} else {
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.getDeptByMonth(kssj, ssbmid);
if (zqList != null && zqList.size() > 0) {
map.put("type", "03");
map.put("list", zqList);
} else {
map.put("type", "04");
}
}
} else {
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.getDeptByMonth(kssj, ssbmid);
if (zqList != null && zqList.size() > 0) {
map.put("type", "05");
map.put("list", zqList);
} else {
map.put("type", "06");
}
}
rList.add(map);
kssj = DateUtils.getNextDate(kssj, "D", +1);
}
return rList;
}
@Override
public List<Map<String, Object>> getZbbbByMonth(String time) {
UserInfo user = UserInfoManager.get();
String userId = String.valueOf(user.getUserId());
List<Map<String, Object>> rList = new ArrayList<>();
Date kssj = DateUtils.strToDate(time + "-01", "01");
Date jssj = DateUtils.getThisMonthLastDay(time);
while (kssj.getTime() <= jssj.getTime()) {
// 查询排班情况
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.getMyZbpbByTime(kssj, userId);
Map<String, Object> map = new HashMap<>();
map.put("day", DateUtils.getQueryDateString(kssj, "12"));
List<Map<String, Object>> dayList = new ArrayList<>();
if (!CollectionUtils.isEmpty(zqList)) {
Date finalKssj = kssj;
List<Map<String, Object>> finalDayList = dayList;
zqList.forEach(zq -> {
Map<String, Object> dayMap = new HashMap<>();
dayMap.put("zt", "01");
dayMap.put("time", DateUtils.getQueryDateString(zq.getKssj(), "09") + "-"
+ DateUtils.getQueryDateString(zq.getJssj(), "09"));
dayMap.put("id", zq.getId());
// 查询是否报备,如果报备,则覆盖排班信息,改为报备信息
TbQwZbbb zbbb = this.tbQwzbbbMapper.selectOne(
new LambdaQueryWrapper<TbQwZbbb>()
.eq(TbQwZbbb::getZbpbId, zq.getId())
.eq(TbQwZbbb::getZbrq, finalKssj)
.orderByDesc(TbQwZbbb::getXtCjsj)
.last(" limit 1")
);
if (zbbb != null) {
if ("0".equals(zbbb.getBbzt())) {
dayMap.put("zt", "02");
dayMap.put("time", DateUtils.getQueryDateString(zbbb.getBbkssj(), "09") + "-当前");
dayMap.put("id", zbbb.getId());
} else if ("1".equals(zbbb.getBbzt())) {
dayMap.put("zt", "03");
dayMap.put("time", DateUtils.getQueryDateString(zbbb.getBbkssj(), "09") + "-" +
DateUtils.getQueryDateString(zbbb.getBbjssj(), "09"));
dayMap.put("id", zbbb.getId());
}
}
finalDayList.add(dayMap);
});
}
// 查询其他的报备信息
List<TbQwZbbb> bbList = this.tbQwzbbbMapper.getMybbTodayByTime(String.valueOf(user.getUserId()),
DateUtils.getQueryDateString(kssj, "01"));
for (TbQwZbbb item : bbList) {
Map<String, Object> dayMap = new HashMap<>();
dayMap.put("zt", "0".equals(item.getBbzt()) ? "02" : "03");
dayMap.put("time", DateUtils.getQueryDateString(item.getKssj(), "09") + "-"
+ DateUtils.getQueryDateString(item.getJssj(), "09"));
dayMap.put("id", item.getId());
dayList.add(dayMap);
}
// 查询请休假信息
TbQwQxj qxj = this.tbQwQxjMapper.selectOne(
new LambdaQueryWrapper<TbQwQxj>()
.eq(TbQwQxj::getSqrId, userId)
.le(TbQwQxj::getKssj, kssj)
.ge(TbQwQxj::getJssj, kssj)
.last(" limit 1")
);
if (qxj != null) {
Map<String, Object> dayMap = new HashMap<>();
dayMap.put("zt", "04");
dayMap.put("time", "00:00-23:59");
dayList = new ArrayList<>();
dayList.add(dayMap);
}
map.put("list", dayList);
rList.add(map);
kssj = DateUtils.getNextDate(kssj, "D", +1);
}
return rList;
}
// 保存时间段累的所有的警力的数据
private void setZbpbMrjlOther(TbQwZbpb zb, TbQwZbpbZq zq) {
Date kssj = DateUtils.getNextDate(zb.getZbpbksrq(), "D", zq.getZbzq() - 1);
Date jssj = zb.getZbpbjsrq();
int a = -1;
while (kssj.getTime() <= jssj.getTime()) {
a++;
if (a % zb.getXhzq() != 0) {
kssj = DateUtils.getNextDate(kssj, "D", +1);
continue;
}
if ("1".equals(zb.getXhlx())) {
// 排除今天是休息日的情况,则需要查询今天是否是休息日
boolean flag = this.checkXxr(kssj);
if (flag) {
kssj = DateUtils.getNextDate(kssj, "D", +1);
continue;
}
} else if ("2".equals(zb.getXhlx())) {
// 排除今天是工作日的情况,则需要查询今天是否是工作日
boolean flag = this.checkXxr(kssj);
if (!flag) {
kssj = DateUtils.getNextDate(kssj, "D", +1);
continue;
}
}
TbQwZbpbMrjl mrjl = new TbQwZbpbMrjl();
mrjl.setPbId(zb.getId());
mrjl.setPbzqId(zq.getId());
String zbksskTime = DateUtils.getQueryDateString(kssj, "01") + " "
+ DateUtils.getQueryDateString(zq.getKssj(), "10");
mrjl.setZbkssj(DateUtils.strToDate(zbksskTime, "02"));
// 判断排班的开始时间是否大于排班的结束时间,如果大于 那么巡防的结束时间需要加一天
if (zq.getKssj().getTime() > zq.getJssj().getTime()) {
Date tempTime = DateUtils.getNextDate(kssj, "D", +1);
String xfjsskTime = DateUtils.getQueryDateString(tempTime, "01") + " "
+ DateUtils.getQueryDateString(zq.getJssj(), "10");
mrjl.setZbjssj(DateUtils.strToDate(xfjsskTime, "02"));
} else {
String xfjsskTime = DateUtils.getQueryDateString(kssj, "01") + " "
+ DateUtils.getQueryDateString(zq.getJssj(), "10");
mrjl.setZbjssj(DateUtils.strToDate(xfjsskTime, "02"));
}
mrjl.setZbrq(kssj);
this.tbQwZbpbMrjlMapper.insert(mrjl);
kssj = DateUtils.getNextDate(kssj, "D", +1);
}
}
// 发送给法制值班
private void addFzzb(TbQwZbpbZq zq, List<TbRwTaskUserDto> userDtoList) {
TbRwTaskUserDto itemDto = new TbRwTaskUserDto();
itemDto.setRwzflx("1");
itemDto.setJsrid(zq.getFzzbId());
itemDto.setJsrmc(zq.getFzzbXm());
itemDto.setJsrsfzh(zq.getFzzbSfzh());
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getDeptInfoByUserId(zq.getFzzbId());
if (dept != null) {
itemDto.setSsbm(dept.getDeptname());
itemDto.setSsbmid(dept.getDeptid());
}
userDtoList.add(itemDto);
}
// 发送给专职指挥长
private void addZzzhz(TbQwZbpbZq zq, List<TbRwTaskUserDto> userDtoList) {
TbRwTaskUserDto itemDto = new TbRwTaskUserDto();
itemDto.setRwzflx("1");
itemDto.setJsrid(zq.getZzzhzId());
itemDto.setJsrmc(zq.getZzzhzXm());
itemDto.setJsrsfzh(zq.getZzzhzSfzh());
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getDeptInfoByUserId(zq.getZzzhzId());
if (dept != null) {
itemDto.setSsbm(dept.getDeptname());
itemDto.setSsbmid(dept.getDeptid());
}
userDtoList.add(itemDto);
}
// 发送给值班指挥长
private void addZbzhz(TbQwZbpbZq zq, List<TbRwTaskUserDto> userDtoList) {
TbRwTaskUserDto itemDto = new TbRwTaskUserDto();
itemDto.setRwzflx("1");
itemDto.setJsrid(zq.getZbzhzId());
itemDto.setJsrmc(zq.getZbzhzXm());
itemDto.setJsrsfzh(zq.getZbzhzSfzh());
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getDeptInfoByUserId(zq.getZbzhzId());
if (dept != null) {
itemDto.setSsbm(dept.getDeptname());
itemDto.setSsbmid(dept.getDeptid());
}
userDtoList.add(itemDto);
}
// 发送给值班领导
private void addZbld(TbQwZbpbZq zq, List<TbRwTaskUserDto> userDtoList) {
TbRwTaskUserDto itemDto = new TbRwTaskUserDto();
itemDto.setRwzflx("1");
itemDto.setJsrid(zq.getZbldId());
itemDto.setJsrmc(zq.getZbldXm());
itemDto.setJsrsfzh(zq.getZbldSfzh());
DeptInfoVo dept = this.tbBaseAdaptRemoteService.getDeptInfoByUserId(zq.getZbldId());
if (dept != null) {
itemDto.setSsbm(dept.getDeptname());
itemDto.setSsbmid(dept.getDeptid());
}
userDtoList.add(itemDto);
}
// 删除值班报备数据
public void deleteZbpb(String id) {
List<TbQwZbpbZq> zqList = this.tbQwZbpbZqMapper.selectList(
new LambdaQueryWrapper<TbQwZbpbZq>()
.eq(TbQwZbpbZq::getPbId, id)
);
if (!CollectionUtils.isEmpty(zqList)) {
zqList.forEach(zq -> {
// 删除警力信息
this.tbQwJlMapper.deleteByYwid(zq.getId());
// 删除每日警力数据
this.tbQwZbpbMrjlMapper.deleteByYwid(id, zq.getId());
});
}
this.tbQwZbpbZqMapper.deleteByPbId(id);
}
//保存值班排班周期表数据
public void setZbpbzq(TbQwZbpbInsertOrUpdateDto dto, TbQwZbpb pb, DeptInfoVo dept, String pbid) {
List<TbQwZbpbZqDto> list = dto.getPbzqList();
if (!CollectionUtils.isEmpty(list)) {
for (TbQwZbpbZqDto item : list) {
TbQwZbpbZq zq = new TbQwZbpbZq();
BeanUtils.copyProperties(item, zq);
zq.setPbId(pb.getId());
zq.setId(UUIDGenerator.getUUID());
List<TbQwJl> jlList = item.getJlList();
List<TbQwJl> mjList = new ArrayList<>(), fjList = new ArrayList<>();
if (!CollectionUtils.isEmpty(jlList)) {
for (TbQwJl jl : jlList) {
if ("01".equals(jl.getJllx())) {
mjList.add(jl);
} else if ("02".equals(jl.getJllx())) {
fjList.add(jl);
}
// 保存警力信息
jl.setId(UUIDGenerator.getUUID());
jl.setYwid(zq.getId());
jl.setZblx("1");
jl.setJlzt("1");
jl.setXtSjly("1");
if (dept != null) {
jl.setSsbm(dept.getDeptname());
jl.setSsbmid(dept.getDeptid());
jl.setSsbmdm(dept.getDeptcode());
jl.setSsxgajdm(dept.getFxjcode());
jl.setSsxgajid(dept.getFxjid());
jl.setSsxgaj(dept.getFxjname());
jl.setSssgaj(dept.getDszname());
jl.setSssgajdm(dept.getDszcode());
jl.setSssgajid(dept.getDszid());
}
this.tbQwJlMapper.insert(jl);
}
}
zq.setMjsl(mjList.size());
zq.setFjsl(fjList.size());
zq.setZbmj(JSONArray.toJSONString(mjList));
zq.setZbfj(JSONArray.toJSONString(fjList));
zq.setBcs(item.getBcs());
if (dept != null) {
zq.setSsbm(dept.getDeptname());
zq.setSsbmid(dept.getDeptid());
zq.setSsbmdm(dept.getDeptcode());
zq.setSsxgajdm(dept.getFxjcode());
zq.setSsxgajid(dept.getFxjid());
zq.setSsxgaj(dept.getFxjname());
zq.setSssgaj(dept.getDszname());
zq.setSssgajdm(dept.getDszcode());
zq.setSssgajid(dept.getDszid());
}
zq.setXtSjly("1");
this.tbQwZbpbZqMapper.insert(zq);
// 保存时间段内的所有的警力数据
List<String> jlIds = jlList.stream().map(TbQwJl::getJlId).collect(Collectors.toList());
if (StringUtils.isNotBlank(zq.getZbldId())) {
jlIds.add(zq.getZbldId());
}
if (StringUtils.isNotBlank(zq.getZbzhzId())) {
jlIds.add(zq.getZbzhzId());
}
if (StringUtils.isNotBlank(zq.getZzzhzId())) {
jlIds.add(zq.getZzzhzId());
}
if (StringUtils.isNotBlank(zq.getFzzbId())) {
jlIds.add(zq.getFzzbId());
}
this.setZbpbMrjl(pb, zq, jlIds, pbid);
}
}
}
// 保存时间段内的所有的警力数据
private void setZbpbMrjl(TbQwZbpb pb, TbQwZbpbZq zq, List<String> jlIds, String pbid) {
Date kssj = DateUtils.getNextDate(pb.getZbpbksrq(), "D", zq.getZbzq() - 1);
Date jssj = pb.getZbpbjsrq();
if (kssj != null && jssj != null) {
// 判断结束时间和开始时间的年份是否一样,如果一样,保存所有数据,
// 如果不一样暂时保存本年数据
if (!DateUtils.getQueryDateString(kssj, "13")
.equals(DateUtils.getQueryDateString(jssj, "13"))) {
jssj = DateUtils.strToDate(DateUtils.getQueryDateString(kssj, "13") + "-12-31", "01");
}
int a = -1;
while (kssj.getTime() <= jssj.getTime()) {
a++;
if (a % pb.getXhzq() != 0) {
kssj = DateUtils.getNextDate(kssj, "D", +1);
continue;
}
if ("1".equals(pb.getXhlx())) {
// 排除今天是休息日的情况,则需要查询今天是否是休息日
boolean flag = this.checkXxr(kssj);
if (flag) {
kssj = DateUtils.getNextDate(kssj, "D", +1);
continue;
}
} else if ("2".equals(pb.getXhlx())) {
// 排除今天是工作日的情况,则需要查询今天是否是工作日
boolean flag = this.checkXxr(kssj);
if (!flag) {
kssj = DateUtils.getNextDate(kssj, "D", +1);
continue;
}
}
TbQwZbpbMrjl mrjl = new TbQwZbpbMrjl();
mrjl.setPbId(pb.getId());
mrjl.setPbzqId(zq.getId());
String zbksskTime = DateUtils.getQueryDateString(kssj, "01") + " "
+ DateUtils.getQueryDateString(zq.getKssj(), "10");
mrjl.setZbkssj(DateUtils.strToDate(zbksskTime, "02"));
// 判断排班的开始时间是否大于排班的结束时间,如果大于 那么巡防的结束时间需要加一天
if (zq.getKssj().getTime() > zq.getJssj().getTime()) {
Date tempTime = DateUtils.getNextDate(kssj, "D", +1);
String xfjsskTime = DateUtils.getQueryDateString(tempTime, "01") + " "
+ DateUtils.getQueryDateString(zq.getJssj(), "10");
mrjl.setZbjssj(DateUtils.strToDate(xfjsskTime, "02"));
} else {
String xfjsskTime = DateUtils.getQueryDateString(kssj, "01") + " "
+ DateUtils.getQueryDateString(zq.getJssj(), "10");
mrjl.setZbjssj(DateUtils.strToDate(xfjsskTime, "02"));
}
mrjl.setZbrq(kssj);
// 判断时间是否重合,如果重合则抛出异常给前端
this.checkTime(mrjl, jlIds, pbid);
this.tbQwZbpbMrjlMapper.insert(mrjl);
kssj = DateUtils.getNextDate(kssj, "D", +1);
}
}
}
// 判断时间是否重合,如果重合则抛出异常给前端
private void checkTime(TbQwZbpbMrjl mrjl, List<String> jlIds, String pbid) {
List<TbQwZbpbMrjl> mrjlList = this.tbQwZbpbMrjlMapper.getMrjlByTime(DateUtils.getQueryDateString(mrjl.getZbkssj(), "02"),
DateUtils.getQueryDateString(mrjl.getZbjssj(), "02"), pbid);
if (mrjlList != null && mrjlList.size() > 0) {
mrjlList.forEach(m -> {
TbQwZbpbZq zq = this.tbQwZbpbZqMapper.selectById(m.getPbzqId());
if (zq != null) {
TbQwZbpb zbpb = this.baseMapper.selectById(zq.getPbId());
if (zbpb != null) {
if (jlIds.indexOf(zq.getZbldId()) != -1) {
throw new BusinessException(("值班领导(" + zq.getZbldXm() + ")在" +
"其他排班中时间冲突,冲突排班名称:" + zbpb.getZbmc()));
}
System.err.println(zq.getZbzhzId());
if (jlIds.indexOf(zq.getZbzhzId()) != -1) {
throw new BusinessException(("值班指挥长(" + zq.getZbzhzXm() + ")在" +
"其他排班中时间冲突,冲突排班名称:" + zbpb.getZbmc()));
}
if (jlIds.indexOf(zq.getZzzhzId()) != -1) {
throw new BusinessException(("综合指挥长(" + zq.getZzzhzXm() + ")在" +
"其他排班中时间冲突,冲突排班名称:" + zbpb.getZbmc()));
}
if (jlIds.indexOf(zq.getFzzbId()) != -1) {
throw new BusinessException(("法制值班(" + zq.getFzzbXm() + ")在" +
"其他排班中时间冲突,冲突排班名称:" + zbpb.getZbmc()));
}
// 其他警力
List<TbQwJl> jlList = this.tbQwJlMapper.selectList(
new LambdaQueryWrapper<TbQwJl>()
.eq(TbQwJl::getYwid, zq.getId())
.eq(TbQwJl::getXtSjzt, "1")
);
jlList.forEach(jl -> {
if (jlIds.indexOf(jl.getJlId()) != -1) {
throw new BusinessException(("01".equals(jl.getJllx()) ? "民警" : "辅警") + "(" + jl.getJlxm() + ")在" +
"其他排班中时间冲突,冲突排班名称:" + zbpb.getZbmc());
}
});
}
}
});
}
}
// 判断今天是否是工作日
private boolean checkGzr(Date kssj) {
int week = DateUtils.dateToWeek(kssj);
if (week == 0 || week == 6) {
TbQwJjr jjr = this.tbQwJjrMapper.selectOne(
new LambdaQueryWrapper<TbQwJjr>()
.eq(TbQwJjr::getJjrq, kssj)
.eq(TbQwJjr::getRqlx, "1")
);
if (jjr != null) return true;
}
TbQwJjr jjr = this.tbQwJjrMapper.selectOne(
new LambdaQueryWrapper<TbQwJjr>()
.eq(TbQwJjr::getJjrq, kssj)
.eq(TbQwJjr::getRqlx, "0")
);
return jjr == null;
}
// 判断今天是否是节假日或休息日
private boolean checkXxr(Date kssj) {
TbQwJjr jjr = this.tbQwJjrMapper.selectOne(
new LambdaQueryWrapper<TbQwJjr>()
.eq(TbQwJjr::getJjrq, kssj)
.eq(TbQwJjr::getRqlx, "0")
);
if (jjr != null) return true;
int week = DateUtils.dateToWeek(kssj);
if (week == 0 || week == 6) {
jjr = this.tbQwJjrMapper.selectOne(
new LambdaQueryWrapper<TbQwJjr>()
.eq(TbQwJjr::getJjrq, kssj)
.eq(TbQwJjr::getRqlx, "1")
);
return jjr == null;
}
return false;
}
}

View File

@ -0,0 +1,38 @@
package com.mosty.qwzx.task;
import com.mosty.base.model.dto.qwzx.TbQwSearchJlqdDto;
import com.mosty.base.utils.Constant;
import com.mosty.base.utils.DateUtils;
import com.mosty.common.redis.service.RedisService;
import com.mosty.qwzx.service.TbQwBmjlbbService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 部门警力报备存入redis中每5分钟执行一次
* 然后直接从redis中取数据
*/
@Slf4j
@Component
@AllArgsConstructor
public class TbQwBmjlbbSearchTask {
private final TbQwBmjlbbService tbQwBmjlbbService;
@Scheduled(cron = "0 */5 * * * ?")
@Transactional
public void run() {
TbQwSearchJlqdDto dto = new TbQwSearchJlqdDto();
dto.setBbrq(DateUtils.getQueryDateString(new Date(), "01"));
// 获取新数据存入redis中
tbQwBmjlbbService.getJlqdListToRedis(dto);
}
}

View File

@ -0,0 +1,40 @@
package com.mosty.qwzx.task;
import com.mosty.common.base.util.DateUtils;
import com.mosty.qwzx.service.TbQwBmjlbbService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
/**
* @author dw
* @since 2022/8/6
* 规则:
* 一、每晚1点更新昨天数据并写入今天数据。
* 写入今天逻辑:
* 一、去人员表查询所有有部门且非虚拟的人员,全面写入。
* 二、去值班排班表查询数据并修改相关字段。
* 三、去请休假表查询数据并修改相关字段。
* 昨天数据更新逻辑:
* 一、去值班班表查询数据并修改相关字段。
* 二、去请休假表查询数据并修改相关字段。
**/
@Slf4j
@Component
@AllArgsConstructor
public class TbQwBmjlbbTask {
private final TbQwBmjlbbService tbQwBmjlbbService;
@Scheduled(cron = "0 0 1 * * ?")
@Transactional
public void run() {
String time = DateUtils.dateTime(new Date());
// 写入今日数据
this.tbQwBmjlbbService.setBmjlbbInfo(time);
}
}

View File

@ -0,0 +1,41 @@
package com.mosty.qwzx.task;
import com.mosty.base.model.entity.qwzx.TbQwZbbb;
import com.mosty.qwzx.service.TbQwXfbbService;
import com.mosty.qwzx.service.TbQwXfpbService;
import com.mosty.qwzx.service.TbQwZbbbService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
* @author dw
* @since 2022/9/28
* 每5分钟查询报备(包含巡防报备和值班报备)信息,
* 如果时间到了,结束报备
**/
@Slf4j
@Component
@AllArgsConstructor
public class TbQwJsbbTask {
private final TbQwXfbbService tbQwXfbbService;
private final TbQwZbbbService tbQwZbbbService;
@Scheduled(cron = "0 */10 * * * ?")
public void run() {
// 结束巡防报备
this.tbQwXfbbService.authJsbb();
// 结束值班报备
this.tbQwZbbbService.authJsbb();
// 删除报备
this.tbQwXfbbService.delRedisXfwz();
}
@Scheduled(cron = " 0 0 0 ? * 1 ")
public void authJsbbTs() {
// 结束特殊巡防报备
this.tbQwXfbbService.authJsbbTs();
}
}

View File

@ -0,0 +1,39 @@
package com.mosty.qwzx.task;
import com.mosty.common.base.util.DateUtils;
import com.mosty.qwzx.service.TbQwBmjlbbService;
import com.mosty.qwzx.service.TbQwXfbbService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
/**
* @author dw
* @since 2022/8/6
* 每30秒计算一次巡逻时长
**/
@Slf4j
@Component
@AllArgsConstructor
public class TbQwXfbbScTask {
private final TbQwXfbbService tbQwXfbbService;
@Scheduled(cron = "0/30 * * * * ?")
@Transactional
public void run() {
this.tbQwXfbbService.checkXfbbSc();
}
//三分钟执行一次
// @Scheduled(cron = "0 0/3 * * * ?")
@Transactional
public void xfbbxlzt() {
this.tbQwXfbbService.updateXfzt();
}
}

View File

@ -0,0 +1,30 @@
package com.mosty.qwzx.task;
import com.mosty.qwzx.service.TbQwXfpbService;
import com.mosty.qwzx.service.TbQwZbpbService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
* @author dw
* @since 2022/8/10
* 每年第一天对排班日期为永久的排班信息添加每日警力
**/
@Slf4j
@Component
@AllArgsConstructor
public class TbQwZbPbMrjlTask {
private final TbQwXfpbService tbQwXfpbService;
private final TbQwZbpbService tbQwZbpbService;
@Scheduled(cron = "0 0 0 1 1 ?")
public void run() {
// 排班添加每日警力
this.tbQwXfpbService.addMrjl();
// 值班添加每日警力
this.tbQwZbpbService.addMrjl();
}
}

View File

@ -0,0 +1,31 @@
package com.mosty.qwzx.task;
import com.mosty.qwzx.service.TbQwXfpbService;
import com.mosty.qwzx.service.TbQwZbpbService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
* @author dw
* @since 2022/8/26
* 每半小时提醒人员进行巡防报备\值班报备
* (定时巡防排班的数据,获取到需要巡防报备的人)
**/
@Slf4j
@Component
@AllArgsConstructor
public class TbQwZbbbAndXfbbTask {
private final TbQwXfpbService tbQwXfpbService;
private final TbQwZbpbService tbQwZbpbService;
@Scheduled(cron = "0 */30 * * * ?")
public void run() {
// 巡防排班
this.tbQwXfpbService.checkThisTimeXfpb();
// 值班排班
this.tbQwZbpbService.checkThisTimeZbpb();
}
}

View File

@ -0,0 +1,75 @@
ribbon:
ReadTimeout: 600000
ConnectTimeout: 600000
spring:
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
jackson:
serialization:
write-dates-as-timestamps: false
# # 格式化返回时间 yyyy-MM-dd HH:mm:ss
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://192.168.200.131:3306/mosty_qwgl?autoReconnect=true&failOverReadOnly=false&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&rewriteBatchedStatements=true&serverTimezone=Asia/Shanghai
username: root
password: mosty888
hikari:
minimum-idle: 10 # ??????????10???0???maximum-pool-size??????maximum-pool-size
maximum-pool-size: 20 # ??????????0????????10??????1?????minimum-idle??
idle-timeout: 500000 # ????????????600000?10????????max-lifetime?max-lifetime>0??????0????0???10???????10??
max-lifetime: 540000 # ????????????0???30??????????30??.?????mysql????????
connection-timeout: 60000 # ????????????250????????????30?
connection-test-query: SELECT 1 # ???????????????
# Redis数据库索引默认为0
redis:
database: 8
# Redis服务器地址
host: 192.168.200.131
# Redis服务器连接端口
port: 6379
# Redis服务器连接密码默认为空
password: mosty888
# 连接超时时间(毫秒)
timeout: 2000
jedis:
pool:
max-active: 50
swagger:
host: 80.155.0.84
port: 8010
mybatis-plus:
global-config:
db-config:
logic-delete-value: 1 # 逻辑已删除值(默认为 1)
logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
magic-api:
web: /magic/web
#配置文件存储位置。当以classpath开头时为只读模式
resource:
# location: /data/magic-api
type: database
table-name: magic_api # 数据库中的表名
prefix: /magic-api # 前缀
datasource:
response-code:
success: 10000
exclude:
pathPatterns:
swagger:
- /swagger-resources/**
- /webjars/**
- /v2/**
- /swagger-ui.html/**
- /docs.html/**
config:
orgCode: 510600000000

View File

@ -0,0 +1,39 @@
server:
port: 8010
servlet:
context-path: /mosty-qwzx/
spring:
application:
name: mosty-qwzx
cloud:
nacos:
discovery:
namespace: 657d1843-b590-41ac-b5e7-5d261bf00de9
server-addr: 192.168.200.131:8848
register-enabled: true # 是否将自己注册到配置中心,让其他服务发现调用(本地调试使用)
# 开启健康监控
management:
endpoints:
web:
exposure:
include: '*'
endpoint:
health:
show-details: always
auditevents:
enabled: true
#swagger:
# enable: true
# title: 基础微服务
# version: 1.0.0
# name: 基础微服务
# url: ''
# email: ''
# 日志
#logging:
# file: /application/applogs/admin.log

View File

@ -0,0 +1,114 @@
<?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<jmxConfigurator/>
<property name="PROJECT_NAME" value="msxf-retail-sort" />
<property name="LOG_FILE_INFO" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/msxf-retail-sort-info.log" />
<property name="LOG_FILE_WARN" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/msxf-retail-sort-warn.log" />
<property name="LOG_FILE_ERR" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/msxf-retail-sort-error.log" />
<property name="LOG_BUSINESS" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/business/business-2de.log"/>
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
<include resource="org/springframework/boot/logging/logback/console-appender.xml" />
<contextName>${PROJECT_NAME}</contextName>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}</pattern>
</encoder>
</appender>
<appender name="LOG_FILE_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}</pattern>
</encoder>
<file>${LOG_FILE_INFO}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_FILE_INFO}-7de.%d{yyyy-MM-dd}.%i</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>1024MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<appender name="LOG_FILE_WARN"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>WARN</level>
</filter>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}</pattern>
</encoder>
<file>${LOG_FILE_WARN}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_FILE_WARN}-30de.%d{yyyy-MM-dd}.%i</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>1024MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<appender name="LOG_FILE_ERROR"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ${LOG_LEVEL_PATTERN:-%5p} ${PID:- } --- [%t] %-40.40logger{39} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}</pattern>
</encoder>
<file>${LOG_FILE_ERR}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${LOG_FILE_ERR}.%d{yyyy-MM-dd}.%i</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>512MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
</appender>
<!--添加监控日志 -->
<appender name="business-log-appender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>info</level>
</filter>
<file>${LOG_BUSINESS}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_BUSINESS}.%d{yyyy-MM-dd}.%i
</fileNamePattern>
<maxFileSize>1024MB</maxFileSize>
</rollingPolicy>
<encoder>
<pattern>%msg%n</pattern>
</encoder>
</appender>
<logger name="business-log" additivity="false" level="info">
<appender-ref ref="business-log-appender"/>
<appender-ref ref="CONSOLE" />
</logger>
<!-- show parameters for hibernate sql 专为 Hibernate 定制 -->
<logger name="logging.level.jdbc" level="INFO" />
<logger name="logging.level.jdbc.sqlonly" level="INFO" />
<logger name="org.springframework" level="INFO" additivity="true" />
<Logger name="jdbc.sqlonly" level="info" />
<Logger name="jdbc.sqltiming" level="warn" />
<Logger name="jdbc.audit" level="warn" />
<Logger name="jdbc.resultset" level="warn" />
<Logger name="jdbc.resultsettable" level="warn" />
<logger name="jdbc.connection" level="warn" />
<Logger name="log4jdbc.debug" level="warn" />
<Logger name="org.apache.kafka.clients.NetworkClient" level="ERROR" />
<root level="INFO">
<!-- <appender-ref ref="CONSOLE" />-->
<!-- <appender-ref ref="LOG_FILE_INFO" />-->
<!-- <appender-ref ref="LOG_FILE_WARN" />-->
<appender-ref ref="LOG_FILE_ERROR" />
</root>
</configuration>

View File

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.mosty.qwzx.mapper.QwzxQwlbMapper">
<select id="qxjMjlb" resultType="java.util.Map">
select * from mosty_qwgl.tb_qw_qxj
where xt_sjzt = '1' and xt_scbz = '0'
<if test="dto.qjrq != null and dto.qjrq != ''">
and #{dto.qjrq} between date_format(kssj,'%Y-%m-%d') and date_format(jssj,'%Y-%m-%d')
</if>
<if test="dto.ssbmdm != null and dto.ssbmdm != ''">
and ssbmid like concat(#{dto.ssbmdm,jdbcType=VARCHAR},'%')
</if>
<!-- ${useSql}-->
</select>
<select id="jmxz" resultType="java.util.Map">
select * from tb_qw_xfbb where xt_scbz='0' and xt_sjzt='1'
<if test="dto.ssbmdm != null and dto.ssbmdm != ''">
and ssbmdm like concat(#{dto.ssbmdm,jdbcType=VARCHAR},'%')
</if>
<!-- <if test="dto.ssbmid != null and dto.ssbmid != ''">-->
<!-- and ssbmid = #{dto.ssbmid}-->
<!-- </if>-->
<!-- ${useSql}-->
limit #{pageIndex},#{pageSize}
</select>
<select id="jmxzCount" resultType="int">
select * from tb_qw_xfbb where xt_scbz='0' and xt_sjzt='1'
<if test="dto.ssbmdm != null and dto.ssbmdm != ''">
and ssbmdm like concat(#{dto.ssbmdm,jdbcType=VARCHAR},'%')
</if>
<!-- <if test="dto.ssbmid != null and dto.ssbmid != ''">-->
<!-- and ssbmid = #{dto.ssbmid}-->
<!-- </if>-->
<!-- ${useSql}-->
</select>
</mapper>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mosty.qwzx.mapper.TbQwBmjlbbJlmxMapper">
<!--根据ID删除警力明细-->
<update id="deleteJlmx">
update tb_qw_bmjlbb_jlmx set xt_scbz = '1' where id in
<foreach collection="list" item="item" separator="," open="(" close=")">
#{item}
</foreach>
</update>
<!--根据ID删除明细-->
<update id="deleteByJlbbId">
delete
from tb_qw_bmjlbb_jlmx
where jlbb_id = #{qwjzId}
</update>
</mapper>

View File

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mosty.qwzx.mapper.TbQwBmjlbbMapper">
<resultMap id="BaseResultMap" type="com.mosty.base.model.vo.qwzx.TbQwBmjlbbVo">
<id column="id" property="id" jdbcType="VARCHAR"/>
<result column="bbrq" property="bbrq" />
<result column="sfjjr" property="sfjjr" />
<result column="jjrmc" property="jjrmc" />
<result column="qwdj_id" property="qwdjId" />
<result column="qwdjdm" property="qwdjdm" />
<result column="qwdj" property="qwdj" />
<result column="kssj" property="kssj" />
<result column="jssj" property="jssj" />
<result column="zgmjsl" property="zgmjsl" />
<result column="zgmj" property="zgmj" />
<result column="zgfjsl" property="zgfjsl" />
<result column="zgfj" property="zgfj" />
<result column="zbjlsl" property="zbjlsl" />
<result column="zbjl" property="zbjl" />
<result column="bzmjlsl" property="bzmjlsl" />
<result column="bzgmj" property="bzgmj" />
<result column="bzgfjsl" property="bzgfjsl" />
<result column="bzgfj" property="bzgfj" />
<result column="ssbm" property="ssbm" />
<result column="ssbmdm" property="ssbmdm" />
<result column="ssxgaj" property="ssxgaj" />
<result column="ssxgajdm" property="ssxgajdm" />
<result column="sssgaj" property="sssgaj" />
<result column="sssgajdm" property="sssgajdm" />
<result column="bz" property="bz" />
<collection property="zbjlList" ofType="com.mosty.base.model.dto.qwzx.TbQwBmjlbbJlmxDto">
<result column="id" property="id" />
<result column="jlbb_id" property="jlbbId" />
<result column="jl_id" property="jlId" />
<result column="jllx" property="jllx" />
<result column="jlxm" property="jlxm" />
<result column="sfzh" property="sfzh" />
<result column="jh" property="jh" />
<result column="xbdm" property="xbdm" />
<result column="nl" property="nl" />
<result column="jlzt" property="jlzt" />
<result column="bblx" property="bblx" />
</collection>
<collection property="zgjlList" ofType="com.mosty.base.model.dto.qwzx.TbQwBmjlbbJlmxDto">
<result column="id" property="id" />
<result column="jlbb_id" property="jlbbId" />
<result column="jl_id" property="jlId" />
<result column="jllx" property="jllx" />
<result column="jlxm" property="jlxm" />
<result column="sfzh" property="sfzh" />
<result column="jh" property="jh" />
<result column="xbdm" property="xbdm" />
<result column="nl" property="nl" />
<result column="jlzt" property="jlzt" />
<result column="bblx" property="bblx" />
</collection>
<collection property="bzgjlList" ofType="com.mosty.base.model.dto.qwzx.TbQwBmjlbbJlmxDto">
<result column="id" property="id" />
<result column="jlbb_id" property="jlbbId" />
<result column="jl_id" property="jlId" />
<result column="jllx" property="jllx" />
<result column="jlxm" property="jlxm" />
<result column="sfzh" property="sfzh" />
<result column="jh" property="jh" />
<result column="xbdm" property="xbdm" />
<result column="nl" property="nl" />
<result column="jlzt" property="jlzt" />
<result column="bblx" property="bblx" />
</collection>
</resultMap>
<select id="selectOnCop" resultType="com.mosty.base.model.vo.qwzx.Gzqk">
select count(1) zgmjsl,
(select count(1) zgfjsl from tb_qw_bmjlbb_jlmx a where DATE_FORMAT(a.bbrq,'%Y-%m-%d')=
DATE_FORMAT(NOW(),'%Y-%m-%d') and a.xt_scbz = '0' and a.xt_sjzt = '1' and a.jlzt = '1' and
a.jllx = '02'
<if test="ssbmdm != null and ssbmdm != ''">
and a.ssbmdm like concat(#{ssbmdm,jdbcType=VARCHAR},'%')
</if>
) as zgfjsl
from tb_qw_bmjlbb_jlmx a where DATE_FORMAT(a.bbrq,'%Y-%m-%d')=
DATE_FORMAT(NOW(),'%Y-%m-%d') and a.xt_scbz = '0' and a.xt_sjzt = '1' and a.jlzt = '1'
and a.jllx = '01'
<if test="ssbmdm != null and ssbmdm != ''">
and a.ssbmdm like concat(#{ssbmdm,jdbcType=VARCHAR},'%')
</if>
</select>
<select id="jlbbCount" resultType="com.mosty.base.model.vo.qwzx.TbQwBmjlbbCountVo">
select SUM(zgmjsl) as zgmjs,SUM(zgfjsl) as zgfjs,SUM(bzmjlsl) as bzgmjs,SUM(bzgfjsl) as bzgfjs
from tb_qw_bmjlbb
<if test="params.kssj != null and params.jssj == null">
and a.bbrq &gt;= #{params.kssj,jdbcType=DATE}
</if>
<if test="params.kssj == null and params.jssj != null">
and a.bbrq &lt;= #{params.jssj,jdbcType=DATE}
</if>
<if test="params.kssj != null and params.jssj != null">
and a.bbrq between #{params.kssj,jdbcType=DATE} and #{params.jssj,jdbcType=DATE}
</if>
</select>
</mapper>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mosty.qwzx.mapper.TbQwClMapper">
<!--根据ID删除勤务车辆明细-->
<update id="deleteCl">
update tb_qw_cl set xt_scbz = '1' where id in
<foreach collection="list" item="item" separator="," open="(" close=")">
#{item}
</foreach>
</update>
<!--根据业务ID删除明细-->
<update id="deleteByYwid">
delete from tb_qw_cl where ywid = #{ywid}
</update>
<select id="queryListByYwid" resultType="com.mosty.base.model.entity.qwzx.TbQwCl">
select a.* from tb_qw_cl a
where a.xt_scbz = '0'
and a.ywid in
<foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</select>
</mapper>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.mosty.qwzx.mapper.TbQwJjrMapper">
<delete id="deleteBatch">
delete from tb_qw_jjr where id in
<foreach collection="list" open="(" separator="," close=")" item="item">
#{item}
</foreach>
</delete>
</mapper>

View File

@ -0,0 +1,561 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mosty.qwzx.mapper.TbQwJlMapper">
<resultMap type="com.mosty.base.model.entity.qwzx.TbQwJl" id="TbQwJlMap">
<result property="id" column="id" jdbcType="VARCHAR"/>
<result property="ywid" column="ywid" jdbcType="VARCHAR"/>
<result property="jllx" column="jllx" jdbcType="VARCHAR"/>
<result property="jlId" column="jl_id" jdbcType="VARCHAR"/>
<result property="jlxm" column="jlxm" jdbcType="VARCHAR"/>
<result property="sfzh" column="sfzh" jdbcType="VARCHAR"/>
<result property="lxdh" column="lxdh" jdbcType="VARCHAR"/>
<result property="xbdm" column="xbdm" jdbcType="VARCHAR"/>
<result property="nl" column="nl" jdbcType="INTEGER"/>
<result property="jlzt" column="jlzt" jdbcType="VARCHAR"/>
<result property="zblx" column="zblx" jdbcType="VARCHAR"/>
<result property="ssbm" column="ssbm" jdbcType="VARCHAR"/>
<result property="ssbmdm" column="ssbmdm" jdbcType="VARCHAR"/>
<result property="ssxgaj" column="ssxgaj" jdbcType="VARCHAR"/>
<result property="ssxgajdm" column="ssxgajdm" jdbcType="VARCHAR"/>
<result property="sssgaj" column="sssgaj" jdbcType="VARCHAR"/>
<result property="sssgajdm" column="sssgajdm" jdbcType="VARCHAR"/>
<result property="xtSjly" column="xt_sjly" jdbcType="VARCHAR"/>
<result property="xtSjzt" column="xt_sjzt" jdbcType="VARCHAR"/>
<result property="xtScbz" column="xt_scbz" jdbcType="VARCHAR"/>
<result property="xtCjip" column="xt_cjip" jdbcType="VARCHAR"/>
<result property="xtCjsj" column="xt_cjsj" jdbcType="VARCHAR"/>
<result property="xtCjrId" column="xt_cjr_id" jdbcType="VARCHAR"/>
<result property="xtCjr" column="xt_cjr" jdbcType="VARCHAR"/>
<result property="xtCjbmdm" column="xt_cjbmdm" jdbcType="VARCHAR"/>
<result property="xtCjbmmc" column="xt_cjbmmc" jdbcType="VARCHAR"/>
<result property="xtZhgxip" column="xt_zhgxip" jdbcType="VARCHAR"/>
<result property="xtZhgxsj" column="xt_zhgxsj" jdbcType="VARCHAR"/>
<result property="xtZhgxrid" column="xt_zhgxrid" jdbcType="VARCHAR"/>
<result property="xtZhgxr" column="xt_zhgxr" jdbcType="VARCHAR"/>
<result property="xtZhgxbmdm" column="xt_zhgxbmdm" jdbcType="VARCHAR"/>
<result property="xtZhgxbm" column="xt_zhgxbm" jdbcType="VARCHAR"/>
<result property="bz" column="bz" jdbcType="VARCHAR"/>
</resultMap>
<!--查询所有-->
<select id="queryAll" resultMap="TbQwJlMap">
select id,
ywid,
jllx,
jl_id,
jlxm,
sfzh,
xbdm,
nl,
jlzt,
zblx,
ssbm,
ssbmdm,
ssxgaj,
ssxgajdm,
sssgaj,
sssgajdm,
xt_sjly,
xt_sjzt,
xt_scbz,
xt_cjip,
xt_cjsj,
xt_cjr_id,
xt_cjr,
xt_cjbmdm,
xt_cjbmmc,
xt_zhgxip,
xt_zhgxsj,
xt_zhgxrid,
xt_zhgxr,
xt_zhgxbmdm,
xt_zhgxbm,
bz
from tb_qw_jl
</select>
<!--查询单个-->
<select id="queryById" resultMap="TbQwJlMap">
select id,
ywid,
jllx,
jl_id,
jlxm,
sfzh,
xbdm,
nl,
jlzt,
zblx,
ssbm,
ssbmdm,
ssxgaj,
ssxgajdm,
sssgaj,
sssgajdm,
xt_sjly,
xt_sjzt,
xt_scbz,
xt_cjip,
xt_cjsj,
xt_cjr_id,
xt_cjr,
xt_cjbmdm,
xt_cjbmmc,
xt_zhgxip,
xt_zhgxsj,
xt_zhgxrid,
xt_zhgxr,
xt_zhgxbmdm,
xt_zhgxbm,
bz
from tb_qw_jl
where id = #{id}
</select>
<!--查询指定行数据-->
<select id="queryAllByLimit" resultMap="TbQwJlMap">
select
id, ywid, jllx, jl_id, jlxm, sfzh, xbdm, nl, jlzt, zblx, ssbm, ssbmdm, ssxgaj, ssxgajdm, sssgaj, sssgajdm,
xt_sjly, xt_sjzt, xt_scbz, xt_cjip, xt_cjsj, xt_cjr_id, xt_cjr, xt_cjbmdm, xt_cjbmmc, xt_zhgxip, xt_zhgxsj,
xt_zhgxrid, xt_zhgxr, xt_zhgxbmdm, xt_zhgxbm, bz
from tb_qw_jl
<where>
<if test="id != null and id != ''">
and id = #{id}
</if>
<if test="ywid != null and ywid != ''">
and ywid = #{ywid}
</if>
<if test="jllx != null and jllx != ''">
and jllx = #{jllx}
</if>
<if test="jlId != null and jlId != ''">
and jl_id = #{jlId}
</if>
<if test="jlxm != null and jlxm != ''">
and jlxm = #{jlxm}
</if>
<if test="sfzh != null and sfzh != ''">
and sfzh = #{sfzh}
</if>
<if test="xbdm != null and xbdm != ''">
and xbdm = #{xbdm}
</if>
<if test="nl != null">
and nl = #{nl}
</if>
<if test="jlzt != null and jlzt != ''">
and jlzt = #{jlzt}
</if>
<if test="zblx != null and zblx != ''">
and zblx = #{zblx}
</if>
<if test="ssbm != null and ssbm != ''">
and ssbm = #{ssbm}
</if>
<if test="ssbmdm != null and ssbmdm != ''">
and ssbmdm = #{ssbmdm}
</if>
<if test="ssxgaj != null and ssxgaj != ''">
and ssxgaj = #{ssxgaj}
</if>
<if test="ssxgajdm != null and ssxgajdm != ''">
and ssxgajdm = #{ssxgajdm}
</if>
<if test="sssgaj != null and sssgaj != ''">
and sssgaj = #{sssgaj}
</if>
<if test="sssgajdm != null and sssgajdm != ''">
and sssgajdm = #{sssgajdm}
</if>
<if test="xtSjly != null and xtSjly != ''">
and xt_sjly = #{xtSjly}
</if>
<if test="xtSjzt != null and xtSjzt != ''">
and xt_sjzt = #{xtSjzt}
</if>
<if test="xtScbz != null and xtScbz != ''">
and xt_scbz = #{xtScbz}
</if>
<if test="xtCjip != null and xtCjip != ''">
and xt_cjip = #{xtCjip}
</if>
<if test="xtCjsj != null">
and xt_cjsj = #{xtCjsj}
</if>
<if test="xtCjrId != null and xtCjrId != ''">
and xt_cjr_id = #{xtCjrId}
</if>
<if test="xtCjr != null and xtCjr != ''">
and xt_cjr = #{xtCjr}
</if>
<if test="xtCjbmdm != null and xtCjbmdm != ''">
and xt_cjbmdm = #{xtCjbmdm}
</if>
<if test="xtCjbmmc != null and xtCjbmmc != ''">
and xt_cjbmmc = #{xtCjbmmc}
</if>
<if test="xtZhgxip != null and xtZhgxip != ''">
and xt_zhgxip = #{xtZhgxip}
</if>
<if test="xtZhgxsj != null">
and xt_zhgxsj = #{xtZhgxsj}
</if>
<if test="xtZhgxrid != null and xtZhgxrid != ''">
and xt_zhgxrid = #{xtZhgxrid}
</if>
<if test="xtZhgxr != null and xtZhgxr != ''">
and xt_zhgxr = #{xtZhgxr}
</if>
<if test="xtZhgxbmdm != null and xtZhgxbmdm != ''">
and xt_zhgxbmdm = #{xtZhgxbmdm}
</if>
<if test="xtZhgxbm != null and xtZhgxbm != ''">
and xt_zhgxbm = #{xtZhgxbm}
</if>
<if test="bz != null and bz != ''">
and bz = #{bz}
</if>
</where>
limit #{pageable.offset}, #{pageable.pageSize}
</select>
<!--统计总行数-->
<select id="count" resultType="java.lang.Long">
select count(1)
from tb_qw_jl
<where>
<if test="id != null and id != ''">
and id = #{id}
</if>
<if test="ywid != null and ywid != ''">
and ywid = #{ywid}
</if>
<if test="jllx != null and jllx != ''">
and jllx = #{jllx}
</if>
<if test="jlId != null and jlId != ''">
and jl_id = #{jlId}
</if>
<if test="jlxm != null and jlxm != ''">
and jlxm = #{jlxm}
</if>
<if test="sfzh != null and sfzh != ''">
and sfzh = #{sfzh}
</if>
<if test="xbdm != null and xbdm != ''">
and xbdm = #{xbdm}
</if>
<if test="nl != null">
and nl = #{nl}
</if>
<if test="jlzt != null and jlzt != ''">
and jlzt = #{jlzt}
</if>
<if test="zblx != null and zblx != ''">
and zblx = #{zblx}
</if>
<if test="ssbm != null and ssbm != ''">
and ssbm = #{ssbm}
</if>
<if test="ssbmdm != null and ssbmdm != ''">
and ssbmdm = #{ssbmdm}
</if>
<if test="ssxgaj != null and ssxgaj != ''">
and ssxgaj = #{ssxgaj}
</if>
<if test="ssxgajdm != null and ssxgajdm != ''">
and ssxgajdm = #{ssxgajdm}
</if>
<if test="sssgaj != null and sssgaj != ''">
and sssgaj = #{sssgaj}
</if>
<if test="sssgajdm != null and sssgajdm != ''">
and sssgajdm = #{sssgajdm}
</if>
<if test="xtSjly != null and xtSjly != ''">
and xt_sjly = #{xtSjly}
</if>
<if test="xtSjzt != null and xtSjzt != ''">
and xt_sjzt = #{xtSjzt}
</if>
<if test="xtScbz != null and xtScbz != ''">
and xt_scbz = #{xtScbz}
</if>
<if test="xtCjip != null and xtCjip != ''">
and xt_cjip = #{xtCjip}
</if>
<if test="xtCjsj != null">
and xt_cjsj = #{xtCjsj}
</if>
<if test="xtCjrId != null and xtCjrId != ''">
and xt_cjr_id = #{xtCjrId}
</if>
<if test="xtCjr != null and xtCjr != ''">
and xt_cjr = #{xtCjr}
</if>
<if test="xtCjbmdm != null and xtCjbmdm != ''">
and xt_cjbmdm = #{xtCjbmdm}
</if>
<if test="xtCjbmmc != null and xtCjbmmc != ''">
and xt_cjbmmc = #{xtCjbmmc}
</if>
<if test="xtZhgxip != null and xtZhgxip != ''">
and xt_zhgxip = #{xtZhgxip}
</if>
<if test="xtZhgxsj != null">
and xt_zhgxsj = #{xtZhgxsj}
</if>
<if test="xtZhgxrid != null and xtZhgxrid != ''">
and xt_zhgxrid = #{xtZhgxrid}
</if>
<if test="xtZhgxr != null and xtZhgxr != ''">
and xt_zhgxr = #{xtZhgxr}
</if>
<if test="xtZhgxbmdm != null and xtZhgxbmdm != ''">
and xt_zhgxbmdm = #{xtZhgxbmdm}
</if>
<if test="xtZhgxbm != null and xtZhgxbm != ''">
and xt_zhgxbm = #{xtZhgxbm}
</if>
<if test="bz != null and bz != ''">
and bz = #{bz}
</if>
</where>
</select>
<select id="countReportPolice" resultType="Map">
select count(*) bb, zblx
from tb_qw_jl
where zblx is not null
and xt_sjzt = '1'
and DATE_FORMAT(xt_cjsj, '%Y-%m-%d') = DATE_FORMAT(now(), '%Y-%m-%d')
${sql}
GROUP BY zblx
</select>
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
insert into tb_qw_jl(id, ywid, jllx, jl_id, jlxm, sfzh, xbdm, nl, jlzt, zblx, ssbm, ssbmdm, ssxgaj, ssxgajdm,
sssgaj, sssgajdm, xt_sjly, xt_sjzt, xt_scbz, xt_cjip, xt_cjsj, xt_cjr_id, xt_cjr, xt_cjbmdm, xt_cjbmmc,
xt_zhgxip, xt_zhgxsj, xt_zhgxrid, xt_zhgxr, xt_zhgxbmdm, xt_zhgxbm, bz)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.ywid}, #{entity.jllx}, #{entity.jlId}, #{entity.jlxm}, #{entity.sfzh}, #{entity.xbdm},
#{entity.nl}, #{entity.jlzt}, #{entity.zblx}, #{entity.ssbm}, #{entity.ssbmdm}, #{entity.ssxgaj},
#{entity.ssxgajdm}, #{entity.sssgaj}, #{entity.sssgajdm}, #{entity.xtSjly}, #{entity.xtSjzt},
#{entity.xtScbz}, #{entity.xtCjip}, #{entity.xtCjsj}, #{entity.xtCjrId}, #{entity.xtCjr},
#{entity.xtCjbmdm}, #{entity.xtCjbmmc}, #{entity.xtZhgxip}, #{entity.xtZhgxsj}, #{entity.xtZhgxrid},
#{entity.xtZhgxr}, #{entity.xtZhgxbmdm}, #{entity.xtZhgxbm}, #{entity.bz})
</foreach>
</insert>
<insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true">
insert into tb_qw_jl(ywid, jllx, jl_id, jlxm, sfzh, xbdm, nl, jlzt, zblx, ssbm, ssbmdm, ssxgaj, ssxgajdm,
sssgaj, sssgajdm, xt_sjly, xt_sjzt, xt_scbz, xt_cjip, xt_cjsj, xt_cjr_id, xt_cjr, xt_cjbmdm, xt_cjbmmc,
xt_zhgxip, xt_zhgxsj, xt_zhgxrid, xt_zhgxr, xt_zhgxbmdm, xt_zhgxbm, bz)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.ywid}, #{entity.jllx}, #{entity.jlId}, #{entity.jlxm}, #{entity.sfzh}, #{entity.xbdm},
#{entity.nl}, #{entity.jlzt}, #{entity.zblx}, #{entity.ssbm}, #{entity.ssbmdm}, #{entity.ssxgaj},
#{entity.ssxgajdm}, #{entity.sssgaj}, #{entity.sssgajdm}, #{entity.xtSjly}, #{entity.xtSjzt},
#{entity.xtScbz}, #{entity.xtCjip}, #{entity.xtCjsj}, #{entity.xtCjrId}, #{entity.xtCjr},
#{entity.xtCjbmdm}, #{entity.xtCjbmmc}, #{entity.xtZhgxip}, #{entity.xtZhgxsj}, #{entity.xtZhgxrid},
#{entity.xtZhgxr}, #{entity.xtZhgxbmdm}, #{entity.xtZhgxbm}, #{entity.bz})
</foreach>
on duplicate key update
ywid = values(ywid),
jllx = values(jllx),
jl_id = values(jl_id),
jlxm = values(jlxm),
sfzh = values(sfzh),
xbdm = values(xbdm),
nl = values(nl),
jlzt = values(jlzt),
zblx = values(zblx),
ssbm = values(ssbm),
ssbmdm = values(ssbmdm),
ssxgaj = values(ssxgaj),
ssxgajdm = values(ssxgajdm),
sssgaj = values(sssgaj),
sssgajdm = values(sssgajdm),
xt_sjly = values(xt_sjly),
xt_sjzt = values(xt_sjzt),
xt_scbz = values(xt_scbz),
xt_cjip = values(xt_cjip),
xt_cjsj = values(xt_cjsj),
xt_cjr_id = values(xt_cjr_id),
xt_cjr = values(xt_cjr),
xt_cjbmdm = values(xt_cjbmdm),
xt_cjbmmc = values(xt_cjbmmc),
xt_zhgxip = values(xt_zhgxip),
xt_zhgxsj = values(xt_zhgxsj),
xt_zhgxrid = values(xt_zhgxrid),
xt_zhgxr = values(xt_zhgxr),
xt_zhgxbmdm = values(xt_zhgxbmdm),
xt_zhgxbm = values(xt_zhgxbm),
bz = values(bz)
</insert>
<!--通过主键修改数据-->
<update id="update">
update tb_qw_jl
<set>
<if test="ywid != null and ywid != ''">
ywid = #{ywid},
</if>
<if test="jllx != null and jllx != ''">
jllx = #{jllx},
</if>
<if test="jlId != null and jlId != ''">
jl_id = #{jlId},
</if>
<if test="jlxm != null and jlxm != ''">
jlxm = #{jlxm},
</if>
<if test="sfzh != null and sfzh != ''">
sfzh = #{sfzh},
</if>
<if test="xbdm != null and xbdm != ''">
xbdm = #{xbdm},
</if>
<if test="nl != null">
nl = #{nl},
</if>
<if test="jlzt != null and jlzt != ''">
jlzt = #{jlzt},
</if>
<if test="zblx != null and zblx != ''">
zblx = #{zblx},
</if>
<if test="ssbm != null and ssbm != ''">
ssbm = #{ssbm},
</if>
<if test="ssbmdm != null and ssbmdm != ''">
ssbmdm = #{ssbmdm},
</if>
<if test="ssxgaj != null and ssxgaj != ''">
ssxgaj = #{ssxgaj},
</if>
<if test="ssxgajdm != null and ssxgajdm != ''">
ssxgajdm = #{ssxgajdm},
</if>
<if test="sssgaj != null and sssgaj != ''">
sssgaj = #{sssgaj},
</if>
<if test="sssgajdm != null and sssgajdm != ''">
sssgajdm = #{sssgajdm},
</if>
<if test="xtSjly != null and xtSjly != ''">
xt_sjly = #{xtSjly},
</if>
<if test="xtSjzt != null and xtSjzt != ''">
xt_sjzt = #{xtSjzt},
</if>
<if test="xtScbz != null and xtScbz != ''">
xt_scbz = #{xtScbz},
</if>
<if test="xtCjip != null and xtCjip != ''">
xt_cjip = #{xtCjip},
</if>
<if test="xtCjsj != null">
xt_cjsj = #{xtCjsj},
</if>
<if test="xtCjrId != null and xtCjrId != ''">
xt_cjr_id = #{xtCjrId},
</if>
<if test="xtCjr != null and xtCjr != ''">
xt_cjr = #{xtCjr},
</if>
<if test="xtCjbmdm != null and xtCjbmdm != ''">
xt_cjbmdm = #{xtCjbmdm},
</if>
<if test="xtCjbmmc != null and xtCjbmmc != ''">
xt_cjbmmc = #{xtCjbmmc},
</if>
<if test="xtZhgxip != null and xtZhgxip != ''">
xt_zhgxip = #{xtZhgxip},
</if>
<if test="xtZhgxsj != null">
xt_zhgxsj = #{xtZhgxsj},
</if>
<if test="xtZhgxrid != null and xtZhgxrid != ''">
xt_zhgxrid = #{xtZhgxrid},
</if>
<if test="xtZhgxr != null and xtZhgxr != ''">
xt_zhgxr = #{xtZhgxr},
</if>
<if test="xtZhgxbmdm != null and xtZhgxbmdm != ''">
xt_zhgxbmdm = #{xtZhgxbmdm},
</if>
<if test="xtZhgxbm != null and xtZhgxbm != ''">
xt_zhgxbm = #{xtZhgxbm},
</if>
<if test="bz != null and bz != ''">
bz = #{bz},
</if>
</set>
where id = #{id}
</update>
<!--通过主键删除-->
<update id="deleteById">
</update>
<update id="deleteByYwid">
delete
from tb_qw_jl
where ywid = #{ywid}
</update>
<select id="queryListByYwid" resultType="com.mosty.base.model.entity.qwzx.TbQwJl">
select a.* from tb_qw_jl a
where a.xt_scbz = '0'
and a.ywid in
<foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</select>
<!--查询今日报备警力数量-->
<select id="getCount" resultType="Integer" parameterType="Map">
select count(1) from tb_qw_jl a where a.xt_scbz = '0' and a.xt_sjzt = '1'
and a.zblx = '3'
<if test="dto.jllx != null and dto.jllx != ''">
and a.jllx = #{dto.jllx}
</if>
<if test="dto.jlxm != null and dto.jlxm != ''">
and a.jlxm like concat('%',#{dto.jlxm},'%')
</if>
and a.ywid in (
select id from tb_qw_xfbb b where b.xt_scbz = '0' and b.xt_sjzt = '1' and b.bbzt = '0'
<if test="dto.xfbmdm != null and dto.xfbmdm != ''">
and b.xfbmdm like concat(#{dto.xfbmdm},'%')
</if>
)
</select>
<!--查询今日报备警力集合-->
<select id="getList" resultMap="TbQwJlMap" parameterType="Map">
select * from tb_qw_jl a where a.xt_scbz = '0' and a.xt_sjzt = '1'
and a.zblx = '3'
<if test="dto.jllx != null and dto.jllx != ''">
and a.jllx = #{dto.jllx}
</if>
<if test="dto.jlxm != null and dto.jlxm != ''">
and a.jlxm like concat('%',#{dto.jlxm},'%')
</if>
and a.ywid in (
select id from tb_qw_xfbb b where b.xt_scbz = '0' and b.xt_sjzt = '1' and b.bbzt = '0'
<if test="dto.xfbmdm != null and dto.xfbmdm != ''">
and b.xfbmdm like concat(#{dto.xfbmdm},'%')
</if>
<!-- ${useSql}-->
)
limit #{pageIndex},#{pageSize}
</select>
</mapper>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mosty.qwzx.mapper.TbQwJyqxMapper">
<!--根据ID删除警用器械明细-->
<update id="deleteJyqx">
update tb_qw_jyqx set xt_scbz = '1' where id in
<foreach collection="list" item="item" separator="," open="(" close=")">
#{item}
</foreach>
</update>
<!--根据业务ID删除明细-->
<delete id="deleteByYwid">
delete from tb_qw_jyqx where ywid = #{ywid}
</delete>
<select id="queryListByYwid" resultType="com.mosty.base.model.entity.qwzx.TbQwJyqx">
select a.* from tb_qw_jyqx a
where a.xt_scbz = '0'
and a.ywid in
<foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
#{item}
</foreach>
</select>
</mapper>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mosty.qwzx.mapper.TbQwQwbcMapper">
<delete id="deleteQwbc">
delete from tb_qw_qwbc where id in
<foreach collection="list" item="item" separator="," open="(" close=")">
#{item}
</foreach>
</delete>
</mapper>

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