Merge branch 'pet' into liujun-2024-06-13-一公司人员定位新需求
commit
8f5bbae950
|
@ -32,6 +32,13 @@ import java.util.Map;
|
|||
public class DockingAspect {
|
||||
@Autowired
|
||||
private DockSendMessageService sendMessageService;
|
||||
@Value("${mq.csy.data.topic}")
|
||||
private String csyDataDocking;
|
||||
|
||||
@Value("${mq.cmt.data.topic}")
|
||||
private String cmtDataDocking;
|
||||
@Value("${mq.czks.data.topic}")
|
||||
private String czksDataDocking;
|
||||
@Value("${baseimgpath}")
|
||||
public String baseimgpath;
|
||||
@Pointcut("@annotation(com.zcloud.aspect.DockAnnotation)")
|
||||
|
@ -104,9 +111,27 @@ public class DockingAspect {
|
|||
tenCorpDto.setProducer_name("qa-prevention-czks");
|
||||
// 有dockData
|
||||
if (Tools.notEmpty(proceed.get("dockData"))) {
|
||||
sendData.put("dockData", proceed.get("dockData"));
|
||||
String dockData = proceed.get("dockData");
|
||||
PageData dockDataMap = JSON.parseObject(dockData, PageData.class);
|
||||
sendData.put("dockData",dockData);
|
||||
// 操作企业
|
||||
if ("f8da1790b1034058ae2efefd69af3284".contains(dockDataMap.getString("operatingCorpId"))
|
||||
|| "016d19225e9d4ece863cce8a256a3e72".contains(dockDataMap.getString("operatingCorpId"))
|
||||
|| "1".equals(dockDataMap.getString("sendAllCorp"))
|
||||
){
|
||||
tenCorpDto.setTopic(czksDataDocking);
|
||||
sendMessageService.sendMessage(tenCorpDto);
|
||||
}
|
||||
// todo先不给其他两家发送消息,上线前打开
|
||||
if ("8854edee3aa94be496cee676b6d4845a".equals(dockDataMap.getString("operatingCorpId")) || "1".equals(dockDataMap.getString("sendAllCorp"))){
|
||||
tenCorpDto.setTopic(csyDataDocking);
|
||||
sendMessageService.sendMessage(tenCorpDto);
|
||||
}
|
||||
if ("6aa255d41602497fa0f934a822820df4".equals(dockDataMap.getString("operatingCorpId")) || "1".equals(dockDataMap.getString("sendAllCorp"))){
|
||||
tenCorpDto.setTopic(cmtDataDocking);
|
||||
sendMessageService.sendMessage(tenCorpDto);
|
||||
}
|
||||
proceed.remove("dockData");
|
||||
sendMessageService.sendMessage(tenCorpDto);
|
||||
} else {
|
||||
System.out.println("------------------------无dockData不发消息------------------------");
|
||||
}
|
||||
|
|
|
@ -108,6 +108,7 @@ public class TextLibraryController extends BaseController {
|
|||
}
|
||||
if (StringUtils.isEmpty(pd.getString("CORPINFO_ID")))pd.put("CORPINFO_ID",Jurisdiction.getCORPINFO_ID());
|
||||
|
||||
|
||||
if ("3".equals(pd.getString("ASSOCIATION"))) {
|
||||
pd.put("TYPE_ONE", "43ed4012090d4614bb35da60d06c8264");
|
||||
pd.put("plan",pd.getString("CATEGORY_ID"));
|
||||
|
@ -124,6 +125,11 @@ public class TextLibraryController extends BaseController {
|
|||
}
|
||||
|
||||
pd.put("STATUS","1");
|
||||
// 标准规范库特殊处理
|
||||
if ("~".equals(pd.getString("CORPINFO_ID"))) {
|
||||
pd.put("CORPINFO_ID", null);
|
||||
pd.put("STATUS", null);
|
||||
}
|
||||
|
||||
page.setPd(pd);
|
||||
List<PageData> varList = textlibraryService.list(page);
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.zcloud.dto;
|
|||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.zcloud.entity.PageData;
|
||||
import com.zcloud.util.Warden;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
|
@ -23,6 +24,10 @@ public class TenCorpDto {
|
|||
// 消息体
|
||||
private PageData data;
|
||||
|
||||
private String messageLogId;
|
||||
|
||||
private String CREATE_TIME;
|
||||
|
||||
public TenCorpDto() {
|
||||
this.id = Warden.get32UUID();
|
||||
}
|
||||
|
@ -40,6 +45,9 @@ public class TenCorpDto {
|
|||
info.put("MARK_NAME", this.mark_name);
|
||||
info.put("MESSAGE", this.message);
|
||||
info.put("TOPIC",this.topic);
|
||||
info.put("DATA", JSON.toJSONString(this.data));
|
||||
info.put("CREATE_TIME", this.CREATE_TIME);
|
||||
info.put("MESSAGE_LOG_ID", this.messageLogId);
|
||||
return info;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -54,6 +54,10 @@ public class TextLibraryServiceImpl implements TextLibraryService {
|
|||
@Value("${heBeiQinAnFile}")
|
||||
private String heBeiQinAnFile;
|
||||
|
||||
@Value("${biaoZhunShuJuKu}")
|
||||
private String biaoZhunShuJuKu;
|
||||
|
||||
|
||||
/**
|
||||
* 新增
|
||||
*
|
||||
|
@ -107,8 +111,12 @@ public class TextLibraryServiceImpl implements TextLibraryService {
|
|||
}
|
||||
// 如果是迁移数据就用河北秦安的路径
|
||||
for (PageData entity : list) {
|
||||
if(!"1".equals(entity.getString("MIGRATION_FLAG"))){
|
||||
entity.put("PATH",heBeiQinAnFile + entity.getString("PATH"));
|
||||
String url = entity.getString("PATH");
|
||||
if (!"1".equals(entity.getString("MIGRATION_FLAG"))) {
|
||||
entity.put("PATH", heBeiQinAnFile + url);
|
||||
}
|
||||
if ("2".equals(entity.getString("MIGRATION_FLAG"))) {
|
||||
entity.put("PATH", biaoZhunShuJuKu + url);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
|
|
|
@ -26,6 +26,13 @@ public class DockSendMessageServiceImpl implements DockSendMessageService {
|
|||
private String gwjDataTopic;
|
||||
@Value("${mq.gwj.file.topic}")
|
||||
private String gwjFileTopic;
|
||||
@Value("${mq.csy.data.topic}")
|
||||
private String csyDataDocking;
|
||||
|
||||
@Value("${mq.cmt.data.topic}")
|
||||
private String cmtDataDocking;
|
||||
@Value("${mq.czks.data.topic}")
|
||||
private String czksDataDocking;
|
||||
@Resource
|
||||
private RocketMQTemplate rocketMQTemplate;
|
||||
|
||||
|
@ -40,14 +47,32 @@ public class DockSendMessageServiceImpl implements DockSendMessageService {
|
|||
|
||||
@Override
|
||||
public void sendMessage(TenCorpDto tenCorpDto) throws Exception {
|
||||
PageData productionPD = new PageData();
|
||||
productionPD.put("PRODUCTION_ID", Warden.get32UUID());
|
||||
productionPD.put("MESSAGE_LOG_ID", tenCorpDto.getMessageLogId() == null ? "" : tenCorpDto.getMessageLogId());
|
||||
productionPD.put("PRODUCTION_TYPE", "gwj-DockSendMessageServiceImpl.sendMessage(TenCorpDto tenCorpDto)");
|
||||
productionPD.put("PRODUCTION_TIME", DateUtil.getTime());
|
||||
productionPD.put("CREATE_TIME", tenCorpDto.getCREATE_TIME() == null ? "" : tenCorpDto.getCREATE_TIME());
|
||||
productionPD.put("MARK", tenCorpDto.getMark() == null ? "" : tenCorpDto.getMark());
|
||||
productionPD.put("DATA", tenCorpDto.getData() == null ? "" : tenCorpDto.getData().toString());
|
||||
try {
|
||||
PageData log = tenCorpDto.getPd();
|
||||
log.put("MESSAGE_LOG_ID", Warden.get32UUID());
|
||||
log.put("CREATE_TIME", DateUtil.getTime());
|
||||
mqMessageLogMapper.save(log);
|
||||
System.out.println("生产者:" + tenCorpDto.toString());
|
||||
SendResult sendResult = rocketMQTemplate.syncSend(this.gwjDataTopic, tenCorpDto.toString());
|
||||
if (!sendResult.getSendStatus().equals(SendStatus.SEND_OK)) {
|
||||
SendResult sendResult = null;
|
||||
// 曹煤炭 后期是 三家
|
||||
if (tenCorpDto.getTopic().equals(czksDataDocking)) {
|
||||
sendResult = rocketMQTemplate.syncSend(this.czksDataDocking, tenCorpDto.toString());
|
||||
}
|
||||
if (tenCorpDto.getTopic().equals(cmtDataDocking)) {
|
||||
sendResult = rocketMQTemplate.syncSend(this.cmtDataDocking, tenCorpDto.toString());
|
||||
}
|
||||
if (tenCorpDto.getTopic().equals(csyDataDocking)) {
|
||||
sendResult = rocketMQTemplate.syncSend(this.csyDataDocking, tenCorpDto.toString());
|
||||
}
|
||||
if (sendResult != null && !sendResult.getSendStatus().equals(SendStatus.SEND_OK)) {
|
||||
throw new RuntimeException("产品入栈失败");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
|
|
|
@ -992,37 +992,24 @@ public class XgfUserServiceImpl implements XgfUserService {
|
|||
|
||||
@Override
|
||||
public void repulse(PageData flows, XgfFlowDto info) throws Exception {
|
||||
// add by liu jun 相关方可指定打回至指定节点 -1 为默认打回至相关方端
|
||||
if ("-1".equals(info.getBACK_STEP())){
|
||||
PageData condition = new PageData();
|
||||
condition.put("XGF_USER_ID", flows.getString("FLOWS_ID"));
|
||||
PageData entity = xgfUserMapper.findById(condition);
|
||||
entity.put("STATUS", "0");
|
||||
entity.put("VALID_FLAG", "0");
|
||||
entity.put("CHECK_STATUS", "-2");
|
||||
PageData key = new PageData();
|
||||
key.putAll(entity);
|
||||
key.put("USER_ID", condition.get("XGF_USER_ID"));
|
||||
key.put("STATUS", "1");
|
||||
key.put("OPINION", flows.get("OPINION"));
|
||||
Map result = HttpClientService.doPost(prevention_xgf_url + "openApi/user/approve", key);
|
||||
if (result == null || !"succeed".equals(result.get("result"))) {
|
||||
throw new RuntimeException("请求失败");
|
||||
}
|
||||
xgfUserMapper.edit(entity);
|
||||
this.clearInfo(flows);
|
||||
xgfFlowsMapper.edit(flows);
|
||||
} else {
|
||||
// 1、判断不能自己打回到自己
|
||||
PageData condition = new PageData();
|
||||
condition.put("FLOWS_ID",flows.getString("FLOWS_ID"));
|
||||
PageData flowEntity = xgfFlowsMapper.findById(condition);
|
||||
if (flowEntity != null && flowEntity.size() > 0 && flowEntity.getString("FLOWS_STEP").equals(info.getBACK_STEP())){
|
||||
throw new RuntimeException("不能自己打回到自己");
|
||||
}
|
||||
flowEntity.put("FLOWS_STEP", info.getBACK_STEP());
|
||||
xgfFlowsMapper.edit(flowEntity);
|
||||
PageData condition = new PageData();
|
||||
condition.put("XGF_USER_ID", flows.getString("FLOWS_ID"));
|
||||
PageData entity = xgfUserMapper.findById(condition);
|
||||
entity.put("STATUS", "0");
|
||||
entity.put("VALID_FLAG", "0");
|
||||
entity.put("CHECK_STATUS", "-2");
|
||||
PageData key = new PageData();
|
||||
key.putAll(entity);
|
||||
key.put("USER_ID", condition.get("XGF_USER_ID"));
|
||||
key.put("STATUS", "1");
|
||||
key.put("OPINION", flows.get("OPINION"));
|
||||
Map result = HttpClientService.doPost(prevention_xgf_url + "openApi/user/approve", key);
|
||||
if (result == null || !"succeed".equals(result.get("result"))) {
|
||||
throw new RuntimeException("请求失败");
|
||||
}
|
||||
xgfUserMapper.edit(entity);
|
||||
this.clearInfo(flows);
|
||||
xgfFlowsMapper.edit(flows);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -2,12 +2,12 @@
|
|||
|
||||
datasource.no1.driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
datasource.no1.url=jdbc:mysql://39.101.130.96:33068/qa-gwj-prevention?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=utf-8
|
||||
datasource.no1.username=root
|
||||
datasource.no1.password=Mysql@zcloud88888
|
||||
datasource.no1.username=dev
|
||||
datasource.no1.password=Zykj@dev123456
|
||||
datasource.no2.driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
datasource.no2.url=jdbc:mysql://39.101.130.96:33068/qa-gwj-regulatory?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=utf-8
|
||||
datasource.no2.username=root
|
||||
datasource.no2.password=Mysql@zcloud88888
|
||||
datasource.no2.username=dev
|
||||
datasource.no2.password=Zykj@dev123456
|
||||
|
||||
|
||||
#druid???
|
||||
|
@ -63,18 +63,18 @@ spring.main.banner-mode=off
|
|||
preventionxgf.api.url=https://qgxgf.qhdsafety.com/qa-prevention-xgf/
|
||||
qa-regulatory-gwj.api.url=https://qgjg.qhdsafety.com/qa-regulatory-gwj/
|
||||
#?????
|
||||
smb.host=192.168.192.201
|
||||
smb.host=39.101.130.96
|
||||
smb.port=22
|
||||
smb.user=root
|
||||
smb.password=SJSKAQHBGLXT@20220311
|
||||
smb.basePath=/mnt/qask/file/
|
||||
smb.password=Zcloud@zcloud88888
|
||||
smb.basePath=/mnt/wwag/file/
|
||||
|
||||
#Mq\u914D\u7F6E
|
||||
rocketmq.consumer.group2=edu-admin-edit
|
||||
rocketmq.consumer.group1=edu-admin-add
|
||||
#rocketmq.name-server=10.0.140.141:9876
|
||||
#rocketmq.name-server=192.168.0.70:9876
|
||||
rocketmq.name-server=192.168.151.57:9876
|
||||
rocketmq.name-server=192.168.0.2:9876
|
||||
rocketmq.producer.group=libmiddle
|
||||
rocketmq.producer.send-message-timeout=3000
|
||||
rocketmq.producer.compress-message-body-threshold=4096
|
||||
|
@ -95,6 +95,28 @@ corp.default.pic-path=https://qgqy.qhdsafety.com/
|
|||
corp.default.back-end-path=https://qgqy.qhdsafety.com/file/
|
||||
http.file.url=https://qgqy.qhdsafety.com/file/
|
||||
|
||||
mq.csy.data.topic=csy_docking
|
||||
mq.csy.data.group=scheduled_tasks_csy_docking
|
||||
mq.csy.file.topic=csy_dockingPicture
|
||||
mq.csy.file.group=scheduled_tasks_csy_dockingPicture
|
||||
|
||||
mq.cmt.data.topic=cmt_docking
|
||||
mq.cmt.data.group=scheduled_tasks_cmt_docking
|
||||
mq.cmt.file.topic=cmt_dockingPicture
|
||||
mq.cmt.file.group=scheduled_tasks_cmt_dockingPicture
|
||||
|
||||
mq.czks.data.topic=czks_docking
|
||||
mq.czks.data.group=scheduled_tasks_czks_docking
|
||||
mq.czks.file.topic=czks_dockingPicture
|
||||
mq.czks.file.group=scheduled_tasks_czks_dockingPicture
|
||||
|
||||
mq.gwj.data.topic=czks_docking
|
||||
mq.gwj.file.topic=czks_dockingPicture
|
||||
baseimgpath =http://192.168.192.201:8991/file/
|
||||
|
||||
heBeiQinAnFile=https://file.zcloudchina.com/YTHFile
|
||||
biaoZhunShuJuKu=https://file.zcloudchina.com/
|
||||
dw.url=http://192.168.192.201:8888/qa-dingWei-gwj/
|
||||
|
||||
#<23>û<EFBFBD><C3BB><EFBFBD>ʶ
|
||||
# <20><><EFBFBD>ݿ<EFBFBD>ʯ
|
||||
|
|
|
@ -100,6 +100,7 @@ http.file.url=http://192.168.192.201:8991/file/
|
|||
|
||||
#河北秦安文件服务器前缀
|
||||
heBeiQinAnFile=https://file.zcloudchina.com/YTHFile
|
||||
biaoZhunShuJuKu=https://file.zcloudchina.com/
|
||||
|
||||
liteflow.rule-source=flow.xml
|
||||
liteflow.print-execution-log=false
|
||||
|
|
|
@ -2,11 +2,11 @@ spring.application.name=qa-prevention-gwj
|
|||
server.port=8091
|
||||
|
||||
#??
|
||||
#spring.profiles.active=local
|
||||
spring.profiles.active=local
|
||||
#<23><><EFBFBD><EFBFBD>31ʱʹ<CAB1><CAB9>
|
||||
#spring.profiles.active=dev
|
||||
#??
|
||||
spring.profiles.active=master
|
||||
#spring.profiles.active=master
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -32,7 +32,14 @@
|
|||
f.STATUS,
|
||||
f.BUS_TEXT_LIBRARY_ID,
|
||||
f.MIGRATION_FLAG,
|
||||
f.CORPINFO_ID
|
||||
f.CORPINFO_ID,
|
||||
f.CODE_NAME,
|
||||
f.PUBLISHES,
|
||||
f.TEXT_NAME,
|
||||
f.PUBLICATION_DATE,
|
||||
f.IMPLEMENTATION_DATE,
|
||||
f.TYPE_TWO,
|
||||
f.TYPE_TWO_NAME
|
||||
</sql>
|
||||
|
||||
<!-- 字段用于新增 -->
|
||||
|
@ -54,8 +61,15 @@
|
|||
ASSOCIATION,
|
||||
STATUS,
|
||||
BUS_TEXT_LIBRARY_ID,
|
||||
MIGRATION_FLAG,
|
||||
CORPINFO_ID,
|
||||
MIGRATION_FLAG
|
||||
CODE_NAME,
|
||||
PUBLISHES,
|
||||
TEXT_NAME,
|
||||
PUBLICATION_DATE,
|
||||
IMPLEMENTATION_DATE,
|
||||
TYPE_TWO,
|
||||
TYPE_TWO_NAME
|
||||
</sql>
|
||||
|
||||
<!-- 字段值 -->
|
||||
|
@ -77,8 +91,15 @@
|
|||
#{ASSOCIATION},
|
||||
#{STATUS},
|
||||
#{BUS_TEXT_LIBRARY_ID},
|
||||
#{MIGRATION_FLAG},
|
||||
#{CORPINFO_ID},
|
||||
#{MIGRATION_FLAG}
|
||||
#{CODE_NAME},
|
||||
#{PUBLISHES},
|
||||
#{TEXT_NAME},
|
||||
#{PUBLICATION_DATE},
|
||||
#{IMPLEMENTATION_DATE},
|
||||
#{TYPE_TWO},
|
||||
#{TYPE_TWO_NAME}
|
||||
</sql>
|
||||
|
||||
<!-- 新增-->
|
||||
|
@ -124,6 +145,13 @@
|
|||
STATUS = #{STATUS},
|
||||
CORPINFO_ID = #{CORPINFO_ID},
|
||||
MIGRATION_FLAG = #{MIGRATION_FLAG},
|
||||
CODE_NAME = #{CODE_NAME},
|
||||
PUBLISHES = #{PUBLISHES},
|
||||
TEXT_NAME = #{TEXT_NAME},
|
||||
PUBLICATION_DATE = #{PUBLICATION_DATE},
|
||||
IMPLEMENTATION_DATE = #{IMPLEMENTATION_DATE},
|
||||
TYPE_TWO = #{TYPE_TWO},
|
||||
TYPE_TWO_NAME = #{TYPE_TWO_NAME},
|
||||
BUS_TEXT_LIBRARY_ID = BUS_TEXT_LIBRARY_ID
|
||||
where
|
||||
BUS_TEXT_LIBRARY_ID = #{BUS_TEXT_LIBRARY_ID}
|
||||
|
@ -152,6 +180,9 @@
|
|||
<if test="pd.KEYWORDS != null and pd.KEYWORDS != ''"><!-- 关键词检索 -->
|
||||
and f.REMARKS LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%')
|
||||
</if>
|
||||
<if test="pd.KEYWORD != null and pd.KEYWORD != ''"><!-- 关键词检索 -->
|
||||
and (f.TYPE_NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORD}),'%') or f.TYPE_TWO_NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORD}),'%'))
|
||||
</if>
|
||||
<if test="pd.LABELS != null and pd.LABELS.length > 0">
|
||||
and exists(select 1 from bus_library_labels b where b.BUS_TEXT_LIBRARY_ID = f.BUS_TEXT_LIBRARY_ID and
|
||||
b.BUS_LABEL_FACTORY_ID in
|
||||
|
@ -184,6 +215,15 @@
|
|||
<if test="pd.LIBRARY_FLAG != null and pd.LIBRARY_FLAG != ''">
|
||||
and (f.MIGRATION_FLAG = '0' or f.MIGRATION_FLAG is null)
|
||||
</if>
|
||||
<if test="pd.TYPE != null and pd.TYPE != ''">
|
||||
and f.TYPE = #{pd.TYPE}
|
||||
</if>
|
||||
<if test="pd.TYPE_TWO != null and pd.TYPE_TWO != ''">
|
||||
and f.TYPE_TWO like CONCAT('%' #{pd.TYPE_TWO}, '%')
|
||||
</if>
|
||||
<if test="pd.TEXT_NAME != null and pd.TEXT_NAME != ''">
|
||||
and f.TEXT_NAME like CONCAT('%' #{pd.TEXT_NAME}, '%')
|
||||
</if>
|
||||
order by f.ISTOPTIME desc,f.CREATED_TIME desc
|
||||
</select>
|
||||
|
||||
|
|
|
@ -304,7 +304,7 @@
|
|||
vua.NAME OUTSOURCED_CREATOR_NAME,
|
||||
ifnull(vac.CORP_NAME,'秦港股份有限公司') CORP_NAME,
|
||||
p.`NAME` as UNITS_PIC_NAME,
|
||||
ifnull(h.HIDDEN_COUNT,0) HIDDEN_COUNT
|
||||
ifnull(h.HIDDEN_COUNT,0) + ifnull(hai.AI_COUNT ,0) HIDDEN_COUNT
|
||||
from
|
||||
<include refid="tableName"></include> f
|
||||
left join bus_units b using (UNITS_ID)
|
||||
|
@ -335,9 +335,24 @@
|
|||
) t group by t.OUTSOURCED_ID,t.CREATOR
|
||||
) uncheck on uncheck.OUTSOURCED_ID = f.OUTSOURCED_ID and uncheck.CREATOR = #{pd.UserId}
|
||||
</if>
|
||||
left join ( SELECT t.OUTSOURCED_ID, COUNT( t.HIDDEN_ID ) HIDDEN_COUNT, t.SOURCE SOURCE, t.CREATOR CREATOR
|
||||
FROM
|
||||
( SELECT IFNULL( k.OUTSOURCED_ID, h.FOREIGN_ID ) OUTSOURCED_ID, h.* FROM `qa-gwj-prevention`.bus_keyproject_hidden h LEFT JOIN `qa-gwj-prevention`.bus_keyprojectcheck k ON h.FOREIGN_ID = k.KEYPROJECTCHECK_ID and h.ISDELETE = '0') t GROUP BY t.OUTSOURCED_ID,t.CREATOR ) h on h.OUTSOURCED_ID = f.OUTSOURCED_ID
|
||||
left join (
|
||||
SELECT t.OUTSOURCED_ID, COUNT( t.HIDDEN_ID ) HIDDEN_COUNT, t.SOURCE SOURCE, t.CREATOR CREATOR
|
||||
FROM
|
||||
(
|
||||
SELECT IFNULL( k.OUTSOURCED_ID, h.FOREIGN_ID ) OUTSOURCED_ID, h.*
|
||||
FROM `qa-gwj-prevention`.bus_keyproject_hidden h
|
||||
LEFT JOIN `qa-gwj-prevention`.bus_keyprojectcheck k ON h.FOREIGN_ID = k.KEYPROJECTCHECK_ID and h.ISDELETE = '0'
|
||||
) t
|
||||
GROUP BY t.OUTSOURCED_ID,t.CREATOR
|
||||
) h on h.OUTSOURCED_ID = f.OUTSOURCED_ID
|
||||
left join (
|
||||
select vm.OUTSOURCED_ID ,COUNT(1) AI_COUNT
|
||||
from `qa-gwj-regulatory`.bus_videomanager vm
|
||||
left join `qa-gwj-regulatory`.bus_aiwarning ai on ai.VIDEOMANAGER_ID = vm.VIDEOMANAGER_ID and vm.ISDELETE = '0'
|
||||
left join `qa-gwj-regulatory`.bus_aiwarning_hiddens ah on ai.AIWARNING_ID = ah.AIWARNING_ID
|
||||
left join `qa-gwj-prevention`.bus_keyproject_hidden h on ah.HIDDEN_ID = h.HIDDEN_ID
|
||||
where h.ISDELETE = '0' and h.SOURCE = '1'
|
||||
) hai on hai.OUTSOURCED_ID = f.OUTSOURCED_ID
|
||||
where f.ISDELETE = '0'
|
||||
<if test="pd.CORPINFO_ID != null and pd.CORPINFO_ID != ''"><!-- 关键词检索 -->
|
||||
and
|
||||
|
|
Loading…
Reference in New Issue