Compare commits
78 Commits
develop
...
6d6ce6025b
Author | SHA1 | Date | |
---|---|---|---|
6d6ce6025b | |||
f24a47f27d | |||
a7ff72c4b7 | |||
f380cbd812 | |||
c25f8a2401 | |||
178ae16c73 | |||
3afde75e85 | |||
7154edde7c | |||
f22f6b268a | |||
1c44e56b56 | |||
3f93afede3 | |||
8dd5f27d47 | |||
557452aedc | |||
46cfdc28a6 | |||
e450e280d4 | |||
8248fe942a | |||
a97d222486 | |||
f354d141f5 | |||
8902b2761b | |||
81d52412db | |||
9afe66b769 | |||
c2bc64fd36 | |||
e7e8ec49e2 | |||
05e131ecbe | |||
55cf233192 | |||
5822212970 | |||
e685197674 | |||
a81bdc330c | |||
8315b1f9b2 | |||
007953d129 | |||
f2802722c1 | |||
655af8eec1 | |||
5c0050fe13 | |||
c28c4c7789 | |||
608b1d1b41 | |||
12674fa58f | |||
db0ac8c960 | |||
946cf852d2 | |||
f4769057db | |||
33195638ca | |||
44acd8856a | |||
2d9178e4ae | |||
e142a2a624 | |||
a5fa62c5d0 | |||
8e5dc6e617 | |||
365815735e | |||
5f204c2b92 | |||
9af9fa474e | |||
9d59c95768 | |||
76c8573527 | |||
567c08269d | |||
8e72f3bccd | |||
9b57dbb772 | |||
555611ca96 | |||
1763154fa2 | |||
ddb57c8961 | |||
c6e2d0ba06 | |||
e676e98a6e | |||
72b935c4b3 | |||
e5e499c1ed | |||
02b2fc9ef2 | |||
1787838b3a | |||
6cda734793 | |||
841741523a | |||
387561d108 | |||
4828427d0d | |||
f75bdf6d39 | |||
b94939fbd6 | |||
baee2ded2e | |||
44c9511dbe | |||
9fa480103b | |||
d0d143d916 | |||
30b0304309 | |||
b952cf7b99 | |||
e2486d497f | |||
1cdf6502e7 | |||
cef7c019b0 | |||
17406c73ad |
3
.gitignore
vendored
3
.gitignore
vendored
@@ -78,6 +78,7 @@ build/Release
|
||||
|
||||
# Dependency directories
|
||||
node_modules/
|
||||
node_modules_bak/
|
||||
jspm_packages/
|
||||
|
||||
# Snowpack dependency directory (https://snowpack.dev/)
|
||||
@@ -722,3 +723,5 @@ local.properties
|
||||
# Typically, this file would be tracked if it contains build/dependency configurations:
|
||||
#.project
|
||||
|
||||
target
|
||||
target/*
|
||||
|
@@ -1,25 +0,0 @@
|
||||
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:util="http://www.springframework.org/schema/util" xmlns:jpa="http://www.springframework.org/schema/data/jpa" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
|
||||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
|
||||
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
|
||||
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
|
||||
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
|
||||
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
|
||||
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
|
||||
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
|
||||
|
||||
<context:component-scan base-package="com.cpic.xim" />
|
||||
<mvc:annotation-driven />
|
||||
<mvc:default-servlet-handler />
|
||||
|
||||
<!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
|
||||
<property name="prefix" value="/WEB-INF/jsp/" />
|
||||
<property name="suffix" value=".jsp" />
|
||||
</bean> -->
|
||||
|
||||
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
|
||||
<property name="defaultEncoding" value="UTF-8" />
|
||||
<property name="maxUploadSize" value="-1" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
@@ -1,25 +0,0 @@
|
||||
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:util="http://www.springframework.org/schema/util" xmlns:jpa="http://www.springframework.org/schema/data/jpa" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
|
||||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
|
||||
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
|
||||
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
|
||||
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
|
||||
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
|
||||
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
|
||||
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
|
||||
|
||||
<context:component-scan base-package="com.cpic.xim" />
|
||||
<mvc:annotation-driven />
|
||||
<mvc:default-servlet-handler />
|
||||
|
||||
<!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
|
||||
<property name="prefix" value="/WEB-INF/jsp/" />
|
||||
<property name="suffix" value=".jsp" />
|
||||
</bean> -->
|
||||
|
||||
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
|
||||
<property name="defaultEncoding" value="UTF-8" />
|
||||
<property name="maxUploadSize" value="-1" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
@@ -1,11 +0,0 @@
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\web\filters\token\TokenFilter.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckResult.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckRequest.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckController.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\web\filters\cros\CrosFilter.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\myutils\account\CpicXIMStaffInfo.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\myutils\account\LdapAccountCheck.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\myutils\config\json\AppConfig.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\web\listener\ContextLoaderListener.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\myutils\config\json\DatabaseConfig.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\main\java\com\cpic\xim\myutils\config\json\ConfigLoader.java
|
@@ -1,2 +0,0 @@
|
||||
com\cpic\xim\myutils\account\CpicXIMStaffInfoTest.class
|
||||
com\cpic\xim\myutils\account\LdapAccountCheckTest.class
|
@@ -1,2 +0,0 @@
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\test\java\com\cpic\xim\myutils\account\CpicXIMStaffInfoTest.java
|
||||
F:\练手代码\vue-learning\企业级管理系统\java\AdminSys\src\test\java\com\cpic\xim\myutils\account\LdapAccountCheckTest.java
|
@@ -2,9 +2,9 @@
|
||||
* @Author: Kane
|
||||
* @Date: 2022-12-15 10:44:20
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2022-12-15 20:53:14
|
||||
* @LastEditTime: 2023-01-29 10:40:39
|
||||
* @FilePath: \AdminSys\src\main\java\com\cpic\xim\web\filters\cros\CrosFilter.java
|
||||
* @Description:
|
||||
* @Description: 过滤器,用于对CROS访问进行响应。允许任何来源的访问。
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
37
code/java/后端-用户验证/src/main/webapp/WEB-INF/classes/spring.xml
Normal file
37
code/java/后端-用户验证/src/main/webapp/WEB-INF/classes/spring.xml
Normal file
@@ -0,0 +1,37 @@
|
||||
<beans xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:context="http://www.springframework.org/schema/context"
|
||||
xmlns:jdbc="http://www.springframework.org/schema/jdbc"
|
||||
xmlns:jee="http://www.springframework.org/schema/jee"
|
||||
xmlns:tx="http://www.springframework.org/schema/tx"
|
||||
xmlns:aop="http://www.springframework.org/schema/aop"
|
||||
xmlns:mvc="http://www.springframework.org/schema/mvc"
|
||||
xmlns:util="http://www.springframework.org/schema/util"
|
||||
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
|
||||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
|
||||
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
|
||||
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
|
||||
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
|
||||
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
|
||||
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
|
||||
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
|
||||
|
||||
<context:component-scan base-package="com.cpic.xim" />
|
||||
<mvc:annotation-driven />
|
||||
<mvc:default-servlet-handler />
|
||||
|
||||
<!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
|
||||
<property
|
||||
name="prefix" value="/WEB-INF/jsp/" />
|
||||
<property name="suffix" value=".jsp" />
|
||||
</bean> -->
|
||||
|
||||
<bean id="multipartResolver"
|
||||
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
|
||||
<property name="defaultEncoding" value="UTF-8" />
|
||||
<property name="maxUploadSize" value="-1" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
@@ -0,0 +1,37 @@
|
||||
<beans xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:context="http://www.springframework.org/schema/context"
|
||||
xmlns:jdbc="http://www.springframework.org/schema/jdbc"
|
||||
xmlns:jee="http://www.springframework.org/schema/jee"
|
||||
xmlns:tx="http://www.springframework.org/schema/tx"
|
||||
xmlns:aop="http://www.springframework.org/schema/aop"
|
||||
xmlns:mvc="http://www.springframework.org/schema/mvc"
|
||||
xmlns:util="http://www.springframework.org/schema/util"
|
||||
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
|
||||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
|
||||
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
|
||||
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
|
||||
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
|
||||
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
|
||||
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
|
||||
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
|
||||
|
||||
<context:component-scan base-package="com.cpic.xim" />
|
||||
<mvc:annotation-driven />
|
||||
<mvc:default-servlet-handler />
|
||||
|
||||
<!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
|
||||
<property
|
||||
name="prefix" value="/WEB-INF/jsp/" />
|
||||
<property name="suffix" value=".jsp" />
|
||||
</bean> -->
|
||||
|
||||
<bean id="multipartResolver"
|
||||
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
|
||||
<property name="defaultEncoding" value="UTF-8" />
|
||||
<property name="maxUploadSize" value="-1" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
@@ -17,16 +17,12 @@
|
||||
<servlet-name>springmvc</servlet-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</servlet-mapping>
|
||||
<servlet-mapping>
|
||||
<servlet-name>springmvc</servlet-name>
|
||||
<url-pattern>/account/p13_account_check</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<filter>
|
||||
<filter-name>cros-filter</filter-name>
|
||||
<filter-class>com.cpic.xim.web.filters.cros.CrosFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>cros-filter</filter-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<!-- 用于验证Token的Filter -->
|
||||
<filter>
|
||||
<filter-name>token-filter</filter-name>
|
||||
<filter-class>com.cpic.xim.web.filters.token.TokenFilter</filter-class>
|
||||
@@ -36,6 +32,18 @@
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
|
||||
<!-- 用于实现跨域访问的Filter -->
|
||||
<filter>
|
||||
<filter-name>cros-filter</filter-name>
|
||||
<filter-class>com.cpic.xim.web.filters.cros.CrosFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>cros-filter</filter-name>
|
||||
<url-pattern>*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
|
||||
<!-- 配置文件路径参数 -->
|
||||
<context-param>
|
||||
<param-name>config_file_location</param-name>
|
@@ -1,11 +1,13 @@
|
||||
com\cpic\xim\myutils\config\json\ConfigLoader.class
|
||||
com\cpic\xim\web\controllers\account\P13AccountCheckResult.class
|
||||
com\cpic\xim\myutils\config\json\AppConfig.class
|
||||
com\cpic\xim\web\filters\cros\CrosFilter.class
|
||||
com\cpic\xim\web\listener\ContextLoaderListener.class
|
||||
com\cpic\xim\myutils\config\json\DatabaseConfig.class
|
||||
com\cpic\xim\web\filters\token\TokenFilter.class
|
||||
com\cpic\xim\myutils\account\CpicXIMStaffInfo.class
|
||||
com\cpic\xim\myutils\config\json\ConfigLoader.class
|
||||
com\cpic\xim\web\controllers\account\P13AccountCheckResult.class
|
||||
com\cpic\xim\web\controllers\FileUpload\FileUploadResult.class
|
||||
com\cpic\xim\myutils\config\json\AppConfig.class
|
||||
com\cpic\xim\myutils\config\json\DatabaseConfig.class
|
||||
com\cpic\xim\web\controllers\FileUpload\FileUpload.class
|
||||
com\cpic\xim\web\controllers\account\P13AccountCheckController.class
|
||||
com\cpic\xim\web\controllers\account\P13AccountCheckRequest.class
|
||||
com\cpic\xim\myutils\account\CpicXIMStaffInfo.class
|
||||
com\cpic\xim\myutils\account\LdapAccountCheck.class
|
@@ -0,0 +1,13 @@
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckController.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\controllers\FileUpload\FileUpload.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\myutils\account\LdapAccountCheck.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckRequest.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\filters\token\TokenFilter.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\myutils\account\CpicXIMStaffInfo.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\myutils\config\json\ConfigLoader.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\controllers\account\P13AccountCheckResult.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\controllers\FileUpload\FileUploadResult.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\myutils\config\json\DatabaseConfig.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\myutils\config\json\AppConfig.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\listener\ContextLoaderListener.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-用户验证\src\main\java\com\cpic\xim\web\filters\cros\CrosFilter.java
|
4
code/java/后端-需求/.vscode/settings.json
vendored
Normal file
4
code/java/后端-需求/.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"java.configuration.updateBuildConfiguration": "automatic",
|
||||
"java.compile.nullAnalysis.mode": "automatic"
|
||||
}
|
116
code/java/后端-需求/pom.xml
Normal file
116
code/java/后端-需求/pom.xml
Normal file
@@ -0,0 +1,116 @@
|
||||
<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/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>com.cpic.xim</groupId>
|
||||
<artifactId>requirement</artifactId>
|
||||
<packaging>war</packaging>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<name>requirement Maven Webapp</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>3.8.1</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-webmvc</artifactId>
|
||||
<version>5.3.24</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.oracle</groupId>
|
||||
<artifactId>ojdbc8</artifactId>
|
||||
<version>19.3.0.0.0</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<version>4.0.1</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
<version>2.0.1.Final</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.hibernate</groupId>
|
||||
<artifactId>hibernate-validator</artifactId>
|
||||
<version>7.0.1.Final</version>
|
||||
</dependency>
|
||||
<!-- jackson -->
|
||||
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-databind</artifactId>
|
||||
<version>2.13.4</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-core</artifactId>
|
||||
<version>2.13.4</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.core</groupId>
|
||||
<artifactId>jackson-annotations</artifactId>
|
||||
<version>2.13.4</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
|
||||
<dependency>
|
||||
<groupId>commons-io</groupId>
|
||||
<artifactId>commons-io</artifactId>
|
||||
<version>2.11.0</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload -->
|
||||
<dependency>
|
||||
<groupId>commons-fileupload</groupId>
|
||||
<artifactId>commons-fileupload</artifactId>
|
||||
<version>1.4</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api -->
|
||||
<dependency>
|
||||
<groupId>javax.annotation</groupId>
|
||||
<artifactId>javax.annotation-api</artifactId>
|
||||
<version>1.3.2</version>
|
||||
</dependency>
|
||||
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
<version>8.0.32</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<build>
|
||||
<finalName>requirement</finalName>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-war-plugin</artifactId>
|
||||
<version>3.2.2</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<version>3.0.0-M6</version>
|
||||
<configuration>
|
||||
<skipTests>true</skipTests>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<java.version>1.8</java.version>
|
||||
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
|
||||
<maven.compiler.source>1.8</maven.compiler.source>
|
||||
<maven.compiler.target>1.8</maven.compiler.target>
|
||||
</properties>
|
||||
</project>
|
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-04 10:52:31
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-04 13:38:58
|
||||
* @FilePath: /后端-需求/src/main/java/com/cpic/xim/data/RequirementStatus.java
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.data;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
public final class RequirementStatus
|
||||
{
|
||||
public RequirementStatus()
|
||||
{}
|
||||
|
||||
public int getStatus_code()
|
||||
{
|
||||
return status_code;
|
||||
}
|
||||
|
||||
public void setStatus_code( int status_code )
|
||||
{
|
||||
this.status_code = status_code;
|
||||
}
|
||||
|
||||
public String getStatus_name()
|
||||
{
|
||||
return status_name;
|
||||
}
|
||||
|
||||
public void setStatus_name( String status_name )
|
||||
{
|
||||
this.status_name = status_name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode()
|
||||
{
|
||||
final int prime = 31;
|
||||
int result = 1;
|
||||
result = prime * result + status_code;
|
||||
result = prime * result + ((status_name == null) ? 0 : status_name.hashCode());
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals( Object obj )
|
||||
{
|
||||
if ( this == obj )
|
||||
return true;
|
||||
if ( obj == null )
|
||||
return false;
|
||||
if ( getClass() != obj.getClass() )
|
||||
return false;
|
||||
RequirementStatus other = (RequirementStatus) obj;
|
||||
if ( status_code != other.status_code )
|
||||
return false;
|
||||
if ( status_name == null )
|
||||
{
|
||||
if ( other.status_name != null )
|
||||
return false;
|
||||
} else if ( !status_name.equals( other.status_name ) )
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "RequirementStatus [status_code=" + status_code + ", status_name=" + status_name
|
||||
+ "]";
|
||||
}
|
||||
|
||||
@JsonProperty( "status_code" )
|
||||
private int status_code;
|
||||
|
||||
@JsonProperty( "status_name" )
|
||||
private String status_name;
|
||||
}
|
@@ -0,0 +1,99 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-04 11:38:32
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-17 10:52:40
|
||||
* @FilePath: /后端-需求/src/main/java/com/cpic/xim/utils/db/RequirementDbOperation.java
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.utils.db;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
import java.util.Vector;
|
||||
import com.cpic.xim.data.RequirementStatus;
|
||||
|
||||
public final class RequirementDbOperation
|
||||
{
|
||||
private static final String MYSQL_JDBC_CONNECT = "jdbc:mysql://10.39.0.85:3306";
|
||||
private static final String MYSQL_CLASS_DRIVER = "com.mysql.cj.jdbc.Driver";
|
||||
|
||||
/*****************************************************
|
||||
* 查询需求状态。
|
||||
* @return Vector<RequirementStatus> 需求状态的集合
|
||||
*****************************************************/
|
||||
public static Vector<RequirementStatus> queryRequirementStatus()
|
||||
throws ClassNotFoundException, SQLException
|
||||
{
|
||||
Vector<RequirementStatus> vStatus = new Vector<RequirementStatus>();
|
||||
|
||||
Class.forName( MYSQL_CLASS_DRIVER );
|
||||
|
||||
Connection conn = null;
|
||||
Statement statement = null;
|
||||
ResultSet results = null;
|
||||
String querSQL = "select * from requirement.requirement_status";
|
||||
|
||||
try
|
||||
{
|
||||
conn = DriverManager.getConnection( MYSQL_JDBC_CONNECT, "cpicxim", "Cpic#1234" );
|
||||
statement = conn.createStatement();
|
||||
results = statement.executeQuery( querSQL );
|
||||
|
||||
while ( results.next())
|
||||
{
|
||||
RequirementStatus status = new RequirementStatus();
|
||||
|
||||
status.setStatus_code( results.getInt( "status_code" ) );
|
||||
status.setStatus_name( results.getString( "status_name" ) );
|
||||
|
||||
vStatus.add( status );
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
if ( results != null )
|
||||
{
|
||||
try
|
||||
{
|
||||
results.close();
|
||||
}
|
||||
catch ( SQLException except )
|
||||
{
|
||||
except.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
if ( statement != null )
|
||||
{
|
||||
try
|
||||
{
|
||||
statement.close();
|
||||
}
|
||||
catch ( SQLException except )
|
||||
{
|
||||
except.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
if ( conn != null )
|
||||
{
|
||||
try
|
||||
{
|
||||
conn.close();
|
||||
}
|
||||
catch ( SQLException except )
|
||||
{
|
||||
except.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return vStatus;
|
||||
}
|
||||
}
|
@@ -0,0 +1,66 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-29 13:59:37
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-04 14:40:07
|
||||
* @FilePath: /后端-需求/src/main/java/com/cpic/xim/web/controllers/requirements/RequirementController.java
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.web.controllers.requirements;
|
||||
|
||||
import java.sql.SQLException;
|
||||
import java.util.Vector;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import com.cpic.xim.data.RequirementStatus;
|
||||
import com.cpic.xim.utils.db.RequirementDbOperation;
|
||||
import com.cpic.xim.web.controllers.requirements.param.RequirementQueryParam;
|
||||
import com.cpic.xim.web.controllers.requirements.response.QueryRequirementStatusResult;
|
||||
import com.cpic.xim.web.controllers.requirements.response.RequirementQueryResult;
|
||||
|
||||
@SuppressWarnings( "unused" )
|
||||
@Controller
|
||||
public class RequirementController
|
||||
{
|
||||
@RequestMapping( "/query_requirements.do" )
|
||||
@ResponseBody
|
||||
public RequirementQueryResult queryRequirements( @RequestBody RequirementQueryParam param )
|
||||
{
|
||||
RequirementQueryResult result = new RequirementQueryResult();
|
||||
|
||||
result.setSuccess( true );
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
@RequestMapping( "/query_requirement_status.do" )
|
||||
@ResponseBody
|
||||
public QueryRequirementStatusResult queryRequirementStatus()
|
||||
{
|
||||
QueryRequirementStatusResult result = new QueryRequirementStatusResult();
|
||||
|
||||
try
|
||||
{
|
||||
Vector<RequirementStatus> status = RequirementDbOperation.queryRequirementStatus();
|
||||
|
||||
result.setSuccess( true );
|
||||
result.setRequirementStatus( status );
|
||||
}
|
||||
catch ( ClassNotFoundException exception )
|
||||
{
|
||||
result.setSuccess( false );
|
||||
result.setMessage( exception.getMessage() );
|
||||
}
|
||||
catch ( SQLException exception )
|
||||
{
|
||||
result.setSuccess( false );
|
||||
result.setMessage( exception.getMessage() );
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
@@ -0,0 +1,97 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-29 15:45:00
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-01-29 16:04:48
|
||||
* @FilePath: \requirement\src\main\java\com\cpic\xim\web\controllers\requirements\param\RequirementQueryParam.java
|
||||
* @Description: 查询需求用的参数对象,从JSON转换而来。
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.web.controllers.requirements.param;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
public final class RequirementQueryParam
|
||||
{
|
||||
public RequirementQueryParam()
|
||||
{}
|
||||
|
||||
public String getTitle()
|
||||
{
|
||||
return title;
|
||||
}
|
||||
|
||||
public void setTitle( String title )
|
||||
{
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
public String getSerial_no()
|
||||
{
|
||||
return serial_no;
|
||||
}
|
||||
|
||||
public void setSerial_no( String serial_no )
|
||||
{
|
||||
this.serial_no = serial_no;
|
||||
}
|
||||
|
||||
public String getRequest_people()
|
||||
{
|
||||
return request_people;
|
||||
}
|
||||
|
||||
public void setRequest_people( String request_people )
|
||||
{
|
||||
this.request_people = request_people;
|
||||
}
|
||||
|
||||
public String getStatus()
|
||||
{
|
||||
return status;
|
||||
}
|
||||
|
||||
public void setStatus( String status )
|
||||
{
|
||||
this.status = status;
|
||||
}
|
||||
|
||||
public String getCommit_start_date()
|
||||
{
|
||||
return commit_start_date;
|
||||
}
|
||||
|
||||
public void setCommit_start_date( String commit_start_date )
|
||||
{
|
||||
this.commit_start_date = commit_start_date;
|
||||
}
|
||||
|
||||
public String getCommit_end_date()
|
||||
{
|
||||
return commit_end_date;
|
||||
}
|
||||
|
||||
public void setCommit_end_date( String commit_end_date )
|
||||
{
|
||||
this.commit_end_date = commit_end_date;
|
||||
}
|
||||
|
||||
@JsonProperty( "title")
|
||||
private String title;
|
||||
|
||||
@JsonProperty( "serial_no")
|
||||
private String serial_no;
|
||||
|
||||
@JsonProperty( "request_people")
|
||||
private String request_people;
|
||||
|
||||
@JsonProperty( "status")
|
||||
private String status;
|
||||
|
||||
@JsonProperty( "commit_start_date")
|
||||
private String commit_start_date;
|
||||
|
||||
@JsonProperty( "commit_end_date")
|
||||
private String commit_end_date;
|
||||
}
|
@@ -0,0 +1,73 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-04 13:24:14
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-04 13:38:03
|
||||
* @FilePath: /后端-需求/src/main/java/com/cpic/xim/web/controllers/requirements/response/QueryRequirementStatusResult.java
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.web.controllers.requirements.response;
|
||||
|
||||
import com.cpic.xim.data.RequirementStatus;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import java.util.Vector;
|
||||
|
||||
public class QueryRequirementStatusResult
|
||||
{
|
||||
public QueryRequirementStatusResult()
|
||||
{}
|
||||
|
||||
public String getMessage()
|
||||
{
|
||||
return message;
|
||||
}
|
||||
|
||||
public void setMessage( String message )
|
||||
{
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
public boolean isSuccess()
|
||||
{
|
||||
return success;
|
||||
}
|
||||
|
||||
public void setSuccess( boolean success )
|
||||
{
|
||||
this.success = success;
|
||||
}
|
||||
|
||||
public int getReturnCode()
|
||||
{
|
||||
return returnCode;
|
||||
}
|
||||
|
||||
public void setReturnCode( int returnCode )
|
||||
{
|
||||
this.returnCode = returnCode;
|
||||
}
|
||||
|
||||
public Vector<RequirementStatus> getRequirementStatus()
|
||||
{
|
||||
return requirementStatus;
|
||||
}
|
||||
|
||||
public void setRequirementStatus( Vector<RequirementStatus> requirement_status )
|
||||
{
|
||||
this.requirementStatus = requirement_status;
|
||||
}
|
||||
|
||||
@JsonProperty( "message" )
|
||||
private String message;
|
||||
|
||||
@JsonProperty( "success" )
|
||||
private boolean success;
|
||||
|
||||
@JsonProperty( "return_code" )
|
||||
private int returnCode;
|
||||
|
||||
@JsonProperty( "requirement_status" )
|
||||
private Vector<RequirementStatus> requirementStatus;
|
||||
}
|
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-29 16:20:29
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-01-29 17:09:59
|
||||
* @FilePath: \requirement\src\main\java\com\cpic\xim\web\controllers\requirements\response\RequirementQueryResult.java
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.web.controllers.requirements.response;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
public final class RequirementQueryResult
|
||||
{
|
||||
public RequirementQueryResult()
|
||||
{}
|
||||
|
||||
public boolean getSuccess()
|
||||
{
|
||||
return success;
|
||||
}
|
||||
|
||||
public void setSuccess( boolean success )
|
||||
{
|
||||
this.success = success;
|
||||
}
|
||||
|
||||
public String getMessage()
|
||||
{
|
||||
return message;
|
||||
}
|
||||
|
||||
public void setMessage( String message )
|
||||
{
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
@JsonProperty( "success" )
|
||||
private boolean success;
|
||||
|
||||
@JsonProperty( "message" )
|
||||
private String message;
|
||||
}
|
@@ -0,0 +1,43 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-29 10:39:41
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-04 17:12:05
|
||||
* @FilePath: /后端-需求/src/main/java/com/cpic/xim/web/filters/cros/CrosFilter.java
|
||||
* @Description: 过滤器,用于对CROS访问进行响应。允许任何来源的访问。
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.web.filters.cros;
|
||||
|
||||
import java.io.IOException;
|
||||
import javax.servlet.Filter;
|
||||
import javax.servlet.FilterChain;
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
public class CrosFilter implements Filter
|
||||
{
|
||||
@Override
|
||||
public void doFilter( ServletRequest req, ServletResponse resp, FilterChain chain )
|
||||
throws ServletException, IOException
|
||||
{
|
||||
HttpServletRequest request = (HttpServletRequest) req;
|
||||
HttpServletResponse response = (HttpServletResponse) resp;
|
||||
String originHeader = request.getHeader( "Origin" );
|
||||
|
||||
response.setHeader( "Access-Control-Allow-Origin", originHeader );
|
||||
response.setHeader( "Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE" );
|
||||
response.setHeader( "Access-Control-Max-Age", "0" );
|
||||
response.setHeader( "Access-Control-Allow-Headers",
|
||||
"Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With,userId,token,username" );
|
||||
response.setHeader( "Access-Control-Allow-Credentials", "true" );
|
||||
response.setHeader( "XDomainRequestAllowed", "1" );
|
||||
response.setHeader( "XDomainRequestAllowed", "1" );
|
||||
|
||||
chain.doFilter( request, response );
|
||||
}
|
||||
}
|
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-29 10:50:49
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-04 18:05:18
|
||||
* @FilePath: /后端-需求/src/main/java/com/cpic/xim/web/filters/token/TokenFilter.java
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
package com.cpic.xim.web.filters.token;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Enumeration;
|
||||
import javax.servlet.Filter;
|
||||
import javax.servlet.FilterChain;
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.ServletRequest;
|
||||
import javax.servlet.ServletResponse;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
@SuppressWarnings( "unused" )
|
||||
public class TokenFilter implements Filter
|
||||
{
|
||||
private static final String FILTE_METHODS = "POST,GET";
|
||||
|
||||
@Override
|
||||
public void doFilter( ServletRequest req, ServletResponse resp, FilterChain chain )
|
||||
throws ServletException, IOException
|
||||
{
|
||||
HttpServletRequest request = (HttpServletRequest) req;
|
||||
HttpServletResponse response = (HttpServletResponse) resp;
|
||||
|
||||
String method = request.getMethod().toUpperCase();
|
||||
|
||||
// 只处理POST和GET
|
||||
if ( FILTE_METHODS.indexOf( method ) != -1 )
|
||||
{
|
||||
// 检查token
|
||||
String token = request.getHeader( "token" );
|
||||
}
|
||||
|
||||
chain.doFilter( request, response );
|
||||
}
|
||||
}
|
37
code/java/后端-需求/src/main/webapp/WEB-INF/classes/spring.xml
Normal file
37
code/java/后端-需求/src/main/webapp/WEB-INF/classes/spring.xml
Normal file
@@ -0,0 +1,37 @@
|
||||
<beans xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:context="http://www.springframework.org/schema/context"
|
||||
xmlns:jdbc="http://www.springframework.org/schema/jdbc"
|
||||
xmlns:jee="http://www.springframework.org/schema/jee"
|
||||
xmlns:tx="http://www.springframework.org/schema/tx"
|
||||
xmlns:aop="http://www.springframework.org/schema/aop"
|
||||
xmlns:mvc="http://www.springframework.org/schema/mvc"
|
||||
xmlns:util="http://www.springframework.org/schema/util"
|
||||
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
|
||||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
|
||||
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
|
||||
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
|
||||
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
|
||||
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
|
||||
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
|
||||
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
|
||||
|
||||
<context:component-scan base-package="com.cpic.xim" />
|
||||
<mvc:annotation-driven />
|
||||
<mvc:default-servlet-handler />
|
||||
|
||||
<!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
|
||||
<property
|
||||
name="prefix" value="/WEB-INF/jsp/" />
|
||||
<property name="suffix" value=".jsp" />
|
||||
</bean> -->
|
||||
|
||||
<bean id="multipartResolver"
|
||||
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
|
||||
<property name="defaultEncoding" value="UTF-8" />
|
||||
<property name="maxUploadSize" value="-1" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
39
code/java/后端-需求/src/main/webapp/WEB-INF/web.xml
Normal file
39
code/java/后端-需求/src/main/webapp/WEB-INF/web.xml
Normal file
@@ -0,0 +1,39 @@
|
||||
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
|
||||
version="3.1">
|
||||
|
||||
<display-name>Archetype Created Web Application</display-name>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>springmvc</servlet-name>
|
||||
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>contextConfigLocation</param-name>
|
||||
<param-value>classpath:spring.xml</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>springmvc</servlet-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<filter>
|
||||
<filter-name>CrosFilter</filter-name>
|
||||
<filter-class>com.cpic.xim.web.filters.cros.CrosFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>CrosFilter</filter-name>
|
||||
<url-pattern>*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter>
|
||||
<filter-name>TokenFilter</filter-name>
|
||||
<filter-class>com.cpic.xim.web.filters.token.TokenFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>TokenFilter</filter-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</filter-mapping>
|
||||
</web-app>
|
5
code/java/后端-需求/src/main/webapp/index.jsp
Normal file
5
code/java/后端-需求/src/main/webapp/index.jsp
Normal file
@@ -0,0 +1,5 @@
|
||||
<html>
|
||||
<body>
|
||||
<h2>Hello World!</h2>
|
||||
</body>
|
||||
</html>
|
4
code/java/后端-需求/target/maven-archiver/pom.properties
Normal file
4
code/java/后端-需求/target/maven-archiver/pom.properties
Normal file
@@ -0,0 +1,4 @@
|
||||
#Created by Apache Maven 3.8.6
|
||||
artifactId=requirement
|
||||
groupId=com.cpic.xim
|
||||
version=1.0-SNAPSHOT
|
@@ -0,0 +1,8 @@
|
||||
com\cpic\xim\data\RequirementStatus.class
|
||||
com\cpic\xim\web\controllers\requirements\param\RequirementQueryParam.class
|
||||
com\cpic\xim\web\filters\cros\CrosFilter.class
|
||||
com\cpic\xim\utils\db\RequirementDbOperation.class
|
||||
com\cpic\xim\web\controllers\requirements\response\QueryRequirementStatusResult.class
|
||||
com\cpic\xim\web\controllers\requirements\response\RequirementQueryResult.class
|
||||
com\cpic\xim\web\filters\token\TokenFilter.class
|
||||
com\cpic\xim\web\controllers\requirements\RequirementController.class
|
@@ -0,0 +1,8 @@
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\data\RequirementStatus.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\web\controllers\requirements\response\RequirementQueryResult.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\web\controllers\requirements\param\RequirementQueryParam.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\web\controllers\requirements\response\QueryRequirementStatusResult.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\web\filters\cros\CrosFilter.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\web\filters\token\TokenFilter.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\web\controllers\requirements\RequirementController.java
|
||||
D:\develop\cpicxim\it-console\code\java\后端-需求\src\main\java\com\cpic\xim\utils\db\RequirementDbOperation.java
|
@@ -0,0 +1,37 @@
|
||||
<beans xmlns="http://www.springframework.org/schema/beans"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:context="http://www.springframework.org/schema/context"
|
||||
xmlns:jdbc="http://www.springframework.org/schema/jdbc"
|
||||
xmlns:jee="http://www.springframework.org/schema/jee"
|
||||
xmlns:tx="http://www.springframework.org/schema/tx"
|
||||
xmlns:aop="http://www.springframework.org/schema/aop"
|
||||
xmlns:mvc="http://www.springframework.org/schema/mvc"
|
||||
xmlns:util="http://www.springframework.org/schema/util"
|
||||
xmlns:jpa="http://www.springframework.org/schema/data/jpa"
|
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
|
||||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
|
||||
http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
|
||||
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
|
||||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
|
||||
http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
|
||||
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
|
||||
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
|
||||
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
|
||||
|
||||
<context:component-scan base-package="com.cpic.xim" />
|
||||
<mvc:annotation-driven />
|
||||
<mvc:default-servlet-handler />
|
||||
|
||||
<!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
|
||||
<property
|
||||
name="prefix" value="/WEB-INF/jsp/" />
|
||||
<property name="suffix" value=".jsp" />
|
||||
</bean> -->
|
||||
|
||||
<bean id="multipartResolver"
|
||||
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
|
||||
<property name="defaultEncoding" value="UTF-8" />
|
||||
<property name="maxUploadSize" value="-1" />
|
||||
</bean>
|
||||
|
||||
</beans>
|
39
code/java/后端-需求/target/requirement/WEB-INF/web.xml
Normal file
39
code/java/后端-需求/target/requirement/WEB-INF/web.xml
Normal file
@@ -0,0 +1,39 @@
|
||||
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
|
||||
version="3.1">
|
||||
|
||||
<display-name>Archetype Created Web Application</display-name>
|
||||
|
||||
<servlet>
|
||||
<servlet-name>springmvc</servlet-name>
|
||||
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
|
||||
<init-param>
|
||||
<param-name>contextConfigLocation</param-name>
|
||||
<param-value>classpath:spring.xml</param-value>
|
||||
</init-param>
|
||||
<load-on-startup>1</load-on-startup>
|
||||
</servlet>
|
||||
<servlet-mapping>
|
||||
<servlet-name>springmvc</servlet-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</servlet-mapping>
|
||||
|
||||
<filter>
|
||||
<filter-name>CrosFilter</filter-name>
|
||||
<filter-class>com.cpic.xim.web.filters.cros.CrosFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>CrosFilter</filter-name>
|
||||
<url-pattern>*</url-pattern>
|
||||
</filter-mapping>
|
||||
|
||||
<filter>
|
||||
<filter-name>TokenFilter</filter-name>
|
||||
<filter-class>com.cpic.xim.web.filters.token.TokenFilter</filter-class>
|
||||
</filter>
|
||||
<filter-mapping>
|
||||
<filter-name>TokenFilter</filter-name>
|
||||
<url-pattern>*.do</url-pattern>
|
||||
</filter-mapping>
|
||||
</web-app>
|
5
code/java/后端-需求/target/requirement/index.jsp
Normal file
5
code/java/后端-需求/target/requirement/index.jsp
Normal file
@@ -0,0 +1,5 @@
|
||||
<html>
|
||||
<body>
|
||||
<h2>Hello World!</h2>
|
||||
</body>
|
||||
</html>
|
4
code/ts/pako/.eslintignore
Normal file
4
code/ts/pako/.eslintignore
Normal file
@@ -0,0 +1,4 @@
|
||||
node_modules
|
||||
dist
|
||||
target
|
||||
tsconfig.json
|
60
code/ts/pako/.eslintrc.js
Normal file
60
code/ts/pako/.eslintrc.js
Normal file
@@ -0,0 +1,60 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-09 15:26:18
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-10 10:25:42
|
||||
* @FilePath: /后端辅助工具/.eslintrc.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
module.exports = {
|
||||
root: true,
|
||||
env: {
|
||||
browser: true,
|
||||
es2021: true,
|
||||
node: true,
|
||||
},
|
||||
parser: "@typescript-eslint/parser",
|
||||
parserOptions: {
|
||||
ecmaVersion: "latest",
|
||||
sourceType: "module",
|
||||
// project: ["./tsconfig.json",],
|
||||
tsconfigRootDir: __dirname,
|
||||
},
|
||||
plugins: [
|
||||
"@typescript-eslint",
|
||||
],
|
||||
extends: [
|
||||
// "standard-with-typescript",
|
||||
"eslint:recommended",
|
||||
"plugin:@typescript-eslint/eslint-recommended",
|
||||
"plugin:@typescript-eslint/recommended",
|
||||
],
|
||||
rules: {
|
||||
"no-console": "warn",
|
||||
"quote-props": ["warn", "as-needed",],
|
||||
quotes: ["warn", "double", { allowTemplateLiterals: true, },],
|
||||
indent: ["warn", 4,],
|
||||
"no-unused-vars": "off",
|
||||
semi: ["error", "always",], // 控制行尾部分号
|
||||
"comma-dangle": ["error", {
|
||||
arrays: "always",
|
||||
objects: "always",
|
||||
imports: "never",
|
||||
exports: "never",
|
||||
functions: "never",
|
||||
},], // 数组和对象键值对最后一个逗号
|
||||
"comma-style": ["error", "last",], // 逗号在行位
|
||||
"array-bracket-spacing": ["error", "never",],
|
||||
"no-undef-init": "error",
|
||||
"no-invalid-this": "error",
|
||||
"no-use-before-define": "error",
|
||||
"no-shadow-restricted-names": "error", // 禁止对一些关键字或者保留字进行赋值操作,比如NaN、Infinity、undefined、eval、arguments等
|
||||
// "comma-spacing": ["error", { "before": false, "after": true, },],
|
||||
"brace-style": ["error", "allman", { allowSingleLine: true, },],
|
||||
"prefer-const": "warn",
|
||||
"@typescript-eslint/no-extra-semi": "off",
|
||||
"@typescript-eslint/no-inferrable-types": "off",
|
||||
},
|
||||
};
|
21
code/ts/pako/package-lock.json
generated
Normal file
21
code/ts/pako/package-lock.json
generated
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "pako",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "pako",
|
||||
"version": "1.0.0",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"pako": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/pako": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmmirror.com/pako/-/pako-2.1.0.tgz",
|
||||
"integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug=="
|
||||
}
|
||||
}
|
||||
}
|
19
code/ts/pako/package.json
Normal file
19
code/ts/pako/package.json
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "pako",
|
||||
"version": "1.0.0",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "node index.js"
|
||||
},
|
||||
"keywords": [
|
||||
"pako"
|
||||
],
|
||||
"type": "module",
|
||||
"author": "Kane",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"pako": "^2.1.0"
|
||||
}
|
||||
}
|
||||
|
22
code/ts/pako/src/index.js
Normal file
22
code/ts/pako/src/index.js
Normal file
File diff suppressed because one or more lines are too long
37
code/ts/pako/src/utils/StringConverter.js
Normal file
37
code/ts/pako/src/utils/StringConverter.js
Normal file
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-13 14:54:46
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-13 14:55:19
|
||||
* @FilePath: /pako/src/utils/StringConverter.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
|
||||
function Uint8ArrayToString(fileData)
|
||||
{
|
||||
var dataString = "";
|
||||
for (var i = 0; i < fileData.length; i++)
|
||||
{
|
||||
dataString += String.fromCharCode(fileData[i]);
|
||||
}
|
||||
|
||||
return dataString;
|
||||
}
|
||||
|
||||
function stringToUint8Array(str)
|
||||
{
|
||||
var arr = [];
|
||||
|
||||
for (var i = 0, j = str.length; i < j; ++i)
|
||||
{
|
||||
arr.push(str.charCodeAt(i));
|
||||
}
|
||||
|
||||
var tmpUint8Array = new Uint8Array(arr);
|
||||
|
||||
return tmpUint8Array;
|
||||
}
|
||||
|
||||
export { Uint8ArrayToString, stringToUint8Array };
|
4
code/ts/后端辅助工具/.eslintignore
Normal file
4
code/ts/后端辅助工具/.eslintignore
Normal file
@@ -0,0 +1,4 @@
|
||||
node_modules
|
||||
dist
|
||||
target
|
||||
tsconfig.json
|
61
code/ts/后端辅助工具/.eslintrc.js
Normal file
61
code/ts/后端辅助工具/.eslintrc.js
Normal file
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-09 15:26:18
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-18 23:36:07
|
||||
* @FilePath: /后端辅助工具/.eslintrc.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
module.exports = {
|
||||
root: true,
|
||||
env: {
|
||||
browser: true,
|
||||
es2021: true,
|
||||
node: true,
|
||||
},
|
||||
parser: "@typescript-eslint/parser",
|
||||
parserOptions: {
|
||||
ecmaVersion: "latest",
|
||||
sourceType: "module",
|
||||
// project: ["./tsconfig.json",],
|
||||
tsconfigRootDir: __dirname,
|
||||
},
|
||||
plugins: [
|
||||
"@typescript-eslint",
|
||||
],
|
||||
extends: [
|
||||
// "standard-with-typescript",
|
||||
"eslint:recommended",
|
||||
"plugin:@typescript-eslint/eslint-recommended",
|
||||
"plugin:@typescript-eslint/recommended",
|
||||
],
|
||||
rules: {
|
||||
"no-console": "off",
|
||||
"quote-props": ["warn", "as-needed",],
|
||||
quotes: ["warn", "double", { allowTemplateLiterals: true, },],
|
||||
indent: ["warn", 4,],
|
||||
"no-unused-vars": "off",
|
||||
semi: ["error", "always",], // 控制行尾部分号
|
||||
"comma-dangle": ["error", {
|
||||
arrays: "always",
|
||||
objects: "always",
|
||||
imports: "never",
|
||||
exports: "never",
|
||||
functions: "never",
|
||||
},], // 数组和对象键值对最后一个逗号
|
||||
"comma-style": ["error", "last",], // 逗号在行位
|
||||
"array-bracket-spacing": ["error", "never",],
|
||||
"no-undef-init": "error",
|
||||
"no-invalid-this": "error",
|
||||
"no-use-before-define": "error",
|
||||
"no-shadow-restricted-names": "error", // 禁止对一些关键字或者保留字进行赋值操作,比如NaN、Infinity、undefined、eval、arguments等
|
||||
// "comma-spacing": ["error", { "before": false, "after": true, },],
|
||||
"brace-style": ["error", "allman", { allowSingleLine: true, },],
|
||||
"prefer-const": "warn",
|
||||
"@typescript-eslint/no-extra-semi": "off",
|
||||
"@typescript-eslint/no-inferrable-types": "off",
|
||||
"@typescript-eslint/no-unused-vars": "off",
|
||||
},
|
||||
};
|
20
code/ts/后端辅助工具/.vscode/launch.json
vendored
Normal file
20
code/ts/后端辅助工具/.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
// 使用 IntelliSense 了解相关属性。
|
||||
// 悬停以查看现有属性的描述。
|
||||
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"type": "pwa-node",
|
||||
"request": "launch",
|
||||
"name": "Launch Program",
|
||||
"skipFiles": [
|
||||
"<node_internals>/**"
|
||||
],
|
||||
"program": "${file}",
|
||||
"outFiles": [
|
||||
"${workspaceFolder}/**/*.js"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
3
code/ts/后端辅助工具/.vscode/settings.json
vendored
Normal file
3
code/ts/后端辅助工具/.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"typescript.tsdk": "node_modules/typescript/lib"
|
||||
}
|
14
code/ts/后端辅助工具/.vscode/tasks.json
vendored
Normal file
14
code/ts/后端辅助工具/.vscode/tasks.json
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"type": "typescript",
|
||||
"tsconfig": "tsconfig.json",
|
||||
"problemMatcher": [
|
||||
"$tsc"
|
||||
],
|
||||
"group": "build",
|
||||
"label": "tsc: build - tsconfig.json"
|
||||
}
|
||||
]
|
||||
}
|
1559
code/ts/后端辅助工具/package-lock.json
generated
Normal file
1559
code/ts/后端辅助工具/package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
14
code/ts/后端辅助工具/package.json
Normal file
14
code/ts/后端辅助工具/package.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"devDependencies": {
|
||||
"@typescript-eslint/eslint-plugin": "^5.51.0",
|
||||
"@typescript-eslint/parser": "^5.51.0",
|
||||
"eslint": "^8.33.0",
|
||||
"ts-loader": "^9.4.2",
|
||||
"webpack": "^5.75.0",
|
||||
"webpack-cli": "^5.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "^1.3.2",
|
||||
"pako": "^2.1.0"
|
||||
}
|
||||
}
|
41
code/ts/后端辅助工具/src/DataType/Class.ts
Normal file
41
code/ts/后端辅助工具/src/DataType/Class.ts
Normal file
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-17 22:35:49
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-19 21:38:18
|
||||
* @FilePath: /后端辅助工具/src/DataType/Class.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
class CpicximStuff
|
||||
{
|
||||
constructor(
|
||||
private _stuffName: string,
|
||||
private _stuffCode: string,
|
||||
private _p13UID: string
|
||||
) { }
|
||||
|
||||
get stuffName(): string
|
||||
{
|
||||
return this._stuffName;
|
||||
}
|
||||
|
||||
set stuffName(stuffName: string)
|
||||
{
|
||||
this._stuffName = stuffName;
|
||||
}
|
||||
|
||||
get stuffCode(): string
|
||||
{
|
||||
return this._stuffCode;
|
||||
}
|
||||
|
||||
set stuffCode(code: string)
|
||||
{
|
||||
this._stuffCode = code;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
export { CpicximStuff };
|
73
code/ts/后端辅助工具/src/DataType/DataType.ts
Normal file
73
code/ts/后端辅助工具/src/DataType/DataType.ts
Normal file
@@ -0,0 +1,73 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-10 15:08:53
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-13 10:04:33
|
||||
* @FilePath: /后端辅助工具/src/DataType/DataType.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
/*eslint no-unused-vars: "off" */
|
||||
/*eslint @typescript-eslint/no-unused-vars: "off" */
|
||||
|
||||
|
||||
//Tuple
|
||||
function dataTypes()
|
||||
{
|
||||
const tu: readonly [number, number, number] = [1, 1, 2,];
|
||||
|
||||
const toArray: [number, number, string] = [1, 2, "3",];
|
||||
const v1: (number | string)[] = toArray;
|
||||
|
||||
const s1 = "string";
|
||||
|
||||
console.log(typeof s1);
|
||||
|
||||
|
||||
let point: {
|
||||
x: number,
|
||||
y: number,
|
||||
};
|
||||
point = { x: 0, y: 0, };
|
||||
|
||||
function addOne(x: number, y: number = 1): number
|
||||
{
|
||||
return x + y;
|
||||
}
|
||||
|
||||
console.log(addOne(1));
|
||||
|
||||
function allParams(x: number, y: number): void
|
||||
{
|
||||
const z = x + y;
|
||||
}
|
||||
|
||||
//剩余参数,数组形式
|
||||
function overplusArgusWithArray(x: number, ...argus: number[]): number
|
||||
{
|
||||
return argus.length;
|
||||
}
|
||||
|
||||
function overplusArugsWithTuple(x: number, ...argus: [number, number, string]): number
|
||||
{
|
||||
|
||||
console.log(`元组形式的参数表${argus},剩余参数的数量${argus.length}。`);
|
||||
console.log(argus[2]);
|
||||
|
||||
return argus.length;
|
||||
}
|
||||
|
||||
overplusArugsWithTuple(1, 2, 3, "test");
|
||||
|
||||
console.log(overplusArgusWithArray(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
|
||||
|
||||
//测试null
|
||||
const nulltest: null = null;
|
||||
let var_2: { x: string; } = { x: "test", };
|
||||
|
||||
// var_2 = null;
|
||||
}
|
||||
|
||||
|
||||
export default dataTypes;
|
30
code/ts/后端辅助工具/src/DataType/Function.ts
Normal file
30
code/ts/后端辅助工具/src/DataType/Function.ts
Normal file
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-13 23:08:34
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-16 22:43:22
|
||||
* @FilePath: /后端辅助工具/src/DataType/Function.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
function f(x: number, y: number): number
|
||||
{
|
||||
return x + y;
|
||||
}
|
||||
|
||||
f.version = "1.0.0";
|
||||
|
||||
const func: {
|
||||
(x: number, y: number): void,
|
||||
version: string,
|
||||
} = f;
|
||||
|
||||
function func_this_void(this: void, arg1: number): number
|
||||
{
|
||||
return arg1;
|
||||
}
|
||||
|
||||
let constructor: {
|
||||
new(x: string, y: string): object;
|
||||
};
|
24
code/ts/后端辅助工具/src/DataType/Interface.ts
Normal file
24
code/ts/后端辅助工具/src/DataType/Interface.ts
Normal file
@@ -0,0 +1,24 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-14 22:24:26
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-21 23:31:40
|
||||
* @FilePath: /后端辅助工具/src/DataType/Interface.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
|
||||
interface document
|
||||
{
|
||||
getElementById(id: string): HTMLElement | null;
|
||||
}
|
||||
|
||||
interface CpicStuff
|
||||
{
|
||||
stuffName: string;
|
||||
stuffCode: string;
|
||||
p13uid: string;
|
||||
password: string;
|
||||
|
||||
}
|
23
code/ts/后端辅助工具/src/DataType/Template.ts
Normal file
23
code/ts/后端辅助工具/src/DataType/Template.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-21 17:39:01
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-22 14:08:48
|
||||
* @FilePath: /后端辅助工具/src/DataType/Template.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
|
||||
interface Point
|
||||
{
|
||||
x: number;
|
||||
y: number;
|
||||
}
|
||||
|
||||
function radius<TPoint>(x: TPoint): TPoint
|
||||
{
|
||||
const result: TPoint = x;
|
||||
|
||||
return result;
|
||||
}
|
11
code/ts/后端辅助工具/src/axios/AxiosTest.ts
Normal file
11
code/ts/后端辅助工具/src/axios/AxiosTest.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-13 15:46:17
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-13 23:34:55
|
||||
* @FilePath: /后端辅助工具/src/axios/AxiosTest.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
import axios from "axios";
|
19
code/ts/后端辅助工具/src/axios/request.ts
Normal file
19
code/ts/后端辅助工具/src/axios/request.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-13 15:53:45
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-13 22:41:50
|
||||
* @FilePath: /后端辅助工具/src/axios/request.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
import axios, {AxiosInstance, AxiosRequestConfig, AxiosResponse} from 'axios';
|
||||
|
||||
// const service = axios.create({
|
||||
// baseURL: "",
|
||||
// timeout: 10000,
|
||||
// timeoutErrorMessage: "请求超时!",
|
||||
// });
|
||||
|
||||
|
27
code/ts/后端辅助工具/src/gzip/PakoTest.ts
Normal file
27
code/ts/后端辅助工具/src/gzip/PakoTest.ts
Normal file
File diff suppressed because one or more lines are too long
21
code/ts/后端辅助工具/src/main.ts
Normal file
21
code/ts/后端辅助工具/src/main.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-09 22:14:30
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-21 23:32:00
|
||||
* @FilePath: /后端辅助工具/src/main.ts
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
|
||||
import dataTypes from "./DataType/DataType";
|
||||
import { pakoTest } from "./gzip/PakoTest";
|
||||
|
||||
const greetings = "hello, this is kane's typescript!";
|
||||
|
||||
console.log(greetings);
|
||||
console.log("all");
|
||||
|
||||
//dataTypes();
|
||||
pakoTest();
|
38
code/ts/后端辅助工具/src/utils/StringConvert.ts
Normal file
38
code/ts/后端辅助工具/src/utils/StringConvert.ts
Normal file
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-13 14:54:46
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-13 14:55:19
|
||||
* @FilePath: /pako/src/utils/StringConverter.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
|
||||
function Uint8ArrayToString(fileData: Uint8Array): string
|
||||
{
|
||||
let dataString: string = "";
|
||||
|
||||
for (let i = 0; i < fileData.length; i++)
|
||||
{
|
||||
dataString += String.fromCharCode(fileData[i]);
|
||||
}
|
||||
|
||||
return dataString;
|
||||
}
|
||||
|
||||
function stringToUint8Array(str: string): Uint8Array
|
||||
{
|
||||
const arr: number[] = [];
|
||||
|
||||
for (let i = 0, j = str.length; i < j; ++i)
|
||||
{
|
||||
arr.push(str.charCodeAt(i));
|
||||
}
|
||||
|
||||
const tmpUint8Array: Uint8Array = new Uint8Array(arr);
|
||||
|
||||
return tmpUint8Array;
|
||||
}
|
||||
|
||||
export { Uint8ArrayToString, stringToUint8Array };
|
40
code/ts/后端辅助工具/tsconfig.json
Normal file
40
code/ts/后端辅助工具/tsconfig.json
Normal file
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-09 15:24:20
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-17 23:15:11
|
||||
* @FilePath: /后端辅助工具/tsconfig.json
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
{
|
||||
"compilerOptions": {
|
||||
"outDir": "./target",
|
||||
"strict": false,
|
||||
"strictNullChecks": true,
|
||||
"strictPropertyInitialization": true,
|
||||
"sourceMap": true,
|
||||
"allowJs": true,
|
||||
"checkJs": true,
|
||||
"moduleResolution": "node",
|
||||
"module": "CommonJS",
|
||||
"target": "ES2015"
|
||||
},
|
||||
// "files": [
|
||||
// "./src/main.ts",
|
||||
// ],
|
||||
"include": [
|
||||
"./src/**/*",
|
||||
// "./src/*.ts",
|
||||
// "src/main.ts",
|
||||
// ".eslintrc.js",
|
||||
],
|
||||
"exclude": [
|
||||
"./target",
|
||||
"node_modules",
|
||||
"bower_componets",
|
||||
"jspm_packages",
|
||||
],
|
||||
// "outFile": "./target/mian.js",
|
||||
}
|
11
code/ts/后端辅助工具/webpack.config.js
Normal file
11
code/ts/后端辅助工具/webpack.config.js
Normal file
@@ -0,0 +1,11 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2023-02-23 16:15:45
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-23 16:16:04
|
||||
* @FilePath: /后端辅助工具/webpack.config.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
const path = require("path");
|
@@ -1,2 +0,0 @@
|
||||
VUE_APP_API_URL_LOGIN = "http://222.76.244.118:11001/admin-system/account/p13_account_check"
|
||||
VUR_APPP_API_URL_UPLOAD_FILE= "http://222.76.244.118:11001/admin-system/file/file-upload.do"
|
@@ -1,27 +0,0 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2022-12-14 15:12:46
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2022-12-14 15:20:20
|
||||
* @FilePath: \admin_system\.eslintrc.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
module.exports = {
|
||||
root: true,
|
||||
env: {
|
||||
node: true
|
||||
},
|
||||
'extends': [
|
||||
'plugin:vue/vue3-essential',
|
||||
'eslint:recommended'
|
||||
],
|
||||
parserOptions: {
|
||||
parser: '@babel/eslint-parser'
|
||||
},
|
||||
rules: {
|
||||
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
|
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off'
|
||||
}
|
||||
}
|
@@ -1,37 +0,0 @@
|
||||
<!--
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-25 23:16:29
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-01-25 23:19:00
|
||||
* @FilePath: \admin_system\src\views\requirement\RequirementEditing.vue
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
-->
|
||||
<!--
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-25 23:13:47
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-01-25 23:15:21
|
||||
* @FilePath: \admin_system\src\views\requirement\RequirementManager.vue
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
-->
|
||||
<template>
|
||||
需求编辑页面
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "requirement-editing",
|
||||
data()
|
||||
{
|
||||
return {};
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
@@ -1,368 +0,0 @@
|
||||
<!--
|
||||
* @Author: Kane
|
||||
* @Date: 2023-01-25 23:13:47
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-01-28 17:44:26
|
||||
* @FilePath: \admin_system\src\views\requirement\RequirementManager.vue
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
-->
|
||||
<template>
|
||||
|
||||
<div class="requirement_wrapper">
|
||||
<!-- 查询框 -->
|
||||
<div class="search-box">
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="2">
|
||||
<span>标题:</span>
|
||||
</el-col>
|
||||
<el-col :span="16">
|
||||
<el-input></el-input>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="2">
|
||||
<span>需求编号:</span>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-input v-model="query_param.requirement_serial"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="2">
|
||||
<span>申请人:</span>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-input v-model="query_param.request_people"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="2">
|
||||
<span>状态:</span>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<!-- <el-input v-model="query_param.status"></el-input> -->
|
||||
<el-select multiple collapse-tags collapse-tags-tooltip v-model="query_param.status">
|
||||
<el-option v-for="option in requirement_status" :value="option" :key="option"></el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
<el-col :span="6"></el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="2">
|
||||
<span>提交日期:</span>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-date-picker v-model="query_param.submit_start_date" style="width:100%;"></el-date-picker>
|
||||
</el-col>
|
||||
<el-col :span="2">
|
||||
<span>至:</span>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<el-date-picker v-model="query_param.submit_end_date" style="width:100%;"></el-date-picker>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<div class="button-wrapper-right">
|
||||
<el-button type="primary" icon="search">查询</el-button>
|
||||
<el-button icon="Refresh">重置</el-button>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="6"></el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<!-- 工具栏 -->
|
||||
<div class="tool-button-wrapper">
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="4">
|
||||
<div class="button-wrapper-left">
|
||||
<el-button type="success" icon="DocumentAdd" plain>新增</el-button>
|
||||
<el-button type="warning" icon="document" plain>导出</el-button>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="20">
|
||||
<div class="table-display-wrapper">
|
||||
<span>结果筛选:</span>
|
||||
<div class="result-filter-wrapper">
|
||||
<el-checkbox-button label="已完成" checked></el-checkbox-button>
|
||||
<el-checkbox-button label="已取消" checked></el-checkbox-button>
|
||||
<el-checkbox-button label="被退回" checked></el-checkbox-button>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
<!-- 需求列表 -->
|
||||
<el-table :data="tableData" border stripe style="width:100%;" :height="tableHeight">
|
||||
<el-table-column type="selection" align="center"></el-table-column>
|
||||
<el-table-column label="需求编号" align="center" width="160">
|
||||
<template #default="requirement">
|
||||
<span @click="dialogRequirementDetailVisible = true;" class="requirement-serial">{{
|
||||
requirement.row.serial_no
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="标题" prop="title" min-width="200" align="center">
|
||||
<template #default="requirement">
|
||||
<span class="requirement-title">{{ requirement.row.title }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="申请人" prop="request_people" align="center" width="100"></el-table-column>
|
||||
<el-table-column label="状态" prop="status" align="center" width="100"></el-table-column>
|
||||
<el-table-column label="提交日期" prop="submit_date" align="center" width="130"></el-table-column>
|
||||
<el-table-column label="操作" align="center" fixed="right" width="200">
|
||||
<template #default>
|
||||
<el-button type="warning" icon="edit">编辑</el-button>
|
||||
<el-button type="danger" icon="delete">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="pagination_wrapper">
|
||||
<el-pagination class="pull_left" @current-change="onCurrentPageIndexChange"
|
||||
@size-change="onTablePageSizeChange" size="small" background v-model="this.table_current_page"
|
||||
:page-size="this.table_page_size" :page-sizes="[10, 20, 50, 100]"
|
||||
layout="total, sizes, prev, pager, next, jumper" :total="requirement_data.length">
|
||||
</el-pagination>
|
||||
</div>
|
||||
<!-- 需求详细信息对话框 -->
|
||||
<el-dialog class="requirement-detail-dialog" v-model="dialogRequirementDetailVisible" width="55%"
|
||||
:close-on-click-modal="true" :close-on-press-escape="false" :show-close="false" title="需求详情">
|
||||
<el-scrollbar height="300px">
|
||||
<div class="requirement-detail-wrapper" style="padding: 0px 10px;">
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="2">
|
||||
<span>标题</span>
|
||||
</el-col>
|
||||
<el-col :span="22">
|
||||
<el-input></el-input>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="2">
|
||||
<span>需求编号</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-input v-model="query_param.requirement_serial"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="2">
|
||||
<span>申请人</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-input v-model="query_param.request_people"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="2">
|
||||
<span>状态</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<!-- <el-input v-model="query_param.status"></el-input> -->
|
||||
<el-select multiple collapse-tags collapse-tags-tooltip v-model="query_param.status">
|
||||
<el-option v-for="option in requirement_status" :value="option"
|
||||
:key="option"></el-option>
|
||||
</el-select>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="10">
|
||||
<el-col :span="2">
|
||||
<span>提交日期</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-date-picker v-model="query_param.submit_start_date"
|
||||
style="width:100%;"></el-date-picker>
|
||||
</el-col>
|
||||
<el-col :span="2">
|
||||
<span>至</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-date-picker v-model="query_param.submit_end_date" style="width:100%;"></el-date-picker>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-scrollbar>
|
||||
<template #footer>
|
||||
<div class="dialogFooter">
|
||||
<el-button type="primary" @click="dialogRequirementDetailVisible = false;">关闭</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { requirementTestData } from '@/test/data/TestData';
|
||||
export default {
|
||||
name: "requirement-manager",
|
||||
data()
|
||||
{
|
||||
return {
|
||||
requirement_data: requirementTestData, //需求数据,当前值是测试数据
|
||||
table_current_page: 1,//分页组件当前的页面索引
|
||||
table_page_size: 10,
|
||||
query_param: {
|
||||
requirement_serial: "",
|
||||
request_people: "",
|
||||
submit_start_date: "",
|
||||
submit_end_date: "",
|
||||
status: "",
|
||||
},
|
||||
requirement_status: [
|
||||
"未提交", "部门审核", "需求分析", "技术开发", "待发布", "已发布", "被退回",
|
||||
],
|
||||
dialogRequirementDetailVisible: false, //需求详情对话框是否显示
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
//计算表格的高度
|
||||
tableHeight()
|
||||
{
|
||||
return 10 * 50 + 40;
|
||||
},
|
||||
tableData()
|
||||
{
|
||||
const startIndex = this.table_page_size * (this.table_current_page - 1);
|
||||
const endIndex = (this.table_page_size * this.table_current_page);// < this.requirement_data.length ? (this.table_page_size * this.table_current_page) : this.requirement_data.length;
|
||||
|
||||
return this.requirement_data.slice(startIndex, endIndex);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
onTablePageSizeChange(pageSize)
|
||||
{
|
||||
console.log("选择的pageSize", pageSize);
|
||||
this.table_page_size = pageSize;
|
||||
},
|
||||
//用户变更当前页时消息处理函数
|
||||
onCurrentPageIndexChange(pageIndex)
|
||||
{
|
||||
this.table_current_page = pageIndex;
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/* 整个页面的外壳 ******************************/
|
||||
.requirement_wrapper {
|
||||
padding: 15px 10px;
|
||||
background-color: #fff;
|
||||
border-radius: 5px;
|
||||
box-shadow: 0px 0px 20px -10px rgb(14 18 22 / 25%);
|
||||
}
|
||||
|
||||
.requirement_wrapper:hover {
|
||||
box-shadow: 0px 0px 20px -10px rgb(14 18 22 / 40%);
|
||||
}
|
||||
|
||||
.requirement_wrapper>*+* {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
|
||||
/* 查询框 **********************************/
|
||||
.search-box {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
.search-box span {
|
||||
font-weight: normal;
|
||||
display: block;
|
||||
text-align: right;
|
||||
font-size: 15px;
|
||||
color: #5f5f5f;
|
||||
}
|
||||
|
||||
.search-box>.el-row {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: left;
|
||||
}
|
||||
|
||||
.search-box .el-row+.el-row {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/* 查询结果筛选框 */
|
||||
.tool-button-wrapper {
|
||||
padding: 0px 15px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.tool-button-wrapper>.el-row {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: left;
|
||||
}
|
||||
|
||||
.tool-button-wrapper span {
|
||||
font-weight: small;
|
||||
display: block;
|
||||
text-align: right;
|
||||
font-size: 15px;
|
||||
color: #5f5f5f;
|
||||
}
|
||||
|
||||
.tool-button-wrapper .el-checkbox {
|
||||
font-size: 15px;
|
||||
}
|
||||
|
||||
.table-display-wrapper {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: right;
|
||||
}
|
||||
|
||||
.button-wrapper-right {
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.button-wrapper-left {
|
||||
display: flex;
|
||||
justify-content: left;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.result-filter-wrapper {
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
/* 需求列表 */
|
||||
.requirement-title {
|
||||
display: block;
|
||||
text-align: left;
|
||||
width: 100%;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.requirement-serial {
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
/***分页组件 *************/
|
||||
.pagination_wrapper {
|
||||
padding-right: 15px;
|
||||
display: flex;
|
||||
justify-content: right;
|
||||
}
|
||||
|
||||
/*需求详情对话框 */
|
||||
.requirement-detail-dialog {
|
||||
width: 400px;
|
||||
height: 600px;
|
||||
}
|
||||
|
||||
.requirement-detail-dialog .el-row {
|
||||
display: flex;
|
||||
justify-content: left;
|
||||
align-items: center;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.requirement-detail-wrapper {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
.requirement-detail-wrapper span {
|
||||
display: block;
|
||||
text-align: right;
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
@@ -1,51 +0,0 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2022-12-17 11:08:18
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-01-07 12:08:14
|
||||
* @FilePath: \admin_system\vue.config.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
// const { defineConfig } = require('@vue/cli-service');
|
||||
// module.exports = defineConfig(
|
||||
// {
|
||||
// transpileDependencies: true,
|
||||
// devServer: {
|
||||
// open: true,
|
||||
// host: "localhost",
|
||||
// port: 8000,
|
||||
// },
|
||||
// }
|
||||
// );
|
||||
module.exports = {
|
||||
transpileDependencies: true,
|
||||
devServer: {
|
||||
open: true,
|
||||
host: "localhost",
|
||||
port: 8000,
|
||||
},
|
||||
chainWebpack: (config) =>
|
||||
{
|
||||
// svg 图标解析
|
||||
const svgRule = config.module.rule("svg"); //默认规则赋给 subRule 变量
|
||||
svgRule.uses.clear(); // 清除已有的所有规则。
|
||||
svgRule // 添加要替换的规则
|
||||
.use("svg-sprite-loader")
|
||||
.loader("svg-sprite-loader")
|
||||
.options({
|
||||
symbolId: "icon-[name]",
|
||||
include: ["./src/components/svg/icons"] // 特别注意的目录路径
|
||||
});
|
||||
// 配置base64转换规则
|
||||
// config.module
|
||||
// .rule('images')
|
||||
// .use('url-loader')
|
||||
// .loader('url-loader')
|
||||
// .tap(options => Object.assign(options, { limit: 1 }));
|
||||
|
||||
// 载入项目分析工具
|
||||
// config.plugin('webpack-bundle-analyzer').use(require('webpack-bundle-analyzer').BundleAnalyzerPlugin)
|
||||
},
|
||||
};
|
3
code/web/it-console/.env.development
Normal file
3
code/web/it-console/.env.development
Normal file
@@ -0,0 +1,3 @@
|
||||
VUE_APP_API_URL_LOGIN = "http://222.76.244.118:11001/admin-system/account/p13_account_check"
|
||||
VUE_APP_API_URL_UPLOAD_FILE= "http://222.76.244.118:11001/admin-system/file/file-upload.do"
|
||||
VUE_APP_API_URL_REQUIREMENT_STATUS= "http://222.76.244.118:11001/requirement/query_requirement_status.do"
|
44
code/web/it-console/.eslintrc.js
Normal file
44
code/web/it-console/.eslintrc.js
Normal file
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* @Author: Kane
|
||||
* @Date: 2022-12-14 15:12:46
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-14 23:10:53
|
||||
* @FilePath: /IT工具综合平台/.eslintrc.js
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
*/
|
||||
module.exports = {
|
||||
root: true,
|
||||
env: {
|
||||
node: true,
|
||||
},
|
||||
'extends': [
|
||||
'plugin:vue/vue3-essential',
|
||||
'eslint:recommended',
|
||||
],
|
||||
parserOptions: {
|
||||
parser: '@babel/eslint-parser',
|
||||
},
|
||||
rules: {
|
||||
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
|
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
|
||||
"no-unused-vars": "warn",
|
||||
"semi": ["error", "always",],//控制行尾部分号
|
||||
"comma-dangle": ["warn", {
|
||||
"arrays": "always",
|
||||
"objects": "always",
|
||||
"imports": "never",
|
||||
"exports": "never",
|
||||
"functions": "never",
|
||||
},],//数组和对象键值对最后一个逗号
|
||||
"comma-style": ["error", "last",], //逗号在行位
|
||||
"array-bracket-spacing": ["error", "never",],
|
||||
"no-undef-init": "error",
|
||||
"no-invalid-this": "error",
|
||||
"no-use-before-define": "error",
|
||||
"no-shadow-restricted-names": "error", //禁止对一些关键字或者保留字进行赋值操作,比如NaN、Infinity、undefined、eval、arguments等
|
||||
// "comma-spacing": ["error", { "before": false, "after": true, },],
|
||||
"brace-style": ["error", "allman", { "allowSingleLine": true, },],
|
||||
},
|
||||
};
|
44
code/web/it-console/index.html
Normal file
44
code/web/it-console/index.html
Normal file
@@ -0,0 +1,44 @@
|
||||
<!--
|
||||
* @Author: Kane
|
||||
* @Date: 2022-12-17 11:08:18
|
||||
* @LastEditors: Kane
|
||||
* @LastEditTime: 2023-02-23 00:40:59
|
||||
* @FilePath: /it-console-toVite/index.html
|
||||
* @Description:
|
||||
*
|
||||
* Copyright (c) ${2022} by Kane, All Rights Reserved.
|
||||
-->
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-cn">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
|
||||
<link rel="icon" href="public/favicon.ico" />
|
||||
<title>王炜的工具箱</title>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>
|
||||
<strong
|
||||
>We're sorry but <%= title %> doesn't work properly without
|
||||
JavaScript enabled. Please enable it to continue.</strong
|
||||
>
|
||||
</noscript>
|
||||
<div id="app" v-cloak></div>
|
||||
<!-- built files will be auto injected -->
|
||||
<script type="module" src="/src/main.js"></script>
|
||||
</body>
|
||||
<style>
|
||||
.v-cloak {
|
||||
display: none;
|
||||
}
|
||||
|
||||
body {
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
max-height: 100vh;
|
||||
min-width: 1280px;
|
||||
}
|
||||
</style>
|
||||
</html>
|
||||
|
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user