diff --git a/src/main/java/com/xdap/self_development/common/UserPermissionGetter.java b/src/main/java/com/xdap/self_development/common/UserPermissionGetter.java index acaa05f..77e74c7 100644 --- a/src/main/java/com/xdap/self_development/common/UserPermissionGetter.java +++ b/src/main/java/com/xdap/self_development/common/UserPermissionGetter.java @@ -23,8 +23,8 @@ public class UserPermissionGetter { private RuntimeAppContextService runtimeAppContextService; public String getCurrentUserId() { -// return runtimeAppContextService.getCurrentUserId(); - return "zjh"; + return runtimeAppContextService.getCurrentUserId(); +// return "zjh"; } // 获取子系统下的参数权限 diff --git a/src/main/java/com/xdap/self_development/pojo/Template.java b/src/main/java/com/xdap/self_development/pojo/Template.java index a1d8a72..12a2468 100644 --- a/src/main/java/com/xdap/self_development/pojo/Template.java +++ b/src/main/java/com/xdap/self_development/pojo/Template.java @@ -11,7 +11,7 @@ import java.sql.Timestamp; @SQLQuery(value = { @SQL(view = "getMaxOrder", - sql = "select *, MAX(order_num) AS maxOrder from yfsjglpt_model_template GROUP BY template_name"), + sql = "SELECT * FROM ( SELECT *, MAX(order_num) OVER (PARTITION BY template_name ) AS maxOrder , ROW_NUMBER() OVER (PARTITION BY template_name ORDER BY order_num DESC) AS rn FROM yfsjglpt_model_template ) tmp WHERE rn = 1"), // 查找每个模板的最新版本并且优先级按照已发布、审核中、草稿状态转变(只有这三种状态) @SQL(view = "getLatestTemplate", sql = "SELECT ranked.id, ranked.template_name, ranked.version, ranked.status, ranked.created_time , ranked.published_time, xu.username AS 'createBy' FROM ( SELECT t.*, ROW_NUMBER() OVER (PARTITION BY template_name ORDER BY CASE WHEN status = 'COMPLETE' THEN 1 WHEN status = 'APPROVING' THEN 2 ELSE 3 END, version DESC) AS rn FROM yfsjglpt_model_template t WHERE status IN ('COMPLETE', 'DRAFT', 'APPROVING') ) ranked LEFT JOIN xdap_users xu ON xu.id = ranked.create_by WHERE rn = 1 ORDER BY CASE status WHEN 'COMPLETE' THEN 1 WHEN 'APPROVING' THEN 2 WHEN 'DRAFT' THEN 3 WHEN 'RETURNED' THEN 4 WHEN 'REJECTED' THEN 5 ELSE 6 END ASC" diff --git a/src/main/java/com/xdap/self_development/service/impl/ParameterServiceImpl.java b/src/main/java/com/xdap/self_development/service/impl/ParameterServiceImpl.java index 838978a..ca8e955 100644 --- a/src/main/java/com/xdap/self_development/service/impl/ParameterServiceImpl.java +++ b/src/main/java/com/xdap/self_development/service/impl/ParameterServiceImpl.java @@ -51,21 +51,21 @@ public class ParameterServiceImpl implements ParameterService { } //todo 假定子系统名和模板名一致 - Set objects = new HashSet<>(); - objects.addAll(permissionGetter.getParamPermissions(template.getTemplateName())); - objects.addAll(bd.getBusinessDatabase() - .viewQueryMode(true) - .view("selectParametersByTIdAndCreateBy") - .setVar("templateId", template.getId()) - .setVar("createdBy", permissionGetter.getCurrentUserId()) - .doQuery(Parameter.class).stream().map(Parameter::getId).collect(Collectors.toList())); - List parameterIds = new ArrayList<>(objects); +// Set objects = new HashSet<>(); +// objects.addAll(permissionGetter.getParamPermissions(template.getTemplateName())); +// objects.addAll(bd.getBusinessDatabase() +// .viewQueryMode(true) +// .view("selectParametersByTIdAndCreateBy") +// .setVar("templateId", template.getId()) +// .setVar("createdBy", permissionGetter.getCurrentUserId()) +// .doQuery(Parameter.class).stream().map(Parameter::getId).collect(Collectors.toList())); +// List parameterIds = new ArrayList<>(objects); return bd.getBusinessDatabase() .viewQueryMode(true) - .view("selectParametersByTemplateId") + .view("selectParametersByTId") .setVar("templateId", template.getId()) - .setVar("parameterIds", parameterIds) +// .setVar("parameterIds", parameterIds) .like("parameter_name", form.getParameterName()) .like("parts_name", form.getPartsName()) .like("parameter_type", form.getParameterType())