diff --git a/config/db/V8.1__add_table.sql b/config/db/V8.1__add_table.sql new file mode 100644 index 00000000..eebbf686 --- /dev/null +++ b/config/db/V8.1__add_table.sql @@ -0,0 +1,34 @@ +/* + Navicat Premium Data Transfer + + Source Server : 192.168.124.46 + Source Server Type : MySQL + Source Server Version : 80030 + Source Host : 192.168.124.46:3306 + Source Schema : share_platform + + Target Server Type : MySQL + Target Server Version : 80030 + File Encoding : 65001 + + Date: 01/12/2022 18:12:20 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for sys_notice_management +-- ---------------------------- +DROP TABLE IF EXISTS `sys_notice_management`; +CREATE TABLE `sys_notice_management` ( + `id` bigint(0) NOT NULL, + `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, + `publish_time` datetime(0) NULL DEFAULT NULL, + `del_flag` int(0) NULL DEFAULT NULL, + `create_date` datetime(0) NULL DEFAULT NULL, + `creator` bigint(0) NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java b/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java index a509d030..043d8b6f 100644 --- a/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java +++ b/renren-admin/src/main/java/io/renren/modules/activiti/controller/ActTaskController.java @@ -111,6 +111,8 @@ public class ActTaskController { List> meetingroom_bookTask = jdbcTemplate.queryForList("SELECT " + " t_meetingroom_book.id AS `taskId`, " + " t_meetingroom_book.dept AS `userDeptName`, " + + " '会客厅' AS `resourceType`, " + + " '青岛市大数据发展管理局' AS `provideDept`, " + " t_meetingroom.`name` AS `userName`, " + " '会客厅审核' AS `taskName `, " + " t_meetingroom.create_date AS `createTime` " + diff --git a/renren-admin/src/main/java/io/renren/modules/activiti/service/ActTaskService.java b/renren-admin/src/main/java/io/renren/modules/activiti/service/ActTaskService.java index d16f2f63..b468dd47 100644 --- a/renren-admin/src/main/java/io/renren/modules/activiti/service/ActTaskService.java +++ b/renren-admin/src/main/java/io/renren/modules/activiti/service/ActTaskService.java @@ -19,6 +19,8 @@ import io.renren.modules.notice.service.SysNoticeService; import io.renren.modules.processForm.dto.TAbilityApplicationDTO; import io.renren.modules.processForm.service.TAbilityApplicationService; import io.renren.modules.resource.dao.ResourceDao; +import io.renren.modules.resource.dataResource.domain.TsingtaoDataResourceService; +import io.renren.modules.resource.dto.GetDataResourceListDto; import io.renren.modules.resource.dto.ResourceDTO; import io.renren.modules.resource.entity.ResourceEntity; import io.renren.modules.resource.service.ResourceService; @@ -228,14 +230,40 @@ public class ActTaskService extends BaseServiceImpl { this.convertTaskInfo(task, dto); Map processVariable = new LinkedHashMap<>(); - if (task.getProcessVariables().containsKey("tAbilityApplicationDTOList")) { processVariable.putAll(task.getProcessVariables()); dto.setParams(processVariable); - List dtoList = (List) task.getProcessVariables().get("tAbilityApplicationDTOList"); JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(dtoList.get(0))); + + List resourceIds = new ArrayList<>(); + dtoList.forEach(index -> resourceIds.add(index.getResourceId())); + + if (jsonObject != null) { + + //资源类型 + CompletableFuture sjzy = CompletableFuture.runAsync(() -> { + StringBuilder stringBuilder = new StringBuilder(); + List resourcesName = resourceDao.selectResourcesTypeByIds(resourceIds); + resourcesName.forEach(x -> stringBuilder.append(x).append(",")); + String string = stringBuilder.substring(0, stringBuilder.length() - 2); + dto.setResourceType(string); + }, executor); + + //提供部门 + CompletableFuture jcss = CompletableFuture.runAsync(() -> { + StringBuilder stringBuilder = new StringBuilder(); + List proviDeptsName = resourceDao.selectProvideDeptNameByIds(resourceIds); + proviDeptsName.forEach(x -> stringBuilder.append(x).append(",")); + String string = stringBuilder.substring(0, stringBuilder.length() - 2); + dto.setProvideDept(string); + }, executor); + + CompletableFuture all = CompletableFuture.allOf(sjzy, jcss); + all.join(); + + dto.setUserName(jsonObject.containsKey("user") ? jsonObject.getString("user") : ""); dto.setUserDeptName(sysUserDao.getDeptNameByUserId(jsonObject.containsKey("userId") ? jsonObject.getString("userId") : null)); dto.setApplyTitle(jsonObject.containsKey("title") ? jsonObject.getString("title") : ""); @@ -264,11 +292,16 @@ public class ActTaskService extends BaseServiceImpl { dto.setParams(processVariable); dto.setUserName(abilityApplicationDTO.getUser()); ResourceEntity resourceEntity = resourceDao.selectById(abilityApplicationDTO.getResourceId()); + dto.setResourceType(resourceEntity.getType()); + SysDeptEntity dept = sysDeptDao.getById(resourceEntity.getDeptId()); + String provideDeptName = dept == null ? "" : dept.getName(); + dto.setProvideDept(provideDeptName); dto.setApplyTitle(resourceEntity == null ? "" : resourceEntity.getName()); dto.setUserDeptName(abilityApplicationDTO.getUnit()); listDto.add(dto); continue; } + TResourceMountApplyDTO resourceMountApplyDTO = tResourceMountApplyService.get(Long.valueOf(dto.getBusinessKey())); if (resourceMountApplyDTO != null) { Map variables = oMapper.convertValue(resourceMountApplyDTO, Map.class); @@ -282,6 +315,7 @@ public class ActTaskService extends BaseServiceImpl { listDto.add(dto); continue; } + TDemandDataDTO tDemandDataDTO = tDemandDataService.get(Long.valueOf(dto.getBusinessKey())); if (tDemandDataDTO != null) { Map variables = oMapper.convertValue(tDemandDataDTO, Map.class); @@ -294,6 +328,7 @@ public class ActTaskService extends BaseServiceImpl { listDto.add(dto); continue; } + ResourceDTO resourceDTO = resourceService.get(Long.valueOf(dto.getBusinessKey())); if (resourceDTO != null) { Map variables = oMapper.convertValue(resourceDTO, Map.class); diff --git a/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java b/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java index f8ce60db..20d7f1a3 100644 --- a/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java +++ b/renren-admin/src/main/java/io/renren/modules/resource/dao/ResourceDao.java @@ -225,4 +225,8 @@ public interface ResourceDao extends BaseDao { Integer updateByDelProcinst(@Param("resourceId") Long resourceId); Integer selectYzyCount(); + + List selectResourcesTypeByIds(@Param("resourceIds") List resourceIds); + + List selectProvideDeptNameByIds(@Param("resourceIds") List resourceIds); } \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/security/user/SecurityUser.java b/renren-admin/src/main/java/io/renren/modules/security/user/SecurityUser.java index 585fb824..bb83b8c0 100644 --- a/renren-admin/src/main/java/io/renren/modules/security/user/SecurityUser.java +++ b/renren-admin/src/main/java/io/renren/modules/security/user/SecurityUser.java @@ -25,17 +25,15 @@ public class SecurityUser { */ public static UserDetail getUser() { - logger.error("————————————————————————————当前调用的方法为————————————————————————————{}", getMyGrandpaStackTrace()); + logger.error("————————————————————————————当前调用的方法为{}", getMyGrandpaStackTrace()); Subject subject = getSubject(); if (subject == null) { - logger.error("————————————————————————————subject为null,返回空对象————————————————————————————"); return new UserDetail(); } UserDetail user = (UserDetail) subject.getPrincipal(); if (user == null) { - logger.error("————————————————————————————user为null,返回空对象————————————————————————————"); return new UserDetail(); } diff --git a/renren-admin/src/main/java/io/renren/modules/sys/service/impl/SysRoleUserServiceImpl.java b/renren-admin/src/main/java/io/renren/modules/sys/service/impl/SysRoleUserServiceImpl.java index 51a69a0f..c54ccba3 100644 --- a/renren-admin/src/main/java/io/renren/modules/sys/service/impl/SysRoleUserServiceImpl.java +++ b/renren-admin/src/main/java/io/renren/modules/sys/service/impl/SysRoleUserServiceImpl.java @@ -26,13 +26,12 @@ public class SysRoleUserServiceImpl extends BaseServiceImpl roleIdList) { - logger.error("------------------准备更新用户角色信息-------------------"); + logger.error("------------------准备更新用户角色信息,准备更新的用户为{}, 修改后的角色列表为{}-------------------", userId, roleIdList); //先删除角色用户关系 deleteByUserIds(new Long[]{userId}); //用户没有一个角色权限的情况 if (roleIdList.isEmpty()) { - logger.error("------------------用户未配置角色-------------------"); return; } @@ -61,6 +60,7 @@ public class SysRoleUserServiceImpl extends BaseServiceImpl> page(@ApiIgnore @RequestParam Map params){ + PageData page = sysNoticeManagementService.page(params); + + return new Result>().ok(page); + } + + @GetMapping("{id}") + @ApiOperation("信息") + //@RequiresPermissions("sysnoticemanagement:sysnoticemanagement:info") + public Result get(@PathVariable("id") Long id){ + SysNoticeManagementDTO data = sysNoticeManagementService.get(id); + + return new Result().ok(data); + } + + @PostMapping + @ApiOperation("保存") + @LogOperation("保存") + //@RequiresPermissions("sysnoticemanagement:sysnoticemanagement:save") + public Result save(@RequestBody SysNoticeManagementDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + dto.setDelFlag(0); + dto.setPublishTime(new Date()); + sysNoticeManagementService.save(dto); + + return new Result(); + } + + @PutMapping + @ApiOperation("修改") + @LogOperation("修改") + //@RequiresPermissions("sysnoticemanagement:sysnoticemanagement:update") + public Result update(@RequestBody SysNoticeManagementDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + + sysNoticeManagementService.update(dto); + + return new Result(); + } + + @PostMapping("/delete") + @ApiOperation("删除") + @LogOperation("删除") + //@RequiresPermissions("sysnoticemanagement:sysnoticemanagement:delete") + public Result delete(@RequestBody Long[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + + sysNoticeManagementService.delete(ids); + + return new Result(); + } + + @GetMapping("export") + @ApiOperation("导出") + @LogOperation("导出") + //@RequiresPermissions("sysnoticemanagement:sysnoticemanagement:export") + public void export(@ApiIgnore @RequestParam Map params, HttpServletResponse response) throws Exception { + List list = sysNoticeManagementService.list(params); + + ExcelUtils.exportExcelToTarget(response, null, "公告管理", list, SysNoticeManagementExcel.class); + } + +} \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/dao/SysNoticeManagementDao.java b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/dao/SysNoticeManagementDao.java new file mode 100644 index 00000000..98cf05d3 --- /dev/null +++ b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/dao/SysNoticeManagementDao.java @@ -0,0 +1,16 @@ +package io.renren.modules.sysnoticemanagement.dao; + +import io.renren.common.dao.BaseDao; +import io.renren.modules.sysnoticemanagement.entity.SysNoticeManagementEntity; +import org.apache.ibatis.annotations.Mapper; + +/** +* 公告管理 +* +* @author dg 2498628697@qq.com +* @since 1.0 2022-12-01 +*/ +@Mapper +public interface SysNoticeManagementDao extends BaseDao { + +} \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/dto/SysNoticeManagementDTO.java b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/dto/SysNoticeManagementDTO.java new file mode 100644 index 00000000..83900a2b --- /dev/null +++ b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/dto/SysNoticeManagementDTO.java @@ -0,0 +1,28 @@ +package io.renren.modules.sysnoticemanagement.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** +* 公告管理 +* +* @author dg 2498628697@qq.com +* @since 1.0 2022-12-01 +*/ +@Data +@ApiModel(value = "公告管理") +public class SysNoticeManagementDTO implements Serializable { + private static final long serialVersionUID = 1L; + + private Long id; + private String content; + private Date publishTime; + private Integer delFlag; + private Date createDate; + private Long creator; + +} \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/entity/SysNoticeManagementEntity.java b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/entity/SysNoticeManagementEntity.java new file mode 100644 index 00000000..e6d4ec67 --- /dev/null +++ b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/entity/SysNoticeManagementEntity.java @@ -0,0 +1,30 @@ +package io.renren.modules.sysnoticemanagement.entity; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.baomidou.mybatisplus.annotation.*; + +import java.util.Date; + +/** + * 公告管理 + * + * @author dg 2498628697@qq.com + * @since 1.0 2022-12-01 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("sys_notice_management") +public class SysNoticeManagementEntity { + private static final long serialVersionUID = 1L; + + @TableId + private Long id; + private String content; + private Date publishTime; + private Integer delFlag; + @TableField(fill = FieldFill.INSERT) + private Date createDate; + @TableField(fill = FieldFill.INSERT) + private Long creator; +} \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/excel/SysNoticeManagementExcel.java b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/excel/SysNoticeManagementExcel.java new file mode 100644 index 00000000..ab0b64f8 --- /dev/null +++ b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/excel/SysNoticeManagementExcel.java @@ -0,0 +1,32 @@ +package io.renren.modules.sysnoticemanagement.excel; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; +import lombok.Data; + +/** + * 公告管理 + * + * @author dg 2498628697@qq.com + * @since 1.0 2022-12-01 + */ +@Data +@ContentRowHeight(20) +@HeadRowHeight(20) +@ColumnWidth(25) +public class SysNoticeManagementExcel { + @ExcelProperty(value = "Object", index = 0) + private Object id; + @ExcelProperty(value = "Object", index = 1) + private Object content; + @ExcelProperty(value = "Object", index = 2) + private Object publishTime; + @ExcelProperty(value = "Object", index = 3) + private Object delFlag; + @ExcelProperty(value = "Object", index = 4) + private Object createDate; + @ExcelProperty(value = "Object", index = 5) + private Object creator; +} \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/service/SysNoticeManagementService.java b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/service/SysNoticeManagementService.java new file mode 100644 index 00000000..d275c23c --- /dev/null +++ b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/service/SysNoticeManagementService.java @@ -0,0 +1,15 @@ +package io.renren.modules.sysnoticemanagement.service; + +import io.renren.common.service.CrudService; +import io.renren.modules.sysnoticemanagement.dto.SysNoticeManagementDTO; +import io.renren.modules.sysnoticemanagement.entity.SysNoticeManagementEntity; + +/** + * 公告管理 + * + * @author dg 2498628697@qq.com + * @since 1.0 2022-12-01 + */ +public interface SysNoticeManagementService extends CrudService { + +} \ No newline at end of file diff --git a/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/service/impl/SysNoticeManagementServiceImpl.java b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/service/impl/SysNoticeManagementServiceImpl.java new file mode 100644 index 00000000..8fd9a4a5 --- /dev/null +++ b/renren-admin/src/main/java/io/renren/modules/sysnoticemanagement/service/impl/SysNoticeManagementServiceImpl.java @@ -0,0 +1,41 @@ +package io.renren.modules.sysnoticemanagement.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import io.renren.common.service.impl.CrudServiceImpl; +import io.renren.common.utils.DateUtils; +import io.renren.modules.sysnoticemanagement.dao.SysNoticeManagementDao; +import io.renren.modules.sysnoticemanagement.dto.SysNoticeManagementDTO; +import io.renren.modules.sysnoticemanagement.entity.SysNoticeManagementEntity; +import io.renren.modules.sysnoticemanagement.service.SysNoticeManagementService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.Map; + +/** + * 公告管理 + * + * @author dg 2498628697@qq.com + * @since 1.0 2022-12-01 + */ +@Service +public class SysNoticeManagementServiceImpl extends CrudServiceImpl implements SysNoticeManagementService { + + @Override + public QueryWrapper getWrapper(Map params){ + QueryWrapper wrapper = new QueryWrapper<>(); + + if (params.get("days") != null) { + int days = Integer.parseInt(params.get("days").toString()); + Date date = DateUtils.addDateDays(new Date(), -days); + wrapper.ge("publish_time", date); + } + + wrapper.eq("del_flag", 0) + .like(StringUtils.isNotEmpty(params.get("content").toString()), "content", params.get("content").toString()); + return wrapper; + } + + +} \ No newline at end of file diff --git a/renren-admin/src/main/resources/db/V8.1__add_table.sql b/renren-admin/src/main/resources/db/V8.1__add_table.sql new file mode 100644 index 00000000..eebbf686 --- /dev/null +++ b/renren-admin/src/main/resources/db/V8.1__add_table.sql @@ -0,0 +1,34 @@ +/* + Navicat Premium Data Transfer + + Source Server : 192.168.124.46 + Source Server Type : MySQL + Source Server Version : 80030 + Source Host : 192.168.124.46:3306 + Source Schema : share_platform + + Target Server Type : MySQL + Target Server Version : 80030 + File Encoding : 65001 + + Date: 01/12/2022 18:12:20 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for sys_notice_management +-- ---------------------------- +DROP TABLE IF EXISTS `sys_notice_management`; +CREATE TABLE `sys_notice_management` ( + `id` bigint(0) NOT NULL, + `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL, + `publish_time` datetime(0) NULL DEFAULT NULL, + `del_flag` int(0) NULL DEFAULT NULL, + `create_date` datetime(0) NULL DEFAULT NULL, + `creator` bigint(0) NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/renren-admin/src/main/resources/mapper/processForm/TAbilityApplicationDao.xml b/renren-admin/src/main/resources/mapper/processForm/TAbilityApplicationDao.xml index bc1d65ef..35f5aa4f 100644 --- a/renren-admin/src/main/resources/mapper/processForm/TAbilityApplicationDao.xml +++ b/renren-admin/src/main/resources/mapper/processForm/TAbilityApplicationDao.xml @@ -438,7 +438,6 @@ AND '会客厅' = #{params.resourceType} - ORDER BY applyDate DESC LIMIT ${params.pageNum}, ${params.pageSize} @@ -530,7 +529,7 @@ ( CASE tdr.type WHEN '应用资源' THEN tdr.type WHEN '组件服务' THEN attr.attr_value ELSE tdr.type END ) AS "resourceType", sd.NAME AS "provideDept", taa.unit AS "applyDept", - taa.create_date AS "applyDate", + date_format(taa.create_date, "%Y-%m-%d %h:%i:%s") AS "applyDate", taa.apply_price AS "applyPrice", taa.approve_status AS "applyResult" FROM @@ -576,7 +575,8 @@ '会客厅' AS "resourceType", '青岛市大数据发展管理局' AS "provideDept", tmb.dept AS "applyDept", - tmb.create_date AS "applyDate", + date_format(tmb.create_date, "%Y-%m-%d %h:%i:%s") AS "applyDate", + tmb.apply_price AS "applyPrice", ( CASE tmb.state WHEN 0 THEN '审核中' WHEN 2 THEN '通过' ELSE '审核中' END ) AS "applyResult" FROM diff --git a/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml b/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml index cf632e05..0f610218 100644 --- a/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml +++ b/renren-admin/src/main/resources/mapper/resource/ResourceDao.xml @@ -2341,4 +2341,44 @@ SELECT COUNT(1) FROM policy_cloud_service + + + \ No newline at end of file diff --git a/renren-admin/src/main/resources/mapper/sysnoticemanagement/SysNoticeManagementDao.xml b/renren-admin/src/main/resources/mapper/sysnoticemanagement/SysNoticeManagementDao.xml new file mode 100644 index 00000000..0ac2465c --- /dev/null +++ b/renren-admin/src/main/resources/mapper/sysnoticemanagement/SysNoticeManagementDao.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file