Merge branch 'dev' into pr@dev_st_fix

This commit is contained in:
dataeaseShu 2023-05-17 17:25:41 +08:00
commit 4b678cff30
7 changed files with 24 additions and 37 deletions

View File

@ -19,9 +19,10 @@ public interface ExtSysMsgMapper {
"<foreach collection='msgIds' item='msgId' open='(' separator=',' close=')' >",
" #{msgId}",
"</foreach>",
" and user_id = #{uid}",
"</script>"
})
int batchStatus(@Param("msgIds") List<Long> msgIds, @Param("time") Long time);
int batchStatus(@Param("msgIds") List<Long> msgIds, @Param("time") Long time, @Param("uid") Long uid);
@Delete({
"<script>",
@ -29,9 +30,10 @@ public interface ExtSysMsgMapper {
"<foreach collection='msgIds' item='msgId' open='(' separator=',' close=')' >",
" #{msgId}",
"</foreach>",
" and user_id = #{uid} ",
"</script>"
})
int batchDelete(@Param("msgIds") List<Long> msgIds);
int batchDelete(@Param("msgIds") List<Long> msgIds, @Param("uid") Long uid);
int batchInsert(@Param("settings") List<SysMsgSetting> settings);

View File

@ -18,6 +18,7 @@ import io.dataease.plugins.common.entity.XpackConditionEntity;
import io.dataease.plugins.common.entity.XpackGridRequest;
import io.dataease.plugins.config.SpringContextUtil;
import io.dataease.plugins.xpack.email.dto.request.*;
import io.dataease.plugins.xpack.email.dto.response.XpackTaskEntity;
import io.dataease.plugins.xpack.email.dto.response.XpackTaskGridDTO;
import io.dataease.plugins.xpack.email.dto.response.XpackTaskInstanceDTO;
import io.dataease.plugins.xpack.email.service.EmailXpackService;
@ -35,6 +36,9 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.util.HtmlUtils;
import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
import java.net.URLEncoder;
import java.util.ArrayList;
@ -43,10 +47,6 @@ import java.util.List;
import java.util.concurrent.Future;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
@ApiIgnore
@RequestMapping("/plugin/task")
@RestController
@ -108,8 +108,8 @@ public class XEmailTaskServer {
@PostMapping("/fireNow/{taskId}")
public void fireNow(@PathVariable("taskId") Long taskId) throws Exception {
EmailXpackService emailXpackService = SpringContextUtil.getBean(EmailXpackService.class);
XpackEmailTaskRequest request = emailXpackService.taskForm(taskId);
GlobalTaskEntity globalTaskEntity = BeanUtils.copyBean(new GlobalTaskEntity(), request);
XpackTaskEntity xpackTaskEntity = emailXpackService.taskDetail(taskId);
GlobalTaskEntity globalTaskEntity = BeanUtils.copyBean(new GlobalTaskEntity(), xpackTaskEntity);
Boolean invalid = false;
if (CronUtils.taskExpire(globalTaskEntity.getEndTime())) {
globalTaskEntity.setEndTime(null);

View File

@ -657,8 +657,8 @@ public class JdbcProvider extends DefaultJdbcProvider {
if (StringUtils.isEmpty(oracleConfiguration.getSchema())) {
throw new Exception(Translator.get("i18n_schema_is_empty"));
}
return "select table_name, owner, comments from all_tab_comments where owner='OWNER' AND table_type = 'TABLE' AND table_name in (select table_name from all_tables where owner='OWNER')".replaceAll("OWNER", oracleConfiguration.getSchema());
case pg:
return "select table_name, owner, comments from all_tab_comments where owner='" + oracleConfiguration.getSchema() + "' AND table_type = 'TABLE'";
case pg:
PgConfiguration pgConfiguration = new Gson().fromJson(datasourceRequest.getDatasource().getConfiguration(), PgConfiguration.class);
if (StringUtils.isEmpty(pgConfiguration.getSchema())) {
throw new Exception(Translator.get("i18n_schema_is_empty"));

View File

@ -1,16 +1,16 @@
package io.dataease.service.message;
import io.dataease.commons.utils.LogUtil;
import io.dataease.ext.ExtSysMsgMapper;
import io.dataease.commons.constants.SysMsgConstants;
import io.dataease.commons.utils.AuthUtils;
import io.dataease.commons.utils.CommonBeanFactory;
import io.dataease.commons.utils.LogUtil;
import io.dataease.controller.sys.request.BatchSettingRequest;
import io.dataease.controller.sys.request.MsgRequest;
import io.dataease.controller.sys.request.MsgSettingRequest;
import io.dataease.controller.sys.response.MsgGridDto;
import io.dataease.controller.sys.response.SettingTreeNode;
import io.dataease.controller.sys.response.SubscribeNode;
import io.dataease.ext.ExtSysMsgMapper;
import io.dataease.plugins.common.base.domain.*;
import io.dataease.plugins.common.base.mapper.SysMsgChannelMapper;
import io.dataease.plugins.common.base.mapper.SysMsgMapper;
@ -105,11 +105,11 @@ public class SysMsgService {
}
public void setBatchRead(List<Long> msgIds) {
extSysMsgMapper.batchStatus(msgIds, System.currentTimeMillis());
extSysMsgMapper.batchStatus(msgIds, System.currentTimeMillis(), AuthUtils.getUser().getUserId());
}
public void batchDelete(List<Long> msgIds) {
extSysMsgMapper.batchDelete(msgIds);
extSysMsgMapper.batchDelete(msgIds, AuthUtils.getUser().getUserId());
}
public void save(SysMsg sysMsg) {

View File

@ -193,7 +193,8 @@ export default {
'text',
'label',
'word-cloud',
'flow-map'
'flow-map',
'bidirectional-bar'
],
linkageExcludeViewType: [
'richTextView',
@ -202,7 +203,8 @@ export default {
'text',
'label',
'word-cloud',
'flow-map'
'flow-map',
'bidirectional-bar'
],
copyData: null,
hyperlinksSetVisible: false,

View File

@ -251,6 +251,8 @@ export function baseBidirectionalBarOptionAntV(plot, container, chart, action, i
const legend = getLegend(chart)
const xAxis = getXAxis(chart)
const yAxis = getYAxis(chart)
// 处理横轴标题方向不对
yAxis?.title && (yAxis.title.autoRotate = false)
// data
const data = _.cloneDeep(chart.data.data)
// options
@ -280,12 +282,6 @@ export function baseBidirectionalBarOptionAntV(plot, container, chart, action, i
start: [{ trigger: 'legend-item:click', action: ['list-unchecked:toggle', 'data-filter:filter', 'element-active:reset', 'element-highlight:reset'] }]
}
},
{
type: 'tooltip', cfg: {
start: [{ trigger: 'interval:mousemove', action: 'tooltip:show' }],
end: [{ trigger: 'interval:mouseleave', action: 'tooltip:hide' }]
}
},
{
type: 'active-region', cfg: {
start: [{ trigger: 'interval:mousemove', action: 'active-region:show' }],
@ -307,19 +303,6 @@ export function baseBidirectionalBarOptionAntV(plot, container, chart, action, i
}
}
}
// group
if (isGroup) {
options.isGroup = true
} else {
delete options.isGroup
}
// stack
if (isStack) {
options.isStack = true
} else {
delete options.isStack
}
options.isPercent = chart.type.includes('percentage')
// custom color
options.color = antVCustomColor(chart)
if (customAttr.color.gradient) {

View File

@ -712,8 +712,8 @@ export function getYAxis(chart) {
const axisValue = a.axisValue
if (!chart.type.includes('horizontal')) {
if (axisValue && !axisValue.auto) {
axisValue.min && (axis.minLimit = parseFloat(axisValue.min))
axisValue.max && (axis.maxLimit = parseFloat(axisValue.max))
axisValue.min && (axis.minLimit = axis.min = parseFloat(axisValue.min))
axisValue.max && (axis.maxLimit = axis.max = parseFloat(axisValue.max))
axisValue.splitCount && (axis.tickCount = parseFloat(axisValue.splitCount))
}
}