市场法规清单添加直接发布按钮
This commit is contained in:
@@ -549,3 +549,5 @@ CREATE INDEX lutl_idx_create_time ON laws_unified_todo_log(`create_time`);
|
|||||||
INSERT INTO `sys_dict_item` (`id`, `dict_id`, `parent_id`, `item_text`, `en_name`, `item_value`, `description`, `sort_order`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `is_tag_dict`, `is_read_only`, `attribute_type`, `del_flag`, `stat_node`, `en_base`) VALUES ('1694639979913162755', '1493098515761917954', '0', '多选用户弹框', 'Multiple selection a user', '19', '', 1, 1, 'admin', '2023-08-24 17:17:11', 'admin', '2023-08-24 17:41:25', NULL, 0, NULL, '0', NULL, NULL);
|
INSERT INTO `sys_dict_item` (`id`, `dict_id`, `parent_id`, `item_text`, `en_name`, `item_value`, `description`, `sort_order`, `status`, `create_by`, `create_time`, `update_by`, `update_time`, `is_tag_dict`, `is_read_only`, `attribute_type`, `del_flag`, `stat_node`, `en_base`) VALUES ('1694639979913162755', '1493098515761917954', '0', '多选用户弹框', 'Multiple selection a user', '19', '', 1, 1, 'admin', '2023-08-24 17:17:11', 'admin', '2023-08-24 17:41:25', NULL, 0, NULL, '0', NULL, NULL);
|
||||||
update laws_tag set field_show_type = '19' where db_field_txt = '责任人'
|
update laws_tag set field_show_type = '19' where db_field_txt = '责任人'
|
||||||
|
|
||||||
|
-- 2024-09-27 市场法规清单添加直接发布按钮
|
||||||
|
INSERT INTO `laws_chery_dev`.`sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `menu_en`, `app_id`, `home_icon`) VALUES ('897f89d79231fcb9019231fcb9ca0000', '897f89d79014d7fe019014d7fe2e0000', '直接发布', NULL, NULL, NULL, NULL, 2, 'marketStandard:directRelease', '1', 8.00, 0, NULL, 1, 1, 0, 0, NULL, 'ldq', '2024-09-27 13:38:19', NULL, NULL, 0, 0, '1', 0, 'Direct release', NULL, NULL);
|
||||||
|
|||||||
+2
-2
@@ -203,10 +203,10 @@ public class MarketStandardController {
|
|||||||
@PostMapping(value = "/publish")
|
@PostMapping(value = "/publish")
|
||||||
@RequiresPermissions("marketStandard:publish")
|
@RequiresPermissions("marketStandard:publish")
|
||||||
public Result<?> publish(@RequestBody Map<String, String> map) {
|
public Result<?> publish(@RequestBody Map<String, String> map) {
|
||||||
if (!map.containsKey("id") || StringUtils.isEmpty(map.get("id"))) {
|
if (!map.containsKey("ids") || StringUtils.isEmpty(map.get("ids"))) {
|
||||||
return Result.error(ResultCommon.SELECT_DATA);
|
return Result.error(ResultCommon.SELECT_DATA);
|
||||||
}
|
}
|
||||||
return marketStandardService.checkPublish(map.get("id"));
|
return marketStandardService.checkPublish(map.get("ids"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+43
-12
@@ -32,6 +32,7 @@ import org.jeecgframework.poi.excel.entity.ExportParams;
|
|||||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.context.i18n.LocaleContextHolder;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
@@ -489,23 +490,53 @@ public class LawsMarketStandardServiceImpl extends ServiceImpl<LawsMarketStandar
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public synchronized Result<?> checkPublish(String id) {
|
public synchronized Result<?> checkPublish(String ids) {
|
||||||
LawsMarketStandard lawsMarketStandardOld = getById(id);
|
List<String> listIds = Arrays.asList(ids.split(","));
|
||||||
if(Objects.isNull(lawsMarketStandardOld)){
|
List<LawsMarketStandard> lawsMarketStandardOldList = listByIds(listIds);
|
||||||
|
if(listIds.size() != lawsMarketStandardOldList.size()){
|
||||||
return Result.error(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
return Result.error(ResultCommon.NO_CORRESPONDING_DATA_FOUND);
|
||||||
}
|
}
|
||||||
// 已发布的清单所有人都可以查看,未发布的数据只能作者和管理管查看、编辑、删除
|
StringBuilder msg = new StringBuilder();
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
|
for (String listId : listIds) {
|
||||||
&& Arrays.stream(sysUser.getRoleIds().split(",")).noneMatch(otherAdmin::contains)
|
Optional<LawsMarketStandard> op = lawsMarketStandardOldList.stream().filter(o->Objects.equals(o.getId(),listId)).findFirst();
|
||||||
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
|
if(!op.isPresent()){
|
||||||
&& !Objects.equals(lawsMarketStandardOld.getAuthor(),sysUser.getId())){
|
continue;
|
||||||
return Result.error(ResultCommon.NO_PERMISSION);
|
}
|
||||||
|
LawsMarketStandard lawsMarketStandard = op.get();
|
||||||
|
// 已发布的清单所有人都可以查看,未发布的数据只能作者和管理管查看、编辑、删除
|
||||||
|
|
||||||
|
if(!Arrays.asList(sysUser.getRoleIds().split(",")).contains(lawsAdmin)
|
||||||
|
&& Arrays.stream(sysUser.getRoleIds().split(",")).noneMatch(otherAdmin::contains)
|
||||||
|
&& !Arrays.asList(sysUser.getRoleIds().split(",")).contains(superAdmin)
|
||||||
|
&& !Objects.equals(lawsMarketStandard.getAuthor(),sysUser.getId())){
|
||||||
|
msg.append(lawsMarketStandard.getManifestNo())
|
||||||
|
.append(Objects.equals(LocaleContextHolder.getLocale(),Locale.ENGLISH)
|
||||||
|
? "No data operation permission," : "没有权限,");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if(Objects.equals(lawsMarketStandard.getManifestStatus(),MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
|
||||||
|
msg.append(lawsMarketStandard.getManifestNo())
|
||||||
|
.append(Objects.equals(LocaleContextHolder.getLocale(),Locale.ENGLISH)
|
||||||
|
? "Data published," : "数据已发布,");
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
processMarketStandardReleaseService.checkProcessStatus(listId);
|
||||||
|
}catch (Exception e){
|
||||||
|
msg.append(lawsMarketStandard.getManifestNo())
|
||||||
|
.append("当前数据已发布的流程未结束,不可操作,");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(Objects.equals(lawsMarketStandardOld.getManifestStatus(),MarketStandardConstants.MANIFEST_STATUS_PUBLISH)){
|
if(!StringUtils.isEmpty(msg.toString())){
|
||||||
return Result.error(ResultCommon.DATA_PUBLISHED);
|
return Result.error(msg.toString().substring(0,msg.toString().length() - 1));
|
||||||
}
|
}
|
||||||
processMarketStandardReleaseService.checkProcessStatus(id);
|
LambdaUpdateWrapper<LawsMarketStandard> updateLawsMarketStandard = new LambdaUpdateWrapper<>();
|
||||||
|
updateLawsMarketStandard.in(LawsMarketStandard::getId,listIds);
|
||||||
|
updateLawsMarketStandard.set(LawsMarketStandard::getUpdateBy,sysUser.getUsername());
|
||||||
|
updateLawsMarketStandard.set(LawsMarketStandard::getUpdateBy,new Date());
|
||||||
|
updateLawsMarketStandard.set(LawsMarketStandard::getManifestStatus,MarketStandardConstants.MANIFEST_STATUS_PUBLISH);
|
||||||
|
update(updateLawsMarketStandard);
|
||||||
return Result.OK(ResultCommon.OK);
|
return Result.OK(ResultCommon.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user