21 Commits
Author SHA1 Message Date
18792927508 e0e15d5b81 代码生成 2024-06-19 10:08:11 +08:00
wangqiong123andGitea a3ea4c4b07 Merge branch 'wq' of kn-cost/cost-backend into dev 2024-06-17 09:13:17 +08:00
18792927508 0d587c646c 标准成本计算查询,生成版本号接口 2024-06-17 09:12:28 +08:00
bgyandGitea e5700a8459 Merge branch 'bgy' of kn-cost/cost-backend into dev 2024-06-11 16:17:48 +08:00
wangqiong123andGitea a74d7656cc Merge branch 'wq' of kn-cost/cost-backend into dev 2024-06-11 16:16:42 +08:00
wangqiong 266fa0e51a Merge branch 'dev' of http://git.xayunmei.com/kn-cost/cost-backend into bgy 2024-06-11 16:16:10 +08:00
18792927508 2be743883c 最新采购价接口 2024-06-11 16:16:09 +08:00
wangqiong 6dd6d83776 成本中心和工厂信息的增删改查接口 2024-06-11 16:14:59 +08:00
bgyandGitea fcb9425209 Merge branch 'bgy' of kn-cost/cost-backend into dev 2024-06-11 11:37:09 +08:00
wangqiong cb4f1455a2 预算价格相关的增删改查接口 2024-06-11 11:36:05 +08:00
wangqiong123andGitea 79d7f79326 Merge branch 'wq' of kn-cost/cost-backend into dev 2024-06-11 09:48:10 +08:00
18792927508 6cda0c8122 生产批量设置接口 2024-06-11 09:47:41 +08:00
wangqiong123andGitea cd00c1611e Merge branch 'wq' of kn-cost/cost-backend into dev 2024-06-11 09:18:56 +08:00
18792927508 513452b7a7 7525单价接口 2024-06-11 09:17:56 +08:00
bgyandGitea c84cd68e04 Merge branch 'bgy' of kn-cost/cost-backend into dev 2024-06-06 15:54:42 +08:00
wangqiong 8f6458d800 优化自动生成代码 2024-06-06 15:52:39 +08:00
wangqiong 1d0ea30024 注释掉权限验证 2024-06-06 15:04:23 +08:00
wangqiong 41480ba1c9 小时费率接口、mybatisplus自动生成代码组件 2024-06-06 11:36:57 +08:00
wangqiong 3ee39fbd4b 修改项目名和模块名为qomo-kn-cost-manage 2024-06-05 16:19:22 +08:00
wangqiong bdc6582074 中制平台初始版本 2024-06-05 14:13:20 +08:00
wangqiong c6098cbecd 成本管理后端初始版本 2024-05-31 15:31:51 +08:00
103 changed files with 25779 additions and 2 deletions
+45
View File
@@ -0,0 +1,45 @@
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### Eclipse ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/
### Mac OS ###
.DS_Store
## backend
**/target
**/logs
*.log
## front
**/*.lock
*.flattened-pom.xml
-2
View File
@@ -1,2 +0,0 @@
# cost-backend
+178
View File
@@ -0,0 +1,178 @@
<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.zzsmart.qomo</groupId>
<artifactId>qomo-kn-forecast</artifactId>
<version>${revision}</version>
<packaging>pom</packaging>
<name>QOMO FORECAST</name>
<developers>
<developer>
<name>武汉中制智造</name>
<email>qomo@163.com</email>
</developer>
</developers>
<parent>
<groupId>org.qomo.boot</groupId>
<artifactId>qomo-base</artifactId>
<version>2.0.1-SNAPSHOT</version>
<relativePath/>
</parent>
<properties>
<revision>2.0.0-SNAPSHOT</revision>
<adp.version>2.0.0-SNAPSHOT</adp.version>
</properties>
<modules>
<module>qomo-kn-cost-manage-start</module>
<module>qomo-kn-cost-manage</module>
</modules>
<repositories>
<repository>
<id>zzzz</id>
<name>zzzz Repository</name>
<url>http://192.168.50.9:8091/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>aliyun</id>
<name>aliyun Repository</name>
<url>https://maven.aliyun.com/repository/public</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<distributionManagement>
<repository>
<id>zzzz-releases</id>
<name>zzzz-releases Repository</name>
<url>http://192.168.50.9:8091/repository/zzzz-releases/</url>
</repository>
<snapshotRepository>
<id>zzzz-snapshots</id>
<name>zzzz Snapshot Repository</name>
<url>http://192.168.50.9:8091/repository/zzzz-snapshots/</url>
</snapshotRepository>
</distributionManagement>
<pluginRepositories>
<pluginRepository>
<id>zzzz</id>
<name>zzzz Repository</name>
<url>http://192.168.50.9:8091/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>aliyun</id>
<name>aliyun Repository</name>
<url>https://maven.aliyun.com/repository/public</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.zzsmart.qomo</groupId>
<artifactId>qomo-kn-cost-manage</artifactId>
<version>${revision}</version>
</dependency>
</dependencies>
</dependencyManagement>
<!-- 环境 -->
<profiles>
<!-- 开发 -->
<profile>
<id>dev</id>
<activation>
<!--默认激活配置-->
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!--当前环境-->
<profile.name>dev</profile.name>
<!--Nacos服务地址-->
<config.server-addr>jeecg-boot-nacos:8848</config.server-addr>
<!--Nacos配置中心命名空间,用于支持多环境.这里必须使用ID,不能使用名称,默认为空-->
<config.namespace></config.namespace>
<!--Nacos配置分组名称-->
<config.group>DEFAULT_GROUP</config.group>
<!--Nacos用户名-->
<config.username></config.username>
<!--Nacos密码-->
<config.password></config.password>
</properties>
</profile>
<!-- 测试Nacos开启鉴权、设置分组和命名空间
<profile>
<id>dev</id>
<properties>
<profile.name>dev</profile.name>
<config.server-addr>jeecg-boot-nacos:8848</config.server-addr>
<config.namespace>ac14ab82-51f8-4f0c-aa5b-25fb8384bfb6</config.namespace>
<config.group>JEECGDEV_GROUP</config.group>
<config.username>nacos</config.username>
<config.password>nacos</config.password>
</properties>
</profile> -->
<!-- 测试 -->
<profile>
<id>test</id>
<properties>
<!--当前环境-->
<profile.name>test</profile.name>
<!--Nacos服务地址-->
<config.server-addr>jeecg-boot-nacos:8848</config.server-addr>
<!--Nacos配置中心命名空间,用于支持多环境.这里必须使用ID,不能使用名称,默认为空-->
<config.namespace></config.namespace>
<!--Nacos配置分组名称-->
<config.group>DEFAULT_GROUP</config.group>
<!--Nacos用户名-->
<config.username></config.username>
<!--Nacos密码-->
<config.password></config.password>
</properties>
</profile>
<!-- 生产 -->
<profile>
<id>prod</id>
<properties>
<!--当前环境-->
<profile.name>prod</profile.name>
<!--Nacos服务地址-->
<config.server-addr>jeecg-boot-nacos:8848</config.server-addr>
<!--Nacos配置中心命名空间,用于支持多环境.这里必须使用ID,不能使用名称,默认为空-->
<config.namespace></config.namespace>
<!--Nacos配置分组名称-->
<config.group>DEFAULT_GROUP</config.group>
<!--Nacos用户名-->
<config.username></config.username>
<!--Nacos密码-->
<config.password></config.password>
</properties>
</profile>
<!-- SpringCloud运行环境 -->
</profiles>
</project>
+55
View File
@@ -0,0 +1,55 @@
<?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>
<groupId>com.zzsmart.qomo</groupId>
<artifactId>qomo-kn-forecast</artifactId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>qomo-kn-cost-manage-start</artifactId>
<properties>
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<artifactId>spring-boot-starter-logging</artifactId>
<groupId>org.springframework.boot</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.zzsmart.qomo</groupId>
<artifactId>qomo-kn-cost-manage</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!-- <fork>true</fork> &lt;!&ndash; 如果没有该配置,devtools不会生效 &ndash;&gt;-->
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
</plugins>
</build>
</project>
@@ -0,0 +1,41 @@
<assembly>
<id>dist</id>
<formats>
<format>dir</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>${basedir}/src/main/bin</directory>
<lineEnding>unix</lineEnding>
<outputDirectory/>
<fileMode>755</fileMode>
<includes>
<include>*.sh</include>
</includes>
</fileSet>
<fileSet>
<directory>${basedir}/src/main/bin</directory>
<lineEnding>windows</lineEnding>
<outputDirectory/>
<includes>
<include>*.bat</include>
</includes>
</fileSet>
<fileSet>
<directory>target/classes</directory>
<outputDirectory>config</outputDirectory>
<includes>
<include>**/*.yml</include>
<include>**/*.yaml</include>
<include>**/logback-spring.xml</include>
</includes>
</fileSet>
</fileSets>
<dependencySets>
<dependencySet>
<outputDirectory>lib</outputDirectory>
<unpack>false</unpack>
</dependencySet>
</dependencySets>
</assembly>
@@ -0,0 +1,46 @@
package com.zzsmart.qomo.kn.cost.manage;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.util.oConvertUtils;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.core.env.Environment;
import org.springframework.scheduling.annotation.EnableAsync;
import java.net.InetAddress;
import java.net.UnknownHostException;
/**
* 单体启动类
* 报错提醒: 未集成mongo报错,可以打开启动类上面的注释 exclude={MongoAutoConfiguration.class}
*/
@Slf4j
@SpringBootApplication (scanBasePackages ={"org.jeecg", "com.zzsmart.qomo"})
//@EnableAutoConfiguration(exclude={MongoAutoConfiguration.class})
@EnableAsync
public class QomoCostManageApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(QomoCostManageApplication.class);
}
public static void main(String[] args) throws UnknownHostException {
ConfigurableApplicationContext application = SpringApplication.run(QomoCostManageApplication.class, args);
Environment env = application.getEnvironment();
String ip = InetAddress.getLocalHost().getHostAddress();
String port = env.getProperty("server.port");
String path = oConvertUtils.getString(env.getProperty("server.servlet.context-path"));
log.info("\n----------------------------------------------------------\n\t" +
"Application Jeecg-Boot is running! Access URLs:\n\t" +
"Local: \t\thttp://localhost:" + port + path + "/\n\t" +
"External: \thttp://" + ip + ":" + port + path + "/\n\t" +
"Swagger文档: \thttp://" + ip + ":" + port + path + "/doc.html\n" +
"----------------------------------------------------------");
}
}
@@ -0,0 +1,456 @@
v2:
#虚拟路径映射路径 2个文件路径一一对应 第一个为主存储,其他为配置相关
xnljmap:
#win服务器 本地 注意!! 记住这个结尾有一个/
oss: file:/data/qomo-boot/oss/
# oss: file:D:/upload/
#linux服务器
#oss: file:/home/webapps/oss/
#虚拟路径映射路径 end
#本地存放地址 注意!! 记住这个结尾没有/
fileurl: /data/qomo-boot/oss
# fileurl: D:/upload
#http://127.0.0.1:8080/oss/{yy}/2022-12-22/c83a77ae134a540c30daa6a0666fa945.md
httpurl: /qomo/
defaultFormat: .png
server:
port: 8095
tomcat:
max-swallow-size: -1
error:
include-exception: true
include-stacktrace: ALWAYS
include-message: ALWAYS
servlet:
context-path: /qomo
compression:
enabled: true
min-response-size: 1024
mime-types: application/javascript,application/json,application/xml,text/html,text/xml,text/plain,text/css,image/*
management:
endpoints:
web:
exposure:
include: metrics,httptrace
spring:
servlet:
multipart:
max-file-size: 10MB
max-request-size: 10MB
mail:
host: smtp.163.com
username: jeecgos@163.com
password: ??
properties:
mail:
smtp:
auth: true
starttls:
enable: true
required: true
## quartz定时任务,采用数据库方式
quartz:
job-store-type: jdbc
initialize-schema: embedded
#定时任务启动开关,true-开 false-关
auto-startup: true
#延迟1秒启动定时任务
startup-delay: 1s
#启动时更新己存在的Job
overwrite-existing-jobs: true
properties:
org:
quartz:
scheduler:
instanceName: MyScheduler
instanceId: AUTO
jobStore:
class: org.springframework.scheduling.quartz.LocalDataSourceJobStore
driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
tablePrefix: QRTZ_
isClustered: true
misfireThreshold: 12000
clusterCheckinInterval: 15000
threadPool:
class: org.quartz.simpl.SimpleThreadPool
threadCount: 10
threadPriority: 5
threadsInheritContextClassLoaderOfInitializingThread: true
#json 时间戳统一转换
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
jpa:
open-in-view: false
# http请求配置
rest:
livy:
server: http://192.168.50.9:7997
spark:
# 组件部署路径,默认是部署在hdfs 如果是本地路径则在前面加上local:
main-jar: local:/opt/services/deploy-jars/dev/qomo-data-component-${Qomo.version}-jar-with-dependencies.jar
main-class: com.zzsmart.qomo.QomoSparkStarter
# spark默认运行参数
deploy-mode: cluster
queue: default
num-executors: 2
executor-cores: 1
executor-memory: 1G
driver-cores: 1
driver-memory: 512M
# 客户端类型
client-type: urlconnection
# URLConnection配置
url-connection:
# 客户端和服务器建立连接超时时间
connect-timeout: 2000
# 客户端从服务器读取数据包超时时间
read-timeout: 30000
# 是否长链接
keep-alive: false
# HttpClient配置
http-client:
# 连接池的最大连接数
max-total-connect: 200
# 相同域名允许创建的最大连接数
max-connect-per-route: 10
# 客户端和服务器建立连接超时时间
connect-timeout: 2000
# 读数据的超时时间
socket-timeout: 30000
# 连接池创建连接时的超时时间
connection-request-timout: 200
# OKHttp配置
ok-http:
# 失败后是否重试
retry-on-connection-failure: false
# 链接超时时间
connect-timeout: 2000
# 读超时时间
read-timeout: 10000
# 写超时时间
write-timeout: 10000
# 最大空闲的连接数
max-idle-connections: 5
# 最大的空闲时间
keep-alive-duration-ns: 3000
aop:
proxy-target-class: true
#配置freemarker
freemarker:
# 设置模板后缀名
suffix: .ftl
# 设置文档类型
content-type: text/html
# 设置页面编码格式
charset: UTF-8
# 设置页面缓存
cache: false
prefer-file-system-access: false
# 设置ftl文件路径
template-loader-path:
- classpath:/template
# - d:/data
template_update_delay: 0
# 设置静态文件路径,js,css等
mvc:
static-path-pattern: /**
#Spring Boot 2.6+后映射匹配的默认策略已从AntPathMatcher更改为PathPatternParser,需要手动指定为ant-path-matcher
pathmatch:
matching-strategy: ant_path_matcher
resource:
static-locations: classpath:/static/,classpath:/public/
autoconfigure:
exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
datasource:
druid:
stat-view-servlet:
enabled: true
loginUsername: admin
loginPassword: 123456
allow:
web-stat-filter:
enabled: true
dynamic:
druid: # 全局druid参数,绝大部分值和默认保持一致。(现已支持的参数如下,不清楚含义不要乱设置)
# 连接池的配置信息
# 初始化大小,最小,最大
initial-size: 5
min-idle: 5
maxActive: 20
# 配置获取连接等待超时的时间
maxWait: 60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
# 打开PSCache,并且指定每个连接上PSCache的大小
poolPreparedStatements: true
maxPoolPreparedStatementPerConnectionSize: 20
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filters: stat,slf4j
filter:
wall:
config:
none-base-statement-allow: true
multi-statement-allow: true
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
datasource:
master:
url: jdbc:mysql://121.40.189.20:3306/knne?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useSSL=true&serverTimezone=Asia/Shanghai
username: root
password: YMzc157#
driver-class-name: com.mysql.cj.jdbc.Driver
# url: jdbc:mysql://192.168.50.9:2212/selef_report?useUnicode=true&allowMultiQueries=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&serverTimezone=Asia/Shanghai&useSSL=false
# username: root
# password: root
# 多数据源配置
#multi-datasource1:
#url: jdbc:mysql://localhost:3306/jeecg-boot2?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
#username: root
#password: root
#driver-class-name: com.mysql.cj.jdbc.Driver
#redis 配置
redis:
database: 5
# host: 192.168.50.9
# port: 7379
# password: 'zzboard'
host: 121.40.189.20
port: 6389
main:
allow-circular-references: true
#rabbitmq 配置
rabbitmq:
host: 192.168.50.9
port: 5672
virtual-host: /qomoflow-dev
username: admin
password: kncloud
connection-timeout: 5000
listener:
simple:
concurrency: 5 # 并发数量
max-concurrency: 10 # 最大并发数量
acknowledge-mode: manual # 开启手动签收
prefetch: 1 # 限制每次只消费一个(一个线程)
#mybatis plus 设置
mybatis-plus:
mapper-locations: classpath*:org/jeecg/modules/**/xml/*Mapper.xml,classpath*:/mapper/*.xml,classpath*:com/zzsmart/qomo/**/mapper/xml/*.xml
global-config:
# 关闭MP3.0自带的banner
banner: false
db-config:
#主键类型 0:"数据库ID自增",1:"该类型为未设置主键类型", 2:"用户输入ID",3:"全局唯一ID (数字类型唯一ID)", 4:"全局唯一ID UUID",5:"字符串全局唯一ID (idWorker 的字符串表示)";
id-type: ASSIGN_ID
# 默认数据库表下划线命名
table-underline: true
configuration:
# 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
# log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
# 返回类型为Map,显示null对应的字段
call-setters-on-nulls: true
#jeecg专用配置
minidao:
base-package: org.jeecg.modules.jmreport.*,org.jeecg.modules.drag.*
jeecg:
# 是否启用安全模式
safeMode: false
# 签名密钥串(前后端要一致,正式发布请自行修改)
signatureSecret: dd05f1c54d63749eda95f9fa6d49v442a
# 签名拦截接口
signUrls: /sys/dict/getDictItems/*,/sys/dict/loadDict/*,/sys/dict/loadDictOrderByValue/*,/sys/dict/loadDictItem/*,/sys/dict/loadTreeData,/sys/api/queryTableDictItemsByCode,/sys/api/queryFilterTableDictInfo,/sys/api/queryTableDictByKeys,/sys/api/translateDictFromTable,/sys/api/translateDictFromTableByKeys
#local、minio、alioss
uploadType: local
# 前端访问地址
domainUrl:
pc: http://localhost:3100
app: http://localhost:8051
path:
#文件上传根目录 设置
upload: /opt/upFiles
#webapp文件路径
webapp: /opt/webapp
shiro:
# excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/category/**,/visual/**,/map/**,/jmreport/bigscreen2/**,/api/getUserInfo,/sys/sysDepart/**,/taskSocket/**,/flowSocket/**
excludeUrls: /**/**,/**/**/**
#阿里云oss存储和大鱼短信秘钥配置
oss:
accessKey: ??
secretKey: ??
endpoint: oss-cn-beijing.aliyuncs.com
bucketName: jeecgdev
minio:
minio_url: http://192.168.50.102:9000
minio_name: admin
minio_pass: minioadmin
bucketName: bucket803
# ElasticSearch 6设置
elasticsearch:
cluster-name: elasticsearch-cluster
cluster-nodes: 192.168.50.9:9200
check-enabled: false
task-data-index: task_data_dev/_doc
task-data-struct-index: task_data_struct_dev/_doc
task-data-temp-index: task_data_temp_dev/_doc
task-log-index: task_log_dev/_doc
# 在线预览文件服务器地址配置
file-view-domain: http://fileview.jeecg.com
# minio文件上传
# minio:
# minio_url: http://minio.jeecg.com
# minio_name: ??
# minio_pass: ??
# bucketName: otatest
#大屏报表参数设置
jmreport:
mode: dev
#数据字典是否进行saas数据隔离,自己看自己的字典
saas: false
#xxl-job配置
xxljob:
enabled: false
adminAddresses: http://127.0.0.1:9080/xxl-job-admin
appname: ${spring.application.name}
accessToken: ''
address: 127.0.0.1:30007
ip: 127.0.0.1
port: 30007
logPath: logs/jeecg/job/jobhandler/
logRetentionDays: 30
#分布式锁配置
redisson:
address: 127.0.0.1:6379
password:
type: STANDALONE
enabled: true
#cas单点登录
cas:
server:
host:
#CAS服务地址
url: http://192.168.50.9:8167/cas
#Mybatis输出sql日志
logging:
level:
org.jeecg.modules.system.mapper: info
#swagger
knife4j:
#开启增强配置
enable: true
#开启生产环境屏蔽
production: false
basic:
enable: false
username: jeecg
password: jeecg1314
#第三方登录
justauth:
enabled: true
type:
GITHUB:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/github/callback
WECHAT_ENTERPRISE:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/wechat_enterprise/callback
agent-id: ??
DINGTALK:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/dingtalk/callback
WECHAT_OPEN:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/wechat_open/callback
cache:
type: default
prefix: 'demo::'
timeout: 1h
#第三方APP对接
third-app:
enabled: false
type:
#企业微信
WECHAT_ENTERPRISE:
enabled: false
#CORP_ID
client-id: ??
#SECRET
client-secret: ??
#自建应用id
agent-id: ??
#自建应用秘钥(新版企微需要配置)
# agent-app-secret: ??
#钉钉
DINGTALK:
enabled: false
# appKey
client-id: ??
# appSecret
client-secret: ??
agent-id: ??
spark:
app:
name: yl
home: 127.0.0.1
master:
uri: local[*]
driver:
memory: 2g
worker:
memory: 2g
executor:
memory: 1g
rpc:
message:
maxSize: 1024
flowable:
process:
definition-cache-limit: -1
database-schema-update: true
activity-font-name: 宋体
label-font-name: 宋体
annotation-font-name: 宋体
#关闭定时任务JOB
async-executor-activate: false
#消息链接基地址
message-base-url: http://192.168.50.9:3000/flowable/task/record/
Qomo:
version: @project.version@
modelPath: /opt/services/deploy-jars/algo/model
seaTunnelHome: /opt/service/apache-seatunnel-2.3.4
hiveMetastoreUri: thrift://192.168.50.102:9083
minio:
server: http://192.168.50.102
port: 9000
access-key: admin
secret-key: minioadmin
bucketName: bucket1
condaEnv: py310
analysis:
consistency:
url: http://192.168.50.9:1314/analysis
@@ -0,0 +1,451 @@
v2:
#虚拟路径映射路径 2个文件路径一一对应 第一个为主存储,其他为配置相关
xnljmap:
#win服务器 本地 注意!! 记住这个结尾有一个/
oss: file:/data/qomo-boot/oss/
# oss: file:D:/upload/
#linux服务器
#oss: file:/home/webapps/oss/
#虚拟路径映射路径 end
#本地存放地址 注意!! 记住这个结尾没有/
fileurl: /data/qomo-boot/oss
# fileurl: D:/upload
#http://127.0.0.1:8080/oss/{yy}/2022-12-22/c83a77ae134a540c30daa6a0666fa945.md
httpurl: /qomo/
defaultFormat: .png
server:
port: 8095
tomcat:
max-swallow-size: -1
error:
include-exception: true
include-stacktrace: ALWAYS
include-message: ALWAYS
servlet:
context-path: /qomo
compression:
enabled: true
min-response-size: 1024
mime-types: application/javascript,application/json,application/xml,text/html,text/xml,text/plain,text/css,image/*
management:
endpoints:
web:
exposure:
include: metrics,httptrace
spring:
servlet:
multipart:
max-file-size: 10MB
max-request-size: 10MB
mail:
host: smtp.163.com
username: jeecgos@163.com
password: ??
properties:
mail:
smtp:
auth: true
starttls:
enable: true
required: true
## quartz定时任务,采用数据库方式
quartz:
job-store-type: jdbc
initialize-schema: embedded
#定时任务启动开关,true-开 false-关
auto-startup: true
#延迟1秒启动定时任务
startup-delay: 1s
#启动时更新己存在的Job
overwrite-existing-jobs: true
properties:
org:
quartz:
scheduler:
instanceName: MyScheduler
instanceId: AUTO
jobStore:
class: org.springframework.scheduling.quartz.LocalDataSourceJobStore
driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
tablePrefix: QRTZ_
isClustered: true
misfireThreshold: 12000
clusterCheckinInterval: 15000
threadPool:
class: org.quartz.simpl.SimpleThreadPool
threadCount: 10
threadPriority: 5
threadsInheritContextClassLoaderOfInitializingThread: true
#json 时间戳统一转换
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
jpa:
open-in-view: false
# http请求配置
rest:
livy:
server: http://192.168.50.9:7997
spark:
# 组件部署路径,默认是部署在hdfs 如果是本地路径则在前面加上local:
main-jar: local:/opt/services/deploy-jars/dev/qomo-data-component-${Qomo.version}-jar-with-dependencies.jar
main-class: com.zzsmart.qomo.QomoSparkStarter
# spark默认运行参数
deploy-mode: cluster
queue: default
num-executors: 2
executor-cores: 1
executor-memory: 1G
driver-cores: 1
driver-memory: 512M
# 客户端类型
client-type: urlconnection
# URLConnection配置
url-connection:
# 客户端和服务器建立连接超时时间
connect-timeout: 2000
# 客户端从服务器读取数据包超时时间
read-timeout: 30000
# 是否长链接
keep-alive: false
# HttpClient配置
http-client:
# 连接池的最大连接数
max-total-connect: 200
# 相同域名允许创建的最大连接数
max-connect-per-route: 10
# 客户端和服务器建立连接超时时间
connect-timeout: 2000
# 读数据的超时时间
socket-timeout: 30000
# 连接池创建连接时的超时时间
connection-request-timout: 200
# OKHttp配置
ok-http:
# 失败后是否重试
retry-on-connection-failure: false
# 链接超时时间
connect-timeout: 2000
# 读超时时间
read-timeout: 10000
# 写超时时间
write-timeout: 10000
# 最大空闲的连接数
max-idle-connections: 5
# 最大的空闲时间
keep-alive-duration-ns: 3000
aop:
proxy-target-class: true
#配置freemarker
freemarker:
# 设置模板后缀名
suffix: .ftl
# 设置文档类型
content-type: text/html
# 设置页面编码格式
charset: UTF-8
# 设置页面缓存
cache: false
prefer-file-system-access: false
# 设置ftl文件路径
template-loader-path:
- classpath:/template
# - d:/data
template_update_delay: 0
# 设置静态文件路径,js,css等
mvc:
static-path-pattern: /**
#Spring Boot 2.6+后映射匹配的默认策略已从AntPathMatcher更改为PathPatternParser,需要手动指定为ant-path-matcher
pathmatch:
matching-strategy: ant_path_matcher
resource:
static-locations: classpath:/static/,classpath:/public/
autoconfigure:
exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
datasource:
druid:
stat-view-servlet:
enabled: true
loginUsername: admin
loginPassword: 123456
allow:
web-stat-filter:
enabled: true
dynamic:
druid: # 全局druid参数,绝大部分值和默认保持一致。(现已支持的参数如下,不清楚含义不要乱设置)
# 连接池的配置信息
# 初始化大小,最小,最大
initial-size: 5
min-idle: 5
maxActive: 20
# 配置获取连接等待超时的时间
maxWait: 60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
# 打开PSCache,并且指定每个连接上PSCache的大小
poolPreparedStatements: true
maxPoolPreparedStatementPerConnectionSize: 20
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filters: stat,slf4j
filter:
wall:
config:
none-base-statement-allow: true
multi-statement-allow: true
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
datasource:
master:
url: jdbc:mysql://192.168.50.9:2212/otd?useUnicode=true&allowMultiQueries=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&serverTimezone=Asia/Shanghai&useSSL=false
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
# 多数据源配置
#multi-datasource1:
#url: jdbc:mysql://localhost:3306/jeecg-boot2?useUnicode=true&characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
#username: root
#password: root
#driver-class-name: com.mysql.cj.jdbc.Driver
#redis 配置
redis:
database: 9
host: 192.168.50.9
port: 7379
password: 'zzboard'
main:
allow-circular-references: true
#rabbitmq 配置
rabbitmq:
host: 192.168.50.9
port: 5672
virtual-host: /qomoflow-dev
username: admin
password: kncloud
connection-timeout: 5000
listener:
simple:
concurrency: 5 # 并发数量
max-concurrency: 10 # 最大并发数量
acknowledge-mode: manual # 开启手动签收
prefetch: 1 # 限制每次只消费一个(一个线程)
#mybatis plus 设置
mybatis-plus:
mapper-locations: classpath*:org/jeecg/modules/**/xml/*Mapper.xml,classpath*:/mapper/*.xml,classpath*:com/zzsmart/qomo/**/mapper/xml/*.xml
global-config:
# 关闭MP3.0自带的banner
banner: false
db-config:
#主键类型 0:"数据库ID自增",1:"该类型为未设置主键类型", 2:"用户输入ID",3:"全局唯一ID (数字类型唯一ID)", 4:"全局唯一ID UUID",5:"字符串全局唯一ID (idWorker 的字符串表示)";
id-type: ASSIGN_ID
# 默认数据库表下划线命名
table-underline: true
configuration:
# 这个配置会将执行的sql打印出来,在开发或测试的时候可以用
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
# log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
# 返回类型为Map,显示null对应的字段
call-setters-on-nulls: true
#jeecg专用配置
minidao:
base-package: org.jeecg.modules.jmreport.*,org.jeecg.modules.drag.*
jeecg:
# 是否启用安全模式
safeMode: false
# 签名密钥串(前后端要一致,正式发布请自行修改)
signatureSecret: dd05f1c54d63749eda95f9fa6d49v442a
# 签名拦截接口
signUrls: /sys/dict/getDictItems/*,/sys/dict/loadDict/*,/sys/dict/loadDictOrderByValue/*,/sys/dict/loadDictItem/*,/sys/dict/loadTreeData,/sys/api/queryTableDictItemsByCode,/sys/api/queryFilterTableDictInfo,/sys/api/queryTableDictByKeys,/sys/api/translateDictFromTable,/sys/api/translateDictFromTableByKeys
#local、minio、alioss
uploadType: local
# 前端访问地址
domainUrl:
pc: http://localhost:3100
app: http://localhost:8051
path:
#文件上传根目录 设置
upload: /opt/upFiles
#webapp文件路径
webapp: /opt/webapp
shiro:
# excludeUrls: /test/jeecgDemo/demo3,/test/jeecgDemo/redisDemo/**,/category/**,/visual/**,/map/**,/jmreport/bigscreen2/**,/api/getUserInfo,/sys/sysDepart/**,/taskSocket/**,/flowSocket/**
excludeUrls: /**/**,/**/**/**
#阿里云oss存储和大鱼短信秘钥配置
oss:
accessKey: ??
secretKey: ??
endpoint: oss-cn-beijing.aliyuncs.com
bucketName: jeecgdev
minio:
minio_url: http://192.168.50.102:9000
minio_name: admin
minio_pass: minioadmin
bucketName: bucket803
# ElasticSearch 6设置
elasticsearch:
cluster-name: elasticsearch-cluster
cluster-nodes: 192.168.50.9:9200
check-enabled: false
task-data-index: task_data_dev/_doc
task-data-struct-index: task_data_struct_dev/_doc
task-data-temp-index: task_data_temp_dev/_doc
task-log-index: task_log_dev/_doc
# 在线预览文件服务器地址配置
file-view-domain: http://fileview.jeecg.com
# minio文件上传
# minio:
# minio_url: http://minio.jeecg.com
# minio_name: ??
# minio_pass: ??
# bucketName: otatest
#大屏报表参数设置
jmreport:
mode: dev
#数据字典是否进行saas数据隔离,自己看自己的字典
saas: false
#xxl-job配置
xxljob:
enabled: false
adminAddresses: http://127.0.0.1:9080/xxl-job-admin
appname: ${spring.application.name}
accessToken: ''
address: 127.0.0.1:30007
ip: 127.0.0.1
port: 30007
logPath: logs/jeecg/job/jobhandler/
logRetentionDays: 30
#分布式锁配置
redisson:
address: 127.0.0.1:6379
password:
type: STANDALONE
enabled: true
#cas单点登录
cas:
server:
host:
#CAS服务地址
url: http://192.168.50.9:8167/cas
#Mybatis输出sql日志
logging:
level:
org.jeecg.modules.system.mapper: info
#swagger
knife4j:
#开启增强配置
enable: true
#开启生产环境屏蔽
production: false
basic:
enable: false
username: jeecg
password: jeecg1314
#第三方登录
justauth:
enabled: true
type:
GITHUB:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/github/callback
WECHAT_ENTERPRISE:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/wechat_enterprise/callback
agent-id: ??
DINGTALK:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/dingtalk/callback
WECHAT_OPEN:
client-id: ??
client-secret: ??
redirect-uri: http://sso.test.com:8080/jeecg-boot/sys/thirdLogin/wechat_open/callback
cache:
type: default
prefix: 'demo::'
timeout: 1h
#第三方APP对接
third-app:
enabled: false
type:
#企业微信
WECHAT_ENTERPRISE:
enabled: false
#CORP_ID
client-id: ??
#SECRET
client-secret: ??
#自建应用id
agent-id: ??
#自建应用秘钥(新版企微需要配置)
# agent-app-secret: ??
#钉钉
DINGTALK:
enabled: false
# appKey
client-id: ??
# appSecret
client-secret: ??
agent-id: ??
spark:
app:
name: yl
home: 127.0.0.1
master:
uri: local[*]
driver:
memory: 2g
worker:
memory: 2g
executor:
memory: 1g
rpc:
message:
maxSize: 1024
flowable:
process:
definition-cache-limit: -1
database-schema-update: true
activity-font-name: 宋体
label-font-name: 宋体
annotation-font-name: 宋体
#关闭定时任务JOB
async-executor-activate: false
#消息链接基地址
message-base-url: http://192.168.50.9:3000/flowable/task/record/
Qomo:
version: @project.version@
modelPath: /opt/services/deploy-jars/algo/model
seaTunnelHome: /opt/service/apache-seatunnel-2.3.4
hiveMetastoreUri: thrift://192.168.50.102:9083
minio:
server: http://192.168.50.102
port: 9000
access-key: admin
secret-key: minioadmin
bucketName: bucket1
condaEnv: py310
analysis:
consistency:
url: http://192.168.50.9:1314/analysis
@@ -0,0 +1,5 @@
spring:
application:
name: qomo-forecast
profiles:
active: dev
@@ -0,0 +1,29 @@
#code_generate_project_path
project_path=E:\\workspace\\qomoai
#bussi_package[User defined]
bussi_package=com.zzsmart.qomo.modules.demo
#default code path
#source_root_package=src
#webroot_package=WebRoot
#maven code path
source_root_package=src.main.java
webroot_package=src.main.webapp
#ftl resource url
templatepath=/jeecg/code-template
system_encoding=utf-8
#db Table id [User defined]
db_table_id=id
#db convert flag[true/false]
db_filed_convert=true
#page Search Field num [User defined]
page_search_filed_num=1
#page_filter_fields
page_filter_fields=create_time,create_by,update_time,update_by
exclude_table=act_,ext_act_,design_,onl_,sys_,qrtz_
@@ -0,0 +1,27 @@
#mysql
diver_name=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/qomo?useUnicode=true&characterEncoding=UTF-8
username=root
password=root
database_name=qomo
#oracle
#diver_name=oracle.jdbc.driver.OracleDriver
#url=jdbc:oracle:thin:@192.168.1.200:1521:ORCL
#username=scott
#password=tiger
#database_name=ORCL
#postgre
#diver_name=org.postgresql.Driver
#url=jdbc:postgresql://localhost:5432/qomo
#username=postgres
#password=postgres
#database_name=qomo
#SQLServer2005以上
#diver_name=org.hibernate.dialect.SQLServerDialect
#url=jdbc:sqlserver://192.168.1.200:1433;DatabaseName=qomo
#username=sa
#password=SA
#database_name=qomo
@@ -0,0 +1,96 @@
ALTER TABLE `sys_permission`
ADD COLUMN `type` varchar(255) NULL COMMENT '类型 CDM 公共层 ADS 应用层' AFTER `middle`;
CREATE TABLE `sys_application`
(
`id` varchar(255) NOT NULL COMMENT '主键',
`app_name` varchar(255) NULL COMMENT '应用名称',
`app_code` varchar(255) NULL COMMENT '应用编码',
`app_icon` varchar(255) NULL COMMENT '应用图标',
`app_color` varchar(255) NULL COMMENT '应用颜色',
`app_belong` varchar(255) NULL COMMENT '应用所属',
`app_kind` varchar(255) NULL COMMENT '应用种类',
`app_type` varchar(255) NULL COMMENT '应用类型',
`function_module` varchar(255) NULL COMMENT '功能模块',
`main_menu_url` varchar(255) NULL COMMENT '主菜单路径',
`main_menu_name` varchar(255) NULL COMMENT '主菜单名称',
`sort` int NULL COMMENT '排序',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'creator id',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT 'create time',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'updator id',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT 'update time',
PRIMARY KEY (`id`)
) COMMENT = '系统应用表';
CREATE TABLE `sys_app_menu`
(
`id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键',
`app_id` varchar(255) NULL COMMENT '应用id',
`menu_id` varchar(255) NULL COMMENT '菜单id',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'creator id',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT 'create time',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'updator id',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT 'update time',
PRIMARY KEY (`id`)
) COMMENT = '应用菜单';
ALTER TABLE `qomo_database_file`
ADD COLUMN `record_count` bigint NULL COMMENT '记录数' AFTER `absolute_path`;
CREATE TABLE `qomo_python_package` (
`id` varchar(255) NOT NULL COMMENT '主键',
`package_name` varchar(255) NULL COMMENT '包名',
`version` varchar(255) NULL COMMENT '版本',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'creator id',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT 'create time',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'updator id',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT 'update time',
PRIMARY KEY (`id`)
) COMMENT = 'python包管理';
CREATE TABLE `sys_org` (
`id` varchar(255) NOT NULL COMMENT 'ID',
`org_name` varchar(255) NULL COMMENT '组织名称',
`org_code` varchar(255) NULL COMMENT '组织编码',
`org_Industry` varchar(255) NULL COMMENT '所属行业',
`org_scale` varchar(255) NULL COMMENT '公司规模',
`org_addr` varchar(255) NULL COMMENT '公司地址',
`org_logo` varchar(255) NULL COMMENT '组织logo',
`org_state` varchar(255) NULL COMMENT '公司状态',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'creator id',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT 'create time',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'updator id',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT 'update time',
PRIMARY KEY (`id`)
) COMMENT = '组织';
CREATE TABLE `sys_app_org` (
`id` varchar(255) NOT NULL COMMENT 'ID',
`app_id` varchar(255) NULL COMMENT '应用ID',
`org_id` varchar(255) NULL COMMENT '组织ID',
`create_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'creator id',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT 'create time',
`update_by` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'updator id',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT 'update time',
PRIMARY KEY (`id`)
) COMMENT = '应用组织关联表';
# 2024-03-27
ALTER TABLE `sys_org`
ADD COLUMN `org_desc` varchar(255) NULL COMMENT '描述' AFTER `org_state`;
# 2024-03-29
ALTER TABLE `sys_depart`
MODIFY COLUMN `org_category` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT '1' COMMENT '机构类别 1公司,2组织机构,2岗位' AFTER `description`,
ADD COLUMN `org_id` varchar(255) NULL COMMENT '组织ID' AFTER `org_code`,
ADD COLUMN `depart_code` varchar(255) NULL COMMENT '组织ID' AFTER `org_code`;
ALTER TABLE `sys_role`
ADD COLUMN `org_id` varchar(255) NULL COMMENT '组织ID' AFTER `role_code`;
ALTER TABLE `sys_user`
ADD COLUMN `org_id` varchar(255) NULL COMMENT '组织ID' AFTER `bpm_status`;
ALTER TABLE `sys_user`
ADD COLUMN `depart_code` varchar(255) NULL COMMENT '登录会话的部门编码' AFTER `org_code`;
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
<!-- <include file="liquibase/changelogs/qomo-boot-init.sql" relativeToChangelogFile="false"/>-->
<!-- <include file="liquibase/changelogs/change.sql" relativeToChangelogFile="false"/>-->
</databaseChangeLog>
+43
View File
@@ -0,0 +1,43 @@
<?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>
<groupId>com.zzsmart.qomo</groupId>
<artifactId>qomo-kn-forecast</artifactId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>qomo-kn-cost-manage</artifactId>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.qomo.boot</groupId>
<artifactId>qomo-system-biz</artifactId>
<version>2.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.1</version>
</dependency>
</dependencies>
</project>
@@ -0,0 +1,48 @@
package com.zzsmart.qomo.kn.cost.manage.constants;
import cn.hutool.core.collection.CollUtil;
import java.util.List;
/**
* @author WangBo
* @since 2024/5/17 下午3:05
*/
public interface Constants {
String TRACK = "轨道总部";
List<String> BUSINESS_SEGMENTS = CollUtil.newArrayList("国内业务", "维保业务", "海外业务", "安全门业务", "汽车门业务", "内装业务");
List<String> PROFIT_ITEM_NAMES = CollUtil.newArrayList(
"一、营业总收入",
"其中:营业成本",
"税金及附加",
"销售费用",
"管理费用",
"研发费用",
"财务费用",
"二、营业总成本",
"加:其他收益",
"投资收益(损失以“-”号填列)",
"公允价值变动收益(损失以“-”号填列)",
"信用减值损失(损失以“-”号填列)",
"资产减值损失(损失以“-”号填列)",
"资产处置收益(损失以“-”号填列)",
"三、营业利润",
"加:营业外收入",
"减:营业外支出",
"四、利润总额",
"减:所得税费用",
"五、净利润",
"六、归属于母公司的净利润",
"八、关键指标",
"产品毛利率",
"期间费用",
"期间费用率",
"净利率");
/**
* 下划线
*/
String UNDER_LINE = "_";
}
@@ -0,0 +1,180 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.zzsmart.qomo.kn.cost.manage.entity.BudgetPrice;
import com.zzsmart.qomo.kn.cost.manage.service.IBudgetPriceService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: budget_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Api(tags="预算价格")
@RestController
@RequestMapping("//budgetPrice")
@Slf4j
public class BudgetPriceController extends JeecgController<BudgetPrice, IBudgetPriceService> {
@Autowired
private IBudgetPriceService budgetPriceService;
/**
* 分页列表查询
*
* @param budgetPrice
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "budget_price-分页列表查询")
@ApiOperation(value="budget_price-分页列表查询", notes="budget_price-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<BudgetPrice>> queryPageList(BudgetPrice budgetPrice,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<BudgetPrice> queryWrapper = QueryGenerator.initQueryWrapper(budgetPrice, req.getParameterMap());
Page<BudgetPrice> page = new Page<BudgetPrice>(pageNo, pageSize);
IPage<BudgetPrice> pageList = budgetPriceService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param budgetPrice
* @return
*/
@AutoLog(value = "budget_price-添加")
@ApiOperation(value="budget_price-添加", notes="budget_price-添加")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:budget_price:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody BudgetPrice budgetPrice) {
budgetPriceService.save(budgetPrice);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param budgetPrice
* @return
*/
@AutoLog(value = "budget_price-编辑")
@ApiOperation(value="budget_price-编辑", notes="budget_price-编辑")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:budget_price:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.POST})
public Result<String> edit(@RequestBody BudgetPrice budgetPrice) {
budgetPriceService.updateById(budgetPrice);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "budget_price-通过id删除")
@ApiOperation(value="budget_price-通过id删除", notes="budget_price-通过id删除")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:budget_price:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
budgetPriceService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "budget_price-批量删除")
@ApiOperation(value="budget_price-批量删除", notes="budget_price-批量删除")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:budget_price:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.budgetPriceService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "budget_price-通过id查询")
@ApiOperation(value="budget_price-通过id查询", notes="budget_price-通过id查询")
@GetMapping(value = "/queryById")
public Result<BudgetPrice> queryById(@RequestParam(name="id",required=true) String id) {
BudgetPrice budgetPrice = budgetPriceService.getById(id);
if(budgetPrice==null) {
return Result.error("未找到对应数据");
}
return Result.OK(budgetPrice);
}
/**
* 导出excel
*
* @param request
* @param budgetPrice
*/
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:budget_price:exportXls")
@GetMapping(value = "/exportXls")
@ApiOperation(value="导出excel", notes="导出excel")
public ModelAndView exportXls(HttpServletRequest request, BudgetPrice budgetPrice) {
return super.exportXls(request, budgetPrice, BudgetPrice.class, "budget_price");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
@ApiOperation(value="excel导入数据", notes="excel导入数据")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:budget_price:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, BudgetPrice.class);
}
}
@@ -0,0 +1,182 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.zzsmart.qomo.kn.cost.manage.entity.C7525cost;
import com.zzsmart.qomo.kn.cost.manage.service.IC7525costService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: c7525cost
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
@Api(tags="7525单价")
@RestController
@RequestMapping("//c7525cost")
@Slf4j
public class C7525costController extends JeecgController<C7525cost, IC7525costService> {
@Autowired
private IC7525costService c7525costService;
/**
* 分页列表查询
*
* @param c7525cost
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "c7525cost-分页列表查询")
@ApiOperation(value="c7525cost-分页列表查询", notes="c7525cost-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<C7525cost>> queryPageList(C7525cost c7525cost,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<C7525cost> queryWrapper = QueryGenerator.initQueryWrapper(c7525cost, req.getParameterMap());
Page<C7525cost> page = new Page<C7525cost>(pageNo, pageSize);
IPage<C7525cost> pageList = c7525costService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param c7525cost
* @return
*/
@AutoLog(value = "c7525cost-添加")
@ApiOperation(value="c7525cost-添加", notes="c7525cost-添加")
// @RequiresPermissions(":c7525cost:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody C7525cost c7525cost) {
c7525costService.save(c7525cost);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param c7525cost
* @return
*/
@AutoLog(value = "c7525cost-编辑")
@ApiOperation(value="c7525cost-编辑", notes="c7525cost-编辑")
// @RequiresPermissions(":c7525cost:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody C7525cost c7525cost) {
c7525costService.updateById(c7525cost);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "c7525cost-通过id删除")
@ApiOperation(value="c7525cost-通过id删除", notes="c7525cost-通过id删除")
// @RequiresPermissions(":c7525cost:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
c7525costService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "c7525cost-批量删除")
@ApiOperation(value="c7525cost-批量删除", notes="c7525cost-批量删除")
// @RequiresPermissions(":c7525cost:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.c7525costService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "c7525cost-通过id查询")
@ApiOperation(value="c7525cost-通过id查询", notes="c7525cost-通过id查询")
@GetMapping(value = "/queryById")
public Result<C7525cost> queryById(@RequestParam(name="id",required=true) String id) {
C7525cost c7525cost = c7525costService.getById(id);
if(c7525cost==null) {
return Result.error("未找到对应数据");
}
return Result.OK(c7525cost);
}
/**
* 导出excel
*
* @param request
* @param c7525cost
*/
// @RequiresPermissions(":c7525cost:exportXls")
@ApiOperation(value="c7525cost-导出excel", notes="c7525cost-导出excel")
@RequestMapping(value = "/exportXls", method = RequestMethod.GET)
public ModelAndView exportXls(HttpServletRequest request, C7525cost c7525cost) {
return super.exportXls(request, c7525cost, C7525cost.class, "c7525cost");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
// @RequiresPermissions(":c7525cost:importExcel")
@ApiOperation(value="c7525cost-通过excel导入数据", notes="c7525cost-通过excel导入数据")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, C7525cost.class);
}
}
@@ -0,0 +1,178 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.zzsmart.qomo.kn.cost.manage.entity.CostCenter;
import com.zzsmart.qomo.kn.cost.manage.service.ICostCenterService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: cost_center
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Api(tags="成本中心")
@RestController
@RequestMapping("/com.zzsmart.qomo.kn.cost.manage/costCenter")
@Slf4j
public class CostCenterController extends JeecgController<CostCenter, ICostCenterService> {
@Autowired
private ICostCenterService costCenterService;
/**
* 分页列表查询
*
* @param costCenter
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "cost_center-分页列表查询")
@ApiOperation(value="cost_center-分页列表查询", notes="cost_center-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<CostCenter>> queryPageList(CostCenter costCenter,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<CostCenter> queryWrapper = QueryGenerator.initQueryWrapper(costCenter, req.getParameterMap());
Page<CostCenter> page = new Page<CostCenter>(pageNo, pageSize);
IPage<CostCenter> pageList = costCenterService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param costCenter
* @return
*/
@AutoLog(value = "cost_center-添加")
@ApiOperation(value="cost_center-添加", notes="cost_center-添加")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:cost_center:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody CostCenter costCenter) {
costCenterService.save(costCenter);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param costCenter
* @return
*/
@AutoLog(value = "cost_center-编辑")
@ApiOperation(value="cost_center-编辑", notes="cost_center-编辑")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:cost_center:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody CostCenter costCenter) {
costCenterService.updateById(costCenter);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "cost_center-通过id删除")
@ApiOperation(value="cost_center-通过id删除", notes="cost_center-通过id删除")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:cost_center:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
costCenterService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "cost_center-批量删除")
@ApiOperation(value="cost_center-批量删除", notes="cost_center-批量删除")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:cost_center:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.costCenterService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "cost_center-通过id查询")
@ApiOperation(value="cost_center-通过id查询", notes="cost_center-通过id查询")
@GetMapping(value = "/queryById")
public Result<CostCenter> queryById(@RequestParam(name="id",required=true) String id) {
CostCenter costCenter = costCenterService.getById(id);
if(costCenter==null) {
return Result.error("未找到对应数据");
}
return Result.OK(costCenter);
}
/**
* 导出excel
*
* @param request
* @param costCenter
*/
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:cost_center:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, CostCenter costCenter) {
return super.exportXls(request, costCenter, CostCenter.class, "cost_center");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:cost_center:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, CostCenter.class);
}
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 物料bom 前端控制器
* </p>
*
* @author
* @since 2024-06-19
*/
@RestController
@RequestMapping("/cost-material-bom")
public class CostMaterialBomController {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 物料工时工序表 前端控制器
* </p>
*
* @author
* @since 2024-06-19
*/
@RestController
@RequestMapping("/cost-material-process-hours")
public class CostMaterialProcessHoursController {
}
@@ -0,0 +1,179 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.zzsmart.qomo.kn.cost.manage.entity.CostPartMissingInfo;
import com.zzsmart.qomo.kn.cost.manage.service.ICostPartMissingInfoService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: 标准成本-部件缺失信息
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Api(tags="标准成本-部件缺失信息")
@RestController
@RequestMapping("//costPartMissingInfo")
@Slf4j
public class CostPartMissingInfoController extends JeecgController<CostPartMissingInfo, ICostPartMissingInfoService> {
@Autowired
private ICostPartMissingInfoService costPartMissingInfoService;
/**
* 分页列表查询
*
* @param costPartMissingInfo
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "cost_part_missing_info-分页列表查询")
@ApiOperation(value="cost_part_missing_info-分页列表查询", notes="cost_part_missing_info-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<CostPartMissingInfo>> queryPageList(CostPartMissingInfo costPartMissingInfo,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<CostPartMissingInfo> queryWrapper = QueryGenerator.initQueryWrapper(costPartMissingInfo, req.getParameterMap());
Page<CostPartMissingInfo> page = new Page<CostPartMissingInfo>(pageNo, pageSize);
IPage<CostPartMissingInfo> pageList = costPartMissingInfoService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param costPartMissingInfo
* @return
*/
@AutoLog(value = "cost_part_missing_info-添加")
@ApiOperation(value="cost_part_missing_info-添加", notes="cost_part_missing_info-添加")
// @RequiresPermissions(":cost_part_missing_info:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody CostPartMissingInfo costPartMissingInfo) {
costPartMissingInfoService.save(costPartMissingInfo);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param costPartMissingInfo
* @return
*/
@AutoLog(value = "cost_part_missing_info-编辑")
@ApiOperation(value="cost_part_missing_info-编辑", notes="cost_part_missing_info-编辑")
// @RequiresPermissions(":cost_part_missing_info:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody CostPartMissingInfo costPartMissingInfo) {
costPartMissingInfoService.updateById(costPartMissingInfo);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "cost_part_missing_info-通过id删除")
@ApiOperation(value="cost_part_missing_info-通过id删除", notes="cost_part_missing_info-通过id删除")
// @RequiresPermissions(":cost_part_missing_info:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
costPartMissingInfoService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "cost_part_missing_info-批量删除")
@ApiOperation(value="cost_part_missing_info-批量删除", notes="cost_part_missing_info-批量删除")
// @RequiresPermissions(":cost_part_missing_info:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.costPartMissingInfoService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "cost_part_missing_info-通过id查询")
@ApiOperation(value="cost_part_missing_info-通过id查询", notes="cost_part_missing_info-通过id查询")
@GetMapping(value = "/queryById")
public Result<CostPartMissingInfo> queryById(@RequestParam(name="id",required=true) String id) {
CostPartMissingInfo costPartMissingInfo = costPartMissingInfoService.getById(id);
if(costPartMissingInfo==null) {
return Result.error("未找到对应数据");
}
return Result.OK(costPartMissingInfo);
}
/**
* 导出excel
*
* @param request
* @param costPartMissingInfo
*/
// @RequiresPermissions(":cost_part_missing_info:exportXls")
@RequestMapping(value = "/exportXls",method = RequestMethod.GET)
public ModelAndView exportXls(HttpServletRequest request, CostPartMissingInfo costPartMissingInfo) {
return super.exportXls(request, costPartMissingInfo, CostPartMissingInfo.class, "cost_part_missing_info");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
// @RequiresPermissions(":cost_part_missing_info:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, CostPartMissingInfo.class);
}
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 物料采购单价 前端控制器
* </p>
*
* @author
* @since 2024-06-19
*/
@RestController
@RequestMapping("/cost-purchase-price")
public class CostPurchasePriceController {
}
@@ -0,0 +1,237 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.io.InputStream;
import java.net.URL;
import java.net.URLEncoder;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandard;
import com.zzsmart.qomo.kn.cost.manage.service.ICostStandardService;
import com.zzsmart.qomo.kn.cost.manage.vo.CostStandardVO;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: 标准成本
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Api(tags="标准成本计算")
@RestController
@RequestMapping("//costStandard")
@Slf4j
public class CostStandardController extends JeecgController<CostStandard, ICostStandardService> {
@Autowired
private ICostStandardService costStandardService;
/**
* 分页列表查询
*
* @param costStandard
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "cost_standard-分页列表查询")
@ApiOperation(value="cost_standard-分页列表查询", notes="cost_standard-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<CostStandardVO>> queryPageList(CostStandardVO costStandard,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
Page<CostStandardVO> page = new Page<CostStandardVO>(pageNo, pageSize);
IPage<CostStandardVO> pageList = costStandardService.pageList(page, costStandard);
return Result.OK(pageList);
}
/**
* 添加
*
* @param costStandard
* @return
*/
@AutoLog(value = "cost_standard-添加")
@ApiOperation(value="cost_standard-添加", notes="cost_standard-添加")
// @RequiresPermissions(":cost_standard:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody CostStandard costStandard) {
costStandardService.save(costStandard);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param costStandard
* @return
*/
@AutoLog(value = "cost_standard-编辑")
@ApiOperation(value="cost_standard-编辑", notes="cost_standard-编辑")
// @RequiresPermissions(":cost_standard:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody CostStandard costStandard) {
costStandardService.updateById(costStandard);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "cost_standard-通过id删除")
@ApiOperation(value="cost_standard-通过id删除", notes="cost_standard-通过id删除")
// @RequiresPermissions(":cost_standard:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
costStandardService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "cost_standard-批量删除")
@ApiOperation(value="cost_standard-批量删除", notes="cost_standard-批量删除")
// @RequiresPermissions(":cost_standard:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.costStandardService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "cost_standard-通过id查询")
@ApiOperation(value="cost_standard-通过id查询", notes="cost_standard-通过id查询")
@GetMapping(value = "/queryById")
public Result<CostStandard> queryById(@RequestParam(name="id",required=true) String id) {
CostStandard costStandard = costStandardService.getById(id);
if(costStandard==null) {
return Result.error("未找到对应数据");
}
return Result.OK(costStandard);
}
/**
* 导出excel
*
* @param request
* @param costStandard
*/
// @RequiresPermissions(":cost_standard:exportXls")
@RequestMapping(value = "/exportXls", method = RequestMethod.GET)
public ModelAndView exportXls(HttpServletRequest request, CostStandard costStandard) {
return super.exportXls(request, costStandard, CostStandard.class, "cost_standard");
}
/**
* 通过excel导入数据并进行批量计算
*
* @param request
* @param response
* @return
*/
// @RequiresPermissions(":cost_standard:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, CostStandard.class);
}
@GetMapping("/download/excel-template")
public void downloadExcel(HttpServletResponse response) throws IOException {
// 创建工作簿
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet("生变成版本号导入模板");
// 创建表头行
Row headerRow = sheet.createRow(0);
// 设置字体
Font headerFont = workbook.createFont();
headerFont.setBold(true); // 设置字体为加粗
// headerFont.setFontHeightInPoints((short) 14); // 设置字体大小
CellStyle headerCellStyle = workbook.createCellStyle();
headerCellStyle.setFont(headerFont);
Cell firstCell = headerRow.createCell(0);
firstCell.setCellStyle(headerCellStyle);
firstCell.setCellValue("物料号");
Cell secondCell = headerRow.createCell(1);
secondCell.setCellStyle(headerCellStyle);
secondCell.setCellValue("图号");
Cell thirdCell = headerRow.createCell(2);
thirdCell.setCellStyle(headerCellStyle);
thirdCell.setCellValue("项目阶段");
// 设置下拉列表数据
DataValidationHelper validationHelper = sheet.getDataValidationHelper();
DataValidationConstraint constraint = validationHelper.createExplicitListConstraint(
new String[]{"初始","首批","量产"}); // 下拉列表的选项
// 应用下拉列表到第三列(索引为2)
CellRangeAddressList addressList = new CellRangeAddressList(1, 65535, 2, 2); // 从第二行开始到第101行,第三列
DataValidation validation = validationHelper.createValidation(constraint, addressList);
sheet.addValidationData(validation);
// 设置响应头
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setHeader("Content-Disposition", "attachment; filename=example-template.xlsx");
// 将工作簿写入输出流
workbook.write(response.getOutputStream());
workbook.close();
response.flushBuffer();
}
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 标准成本明细表 前端控制器
* </p>
*
* @author cost_purchase_price
* @since 2024-06-19
*/
@RestController
@RequestMapping("/cost-standard-detail")
public class CostStandardDetailController {
}
@@ -0,0 +1,185 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandard;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandardVersion;
import com.zzsmart.qomo.kn.cost.manage.service.ICostStandardVersionService;
import com.zzsmart.qomo.kn.cost.manage.vo.CostStandardVO;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: 标准成本-版本号
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Api(tags="标准成本-版本号")
@RestController
@RequestMapping("//costStandardVersion")
@Slf4j
public class CostStandardVersionController extends JeecgController<CostStandardVersion, ICostStandardVersionService> {
@Autowired
private ICostStandardVersionService costStandardVersionService;
/**
* 分页列表查询
*
* @param costStandardVersion
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "cost_standard_version-分页列表查询")
@ApiOperation(value="cost_standard_version-分页列表查询", notes="cost_standard_version-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<CostStandardVersion>> queryPageList(CostStandardVersion costStandardVersion,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<CostStandardVersion> queryWrapper = QueryGenerator.initQueryWrapper(costStandardVersion, req.getParameterMap());
Page<CostStandardVersion> page = new Page<CostStandardVersion>(pageNo, pageSize);
IPage<CostStandardVersion> pageList = costStandardVersionService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param costStandardVersion
* @return
*/
@AutoLog(value = "cost_standard_version-添加")
@ApiOperation(value="cost_standard_version-添加", notes="cost_standard_version-添加")
// @RequiresPermissions(":cost_standard_version:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody CostStandardVersion costStandardVersion) {
boolean save = costStandardVersionService.save(costStandardVersion);
if(save){
return Result.OK("添加成功!");
}else {
return Result.OK("添加失败!");
}
}
/**
* 编辑
*
* @param costStandardVersion
* @return
*/
@AutoLog(value = "cost_standard_version-编辑")
@ApiOperation(value="cost_standard_version-编辑", notes="cost_standard_version-编辑")
// @RequiresPermissions(":cost_standard_version:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody CostStandardVersion costStandardVersion) {
costStandardVersionService.updateById(costStandardVersion);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "cost_standard_version-通过id删除")
@ApiOperation(value="cost_standard_version-通过id删除", notes="cost_standard_version-通过id删除")
// @RequiresPermissions(":cost_standard_version:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
costStandardVersionService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "cost_standard_version-批量删除")
@ApiOperation(value="cost_standard_version-批量删除", notes="cost_standard_version-批量删除")
// @RequiresPermissions(":cost_standard_version:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.costStandardVersionService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "cost_standard_version-通过id查询")
@ApiOperation(value="cost_standard_version-通过id查询", notes="cost_standard_version-通过id查询")
@GetMapping(value = "/queryById")
public Result<CostStandardVersion> queryById(@RequestParam(name="id",required=true) String id) {
CostStandardVersion costStandardVersion = costStandardVersionService.getById(id);
if(costStandardVersion==null) {
return Result.error("未找到对应数据");
}
return Result.OK(costStandardVersion);
}
/**
* 导出excel
*
* @param request
* @param costStandardVersion
*/
// @RequiresPermissions(":cost_standard_version:exportXls")
@RequestMapping(value = "/exportXls", method = RequestMethod.GET)
public ModelAndView exportXls(HttpServletRequest request, CostStandardVersion costStandardVersion) {
return super.exportXls(request, costStandardVersion, CostStandardVersion.class, "cost_standard_version");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
// @RequiresPermissions(":cost_standard_version:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return this.costStandardVersionService.importExcel(request, response, CostStandardVersion.class);
}
}
@@ -0,0 +1,162 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
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.zzsmart.qomo.kn.cost.manage.entity.HourRate;
import com.zzsmart.qomo.kn.cost.manage.service.IHourRateService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
/**
* @Description: hour_rate
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
@Api(tags="小时费率")
@RestController
@RequestMapping("//hourRate")
@Slf4j
public class HourRateController extends JeecgController<HourRate, IHourRateService> {
@Autowired
private IHourRateService hourRateService;
/**
* 分页列表查询
*
* @param hourRate
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "hour_rate-分页列表查询")
@ApiOperation(value="hour_rate-分页列表查询", notes="hour_rate-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<HourRate>> queryPageList(HourRate hourRate,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<HourRate> queryWrapper = QueryGenerator.initQueryWrapper(hourRate, req.getParameterMap());
Page<HourRate> page = new Page<HourRate>(pageNo, pageSize);
IPage<HourRate> pageList = hourRateService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param hourRate
* @return
*/
@AutoLog(value = "hour_rate-添加")
@ApiOperation(value="hour_rate-添加", notes="hour_rate-添加")
// @RequiresPermissions(":hour_rate:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody HourRate hourRate) {
hourRateService.save(hourRate);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param hourRate
* @return
*/
@AutoLog(value = "hour_rate-编辑")
@ApiOperation(value="hour_rate-编辑", notes="hour_rate-编辑")
// @RequiresPermissions(":hour_rate:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody HourRate hourRate) {
hourRateService.updateById(hourRate);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "hour_rate-通过id删除")
@ApiOperation(value="hour_rate-通过id删除", notes="hour_rate-通过id删除")
// @RequiresPermissions(":hour_rate:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
hourRateService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "hour_rate-批量删除")
@ApiOperation(value="hour_rate-批量删除", notes="hour_rate-批量删除")
// @RequiresPermissions(":hour_rate:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.hourRateService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "hour_rate-通过id查询")
@ApiOperation(value="hour_rate-通过id查询", notes="hour_rate-通过id查询")
@GetMapping(value = "/queryById")
public Result<HourRate> queryById(@RequestParam(name="id",required=true) String id) {
HourRate hourRate = hourRateService.getById(id);
if(hourRate==null) {
return Result.error("未找到对应数据");
}
return Result.OK(hourRate);
}
/**
* 导出excel
*
* @param request
* @param hourRate
*/
@RequiresPermissions(":hour_rate:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, HourRate hourRate) {
return super.exportXls(request, hourRate, HourRate.class, "hour_rate");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
@RequiresPermissions(":hour_rate:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, HourRate.class);
}
}
@@ -0,0 +1,180 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.zzsmart.qomo.kn.cost.manage.entity.LatestPurchasePrice;
import com.zzsmart.qomo.kn.cost.manage.service.ILatestPurchasePriceService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: latest_purchase_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Api(tags="最新采购价")
@RestController
@RequestMapping("//latestPurchasePrice")
@Slf4j
public class LatestPurchasePriceController extends JeecgController<LatestPurchasePrice, ILatestPurchasePriceService> {
@Autowired
private ILatestPurchasePriceService latestPurchasePriceService;
/**
* 分页列表查询
*
* @param latestPurchasePrice
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "latest_purchase_price-分页列表查询")
@ApiOperation(value="latest_purchase_price-分页列表查询", notes="latest_purchase_price-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<LatestPurchasePrice>> queryPageList(LatestPurchasePrice latestPurchasePrice,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<LatestPurchasePrice> queryWrapper = QueryGenerator.initQueryWrapper(latestPurchasePrice, req.getParameterMap());
Page<LatestPurchasePrice> page = new Page<LatestPurchasePrice>(pageNo, pageSize);
IPage<LatestPurchasePrice> pageList = latestPurchasePriceService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param latestPurchasePrice
* @return
*/
@AutoLog(value = "latest_purchase_price-添加")
@ApiOperation(value="latest_purchase_price-添加", notes="latest_purchase_price-添加")
// @RequiresPermissions(":latest_purchase_price:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody LatestPurchasePrice latestPurchasePrice) {
latestPurchasePriceService.save(latestPurchasePrice);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param latestPurchasePrice
* @return
*/
@AutoLog(value = "latest_purchase_price-编辑")
@ApiOperation(value="latest_purchase_price-编辑", notes="latest_purchase_price-编辑")
// @RequiresPermissions(":latest_purchase_price:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody LatestPurchasePrice latestPurchasePrice) {
latestPurchasePriceService.updateById(latestPurchasePrice);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "latest_purchase_price-通过id删除")
@ApiOperation(value="latest_purchase_price-通过id删除", notes="latest_purchase_price-通过id删除")
// @RequiresPermissions(":latest_purchase_price:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
latestPurchasePriceService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "latest_purchase_price-批量删除")
@ApiOperation(value="latest_purchase_price-批量删除", notes="latest_purchase_price-批量删除")
// @RequiresPermissions(":latest_purchase_price:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.latestPurchasePriceService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "latest_purchase_price-通过id查询")
@ApiOperation(value="latest_purchase_price-通过id查询", notes="latest_purchase_price-通过id查询")
@GetMapping(value = "/queryById")
public Result<LatestPurchasePrice> queryById(@RequestParam(name="id",required=true) String id) {
LatestPurchasePrice latestPurchasePrice = latestPurchasePriceService.getById(id);
if(latestPurchasePrice==null) {
return Result.error("未找到对应数据");
}
return Result.OK(latestPurchasePrice);
}
/**
* 导出excel
*
* @param request
* @param latestPurchasePrice
*/
@RequiresPermissions(":latest_purchase_price:exportXls")
@RequestMapping(value = "/exportXls", method = RequestMethod.GET)
public ModelAndView exportXls(HttpServletRequest request, LatestPurchasePrice latestPurchasePrice) {
return super.exportXls(request, latestPurchasePrice, LatestPurchasePrice.class, "latest_purchase_price");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
// @RequiresPermissions(":latest_purchase_price:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, LatestPurchasePrice.class);
}
}
@@ -0,0 +1,181 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.zzsmart.qomo.kn.cost.manage.entity.ProduceBatch;
import com.zzsmart.qomo.kn.cost.manage.service.IProduceBatchService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: produce_batch
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Api(tags="生产批量设置")
@RestController
@RequestMapping("//produceBatch")
@Slf4j
public class ProduceBatchController extends JeecgController<ProduceBatch, IProduceBatchService> {
@Autowired
private IProduceBatchService produceBatchService;
/**
* 分页列表查询
*
* @param produceBatch
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "produce_batch-分页列表查询")
@ApiOperation(value="produce_batch-分页列表查询", notes="produce_batch-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<ProduceBatch>> queryPageList(ProduceBatch produceBatch,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<ProduceBatch> queryWrapper = QueryGenerator.initQueryWrapper(produceBatch, req.getParameterMap());
Page<ProduceBatch> page = new Page<ProduceBatch>(pageNo, pageSize);
IPage<ProduceBatch> pageList = produceBatchService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param produceBatch
* @return
*/
@AutoLog(value = "produce_batch-添加")
@ApiOperation(value="produce_batch-添加", notes="produce_batch-添加")
// @RequiresPermissions(":produce_batch:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody ProduceBatch produceBatch) {
produceBatchService.save(produceBatch);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param produceBatch
* @return
*/
@AutoLog(value = "produce_batch-编辑")
@ApiOperation(value="produce_batch-编辑", notes="produce_batch-编辑")
// @RequiresPermissions(":produce_batch:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody ProduceBatch produceBatch) {
produceBatchService.updateById(produceBatch);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "produce_batch-通过id删除")
@ApiOperation(value="produce_batch-通过id删除", notes="produce_batch-通过id删除")
// @RequiresPermissions(":produce_batch:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
produceBatchService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "produce_batch-批量删除")
@ApiOperation(value="produce_batch-批量删除", notes="produce_batch-批量删除")
// @RequiresPermissions(":produce_batch:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.produceBatchService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "produce_batch-通过id查询")
@ApiOperation(value="produce_batch-通过id查询", notes="produce_batch-通过id查询")
@GetMapping(value = "/queryById")
public Result<ProduceBatch> queryById(@RequestParam(name="id",required=true) String id) {
ProduceBatch produceBatch = produceBatchService.getById(id);
if(produceBatch==null) {
return Result.error("未找到对应数据");
}
return Result.OK(produceBatch);
}
/**
* 导出excel
*
* @param request
* @param produceBatch
*/
@RequiresPermissions(":produce_batch:exportXls")
@RequestMapping(value = "/exportXls", method = RequestMethod.GET)
public ModelAndView exportXls(HttpServletRequest request, ProduceBatch produceBatch) {
return super.exportXls(request, produceBatch, ProduceBatch.class, "produce_batch");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
// @RequiresPermissions(":produce_batch:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, ProduceBatch.class);
}
}
@@ -0,0 +1,178 @@
package com.zzsmart.qomo.kn.cost.manage.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import com.zzsmart.qomo.kn.cost.manage.entity.SapSubfactory;
import com.zzsmart.qomo.kn.cost.manage.service.ISapSubfactoryService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.apache.shiro.authz.annotation.RequiresPermissions;
/**
* @Description: sap_subfactory
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Api(tags="工厂信息")
@RestController
@RequestMapping("/com.zzsmart.qomo.kn.cost.manage/sapSubfactory")
@Slf4j
public class SapSubfactoryController extends JeecgController<SapSubfactory, ISapSubfactoryService> {
@Autowired
private ISapSubfactoryService sapSubfactoryService;
/**
* 分页列表查询
*
* @param sapSubfactory
* @param pageNo
* @param pageSize
* @param req
* @return
*/
//@AutoLog(value = "sap_subfactory-分页列表查询")
@ApiOperation(value="sap_subfactory-分页列表查询", notes="sap_subfactory-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SapSubfactory>> queryPageList(SapSubfactory sapSubfactory,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<SapSubfactory> queryWrapper = QueryGenerator.initQueryWrapper(sapSubfactory, req.getParameterMap());
Page<SapSubfactory> page = new Page<SapSubfactory>(pageNo, pageSize);
IPage<SapSubfactory> pageList = sapSubfactoryService.page(page, queryWrapper);
return Result.OK(pageList);
}
/**
* 添加
*
* @param sapSubfactory
* @return
*/
@AutoLog(value = "sap_subfactory-添加")
@ApiOperation(value="sap_subfactory-添加", notes="sap_subfactory-添加")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:sap_subfactory:add")
@PostMapping(value = "/add")
public Result<String> add(@RequestBody SapSubfactory sapSubfactory) {
sapSubfactoryService.save(sapSubfactory);
return Result.OK("添加成功!");
}
/**
* 编辑
*
* @param sapSubfactory
* @return
*/
@AutoLog(value = "sap_subfactory-编辑")
@ApiOperation(value="sap_subfactory-编辑", notes="sap_subfactory-编辑")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:sap_subfactory:edit")
@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
public Result<String> edit(@RequestBody SapSubfactory sapSubfactory) {
sapSubfactoryService.updateById(sapSubfactory);
return Result.OK("编辑成功!");
}
/**
* 通过id删除
*
* @param id
* @return
*/
@AutoLog(value = "sap_subfactory-通过id删除")
@ApiOperation(value="sap_subfactory-通过id删除", notes="sap_subfactory-通过id删除")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:sap_subfactory:delete")
@DeleteMapping(value = "/delete")
public Result<String> delete(@RequestParam(name="id",required=true) String id) {
sapSubfactoryService.removeById(id);
return Result.OK("删除成功!");
}
/**
* 批量删除
*
* @param ids
* @return
*/
@AutoLog(value = "sap_subfactory-批量删除")
@ApiOperation(value="sap_subfactory-批量删除", notes="sap_subfactory-批量删除")
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:sap_subfactory:deleteBatch")
@DeleteMapping(value = "/deleteBatch")
public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.sapSubfactoryService.removeByIds(Arrays.asList(ids.split(",")));
return Result.OK("批量删除成功!");
}
/**
* 通过id查询
*
* @param id
* @return
*/
//@AutoLog(value = "sap_subfactory-通过id查询")
@ApiOperation(value="sap_subfactory-通过id查询", notes="sap_subfactory-通过id查询")
@GetMapping(value = "/queryById")
public Result<SapSubfactory> queryById(@RequestParam(name="id",required=true) String id) {
SapSubfactory sapSubfactory = sapSubfactoryService.getById(id);
if(sapSubfactory==null) {
return Result.error("未找到对应数据");
}
return Result.OK(sapSubfactory);
}
/**
* 导出excel
*
* @param request
* @param sapSubfactory
*/
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:sap_subfactory:exportXls")
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, SapSubfactory sapSubfactory) {
return super.exportXls(request, sapSubfactory, SapSubfactory.class, "sap_subfactory");
}
/**
* 通过excel导入数据
*
* @param request
* @param response
* @return
*/
//@RequiresPermissions("com.zzsmart.qomo.kn.cost.manage:sap_subfactory:importExcel")
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, SapSubfactory.class);
}
}
@@ -0,0 +1,78 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Description: budget_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Data
@TableName("budget_price")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "budget_price对象", description = "budget_price")
public class BudgetPrice implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private Integer id;
/**
* 年份
*/
@Excel(name = "年份", width = 15)
@ApiModelProperty(value = "年份")
private String year;
/**
* 物料编码
*/
@Excel(name = "物料编码", width = 15)
@ApiModelProperty(value = "物料编码")
private String materialNumber;
/**
* 物料名称
*/
@Excel(name = "物料名称", width = 15)
@ApiModelProperty(value = "物料名称")
private String materialName;
/**
* 项目编号
*/
@Excel(name = "项目编号", width = 15)
@ApiModelProperty(value = "项目编号")
private String projectNumber;
/**
* 预算价格
*/
@Excel(name = "预算价格", width = 15)
@ApiModelProperty(value = "预算价格")
private BigDecimal price;
/**
* dwerk
*/
@Excel(name = "dwerk", width = 15)
@ApiModelProperty(value = "dwerk")
private String dwerk;
/**
* posid
*/
@Excel(name = "posid", width = 15)
@ApiModelProperty(value = "posid")
private String posid;
}
@@ -0,0 +1,54 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: c7525cost
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
@Data
@TableName("c7525cost")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="c7525cost对象", description="c7525cost")
public class C7525cost implements Serializable {
private static final long serialVersionUID = 1L;
/**年份*/
@Excel(name = "年份", width = 15)
@ApiModelProperty(value = "年份")
private String year;
/**门控料号(物料id)*/
@Excel(name = "门控料号(物料id)", width = 15)
@ApiModelProperty(value = "门控料号(物料id)")
private String materialNumber;
/**物料规格信息*/
@Excel(name = "物料规格信息", width = 15)
@ApiModelProperty(value = "物料规格信息")
private String zzggxh;
/**价格*/
@Excel(name = "价格", width = 15)
@ApiModelProperty(value = "价格")
@TableField(value = "price_7525")
private BigDecimal price7525;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private Integer id;
}
@@ -0,0 +1,55 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: cost_center
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Data
@TableName("cost_center")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="cost_center对象", description="cost_center")
public class CostCenter implements Serializable {
private static final long serialVersionUID = 1L;
/**公司代码*/
@Excel(name = "公司代码", width = 15)
@ApiModelProperty(value = "公司代码")
private String companyCode;
/**成本中心代码*/
@Excel(name = "成本中心代码", width = 15)
@ApiModelProperty(value = "成本中心代码")
private String costCenterCode;
/**成本中心名称*/
@Excel(name = "成本中心名称", width = 15)
@ApiModelProperty(value = "成本中心名称")
private String costCenterName;
/**成本类型*/
@Excel(name = "成本类型", width = 15)
@ApiModelProperty(value = "成本类型")
private String costCategory;
/**状态*/
@Excel(name = "状态", width = 15)
@ApiModelProperty(value = "状态")
private String status;
}
@@ -0,0 +1,377 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
* 物料bom
* </p>
*
* @author
* @since 2024-06-19
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("cost_material_bom")
@ApiModel(value = "cost_material_bom对象", description = "cost_material_bom")
public class CostMaterialBom implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@ApiModelProperty(value = "id")
@TableId(value = "id", type = IdType.AUTO)
private String id;
/**
* 物料编码
*/
@ApiModelProperty(value = "物料编码")
@TableField("material_code")
private String materialCode;
/**
* 物料名称
*/
@ApiModelProperty(value = "物料名称")
@TableField("material_name")
private String materialName;
/**
* 父级物料编码
*/
@ApiModelProperty(value = "父级物料编码")
@TableField("parent_material_code")
private String parentMaterialCode;
/**
* 级别
*/
@ApiModelProperty(value = "级别")
@TableField("level")
private String level;
/**
* 排序
*/
@ApiModelProperty(value = "排序")
@TableField("sort")
private Integer sort;
/**
* 计量单位
*/
@ApiModelProperty(value = "计量单位")
@TableField("unit")
private String unit;
/**
* 数量
*/
@ApiModelProperty(value = "id")
@TableField("数量")
private Integer number;
/**
* 人工工时(分钟)
*/
@ApiModelProperty(value = "人工工时(分钟)")
@TableField("labor_hours")
private BigDecimal laborHours;
/**
* 设备工时
*/
@ApiModelProperty(value = "设备工时")
@TableField("device_hours")
private BigDecimal deviceHours;
/**
* 借用物料编码
*/
@ApiModelProperty(value = "借用物料编码")
@TableField("borrow_material_code")
private String borrowMaterialCode;
/**
* 参考物料编码
*/
@ApiModelProperty(value = "参考物料编码")
@TableField("refer_material_code")
private String referMaterialCode;
/**
* 采购类型
*/
@ApiModelProperty(value = "采购类型")
@TableField("purchase_type")
private String purchaseType;
/**
* 特殊采购类型
*/
@ApiModelProperty(value = "特殊采购类型")
@TableField("special_purchase_type")
private String specialPurchaseType;
/**
* 说明
*/
@ApiModelProperty(value = "说明")
@TableField("explanation")
private String explanation;
/**
* 单位数量
*/
@ApiModelProperty(value = "单位数量")
@TableField("quantity")
private BigDecimal quantity;
/**
* 重量(g)
*/
@ApiModelProperty(value = "重量(g)")
@TableField("weight")
private String weight;
/**
* 材料/牌号
*/
@ApiModelProperty(value = "材料/牌号")
@TableField("material_and_brand")
private String materialAndBrand;
/**
* 表面处理,材料
*/
@ApiModelProperty(value = "表面处理,材料")
@TableField("surface_material")
private String surfaceMaterial;
/**
* 厚度(mm)
*/
@ApiModelProperty(value = "厚度(mm)")
@TableField("surface_thickness")
private String surfaceThickness;
/**
* 表面积(mm²)
*/
@ApiModelProperty(value = "表面积(mm²)")
@TableField("surface_area")
private String surfaceArea;
/**
* 长(mm)
*/
@ApiModelProperty(value = "长(mm)")
@TableField("length")
private String length;
/**
* 宽(mm)
*/
@ApiModelProperty(value = "宽(mm)")
@TableField("width")
private String width;
/**
* 高(mm)
*/
@ApiModelProperty(value = "高(mm)")
@TableField("height")
private String height;
/**
* 图示/图档/文档 文件ID
*/
@ApiModelProperty(value = "图示/图档/文档 文件ID")
@TableField("figure_file_id")
private Long figureFileId;
/**
* 是否新模具(0否 1是)
*/
@ApiModelProperty(value = "是否新模具(0否 1是)")
@TableField("new_tooling")
private Boolean newTooling;
/**
* 成型方式(枚举)
*/
@ApiModelProperty(value = "成型方式(枚举)")
@TableField("shaping_method")
private String shapingMethod;
/**
* 作业内容
*/
@ApiModelProperty(value = "作业内容")
@TableField("work_content")
private String workContent;
/**
* 加工地点
*/
@ApiModelProperty(value = "加工地点")
@TableField("process_location")
private String processLocation;
/**
* 成本中心
*/
@ApiModelProperty(value = "成本中心")
@TableField("cost_center")
private String costCenter;
/**
* 单价(未税)
*/
@ApiModelProperty(value = "单价(未税)")
@TableField("unit_price")
private BigDecimal unitPrice;
/**
* 总价(未税)
*/
@ApiModelProperty(value = "总价(未税)")
@TableField("total_price")
private BigDecimal totalPrice;
/**
* 模具费(未税)
*/
@ApiModelProperty(value = "模具费(未税)")
@TableField("mould_price")
private BigDecimal mouldPrice;
/**
* 创建人
*/
@TableField("create_by")
private String createBy;
/**
* 创建时间
*/
@TableField("create_time")
private LocalDateTime createTime;
/**
* 修改人
*/
@TableField("update_by")
private String updateBy;
/**
* 修改时间
*/
@TableField("update_time")
private LocalDateTime updateTime;
/**
* 备注(特殊技术信息)
*/
@ApiModelProperty(value = "备注(特殊技术信息)")
@TableField("remark")
private String remark;
public static final String ID = "id";
public static final String MATERIAL_CODE = "material_code";
public static final String MATERIAL_NAME = "material_name";
public static final String PARENT_MATERIAL_CODE = "parent_material_code";
public static final String LEVEL = "level";
public static final String SORT = "sort";
public static final String UNIT = "unit";
public static final String NUMBER = "number";
public static final String LABOR_HOURS = "labor_hours";
public static final String DEVICE_HOURS = "device_hours";
public static final String BORROW_MATERIAL_CODE = "borrow_material_code";
public static final String REFER_MATERIAL_CODE = "refer_material_code";
public static final String PURCHASE_TYPE = "purchase_type";
public static final String SPECIAL_PURCHASE_TYPE = "special_purchase_type";
public static final String EXPLANATION = "explanation";
public static final String QUANTITY = "quantity";
public static final String WEIGHT = "weight";
public static final String MATERIAL_AND_BRAND = "material_and_brand";
public static final String SURFACE_MATERIAL = "surface_material";
public static final String SURFACE_THICKNESS = "surface_thickness";
public static final String SURFACE_AREA = "surface_area";
public static final String LENGTH = "length";
public static final String WIDTH = "width";
public static final String HEIGHT = "height";
public static final String FIGURE_FILE_ID = "figure_file_id";
public static final String NEW_TOOLING = "new_tooling";
public static final String SHAPING_METHOD = "shaping_method";
public static final String WORK_CONTENT = "work_content";
public static final String PROCESS_LOCATION = "process_location";
public static final String COST_CENTER = "cost_center";
public static final String UNIT_PRICE = "unit_price";
public static final String TOTAL_PRICE = "total_price";
public static final String MOULD_PRICE = "mould_price";
public static final String CREATE_BY = "create_by";
public static final String CREATE_TIME = "create_time";
public static final String UPDATE_BY = "update_by";
public static final String UPDATE_TIME = "update_time";
public static final String REMARK = "remark";
}
@@ -0,0 +1,174 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
* 物料工时工序表
* </p>
*
* @author
* @since 2024-06-19
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("cost_material_process_hours")
public class CostMaterialProcessHours implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty(value = "id")
@TableId(value = "id", type = IdType.AUTO)
private String id;
/**
* 物料编码
*/
@ApiModelProperty(value = "物料编码")
@TableField("material_code")
private String materialCode;
/**
* 物料名称
*/
@ApiModelProperty(value = "物料名称")
@TableField("material_name")
private String materialName;
/**
* 层级
*/
@ApiModelProperty(value = "层级")
@TableField("level")
private String level;
/**
* 数量
*/
@ApiModelProperty(value = "数量")
@TableField("quantity")
private BigDecimal quantity;
/**
* 采购类型
*/
@ApiModelProperty(value = "采购类型")
@TableField("purchase_type")
private String purchaseType;
/**
* 工序
*/
@ApiModelProperty(value = "工序")
@TableField("work_process")
private String workProcess;
/**
* 描述
*/
@ApiModelProperty(value = "描述")
@TableField("described")
private String described;
/**
* 人工工时
*/
@ApiModelProperty(value = "人工工时")
@TableField("labor_hours")
private BigDecimal laborHours;
/**
* 设备工时
*/
@ApiModelProperty(value = "设备工时")
@TableField("device_hours")
private BigDecimal deviceHours;
/**
* 工作中心
*/
@ApiModelProperty(value = "工作中心")
@TableField("work_center")
private String workCenter;
/**
* 创建人
*/
@TableField("create_by")
private String createBy;
/**
* 创建时间
*/
@TableField("create_time")
private LocalDateTime createTime;
/**
* 修改人
*/
@TableField("update_by")
private String updateBy;
/**
* 修改时间
*/
@TableField("update_time")
private LocalDateTime updateTime;
/**
* 备注
*/
@ApiModelProperty(value = "备注")
@TableField("remark")
private String remark;
public static final String ID = "id";
public static final String MATERIAL_CODE = "material_code";
public static final String MATERIAL_NAME = "material_name";
public static final String LEVEL = "level";
public static final String QUANTITY = "quantity";
public static final String PURCHASE_TYPE = "purchase_type";
public static final String WORK_PROCESS = "work_process";
public static final String DESCRIBED = "described";
public static final String LABOR_HOURS = "labor_hours";
public static final String DEVICE_HOURS = "device_hours";
public static final String WORK_CENTER = "work_center";
public static final String CREATE_BY = "create_by";
public static final String CREATE_TIME = "create_time";
public static final String UPDATE_BY = "update_by";
public static final String UPDATE_TIME = "update_time";
public static final String REMARK = "remark";
}
@@ -0,0 +1,55 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: 标准成本-部件缺失信息
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Data
@TableName("cost_part_missing_info")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="cost_part_missing_info对象", description="cost_part_missing_info")
public class CostPartMissingInfo implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**标准成本表主键id*/
@Excel(name = "标准成本表主键id", width = 15)
@ApiModelProperty(value = "标准成本表主键id")
private String costStandardId;
/**物料号*/
@Excel(name = "物料号", width = 15)
@ApiModelProperty(value = "物料号")
private String materialNumber;
/**版本号*/
@Excel(name = "版本号", width = 15)
@ApiModelProperty(value = "版本号")
private String versionNumber;
/**缺失信息*/
@Excel(name = "缺失信息", width = 15)
@ApiModelProperty(value = "缺失信息")
private String missingInfo;
}
@@ -0,0 +1,215 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
* 物料采购单价
* </p>
*
* @author
* @since 2024-06-19
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("cost_purchase_price")
public class CostPurchasePrice implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private String id;
/**
* 物料编码
*/
@TableField("material_code")
private String materialCode;
/**
* 物料名称
*/
@TableField("material_name")
private String materialName;
/**
* 规格型号
*/
@TableField("specification")
private String specification;
/**
* 采购类型
*/
@TableField("purchase_type")
private String purchaseType;
/**
* 供应商代码
*/
@TableField("supplier_code")
private String supplierCode;
/**
* 供应商名称
*/
@TableField("supplier_name")
private String supplierName;
/**
* 采购价时间
*/
@TableField("purchase_price_time")
private LocalDateTime purchasePriceTime;
/**
* 采购价合计
*/
@TableField("purchase_price_sum")
private BigDecimal purchasePriceSum;
/**
* 最低采购单价
*/
@TableField("min_purchase_price")
private BigDecimal minPurchasePrice;
/**
* 最新采购单价
*/
@TableField("last_purchase_price")
private BigDecimal lastPurchasePrice;
/**
* 平均采购价
*/
@TableField("purchase_price_avg")
private BigDecimal purchasePriceAvg;
/**
* 直接材料费
*/
@TableField("direct_material_cost")
private BigDecimal directMaterialCost;
/**
* 工艺加工费用
*/
@TableField("process_cost")
private BigDecimal processCost;
/**
* 运输费用
*/
@TableField("transport_cost")
private BigDecimal transportCost;
/**
* 模具费用
*/
@TableField("mould_cost")
private BigDecimal mouldCost;
/**
* 其他费用
*/
@TableField("orther_cost")
private BigDecimal ortherCost;
/**
* 税率
*/
@TableField("tax_tate")
private BigDecimal taxTate;
/**
* 创建人
*/
@TableField("create_by")
private String createBy;
/**
* 创建时间
*/
@TableField("create_time")
private LocalDateTime createTime;
/**
* 修改人
*/
@TableField("update_by")
private String updateBy;
/**
* 修改时间
*/
@TableField("update_time")
private LocalDateTime updateTime;
/**
* 备注
*/
@TableField("remark")
private String remark;
public static final String ID = "id";
public static final String MATERIAL_CODE = "material_code";
public static final String MATERIAL_NAME = "material_name";
public static final String SPECIFICATION = "specification";
public static final String PURCHASE_TYPE = "purchase_type";
public static final String SUPPLIER_CODE = "supplier_code";
public static final String SUPPLIER_NAME = "supplier_name";
public static final String PURCHASE_PRICE_TIME = "purchase_price_time";
public static final String PURCHASE_PRICE_SUM = "purchase_price_sum";
public static final String MIN_PURCHASE_PRICE = "min_purchase_price";
public static final String LAST_PURCHASE_PRICE = "last_purchase_price";
public static final String PURCHASE_PRICE_AVG = "purchase_price_avg";
public static final String DIRECT_MATERIAL_COST = "direct_material_cost";
public static final String PROCESS_COST = "process_cost";
public static final String TRANSPORT_COST = "transport_cost";
public static final String MOULD_COST = "mould_cost";
public static final String ORTHER_COST = "orther_cost";
public static final String TAX_TATE = "tax_tate";
public static final String CREATE_BY = "create_by";
public static final String CREATE_TIME = "create_time";
public static final String UPDATE_BY = "update_by";
public static final String UPDATE_TIME = "update_time";
public static final String REMARK = "remark";
}
@@ -0,0 +1,132 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: 标准成本
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Data
@TableName("cost_standard")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="cost_standard对象", description="cost_standard")
public class CostStandard implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**物料号*/
@Excel(name = "物料号", width = 15)
@ApiModelProperty(value = "物料号")
private String materialNumber;
/**版本号ID*/
@Excel(name = "版本号ID", width = 15)
@ApiModelProperty(value = "版本号ID")
private String versionNumberId;
/**bom材料费*/
@Excel(name = "bom材料费", width = 15)
@ApiModelProperty(value = "bom材料费")
private BigDecimal bomCost;
/**包装费*/
@Excel(name = "包装费", width = 15)
@ApiModelProperty(value = "包装费")
private BigDecimal packingCost;
/**辅料费*/
@Excel(name = "辅料费", width = 15)
@ApiModelProperty(value = "辅料费")
private BigDecimal auxiliaryCost;
/**人工费*/
@Excel(name = "人工费", width = 15)
@ApiModelProperty(value = "人工费")
private BigDecimal laborCost;
/**机器折旧费*/
@Excel(name = "机器折旧费", width = 15)
@ApiModelProperty(value = "机器折旧费")
private BigDecimal euipDepreciationCost;
/**机物料消耗费*/
@Excel(name = "机物料消耗费", width = 15)
@ApiModelProperty(value = "机物料消耗费")
private BigDecimal equipConsumeCost;
/**水电费*/
@Excel(name = "水电费", width = 15)
@ApiModelProperty(value = "水电费")
private BigDecimal hydroelectricityCost;
/**其他制造费*/
@Excel(name = "其他制造费", width = 15)
@ApiModelProperty(value = "其他制造费")
private BigDecimal otherCost;
/**物流费*/
@Excel(name = "物流费", width = 15)
@ApiModelProperty(value = "物流费")
private BigDecimal trailCost;
/**制造成本*/
@Excel(name = "制造成本", width = 15)
@ApiModelProperty(value = "制造成本")
private BigDecimal manufactureCost;
/**工装费*/
@Excel(name = "工装费", width = 15)
@ApiModelProperty(value = "工装费")
private BigDecimal toolingCost;
/**检具费*/
@Excel(name = "检具费", width = 15)
@ApiModelProperty(value = "检具费")
private BigDecimal inspectionCost;
/**模具费*/
@Excel(name = "模具费", width = 15)
@ApiModelProperty(value = "模具费")
private BigDecimal moldCost;
/**测试费*/
@Excel(name = "测试费", width = 15)
@ApiModelProperty(value = "测试费")
private BigDecimal testCost;
/**总成本*/
@Excel(name = "总成本", width = 15)
@ApiModelProperty(value = "总成本")
private BigDecimal totalCost;
/**创建人*/
@Excel(name = "创建人", width = 15)
@ApiModelProperty(value = "创建人")
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private Date createTime;
/**修改人*/
@Excel(name = "修改人", width = 15)
@ApiModelProperty(value = "修改人")
private String updateBy;
/**修改日期*/
@Excel(name = "修改日期", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "修改日期")
private Date updateTime;
/**备注*/
@Excel(name = "备注", width = 15)
@ApiModelProperty(value = "备注")
private String remark;
}
@@ -0,0 +1,255 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
/**
* <p>
* 标准成本明细表
* </p>
*
* @author cost_purchase_price
* @since 2024-06-19
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("cost_standard_detail")
public class CostStandardDetail implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id", type = IdType.AUTO)
private String id;
/**
* 子物料号,关联kn_new_sap_mara表matnr字段
*/
@TableField("material_number")
private String materialNumber;
/**
* 版本号id
*/
@TableField("version_number_id")
private String versionNumberId;
/**
* 层级
*/
@TableField("level")
private String level;
/**
* 图号
*/
@TableField("figure_number")
private String figureNumber;
/**
* 用量
*/
@TableField("dosage")
private String dosage;
/**
* 单位
*/
@TableField("unit")
private String unit;
/**
* 规格
*/
@TableField("specification")
private String specification;
/**
* bom材料费
*/
@TableField("bom_cost")
private BigDecimal bomCost;
/**
* 包装费
*/
@TableField("packing_cost")
private BigDecimal packingCost;
/**
* 本阶辅料费
*/
@TableField("auxiliary_cost")
private BigDecimal auxiliaryCost;
/**
* 本阶人工费
*/
@TableField("labor_cost")
private BigDecimal laborCost;
/**
* 机器折旧费
*/
@TableField("euip_depreciation_cost")
private BigDecimal euipDepreciationCost;
/**
* 机物料消耗费
*/
@TableField("equip_consume_cost")
private BigDecimal equipConsumeCost;
/**
* 水电费
*/
@TableField("hydroelectricity_cost")
private BigDecimal hydroelectricityCost;
/**
* 其他制造费
*/
@TableField("other_cost")
private BigDecimal otherCost;
/**
* 物流费
*/
@TableField("trail_cost")
private BigDecimal trailCost;
/**
* 制造成本
*/
@TableField("manufacture_cost")
private BigDecimal manufactureCost;
/**
* 累计人工费
*/
@TableField("total_labor_cost")
private BigDecimal totalLaborCost;
/**
* 累计机器消耗费
*/
@TableField("total_equip_consume_cost")
private BigDecimal totalEquipConsumeCost;
/**
* 累计机器折旧费
*/
@TableField("total_euip_depreciation_cost")
private BigDecimal totalEuipDepreciationCost;
/**
* 累计水电费
*/
@TableField("total_hydroelectricity_cost")
private BigDecimal totalHydroelectricityCost;
/**
* 累计其它费用
*/
@TableField("total_other_cost")
private BigDecimal totalOtherCost;
/**
* 创建人
*/
@TableField("create_by")
private String createBy;
/**
* 创建日期
*/
@TableField("create_time")
private LocalDateTime createTime;
/**
* 修改人
*/
@TableField("update_by")
private String updateBy;
/**
* 修改日期
*/
@TableField("update_time")
private LocalDateTime updateTime;
/**
* 备注
*/
@TableField("remark")
private String remark;
public static final String ID = "id";
public static final String MATERIAL_NUMBER = "material_number";
public static final String VERSION_NUMBER_ID = "version_number_id";
public static final String LEVEL = "level";
public static final String FIGURE_NUMBER = "figure_number";
public static final String DOSAGE = "dosage";
public static final String UNIT = "unit";
public static final String SPECIFICATION = "specification";
public static final String BOM_COST = "bom_cost";
public static final String PACKING_COST = "packing_cost";
public static final String AUXILIARY_COST = "auxiliary_cost";
public static final String LABOR_COST = "labor_cost";
public static final String EUIP_DEPRECIATION_COST = "euip_depreciation_cost";
public static final String EQUIP_CONSUME_COST = "equip_consume_cost";
public static final String HYDROELECTRICITY_COST = "hydroelectricity_cost";
public static final String OTHER_COST = "other_cost";
public static final String TRAIL_COST = "trail_cost";
public static final String MANUFACTURE_COST = "manufacture_cost";
public static final String TOTAL_LABOR_COST = "total_labor_cost";
public static final String TOTAL_EQUIP_CONSUME_COST = "total_equip_consume_cost";
public static final String TOTAL_EUIP_DEPRECIATION_COST = "total_euip_depreciation_cost";
public static final String TOTAL_HYDROELECTRICITY_COST = "total_hydroelectricity_cost";
public static final String TOTAL_OTHER_COST = "total_other_cost";
public static final String CREATE_BY = "create_by";
public static final String CREATE_TIME = "create_time";
public static final String UPDATE_BY = "update_by";
public static final String UPDATE_TIME = "update_time";
public static final String REMARK = "remark";
}
@@ -0,0 +1,80 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: 标准成本-版本号
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Data
@TableName("cost_standard_version")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="cost_standard_version对象", description="cost_standard_version")
public class CostStandardVersion implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**图号*/
@Excel(name = "图号", width = 15)
@ApiModelProperty(value = "图号")
private String figureNumber;
/**阶段,A-初始,B-首批,C-量产*/
@Excel(name = "阶段", width = 15)
@ApiModelProperty(value = "阶段")
private String stage;
/**物料号*/
@Excel(name = "物料号", width = 15)
@ApiModelProperty(value = "物料号")
private String materialNumber;
/**版本号*/
@ApiModelProperty(value = "版本号")
private String versionNumber;
/**版本状态*/
@ApiModelProperty(value = "版本状态")
private String versionStatus;
/**创建人*/
@ApiModelProperty(value = "创建人")
private String createBy;
/**创建时间*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建时间")
private Date createTime;
/**修改人*/
@ApiModelProperty(value = "修改人")
private String updateBy;
/**修改时间*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "修改时间")
private Date updateTime;
/**备注*/
@ApiModelProperty(value = "备注")
private String remark;
/**年份*/
@ApiModelProperty(value = "年份")
private String versionYear;
}
@@ -0,0 +1,99 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: hour_rate
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
@Data
@TableName("cost_hour_rate")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="hour_rate对象", description="hour_rate")
public class HourRate implements Serializable {
private static final long serialVersionUID = 1L;
/**年度*/
@Excel(name = "年度", width = 15)
@ApiModelProperty(value = "年度")
private java.lang.String year;
/**成本中心代码*/
@Excel(name = "成本中心代码", width = 15)
@ApiModelProperty(value = "成本中心代码")
private java.lang.String costCenterCode;
/**工厂代码*/
@Excel(name = "工厂代码", width = 15)
@ApiModelProperty(value = "工厂代码")
private java.lang.String factory;
/**人工小时费率*/
@Excel(name = "人工小时费率", width = 15)
@ApiModelProperty(value = "人工小时费率")
private java.math.BigDecimal laborHourRate;
/**设备小时费率*/
@Excel(name = "设备小时费率", width = 15)
@ApiModelProperty(value = "设备小时费率")
private java.math.BigDecimal equipHourRate;
/**燃动小时费率*/
@Excel(name = "燃动小时费率", width = 15)
@ApiModelProperty(value = "燃动小时费率")
private java.math.BigDecimal fuelHourRate;
/**辅料小时费率*/
@Excel(name = "辅料小时费率", width = 15)
@ApiModelProperty(value = "辅料小时费率")
private java.math.BigDecimal auxiliaryHourRate;
/**其他小时费率*/
@Excel(name = "其他小时费率", width = 15)
@ApiModelProperty(value = "其他小时费率")
private java.math.BigDecimal otherHourRate;
/**生效日期*/
@Excel(name = "生效日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "生效日期")
private java.util.Date effectiveDate;
/**失效日期*/
@Excel(name = "失效日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "失效日期")
private java.util.Date expirationDate;
/**维护人员*/
@Excel(name = "维护人员", width = 15)
@ApiModelProperty(value = "维护人员")
private java.lang.String guardian;
/**维护时间*/
@Excel(name = "维护时间", width = 15)
@ApiModelProperty(value = "维护时间")
private java.lang.String maintenanceTime;
/**预留字段1*/
@Excel(name = "预留字段1", width = 15)
@ApiModelProperty(value = "预留字段1")
@TableField(value = "reserve_1")
private java.lang.String reserve1;
/**预留字段2*/
@Excel(name = "预留字段2", width = 15)
@ApiModelProperty(value = "预留字段2")
@TableField(value = "reserve_2")
private java.math.BigDecimal reserve2;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private java.lang.String id;
}
@@ -0,0 +1,107 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: latest_purchase_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Data
@TableName("latest_purchase_price")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="latest_purchase_price对象", description="latest_purchase_price")
public class LatestPurchasePrice implements Serializable {
private static final long serialVersionUID = 1L;
/**门控料号(物料id)*/
@Excel(name = "门控料号(物料id)", width = 15)
@ApiModelProperty(value = "门控料号(物料id)")
private String materialNumber;
/**产品名称*/
@Excel(name = "产品名称", width = 15)
@ApiModelProperty(value = "产品名称")
private String name;
/**规格*/
@Excel(name = "规格", width = 15)
@ApiModelProperty(value = "规格")
private String norms;
/**单位*/
@Excel(name = "单位", width = 15)
@ApiModelProperty(value = "单位")
private String unit;
/**latestInvoiceNo*/
@Excel(name = "latestInvoiceNo", width = 15)
@ApiModelProperty(value = "latestInvoiceNo")
private String latestInvoiceNo;
/**估算日期*/
@Excel(name = "估算日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "估算日期")
private Date latestInvoiceDate;
/**latestInvoiceSupplier*/
@Excel(name = "latestInvoiceSupplier", width = 15)
@ApiModelProperty(value = "latestInvoiceSupplier")
private String latestInvoiceSupplier;
/**latestInvoicePrice*/
@Excel(name = "latestInvoicePrice", width = 15)
@ApiModelProperty(value = "latestInvoicePrice")
private BigDecimal latestInvoicePrice;
/**不含税价格*/
@Excel(name = "不含税价格", width = 15)
@ApiModelProperty(value = "不含税价格")
private BigDecimal unitPriceWithoutTax;
/**interExamCost*/
@Excel(name = "interExamCost", width = 15)
@ApiModelProperty(value = "interExamCost")
private BigDecimal interExamCost;
/**工厂代号(工厂id)*/
@Excel(name = "工厂代号(工厂id)", width = 15)
@ApiModelProperty(value = "工厂代号(工厂id)")
private String factory;
/**维护人*/
@Excel(name = "维护人", width = 15)
@ApiModelProperty(value = "维护人")
private String guardian;
/**维护时间*/
@Excel(name = "维护时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "维护时间")
private Date maintenanceTime;
/**isadd*/
@Excel(name = "isadd", width = 15)
@ApiModelProperty(value = "isadd")
private Integer isadd;
/**采购类型*/
@Excel(name = "采购类型", width = 15)
@ApiModelProperty(value = "采购类型")
private String purchaseType;
/**是否启用*/
@Excel(name = "是否启用", width = 15)
@ApiModelProperty(value = "是否启用")
private Integer isinvalid;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
}
@@ -0,0 +1,65 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: produce_batch
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Data
@TableName("produce_batch")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="produce_batch对象", description="produce_batch")
public class ProduceBatch implements Serializable {
private static final long serialVersionUID = 1L;
/**门控料号(物料id)*/
@Excel(name = "门控料号(物料id)", width = 15)
@ApiModelProperty(value = "门控料号(物料id)")
private String materialNumber;
/**工厂代号(工厂id)*/
@Excel(name = "工厂代号(工厂id)", width = 15)
@ApiModelProperty(value = "工厂代号(工厂id)")
private String factory;
/**生产批量*/
@Excel(name = "生产批量", width = 15)
@ApiModelProperty(value = "生产批量")
private BigDecimal batch;
/**维护人(用户id)*/
@Excel(name = "维护人(用户id)", width = 15)
@ApiModelProperty(value = "维护人(用户id)")
private String guardian;
/**维护时间*/
@Excel(name = "维护时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "维护时间")
private Date maintenanceTime;
/**aufnr*/
// @Excel(name = "aufnr", width = 15)
@ApiModelProperty(value = "aufnr")
private String aufnr;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private String id;
}
@@ -0,0 +1,47 @@
package com.zzsmart.qomo.kn.cost.manage.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* @Description: sap_subfactory
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Data
@TableName("sap_subfactory")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sap_subfactory对象", description="sap_subfactory")
public class SapSubfactory implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private Integer id;
/**公司代码*/
@Excel(name = "公司代码", width = 15)
@ApiModelProperty(value = "公司代码")
private String companyCode;
/**工厂代码*/
@Excel(name = "工厂代码", width = 15)
@ApiModelProperty(value = "工厂代码")
private String factory;
}
@@ -0,0 +1,63 @@
package com.zzsmart.qomo.kn.cost.manage.enums;
/**
* @Classname StandardStageEnum
* @Description 阶段枚举
* @Version 1.0.0
* @Date 2024/6/18 9:51
* @Created wangqiong
*/
public enum StandardStageEnum {
INIT("A", "初始"),
FIRST_BATCH("B", "首批"),
MASS_PRODUCTION("C", "量产"),
;
private final String code;
private final String text;
StandardStageEnum(String code, String text)
{
this.code = code;
this.text = text;
}
public String getCode()
{
return code;
}
public String getText()
{
return text;
}
/**
* 根据code获取text
* @param codeNo
* @return
*/
public static String getTextByCode(String codeNo){
for (StandardStageEnum value : StandardStageEnum.values()) {
if (value.getCode().equals(codeNo)){
return value.getText();
}
}
return codeNo.toString();
}
/**
* 根据text获取code
* @param textStr
* @return
*/
public static String getCodeByText(String textStr){
for (StandardStageEnum value : StandardStageEnum.values()) {
if (value.getText().equals(textStr)){
return value.getText();
}
}
return textStr;
}
}
@@ -0,0 +1,14 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zzsmart.qomo.kn.cost.manage.entity.BudgetPrice;
/**
* @Description: budget_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface BudgetPriceMapper extends BaseMapper<BudgetPrice> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import com.zzsmart.qomo.kn.cost.manage.entity.C7525cost;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: c7525cost
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
public interface C7525costMapper extends BaseMapper<C7525cost> {
}
@@ -0,0 +1,17 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.zzsmart.qomo.kn.cost.manage.entity.CostCenter;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: cost_center
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface CostCenterMapper extends BaseMapper<CostCenter> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialBom;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* 物料bom Mapper 接口
* </p>
*
* @author
* @since 2024-06-19
*/
@Mapper
public interface CostMaterialBomMapper extends BaseMapper<CostMaterialBom> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialProcessHours;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* 物料工时工序表 Mapper 接口
* </p>
*
* @author
* @since 2024-06-19
*/
@Mapper
public interface CostMaterialProcessHoursMapper extends BaseMapper<CostMaterialProcessHours> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import com.zzsmart.qomo.kn.cost.manage.entity.CostPartMissingInfo;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 标准成本-部件缺失信息
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
public interface CostPartMissingInfoMapper extends BaseMapper<CostPartMissingInfo> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import com.zzsmart.qomo.kn.cost.manage.entity.CostPurchasePrice;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* 物料采购单价 Mapper 接口
* </p>
*
* @author
* @since 2024-06-19
*/
@Mapper
public interface CostPurchasePriceMapper extends BaseMapper<CostPurchasePrice> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandardDetail;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* <p>
* 标准成本明细表 Mapper 接口
* </p>
*
* @author cost_purchase_price
* @since 2024-06-19
*/
@Mapper
public interface CostStandardDetailMapper extends BaseMapper<CostStandardDetail> {
}
@@ -0,0 +1,24 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandard;
import com.zzsmart.qomo.kn.cost.manage.vo.CostStandardVO;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 标准成本
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
public interface CostStandardMapper extends BaseMapper<CostStandard> {
IPage<CostStandardVO> pageList(@Param("page")Page<CostStandardVO> page , @Param(Constants.WRAPPER) Wrapper<CostStandardVO> wrapper);
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandardVersion;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 标准成本-版本号
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
public interface CostStandardVersionMapper extends BaseMapper<CostStandardVersion> {
}
@@ -0,0 +1,14 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zzsmart.qomo.kn.cost.manage.entity.HourRate;
/**
* @Description: hour_rate
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
public interface HourRateMapper extends BaseMapper<HourRate> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import com.zzsmart.qomo.kn.cost.manage.entity.LatestPurchasePrice;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: latest_purchase_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface LatestPurchasePriceMapper extends BaseMapper<LatestPurchasePrice> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import com.zzsmart.qomo.kn.cost.manage.entity.ProduceBatch;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: produce_batch
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface ProduceBatchMapper extends BaseMapper<ProduceBatch> {
}
@@ -0,0 +1,17 @@
package com.zzsmart.qomo.kn.cost.manage.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.zzsmart.qomo.kn.cost.manage.entity.SapSubfactory;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: sap_subfactory
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface SapSubfactoryMapper extends BaseMapper<SapSubfactory> {
}
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.BudgetPriceMapper">
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.C7525costMapper">
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostCenterMapper">
</mapper>
@@ -0,0 +1,52 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostMaterialBomMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialBom">
<id column="id" property="id" />
<result column="material_code" property="materialCode" />
<result column="material_name" property="materialName" />
<result column="parent_material_code" property="parentMaterialCode" />
<result column="level" property="level" />
<result column="sort" property="sort" />
<result column="unit" property="unit" />
<result column="number" property="number" />
<result column="labor_hours" property="laborHours" />
<result column="device_hours" property="deviceHours" />
<result column="borrow_material_code" property="borrowMaterialCode" />
<result column="refer_material_code" property="referMaterialCode" />
<result column="purchase_type" property="purchaseType" />
<result column="special_purchase_type" property="specialPurchaseType" />
<result column="explanation" property="explanation" />
<result column="quantity" property="quantity" />
<result column="weight" property="weight" />
<result column="material_and_brand" property="materialAndBrand" />
<result column="surface_material" property="surfaceMaterial" />
<result column="surface_thickness" property="surfaceThickness" />
<result column="surface_area" property="surfaceArea" />
<result column="length" property="length" />
<result column="width" property="width" />
<result column="height" property="height" />
<result column="figure_file_id" property="figureFileId" />
<result column="new_tooling" property="newTooling" />
<result column="shaping_method" property="shapingMethod" />
<result column="work_content" property="workContent" />
<result column="process_location" property="processLocation" />
<result column="cost_center" property="costCenter" />
<result column="unit_price" property="unitPrice" />
<result column="total_price" property="totalPrice" />
<result column="mould_price" property="mouldPrice" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="remark" property="remark" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, material_code, material_name, parent_material_code, level, sort, unit, number, labor_hours, device_hours, borrow_material_code, refer_material_code, purchase_type, special_purchase_type, explanation, quantity, weight, material_and_brand, surface_material, surface_thickness, surface_area, length, width, height, figure_file_id, new_tooling, shaping_method, work_content, process_location, cost_center, unit_price, total_price, mould_price, create_by, create_time, update_by, update_time, remark
</sql>
</mapper>
@@ -0,0 +1,30 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostMaterialProcessHoursMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialProcessHours">
<id column="id" property="id" />
<result column="material_code" property="materialCode" />
<result column="material_name" property="materialName" />
<result column="level" property="level" />
<result column="quantity" property="quantity" />
<result column="purchase_type" property="purchaseType" />
<result column="work_process" property="workProcess" />
<result column="described" property="described" />
<result column="labor_hours" property="laborHours" />
<result column="device_hours" property="deviceHours" />
<result column="work_center" property="workCenter" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="remark" property="remark" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, material_code, material_name, level, quantity, purchase_type, work_process, described, labor_hours, device_hours, work_center, create_by, create_time, update_by, update_time, remark
</sql>
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostPartMissingInfoMapper">
</mapper>
@@ -0,0 +1,37 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostPurchasePriceMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zzsmart.qomo.kn.cost.manage.entity.CostPurchasePrice">
<id column="id" property="id" />
<result column="material_code" property="materialCode" />
<result column="material_name" property="materialName" />
<result column="specification" property="specification" />
<result column="purchase_type" property="purchaseType" />
<result column="supplier_code" property="supplierCode" />
<result column="supplier_name" property="supplierName" />
<result column="purchase_price_time" property="purchasePriceTime" />
<result column="purchase_price_sum" property="purchasePriceSum" />
<result column="min_purchase_price" property="minPurchasePrice" />
<result column="last_purchase_price" property="lastPurchasePrice" />
<result column="purchase_price_avg" property="purchasePriceAvg" />
<result column="direct_material_cost" property="directMaterialCost" />
<result column="process_cost" property="processCost" />
<result column="transport_cost" property="transportCost" />
<result column="mould_cost" property="mouldCost" />
<result column="orther_cost" property="ortherCost" />
<result column="tax_tate" property="taxTate" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="remark" property="remark" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, material_code, material_name, specification, purchase_type, supplier_code, supplier_name, purchase_price_time, purchase_price_sum, min_purchase_price, last_purchase_price, purchase_price_avg, direct_material_cost, process_cost, transport_cost, mould_cost, orther_cost, tax_tate, create_by, create_time, update_by, update_time, remark
</sql>
</mapper>
@@ -0,0 +1,42 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostStandardDetailMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.zzsmart.qomo.kn.cost.manage.entity.CostStandardDetail">
<id column="id" property="id" />
<result column="material_number" property="materialNumber" />
<result column="version_number_id" property="versionNumberId" />
<result column="level" property="level" />
<result column="figure_number" property="figureNumber" />
<result column="dosage" property="dosage" />
<result column="unit" property="unit" />
<result column="specification" property="specification" />
<result column="bom_cost" property="bomCost" />
<result column="packing_cost" property="packingCost" />
<result column="auxiliary_cost" property="auxiliaryCost" />
<result column="labor_cost" property="laborCost" />
<result column="euip_depreciation_cost" property="euipDepreciationCost" />
<result column="equip_consume_cost" property="equipConsumeCost" />
<result column="hydroelectricity_cost" property="hydroelectricityCost" />
<result column="other_cost" property="otherCost" />
<result column="trail_cost" property="trailCost" />
<result column="manufacture_cost" property="manufactureCost" />
<result column="total_labor_cost" property="totalLaborCost" />
<result column="total_equip_consume_cost" property="totalEquipConsumeCost" />
<result column="total_euip_depreciation_cost" property="totalEuipDepreciationCost" />
<result column="total_hydroelectricity_cost" property="totalHydroelectricityCost" />
<result column="total_other_cost" property="totalOtherCost" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="remark" property="remark" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, material_number, version_number_id, level, figure_number, dosage, unit, specification, bom_cost, packing_cost, auxiliary_cost, labor_cost, euip_depreciation_cost, equip_consume_cost, hydroelectricity_cost, other_cost, trail_cost, manufacture_cost, total_labor_cost, total_equip_consume_cost, total_euip_depreciation_cost, total_hydroelectricity_cost, total_other_cost, create_by, create_time, update_by, update_time, remark
</sql>
</mapper>
@@ -0,0 +1,42 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostStandardMapper">
<resultMap id="CostStandardVOResultMap" type="com.zzsmart.qomo.kn.cost.manage.vo.CostStandardVO" >
<result column="id" property="id" />
<result column="material_number" property="materialNumber" />
<result column="version_number" property="versionNumber" />
<result column="version_number_id" property="versionNumberId" />
<result column="bom_cost" property="bomCost" />
<result column="packing_cost" property="packingCost" />
<result column="auxiliary_cost" property="auxiliaryCost" />
<result column="labor_cost" property="laborCost" />
<result column="euip_depreciation_cost" property="euipDepreciationCost" />
<result column="equip_consume_cost" property="equipConsumeCost" />
<result column="hydroelectricity_cost" property="hydroelectricityCost" />
<result column="other_cost" property="otherCost" />
<result column="trail_cost" property="trailCost" />
<result column="manufacture_cost" property="manufactureCost" />
<result column="tooling_cost" property="toolingCost" />
<result column="Inspection_cost" property="inspectionCost" />
<result column="mold_cost" property="moldCost" />
<result column="test_cost" property="testCost" />
<result column="total_cost" property="totalCost" />
<result column="create_by" property="createBy" />
<result column="create_time" property="createTime" />
<result column="update_by" property="updateBy" />
<result column="update_time" property="updateTime" />
<result column="remark" property="remark" />
<result column="version_status" property="versionStatus" />
<result column="stage" property="stage" />
<result column="version_year" property="versionYear" />
</resultMap>
<select id="pageList" resultMap="CostStandardVOResultMap">
select c1.*, c2.version_number, c2.version_status, c2.stage,c2.version_year
from
cost_standard c1
left join cost_standard_version c2 on c1.version_number_id = c2.id
${ew.customSqlSegment}
ORDER BY c1.create_time desc
</select>
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.CostStandardVersionMapper">
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.HourRateMapper">
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.LatestPurchasePriceMapper">
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.ProduceBatchMapper">
</mapper>
@@ -0,0 +1,5 @@
<?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.zzsmart.qomo.kn.cost.manage.mapper.SapSubfactoryMapper">
</mapper>
@@ -0,0 +1,16 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialBom;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 物料bom 服务类
* </p>
*
* @author
* @since 2024-06-19
*/
public interface CostMaterialBomService extends IService<CostMaterialBom> {
}
@@ -0,0 +1,16 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialProcessHours;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 物料工时工序表 服务类
* </p>
*
* @author
* @since 2024-06-19
*/
public interface CostMaterialProcessHoursService extends IService<CostMaterialProcessHours> {
}
@@ -0,0 +1,16 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.zzsmart.qomo.kn.cost.manage.entity.CostPurchasePrice;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 物料采购单价 服务类
* </p>
*
* @author
* @since 2024-06-19
*/
public interface CostPurchasePriceService extends IService<CostPurchasePrice> {
}
@@ -0,0 +1,16 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandardDetail;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 标准成本明细表 服务类
* </p>
*
* @author cost_purchase_price
* @since 2024-06-19
*/
public interface CostStandardDetailService extends IService<CostStandardDetail> {
}
@@ -0,0 +1,14 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.zzsmart.qomo.kn.cost.manage.entity.BudgetPrice;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: budget_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface IBudgetPriceService extends IService<BudgetPrice> {
}
@@ -0,0 +1,15 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsmart.qomo.kn.cost.manage.entity.C7525cost;
/**
* @Description: c7525cost
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
public interface IC7525costService extends IService<C7525cost> {
}
@@ -0,0 +1,14 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.zzsmart.qomo.kn.cost.manage.entity.CostCenter;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: cost_center
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface ICostCenterService extends IService<CostCenter> {
}
@@ -0,0 +1,14 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsmart.qomo.kn.cost.manage.entity.CostPartMissingInfo;
/**
* @Description: 标准成本-部件缺失信息
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
public interface ICostPartMissingInfoService extends IService<CostPartMissingInfo> {
}
@@ -0,0 +1,26 @@
package com.zzsmart.qomo.kn.cost.manage.service;
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.IService;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandard;
import com.zzsmart.qomo.kn.cost.manage.vo.CostStandardVO;
import javax.servlet.http.HttpServletRequest;
/**
* @Description: 标准成本
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
public interface ICostStandardService extends IService<CostStandard> {
/**
* 分页查询
* @param page
* @param
* @return
*/
IPage<CostStandardVO> pageList(Page<CostStandardVO> page, CostStandardVO costStandard);
}
@@ -0,0 +1,28 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandardVersion;
import org.jeecg.common.api.vo.Result;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @Description: 标准成本-版本号
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
public interface ICostStandardVersionService extends IService<CostStandardVersion> {
/**
* excel导入
* @param request
* @param response
* @param costStandardVersionClass
* @return
*/
Result<?> importExcel(HttpServletRequest request, HttpServletResponse response, Class<CostStandardVersion> costStandardVersionClass);
}
@@ -0,0 +1,15 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsmart.qomo.kn.cost.manage.entity.HourRate;
/**
* @Description: hour_rate
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
public interface IHourRateService extends IService<HourRate> {
}
@@ -0,0 +1,15 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsmart.qomo.kn.cost.manage.entity.LatestPurchasePrice;
/**
* @Description: latest_purchase_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface ILatestPurchasePriceService extends IService<LatestPurchasePrice> {
}
@@ -0,0 +1,14 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsmart.qomo.kn.cost.manage.entity.ProduceBatch;
/**
* @Description: produce_batch
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface IProduceBatchService extends IService<ProduceBatch> {
}
@@ -0,0 +1,14 @@
package com.zzsmart.qomo.kn.cost.manage.service;
import com.zzsmart.qomo.kn.cost.manage.entity.SapSubfactory;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: sap_subfactory
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
public interface ISapSubfactoryService extends IService<SapSubfactory> {
}
@@ -0,0 +1,18 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zzsmart.qomo.kn.cost.manage.entity.BudgetPrice;
import com.zzsmart.qomo.kn.cost.manage.mapper.BudgetPriceMapper;
import com.zzsmart.qomo.kn.cost.manage.service.IBudgetPriceService;
import org.springframework.stereotype.Service;
/**
* @Description: budget_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Service
public class BudgetPriceServiceImpl extends ServiceImpl<BudgetPriceMapper, BudgetPrice> implements IBudgetPriceService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.C7525cost;
import com.zzsmart.qomo.kn.cost.manage.mapper.C7525costMapper;
import com.zzsmart.qomo.kn.cost.manage.service.IC7525costService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: c7525cost
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
@Service
public class C7525costServiceImpl extends ServiceImpl<C7525costMapper, C7525cost> implements IC7525costService {
}
@@ -0,0 +1,19 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.CostCenter;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostCenterMapper;
import com.zzsmart.qomo.kn.cost.manage.service.ICostCenterService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: cost_center
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Service
public class CostCenterServiceImpl extends ServiceImpl<CostCenterMapper, CostCenter> implements ICostCenterService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialBom;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostMaterialBomMapper;
import com.zzsmart.qomo.kn.cost.manage.service.CostMaterialBomService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 物料bom 服务实现类
* </p>
*
* @author
* @since 2024-06-19
*/
@Service
public class CostMaterialBomServiceImpl extends ServiceImpl<CostMaterialBomMapper, CostMaterialBom> implements CostMaterialBomService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.CostMaterialProcessHours;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostMaterialProcessHoursMapper;
import com.zzsmart.qomo.kn.cost.manage.service.CostMaterialProcessHoursService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 物料工时工序表 服务实现类
* </p>
*
* @author
* @since 2024-06-19
*/
@Service
public class CostMaterialProcessHoursServiceImpl extends ServiceImpl<CostMaterialProcessHoursMapper, CostMaterialProcessHours> implements CostMaterialProcessHoursService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.CostPartMissingInfo;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostPartMissingInfoMapper;
import com.zzsmart.qomo.kn.cost.manage.service.ICostPartMissingInfoService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 标准成本-部件缺失信息
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Service
public class CostPartMissingInfoServiceImpl extends ServiceImpl<CostPartMissingInfoMapper, CostPartMissingInfo> implements ICostPartMissingInfoService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.CostPurchasePrice;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostPurchasePriceMapper;
import com.zzsmart.qomo.kn.cost.manage.service.CostPurchasePriceService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 物料采购单价 服务实现类
* </p>
*
* @author
* @since 2024-06-19
*/
@Service
public class CostPurchasePriceServiceImpl extends ServiceImpl<CostPurchasePriceMapper, CostPurchasePrice> implements CostPurchasePriceService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandardDetail;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostStandardDetailMapper;
import com.zzsmart.qomo.kn.cost.manage.service.CostStandardDetailService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 标准成本明细表 服务实现类
* </p>
*
* @author cost_purchase_price
* @since 2024-06-19
*/
@Service
public class CostStandardDetailServiceImpl extends ServiceImpl<CostStandardDetailMapper, CostStandardDetail> implements CostStandardDetailService {
}
@@ -0,0 +1,60 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import cn.hutool.core.util.StrUtil;
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.zzsmart.qomo.kn.cost.manage.entity.CostStandard;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostStandardMapper;
import com.zzsmart.qomo.kn.cost.manage.service.ICostStandardService;
import com.zzsmart.qomo.kn.cost.manage.vo.CostStandardVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
/**
* @Description: 标准成本
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Service
public class CostStandardServiceImpl extends ServiceImpl<CostStandardMapper, CostStandard> implements ICostStandardService {
@Autowired
private CostStandardMapper costStandardMapper;
@Override
public IPage<CostStandardVO> pageList(Page<CostStandardVO> page, CostStandardVO costStandard) {
// 查询条件组装
QueryWrapper queryWrapper = new QueryWrapper();
if(costStandard != null){
if(StrUtil.isNotEmpty(costStandard.getVersionYear()) ){
// 年份
queryWrapper.eq("c2.version_year",costStandard.getVersionYear());
}
if(StrUtil.isNotEmpty(costStandard.getStage()) ){
// 阶段
queryWrapper.eq("c2.stage",costStandard.getStage());
}
if(StrUtil.isNotEmpty(costStandard.getMaterialNumber()) ){
// 物料号
queryWrapper.like("c1.material_number",costStandard.getMaterialNumber());
}
if(StrUtil.isNotEmpty(costStandard.getVersionNumber()) ){
// 版本号
queryWrapper.like("c2.version_number",costStandard.getVersionNumber());
}
if(StrUtil.isNotEmpty(costStandard.getVersionStatus()) ){
// 版本状态
queryWrapper.eq("c2.version_status",costStandard.getVersionStatus());
}
}
return (IPage<CostStandardVO>) costStandardMapper.pageList(page,queryWrapper);
}
}
@@ -0,0 +1,214 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.zzsmart.qomo.kn.cost.manage.constants.Constants;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandard;
import com.zzsmart.qomo.kn.cost.manage.entity.CostStandardVersion;
import com.zzsmart.qomo.kn.cost.manage.enums.StandardStageEnum;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostStandardMapper;
import com.zzsmart.qomo.kn.cost.manage.mapper.CostStandardVersionMapper;
import com.zzsmart.qomo.kn.cost.manage.service.ICostStandardVersionService;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.time.ZoneId;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
/**
* @Description: 标准成本-版本号
* @Author: wangqiong
* @Date: 2024-06-13
* @Version: V1.0
*/
@Service
public class CostStandardVersionServiceImpl extends ServiceImpl<CostStandardVersionMapper, CostStandardVersion> implements ICostStandardVersionService {
@Autowired
private CostStandardMapper costStandardMapper;
@Autowired
private ICostStandardVersionService costStandardVersionService;
private static final Logger log = LoggerFactory.getLogger(CostStandardVersionServiceImpl.class);
@Transactional(rollbackFor = Exception.class)
@Override
public boolean save(CostStandardVersion costStandardVersion) {
// todo 查物料表看是否存在改物料,没有抛异常
LoginUser sysUser = null;
try {
sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
} catch (Exception ignored) {
}
if (sysUser != null) {
costStandardVersion.setCreateBy(sysUser.getUsername());
}
// 保存版本号表
boolean save = super.save(costStandardVersion);
// todo 标准成本计算
CostStandard standard = standardCalculate(costStandardVersion);
// standard.setMaterialNumber(costStandardVersion.getMaterialNumber());
// standard.setVersionNumberId(costStandardVersion.getId());
// if(sysUser!=null){
// standard.setCreateBy(sysUser.getUsername());
// }
// standard.setCreateTime(new Date());
// // 保存标准成本表
// costStandardMapper.insert(standard);
return save;
}
/**
* 标准成本计算
*
* @param costStandardVersion 版本号
* @return
*/
private CostStandard standardCalculate(CostStandardVersion costStandardVersion) {
// 计算逻辑,生成版本号输入的物料号是根节点物料号,
// 1,根据根节点物料号查找物料表kn_new_sap_mara
// 2,去bom表找出对应下的所有层级物料cost_material_bom
// 3,根据物料去工时工序表找出对应工序,工序表中包含所计算的工时,cost_material_process_hours
// 4,查小时费率表,找到对应工时费率cost_hour_rate
// 5,查采购单价表,找到对应采购单价cost_purchase_price
// 5,计算每层级的物料标准成本,存到标准成本明细表cost_standard_detail
CostStandard standard = new CostStandard();
// 4,计算bom费用,BOM表清单物料用量*采购单价
// 5,计算包装费
// 6,计算辅料费
// 7,计算人工费,人工工时*费率
// 8,计算机器折旧费,机器工时*费率
// 9,计算机物料消耗费,辅料工时*费率
// 10,计算水电费,燃动力工时*费率
// 11,计算其他制造费,其他工时*费率
// 12,计算物流费,物流费用=(机器折旧+机物料消耗+水电费+其他制费)*10.16%
// 13,计算制造成本,前面所有费用汇总(即人工费+机器折旧费+机物料消耗费+水电费+其他制造费+物流费)
// 18,计算总成本
return standard;
}
/**
* excel导入
*
* @param request
* @param response
* @param clazz
* @return
*/
@Transactional(rollbackFor = Exception.class)
@Override
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response, Class<CostStandardVersion> clazz) {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
Iterator iterator = fileMap.entrySet().iterator();
if (iterator.hasNext()) {
Map.Entry<String, MultipartFile> entity = (Map.Entry) iterator.next();
MultipartFile file = (MultipartFile) entity.getValue();
ImportParams params = new ImportParams();
params.setTitleRows(2);
params.setHeadRows(1);
params.setNeedSave(true);
try {
List<CostStandardVersion> list = ExcelImportUtil.importExcel(file.getInputStream(), clazz, params);
if (CollectionUtil.isEmpty(list)) {
log.error("无可导入的数据!");
return Result.error("无可导入的数据!");
}
int successNum = 0;
int failureNum = 0;
// StringBuilder successMsg = new StringBuilder();
StringBuilder failureMsg = new StringBuilder();
long start = System.currentTimeMillis();
// 校验并组装list
for (int i = 0; i < list.size(); i++) {
CostStandardVersion standardVersion = list.get(i);
// 校验物料号是否为空
if (StrUtil.isEmpty(standardVersion.getMaterialNumber())) {
failureNum++;
failureMsg.append("<br/>第 " + (i + 2) + " 行【物料号】字段不能为空:");
continue;
}
if (StrUtil.isNotEmpty(standardVersion.getStage())) {
standardVersion.setStage(StandardStageEnum.getCodeByText(standardVersion.getStage()));
}
// 创建日期
Date createDate = new Date();
standardVersion.setCreateTime(createDate);
String dateStr = new SimpleDateFormat("yyyyMMddHHmmss").format(createDate);
// 生成版本号,版本号=图号_阶段_创建日期(格式:yyyyMMddHHmmss)
standardVersion.setVersionNumber(standardVersion.getFigureNumber()+ Constants.UNDER_LINE +standardVersion.getStage()+Constants.UNDER_LINE+dateStr);
// 设置年份
standardVersion.setVersionYear(String.valueOf(createDate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate().getYear()));
// 调用保存方法
try {
costStandardVersionService.save(standardVersion);
} catch (Exception e) {
failureNum++;
String msg = "<br/>第 " + (i + 2) + " 行数据导入失败;";
failureMsg.append(msg);
log.error(msg, e);
}
successNum++;
}
// costStandardVersionService.saveBatch(list);
log.info("消耗时间" + (System.currentTimeMillis() - start) + "毫秒");
String returnMsg = "文件导入成功!数据行数:" + successNum;
if (failureNum > 0) {
returnMsg += "<br/>失败数据行数:" + failureNum + ",失败信息如下:<br/>" + failureMsg.toString();
}
return Result.ok(returnMsg);
} catch (Exception exception) {
String msg = exception.getMessage();
log.error(msg, exception);
Result result;
String duplicateEntry = "Duplicate entry";
if (msg != null && msg.contains(duplicateEntry)) {
result = Result.error("文件导入失败:有重复数据!");
return result;
} else {
result = Result.error("文件导入失败:" + exception.getMessage());
return result;
}
} finally {
try {
file.getInputStream().close();
} catch (IOException var23) {
var23.printStackTrace();
}
}
} else {
return Result.error("文件导入失败!");
}
}
}
@@ -0,0 +1,19 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zzsmart.qomo.kn.cost.manage.entity.HourRate;
import com.zzsmart.qomo.kn.cost.manage.mapper.HourRateMapper;
import com.zzsmart.qomo.kn.cost.manage.service.IHourRateService;
import org.springframework.stereotype.Service;
/**
* @Description: hour_rate
* @Author: jeecg-boot
* @Date: 2024-06-06
* @Version: V1.0
*/
@Service
public class HourRateServiceImpl extends ServiceImpl<HourRateMapper, HourRate> implements IHourRateService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.LatestPurchasePrice;
import com.zzsmart.qomo.kn.cost.manage.mapper.LatestPurchasePriceMapper;
import com.zzsmart.qomo.kn.cost.manage.service.ILatestPurchasePriceService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: latest_purchase_price
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Service
public class LatestPurchasePriceServiceImpl extends ServiceImpl<LatestPurchasePriceMapper, LatestPurchasePrice> implements ILatestPurchasePriceService {
}
@@ -0,0 +1,20 @@
package com.zzsmart.qomo.kn.cost.manage.service.impl;
import com.zzsmart.qomo.kn.cost.manage.entity.ProduceBatch;
import com.zzsmart.qomo.kn.cost.manage.mapper.ProduceBatchMapper;
import com.zzsmart.qomo.kn.cost.manage.service.IProduceBatchService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: produce_batch
* @Author: jeecg-boot
* @Date: 2024-06-11
* @Version: V1.0
*/
@Service
public class ProduceBatchServiceImpl extends ServiceImpl<ProduceBatchMapper, ProduceBatch> implements IProduceBatchService {
}

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