From df08d716a76afca23585aba85f0e4bd030c8be48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A7=9C=E7=8E=89=E7=90=A6?= <7507756+jiang_yuqi@user.noreply.gitee.com> Date: Sun, 14 Jan 2024 21:23:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/SysApplyConfigController.java | 40 +++++++++++++++ .../ruoyi/common/enums/ApplyCfgTypeEnum.java | 30 ++++++++++++ .../ruoyi/common/enums/VendorsCodeEnum.java | 31 ++++++++++++ .../ruoyi/system/domain/SysApplyConfig.java | 24 +++++++++ .../mapper/system/SysApplyConfigMapper.xml | 14 +++++- .../src/views/system/applyConfig/index.vue | 30 +++++++++++- .../SurProjectAttendanceCfgServiceImpl.java | 49 +++++++++++++++++++ 7 files changed, 215 insertions(+), 3 deletions(-) create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/enums/ApplyCfgTypeEnum.java create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/enums/VendorsCodeEnum.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysApplyConfigController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysApplyConfigController.java index 470c85ac..23a5b0c1 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysApplyConfigController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysApplyConfigController.java @@ -4,16 +4,22 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.enums.ApplyCfgTypeEnum; import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.common.enums.ShiFouEnum; import com.ruoyi.common.utils.NoUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.system.domain.SysApplyConfig; import com.ruoyi.system.service.ISysApplyConfigService; +import com.yanzhu.jh.project.domain.SurProjectAttendanceCfg; +import com.yanzhu.jh.project.service.ISurProjectAttendanceCfgService; +import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; import java.util.List; /** @@ -26,9 +32,14 @@ import java.util.List; @RequestMapping("/system/applyConfig") public class SysApplyConfigController extends BaseController { + private static final String vendorsCode = "yanzhu"; + @Autowired private ISysApplyConfigService sysApplyConfigService; + @Autowired + private ISurProjectAttendanceCfgService surProjectAttendanceCfgService; + /** * 查询系统应用注册列表 */ @@ -72,6 +83,19 @@ public class SysApplyConfigController extends BaseController @PostMapping public AjaxResult add(@RequestBody SysApplyConfig sysApplyConfig) { + if(ApplyCfgTypeEnum.LABOUR.getCode().equals(sysApplyConfig.getCfgType())){ + SurProjectAttendanceCfg surProjectAttendanceCfg = new SurProjectAttendanceCfg(); + surProjectAttendanceCfg.setProjectId(sysApplyConfig.getProjectId()); + surProjectAttendanceCfg.setSubDeptId(sysApplyConfig.getDeptId()); + surProjectAttendanceCfg.setVendorsCode(vendorsCode); + surProjectAttendanceCfg.setEnabled(sysApplyConfig.getIsDel().equals(ShiFouEnum.FOU.getCode())?ShiFouEnum.SHI.getLongCode():ShiFouEnum.FOU.getLongCode()); + surProjectAttendanceCfg.setState(ShiFouEnum.FOU.getLongCode()); + int res = surProjectAttendanceCfgService.insertSurProjectAttendanceCfg(surProjectAttendanceCfg); + if(res>0){ + // 同步将信息保存到sur_project_attendance_cfg + sysApplyConfig.setCfgId(surProjectAttendanceCfg.getId()); + } + } return toAjax(sysApplyConfigService.insertSysApplyConfig(sysApplyConfig)); } @@ -83,6 +107,12 @@ public class SysApplyConfigController extends BaseController @PutMapping public AjaxResult edit(@RequestBody SysApplyConfig sysApplyConfig) { + if(ApplyCfgTypeEnum.LABOUR.getCode().equals(sysApplyConfig.getCfgType())){ + SurProjectAttendanceCfg surProjectAttendanceCfg = new SurProjectAttendanceCfg(); + surProjectAttendanceCfg.setId(sysApplyConfig.getCfgId()); + surProjectAttendanceCfg.setEnabled(sysApplyConfig.getIsDel().equals(ShiFouEnum.FOU.getCode())?ShiFouEnum.SHI.getLongCode():ShiFouEnum.FOU.getLongCode()); + surProjectAttendanceCfgService.updateSurProjectAttendanceCfg(surProjectAttendanceCfg); + } return toAjax(sysApplyConfigService.updateSysApplyConfig(sysApplyConfig)); } @@ -94,6 +124,16 @@ public class SysApplyConfigController extends BaseController @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { + List cfgIds = new ArrayList<>(); + for(Long id:ids){ + SysApplyConfig sysApplyConfig = sysApplyConfigService.selectSysApplyConfigById(id); + if(ApplyCfgTypeEnum.LABOUR.getCode().equals(sysApplyConfig.getCfgType())){ + cfgIds.add(sysApplyConfig.getCfgId()); + } + } + if(CollectionUtils.isNotEmpty(cfgIds)){ + surProjectAttendanceCfgService.deleteSurProjectAttendanceCfgByIds(cfgIds.stream().toArray(Long[]::new)); + } return toAjax(sysApplyConfigService.deleteSysApplyConfigByIds(ids)); } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/ApplyCfgTypeEnum.java b/ruoyi-common/src/main/java/com/ruoyi/common/enums/ApplyCfgTypeEnum.java new file mode 100644 index 00000000..7bcef36e --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/enums/ApplyCfgTypeEnum.java @@ -0,0 +1,30 @@ +package com.ruoyi.common.enums; + +/** + * 应用配置类型 + * + * @author ruoyi + */ +public enum ApplyCfgTypeEnum { + + LABOUR("1", "劳务人员信息接入"); + + private final String code; + private final String info; + + ApplyCfgTypeEnum(String code, String info) + { + this.code = code; + this.info = info; + } + + public String getCode() + { + return code; + } + + public String getInfo() + { + return info; + } +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/VendorsCodeEnum.java b/ruoyi-common/src/main/java/com/ruoyi/common/enums/VendorsCodeEnum.java new file mode 100644 index 00000000..3ca844cc --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/enums/VendorsCodeEnum.java @@ -0,0 +1,31 @@ +package com.ruoyi.common.enums; + +/** + * 厂商编号类型枚举 + * + * @author ruoyi + */ +public enum VendorsCodeEnum { + + YANZHU("yanzhu", "研筑"); + + private final String code; + private final String info; + + VendorsCodeEnum(String code, String info) + { + this.code = code; + this.info = info; + } + + public String getCode() + { + return code; + } + + public String getInfo() + { + return info; + } + +} diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysApplyConfig.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysApplyConfig.java index a336cb1d..c99c2ed9 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysApplyConfig.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/SysApplyConfig.java @@ -18,6 +18,12 @@ public class SysApplyConfig extends BaseEntity /** 主键 */ private Long id; + /** 服务配置主键 */ + private Long cfgId; + + /** 服务配置类型 */ + private String cfgType; + /** 应用主键 */ @Excel(name = "应用主键") private String appId; @@ -129,10 +135,28 @@ public class SysApplyConfig extends BaseEntity this.deptName = deptName; } + public Long getCfgId() { + return cfgId; + } + + public void setCfgId(Long cfgId) { + this.cfgId = cfgId; + } + + public String getCfgType() { + return cfgType; + } + + public void setCfgType(String cfgType) { + this.cfgType = cfgType; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("id", getId()) + .append("cfgId", getCfgId()) + .append("cfgType", getCfgType()) .append("appId", getAppId()) .append("publicKey", getPublicKey()) .append("privateKey", getPrivateKey()) diff --git a/ruoyi-system/src/main/resources/mapper/system/SysApplyConfigMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysApplyConfigMapper.xml index c04ec9b9..8f3f8ee9 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysApplyConfigMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysApplyConfigMapper.xml @@ -6,6 +6,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -22,14 +24,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select sac.id, sac.app_id, sac.public_key, sac.private_key, sac.project_id, sp.projectName, sac.dept_id, sd.dept_name as deptName, sac.is_del, sac.create_by, sac.create_time, sac.update_by, sac.update_time, sac.remark from sys_apply_config sac + select sac.id, sac.cfg_type, sac.cfg_id, sac.app_id, sac.public_key, sac.private_key, sac.project_id, sp.projectName, sac.dept_id, sd.dept_name as deptName, sac.is_del, sac.create_by, sac.create_time, sac.update_by, sac.update_time, sac.remark from sys_apply_config sac left join sur_project sp on sac.project_id = sp.id left join sys_dept sd on sac.dept_id = sd.dept_id