新增:参数创建人

This commit is contained in:
zjh 2025-12-10 16:48:14 +08:00
parent c16633143e
commit b795c7a154
7 changed files with 46 additions and 25 deletions

View File

@ -22,9 +22,14 @@ public class UserPermissionGetter {
@Resource
private RuntimeAppContextService runtimeAppContextService;
public String getCurrentUserId() {
// String currentUserId = runtimeAppContextService.getCurrentUserId();
return "zzy";
}
// 获取子系统下的参数权限
public List<String> getParamPermissions(String subsystem) {
String currentUserId = runtimeAppContextService.getCurrentUserId();
String currentUserId = getCurrentUserId();
Set<String> result = new HashSet<>();
try {
// 获取用户权限

View File

@ -34,10 +34,12 @@ public class DeleteController {
@GetMapping("/getTables")
public Response getTables() {
Map<String, Object> map = new HashMap<>();
List<Map<String, Object>> list = queryFactory.buildFromDatasource("yc_lrs_test_relsult")
List<Map<String, Object>> list = queryFactory
.buildFromDatasource("yc_lrs_test_relsult")
.table("ads_prd_f_yfsjglpt_fdjlbjcjb")
.doQuery();
List<Map<String, Object>> list1 = queryFactory.buildFromDatasource("yc_lrs_test_relsult")
List<Map<String, Object>> list1 = queryFactory
.buildFromDatasource("yc_lrs_test_relsult")
.table("ads_prd_f_tc_flsxb")
.doQuery();
map.put("ads_prd_f_yfsjglpt_fdjlbjcjb", list);

View File

@ -9,6 +9,8 @@ import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
@SQLQuery(value = {
@SQL(view = "selectParametersByTId",
sql = "select p.* from yfsjglpt_model_parameter p left join yfsjglpt_model_parameter_and_template tap on p.id = tap.parameter_id where tap.template_id = #templateId"),
@SQL(view = "getAllSubsystemAndPara",
sql = "SELECT DISTINCT mp.subsystem_name, mp.parameter_name, mp.id, mp.parameter_type FROM yfsjglpt_model_parameter mp INNER JOIN yfsjglpt_model_parameter_and_template mpat ON mp.id = mpat.parameter_id INNER JOIN yfsjglpt_model_template mt ON mpat.template_id = mt.id INNER JOIN ( SELECT template_name, MAX(version) AS max_version FROM yfsjglpt_model_template WHERE status = 'COMPLETE' GROUP BY template_name ) latest ON mt.template_name = latest.template_name AND mt.version = latest.max_version WHERE mt.status = 'COMPLETE' ORDER BY mp.subsystem_name, mp.parameter_name, mp.id, mp.parameter_type"),
@SQL(view = "getAllSubsystem",
@ -46,6 +48,9 @@ public class Parameter extends MpaasBasePojo {
@ExcelProperty("备注")
private String remarks;
@ExcelIgnore
private String createdBy;
@ExcelIgnore
@Column(value = "max_number",type=ColumnType.CALCULATE)
private Integer maxNumber;

View File

@ -12,7 +12,7 @@ import java.sql.Timestamp;
@SQLQuery(value = {
// 查找每个模板的最新版本并且优先级按照已发布审核中草稿状态转变只有这三种状态
@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"
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"
),
// 获取所有模板的最新版本号包括所有状态
@SQL(view = "getNewTemplate",

View File

@ -51,12 +51,12 @@ public class ParameterServiceImpl implements ParameterService {
}
//todo 假定子系统名和模板名一致
List<String> permissionIds = permissionGetter.getParamPermissions(template.getTemplateName());
// List<String> permissionIds = permissionGetter.getParamPermissions(template.getTemplateName());
return bd.getBusinessDatabase()
.viewQueryMode(true)
.view("selectParametersByTemplateId")
.view("selectParametersByTId")
.setVar("templateId", template.getId())
.setVar("permissionIds", permissionIds)
// .setVar("permissionIds", permissionIds)
.like("parameter_name", form.getParameterName())
.like("parts_name", form.getPartsName())
.like("parameter_type", form.getParameterType())
@ -158,7 +158,7 @@ public class ParameterServiceImpl implements ParameterService {
// 基准模板的参数
List<Parameter> parameters = bd.getBusinessDatabase()
.viewQueryMode(true)
.view("selectParametersByTemplateId")
.view("selectParametersByTId")
.setVar("templateId", baseTemplate.getId())
.doQuery(Parameter.class);
@ -194,11 +194,12 @@ public class ParameterServiceImpl implements ParameterService {
}
}
private ParameterProcessingResult processParameters(
List<ParameterForm> parameterForms,
List<Parameter> existingParameters,
Template baseTemplate,
Template newTemplate)
@Transactional(rollbackFor = CommonException.class)
public ParameterProcessingResult processParameters(
List<ParameterForm> parameterForms,
List<Parameter> existingParameters,
Template baseTemplate,
Template newTemplate)
{
Map<Integer, Parameter> parameterMap = createParameterMap(existingParameters);
@ -252,13 +253,15 @@ public class ParameterServiceImpl implements ParameterService {
/**
* 处理新增参数
*/
private void handleInsertOperation(
ParameterForm form, Template newTemplate,
List<Parameter> newParameters, List<RevisionRecord> revisionRecords,
Template baseTemplate
) {
@Transactional(rollbackFor = CommonException.class)
public void handleInsertOperation(
ParameterForm form, Template newTemplate,
List<Parameter> newParameters, List<RevisionRecord> revisionRecords,
Template baseTemplate
) {
Parameter newParameter = new Parameter();
BeanUtils.copyProperties(form, newParameter);
newParameter.setCreatedBy(permissionGetter.getCurrentUserId());
Parameter parameter = bd.getBusinessDatabase()
.viewQueryMode(true)
@ -295,11 +298,12 @@ public class ParameterServiceImpl implements ParameterService {
/**
* 处理更新参数
*/
private void handleUpdateOperation(
ParameterForm form, Map<Integer, Parameter> parameterMap,
Template newTemplate, List<Parameter> newParameters,
List<RevisionRecord> revisionRecords, Template baseTemplate
) {
@Transactional(rollbackFor = CommonException.class)
public void handleUpdateOperation(
ParameterForm form, Map<Integer, Parameter> parameterMap,
Template newTemplate, List<Parameter> newParameters,
List<RevisionRecord> revisionRecords, Template baseTemplate
) {
Parameter originalParameter = parameterMap.get(form.getParameterNumber());
if (originalParameter == null) {
@ -308,6 +312,7 @@ public class ParameterServiceImpl implements ParameterService {
Parameter updatedParameter = new Parameter();
BeanUtils.copyProperties(form, updatedParameter);
updatedParameter.setCreatedBy(permissionGetter.getCurrentUserId());
String detail = getParameterChange(originalParameter, updatedParameter);
bd.getBusinessDatabase().doInsert(updatedParameter);

View File

@ -192,7 +192,8 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
}
}
private void processApprovalLogic(ApprovalFlow flow, HandleApprovalRequest request, String currentNode) {
@Transactional(rollbackFor = CommonException.class)
public void processApprovalLogic(ApprovalFlow flow, HandleApprovalRequest request, String currentNode) {
// 记录审批结果
ApprovalRecord record = new ApprovalRecord();
record.setFlowId(flow.getId());
@ -316,6 +317,7 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
}
// 处理下一节点流转
@Transactional(rollbackFor = CommonException.class)
public void processNextNode(ApprovalFlow flow, String currentNode) {
// 检查当前节点是否满足流转条件
if (!checkNodeComplete(flow, currentNode)) {
@ -388,7 +390,8 @@ public class TemplateApprovalServiceImpl implements TemplateApprovalService {
}
}
private void cancelProcess(ApprovalFlow flow, String status) {
@Transactional(rollbackFor = CommonException.class)
public void cancelProcess(ApprovalFlow flow, String status) {
// 更新流程状态
flow.setFlowStatus(status);
bd.getBusinessDatabase()

View File

@ -192,6 +192,7 @@ public class TemplateServiceImpl implements TemplateService {
// 验证公式
for (Parameter data : dataList) {
data.setCreatedBy(permissionGetter.getCurrentUserId());
if (Objects.equals(data.getParameterSource(), "公式计算")) {
Map<String, Object> validationResult = FormulaValidator.validateFormulaDetailed(
data.getNumberOrFormula());