From 6836a3e230c874e457a21ea8ec2b99e74711049c Mon Sep 17 00:00:00 2001 From: username Date: Tue, 27 Aug 2024 13:52:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=92=E4=BB=B6=E9=99=84=E4=BB=B6=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E3=80=81=E6=8F=92=E4=BB=B6=E9=99=84=E4=BB=B6=E4=B8=8B?= =?UTF-8?q?=E8=BD=BD=E3=80=81=E6=8F=92=E4=BB=B6=E5=8F=91=E5=B8=83=E3=80=81?= =?UTF-8?q?=E6=8F=92=E4=BB=B6=E6=92=A4=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- buildpackage/pom.xml | 6 + .../main/resources/application-zqtlocal.yml | 39 +++ .../excel/template/dao/IExcelTemplateDao.java | 15 + .../dao/impl/ExcelTemplateDaoImpl.java | 17 ++ .../template/entity/ExcelTemplateEntity.java | 76 +++++ .../template/entity/ExcelTemplateEntity.xml | 261 ++++++++++++++++ .../service/IExcelTemplateService.java | 12 + .../impl/ExcelTemplateServiceImpl.java | 26 ++ .../dao/IExcelTemplateConfigDao.java | 15 + .../dao/impl/ExcelTemplateConfigDaoImpl.java | 17 ++ .../entity/ExcelTemplateConfigEntity.java | 66 +++++ .../entity/ExcelTemplateConfigEntity.xml | 243 +++++++++++++++ .../service/IExcelTemplateConfigService.java | 12 + .../impl/ExcelTemplateConfigServiceImpl.java | 26 ++ .../dao/IExcelTemplateConfigDetailDao.java | 15 + .../ExcelTemplateConfigDetailDaoImpl.java | 17 ++ .../ExcelTemplateConfigDetailEntity.java | 96 ++++++ .../ExcelTemplateConfigDetailEntity.xml | 278 ++++++++++++++++++ .../IExcelTemplateConfigDetailService.java | 12 + .../ExcelTemplateConfigDetailServiceImpl.java | 26 ++ .../download/entity/FileDownloadEntity.java | 12 + .../download/entity/FileDownloadEntity.xml | 13 +- .../service/IFileDownloadService.java | 2 + .../service/impl/FileDownloadServiceImpl.java | 158 +++++++++- .../file/upload/entity/FileResultEntity.java | 2 + .../sys/file/upload/entity/FileUploadDto.java | 14 + .../file/upload/entity/FileUploadEntity.java | 14 + .../file/upload/entity/FileUploadEntity.xml | 12 + .../upload/service/IFileUploadService.java | 2 + .../service/impl/FileUploadServiceImpl.java | 102 ++++++- .../com/hzya/frame/sys/org/entity/Org.java | 2 + .../dao/ISysApplicationDictionaryDao.java | 15 + .../impl/SysApplicationDictionaryDaoImpl.java | 17 ++ .../SysApplicationDictionaryEntity.java | 76 +++++ .../entity/SysApplicationDictionaryEntity.xml | 256 ++++++++++++++++ .../ISysApplicationDictionaryService.java | 12 + .../SysApplicationDictionaryServiceImpl.java | 26 ++ .../ISysApplicationDictionaryDetailDao.java | 15 + ...SysApplicationDictionaryDetailDaoImpl.java | 17 ++ .../SysApplicationDictionaryDetailEntity.java | 76 +++++ .../SysApplicationDictionaryDetailEntity.xml | 256 ++++++++++++++++ ...SysApplicationDictionaryDetailService.java | 12 + ...pplicationDictionaryDetailServiceImpl.java | 26 ++ .../entity/SysApplicationPluginEntity.java | 19 ++ .../entity/SysApplicationPluginEntity.xml | 20 +- .../service/ISysApplicationService.java | 2 + .../impl/SysApplicationServiceImpl.java | 48 +++ .../mapper/ExcelTemplateConfigDetailDao.xml | 239 +++++++++++++++ .../SysApplicationDictionaryDetailDao.xml | 217 ++++++++++++++ .../controler/EntranceController.java | 53 +++- .../entrance/service/IEntranceService.java | 3 + .../service/impl/EntranceServiceImpl.java | 18 ++ 52 files changed, 3018 insertions(+), 13 deletions(-) create mode 100644 buildpackage/src/main/resources/application-zqtlocal.yml create mode 100644 service/src/main/java/com/hzya/frame/excel/template/dao/IExcelTemplateDao.java create mode 100644 service/src/main/java/com/hzya/frame/excel/template/dao/impl/ExcelTemplateDaoImpl.java create mode 100644 service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.java create mode 100644 service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.xml create mode 100644 service/src/main/java/com/hzya/frame/excel/template/service/IExcelTemplateService.java create mode 100644 service/src/main/java/com/hzya/frame/excel/template/service/impl/ExcelTemplateServiceImpl.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfig/dao/IExcelTemplateConfigDao.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfig/dao/impl/ExcelTemplateConfigDaoImpl.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.xml create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfig/service/IExcelTemplateConfigService.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfig/service/impl/ExcelTemplateConfigServiceImpl.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/IExcelTemplateConfigDetailDao.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/impl/ExcelTemplateConfigDetailDaoImpl.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.xml create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/IExcelTemplateConfigDetailService.java create mode 100644 service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/impl/ExcelTemplateConfigDetailServiceImpl.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/ISysApplicationDictionaryDao.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/impl/SysApplicationDictionaryDaoImpl.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.xml create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/ISysApplicationDictionaryService.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/impl/SysApplicationDictionaryServiceImpl.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/ISysApplicationDictionaryDetailDao.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/impl/SysApplicationDictionaryDetailDaoImpl.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.xml create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/ISysApplicationDictionaryDetailService.java create mode 100644 service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/impl/SysApplicationDictionaryDetailServiceImpl.java create mode 100644 service/src/main/resources/mapper/ExcelTemplateConfigDetailDao.xml create mode 100644 service/src/main/resources/mapper/SysApplicationDictionaryDetailDao.xml diff --git a/buildpackage/pom.xml b/buildpackage/pom.xml index 5c949541..fea721b7 100644 --- a/buildpackage/pom.xml +++ b/buildpackage/pom.xml @@ -69,6 +69,12 @@ llg + + zqtlocal + + zqtlocal + + yuqh diff --git a/buildpackage/src/main/resources/application-zqtlocal.yml b/buildpackage/src/main/resources/application-zqtlocal.yml new file mode 100644 index 00000000..a656bd59 --- /dev/null +++ b/buildpackage/src/main/resources/application-zqtlocal.yml @@ -0,0 +1,39 @@ +#######################zqtlocal环境####################### +logging: + #日志级别 指定目录级别 + level: + root: warn + encodings: UTF-8 + file: + # 日志保存路径 + path: D:/local/logs/ +spring: + datasource: + dynamic: + datasource: + master: + url: jdbc:mysql://ufidahz.com.cn:9014/businesscenter?serverTimezone=UTC&useUnicode=true&characterEncoding=UTF8&serverTimezone=GMT%2B8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowLoadLocalInfile=false&autoReconnect=true&failOverReadOnly=false&connectTimeout=30000&socketTimeout=30000&autoReconnectForPools=true + username: root + password: 62e4295b615a30dbf3b8ee96f41c820b + driver-class-name: com.mysql.jdbc.Driver # 3.2.0开始支持SPI可省略此配置 +savefile: + # 文件保存路径 + path: D:/local/upload/ + pluginpath : D:/local/plugin/ + tomcatpath: E:\apache-tomcat-9.0.27\webapps\kangarooDataCenterV3\WEB-INF\classes\ +cbs8: + appId: 1P4AGrpz + appSecret: 2c2369ae5dc04382844bbe3a5abf39e1bea9cd3a + url: https://cbs8-openapi-reprd.csuat.cmburl.cn + # 测试用这个 这个是银行给的,和下面的公钥不是一对密钥 + ya_private_key: 83BA7EC821D35F4CB31FF9A51C1EFA520FC52AF828C2337F88E91CF119B07F44 + # 这个私钥到时候上传到cbs,和下面到是同一对 + #ya_private_key: e1eacfdee9b8d4184437d5a2071e17ce31befc3d93395f9f05709ed562e8dc46 + ya_public_key: 044fa399d2223760f17b81b863cb482b009294c4516f8a605dea1475ec09e720eaa98468715e5ad509a592a0b426061551c5a3df236966c23253a7d894eac0dcde + cbs_public_key: 0469146F06BF3B01236E84632441E826 + #电子回单下载临时存放位置 + elec_path: /Users/xiangerlin/Downloads/ +OA: + data_source_code: yc_oa +zt: + url: http://127.0.0.1:9082/kangarooDataCenterV3/entranceController/externalCallInterface \ No newline at end of file diff --git a/service/src/main/java/com/hzya/frame/excel/template/dao/IExcelTemplateDao.java b/service/src/main/java/com/hzya/frame/excel/template/dao/IExcelTemplateDao.java new file mode 100644 index 00000000..0ba1ac03 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/template/dao/IExcelTemplateDao.java @@ -0,0 +1,15 @@ +package com.hzya.frame.excel.template.dao; + +import com.hzya.frame.excel.template.entity.ExcelTemplateEntity; +import com.hzya.frame.basedao.dao.IBaseDao; + +/** + * excel模版表(excel_template: table)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:42:49 + */ +public interface IExcelTemplateDao extends IBaseDao { + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/template/dao/impl/ExcelTemplateDaoImpl.java b/service/src/main/java/com/hzya/frame/excel/template/dao/impl/ExcelTemplateDaoImpl.java new file mode 100644 index 00000000..2427d9cc --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/template/dao/impl/ExcelTemplateDaoImpl.java @@ -0,0 +1,17 @@ +package com.hzya.frame.excel.template.dao.impl; + +import com.hzya.frame.excel.template.entity.ExcelTemplateEntity; +import com.hzya.frame.excel.template.dao.IExcelTemplateDao; +import org.springframework.stereotype.Repository; +import com.hzya.frame.basedao.dao.MybatisGenericDao; +/** + * excel模版表(ExcelTemplate)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:42:50 + */ +@Repository(value = "ExcelTemplateDaoImpl") +public class ExcelTemplateDaoImpl extends MybatisGenericDao implements IExcelTemplateDao{ + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.java b/service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.java new file mode 100644 index 00000000..015df9bb --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.java @@ -0,0 +1,76 @@ +package com.hzya.frame.excel.template.entity; + +import java.util.Date; +import com.hzya.frame.web.entity.BaseEntity; +/** + * excel模版表(ExcelTemplate)实体类 + * + * @author makejava + * @since 2024-08-12 16:42:50 + */ +public class ExcelTemplateEntity extends BaseEntity { + + /** 模版名称 */ + private String templateName; + /** 应用id */ + private String appId; + /** 模版编码 */ + private String templateCode; + /** 绑定菜单 */ + private String menuBind; + /** 菜单按钮 */ + private String menuButton; + /** 公司id */ + private String companyId; + + + public String getTemplateName() { + return templateName; + } + + public void setTemplateName(String templateName) { + this.templateName = templateName; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; + } + + public String getTemplateCode() { + return templateCode; + } + + public void setTemplateCode(String templateCode) { + this.templateCode = templateCode; + } + + public String getMenuBind() { + return menuBind; + } + + public void setMenuBind(String menuBind) { + this.menuBind = menuBind; + } + + public String getMenuButton() { + return menuButton; + } + + public void setMenuButton(String menuButton) { + this.menuButton = menuButton; + } + + public String getCompanyId() { + return companyId; + } + + public void setCompanyId(String companyId) { + this.companyId = companyId; + } + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.xml b/service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.xml new file mode 100644 index 00000000..91ab557a --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/template/entity/ExcelTemplateEntity.xml @@ -0,0 +1,261 @@ + + + + + + + + + + + + + + + + + + + + + + + template_name + ,app_id + ,template_code + ,menu_bind + ,menu_button + ,sorts + ,id + ,create_user_id + ,create_time + ,modify_time + ,modify_user_id + ,org_id + ,company_id + ,sts + + + + + + + + + + + + + + + + + + + insert into excel_template( + + template_name , + app_id , + template_code , + menu_bind , + menu_button , + sorts , + id , + create_user_id , + create_time , + modify_time , + modify_user_id , + org_id , + company_id , + sts , + sts, + + )values( + + #{templateName} , + #{appId} , + #{templateCode} , + #{menuBind} , + #{menuButton} , + #{sorts} , + #{id} , + #{create_user_id} , + #{create_time} , + #{modify_time} , + #{modify_user_id} , + #{org_id} , + #{companyId} , + #{sts} , + 'Y', + + ) + + + + insert into excel_template(template_name, app_id, template_code, menu_bind, menu_button, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts, sts) + values + + (#{entity.templateName},#{entity.appId},#{entity.templateCode},#{entity.menuBind},#{entity.menuButton},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}, 'Y') + + + + + insert into excel_template(template_name, app_id, template_code, menu_bind, menu_button, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.templateName},#{entity.appId},#{entity.templateCode},#{entity.menuBind},#{entity.menuButton},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}) + + on duplicate key update + template_name = values(template_name), + app_id = values(app_id), + template_code = values(template_code), + menu_bind = values(menu_bind), + menu_button = values(menu_button), + create_user_id = values(create_user_id), + create_time = values(create_time), + modify_time = values(modify_time), + modify_user_id = values(modify_user_id), + org_id = values(org_id), + company_id = values(company_id), + sts = values(sts) + + +update excel_template set + + template_name = #{templateName}, + app_id = #{appId}, + template_code = #{templateCode}, + menu_bind = #{menuBind}, + menu_button = #{menuButton}, + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_time = #{modify_time}, + modify_user_id = #{modify_user_id}, + org_id = #{org_id}, + company_id = #{companyId}, + sts = #{sts}, + +where sorts = #{sorts} + + + +update excel_template set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} +where sorts = #{sorts} + + + +update excel_template set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} + + and template_name = #{templateName} + and app_id = #{appId} + and template_code = #{templateCode} + and menu_bind = #{menuBind} + and menu_button = #{menuButton} + and sorts = #{sorts} + and id = #{id} + and company_id = #{companyId} + and sts = #{sts} + and sts='Y' + + + + + delete from excel_template where sorts = #{sorts} + + + + diff --git a/service/src/main/java/com/hzya/frame/excel/template/service/IExcelTemplateService.java b/service/src/main/java/com/hzya/frame/excel/template/service/IExcelTemplateService.java new file mode 100644 index 00000000..ad8671d1 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/template/service/IExcelTemplateService.java @@ -0,0 +1,12 @@ +package com.hzya.frame.excel.template.service; + +import com.hzya.frame.excel.template.entity.ExcelTemplateEntity; +import com.hzya.frame.basedao.service.IBaseService; +/** + * excel模版表(ExcelTemplate)表服务接口 + * + * @author makejava + * @since 2024-08-12 16:42:50 + */ +public interface IExcelTemplateService extends IBaseService{ +} diff --git a/service/src/main/java/com/hzya/frame/excel/template/service/impl/ExcelTemplateServiceImpl.java b/service/src/main/java/com/hzya/frame/excel/template/service/impl/ExcelTemplateServiceImpl.java new file mode 100644 index 00000000..f73a486c --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/template/service/impl/ExcelTemplateServiceImpl.java @@ -0,0 +1,26 @@ +package com.hzya.frame.excel.template.service.impl; + +import com.hzya.frame.excel.template.entity.ExcelTemplateEntity; +import com.hzya.frame.excel.template.dao.IExcelTemplateDao; +import com.hzya.frame.excel.template.service.IExcelTemplateService; +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import javax.annotation.Resource; +import com.hzya.frame.basedao.service.impl.BaseService; +/** + * excel模版表(ExcelTemplate)表服务实现类 + * + * @author makejava + * @since 2024-08-12 16:42:50 + */ +@Service(value = "excelTemplateService") +public class ExcelTemplateServiceImpl extends BaseService implements IExcelTemplateService { + + private IExcelTemplateDao excelTemplateDao; + + @Autowired + public void setExcelTemplateDao(IExcelTemplateDao dao) { + this.excelTemplateDao = dao; + this.dao = dao; + } +} diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfig/dao/IExcelTemplateConfigDao.java b/service/src/main/java/com/hzya/frame/excel/templateConfig/dao/IExcelTemplateConfigDao.java new file mode 100644 index 00000000..ef72b230 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfig/dao/IExcelTemplateConfigDao.java @@ -0,0 +1,15 @@ +package com.hzya.frame.excel.templateConfig.dao; + +import com.hzya.frame.excel.templateConfig.entity.ExcelTemplateConfigEntity; +import com.hzya.frame.basedao.dao.IBaseDao; + +/** + * excel模版配置表(excel_template_config: table)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:43:38 + */ +public interface IExcelTemplateConfigDao extends IBaseDao { + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfig/dao/impl/ExcelTemplateConfigDaoImpl.java b/service/src/main/java/com/hzya/frame/excel/templateConfig/dao/impl/ExcelTemplateConfigDaoImpl.java new file mode 100644 index 00000000..ea9afd4e --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfig/dao/impl/ExcelTemplateConfigDaoImpl.java @@ -0,0 +1,17 @@ +package com.hzya.frame.excel.templateConfig.dao.impl; + +import com.hzya.frame.excel.templateConfig.entity.ExcelTemplateConfigEntity; +import com.hzya.frame.excel.templateConfig.dao.IExcelTemplateConfigDao; +import org.springframework.stereotype.Repository; +import com.hzya.frame.basedao.dao.MybatisGenericDao; +/** + * excel模版配置表(ExcelTemplateConfig)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:43:38 + */ +@Repository(value = "ExcelTemplateConfigDaoImpl") +public class ExcelTemplateConfigDaoImpl extends MybatisGenericDao implements IExcelTemplateConfigDao{ + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.java b/service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.java new file mode 100644 index 00000000..f75acdab --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.java @@ -0,0 +1,66 @@ +package com.hzya.frame.excel.templateConfig.entity; + +import java.util.Date; +import com.hzya.frame.web.entity.BaseEntity; +/** + * excel模版配置表(ExcelTemplateConfig)实体类 + * + * @author makejava + * @since 2024-08-12 16:43:38 + */ +public class ExcelTemplateConfigEntity extends BaseEntity { + + /** 模版id */ + private String templateId; + /** 类型(数据库表/语句) */ + private String type; + /** 表类型(主表/明细) */ + private String tableType; + /** 数据字典id */ + private String dataDictionaryId; + /** 公司id */ + private String companyId; + + + public String getTemplateId() { + return templateId; + } + + public void setTemplateId(String templateId) { + this.templateId = templateId; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getTableType() { + return tableType; + } + + public void setTableType(String tableType) { + this.tableType = tableType; + } + + public String getDataDictionaryId() { + return dataDictionaryId; + } + + public void setDataDictionaryId(String dataDictionaryId) { + this.dataDictionaryId = dataDictionaryId; + } + + public String getCompanyId() { + return companyId; + } + + public void setCompanyId(String companyId) { + this.companyId = companyId; + } + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.xml b/service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.xml new file mode 100644 index 00000000..40f7605f --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfig/entity/ExcelTemplateConfigEntity.xml @@ -0,0 +1,243 @@ + + + + + + + + + + + + + + + + + + + + + + template_id + ,type + ,table_type + ,data_dictionary_id + ,sorts + ,id + ,create_user_id + ,create_time + ,modify_time + ,modify_user_id + ,org_id + ,company_id + ,sts + + + + + + + + + + + + + + + + insert into excel_template_config( + + template_id , + type , + table_type , + data_dictionary_id , + sorts , + id , + create_user_id , + create_time , + modify_time , + modify_user_id , + org_id , + company_id , + sts , + sts, + + )values( + + #{templateId} , + #{type} , + #{tableType} , + #{dataDictionaryId} , + #{sorts} , + #{id} , + #{create_user_id} , + #{create_time} , + #{modify_time} , + #{modify_user_id} , + #{org_id} , + #{companyId} , + #{sts} , + 'Y', + + ) + + + + insert into excel_template_config(template_id, type, table_type, data_dictionary_id, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts, sts) + values + + (#{entity.templateId},#{entity.type},#{entity.tableType},#{entity.dataDictionaryId},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}, 'Y') + + + + + insert into excel_template_config(template_id, type, table_type, data_dictionary_id, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.templateId},#{entity.type},#{entity.tableType},#{entity.dataDictionaryId},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}) + + on duplicate key update + template_id = values(template_id), + type = values(type), + table_type = values(table_type), + data_dictionary_id = values(data_dictionary_id), + create_user_id = values(create_user_id), + create_time = values(create_time), + modify_time = values(modify_time), + modify_user_id = values(modify_user_id), + org_id = values(org_id), + company_id = values(company_id), + sts = values(sts) + + +update excel_template_config set + + template_id = #{templateId}, + type = #{type}, + table_type = #{tableType}, + data_dictionary_id = #{dataDictionaryId}, + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_time = #{modify_time}, + modify_user_id = #{modify_user_id}, + org_id = #{org_id}, + company_id = #{companyId}, + sts = #{sts}, + +where sorts = #{sorts} + + + +update excel_template_config set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} +where sorts = #{sorts} + + + +update excel_template_config set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} + + and template_id = #{templateId} + and type = #{type} + and table_type = #{tableType} + and data_dictionary_id = #{dataDictionaryId} + and sorts = #{sorts} + and id = #{id} + and company_id = #{companyId} + and sts = #{sts} + and sts='Y' + + + + + delete from excel_template_config where sorts = #{sorts} + + + + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfig/service/IExcelTemplateConfigService.java b/service/src/main/java/com/hzya/frame/excel/templateConfig/service/IExcelTemplateConfigService.java new file mode 100644 index 00000000..2f690a33 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfig/service/IExcelTemplateConfigService.java @@ -0,0 +1,12 @@ +package com.hzya.frame.excel.templateConfig.service; + +import com.hzya.frame.excel.templateConfig.entity.ExcelTemplateConfigEntity; +import com.hzya.frame.basedao.service.IBaseService; +/** + * excel模版配置表(ExcelTemplateConfig)表服务接口 + * + * @author makejava + * @since 2024-08-12 16:43:38 + */ +public interface IExcelTemplateConfigService extends IBaseService{ +} diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfig/service/impl/ExcelTemplateConfigServiceImpl.java b/service/src/main/java/com/hzya/frame/excel/templateConfig/service/impl/ExcelTemplateConfigServiceImpl.java new file mode 100644 index 00000000..72147b38 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfig/service/impl/ExcelTemplateConfigServiceImpl.java @@ -0,0 +1,26 @@ +package com.hzya.frame.excel.templateConfig.service.impl; + +import com.hzya.frame.excel.templateConfig.entity.ExcelTemplateConfigEntity; +import com.hzya.frame.excel.templateConfig.dao.IExcelTemplateConfigDao; +import com.hzya.frame.excel.templateConfig.service.IExcelTemplateConfigService; +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import javax.annotation.Resource; +import com.hzya.frame.basedao.service.impl.BaseService; +/** + * excel模版配置表(ExcelTemplateConfig)表服务实现类 + * + * @author makejava + * @since 2024-08-12 16:43:38 + */ +@Service(value = "excelTemplateConfigService") +public class ExcelTemplateConfigServiceImpl extends BaseService implements IExcelTemplateConfigService { + + private IExcelTemplateConfigDao excelTemplateConfigDao; + + @Autowired + public void setExcelTemplateConfigDao(IExcelTemplateConfigDao dao) { + this.excelTemplateConfigDao = dao; + this.dao = dao; + } +} diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/IExcelTemplateConfigDetailDao.java b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/IExcelTemplateConfigDetailDao.java new file mode 100644 index 00000000..ade61d52 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/IExcelTemplateConfigDetailDao.java @@ -0,0 +1,15 @@ +package com.hzya.frame.excel.templateConfigDetial.dao; + +import com.hzya.frame.excel.templateConfigDetial.entity.ExcelTemplateConfigDetailEntity; +import com.hzya.frame.basedao.dao.IBaseDao; + +/** + * excel模版配置明细表(excel_template_config_detail: table)表数据库访问层 + * + * @author makejava + * @since 2024-08-13 08:39:02 + */ +public interface IExcelTemplateConfigDetailDao extends IBaseDao { + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/impl/ExcelTemplateConfigDetailDaoImpl.java b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/impl/ExcelTemplateConfigDetailDaoImpl.java new file mode 100644 index 00000000..60b4ff82 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/dao/impl/ExcelTemplateConfigDetailDaoImpl.java @@ -0,0 +1,17 @@ +package com.hzya.frame.excel.templateConfigDetial.dao.impl; + +import com.hzya.frame.excel.templateConfigDetial.entity.ExcelTemplateConfigDetailEntity; +import com.hzya.frame.excel.templateConfigDetial.dao.IExcelTemplateConfigDetailDao; +import org.springframework.stereotype.Repository; +import com.hzya.frame.basedao.dao.MybatisGenericDao; +/** + * excel模版配置明细表(ExcelTemplateConfigDetail)表数据库访问层 + * + * @author makejava + * @since 2024-08-13 08:39:02 + */ +@Repository(value = "ExcelTemplateConfigDetailDaoImpl") +public class ExcelTemplateConfigDetailDaoImpl extends MybatisGenericDao implements IExcelTemplateConfigDetailDao{ + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.java b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.java new file mode 100644 index 00000000..0119a934 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.java @@ -0,0 +1,96 @@ +package com.hzya.frame.excel.templateConfigDetial.entity; + +import java.util.Date; +import com.hzya.frame.web.entity.BaseEntity; +/** + * excel模版配置明细表(ExcelTemplateConfigDetail)实体类 + * + * @author makejava + * @since 2024-08-13 08:39:02 + */ +public class ExcelTemplateConfigDetailEntity extends BaseEntity { + + /** 字段名称 */ + private String fieldName; + /** 字段编码 */ + private String fieldCode; + /** 字段类型 */ + private String fieldType; + /** 应用数据字典明细表id */ + private String dictionaryDetailId; + /** 显示名称 */ + private String showName; + /** 序号 */ + private Long templateSort; + /** 开关 */ + private String templateSwitch; + /** 公司id */ + private String companyId; + + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getFieldCode() { + return fieldCode; + } + + public void setFieldCode(String fieldCode) { + this.fieldCode = fieldCode; + } + + public String getFieldType() { + return fieldType; + } + + public void setFieldType(String fieldType) { + this.fieldType = fieldType; + } + + public String getDictionaryDetailId() { + return dictionaryDetailId; + } + + public void setDictionaryDetailId(String dictionaryDetailId) { + this.dictionaryDetailId = dictionaryDetailId; + } + + public String getShowName() { + return showName; + } + + public void setShowName(String showName) { + this.showName = showName; + } + + public Long getTemplateSort() { + return templateSort; + } + + public void setTemplateSort(Long templateSort) { + this.templateSort = templateSort; + } + + public String getTemplateSwitch() { + return templateSwitch; + } + + public void setTemplateSwitch(String templateSwitch) { + this.templateSwitch = templateSwitch; + } + + public String getCompanyId() { + return companyId; + } + + public void setCompanyId(String companyId) { + this.companyId = companyId; + } + +} + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.xml b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.xml new file mode 100644 index 00000000..abcd07b0 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/entity/ExcelTemplateConfigDetailEntity.xml @@ -0,0 +1,278 @@ + + + + + + + + + + + + + + + + + + + + + + + + + field_name + ,field_code + ,field_type + ,dictionary_detail_id + ,show_name + ,template_sort + ,template_switch + ,sorts + ,id + ,create_user_id + ,create_time + ,modify_time + ,modify_user_id + ,org_id + ,company_id + ,sts + + + + + + + + + + + + + + + + insert into excel_template_config_detail( + + field_name , + field_code , + field_type , + dictionary_detail_id , + show_name , + template_sort , + template_switch , + sorts , + id , + create_user_id , + create_time , + modify_time , + modify_user_id , + org_id , + company_id , + sts , + sorts, + sts, + + )values( + + #{fieldName} , + #{fieldCode} , + #{fieldType} , + #{dictionaryDetailId} , + #{showName} , + #{templateSort} , + #{templateSwitch} , + #{sorts} , + #{id} , + #{create_user_id} , + #{create_time} , + #{modify_time} , + #{modify_user_id} , + #{org_id} , + #{companyId} , + #{sts} , + (select (max(IFNULL( a.sorts, 0 )) + 1) as sort from excel_template_config_detail a WHERE a.sts = 'Y' ), + 'Y', + + ) + + + + insert into excel_template_config_detail(field_name, field_code, field_type, dictionary_detail_id, show_name, template_sort, template_switch, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts, sts) + values + + (#{entity.fieldName},#{entity.fieldCode},#{entity.fieldType},#{entity.dictionaryDetailId},#{entity.showName},#{entity.templateSort},#{entity.templateSwitch},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}, 'Y') + + + + + insert into excel_template_config_detail(field_name, field_code, field_type, dictionary_detail_id, show_name, template_sort, template_switch, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.fieldName},#{entity.fieldCode},#{entity.fieldType},#{entity.dictionaryDetailId},#{entity.showName},#{entity.templateSort},#{entity.templateSwitch},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}) + + on duplicate key update + field_name = values(field_name), + field_code = values(field_code), + field_type = values(field_type), + dictionary_detail_id = values(dictionary_detail_id), + show_name = values(show_name), + template_sort = values(template_sort), + template_switch = values(template_switch), + create_user_id = values(create_user_id), + create_time = values(create_time), + modify_time = values(modify_time), + modify_user_id = values(modify_user_id), + org_id = values(org_id), + company_id = values(company_id), + sts = values(sts) + + +update excel_template_config_detail set + + field_name = #{fieldName}, + field_code = #{fieldCode}, + field_type = #{fieldType}, + dictionary_detail_id = #{dictionaryDetailId}, + show_name = #{showName}, + template_sort = #{templateSort}, + template_switch = #{templateSwitch}, + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_time = #{modify_time}, + modify_user_id = #{modify_user_id}, + org_id = #{org_id}, + company_id = #{companyId}, + sts = #{sts}, + +where sorts = #{sorts} + + + +update excel_template_config_detail set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} +where sorts = #{sorts} + + + +update excel_template_config_detail set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} + + and field_name = #{fieldName} + and field_code = #{fieldCode} + and field_type = #{fieldType} + and dictionary_detail_id = #{dictionaryDetailId} + and show_name = #{showName} + and template_sort = #{templateSort} + and template_switch = #{templateSwitch} + and sorts = #{sorts} + and id = #{id} + and company_id = #{companyId} + and sts = #{sts} + and sts='Y' + + + + + delete from excel_template_config_detail where sorts = #{sorts} + + + + diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/IExcelTemplateConfigDetailService.java b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/IExcelTemplateConfigDetailService.java new file mode 100644 index 00000000..746ee7fc --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/IExcelTemplateConfigDetailService.java @@ -0,0 +1,12 @@ +package com.hzya.frame.excel.templateConfigDetial.service; + +import com.hzya.frame.excel.templateConfigDetial.entity.ExcelTemplateConfigDetailEntity; +import com.hzya.frame.basedao.service.IBaseService; +/** + * excel模版配置明细表(ExcelTemplateConfigDetail)表服务接口 + * + * @author makejava + * @since 2024-08-13 08:39:02 + */ +public interface IExcelTemplateConfigDetailService extends IBaseService{ +} diff --git a/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/impl/ExcelTemplateConfigDetailServiceImpl.java b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/impl/ExcelTemplateConfigDetailServiceImpl.java new file mode 100644 index 00000000..51e02292 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/excel/templateConfigDetial/service/impl/ExcelTemplateConfigDetailServiceImpl.java @@ -0,0 +1,26 @@ +package com.hzya.frame.excel.templateConfigDetial.service.impl; + +import com.hzya.frame.excel.templateConfigDetial.entity.ExcelTemplateConfigDetailEntity; +import com.hzya.frame.excel.templateConfigDetial.dao.IExcelTemplateConfigDetailDao; +import com.hzya.frame.excel.templateConfigDetial.service.IExcelTemplateConfigDetailService; +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import javax.annotation.Resource; +import com.hzya.frame.basedao.service.impl.BaseService; +/** + * excel模版配置明细表(ExcelTemplateConfigDetail)表服务实现类 + * + * @author makejava + * @since 2024-08-13 08:39:02 + */ +@Service(value = "excelTemplateConfigDetailService") +public class ExcelTemplateConfigDetailServiceImpl extends BaseService implements IExcelTemplateConfigDetailService { + + private IExcelTemplateConfigDetailDao excelTemplateConfigDetailDao; + + @Autowired + public void setExcelTemplateConfigDetailDao(IExcelTemplateConfigDetailDao dao) { + this.excelTemplateConfigDetailDao = dao; + this.dao = dao; + } +} diff --git a/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.java b/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.java index 34dae4ad..928a687d 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.java +++ b/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.java @@ -25,6 +25,18 @@ public class FileDownloadEntity extends BaseEntity { private String filepath; /** 文件*/ private File file; + /** 文件类型 + * 1:普通文件 + * 2:插件附件*/ + private String fileType; + + public String getFileType() { + return fileType; + } + + public void setFileType(String fileType) { + this.fileType = fileType; + } /** 文件名称 */ public void setFilename(String filename) { diff --git a/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.xml b/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.xml index f9065b2b..892b4f23 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.xml +++ b/service/src/main/java/com/hzya/frame/sys/file/download/entity/FileDownloadEntity.xml @@ -26,6 +26,8 @@ + + @@ -40,7 +42,8 @@ create_time, modify_user_id, modify_time, - sts + sts, + file_type @@ -60,6 +63,7 @@ and filename = #{filename} and filesavename = #{filesavename} and type = #{type} + and file_type = #{fileType} and file_size = #{file_size} and description = #{description} and filepath = #{filepath} @@ -82,6 +86,7 @@ and filename = #{filename} and filesavename = #{filesavename} and type = #{type} + and file_type = #{fileType} and file_size = #{file_size} and description = #{description} and filepath = #{filepath} @@ -106,6 +111,7 @@ and filename like concat('%',#{filename},'%') and filesavename like concat('%',#{filesavename},'%') and type like concat('%',#{type},'%') + and file_type like concat('%',#{fileType},'%') and file_size = #{file_size} and description like concat('%',#{description},'%') and filepath like concat('%',#{filepath},'%') @@ -130,6 +136,7 @@ or filename = #{filename} or filesavename = #{filesavename} or type = #{type} + or file_type = #{fileType} or file_size = #{file_size} or description = #{description} or filepath = #{filepath} @@ -151,6 +158,7 @@ filename, filesavename, type, + file_type, file_size, description, filepath, @@ -167,6 +175,7 @@ #{filename}, #{filesavename}, #{type}, + #{fileType}, #{file_size}, #{description}, #{filepath}, @@ -192,6 +201,7 @@ filename = #{filename}, filesavename = #{filesavename}, type = #{type}, + file_type = #{fileType}, file_size = #{file_size}, description = #{description}, filepath = #{filepath}, @@ -219,6 +229,7 @@ and filename = #{filename} and filesavename = #{filesavename} and type = #{type} + and file_type = #{fileType} and file_size = #{file_size} and description = #{description} and filepath = #{filepath} diff --git a/service/src/main/java/com/hzya/frame/sys/file/download/service/IFileDownloadService.java b/service/src/main/java/com/hzya/frame/sys/file/download/service/IFileDownloadService.java index 36efcf95..ff8358f1 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/download/service/IFileDownloadService.java +++ b/service/src/main/java/com/hzya/frame/sys/file/download/service/IFileDownloadService.java @@ -28,4 +28,6 @@ public interface IFileDownloadService extends IBaseService entries = zipFile.entries(); +// boolean isFirst = true; +// String firstName = ""; +// while (entries.hasMoreElements()) { +// ZipEntry entry = (ZipEntry) entries.nextElement(); +// // 构造解压后的文件路径,去掉压缩包的名字 +// String unzipPath = entry.getName().replace(firstName,""); +// String classPath = "com\\hzya\\frame\\plugin"; +// String xmlPath = "cfgHome\\plugin"; +// +// String dirPath = ""; +// if(unzipPath.contains("classfile/")){ +// dirPath = TOMCATPATH + "/" + classPath + unzipPath.replace("classfile",""); +// } +// if(unzipPath.contains("xmlfile/")){ +// dirPath = TOMCATPATH + "/" + xmlPath + unzipPath.replace("xmlfile",""); +// } +// +// // 如果是文件夹,就创建个文件夹 +// if (entry.isDirectory()) { +// if(isFirst == false){ +// File dir = new File(dirPath); +// dir.mkdirs(); +// }else{ +// firstName = entry.getName(); +// isFirst = false; +// } +// } else { +// // 如果是文件,就先创建一个文件,然后用io流把内容copy过去 +// File targetFile = new File(dirPath); +// // 保证这个文件的父文件夹必须要存在 +// if (!targetFile.getParentFile().exists()) { +// targetFile.getParentFile().mkdirs(); +// } +// targetFile.createNewFile(); +// // 将压缩文件内容写入到这个文件中 +// InputStream is = zipFile.getInputStream(entry); +// FileOutputStream fos = new FileOutputStream(targetFile); +// int len; +// byte[] buf = new byte[1024]; +// while ((len = is.read(buf)) != -1) { +// fos.write(buf, 0, len); +// } +// // 关流顺序,先打开的后关闭 +// fos.close(); +// is.close(); +// } +// } +// +// +// +// return fileDownloadEntity; +// } + + @Override + public FileDownloadEntity pluginZipUpate(FileUploadDto fileUploadDto) throws Exception { + /** 如果fileUploadDto的id直接为空,或者null直接抛出异常*/ + if(fileUploadDto == null || fileUploadDto.getId() == null || "".equals(fileUploadDto.getId())){ + throw new BaseSystemException("请传入参数!"); + } + /** 根据唯一名称获取文件信息*/ + FileDownloadEntity queryEntity = new FileDownloadEntity(); + queryEntity.setId(fileUploadDto.getId()); + queryEntity.setSts("Y"); + FileDownloadEntity fileDownloadEntity =filedownloadDao.queryOne(queryEntity); + String filePath = fileDownloadEntity.getFilepath(); + //插件附件路径 + String inputFile = PLUGINPATH + filePath; + + File srcFile = new File(inputFile);//获取当前压缩文件 + // 判断源文件是否存在 + if (!srcFile.exists()) { + throw new Exception(srcFile.getPath() + "所指文件不存在"); + } + ZipFile zipFile = new ZipFile(srcFile);//创建压缩文件对象 + //开始解压 + Enumeration entries = zipFile.entries(); + + while (entries.hasMoreElements()) { + ZipEntry entry = (ZipEntry) entries.nextElement(); + String unzipPath = entry.getName(); + + String dirPath = TOMCATPATH + unzipPath; + + // 如果是文件夹,就创建个文件夹 + if (entry.isDirectory()) { + File dir = new File(dirPath); + dir.mkdirs(); + } else { + // 如果是文件,就先创建一个文件,然后用io流把内容copy过去 + File targetFile = new File(dirPath); + // 保证这个文件的父文件夹必须要存在 + if (!targetFile.getParentFile().exists()) { + targetFile.getParentFile().mkdirs(); + } + targetFile.createNewFile(); + // 将压缩文件内容写入到这个文件中 + InputStream is = zipFile.getInputStream(entry); + FileOutputStream fos = new FileOutputStream(targetFile); + int len; + byte[] buf = new byte[1024]; + while ((len = is.read(buf)) != -1) { + fos.write(buf, 0, len); + } + // 关流顺序,先打开的后关闭 + fos.close(); + is.close(); + } + } + + return fileDownloadEntity; + } + + } diff --git a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileResultEntity.java b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileResultEntity.java index 4e2bd287..0ae3765f 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileResultEntity.java +++ b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileResultEntity.java @@ -28,7 +28,9 @@ private Long business_id; * * */ private String business_type; + /** 1:上传普通文件 2:上传插件*/ /** 是否是业务附件 true 是(是业务附件的时候,请传入相对应的业务ID,) false 不是,*/ + private boolean fileFlag; /** 上传文件的ID*/ private String fileID; diff --git a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadDto.java b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadDto.java index 049adf4c..ee752549 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadDto.java +++ b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadDto.java @@ -21,12 +21,26 @@ public class FileUploadDto { * 业务类型 */ private String businessType; + /** + * 文件类型 + * 1:普通文件 + * 2:插件附件 + */ + private String fileType = "1"; /** * 是否是业务类型 */ private boolean fileFlag; + public String getFileType() { + return fileType; + } + + public void setFileType(String fileType) { + this.fileType = fileType; + } + public String getBusinessType() { return businessType; } diff --git a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.java b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.java index 3aabaa19..0a920b89 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.java +++ b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.java @@ -26,6 +26,12 @@ public class FileUploadEntity extends BaseEntity { * 文件类型 */ private String type; + /** + * 文件类型 + * 1:普通文件 + * 2:插件附件 + */ + private String fileType; /** * 文件大小(kb) */ @@ -48,6 +54,14 @@ public class FileUploadEntity extends BaseEntity { private File[] multiFile; private String[] multiFileFileName; + public String getFileType() { + return fileType; + } + + public void setFileType(String fileType) { + this.fileType = fileType; + } + /** * 文件名称 */ diff --git a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.xml b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.xml index 71f2a604..81374007 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.xml +++ b/service/src/main/java/com/hzya/frame/sys/file/upload/entity/FileUploadEntity.xml @@ -10,6 +10,8 @@ + + @@ -33,6 +35,7 @@ filename, filesavename, type, + file_type, file_size, description, filepath, @@ -60,6 +63,7 @@ and filename = #{filename} and filesavename = #{filesavename} and type = #{type} + and file_type = #{fileType} and file_size = #{file_size} and description = #{description} and filepath = #{filepath} @@ -82,6 +86,7 @@ and filename = #{filename} and filesavename = #{filesavename} and type = #{type} + and file_type = #{fileType} and file_size = #{file_size} and description = #{description} and filepath = #{filepath} @@ -106,6 +111,7 @@ and filename like concat('%',#{filename},'%') and filesavename like concat('%',#{filesavename},'%') and type like concat('%',#{type},'%') + and file_type like concat('%',#{fileType},'%') and file_size = #{file_size} and description like concat('%',#{description},'%') and filepath like concat('%',#{filepath},'%') @@ -130,6 +136,7 @@ or filename = #{filename} or filesavename = #{filesavename} or type = #{type} + or file_type = #{fileType} or file_size = #{file_size} or description = #{description} or filepath = #{filepath} @@ -151,6 +158,7 @@ filename, filesavename, type, + file_type, file_size, description, filepath, @@ -167,6 +175,7 @@ #{filename}, #{filesavename}, #{type}, + #{fileType}, #{file_size}, #{description}, #{filepath}, @@ -189,6 +198,7 @@ filename = #{filename}, filesavename = #{filesavename}, type = #{type}, + file_type = #{fileType}, file_size = #{file_size}, description = #{description}, filepath = #{filepath}, @@ -206,6 +216,7 @@ filename = #{filename}, type = #{type}, + file_type = #{fileType}, file_size = #{file_size}, description = #{description}, filepath = #{filepath}, @@ -233,6 +244,7 @@ and filename = #{filename} and filesavename = #{filesavename} and type = #{type} + and file_type = #{fileType} and file_size = #{file_size} and description = #{description} and filepath = #{filepath} diff --git a/service/src/main/java/com/hzya/frame/sys/file/upload/service/IFileUploadService.java b/service/src/main/java/com/hzya/frame/sys/file/upload/service/IFileUploadService.java index 24d47a77..41ad6ebc 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/upload/service/IFileUploadService.java +++ b/service/src/main/java/com/hzya/frame/sys/file/upload/service/IFileUploadService.java @@ -25,6 +25,8 @@ public interface IFileUploadService extends IBaseService * @throws IOException */ FileUploadEntity fileUpload(MultipartFile files, FileUploadDto entity) throws Exception; + + FileUploadEntity pluginfileUpload(MultipartFile files, FileUploadDto entity,String pluginPackageName) throws Exception; /** * 文件上传方法 * diff --git a/service/src/main/java/com/hzya/frame/sys/file/upload/service/impl/FileUploadServiceImpl.java b/service/src/main/java/com/hzya/frame/sys/file/upload/service/impl/FileUploadServiceImpl.java index 8060899b..b2ccda26 100644 --- a/service/src/main/java/com/hzya/frame/sys/file/upload/service/impl/FileUploadServiceImpl.java +++ b/service/src/main/java/com/hzya/frame/sys/file/upload/service/impl/FileUploadServiceImpl.java @@ -23,9 +23,13 @@ import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.FileInputStream; +import java.io.FileOutputStream; import java.io.InputStream; import java.util.Date; +import java.util.Enumeration; import java.util.List; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; /** * @description: 系统文件上传 service @@ -39,6 +43,9 @@ public class FileUploadServiceImpl extends BaseService i @Value("${savefile.path}") public String DSK; + @Value("${savefile.pluginpath}") + public String PLUGINPATH; + protected IFileUploadDao fileUploadDao; @Autowired @@ -76,8 +83,92 @@ public class FileUploadServiceImpl extends BaseService i /** 获取到拼接完成的文件属性*/ String path = stringBuffer.toString(); /** 保存到file表信息*/ - FileUploadEntity fileUploadEntity = saveFile(file, path, "附件备注"); - path = DSK + fileUploadEntity.getFilepath(); + FileUploadEntity fileUploadEntity = saveFile(file, path, "附件备注",entity.getFileType()); + /**当fileType为2时,存储的是插件附件*/ + if(entity.getFileType().equals("2")){ + path = PLUGINPATH + fileUploadEntity.getFilepath(); + }else{ + path = DSK + fileUploadEntity.getFilepath(); + } + + /** 创建文件夹*/ + FileUtils.createDir(path); + File uploadFile = new File(path); + file.transferTo(uploadFile); + return fileUploadEntity; + } + + @Override + public FileUploadEntity pluginfileUpload(MultipartFile file, FileUploadDto entity,String pluginPackageName) throws Exception { + + // 创建一个临时文件 + File fileT = new File(file.getOriginalFilename()); + // 将 MultipartFile 的内容写入文件 + try (FileOutputStream fos = new FileOutputStream(fileT)) { + // 获取文件内容的字节数组 + byte[] bytes = file.getBytes(); + fos.write(bytes); + } + + ZipFile zipFile = new ZipFile(fileT);//创建压缩文件对象 + //开始解压 + Enumeration entries = zipFile.entries(); + boolean xmlflag = false; + boolean classflag = false; + while (entries.hasMoreElements()) { + ZipEntry entry = (ZipEntry) entries.nextElement(); + if(xmlflag == false){ + if(entry.getName().contains("cfgHome/plugin/"+pluginPackageName) && entry.isDirectory()){ + xmlflag = true; + } + } + if(classflag == false){ + if(entry.getName().contains("com/hzya/frame/plugin/"+pluginPackageName) && entry.isDirectory()){ + classflag = true; + } + } + if(xmlflag && classflag){ + break; + } + } + if(xmlflag == false || classflag == false){ + throw new BaseSystemException("插件附件不符合规范或插件包名填写错误,请检查!"); + } + fileT.delete(); + zipFile.close(); + + + /** 获取系统设置文件存放的盘符*/ + StringBuffer stringBuffer = new StringBuffer(); + /** 获取根目录*/ + //stringBuffer.append(DSK); + /** 根据当前日期创建文件目录*/ + String nowDateString = DateUtil.dateToString(new Date(), "yyyy-MM-dd"); + + /** 判断传入的文件是否是属于业务的文件数据,如果是则根据业务单据去生成文件夹,否则,按照日期生成*/ + if (entity.isFileFlag() && entity.getBusinessType() != null && !"".equals(entity.getBusinessType())) { + /** 没有单票ID临时把文件放在default目录下面*/ + /** 创建默认文件夹*/ + stringBuffer.append(File.separator+entity.getBusinessType()); + /** 根据当前日期生成文件夹*/ + stringBuffer.append(File.separator + nowDateString); + } else { + /** 创建默认文件夹*/ + stringBuffer.append(File.separator+"default"); + /** 拼接上当前日期*/ + stringBuffer.append(File.separator + nowDateString); + } + /** 获取到拼接完成的文件属性*/ + String path = stringBuffer.toString(); + /** 保存到file表信息*/ + FileUploadEntity fileUploadEntity = saveFile(file, path, "附件备注",entity.getFileType()); + /**当fileType为2时,存储的是插件附件*/ + if(entity.getFileType().equals("2")){ + path = PLUGINPATH + fileUploadEntity.getFilepath(); + }else{ + path = DSK + fileUploadEntity.getFilepath(); + } + /** 创建文件夹*/ FileUtils.createDir(path); File uploadFile = new File(path); @@ -91,7 +182,9 @@ public class FileUploadServiceImpl extends BaseService i /** 获取系统设置文件存放的盘符*/ StringBuffer stringBuffer = new StringBuffer(); /** 获取根目录*/ - stringBuffer.append(DSK); + stringBuffer.append(DSK); + + /** 获取当前人所在的公司,用ID和公司名称拼接*/ // stringBuffer.append("/" + userEntity.getOrg_name() + "_" + userEntity.getOrg_id()); /** 根据当前日期创建文件目录*/ @@ -278,7 +371,7 @@ public class FileUploadServiceImpl extends BaseService i * @param description * @return */ - private FileUploadEntity saveFile(MultipartFile file, String filepath, String description) { + private FileUploadEntity saveFile(MultipartFile file, String filepath, String description,String fileType) { /*** UUID生成File的新名称*/ Long id = UUIDLong.longUUID(); Long fileNewName = UUIDLong.longUUID(); @@ -291,6 +384,7 @@ public class FileUploadServiceImpl extends BaseService i fileUploadEntity.setFilename(fileName); fileUploadEntity.setFilesavename(String.valueOf(fileNewName)); fileUploadEntity.setType(type); + fileUploadEntity.setFileType(fileType); fileUploadEntity.setFile_size(file.getSize()); fileUploadEntity.setDescription(description); fileUploadEntity.setFilepath(filepath+ File.separator +fileUploadEntity.getFilesavename()); diff --git a/service/src/main/java/com/hzya/frame/sys/org/entity/Org.java b/service/src/main/java/com/hzya/frame/sys/org/entity/Org.java index 71f5bb48..c1478753 100644 --- a/service/src/main/java/com/hzya/frame/sys/org/entity/Org.java +++ b/service/src/main/java/com/hzya/frame/sys/org/entity/Org.java @@ -20,6 +20,8 @@ import java.util.List; */ public class Org extends BaseEntity { + + /** 唯一标识码 */ private String id; /** 组织机构编码 */ diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/ISysApplicationDictionaryDao.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/ISysApplicationDictionaryDao.java new file mode 100644 index 00000000..cfa3dc0c --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/ISysApplicationDictionaryDao.java @@ -0,0 +1,15 @@ +package com.hzya.frame.sysnew.application.dictionary.dao; + +import com.hzya.frame.sysnew.application.dictionary.entity.SysApplicationDictionaryEntity; +import com.hzya.frame.basedao.dao.IBaseDao; + +/** + * 应用数据字典表(sys_application_dictionary: table)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:40:53 + */ +public interface ISysApplicationDictionaryDao extends IBaseDao { + +} + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/impl/SysApplicationDictionaryDaoImpl.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/impl/SysApplicationDictionaryDaoImpl.java new file mode 100644 index 00000000..6d955f8b --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/dao/impl/SysApplicationDictionaryDaoImpl.java @@ -0,0 +1,17 @@ +package com.hzya.frame.sysnew.application.dictionary.dao.impl; + +import com.hzya.frame.sysnew.application.dictionary.entity.SysApplicationDictionaryEntity; +import com.hzya.frame.sysnew.application.dictionary.dao.ISysApplicationDictionaryDao; +import org.springframework.stereotype.Repository; +import com.hzya.frame.basedao.dao.MybatisGenericDao; +/** + * 应用数据字典表(SysApplicationDictionary)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:41:07 + */ +@Repository(value = "SysApplicationDictionaryDaoImpl") +public class SysApplicationDictionaryDaoImpl extends MybatisGenericDao implements ISysApplicationDictionaryDao{ + +} + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.java new file mode 100644 index 00000000..fb52744c --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.java @@ -0,0 +1,76 @@ +package com.hzya.frame.sysnew.application.dictionary.entity; + +import java.util.Date; +import com.hzya.frame.web.entity.BaseEntity; +/** + * 应用数据字典表(SysApplicationDictionary)实体类 + * + * @author makejava + * @since 2024-08-12 16:41:20 + */ +public class SysApplicationDictionaryEntity extends BaseEntity { + + /** 应用id */ + private String appId; + /** 名称 */ + private String name; + /** 类型 */ + private String dictionaryType; + /** 表 */ + private String dictionaryTable; + /** 语句 */ + private String dictionarySql; + /** 公司id */ + private String companyId; + + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDictionaryType() { + return dictionaryType; + } + + public void setDictionaryType(String dictionaryType) { + this.dictionaryType = dictionaryType; + } + + public String getDictionaryTable() { + return dictionaryTable; + } + + public void setDictionaryTable(String dictionaryTable) { + this.dictionaryTable = dictionaryTable; + } + + public String getDictionarySql() { + return dictionarySql; + } + + public void setDictionarySql(String dictionarySql) { + this.dictionarySql = dictionarySql; + } + + public String getCompanyId() { + return companyId; + } + + public void setCompanyId(String companyId) { + this.companyId = companyId; + } + +} + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.xml b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.xml new file mode 100644 index 00000000..6c3be854 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/entity/SysApplicationDictionaryEntity.xml @@ -0,0 +1,256 @@ + + + + + + + + + + + + + + + + + + + + + + + app_id + ,name + ,dictionary_type + ,dictionary_table + ,dictionary_sql + ,sorts + ,id + ,create_user_id + ,create_time + ,modify_time + ,modify_user_id + ,org_id + ,company_id + ,sts + + + + + + + + + + + + + + + + insert into sys_application_dictionary( + + app_id , + name , + dictionary_type , + dictionary_table , + dictionary_sql , + sorts , + id , + create_user_id , + create_time , + modify_time , + modify_user_id , + org_id , + company_id , + sts , + sorts, + sts, + + )values( + + #{appId} , + #{name} , + #{dictionaryType} , + #{dictionaryTable} , + #{dictionarySql} , + #{sorts} , + #{id} , + #{create_user_id} , + #{create_time} , + #{modify_time} , + #{modify_user_id} , + #{org_id} , + #{companyId} , + #{sts} , + (select (max(IFNULL( a.sorts, 0 )) + 1) as sort from sys_application_dictionary a WHERE a.sts = 'Y' ), + 'Y', + + ) + + + + insert into sys_application_dictionary(app_id, name, dictionary_type, dictionary_table, dictionary_sql, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts, sts) + values + + (#{entity.appId},#{entity.name},#{entity.dictionaryType},#{entity.dictionaryTable},#{entity.dictionarySql},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}, 'Y') + + + + + insert into sys_application_dictionary(app_id, name, dictionary_type, dictionary_table, dictionary_sql, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.appId},#{entity.name},#{entity.dictionaryType},#{entity.dictionaryTable},#{entity.dictionarySql},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}) + + on duplicate key update + app_id = values(app_id), + name = values(name), + dictionary_type = values(dictionary_type), + dictionary_table = values(dictionary_table), + dictionary_sql = values(dictionary_sql), + create_user_id = values(create_user_id), + create_time = values(create_time), + modify_time = values(modify_time), + modify_user_id = values(modify_user_id), + org_id = values(org_id), + company_id = values(company_id), + sts = values(sts) + + +update sys_application_dictionary set + + app_id = #{appId}, + name = #{name}, + dictionary_type = #{dictionaryType}, + dictionary_table = #{dictionaryTable}, + dictionary_sql = #{dictionarySql}, + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_time = #{modify_time}, + modify_user_id = #{modify_user_id}, + org_id = #{org_id}, + company_id = #{companyId}, + sts = #{sts}, + +where sorts = #{sorts} + + + +update sys_application_dictionary set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} +where sorts = #{sorts} + + + +update sys_application_dictionary set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} + + and app_id = #{appId} + and name = #{name} + and dictionary_type = #{dictionaryType} + and dictionary_table = #{dictionaryTable} + and dictionary_sql = #{dictionarySql} + and sorts = #{sorts} + and id = #{id} + and company_id = #{companyId} + and sts = #{sts} + and sts='Y' + + + + + delete from sys_application_dictionary where sorts = #{sorts} + + + + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/ISysApplicationDictionaryService.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/ISysApplicationDictionaryService.java new file mode 100644 index 00000000..08d06dd5 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/ISysApplicationDictionaryService.java @@ -0,0 +1,12 @@ +package com.hzya.frame.sysnew.application.dictionary.service; + +import com.hzya.frame.sysnew.application.dictionary.entity.SysApplicationDictionaryEntity; +import com.hzya.frame.basedao.service.IBaseService; +/** + * 应用数据字典表(SysApplicationDictionary)表服务接口 + * + * @author makejava + * @since 2024-08-12 16:41:22 + */ +public interface ISysApplicationDictionaryService extends IBaseService{ +} diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/impl/SysApplicationDictionaryServiceImpl.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/impl/SysApplicationDictionaryServiceImpl.java new file mode 100644 index 00000000..cee72fe9 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionary/service/impl/SysApplicationDictionaryServiceImpl.java @@ -0,0 +1,26 @@ +package com.hzya.frame.sysnew.application.dictionary.service.impl; + +import com.hzya.frame.sysnew.application.dictionary.entity.SysApplicationDictionaryEntity; +import com.hzya.frame.sysnew.application.dictionary.dao.ISysApplicationDictionaryDao; +import com.hzya.frame.sysnew.application.dictionary.service.ISysApplicationDictionaryService; +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import javax.annotation.Resource; +import com.hzya.frame.basedao.service.impl.BaseService; +/** + * 应用数据字典表(SysApplicationDictionary)表服务实现类 + * + * @author makejava + * @since 2024-08-12 16:41:25 + */ +@Service(value = "sysApplicationDictionaryService") +public class SysApplicationDictionaryServiceImpl extends BaseService implements ISysApplicationDictionaryService { + + private ISysApplicationDictionaryDao sysApplicationDictionaryDao; + + @Autowired + public void setSysApplicationDictionaryDao(ISysApplicationDictionaryDao dao) { + this.sysApplicationDictionaryDao = dao; + this.dao = dao; + } +} diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/ISysApplicationDictionaryDetailDao.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/ISysApplicationDictionaryDetailDao.java new file mode 100644 index 00000000..485ee68f --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/ISysApplicationDictionaryDetailDao.java @@ -0,0 +1,15 @@ +package com.hzya.frame.sysnew.application.dictionaryDetail.dao; + +import com.hzya.frame.sysnew.application.dictionaryDetail.entity.SysApplicationDictionaryDetailEntity; +import com.hzya.frame.basedao.dao.IBaseDao; + +/** + * 应用数据字典明细表(sys_application_dictionary_detail: table)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:52:14 + */ +public interface ISysApplicationDictionaryDetailDao extends IBaseDao { + +} + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/impl/SysApplicationDictionaryDetailDaoImpl.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/impl/SysApplicationDictionaryDetailDaoImpl.java new file mode 100644 index 00000000..6b61f3af --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/dao/impl/SysApplicationDictionaryDetailDaoImpl.java @@ -0,0 +1,17 @@ +package com.hzya.frame.sysnew.application.dictionaryDetail.dao.impl; + +import com.hzya.frame.sysnew.application.dictionaryDetail.entity.SysApplicationDictionaryDetailEntity; +import com.hzya.frame.sysnew.application.dictionaryDetail.dao.ISysApplicationDictionaryDetailDao; +import org.springframework.stereotype.Repository; +import com.hzya.frame.basedao.dao.MybatisGenericDao; +/** + * 应用数据字典明细表(SysApplicationDictionaryDetail)表数据库访问层 + * + * @author makejava + * @since 2024-08-12 16:52:14 + */ +@Repository(value = "SysApplicationDictionaryDetailDaoImpl") +public class SysApplicationDictionaryDetailDaoImpl extends MybatisGenericDao implements ISysApplicationDictionaryDetailDao{ + +} + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.java new file mode 100644 index 00000000..0cfdbf6d --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.java @@ -0,0 +1,76 @@ +package com.hzya.frame.sysnew.application.dictionaryDetail.entity; + +import java.util.Date; +import com.hzya.frame.web.entity.BaseEntity; +/** + * 应用数据字典明细表(SysApplicationDictionaryDetail)实体类 + * + * @author makejava + * @since 2024-08-12 16:52:14 + */ +public class SysApplicationDictionaryDetailEntity extends BaseEntity { + + /** 应用id */ + private String appId; + /** 应用数据字典主表id */ + private String dictionaryId; + /** 字段名称 */ + private String fieldName; + /** 字段编码 */ + private String fieldCode; + /** 字段类型 */ + private String fieldType; + /** 公司id */ + private String companyId; + + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; + } + + public String getDictionaryId() { + return dictionaryId; + } + + public void setDictionaryId(String dictionaryId) { + this.dictionaryId = dictionaryId; + } + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getFieldCode() { + return fieldCode; + } + + public void setFieldCode(String fieldCode) { + this.fieldCode = fieldCode; + } + + public String getFieldType() { + return fieldType; + } + + public void setFieldType(String fieldType) { + this.fieldType = fieldType; + } + + public String getCompanyId() { + return companyId; + } + + public void setCompanyId(String companyId) { + this.companyId = companyId; + } + +} + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.xml b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.xml new file mode 100644 index 00000000..427734b1 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/entity/SysApplicationDictionaryDetailEntity.xml @@ -0,0 +1,256 @@ + + + + + + + + + + + + + + + + + + + + + + + app_id + ,dictionary_id + ,field_name + ,field_code + ,field_type + ,sorts + ,id + ,create_user_id + ,create_time + ,modify_time + ,modify_user_id + ,org_id + ,company_id + ,sts + + + + + + + + + + + + + + + + insert into sys_application_dictionary_detail( + + app_id , + dictionary_id , + field_name , + field_code , + field_type , + sorts , + id , + create_user_id , + create_time , + modify_time , + modify_user_id , + org_id , + company_id , + sts , + sorts, + sts, + + )values( + + #{appId} , + #{dictionaryId} , + #{fieldName} , + #{fieldCode} , + #{fieldType} , + #{sorts} , + #{id} , + #{create_user_id} , + #{create_time} , + #{modify_time} , + #{modify_user_id} , + #{org_id} , + #{companyId} , + #{sts} , + (select (max(IFNULL( a.sorts, 0 )) + 1) as sort from sys_application_dictionary_detail a WHERE a.sts = 'Y' ), + 'Y', + + ) + + + + insert into sys_application_dictionary_detail(app_id, dictionary_id, field_name, field_code, field_type, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts, sts) + values + + (#{entity.appId},#{entity.dictionaryId},#{entity.fieldName},#{entity.fieldCode},#{entity.fieldType},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}, 'Y') + + + + + insert into sys_application_dictionary_detail(app_id, dictionary_id, field_name, field_code, field_type, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.appId},#{entity.dictionaryId},#{entity.fieldName},#{entity.fieldCode},#{entity.fieldType},#{entity.create_user_id},#{entity.create_time},#{entity.modify_time},#{entity.modify_user_id},#{entity.org_id},#{entity.companyId},#{entity.sts}) + + on duplicate key update + app_id = values(app_id), + dictionary_id = values(dictionary_id), + field_name = values(field_name), + field_code = values(field_code), + field_type = values(field_type), + create_user_id = values(create_user_id), + create_time = values(create_time), + modify_time = values(modify_time), + modify_user_id = values(modify_user_id), + org_id = values(org_id), + company_id = values(company_id), + sts = values(sts) + + +update sys_application_dictionary_detail set + + app_id = #{appId}, + dictionary_id = #{dictionaryId}, + field_name = #{fieldName}, + field_code = #{fieldCode}, + field_type = #{fieldType}, + create_user_id = #{create_user_id}, + create_time = #{create_time}, + modify_time = #{modify_time}, + modify_user_id = #{modify_user_id}, + org_id = #{org_id}, + company_id = #{companyId}, + sts = #{sts}, + +where sorts = #{sorts} + + + +update sys_application_dictionary_detail set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} +where sorts = #{sorts} + + + +update sys_application_dictionary_detail set sts= 'N' ,modify_time = #{modify_time},modify_user_id = #{modify_user_id} + + and app_id = #{appId} + and dictionary_id = #{dictionaryId} + and field_name = #{fieldName} + and field_code = #{fieldCode} + and field_type = #{fieldType} + and sorts = #{sorts} + and id = #{id} + and company_id = #{companyId} + and sts = #{sts} + and sts='Y' + + + + + delete from sys_application_dictionary_detail where sorts = #{sorts} + + + + diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/ISysApplicationDictionaryDetailService.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/ISysApplicationDictionaryDetailService.java new file mode 100644 index 00000000..5b40d55d --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/ISysApplicationDictionaryDetailService.java @@ -0,0 +1,12 @@ +package com.hzya.frame.sysnew.application.dictionaryDetail.service; + +import com.hzya.frame.sysnew.application.dictionaryDetail.entity.SysApplicationDictionaryDetailEntity; +import com.hzya.frame.basedao.service.IBaseService; +/** + * 应用数据字典明细表(SysApplicationDictionaryDetail)表服务接口 + * + * @author makejava + * @since 2024-08-12 16:52:14 + */ +public interface ISysApplicationDictionaryDetailService extends IBaseService{ +} diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/impl/SysApplicationDictionaryDetailServiceImpl.java b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/impl/SysApplicationDictionaryDetailServiceImpl.java new file mode 100644 index 00000000..1294c8ea --- /dev/null +++ b/service/src/main/java/com/hzya/frame/sysnew/application/dictionaryDetail/service/impl/SysApplicationDictionaryDetailServiceImpl.java @@ -0,0 +1,26 @@ +package com.hzya.frame.sysnew.application.dictionaryDetail.service.impl; + +import com.hzya.frame.sysnew.application.dictionaryDetail.entity.SysApplicationDictionaryDetailEntity; +import com.hzya.frame.sysnew.application.dictionaryDetail.dao.ISysApplicationDictionaryDetailDao; +import com.hzya.frame.sysnew.application.dictionaryDetail.service.ISysApplicationDictionaryDetailService; +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import javax.annotation.Resource; +import com.hzya.frame.basedao.service.impl.BaseService; +/** + * 应用数据字典明细表(SysApplicationDictionaryDetail)表服务实现类 + * + * @author makejava + * @since 2024-08-12 16:52:14 + */ +@Service(value = "sysApplicationDictionaryDetailService") +public class SysApplicationDictionaryDetailServiceImpl extends BaseService implements ISysApplicationDictionaryDetailService { + + private ISysApplicationDictionaryDetailDao sysApplicationDictionaryDetailDao; + + @Autowired + public void setSysApplicationDictionaryDetailDao(ISysApplicationDictionaryDetailDao dao) { + this.sysApplicationDictionaryDetailDao = dao; + this.dao = dao; + } +} diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.java b/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.java index 7aa5471a..5929e14b 100644 --- a/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.java +++ b/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.java @@ -16,6 +16,8 @@ public class SysApplicationPluginEntity extends BaseEntity { private String pluginName; /** 插件编号 */ private String pluginCode; + /** 插件包名 */ + private String pluginPackageName; /** 插件版本 */ private String pluginVersion; /** 描述 */ @@ -25,6 +27,23 @@ public class SysApplicationPluginEntity extends BaseEntity { /** 启用停用(1启用2停用) */ private String pluginStatus; + private String attachmentId; + + public String getPluginPackageName() { + return pluginPackageName; + } + + public void setPluginPackageName(String pluginPackageName) { + this.pluginPackageName = pluginPackageName; + } + + public String getAttachmentId() { + return attachmentId; + } + + public void setAttachmentId(String attachmentId) { + this.attachmentId = attachmentId; + } public String getAppId() { return appId; diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.xml b/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.xml index bfcebf0d..90b5444d 100644 --- a/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.xml +++ b/service/src/main/java/com/hzya/frame/sysnew/application/plugin/entity/SysApplicationPluginEntity.xml @@ -18,6 +18,8 @@ + + @@ -35,7 +37,9 @@ ,modify_user_id ,modify_time ,sts - ,org_id + ,org_id + ,attachment_id + ,plugin_package_name + select + field_name, field_code, field_type, dictionary_detail_id, show_name, sort, switch, sorts, id, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts + from excel_template_config_detail + where sorts = #{sorts} + + + + + + + + + + + insert into excel_template_config_detail(field_name, field_code, field_type, dictionary_detail_id, show_name, sort, switch, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values (#{fieldName}, #{fieldCode}, #{fieldType}, #{dictionaryDetailId}, #{showName}, #{sort}, #{switch}, #{createUserId}, #{createTime}, #{modifyTime}, #{modifyUserId}, #{orgId}, #{companyId}, #{sts}) + + + + insert into excel_template_config_detail(field_name, field_code, field_type, dictionary_detail_id, show_name, sort, switch, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.fieldName}, #{entity.fieldCode}, #{entity.fieldType}, #{entity.dictionaryDetailId}, #{entity.showName}, #{entity.sort}, #{entity.switch}, #{entity.createUserId}, #{entity.createTime}, #{entity.modifyTime}, #{entity.modifyUserId}, #{entity.orgId}, #{entity.companyId}, #{entity.sts}) + + + + + insert into excel_template_config_detail(field_name, field_code, field_type, dictionary_detail_id, show_name, sort, switch, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.fieldName}, #{entity.fieldCode}, #{entity.fieldType}, #{entity.dictionaryDetailId}, #{entity.showName}, #{entity.sort}, #{entity.switch}, #{entity.createUserId}, #{entity.createTime}, #{entity.modifyTime}, #{entity.modifyUserId}, #{entity.orgId}, #{entity.companyId}, #{entity.sts}) + + on duplicate key update + field_name = values(field_name), + field_code = values(field_code), + field_type = values(field_type), + dictionary_detail_id = values(dictionary_detail_id), + show_name = values(show_name), + sort = values(sort), + switch = values(switch), + create_user_id = values(create_user_id), + create_time = values(create_time), + modify_time = values(modify_time), + modify_user_id = values(modify_user_id), + org_id = values(org_id), + company_id = values(company_id), + sts = values(sts) + + + + + update excel_template_config_detail + + + field_name = #{fieldName}, + + + field_code = #{fieldCode}, + + + field_type = #{fieldType}, + + + dictionary_detail_id = #{dictionaryDetailId}, + + + show_name = #{showName}, + + + sort = #{sort}, + + + switch = #{switch}, + + + create_user_id = #{createUserId}, + + + create_time = #{createTime}, + + + modify_time = #{modifyTime}, + + + modify_user_id = #{modifyUserId}, + + + org_id = #{orgId}, + + + company_id = #{companyId}, + + + sts = #{sts}, + + + where sorts = #{sorts} + + + + + delete from excel_template_config_detail where sorts = #{sorts} + + + + diff --git a/service/src/main/resources/mapper/SysApplicationDictionaryDetailDao.xml b/service/src/main/resources/mapper/SysApplicationDictionaryDetailDao.xml new file mode 100644 index 00000000..eac1c08e --- /dev/null +++ b/service/src/main/resources/mapper/SysApplicationDictionaryDetailDao.xml @@ -0,0 +1,217 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into sys_application_dictionary_detail(app_id, dictionary_id, field_name, field_code, field_type, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values (#{appId}, #{dictionaryId}, #{fieldName}, #{fieldCode}, #{fieldType}, #{createUserId}, #{createTime}, #{modifyTime}, #{modifyUserId}, #{orgId}, #{companyId}, #{sts}) + + + + insert into sys_application_dictionary_detail(app_id, dictionary_id, field_name, field_code, field_type, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.appId}, #{entity.dictionaryId}, #{entity.fieldName}, #{entity.fieldCode}, #{entity.fieldType}, #{entity.createUserId}, #{entity.createTime}, #{entity.modifyTime}, #{entity.modifyUserId}, #{entity.orgId}, #{entity.companyId}, #{entity.sts}) + + + + + insert into sys_application_dictionary_detail(app_id, dictionary_id, field_name, field_code, field_type, create_user_id, create_time, modify_time, modify_user_id, org_id, company_id, sts) + values + + (#{entity.appId}, #{entity.dictionaryId}, #{entity.fieldName}, #{entity.fieldCode}, #{entity.fieldType}, #{entity.createUserId}, #{entity.createTime}, #{entity.modifyTime}, #{entity.modifyUserId}, #{entity.orgId}, #{entity.companyId}, #{entity.sts}) + + on duplicate key update + app_id = values(app_id), + dictionary_id = values(dictionary_id), + field_name = values(field_name), + field_code = values(field_code), + field_type = values(field_type), + create_user_id = values(create_user_id), + create_time = values(create_time), + modify_time = values(modify_time), + modify_user_id = values(modify_user_id), + org_id = values(org_id), + company_id = values(company_id), + sts = values(sts) + + + + + update sys_application_dictionary_detail + + + app_id = #{appId}, + + + dictionary_id = #{dictionaryId}, + + + field_name = #{fieldName}, + + + field_code = #{fieldCode}, + + + field_type = #{fieldType}, + + + create_user_id = #{createUserId}, + + + create_time = #{createTime}, + + + modify_time = #{modifyTime}, + + + modify_user_id = #{modifyUserId}, + + + org_id = #{orgId}, + + + company_id = #{companyId}, + + + sts = #{sts}, + + + where sorts = #{sorts} + + + + + delete from sys_application_dictionary_detail where sorts = #{sorts} + + + + diff --git a/webapp/src/main/java/com/hzya/frame/webapp/entrance/controler/EntranceController.java b/webapp/src/main/java/com/hzya/frame/webapp/entrance/controler/EntranceController.java index 42d5247c..01b03ce5 100644 --- a/webapp/src/main/java/com/hzya/frame/webapp/entrance/controler/EntranceController.java +++ b/webapp/src/main/java/com/hzya/frame/webapp/entrance/controler/EntranceController.java @@ -33,8 +33,18 @@ import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.io.File; +import java.io.FileOutputStream; import java.io.IOException; +import java.io.InputStream; import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.StandardCopyOption; +import java.util.Enumeration; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; /** * @Content程序唯一入口controller @@ -110,12 +120,43 @@ public class EntranceController { logger.info("-------------------结束调用上传文件upload接口-------------------"); return jsonResultEntity; } - /** - * 根据文件保存的新名称下载文件 - * - * @param fileSaveName - * @return - */ + + @RequestMapping(value = "/pluginfileUpload", method = RequestMethod.POST) + @ResponseBody + public JsonResultEntity pluginfileUpload(MultipartFile file, FileUploadDto entity,String pluginPackageName, ServletRequest servletRequest, ServletResponse servletResponse) { + JsonResultEntity jsonResultEntity = null; + logger.info("-------------------开始调用上传插件附件upload接口-------------------"); + try { + jsonResultEntity = entranceService.pluginfileUpload(file, entity,pluginPackageName,servletRequest,servletResponse); + } catch (Exception e) { + jsonResultEntity = BaseResult.getFailureMessageEntity(e.getMessage()); + } + logger.info("-------------------结束调用上传插件附件upload接口-------------------"); + return jsonResultEntity; + } + + @ResponseBody + @RequestMapping(value = "/pluginZipUpdate") + public JsonResultEntity pluginZipUpate(FileUploadDto fileUploadDto){ + JsonResultEntity jsonResultEntity = null; + logger.info("-------------------开始调用插件更新接口-------------------"); + try{ + jsonResultEntity = entranceService.pluginZipUpate(fileUploadDto); + } catch (Exception e) { + jsonResultEntity = BaseResult.getFailureMessageEntity(e.getMessage()); + } + logger.info("-------------------结束调用插件更新接口------------------"); + return jsonResultEntity; + } + + + + /** + * 根据文件保存的新名称下载文件 + * + * @param fileSaveName + * @return + */ @RequestMapping(value = "/option/fileDownload") public ResponseEntity fileDownload(String fileSaveName) { ResponseEntity responseEntity = null; diff --git a/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/IEntranceService.java b/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/IEntranceService.java index 0665cb93..54eda1a6 100644 --- a/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/IEntranceService.java +++ b/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/IEntranceService.java @@ -32,6 +32,9 @@ public interface IEntranceService { * @return com.hzya.frame.web.entity.JsonResultEntity **/ JsonResultEntity fileUpload(MultipartFile file, FileUploadDto entity, ServletRequest servletRequest, ServletResponse servletResponse) throws Exception; + + JsonResultEntity pluginfileUpload(MultipartFile file, FileUploadDto entity,String pluginPackageName, ServletRequest servletRequest, ServletResponse servletResponse) throws Exception; + JsonResultEntity pluginZipUpate(FileUploadDto fileUploadDto) throws Exception; /*** * 系统框架附件上传接口 * @content: diff --git a/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/impl/EntranceServiceImpl.java b/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/impl/EntranceServiceImpl.java index 86d047b0..46af2a3c 100644 --- a/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/impl/EntranceServiceImpl.java +++ b/webapp/src/main/java/com/hzya/frame/webapp/entrance/service/impl/EntranceServiceImpl.java @@ -6,6 +6,8 @@ import cn.hutool.extra.servlet.ServletUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.dynamic.datasource.annotation.DSTransactional; import com.hzya.frame.sys.entity.EsbReturnEntity; +import com.hzya.frame.sys.file.download.entity.FileDownloadEntity; +import com.hzya.frame.sys.file.download.service.IFileDownloadService; import com.hzya.frame.sys.file.upload.entity.FileResultEntity; import com.hzya.frame.sys.file.upload.entity.FileUploadDto; import com.hzya.frame.sys.file.upload.entity.FileUploadEntity; @@ -54,6 +56,9 @@ public class EntranceServiceImpl implements IEntranceService { @Autowired private IFileUploadService fileUploadService; + @Autowired + private IFileDownloadService fileDownloadService; + @Override @DSTransactional() public JsonResultEntity doBusiness(ServletRequest servletRequest, ServletResponse servletResponse) throws Exception { @@ -225,6 +230,19 @@ public class EntranceServiceImpl implements IEntranceService { FileUploadEntity fileUploadEntity = fileUploadService.fileUpload(file,entity); return BaseResult.getSuccessMessageEntity("附件上传成功",fileUploadEntity); } + + @Override + public JsonResultEntity pluginfileUpload(MultipartFile file, FileUploadDto entity,String pluginPackageName, ServletRequest servletRequest, ServletResponse servletResponse) throws Exception { + StpUtil.checkLogin(); + FileUploadEntity fileUploadEntity = fileUploadService.pluginfileUpload(file,entity,pluginPackageName); + return BaseResult.getSuccessMessageEntity("附件上传成功",fileUploadEntity); + } + + public JsonResultEntity pluginZipUpate(FileUploadDto fileUploadDto) throws Exception{ + StpUtil.checkLogin(); + FileDownloadEntity fileDownloadEntity = fileDownloadService.pluginZipUpate(fileUploadDto); + return BaseResult.getSuccessMessageEntity("插件更新成功",fileDownloadEntity); + } @Override public JsonResultEntity fileUpload(MultipartFile file, FileResultEntity entity, ServletRequest servletRequest, ServletResponse servletResponse) throws Exception { entity = fileUploadService.fileUpload(file,entity);