合并分支 'master' 到 'dev_third_stage'
Master 查看合并请求 laws-nio/laws-weilai!93
This commit is contained in:
@@ -384,4 +384,37 @@ ALTER TABLE `laws_technology_evaluation_result`
|
|||||||
-- 用户表 删除索引 2022-07-14 已同步
|
-- 用户表 删除索引 2022-07-14 已同步
|
||||||
ALTER TABLE `laws_weilai`.`sys_user`
|
ALTER TABLE `laws_weilai`.`sys_user`
|
||||||
DROP INDEX `uniq_sys_user_phone`,
|
DROP INDEX `uniq_sys_user_phone`,
|
||||||
DROP INDEX `uniq_sys_user_email`;
|
DROP INDEX `uniq_sys_user_email`;
|
||||||
|
|
||||||
|
-- 参数项清单 修改字段长度 2022-07-17
|
||||||
|
ALTER TABLE `laws_weilai`.`params_info`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `is_must`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `duty_territory`;
|
||||||
|
|
||||||
|
ALTER TABLE `laws_weilai`.`cert_category_params_info`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `params_number`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `params_name`;
|
||||||
|
|
||||||
|
ALTER TABLE `laws_weilai`.`params_info_publish`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `is_must`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `duty_territory`;
|
||||||
|
|
||||||
|
ALTER TABLE `laws_weilai`.`cert_category_params_info_publish`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `params_number`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `params_name`;
|
||||||
|
|
||||||
|
ALTER TABLE `laws_weilai`.`params_collect_manifest`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `is_must`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `duty_territory`;
|
||||||
|
|
||||||
|
ALTER TABLE `laws_weilai`.`params_collect_manifest_history`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `is_must`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `params_batch`;
|
||||||
|
|
||||||
|
ALTER TABLE `laws_weilai`.`params_report_detail`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `is_must`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `duty_territory`;
|
||||||
|
|
||||||
|
ALTER TABLE `laws_weilai`.`report_cert_category_params_info`
|
||||||
|
MODIFY COLUMN `params_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数名称' AFTER `params_number`,
|
||||||
|
MODIFY COLUMN `description` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '参数说明' AFTER `params_name`;
|
||||||
@@ -45,3 +45,11 @@ ALTER TABLE `laws_weilai`.`sys_announcement`
|
|||||||
INSERT INTO `sys_config` ( `id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `config`, `config_name` )
|
INSERT INTO `sys_config` ( `id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `config`, `config_name` )
|
||||||
VALUES
|
VALUES
|
||||||
( '3', 'admin', '2022-07-09 18:38:23', 'admin', '2022-07-09 18:38:28', 'A01', 'http://localhost:8080', 'domianPreviewURL' );
|
( '3', 'admin', '2022-07-09 18:38:23', 'admin', '2022-07-09 18:38:28', 'A01', 'http://localhost:8080', 'domianPreviewURL' );
|
||||||
|
|
||||||
|
-- 消息表添加发起人字段 已同步正式环境
|
||||||
|
ALTER TABLE `sys_announcement`
|
||||||
|
ADD COLUMN `initiator` varchar(255) NULL COMMENT '发起人' AFTER `document_id`;
|
||||||
|
|
||||||
|
-- 2022-07-05 修改字段类型 生产环境已同步
|
||||||
|
ALTER TABLE `project_laws_inventory_log`
|
||||||
|
MODIFY COLUMN `log_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT 'log内容' AFTER `project_library_id`;
|
||||||
|
|||||||
+2
-1
@@ -17,10 +17,11 @@ public enum MessageTypeEnum {
|
|||||||
REGULATION_TASK_CONFIRMATION_NOTIFICATION("Regulation Task Confirmation Notification", "15"), // 任务确认通知
|
REGULATION_TASK_CONFIRMATION_NOTIFICATION("Regulation Task Confirmation Notification", "15"), // 任务确认通知
|
||||||
DESIGN_COMPLIANCE_TASK("Design Compliance Task", "9"), // 设计符合性任务
|
DESIGN_COMPLIANCE_TASK("Design Compliance Task", "9"), // 设计符合性任务
|
||||||
PRE_HOMO_TASK("Pre-Homo Task", "10"), // Pre-Homo任务
|
PRE_HOMO_TASK("Pre-Homo Task", "10"), // Pre-Homo任务
|
||||||
VALIDATION_TASK("Validation Task", "11"), // 验证符合性任务
|
VALIDATION_TASK("Validation Compliance Task", "11"), // 验证符合性任务
|
||||||
DESIGN_COMPLIANCE_NOTIFICATION("Design Compliance Notification", "12"), // 设计符合性通知
|
DESIGN_COMPLIANCE_NOTIFICATION("Design Compliance Notification", "12"), // 设计符合性通知
|
||||||
PRE_HOMO_NOTIFICATION("Pre-Homo Notification", "13"), // Pre-Homo通知
|
PRE_HOMO_NOTIFICATION("Pre-Homo Notification", "13"), // Pre-Homo通知
|
||||||
VALIDATION_COMPLIANCE_NOTIFICATION("Validation Compliance Notification", "14"), // 验证符合性通知
|
VALIDATION_COMPLIANCE_NOTIFICATION("Validation Compliance Notification", "14"), // 验证符合性通知
|
||||||
|
SYSTEMATIC_NOTIFICATION("Systematic Notification", "15"), // 系统通知
|
||||||
;
|
;
|
||||||
|
|
||||||
String name;
|
String name;
|
||||||
|
|||||||
+23
-2
@@ -380,7 +380,7 @@ public class JeroElasticsearchTemplate {
|
|||||||
|
|
||||||
log.info("url:" + url + " ,search: " + queryObject.toJSONString());
|
log.info("url:" + url + " ,search: " + queryObject.toJSONString());
|
||||||
JSONObject res = RestUtil.post(url, queryObject);
|
JSONObject res = RestUtil.post(url, queryObject);
|
||||||
log.info("url:" + url + " ,return res: \n" + res.toJSONString());
|
// log.info("url:" + url + " ,return res: \n" + res.toJSONString());
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
@@ -393,7 +393,7 @@ public class JeroElasticsearchTemplate {
|
|||||||
|
|
||||||
log.info("url:" + url + " ,search: " + queryObject.toJSONString());
|
log.info("url:" + url + " ,search: " + queryObject.toJSONString());
|
||||||
JSONObject res = RestUtil.post(url,variables, queryObject);
|
JSONObject res = RestUtil.post(url,variables, queryObject);
|
||||||
log.info("url:" + url + " ,return res: \n" + res.toJSONString());
|
// log.info("url:" + url + " ,return res: \n" + res.toJSONString());
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -447,6 +447,27 @@ public class JeroElasticsearchTemplate {
|
|||||||
return json;
|
return json;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 无排序
|
||||||
|
* @param _source
|
||||||
|
* @param query
|
||||||
|
* @param highlight
|
||||||
|
* @param from
|
||||||
|
* @param size
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public JSONObject buildQuery(List<String> _source, JSONObject query,Map<String, Object> highlight, int from, int size) {
|
||||||
|
JSONObject json = new JSONObject();
|
||||||
|
if (_source != null) {
|
||||||
|
json.put("_source", _source);
|
||||||
|
}
|
||||||
|
json.put("highlight", highlight);
|
||||||
|
json.put("query", query);
|
||||||
|
json.put("from", from * size);
|
||||||
|
json.put("size", size);
|
||||||
|
return json;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return { "bool" : { "must": must, "must_not": mustNot, "should": should } }
|
* @return { "bool" : { "must": must, "must_not": mustNot, "should": should } }
|
||||||
*/
|
*/
|
||||||
|
|||||||
+4
-4
@@ -1172,7 +1172,7 @@ public class ParamsInfoEOServiceImpl extends ServiceImpl<ParamsInfoEOMapper, Par
|
|||||||
|
|
||||||
// 参数名称
|
// 参数名称
|
||||||
String paramsName = dto.getParamsName();
|
String paramsName = dto.getParamsName();
|
||||||
resultMap = validateMustAndLength(paramsName, "参数名称", "Params Name", IsMustEnum.YES.getValue(), "30", false, cut);
|
resultMap = validateMustAndLength(paramsName, "参数名称", "Params Name", IsMustEnum.YES.getValue(), "100", false, cut);
|
||||||
errorMsg += (String)resultMap.get("errorMsg");
|
errorMsg += (String)resultMap.get("errorMsg");
|
||||||
countError += (int)resultMap.get("countError");
|
countError += (int)resultMap.get("countError");
|
||||||
|
|
||||||
@@ -1211,7 +1211,7 @@ public class ParamsInfoEOServiceImpl extends ServiceImpl<ParamsInfoEOMapper, Par
|
|||||||
|
|
||||||
// 参数说明
|
// 参数说明
|
||||||
String description = dto.getDescription();
|
String description = dto.getDescription();
|
||||||
resultMap = validateMustAndLength(description,"参数说明", "Description", IsMustEnum.NO.getValue(),"1000",false,cut);
|
resultMap = validateMustAndLength(description,"参数说明", "Description", IsMustEnum.NO.getValue(),"2000",false,cut);
|
||||||
errorMsg += (String)resultMap.get("errorMsg");
|
errorMsg += (String)resultMap.get("errorMsg");
|
||||||
countError += (int)resultMap.get("countError");
|
countError += (int)resultMap.get("countError");
|
||||||
|
|
||||||
@@ -1432,12 +1432,12 @@ public class ParamsInfoEOServiceImpl extends ServiceImpl<ParamsInfoEOMapper, Par
|
|||||||
}
|
}
|
||||||
// 参数名称
|
// 参数名称
|
||||||
String paramsName = ccDto.getParamsName();
|
String paramsName = ccDto.getParamsName();
|
||||||
resultMap = validateMustAndLength(paramsName, "参数名称", "Params Name", IsMustEnum.YES.getValue(),"30", false, cut);
|
resultMap = validateMustAndLength(paramsName, "参数名称", "Params Name", IsMustEnum.YES.getValue(),"100", false, cut);
|
||||||
errorMsg += (String)resultMap.get("errorMsg");
|
errorMsg += (String)resultMap.get("errorMsg");
|
||||||
countError += (int)resultMap.get("countError");
|
countError += (int)resultMap.get("countError");
|
||||||
// 参数说明
|
// 参数说明
|
||||||
String description = ccDto.getDescription();
|
String description = ccDto.getDescription();
|
||||||
resultMap = validateMustAndLength(description, "参数说明", "Description", IsMustEnum.NO.getValue(),"1000", false, cut);
|
resultMap = validateMustAndLength(description, "参数说明", "Description", IsMustEnum.NO.getValue(),"2000", false, cut);
|
||||||
errorMsg += (String)resultMap.get("errorMsg");
|
errorMsg += (String)resultMap.get("errorMsg");
|
||||||
countError += (int)resultMap.get("countError");
|
countError += (int)resultMap.get("countError");
|
||||||
|
|
||||||
|
|||||||
+4
@@ -153,4 +153,8 @@ public class SysAnnouncement implements Serializable {
|
|||||||
* 文档id
|
* 文档id
|
||||||
*/
|
*/
|
||||||
private java.lang.String documentId;
|
private java.lang.String documentId;
|
||||||
|
/**
|
||||||
|
* 发起人
|
||||||
|
*/
|
||||||
|
private java.lang.String initiator;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
@@ -27,6 +27,7 @@
|
|||||||
<result column="open_type" property="openType" jdbcType="VARCHAR"/>
|
<result column="open_type" property="openType" jdbcType="VARCHAR"/>
|
||||||
<result column="open_page" property="openPage" jdbcType="VARCHAR"/>
|
<result column="open_page" property="openPage" jdbcType="VARCHAR"/>
|
||||||
<result column="document_id" property="documentId" jdbcType="VARCHAR"/>
|
<result column="document_id" property="documentId" jdbcType="VARCHAR"/>
|
||||||
|
<result column="initiator" property="initiator" jdbcType="VARCHAR"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+3
-1
@@ -17,6 +17,7 @@
|
|||||||
<result column="open_type" property="openType" jdbcType="VARCHAR"/>
|
<result column="open_type" property="openType" jdbcType="VARCHAR"/>
|
||||||
<result column="open_page" property="openPage" jdbcType="VARCHAR"/>
|
<result column="open_page" property="openPage" jdbcType="VARCHAR"/>
|
||||||
<result column="document_id" property="documentId" jdbcType="VARCHAR"/>
|
<result column="document_id" property="documentId" jdbcType="VARCHAR"/>
|
||||||
|
<result column="initiator" property="initiator" jdbcType="VARCHAR"/>
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
<select id="queryByUserId" parameterType="String" resultType="String">
|
<select id="queryByUserId" parameterType="String" resultType="String">
|
||||||
@@ -41,7 +42,8 @@
|
|||||||
sa.open_type as open_type,
|
sa.open_type as open_type,
|
||||||
sa.open_page as open_page,
|
sa.open_page as open_page,
|
||||||
sa.msg_abstract,
|
sa.msg_abstract,
|
||||||
sa.document_id as document_id
|
sa.document_id as document_id,
|
||||||
|
sa.initiator as initiator
|
||||||
from sys_announcement_send sas
|
from sys_announcement_send sas
|
||||||
left join sys_announcement sa ON sas.annt_id = sa.id
|
left join sys_announcement sa ON sas.annt_id = sa.id
|
||||||
where sa.del_flag = '0'
|
where sa.del_flag = '0'
|
||||||
|
|||||||
+4
@@ -82,5 +82,9 @@ public class AnnouncementSendModel implements Serializable {
|
|||||||
* 文档id
|
* 文档id
|
||||||
*/
|
*/
|
||||||
private java.lang.String documentId;
|
private java.lang.String documentId;
|
||||||
|
/**
|
||||||
|
* 发起人
|
||||||
|
*/
|
||||||
|
private java.lang.String initiator;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+80
-22
@@ -42,6 +42,7 @@ import com.jero.modules.domain.entity.DomainUserRel;
|
|||||||
import com.jero.modules.domain.service.DomainUserRelService;
|
import com.jero.modules.domain.service.DomainUserRelService;
|
||||||
import com.jero.modules.domain.service.impl.DomainManageServiceImpl;
|
import com.jero.modules.domain.service.impl.DomainManageServiceImpl;
|
||||||
import com.jero.modules.feishu.service.IFeishuService;
|
import com.jero.modules.feishu.service.IFeishuService;
|
||||||
|
import com.jero.modules.feishu.vo.FeishuMsgVo;
|
||||||
import com.jero.modules.home.entity.HomeDocumentDynamicEO;
|
import com.jero.modules.home.entity.HomeDocumentDynamicEO;
|
||||||
import com.jero.modules.home.service.IHomeDocumentDynamicEOService;
|
import com.jero.modules.home.service.IHomeDocumentDynamicEOService;
|
||||||
import com.jero.modules.log.entity.BussLogEO;
|
import com.jero.modules.log.entity.BussLogEO;
|
||||||
@@ -127,6 +128,7 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
import java.util.function.Predicate;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
||||||
@@ -309,7 +311,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
String contentInfo =content;
|
String contentInfo =content;
|
||||||
String title = content;
|
String title = content;
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.READ.getValue());
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.READ.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket(StringUtils.join(serialNumberList, ","), contentInfo);
|
sendWebsocket(StringUtils.join(serialNumberList, ","), contentInfo);
|
||||||
}
|
}
|
||||||
@@ -1000,7 +1002,6 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
// 取不到数据,直接返回空结果
|
// 取不到数据,直接返回空结果
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
//查询所有
|
//查询所有
|
||||||
List<Map<String, Object>> mapList = bussDocumentLibraryEOMapper.selectMapsAll(null);
|
List<Map<String, Object>> mapList = bussDocumentLibraryEOMapper.selectMapsAll(null);
|
||||||
|
|
||||||
@@ -1058,6 +1059,29 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
Map<String, Object> mapTemp = new HashMap<>();
|
Map<String, Object> mapTemp = new HashMap<>();
|
||||||
List<Map<String, Object>> resultTemp = new ArrayList<>();
|
List<Map<String, Object>> resultTemp = new ArrayList<>();
|
||||||
List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> onlCgformAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList());
|
List<OnlCgformField> fieldListTemp = fieldList.stream().filter(e -> onlCgformAreaTemp.getId().equals(e.getShowArea())).collect(Collectors.toList());
|
||||||
|
if(CutEnum.CN.getValue().equals(cut)){
|
||||||
|
fieldListTemp.removeIf(new Predicate<OnlCgformField>() {
|
||||||
|
@Override
|
||||||
|
public boolean test(OnlCgformField onlCgformField) {
|
||||||
|
return onlCgformField.getDbFieldName().equals("title_en");//
|
||||||
|
}
|
||||||
|
});
|
||||||
|
List<OnlCgformField> collect = fieldListTemp.stream().filter(e -> "title".equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||||
|
if(collect.size() != 0){
|
||||||
|
collect.get(0).setDbFieldTxt("标题");
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
fieldListTemp.removeIf(new Predicate<OnlCgformField>() {
|
||||||
|
@Override
|
||||||
|
public boolean test(OnlCgformField onlCgformField) {
|
||||||
|
return onlCgformField.getDbFieldName().equals("title");//
|
||||||
|
}
|
||||||
|
});
|
||||||
|
List<OnlCgformField> collect = fieldListTemp.stream().filter(e -> "title_en".equals(e.getDbFieldName())).collect(Collectors.toList());
|
||||||
|
if(collect.size() != 0){
|
||||||
|
collect.get(0).setDbFieldEnName("Title");
|
||||||
|
}
|
||||||
|
}
|
||||||
for (OnlCgformField onlCgformField : fieldListTemp) {
|
for (OnlCgformField onlCgformField : fieldListTemp) {
|
||||||
//字段
|
//字段
|
||||||
String dbFieldName = onlCgformField.getDbFieldName();
|
String dbFieldName = onlCgformField.getDbFieldName();
|
||||||
@@ -1570,13 +1594,13 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
String serialNumber = StringUtils.valueOf(map.get("serial_number"));
|
String serialNumber = StringUtils.valueOf(map.get("serial_number"));
|
||||||
//String serialNumber = StringUtils.valueOf(map.get("serial_number"));
|
//String serialNumber = StringUtils.valueOf(map.get("serial_number"));
|
||||||
//编码验重
|
//编码验重
|
||||||
List<BussDocumentLibraryEO> list = this.list();
|
// List<BussDocumentLibraryEO> list = this.list();
|
||||||
if(list.size() != 0){
|
// if(list.size() != 0){
|
||||||
List<String> serialNumberList = list.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
|
// List<String> serialNumberList = list.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
|
||||||
if(serialNumberList.contains(serialNumber)){
|
// if(serialNumberList.contains(serialNumber)){
|
||||||
throw new JeroBootException("编号已存在不能重复添加");
|
// throw new JeroBootException("编号已存在不能重复添加");
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
|
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
|
||||||
String issueTime = (String) (map.get("issue_time"));
|
String issueTime = (String) (map.get("issue_time"));
|
||||||
@@ -2143,7 +2167,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
+ href +" has been updated.";
|
+ href +" has been updated.";
|
||||||
String msgTitle = "The " + technologyTerritoryName + " technical field you subscribed to has been updated";
|
String msgTitle = "The " + technologyTerritoryName + " technical field you subscribed to has been updated";
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue());
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket(idTemp, contentInfo);
|
sendWebsocket(idTemp, contentInfo);
|
||||||
//飞书
|
//飞书
|
||||||
@@ -3143,9 +3167,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
sbStr = sbStr.replaceAll("<text class='highlight-class'>", "").replaceAll("</text>", "");
|
sbStr = sbStr.replaceAll("<text class='highlight-class'>", "").replaceAll("</text>", "");
|
||||||
//您订阅的XXX已被修改
|
//您订阅的XXX已被修改
|
||||||
String contentInfo = "In the " + technologyTerritoryNameEn + " technical field you subscribed to," +sysUser.getUsername()+" changed the "+ href + " " + sbStr.toString();
|
String contentInfo = "In the " + technologyTerritoryNameEn + " technical field you subscribed to," +sysUser.getUsername()+" changed the "+ href + " " + sbStr.toString();
|
||||||
String msgTitle = "The" + technologyTerritoryNameEn + "technical field you subscribed to has been updated";
|
String msgTitle = "The " + technologyTerritoryNameEn + " technical field you subscribed to has been updated";
|
||||||
// 封装消息的实体类
|
// 封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userList, msgTitle, contentInfoFei, contentInfo,MessageTypeEnum.READ.getValue());
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userList, msgTitle, contentInfoFei, contentInfo,MessageTypeEnum.READ.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket((String) map.get("id"), contentInfo);
|
sendWebsocket((String) map.get("id"), contentInfo);
|
||||||
}
|
}
|
||||||
@@ -3165,9 +3189,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
//您订阅的XXX已被修改
|
//您订阅的XXX已被修改
|
||||||
content = "In the "+category + " " + serialNumber+" you subscribed to, has been modified,Please pay attention to check.";
|
content = "In the "+category + " " + serialNumber+" you subscribed to, has been modified,Please pay attention to check.";
|
||||||
String contentInfo = "In the "+category + " " + href+" you subscribed to, "+sysUser.getUsername()+" changed the "+ href + " " + sbStr.toString();
|
String contentInfo = "In the "+category + " " + href+" you subscribed to, "+sysUser.getUsername()+" changed the "+ href + " " + sbStr.toString();
|
||||||
String msgTitle = serialNumber + "you subsribed to has been updated";
|
String msgTitle = serialNumber + " you subsribed to has been updated";
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdListUpdate, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue());
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdListUpdate, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket((String) map.get("id"), contentInfo);
|
sendWebsocket((String) map.get("id"), contentInfo);
|
||||||
}
|
}
|
||||||
@@ -3248,7 +3272,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
String contentInfo = "New numbering implemented, please note update status of alternate numbering " + sbStr;
|
String contentInfo = "New numbering implemented, please note update status of alternate numbering " + sbStr;
|
||||||
String msgTitle = contentInfo;
|
String msgTitle = contentInfo;
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue());
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket(StringUtils.join(serialNumberListTemp, ","), contentInfo);
|
sendWebsocket(StringUtils.join(serialNumberListTemp, ","), contentInfo);
|
||||||
//飞书
|
//飞书
|
||||||
@@ -3271,8 +3295,14 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
|
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public SysAnnouncement getSysAnnouncement(List<String> userIdList, String title, String content, String contentInfo,String messageType) {
|
public SysAnnouncement getSysAnnouncement(List<String> userIdList,
|
||||||
|
String title,
|
||||||
|
String content,
|
||||||
|
String contentInfo,
|
||||||
|
String messageType,
|
||||||
|
String initiator) {
|
||||||
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
||||||
|
sysAnnouncement.setInitiator(initiator);
|
||||||
sysAnnouncement.setDelFlag("0");
|
sysAnnouncement.setDelFlag("0");
|
||||||
sysAnnouncement.setSendStatus("0");
|
sysAnnouncement.setSendStatus("0");
|
||||||
sysAnnouncement.setSendTime(new Date());
|
sysAnnouncement.setSendTime(new Date());
|
||||||
@@ -4684,10 +4714,6 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String pullMessage(String departIds, String userIds, String documentIds) {
|
public String pullMessage(String departIds, String userIds, String documentIds) {
|
||||||
// departIds = "c6d7cb4deeac411cb3384b1b31278596";
|
|
||||||
// if(StringUtils.isBlank(documentIds)){
|
|
||||||
// return "请选择文档";
|
|
||||||
// }
|
|
||||||
Set<String> allDepartIds = new HashSet<>();
|
Set<String> allDepartIds = new HashSet<>();
|
||||||
//查询当前部门下所有部门
|
//查询当前部门下所有部门
|
||||||
if (StringUtils.isNotEmpty(departIds)) {
|
if (StringUtils.isNotEmpty(departIds)) {
|
||||||
@@ -4746,9 +4772,9 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
String content = sysUser.getUsername() + " pushed " + StringUtils.join(serialNumberList, ",") + " to you. Please be reminded to check it out.";
|
String content = sysUser.getUsername() + " pushed " + StringUtils.join(serialNumberList, ",") + " to you. Please be reminded to check it out.";
|
||||||
String contentInfo = sysUser.getUsername() + " pushed " + StringUtils.join(hrefList, ",") + " to you. Please be reminded to check it out.";
|
String contentInfo = sysUser.getUsername() + " pushed " + StringUtils.join(hrefList, ",") + " to you. Please be reminded to check it out.";
|
||||||
String title = StringUtils.join(serialNumberList, ",") + "has been pushed to you, please check";
|
String title = StringUtils.join(serialNumberList, ",") + " has been pushed to you, please check";
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.PUSH.getValue());
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.PUSH.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket(StringUtils.join(thirdIdList, ","), contentInfo);
|
sendWebsocket(StringUtils.join(thirdIdList, ","), contentInfo);
|
||||||
//飞书
|
//飞书
|
||||||
@@ -4763,6 +4789,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
String contentTemp = sysUser.getUsername() + " pushed " + StringUtils.join(list, ",") + " to you. Please be reminded to check it out.";
|
String contentTemp = sysUser.getUsername() + " pushed " + StringUtils.join(list, ",") + " to you. Please be reminded to check it out.";
|
||||||
|
// FeishuMsgVo feishuMsgVo = getFeishuMsgVo(MessageTypeEnum.PUSH.getName(),null, contentTemp, encode);
|
||||||
|
// iFeishuService.sendCardMsg(thirdIdList.toArray(new String[]{}), feishuMsgVo);
|
||||||
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), contentTemp, MessageTypeEnum.PUSH.getName(), encode);
|
iFeishuService.batchSendMessage(thirdIdList.toArray(new String[]{}), contentTemp, MessageTypeEnum.PUSH.getName(), encode);
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
@@ -4772,6 +4800,15 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
return "推送成功";
|
return "推送成功";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private FeishuMsgVo getFeishuMsgVo(String title, String taskType, String content,String url) {
|
||||||
|
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
|
||||||
|
feishuMsgVo.setTitle(title);
|
||||||
|
feishuMsgVo.setContent(content);
|
||||||
|
feishuMsgVo.setTaskType(taskType);
|
||||||
|
feishuMsgVo.setUrl(url);
|
||||||
|
return feishuMsgVo;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 属性字典处理中文
|
* 属性字典处理中文
|
||||||
@@ -5439,6 +5476,27 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
|||||||
FileUnZip.deleteDir(saveDirectory);
|
FileUnZip.deleteDir(saveDirectory);
|
||||||
throw new JeroBootException(html);
|
throw new JeroBootException(html);
|
||||||
} else {
|
} else {
|
||||||
|
//验证重复的标准号
|
||||||
|
List<String> serialNumberList = new ArrayList<>();
|
||||||
|
if (mapList.size() != 0) {
|
||||||
|
for (Map<String, Object> map : mapList) {
|
||||||
|
serialNumberList.add(StringUtils.valueOf(map.get("serial_number")));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
List<BussDocumentLibraryEO> list = this.list();
|
||||||
|
if(list.size() != 0){
|
||||||
|
List<BussDocumentLibraryEO> serialNumberListTemp = list.stream()
|
||||||
|
.filter(e -> serialNumberList.contains(e.getSerialNumber())).collect(Collectors.toList());
|
||||||
|
if(serialNumberListTemp.size() != 0){
|
||||||
|
List<String> collect = serialNumberListTemp.stream().map(BussDocumentLibraryEO::getSerialNumber).distinct().collect(Collectors.toList());
|
||||||
|
if(CutEnum.CN.getValue().equals(cut)){
|
||||||
|
throw new JeroBootException(StringUtils.join(collect,",")+" 编号已存在不能重复添加");
|
||||||
|
}else{
|
||||||
|
throw new JeroBootException(StringUtils.join(collect,",")+" already exists and cannot be added again");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (mapList.size() != 0) {
|
if (mapList.size() != 0) {
|
||||||
for (Map<String, Object> map : mapList) {
|
for (Map<String, Object> map : mapList) {
|
||||||
this.addInfo(map);
|
this.addInfo(map);
|
||||||
|
|||||||
+2
-2
@@ -1150,7 +1150,7 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
|
|||||||
|
|
||||||
msgTitle = "The " + baseName + " virtual list you subscribed to has been updated";
|
msgTitle = "The " + baseName + " virtual list you subscribed to has been updated";
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue());
|
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
bussDocumentLibraryEOService.sendWebsocket(idTemp, contentInfo);
|
bussDocumentLibraryEOService.sendWebsocket(idTemp, contentInfo);
|
||||||
//飞书
|
//飞书
|
||||||
@@ -1164,7 +1164,7 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
|
|||||||
contentInfo = "Please note that the "+baseName+" virtual list you subscribed to has been withdrawn.";
|
contentInfo = "Please note that the "+baseName+" virtual list you subscribed to has been withdrawn.";
|
||||||
msgTitle = "The " + baseName + " virtual list you subscribed to has been withdrawn";
|
msgTitle = "The " + baseName + " virtual list you subscribed to has been withdrawn";
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue());
|
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, msgTitle, content, contentInfo,MessageTypeEnum.READ.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
bussDocumentLibraryEOService.sendWebsocket(idTemp, contentInfo);
|
bussDocumentLibraryEOService.sendWebsocket(idTemp, contentInfo);
|
||||||
//飞书
|
//飞书
|
||||||
|
|||||||
+7
-5
@@ -11,7 +11,9 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
@@ -80,11 +82,11 @@ public class NcrTrackController {
|
|||||||
* @param request
|
* @param request
|
||||||
* @param ncrTrackVO
|
* @param ncrTrackVO
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "/exportData")
|
@RequestMapping(value = "/exportData",method = RequestMethod.POST)
|
||||||
@RequiresPermissions("ncrTrack:exportData")
|
@RequiresPermissions("ncrTrack:exportData")
|
||||||
public void exportData(HttpServletResponse response,
|
public void exportData(HttpServletResponse response,
|
||||||
HttpServletRequest request,
|
HttpServletRequest request,
|
||||||
NcrTrackVO ncrTrackVO) {
|
@RequestBody NcrTrackVO ncrTrackVO) {
|
||||||
iNcrTrackService.exportData(response,request, ncrTrackVO);
|
iNcrTrackService.exportData(response,request, ncrTrackVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -93,11 +95,11 @@ public class NcrTrackController {
|
|||||||
* @param request
|
* @param request
|
||||||
* @param ncrTrackVO
|
* @param ncrTrackVO
|
||||||
*/
|
*/
|
||||||
@RequestMapping(value = "/exportDataInfo")
|
@RequestMapping(value = "/exportDataInfo",method = RequestMethod.POST)
|
||||||
@RequiresPermissions("ncrTrack:exportDataInfo")
|
@RequiresPermissions("ncrTrack:exportDataInfo")
|
||||||
public void exportDataInfo(HttpServletResponse response,
|
public void exportDataInfo(HttpServletResponse response,
|
||||||
HttpServletRequest request,
|
HttpServletRequest request,
|
||||||
NcrTrackVO ncrTrackVO) {
|
@RequestBody NcrTrackVO ncrTrackVO) {
|
||||||
iNcrTrackService.exportData(response,request, ncrTrackVO);
|
iNcrTrackService.exportData(response,request, ncrTrackVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+11
@@ -8,6 +8,8 @@ public enum MsgTypeEnum {
|
|||||||
TASK_AFFIRM_ISSUE_DRE_MSG("任务确认分配dre消息","taskAffirmIssueDreMsg"),
|
TASK_AFFIRM_ISSUE_DRE_MSG("任务确认分配dre消息","taskAffirmIssueDreMsg"),
|
||||||
TASK_AFFIRM_DRE_ACCEPTED("任务确认DRE通过消息","taskAffirmDreAccepted"),
|
TASK_AFFIRM_DRE_ACCEPTED("任务确认DRE通过消息","taskAffirmDreAccepted"),
|
||||||
TASK_AFFIRM_DRE_REJECTED("任务确认DRE退回消息","taskAffirmDreRejected"),
|
TASK_AFFIRM_DRE_REJECTED("任务确认DRE退回消息","taskAffirmDreRejected"),
|
||||||
|
TASK_AFFIRM_ACCEPTED_MSG("任务确认责任人通过消息","taskAffirmAcceptedMsg"),
|
||||||
|
TASK_AFFIRM_REJECTED_MSG("任务确认责任人拒绝消息","taskAffirmRejectedMsg"),
|
||||||
|
|
||||||
DESIGN_ISSUE_DRE_MSG("设计符合性确认分配dre消息","designIssueDreMsg"),
|
DESIGN_ISSUE_DRE_MSG("设计符合性确认分配dre消息","designIssueDreMsg"),
|
||||||
DESIGN_REMIND_MSG("设计符合性提醒办理","designRemindMsg"),
|
DESIGN_REMIND_MSG("设计符合性提醒办理","designRemindMsg"),
|
||||||
@@ -19,6 +21,15 @@ public enum MsgTypeEnum {
|
|||||||
DESIGN_RETURN_MSG("设计符合性发起人退回","designReturnMsg"),
|
DESIGN_RETURN_MSG("设计符合性发起人退回","designReturnMsg"),
|
||||||
PREHOMO_RETURN_MSG("prehomo发起人退回","prehomoReturnMsg"),
|
PREHOMO_RETURN_MSG("prehomo发起人退回","prehomoReturnMsg"),
|
||||||
VERIFY_RETURN_MSG("验证符合性发起人退回","verifyReturnMsg"),
|
VERIFY_RETURN_MSG("验证符合性发起人退回","verifyReturnMsg"),
|
||||||
|
DESIGN_START_MSG("设计符合性发起给责任人发送消息","designStartMsg"),
|
||||||
|
PREHOMO_START_MSG("prehomo发起给责任人发送消息","prehomoStartMsg"),
|
||||||
|
VERIFY_START_MSG("验证符合性发起给责任人发送消息","verifyStartMsg"),
|
||||||
|
DESIGN_CHARGE_PERSON_SUBMIT_MSG("设计符合性责任人提交给发起人发送消息","designChargePersonSubmitMsg"),
|
||||||
|
PREHOMO_CHARGE_PERSON_SUBMIT_MSG("prehomo责任人提交给发起人发送消息","prehomoChargePersonSubmitMsg"),
|
||||||
|
VERIFY_CHARGE_PERSON_SUBMIT_MSG("验证符合性责任人提交给发起人发送消息","verifyChargePersonSubmitMsg"),
|
||||||
|
DESIGN_INITIATOR_ACCEPTED_MSG("设计符合性发起人通过发送消息","designInitiatorAcceptedMsg"),
|
||||||
|
PREHOMO_INITIATOR_ACCEPTED_MSG("prehomo发起人通过发送消息","prehomoInitiatorAcceptedMsg"),
|
||||||
|
VERIFY_INITIATOR_ACCEPTED_MSG("验证符合性发起人通过发送消息","verifyInitiatorAcceptedMsg"),
|
||||||
;
|
;
|
||||||
|
|
||||||
String name;
|
String name;
|
||||||
|
|||||||
+2
-2
@@ -170,7 +170,7 @@ public class InventoryAffirmJob implements Job {
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN, threeDaysUserIdList, projectLibraryBase.getId(), sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN, threeDaysUserIdList, projectLibraryBase.getId(), sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
||||||
@@ -208,7 +208,7 @@ public class InventoryAffirmJob implements Job {
|
|||||||
sendMessageMap.put("hrefFeishu",hrefFeishu);
|
sendMessageMap.put("hrefFeishu",hrefFeishu);
|
||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN, currentDaysUserIdList, projectLibraryBase.getId(), sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN, currentDaysUserIdList, projectLibraryBase.getId(), sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -170,7 +170,7 @@ public class PrehomoJob implements Job {
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,threeDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.PRE_HOMO_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,threeDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.PRE_HOMO_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
||||||
@@ -207,7 +207,7 @@ public class PrehomoJob implements Job {
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,currentDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.PRE_HOMO_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,currentDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.PRE_HOMO_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -167,7 +167,7 @@ public class VerifyComplianceJob implements Job {
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,threeDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.VALIDATION_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,threeDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.VALIDATION_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
||||||
@@ -204,7 +204,7 @@ public class VerifyComplianceJob implements Job {
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,currentDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.VALIDATION_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,currentDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.VALIDATION_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -163,7 +163,7 @@ public class designComplianceJob implements Job {
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,threeDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.DESIGN_COMPLIANCE_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,threeDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.DESIGN_COMPLIANCE_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
if(CollectionUtils.isNotEmpty(currentDaysUserIdList)){
|
||||||
@@ -199,7 +199,7 @@ public class designComplianceJob implements Job {
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,currentDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.DESIGN_COMPLIANCE_TASK);
|
projectLawsInventoryEOService.sendMessage(msgTitle, msgContentEN,currentDaysUserIdList,projectLawsInventoryEO.getId(),sendMessageMap, feishuMsgVo, MessageTypeEnum.DESIGN_COMPLIANCE_TASK,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -78,7 +78,7 @@ public interface IProjectLawsInventoryEOService extends IService<ProjectLawsInve
|
|||||||
*/
|
*/
|
||||||
Result<?> updateStatusBatch(JSONObject json);
|
Result<?> updateStatusBatch(JSONObject json);
|
||||||
|
|
||||||
void sendMessage(String msgTitle, String msgContent, List<String> userIdList, String projectLibraryId, Map<String,Object> params, FeishuMsgVo feishuMsgVo, MessageTypeEnum messageType);
|
void sendMessage(String msgTitle, String msgContent, List<String> userIdList, String projectLibraryId, Map<String,Object> params, FeishuMsgVo feishuMsgVo, MessageTypeEnum messageType,String initiator);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 匹配相关人员
|
* 匹配相关人员
|
||||||
|
|||||||
+3
-6
@@ -241,12 +241,10 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
|
|||||||
|
|
||||||
|
|
||||||
List<NcrTrackVO> trackVOListTemp = new ArrayList<>();
|
List<NcrTrackVO> trackVOListTemp = new ArrayList<>();
|
||||||
String idJson = ncrTrackVO.getNcrTrackVOList();
|
List<NcrTrackVO> ncrTrackVOListTemp = ncrTrackVO.getNcrTrackVOList();
|
||||||
if(StringUtils.isNotBlank(idJson)){
|
|
||||||
List<NcrTrackVO> ncrTrackVOList = JSONObject.parseArray(idJson, NcrTrackVO.class);
|
|
||||||
//导出数据过滤(列表中选取多条进行导出的时候,用任务清单id和流程类型作为条件进行数据过滤)
|
//导出数据过滤(列表中选取多条进行导出的时候,用任务清单id和流程类型作为条件进行数据过滤)
|
||||||
if(ObjectUtils.allNotNull(ncrTrackVOList)){
|
if(ObjectUtils.allNotNull(ncrTrackVOListTemp)){
|
||||||
for (NcrTrackVO trackVO : ncrTrackVOList) {
|
for (NcrTrackVO trackVO : ncrTrackVOListTemp) {
|
||||||
List<NcrTrackVO> collect = trackVOList.stream()
|
List<NcrTrackVO> collect = trackVOList.stream()
|
||||||
.filter(e -> trackVO.getId().equals(e.getId()) && trackVO.getFlowType().equals(e.getFlowType()))
|
.filter(e -> trackVO.getId().equals(e.getId()) && trackVO.getFlowType().equals(e.getFlowType()))
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
@@ -255,7 +253,6 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if(trackVOListTemp.size() != 0){
|
if(trackVOListTemp.size() != 0){
|
||||||
return trackVOListTemp;
|
return trackVOListTemp;
|
||||||
|
|||||||
+196
-15
@@ -94,6 +94,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.mock.web.MockMultipartFile;
|
import org.springframework.mock.web.MockMultipartFile;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Propagation;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
@@ -119,6 +120,7 @@ import static com.jero.modules.document.service.impl.BussDocumentLibraryEOServic
|
|||||||
* @Version: V1.0
|
* @Version: V1.0
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
|
@Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class)
|
||||||
public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsInventoryEOMapper, ProjectLawsInventoryEO> implements IProjectLawsInventoryEOService {
|
public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsInventoryEOMapper, ProjectLawsInventoryEO> implements IProjectLawsInventoryEOService {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
@@ -1340,8 +1342,6 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
if(CollectionUtils.isNotEmpty(userIdList)){
|
if(CollectionUtils.isNotEmpty(userIdList)){
|
||||||
userIdList = userIdList.stream().distinct().collect(Collectors.toList());
|
userIdList = userIdList.stream().distinct().collect(Collectors.toList());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//消息内容
|
//消息内容
|
||||||
String msgContentEN = currentUser.getUsername() + " initiated the regulation list confirmation for "
|
String msgContentEN = currentUser.getUsername() + " initiated the regulation list confirmation for "
|
||||||
+ projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
+ projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
@@ -1377,7 +1377,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK);
|
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK,currentUser.getUsername());
|
||||||
}
|
}
|
||||||
|
|
||||||
result = "发起清单确认";
|
result = "发起清单确认";
|
||||||
@@ -1465,6 +1465,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
inventoryAffirmStatus = InventoryAffirmStatusEnum.REJECTED.getValue();
|
inventoryAffirmStatus = InventoryAffirmStatusEnum.REJECTED.getValue();
|
||||||
}*/
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SysUser studioUserInfo = this.sysUserMapper.selectOne(
|
||||||
|
new QueryWrapper<SysUser>().lambda().eq(SysUser::getId, projectLibraryBase.getStudioEngineer())
|
||||||
|
);
|
||||||
|
|
||||||
//只要有一个人拒绝,就改为拒绝。
|
//只要有一个人拒绝,就改为拒绝。
|
||||||
if(StringUtils.equals(operatorResult, OperatorResultEnum.REJECTED.getValue())){
|
if(StringUtils.equals(operatorResult, OperatorResultEnum.REJECTED.getValue())){
|
||||||
inventoryAffirmStatus = InventoryAffirmStatusEnum.REJECTED.getValue();
|
inventoryAffirmStatus = InventoryAffirmStatusEnum.REJECTED.getValue();
|
||||||
@@ -1513,7 +1518,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
//发送消息
|
//发送消息
|
||||||
List<String> userIdList = new ArrayList<>();
|
List<String> userIdList = new ArrayList<>();
|
||||||
userIdList.add(projectLibraryBase.getStudioEngineer());
|
userIdList.add(projectLibraryBase.getStudioEngineer());
|
||||||
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK);
|
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK,studioUserInfo.getUsername());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1554,7 +1559,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
//发送消息
|
//发送消息
|
||||||
List<String> userIdList = new ArrayList<>();
|
List<String> userIdList = new ArrayList<>();
|
||||||
userIdList.add(projectLibraryBase.getStudioEngineer());
|
userIdList.add(projectLibraryBase.getStudioEngineer());
|
||||||
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK);
|
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK,studioUserInfo.getUsername());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1604,7 +1609,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
//发送消息
|
//发送消息
|
||||||
List<String> userIdList = new ArrayList<>();
|
List<String> userIdList = new ArrayList<>();
|
||||||
userIdList.add(projectLibraryBase.getStudioEngineer());
|
userIdList.add(projectLibraryBase.getStudioEngineer());
|
||||||
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_NOTIFICATION);
|
sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_NOTIFICATION,studioUserInfo.getUsername());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1627,7 +1632,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
* @param projectLibraryId
|
* @param projectLibraryId
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void sendMessage(String msgTitle, String msgContent, List<String> userIdList,String projectLibraryId,Map<String,Object> sendMessageMap, FeishuMsgVo feishuMsgVo, MessageTypeEnum messageType){
|
public void sendMessage(String msgTitle, String msgContent, List<String> userIdList,String projectLibraryId,Map<String,Object> sendMessageMap, FeishuMsgVo feishuMsgVo, MessageTypeEnum messageType,String initiator){
|
||||||
String idTemp = projectLibraryId;
|
String idTemp = projectLibraryId;
|
||||||
|
|
||||||
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
|
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
|
||||||
@@ -1641,7 +1646,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
String contentInfo = (String) sendMessageMap.get("contentInfo");
|
String contentInfo = (String) sendMessageMap.get("contentInfo");
|
||||||
|
|
||||||
//系统消息
|
//系统消息
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, msgContent, contentInfo, messageType);
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, msgContent, contentInfo, messageType,initiator);
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket(idTemp, idTemp);
|
sendWebsocket(idTemp, idTemp);
|
||||||
|
|
||||||
@@ -1661,8 +1666,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
private SysAnnouncement getSysAnnouncement(List<String> userIdList, String title, String content, String contentInfo, MessageTypeEnum messageType) {
|
private SysAnnouncement getSysAnnouncement(List<String> userIdList, String title, String content, String contentInfo, MessageTypeEnum messageType,String initiator) {
|
||||||
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
||||||
|
sysAnnouncement.setInitiator(initiator);
|
||||||
sysAnnouncement.setDelFlag("0");
|
sysAnnouncement.setDelFlag("0");
|
||||||
sysAnnouncement.setSendStatus("0");
|
sysAnnouncement.setSendStatus("0");
|
||||||
sysAnnouncement.setSendTime(new Date());
|
sysAnnouncement.setSendTime(new Date());
|
||||||
@@ -1723,8 +1729,16 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
//法规清单的责任领域
|
//法规清单的责任领域
|
||||||
String dutyTerritory = projectLawsInventoryEO.getDutyTerritory();
|
String dutyTerritory = projectLawsInventoryEO.getDutyTerritory();
|
||||||
if(StringUtils.isNotBlank(dutyTerritory)){
|
if(StringUtils.isNotBlank(dutyTerritory)){
|
||||||
List<ProjectRelatedPersonnel> projectRelatedPersonnelList = projectRelatedPersonnels.stream()
|
List<ProjectRelatedPersonnel> projectRelatedPersonnelList = new ArrayList<>();
|
||||||
.filter(e -> dutyTerritory.contains(e.getDutyTerritory())).collect(Collectors.toList());
|
for (String s : dutyTerritory.split(",")) {
|
||||||
|
List<ProjectRelatedPersonnel> projectRelatedPersonnelListTemp = projectRelatedPersonnels.stream()
|
||||||
|
.filter(e -> s.equals(e.getDutyTerritory())).collect(Collectors.toList());
|
||||||
|
if(projectRelatedPersonnelListTemp.size() != 0){
|
||||||
|
projectRelatedPersonnelList.addAll(projectRelatedPersonnelListTemp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// List<ProjectRelatedPersonnel> projectRelatedPersonnelList = projectRelatedPersonnels.stream()
|
||||||
|
// .filter(e -> dutyTerritory.contains(e.getDutyTerritory())).collect(Collectors.toList());
|
||||||
|
|
||||||
List<String> lawEngineerList = projectRelatedPersonnelList.stream().map(ProjectRelatedPersonnel::getLawEngineer).distinct().collect(Collectors.toList()).stream().filter(e->StringUtils.isNotBlank(e)).collect(Collectors.toList());
|
List<String> lawEngineerList = projectRelatedPersonnelList.stream().map(ProjectRelatedPersonnel::getLawEngineer).distinct().collect(Collectors.toList()).stream().filter(e->StringUtils.isNotBlank(e)).collect(Collectors.toList());
|
||||||
List<String> engineeringInterfacePersonList = projectRelatedPersonnelList.stream().map(ProjectRelatedPersonnel::getEngineeringInterfacePerson).distinct().collect(Collectors.toList()).stream().filter(e->StringUtils.isNotBlank(e)).collect(Collectors.toList());
|
List<String> engineeringInterfacePersonList = projectRelatedPersonnelList.stream().map(ProjectRelatedPersonnel::getEngineeringInterfacePerson).distinct().collect(Collectors.toList()).stream().filter(e->StringUtils.isNotBlank(e)).collect(Collectors.toList());
|
||||||
@@ -2074,6 +2088,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
ProjectLibraryBase projectLibraryBase = projectLibraryBaseMapper.selectOne(new QueryWrapper<ProjectLibraryBase>()
|
ProjectLibraryBase projectLibraryBase = projectLibraryBaseMapper.selectOne(new QueryWrapper<ProjectLibraryBase>()
|
||||||
.lambda().eq(ProjectLibraryBase::getId, projectLibraryId));
|
.lambda().eq(ProjectLibraryBase::getId, projectLibraryId));
|
||||||
|
|
||||||
|
|
||||||
|
SysUser studioUserInfo = this.sysUserMapper.selectOne(
|
||||||
|
new QueryWrapper<SysUser>().lambda().eq(SysUser::getId, projectLibraryBase.getStudioEngineer())
|
||||||
|
);
|
||||||
|
|
||||||
QueryWrapper<ProjectNameInfoEO> projectNameInfoEOQueryWrapper = new QueryWrapper<>();
|
QueryWrapper<ProjectNameInfoEO> projectNameInfoEOQueryWrapper = new QueryWrapper<>();
|
||||||
projectNameInfoEOQueryWrapper.lambda().eq(ProjectNameInfoEO::getId,projectLibraryBase.getProjectNameId());
|
projectNameInfoEOQueryWrapper.lambda().eq(ProjectNameInfoEO::getId,projectLibraryBase.getProjectNameId());
|
||||||
ProjectNameInfoEO projectNameInfoEO = projectNameInfoEOMapper.selectOne(projectNameInfoEOQueryWrapper);
|
ProjectNameInfoEO projectNameInfoEO = projectNameInfoEOMapper.selectOne(projectNameInfoEOQueryWrapper);
|
||||||
@@ -2090,6 +2109,10 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
|
|
||||||
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
|
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
|
||||||
|
|
||||||
|
MessageTypeEnum messageTypeEnum = null;
|
||||||
|
String taskType = "";
|
||||||
|
String initiator = "";
|
||||||
|
|
||||||
if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_START_MSG.getValue())) {
|
if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_START_MSG.getValue())) {
|
||||||
userIdList.add(engineeringInterfacePerson);
|
userIdList.add(engineeringInterfacePerson);
|
||||||
msgContentEN = sysUser.getUsername() + " initiated the regulation task confirmation of " + projectNameInfoEO.getProjectName()
|
msgContentEN = sysUser.getUsername() + " initiated the regulation task confirmation of " + projectNameInfoEO.getProjectName()
|
||||||
@@ -2099,6 +2122,10 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
|
|
||||||
feishuMsgVo.setContent("Hello! Please check and address this task in a timely manner.");
|
feishuMsgVo.setContent("Hello! Please check and address this task in a timely manner.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK;
|
||||||
|
taskType = "Regulation Task Confirmation";
|
||||||
|
|
||||||
|
initiator = studioUserInfo.getUsername();
|
||||||
} else if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_ISSUE_DRE_MSG.getValue())) {
|
} else if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_ISSUE_DRE_MSG.getValue())) {
|
||||||
String dreUserId = jsonObject.getString("dreUserId"); //dre用户id
|
String dreUserId = jsonObject.getString("dreUserId"); //dre用户id
|
||||||
userIdList.add(dreUserId);
|
userIdList.add(dreUserId);
|
||||||
@@ -2109,6 +2136,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
|
|
||||||
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has assigned the task. Please check and and handle it in time.");
|
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has assigned the task. Please check and and handle it in time.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK;
|
||||||
|
taskType = "Regulation Task Confirmation";
|
||||||
|
initiator = studioUserInfo.getUsername();
|
||||||
} else if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_DRE_REJECTED.getValue())) {
|
} else if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_DRE_REJECTED.getValue())) {
|
||||||
userIdList.add(engineeringInterfacePerson);
|
userIdList.add(engineeringInterfacePerson);
|
||||||
msgContentEN = sysUser.getUsername() + " has rejected the regulation task confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
msgContentEN = sysUser.getUsername() + " has rejected the regulation task confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
@@ -2118,6 +2148,9 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
|
|
||||||
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has rejected the task. Please check and and handle it in time.");
|
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has rejected the task. Please check and and handle it in time.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK;
|
||||||
|
taskType = "Regulation Task Confirmation";
|
||||||
|
initiator = studioUserInfo.getUsername();
|
||||||
} else if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_DRE_ACCEPTED.getValue())) {
|
} else if (StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_DRE_ACCEPTED.getValue())) {
|
||||||
userIdList.add(engineeringInterfacePerson);
|
userIdList.add(engineeringInterfacePerson);
|
||||||
msgContentEN = sysUser.getUsername() + " has submitted the regulation task confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
msgContentEN = sysUser.getUsername() + " has submitted the regulation task confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
@@ -2127,11 +2160,155 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
|
|
||||||
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has submitted the task. Please check and and handle it in time.");
|
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has submitted the task. Please check and and handle it in time.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK;
|
||||||
|
taskType = "Regulation Task Confirmation";
|
||||||
|
initiator = studioUserInfo.getUsername();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_REJECTED_MSG.getValue())){
|
||||||
|
userIdList.add(projectLibraryBase.getStudioEngineer());
|
||||||
|
msgContentEN = sysUser.getUsername() + " has rejected the regulation task confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". Please check and handle it in time.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a regulation task confirmation to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has rejected the task. Please check and and handle it in time.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK;
|
||||||
|
taskType = "Regulation Task Confirmation";
|
||||||
|
initiator = studioUserInfo.getUsername();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.TASK_AFFIRM_ACCEPTED_MSG.getValue())){
|
||||||
|
userIdList.add(projectLibraryBase.getStudioEngineer());
|
||||||
|
msgContentEN = sysUser.getUsername() + " has accepted the regulation task confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". Please check and handle it in time.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a regulation task confirmation notification to check";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! " + sysUser.getUsername() + " has accepted the task. Please check and and handle it in time.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.REGULATION_TASK_CONFIRMATION_NOTIFICATION;
|
||||||
|
taskType = "Regulation Task Confirmation";
|
||||||
|
initiator = studioUserInfo.getUsername();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.DESIGN_START_MSG.getValue())){
|
||||||
|
String designDutyId = jsonObject.getString("designDutyId"); //设计符合性责任人id
|
||||||
|
userIdList.add(designDutyId);
|
||||||
|
msgContentEN = "You recieved the design compliance task of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". The due date is XXXX. Please check and address it in a timely manner.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a design compliance task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! Please address the task in a timely manner.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.DESIGN_COMPLIANCE_TASK;
|
||||||
|
taskType = "Design Compliance Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.PREHOMO_START_MSG.getValue())){
|
||||||
|
String prehomoDutyId = jsonObject.getString("prehomoDutyId"); //pre-Home责任人id
|
||||||
|
userIdList.add(prehomoDutyId);
|
||||||
|
msgContentEN = "You recieved the Pre-Homo task of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". The due date is XXXX. Please check and address it in a timely manner.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a Pre-Homo task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! Please address the task in a timely manner.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.PRE_HOMO_TASK;
|
||||||
|
taskType = "Pre-Homo Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.VERIFY_START_MSG.getValue())){
|
||||||
|
String verifyDutyId = jsonObject.getString("verifyDutyId"); //验证符合性责任人id
|
||||||
|
userIdList.add(verifyDutyId);
|
||||||
|
msgContentEN = "You recieved the validation compliance task of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". The due date is XXXX. Please check and address it in a timely manner.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a validation compliance task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! Please address the task in a timely manner.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.VALIDATION_TASK;
|
||||||
|
taskType = "Validation Compliance Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.DESIGN_CHARGE_PERSON_SUBMIT_MSG.getValue())){
|
||||||
|
String designInitiatorId = jsonObject.getString("designInitiatorId"); //设计符合性发起人id
|
||||||
|
userIdList.add(designInitiatorId);
|
||||||
|
msgContentEN = sysUser.getUsername() + " has submitted the design compliance confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". Please check and review it in time.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a design compliance task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! The compliance confirmation has been submitted. Please check and review it in a timely manner.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.DESIGN_COMPLIANCE_TASK;
|
||||||
|
taskType = "Design Compliance Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.PREHOMO_CHARGE_PERSON_SUBMIT_MSG.getValue())){
|
||||||
|
String prehomoInitiatorId = jsonObject.getString("prehomoInitiatorId"); //pre-Home发起人id
|
||||||
|
userIdList.add(prehomoInitiatorId);
|
||||||
|
msgContentEN = sysUser.getUsername() + " has submitted the Pre-Homo confirmation of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". Please check and review it in time.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a Pre-Homo task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! The compliance confirmation has been submitted. Please check and review it in a timely manner.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.PRE_HOMO_TASK;
|
||||||
|
taskType = "Pre-Homo Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.VERIFY_CHARGE_PERSON_SUBMIT_MSG.getValue())){
|
||||||
|
String verifyInitiatorId = jsonObject.getString("verifyInitiatorId"); //验证符合性发起人id
|
||||||
|
userIdList.add(verifyInitiatorId);
|
||||||
|
msgContentEN = sysUser.getUsername() + " has submitted the validation compliance confirmation " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". Please check and review it in time.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a validation compliance task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! The compliance confirmation has been submitted. Please check and review it in a timely manner.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.VALIDATION_TASK;
|
||||||
|
taskType = "Validation Compliance Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
}else if(StringUtils.equals(msgType, MsgTypeEnum.DESIGN_INITIATOR_ACCEPTED_MSG.getValue())){
|
||||||
|
String designDutyId = jsonObject.getString("designDutyId"); //设计符合性责任人id
|
||||||
|
userIdList.add(designDutyId);
|
||||||
|
msgContentEN = "The design compliance information of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". you sumitted has been approved.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a design compliance task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! The compliance information you submitted has been approved.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.DESIGN_COMPLIANCE_NOTIFICATION;
|
||||||
|
taskType = "Design Compliance Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.PREHOMO_INITIATOR_ACCEPTED_MSG.getValue())){
|
||||||
|
String prehomoDutyId = jsonObject.getString("prehomoDutyId"); //pre-Home责任人id
|
||||||
|
userIdList.add(prehomoDutyId);
|
||||||
|
msgContentEN = "The Pre-Homo confirmation information of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ ". you sumitted has been approved.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a Pre-Homo task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! The compliance information you submitted has been approved.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.PRE_HOMO_NOTIFICATION;
|
||||||
|
taskType = "Pre-Homo Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
|
} else if(StringUtils.equals(msgType, MsgTypeEnum.VERIFY_INITIATOR_ACCEPTED_MSG.getValue())){
|
||||||
|
String verifyDutyId = jsonObject.getString("verifyDutyId"); //验证符合性责任人id
|
||||||
|
userIdList.add(verifyDutyId);
|
||||||
|
msgContentEN = "The validation compliance information of " + serialNumber +" in "+ projectNameInfoEO.getProjectName()
|
||||||
|
+ "you sumitted has been approved.";
|
||||||
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket()
|
||||||
|
+ ": You have a validation compliance task to complete";
|
||||||
|
|
||||||
|
feishuMsgVo.setContent("Hello! The compliance information you submitted has been approved.");
|
||||||
|
|
||||||
|
messageTypeEnum = MessageTypeEnum.VALIDATION_COMPLIANCE_NOTIFICATION;
|
||||||
|
taskType = "Validation Compliance Confirmation";
|
||||||
|
initiator = MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName();
|
||||||
}
|
}
|
||||||
|
|
||||||
if(CollectionUtils.isNotEmpty(userIdList) && StringUtils.isNotEmpty(msgContentEN)){
|
if(CollectionUtils.isNotEmpty(userIdList) && StringUtils.isNotEmpty(msgContentEN)){
|
||||||
|
|
||||||
feishuMsgVo.setTaskType("Regulation Task Confirmation");
|
feishuMsgVo.setTaskType(taskType);
|
||||||
feishuMsgVo.setRegulationNo(serialNumber);
|
feishuMsgVo.setRegulationNo(serialNumber);
|
||||||
feishuMsgVo.setProject(projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket());
|
feishuMsgVo.setProject(projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBase.getTargetMarket());
|
||||||
feishuMsgVo.setInitiator(sysUser.getUsername());
|
feishuMsgVo.setInitiator(sysUser.getUsername());
|
||||||
@@ -2149,7 +2326,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
sendMessage(msgTitle, msgContentEN,userIdList,id,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK);
|
sendMessage(msgTitle, msgContentEN,userIdList,id,sendMessageMap, feishuMsgVo, messageTypeEnum,initiator);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -6454,6 +6631,10 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
libraryBaseQueryWrapper.lambda().eq(ProjectLibraryBase::getId,projectLibraryId);
|
libraryBaseQueryWrapper.lambda().eq(ProjectLibraryBase::getId,projectLibraryId);
|
||||||
ProjectLibraryBase projectLibraryBase = this.projectLibraryBaseMapper.selectOne(libraryBaseQueryWrapper);
|
ProjectLibraryBase projectLibraryBase = this.projectLibraryBaseMapper.selectOne(libraryBaseQueryWrapper);
|
||||||
|
|
||||||
|
SysUser studioUserInfo = this.sysUserMapper.selectOne(
|
||||||
|
new QueryWrapper<SysUser>().lambda().eq(SysUser::getId, projectLibraryBase.getStudioEngineer())
|
||||||
|
);
|
||||||
|
|
||||||
projectLawsInventoryEOList.forEach(projectLawsInventoryEO -> {
|
projectLawsInventoryEOList.forEach(projectLawsInventoryEO -> {
|
||||||
|
|
||||||
//如果清单确认状态为待确认的,进行催办
|
//如果清单确认状态为待确认的,进行催办
|
||||||
@@ -6515,7 +6696,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
sendMessage(msgTitle, msgContentEN,inventoryAffirmUserIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK);
|
sendMessage(msgTitle, msgContentEN,inventoryAffirmUserIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_LIST_CONFIRMATION_TASK,studioUserInfo.getUsername());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -6571,7 +6752,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
sendMessage(msgTitle, msgContentEN,taskAffirmUserIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK);
|
sendMessage(msgTitle, msgContentEN,taskAffirmUserIdList,projectLibraryId,sendMessageMap, feishuMsgVo, MessageTypeEnum.REGULATION_TASK_CONFIRMATION_TASK,studioUserInfo.getUsername());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
+13
-3
@@ -1,10 +1,13 @@
|
|||||||
package com.jero.modules.project.service.impl;
|
package com.jero.modules.project.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.modules.project.entity.ProjectLibraryRoleRelEO;
|
import com.jero.modules.project.entity.ProjectLibraryRoleRelEO;
|
||||||
import com.jero.modules.project.mapper.ProjectLibraryRoleRelEOMapper;
|
import com.jero.modules.project.mapper.ProjectLibraryRoleRelEOMapper;
|
||||||
import com.jero.modules.project.service.IProjectLibraryRoleRelEOService;
|
import com.jero.modules.project.service.IProjectLibraryRoleRelEOService;
|
||||||
|
import me.zhyd.oauth.utils.StringUtils;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
@@ -43,9 +46,16 @@ public class ProjectLibraryRoleRelEOServiceImpl extends ServiceImpl<ProjectLibra
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void editById(ProjectLibraryRoleRelEO projectLibraryRoleRelEO) {
|
public void editById(ProjectLibraryRoleRelEO projectLibraryRoleRelEO) {
|
||||||
Date now = new Date();
|
//用户在法规清单角色切换中,切换角色,只有这个项目的studio 有id,其他用户第一次默认是没有的。如果不是studio 只能给他新增一条数据 ,后续回显使用。
|
||||||
projectLibraryRoleRelEO.setUpdateTime(now);
|
if(StringUtils.isNotEmpty(projectLibraryRoleRelEO.getId())){
|
||||||
saveOrUpdate(projectLibraryRoleRelEO);
|
Date now = new Date();
|
||||||
|
projectLibraryRoleRelEO.setUpdateTime(now);
|
||||||
|
this.baseMapper.updateById(projectLibraryRoleRelEO);
|
||||||
|
}else {
|
||||||
|
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
|
projectLibraryRoleRelEO.setUserId(currentUser.getId());
|
||||||
|
this.baseMapper.insert(projectLibraryRoleRelEO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+6
-6
@@ -263,9 +263,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
|||||||
lawEngineerName = lawEngineerUsers.stream().filter(e -> data.equals(e.getId()))
|
lawEngineerName = lawEngineerUsers.stream().filter(e -> data.equals(e.getId()))
|
||||||
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
||||||
}
|
}
|
||||||
lawName.append(lawEngineerName).append(" , ");
|
lawName.append(lawEngineerName).append(",");
|
||||||
}
|
}
|
||||||
projectRelatedPersonnel.setLawEngineerName(lawName.substring(0,lawName.toString().length()-3));
|
projectRelatedPersonnel.setLawEngineerName(lawName.substring(0,lawName.toString().length()-1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -289,9 +289,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
|||||||
engineeringInterfacePersonName = engineeringInterfacePersonUsers.stream().filter(e -> data.equals(e.getId()))
|
engineeringInterfacePersonName = engineeringInterfacePersonUsers.stream().filter(e -> data.equals(e.getId()))
|
||||||
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
||||||
}
|
}
|
||||||
engineeringName.append(engineeringInterfacePersonName).append(" , ");
|
engineeringName.append(engineeringInterfacePersonName).append(",");
|
||||||
}
|
}
|
||||||
projectRelatedPersonnel.setEngineeringInterfacePersonName(engineeringName.substring(0,engineeringName.toString().length()-3));
|
projectRelatedPersonnel.setEngineeringInterfacePersonName(engineeringName.substring(0,engineeringName.toString().length()-1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -314,9 +314,9 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
|
|||||||
certificationEngineerName = certificationEngineerUsers.stream().filter(e -> data.equals(e.getId()))
|
certificationEngineerName = certificationEngineerUsers.stream().filter(e -> data.equals(e.getId()))
|
||||||
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
|
||||||
}
|
}
|
||||||
certificationName.append(certificationEngineerName).append(" , ");
|
certificationName.append(certificationEngineerName).append(",");
|
||||||
}
|
}
|
||||||
projectRelatedPersonnel.setCertificationEngineerName(certificationName.substring(0,certificationName.toString().length()-3));
|
projectRelatedPersonnel.setCertificationEngineerName(certificationName.substring(0,certificationName.toString().length()-1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -372,7 +372,7 @@ public class ProjectTaskInventoryDetailEOServiceImpl extends ServiceImpl<Project
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,id,sendMessageMap, feishuMsgVo, messageTypeEnum);
|
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,id,sendMessageMap, feishuMsgVo, messageTypeEnum,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -425,7 +425,7 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, messageTypeEnum);
|
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryId,sendMessageMap, feishuMsgVo, messageTypeEnum,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
return new Result<>().success("提醒办理成功!");
|
return new Result<>().success("提醒办理成功!");
|
||||||
}
|
}
|
||||||
@@ -992,7 +992,7 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,id,sendMessageMap, feishuMsgVo, messageTypeEnum);
|
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,id,sendMessageMap, feishuMsgVo, messageTypeEnum,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+75
-73
@@ -132,93 +132,95 @@ public class ProjectTaskInventoryFeedbackEOServiceImpl extends ServiceImpl<Proje
|
|||||||
new QueryWrapper<ProjectTaskInventoryDetailEO>().lambda().eq(ProjectTaskInventoryDetailEO::getId, projectTaskInventoryFeedbackEO.getProjectTaskInventoryId())
|
new QueryWrapper<ProjectTaskInventoryDetailEO>().lambda().eq(ProjectTaskInventoryDetailEO::getId, projectTaskInventoryFeedbackEO.getProjectTaskInventoryId())
|
||||||
);
|
);
|
||||||
|
|
||||||
ProjectLawsInventoryEO projectLawsInventoryEO = this.projectLawsInventoryEOService.getOne(
|
if(!Objects.isNull(projectTaskInventoryDetailEO)){
|
||||||
new QueryWrapper<ProjectLawsInventoryEO>().lambda().eq(ProjectLawsInventoryEO::getId, projectTaskInventoryDetailEO.getProjectTaskInventoryId())
|
ProjectLawsInventoryEO projectLawsInventoryEO = this.projectLawsInventoryEOService.getOne(
|
||||||
);
|
new QueryWrapper<ProjectLawsInventoryEO>().lambda().eq(ProjectLawsInventoryEO::getId, projectTaskInventoryDetailEO.getProjectTaskInventoryId())
|
||||||
|
);
|
||||||
|
|
||||||
ProjectLibraryBase projectLibraryBaseInfo = this.projectLibraryBaseService.getOne(
|
ProjectLibraryBase projectLibraryBaseInfo = this.projectLibraryBaseService.getOne(
|
||||||
new QueryWrapper<ProjectLibraryBase>().lambda().eq(ProjectLibraryBase::getId, projectLawsInventoryEO.getProjectLibraryId())
|
new QueryWrapper<ProjectLibraryBase>().lambda().eq(ProjectLibraryBase::getId, projectLawsInventoryEO.getProjectLibraryId())
|
||||||
);
|
);
|
||||||
|
|
||||||
ProjectNameInfoEO projectNameInfoEO = this.projectNameInfoEOService.getOne(
|
ProjectNameInfoEO projectNameInfoEO = this.projectNameInfoEOService.getOne(
|
||||||
new QueryWrapper<ProjectNameInfoEO>().lambda().eq(ProjectNameInfoEO::getId, projectLibraryBaseInfo.getProjectNameId())
|
new QueryWrapper<ProjectNameInfoEO>().lambda().eq(ProjectNameInfoEO::getId, projectLibraryBaseInfo.getProjectNameId())
|
||||||
);
|
);
|
||||||
|
|
||||||
QueryWrapper<ProjectYearNameInfoEO> projectYearInfoEOQueryWrapper = new QueryWrapper<>();
|
QueryWrapper<ProjectYearNameInfoEO> projectYearInfoEOQueryWrapper = new QueryWrapper<>();
|
||||||
projectYearInfoEOQueryWrapper.lambda().eq(ProjectYearNameInfoEO::getId,projectLibraryBaseInfo.getYearNameId());
|
projectYearInfoEOQueryWrapper.lambda().eq(ProjectYearNameInfoEO::getId,projectLibraryBaseInfo.getYearNameId());
|
||||||
ProjectYearNameInfoEO projectYearNameInfoEO = this.projectYearNameInfoEOService.getOne(projectYearInfoEOQueryWrapper);
|
ProjectYearNameInfoEO projectYearNameInfoEO = this.projectYearNameInfoEOService.getOne(projectYearInfoEOQueryWrapper);
|
||||||
|
|
||||||
// 飞书消息封装
|
// 飞书消息封装
|
||||||
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
|
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
|
||||||
|
|
||||||
feishuMsgVo.setContent("Hello! " + currentUser.getUsername() + " has replied to your engineering deliverable information. Please check and address it in a timely manner.");
|
feishuMsgVo.setContent("Hello! " + currentUser.getUsername() + " has replied to your engineering deliverable information. Please check and address it in a timely manner.");
|
||||||
feishuMsgVo.setRegulationNo(projectLawsInventoryEO.getSerialNumber());
|
feishuMsgVo.setRegulationNo(projectLawsInventoryEO.getSerialNumber());
|
||||||
feishuMsgVo.setProject(projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket());
|
feishuMsgVo.setProject(projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket());
|
||||||
feishuMsgVo.setInitiator(currentUser.getUsername());
|
feishuMsgVo.setInitiator(currentUser.getUsername());
|
||||||
|
|
||||||
MessageTypeEnum messageTypeEnum = null;
|
MessageTypeEnum messageTypeEnum = null;
|
||||||
|
|
||||||
//消息内容
|
//消息内容
|
||||||
String msgContentEN = "";
|
String msgContentEN = "";
|
||||||
String msgTitle = "";
|
String msgTitle = "";
|
||||||
|
|
||||||
String flowType = projectTaskInventoryFeedbackEO.getFlowType();
|
String flowType = projectTaskInventoryFeedbackEO.getFlowType();
|
||||||
if(StringUtils.equals(flowType,FlowTypeEnum.SJFHXSHLC.getValue())){
|
if(StringUtils.equals(flowType,FlowTypeEnum.SJFHXSHLC.getValue())){
|
||||||
msgContentEN = currentUser.getUsername() + " has replied to your engineering deliverable information of "
|
msgContentEN = currentUser.getUsername() + " has replied to your engineering deliverable information of "
|
||||||
+ projectLawsInventoryEO.getSerialNumber() + " in "
|
+ projectLawsInventoryEO.getSerialNumber() + " in "
|
||||||
+ projectNameInfoEO.getProjectName() + " for design compliance confirmation. Please check and address it in time.";
|
+ projectNameInfoEO.getProjectName() + " for design compliance confirmation. Please check and address it in time.";
|
||||||
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket()
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket()
|
||||||
+ ": You have a design compliance task to complete";
|
+ ": You have a design compliance task to complete";
|
||||||
|
|
||||||
feishuMsgVo.setTaskType("Design Compliance Confirmation");
|
feishuMsgVo.setTaskType("Design Compliance Confirmation");
|
||||||
feishuMsgVo.setDueDate(sdf.format(projectLawsInventoryEO.getDesignDueDate()));
|
feishuMsgVo.setDueDate(sdf.format(projectLawsInventoryEO.getDesignDueDate()));
|
||||||
|
|
||||||
messageTypeEnum = MessageTypeEnum.DESIGN_COMPLIANCE_TASK;
|
messageTypeEnum = MessageTypeEnum.DESIGN_COMPLIANCE_TASK;
|
||||||
}else if(StringUtils.equals(flowType,FlowTypeEnum.PREHOMOQRLC.getValue())){
|
}else if(StringUtils.equals(flowType,FlowTypeEnum.PREHOMOQRLC.getValue())){
|
||||||
msgContentEN = currentUser.getUsername() + " has replied to your engineering deliverable information of "
|
msgContentEN = currentUser.getUsername() + " has replied to your engineering deliverable information of "
|
||||||
+ projectLawsInventoryEO.getSerialNumber() + " in "
|
+ projectLawsInventoryEO.getSerialNumber() + " in "
|
||||||
+ projectNameInfoEO.getProjectName() + " for Pre-Homo compliance confirmation. Please check and address it in time.";
|
+ projectNameInfoEO.getProjectName() + " for Pre-Homo compliance confirmation. Please check and address it in time.";
|
||||||
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket()
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket()
|
||||||
+ ": You have a Pre-Homo task to complete";
|
+ ": You have a Pre-Homo task to complete";
|
||||||
|
|
||||||
feishuMsgVo.setTaskType("Pre-Homo Confirmation");
|
feishuMsgVo.setTaskType("Pre-Homo Confirmation");
|
||||||
feishuMsgVo.setDueDate(sdf.format(projectLawsInventoryEO.getPrehomoDueDate()));
|
feishuMsgVo.setDueDate(sdf.format(projectLawsInventoryEO.getPrehomoDueDate()));
|
||||||
|
|
||||||
messageTypeEnum = MessageTypeEnum.PRE_HOMO_TASK;
|
messageTypeEnum = MessageTypeEnum.PRE_HOMO_TASK;
|
||||||
}else if(StringUtils.equals(flowType,FlowTypeEnum.YZFHXSCLC.getValue())){
|
}else if(StringUtils.equals(flowType,FlowTypeEnum.YZFHXSCLC.getValue())){
|
||||||
msgContentEN = currentUser.getUsername() + " has replied to your engineering deliverable information of "
|
msgContentEN = currentUser.getUsername() + " has replied to your engineering deliverable information of "
|
||||||
+ projectLawsInventoryEO.getSerialNumber() + " in "
|
+ projectLawsInventoryEO.getSerialNumber() + " in "
|
||||||
+ projectNameInfoEO.getProjectName() + " for validation compliance confirmation. Please check and address it in time.";
|
+ projectNameInfoEO.getProjectName() + " for validation compliance confirmation. Please check and address it in time.";
|
||||||
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket()
|
msgTitle = projectNameInfoEO.getProjectName() + "-" + projectYearNameInfoEO.getYearName() + " " + projectLibraryBaseInfo.getTargetMarket()
|
||||||
+ ": You have a validation compliance task to complete";
|
+ ": You have a validation compliance task to complete";
|
||||||
|
|
||||||
feishuMsgVo.setTaskType("Validation Compliance Confirmation");
|
feishuMsgVo.setTaskType("Validation Compliance Confirmation");
|
||||||
feishuMsgVo.setDueDate(sdf.format(projectLawsInventoryEO.getVerifyDueDate()));
|
feishuMsgVo.setDueDate(sdf.format(projectLawsInventoryEO.getVerifyDueDate()));
|
||||||
|
|
||||||
messageTypeEnum = MessageTypeEnum.VALIDATION_TASK;
|
messageTypeEnum = MessageTypeEnum.VALIDATION_TASK;
|
||||||
|
}
|
||||||
|
|
||||||
|
//飞书跳转链接
|
||||||
|
String hrefFeishu = backUrl
|
||||||
|
+ JumpLinkEnum.PREHOMO_AFFIRM_LINK.getLink()
|
||||||
|
+ projectLibraryBaseInfo.getId() + JumpLinkEnum.PREHOMO_AFFIRM_LINK.getType()
|
||||||
|
+ "&projectName=" + projectNameInfoEO.getProjectName() + "-"
|
||||||
|
+ projectYearNameInfoEO.getYearName()
|
||||||
|
+ "&targetMarket=" + projectLibraryBaseInfo.getTargetMarket();
|
||||||
|
//系统内部跳转链接
|
||||||
|
String href = "<a href='"
|
||||||
|
+ JumpLinkEnum.PREHOMO_AFFIRM_LINK.getLink() + projectLibraryBaseInfo.getId() + JumpLinkEnum.PREHOMO_AFFIRM_LINK.getType()
|
||||||
|
+ "&projectName=" + projectNameInfoEO.getProjectName() + "-"
|
||||||
|
+ projectYearNameInfoEO.getYearName()
|
||||||
|
+ "&targetMarket=" + projectLibraryBaseInfo.getTargetMarket()
|
||||||
|
+ "'>" + " View details" + "</a>";
|
||||||
|
String contentInfo = msgContentEN + " " + href;
|
||||||
|
Map<String,Object> sendMessageMap = new HashMap<>();
|
||||||
|
sendMessageMap.put("hrefFeishu",hrefFeishu);
|
||||||
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
|
//发送消息
|
||||||
|
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryBaseInfo.getId(),sendMessageMap, feishuMsgVo, messageTypeEnum,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
//飞书跳转链接
|
|
||||||
String hrefFeishu = backUrl
|
|
||||||
+ JumpLinkEnum.PREHOMO_AFFIRM_LINK.getLink()
|
|
||||||
+ projectLibraryBaseInfo.getId() + JumpLinkEnum.PREHOMO_AFFIRM_LINK.getType()
|
|
||||||
+ "&projectName=" + projectNameInfoEO.getProjectName() + "-"
|
|
||||||
+ projectYearNameInfoEO.getYearName()
|
|
||||||
+ "&targetMarket=" + projectLibraryBaseInfo.getTargetMarket();
|
|
||||||
//系统内部跳转链接
|
|
||||||
String href = "<a href='"
|
|
||||||
+ JumpLinkEnum.PREHOMO_AFFIRM_LINK.getLink() + projectLibraryBaseInfo.getId() + JumpLinkEnum.PREHOMO_AFFIRM_LINK.getType()
|
|
||||||
+ "&projectName=" + projectNameInfoEO.getProjectName() + "-"
|
|
||||||
+ projectYearNameInfoEO.getYearName()
|
|
||||||
+ "&targetMarket=" + projectLibraryBaseInfo.getTargetMarket()
|
|
||||||
+ "'>" + " View details" + "</a>";
|
|
||||||
String contentInfo = msgContentEN + " " + href;
|
|
||||||
Map<String,Object> sendMessageMap = new HashMap<>();
|
|
||||||
sendMessageMap.put("hrefFeishu",hrefFeishu);
|
|
||||||
sendMessageMap.put("contentInfo",contentInfo);
|
|
||||||
|
|
||||||
//发送消息
|
|
||||||
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryBaseInfo.getId(),sendMessageMap, feishuMsgVo, messageTypeEnum);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -419,7 +421,7 @@ public class ProjectTaskInventoryFeedbackEOServiceImpl extends ServiceImpl<Proje
|
|||||||
sendMessageMap.put("contentInfo",contentInfo);
|
sendMessageMap.put("contentInfo",contentInfo);
|
||||||
|
|
||||||
//发送消息
|
//发送消息
|
||||||
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryBaseInfo.getId(),sendMessageMap, feishuMsgVo, messageTypeEnum);
|
SendMessageUtils.sendMessage(msgTitle, msgContentEN,userIdList,projectLibraryBaseInfo.getId(),sendMessageMap, feishuMsgVo, messageTypeEnum,MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+11
-3
@@ -54,7 +54,14 @@ public class SendMessageUtils {
|
|||||||
SendMessageUtils.webSocket = webSocket;
|
SendMessageUtils.webSocket = webSocket;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void sendMessage(String msgTitle, String msgContent, List<String> userIdList, String projectLibraryId, Map<String,Object> sendMessageMap, FeishuMsgVo feishuMsgVo, MessageTypeEnum messageType) {
|
public static void sendMessage(String msgTitle,
|
||||||
|
String msgContent,
|
||||||
|
List<String> userIdList,
|
||||||
|
String projectLibraryId,
|
||||||
|
Map<String,Object> sendMessageMap,
|
||||||
|
FeishuMsgVo feishuMsgVo,
|
||||||
|
MessageTypeEnum messageType,
|
||||||
|
String initiator) {
|
||||||
String idTemp = projectLibraryId;
|
String idTemp = projectLibraryId;
|
||||||
|
|
||||||
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
|
List<SysUser> sysUsers = sysUserService.listByIds(userIdList);
|
||||||
@@ -69,7 +76,7 @@ public class SendMessageUtils {
|
|||||||
String contentInfo = (String) sendMessageMap.get("contentInfo");
|
String contentInfo = (String) sendMessageMap.get("contentInfo");
|
||||||
|
|
||||||
//系统消息
|
//系统消息
|
||||||
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, msgContent, contentInfo,messageType);
|
SysAnnouncement sysAnnouncement = getSysAnnouncement(userIdList, msgTitle, msgContent, contentInfo,messageType,initiator);
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
sendWebsocket(idTemp, idTemp);
|
sendWebsocket(idTemp, idTemp);
|
||||||
|
|
||||||
@@ -89,8 +96,9 @@ public class SendMessageUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
private static SysAnnouncement getSysAnnouncement(List<String> userIdList, String title, String content, String contentInfo, MessageTypeEnum messageType) {
|
private static SysAnnouncement getSysAnnouncement(List<String> userIdList, String title, String content, String contentInfo, MessageTypeEnum messageType,String initiator) {
|
||||||
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
SysAnnouncement sysAnnouncement = new SysAnnouncement();
|
||||||
|
sysAnnouncement.setInitiator(initiator);
|
||||||
sysAnnouncement.setDelFlag("0");
|
sysAnnouncement.setDelFlag("0");
|
||||||
sysAnnouncement.setSendStatus("0");
|
sysAnnouncement.setSendStatus("0");
|
||||||
sysAnnouncement.setSendTime(new Date());
|
sysAnnouncement.setSendTime(new Date());
|
||||||
|
|||||||
+2
-2
@@ -1,7 +1,6 @@
|
|||||||
package com.jero.modules.project.vo;
|
package com.jero.modules.project.vo;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.jero.common.aspect.annotation.Dict;
|
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
@@ -10,6 +9,7 @@ import org.jeecgframework.poi.excel.annotation.Excel;
|
|||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
@@ -119,7 +119,7 @@ public class NcrTrackVO implements Serializable {
|
|||||||
//验证问题类型 verify_flow_task_status
|
//验证问题类型 verify_flow_task_status
|
||||||
private String verifyFlowTaskStatus;
|
private String verifyFlowTaskStatus;
|
||||||
|
|
||||||
private String ncrTrackVOList;
|
private List<NcrTrackVO> ncrTrackVOList = new ArrayList<>();
|
||||||
|
|
||||||
|
|
||||||
//以下字段跳转适用(还有项目库id)
|
//以下字段跳转适用(还有项目库id)
|
||||||
|
|||||||
+1359
-249
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -335,7 +335,7 @@ public class LawsWarnService {
|
|||||||
String title = content;
|
String title = content;
|
||||||
|
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.PUSH.getValue());
|
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.PUSH.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
bussDocumentLibraryEOService.sendWebsocket(StringUtils.join(thirdIdList, ","), contentInfo);
|
bussDocumentLibraryEOService.sendWebsocket(StringUtils.join(thirdIdList, ","), contentInfo);
|
||||||
//飞书
|
//飞书
|
||||||
|
|||||||
+1
-1
@@ -152,7 +152,7 @@ public class TimedTaskWarn implements Job {
|
|||||||
private void sendMessage(String title, String content,String contentInfo,String contentFeiShu, String url, List<String> userIdList, List<String> thirdIdList) {
|
private void sendMessage(String title, String content,String contentInfo,String contentFeiShu, String url, List<String> userIdList, List<String> thirdIdList) {
|
||||||
//站内消息
|
//站内消息
|
||||||
//封装消息的实体类
|
//封装消息的实体类
|
||||||
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.WARN.getValue());
|
SysAnnouncement sysAnnouncement = bussDocumentLibraryEOService.getSysAnnouncement(userIdList, title, content, contentInfo,MessageTypeEnum.WARN.getValue(),MessageTypeEnum.SYSTEMATIC_NOTIFICATION.getName());
|
||||||
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
sysAnnouncementService.saveAnnouncement(sysAnnouncement);
|
||||||
bussDocumentLibraryEOService.sendWebsocket(StringUtils.join(userIdList, ","), content);
|
bussDocumentLibraryEOService.sendWebsocket(StringUtils.join(userIdList, ","), content);
|
||||||
|
|
||||||
|
|||||||
+35
-2
@@ -142,7 +142,40 @@
|
|||||||
.itemModel-multi .ant-form-explain, .ant-form-extra {
|
.itemModel-multi .ant-form-explain, .ant-form-extra {
|
||||||
margin-top: -10px;
|
margin-top: -10px;
|
||||||
}
|
}
|
||||||
.anticon-exclamation-circle{
|
|
||||||
display: none!important;
|
|
||||||
|
.anticon-exclamation-circle {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-select-selection--single {
|
||||||
|
height: 38px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-select-selection--multiple {
|
||||||
|
height: 38px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-select-selection__rendered {
|
||||||
|
line-height: 38px !important;
|
||||||
|
height: 38px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-select-selection--multiple .ant-select-selection__rendered > ul > li {
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-calendar-picker {
|
||||||
|
line-height: 38px !important;
|
||||||
|
height: 38px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-calendar-picker-input {
|
||||||
|
height: 38px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-input-number-input-wrap {
|
||||||
|
line-height: 38px !important;
|
||||||
|
height: 38px !important;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -134,7 +134,14 @@ export function downFile(url, parameter) {
|
|||||||
responseType: 'blob'
|
responseType: 'blob'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
export function downFilePost(url, parameter) {
|
||||||
|
return axios({
|
||||||
|
url: url,
|
||||||
|
data: parameter,
|
||||||
|
method: 'post',
|
||||||
|
responseType: 'blob'
|
||||||
|
})
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 下载文件
|
* 下载文件
|
||||||
* @param url 文件路径
|
* @param url 文件路径
|
||||||
@@ -226,6 +233,85 @@ export function downloadFile(url, fileName, parameter, callback) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function downloadFilePost(url, fileName, parameter, callback) {
|
||||||
|
let langCn = localStorage.language
|
||||||
|
// 默认中文
|
||||||
|
let isTrue
|
||||||
|
if (langCn == 'en-us') {
|
||||||
|
isTrue = true
|
||||||
|
} else if (langCn == 'zh-cn') {
|
||||||
|
isTrue = false
|
||||||
|
}
|
||||||
|
index.showDrawer({
|
||||||
|
loading: true,
|
||||||
|
isTrue: isTrue
|
||||||
|
})
|
||||||
|
return downFilePost(url, parameter).then((data) => {
|
||||||
|
let fileReader = new FileReader()
|
||||||
|
fileReader.onload = function(event) {
|
||||||
|
try {
|
||||||
|
let jsonData = JSON.parse(event.target.result)
|
||||||
|
if (jsonData.message.includes('token')) {
|
||||||
|
index.showDrawer({
|
||||||
|
loading: false,
|
||||||
|
isTrue: isTrue
|
||||||
|
})
|
||||||
|
Modal.error({
|
||||||
|
title: '登录已过期',
|
||||||
|
content: '很抱歉,登录已过期,请重新登录',
|
||||||
|
okText: '重新登录',
|
||||||
|
mask: false,
|
||||||
|
onOk: () => {
|
||||||
|
store.dispatch('Logout').then(() => {
|
||||||
|
Vue.ls.remove(ACCESS_TOKEN)
|
||||||
|
try {
|
||||||
|
let path = window.document.location.pathname
|
||||||
|
if (path != '/' && path.indexOf('/user/login') == -1) {
|
||||||
|
window.location.reload()
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
window.location.reload()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
if (!jsonData.success) {
|
||||||
|
index.showDrawer({
|
||||||
|
loading: false,
|
||||||
|
isTrue: isTrue
|
||||||
|
})
|
||||||
|
Vue.prototype['$message'].warning(jsonData.message)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
if (!data || data.size === 0) {
|
||||||
|
Vue.prototype['$message'].warning('文件下载失败')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (typeof window.navigator.msSaveBlob !== 'undefined') {
|
||||||
|
window.navigator.msSaveBlob(new Blob([data]), fileName)
|
||||||
|
} else {
|
||||||
|
let url = window.URL.createObjectURL(new Blob([data]))
|
||||||
|
let link = document.createElement('a')
|
||||||
|
link.style.display = 'none'
|
||||||
|
link.href = url
|
||||||
|
link.setAttribute('download', fileName)
|
||||||
|
document.body.appendChild(link)
|
||||||
|
link.click()
|
||||||
|
document.body.removeChild(link) //下载完成移除元素
|
||||||
|
window.URL.revokeObjectURL(url) //释放掉blob对象
|
||||||
|
}
|
||||||
|
index.showDrawer({
|
||||||
|
loading: false,
|
||||||
|
isTrue: isTrue
|
||||||
|
})
|
||||||
|
callback && callback()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fileReader.readAsText(data)
|
||||||
|
})
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 文件上传 用于富文本上传图片
|
* 文件上传 用于富文本上传图片
|
||||||
* @param url
|
* @param url
|
||||||
|
|||||||
+354
-354
File diff suppressed because it is too large
Load Diff
@@ -576,7 +576,7 @@ module.exports = {
|
|||||||
documentSplitTemplate: '文档拆分模板',
|
documentSplitTemplate: '文档拆分模板',
|
||||||
batSetting: '批量设置',
|
batSetting: '批量设置',
|
||||||
selectDirectoryTerms: '请选择添加条款的目录位置',
|
selectDirectoryTerms: '请选择添加条款的目录位置',
|
||||||
OnlyWordItem: '非GSO文件类型,不能拆分pdf文件',
|
OnlyWordItem: '只有GSO文件类型,才能拆分pdf文件,请重新选择文件',
|
||||||
OnlyWord: '只能导入word文件',
|
OnlyWord: '只能导入word文件',
|
||||||
labelAreaDeleted: '若进行删除,则该展示区域下标签项都将被删除',
|
labelAreaDeleted: '若进行删除,则该展示区域下标签项都将被删除',
|
||||||
StandardBreakdown: '标准分解单',
|
StandardBreakdown: '标准分解单',
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
return{
|
return{
|
||||||
visible:false,
|
visible:false,
|
||||||
uploadAction:window._CONFIG['domianURL']+"/sys/common/upload",
|
uploadAction:window._CONFIG['domianURL']+"/sys/common/upload",
|
||||||
downLoadFileUrl:window._CONFIG['domianURL']+'/sys/common/static',
|
downLoadFileUrl:window._CONFIG['domianPreviewURL']+'/sys/common/static',
|
||||||
myfileList:[],
|
myfileList:[],
|
||||||
fileList:[],
|
fileList:[],
|
||||||
fileTypeSatus:false,
|
fileTypeSatus:false,
|
||||||
|
|||||||
@@ -327,19 +327,6 @@
|
|||||||
height: 40px;
|
height: 40px;
|
||||||
margin-bottom: 24px;
|
margin-bottom: 24px;
|
||||||
}
|
}
|
||||||
</style>
|
|
||||||
<style lang='less'>
|
|
||||||
.area-module {
|
|
||||||
.ant-modal-wrap {
|
|
||||||
.ant-modal {
|
|
||||||
.ant-modal-content {
|
|
||||||
.ant-modal-footer {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.page {
|
.page {
|
||||||
display: flex;
|
display: flex;
|
||||||
@@ -392,4 +379,17 @@
|
|||||||
.title-text-text {
|
.title-text-text {
|
||||||
margin-top: 9px;
|
margin-top: 9px;
|
||||||
}
|
}
|
||||||
|
</style>
|
||||||
|
<style lang='less'>
|
||||||
|
.area-module {
|
||||||
|
.ant-modal-wrap {
|
||||||
|
.ant-modal {
|
||||||
|
.ant-modal-content {
|
||||||
|
.ant-modal-footer {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
visible:false,
|
visible:false,
|
||||||
// uploadAction:"http://10.0.1.25:8080/split/sarFileSplitItems/importSplitItems",
|
// uploadAction:"http://10.0.1.25:8080/split/sarFileSplitItems/importSplitItems",
|
||||||
uploadAction:window._CONFIG['domianURL']+"/split/sarFileSplitItems/importSplitItems",
|
uploadAction:window._CONFIG['domianURL']+"/split/sarFileSplitItems/importSplitItems",
|
||||||
downLoadFileUrl:window._CONFIG['domianURL']+'/sys/common/static',
|
downLoadFileUrl:window._CONFIG['domianPreviewURL']+'/sys/common/static',
|
||||||
myfileList:[],
|
myfileList:[],
|
||||||
fileList:[],
|
fileList:[],
|
||||||
fileTypeSatus:false,
|
fileTypeSatus:false,
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
visible: false,
|
visible: false,
|
||||||
uploadAction: window._CONFIG['domianURL'] + '/split/sarFileSplitItems/upload',
|
uploadAction: window._CONFIG['domianURL'] + '/split/sarFileSplitItems/upload',
|
||||||
upDataList: [],
|
upDataList: [],
|
||||||
downLoadFileUrl: window._CONFIG['domianURL'] + '/sys/common/static',
|
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/static',
|
||||||
fileList: [],
|
fileList: [],
|
||||||
myfileList: [],
|
myfileList: [],
|
||||||
isLoding: false,
|
isLoding: false,
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
return {
|
return {
|
||||||
visible: false,
|
visible: false,
|
||||||
uploadAction: window._CONFIG['domianURL'] + '/sys/common/upload',
|
uploadAction: window._CONFIG['domianURL'] + '/sys/common/upload',
|
||||||
downLoadFileUrl: window._CONFIG['domianURL'] + '/sys/common/static',
|
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/static',
|
||||||
myfileList: [],
|
myfileList: [],
|
||||||
fileList: [],
|
fileList: [],
|
||||||
fileTypeSatus: false,
|
fileTypeSatus: false,
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
<a-list-item :key="index" v-for="(record, index) in announcement1" v-if="index <= 4">
|
<a-list-item :key="index" v-for="(record, index) in announcement1" v-if="index <= 4">
|
||||||
<div style="margin-left: 5%;width: 80%;">
|
<div style="margin-left: 5%;width: 80%;">
|
||||||
<p style="overflow: hidden; text-overflow: ellipsis;white-space: nowrap;color:#00B3BE">
|
<p style="overflow: hidden; text-overflow: ellipsis;white-space: nowrap;color:#00B3BE">
|
||||||
<a :title="record.msgContent" @click="showAnnouncement(record)">{{ record.msgContent }}</a>
|
<a :title="record.titile" @click="showAnnouncement(record)">{{ record.titile }}</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</a-list-item>
|
</a-list-item>
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ export default {
|
|||||||
this.fileTypeSatus = true
|
this.fileTypeSatus = true
|
||||||
},
|
},
|
||||||
mypreview(item) {
|
mypreview(item) {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + encodeURIComponent(this.downLoadFileUrl + '/' + item.ext1)
|
let url = window._CONFIG['domianPreviewURL'] + '?url=' + encodeURIComponent(this.downLoadFileUrl + '/' + item.ext1)
|
||||||
window.open(url, '_blank')
|
window.open(url, '_blank')
|
||||||
},
|
},
|
||||||
handleChange(info) {
|
handleChange(info) {
|
||||||
@@ -188,17 +188,17 @@ export default {
|
|||||||
let index1 = fileName.lastIndexOf('.')
|
let index1 = fileName.lastIndexOf('.')
|
||||||
let index2 = fileName.length
|
let index2 = fileName.length
|
||||||
let fileSuffix = fileName.substring(index1, index2)
|
let fileSuffix = fileName.substring(index1, index2)
|
||||||
if (fileSuffix === '.pdf') {
|
// if (fileSuffix === '.pdf') {
|
||||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id+'&userName='+this.userInfo().username))
|
// window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id+'&userName='+this.userInfo().username))
|
||||||
} else if (fileSuffix === '.docx') {
|
// } else if (fileSuffix === '.docx') {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
// let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||||
window.open(url, '_blank')
|
// window.open(url, '_blank')
|
||||||
} else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
|
// } else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
// let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||||
window.open(url, '_blank')
|
// window.open(url, '_blank')
|
||||||
} else {
|
// } else {
|
||||||
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
|
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ import { mapGetters } from 'vuex'
|
|||||||
this.fileTypeSatus = true
|
this.fileTypeSatus = true
|
||||||
},
|
},
|
||||||
mypreview(item) {
|
mypreview(item) {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + encodeURIComponent(this.downLoadFileUrl + '/' + item.ext1)
|
let url = window._CONFIG['domianPreviewURL'] + '?url=' + encodeURIComponent(this.downLoadFileUrl + '/' + item.ext1)
|
||||||
window.open(url, '_blank')
|
window.open(url, '_blank')
|
||||||
},
|
},
|
||||||
handleChange(info) {
|
handleChange(info) {
|
||||||
@@ -211,17 +211,17 @@ import { mapGetters } from 'vuex'
|
|||||||
let index1 = fileName.lastIndexOf('.')
|
let index1 = fileName.lastIndexOf('.')
|
||||||
let index2 = fileName.length
|
let index2 = fileName.length
|
||||||
let fileSuffix = fileName.substring(index1, index2)
|
let fileSuffix = fileName.substring(index1, index2)
|
||||||
if (fileSuffix === '.pdf') {
|
// if (fileSuffix === '.pdf') {
|
||||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id))
|
// window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id))
|
||||||
} else if (fileSuffix === '.docx') {
|
// } else if (fileSuffix === '.docx') {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
// let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||||
window.open(url, '_blank')
|
// window.open(url, '_blank')
|
||||||
} else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
|
// } else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
// let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||||
window.open(url, '_blank')
|
// window.open(url, '_blank')
|
||||||
} else {
|
// } else {
|
||||||
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
|
downloadFile('/sys/common/downLoadFile', fileQuery.fileName, { id: fileQuery.id })
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
<a-modal
|
<a-modal
|
||||||
:title="$t('viewFile')"
|
:title="$t('viewFile')"
|
||||||
:width="600"
|
:width="600"
|
||||||
|
style="z-index: 1007"
|
||||||
:visible="visibleFile"
|
:visible="visibleFile"
|
||||||
:maskClosable="false"
|
:maskClosable="false"
|
||||||
@cancel="visibleFile = false"
|
@cancel="visibleFile = false"
|
||||||
|
|||||||
@@ -11,8 +11,8 @@
|
|||||||
<div class="myNews-box-content-box" v-for="(item,index) in dataSource" :key="index" @click="magClick(item)">
|
<div class="myNews-box-content-box" v-for="(item,index) in dataSource" :key="index" @click="magClick(item)">
|
||||||
<img src="../../../assets/wdxx.png" alt="">
|
<img src="../../../assets/wdxx.png" alt="">
|
||||||
<div class="content-box">
|
<div class="content-box">
|
||||||
<div class="top" :title="item.msgContent">
|
<div class="top" :title="item.titile">
|
||||||
{{item.msgContent}}
|
{{item.titile}}
|
||||||
</div>
|
</div>
|
||||||
<div class="botton">
|
<div class="botton">
|
||||||
{{item.sendTime}}
|
{{item.sendTime}}
|
||||||
|
|||||||
@@ -21,7 +21,8 @@
|
|||||||
<a-icon type="reload"/>
|
<a-icon type="reload"/>
|
||||||
{{$t('UpdateLog')}}
|
{{$t('UpdateLog')}}
|
||||||
</div>
|
</div>
|
||||||
<div @click="DocumentSplitting" v-has="'bussLog:page'" class="operator-text-text" :title="$t('DocumentSplitting')">
|
<div @click="DocumentSplitting" v-has="'bussLog:page'" class="operator-text-text"
|
||||||
|
:title="$t('DocumentSplitting')">
|
||||||
<a-icon type="codepen"/>
|
<a-icon type="codepen"/>
|
||||||
{{$t('DocumentSplitting')}}
|
{{$t('DocumentSplitting')}}
|
||||||
</div>
|
</div>
|
||||||
@@ -47,7 +48,8 @@
|
|||||||
{{val}}
|
{{val}}
|
||||||
</div>
|
</div>
|
||||||
<div class="content-text" v-if="val == $t('essentialInformation')">
|
<div class="content-text" v-if="val == $t('essentialInformation')">
|
||||||
<div class="text-field" v-for="(ol,index1) in item[val]">
|
<div class="text-field" :class="{'text-content-button-one':ol.field_show_type == 8 ? true :false}"
|
||||||
|
v-for="(ol,index1) in item[val]">
|
||||||
<span class="text-field-left" :title="ol.db_field_txt">{{ol.db_field_txt}}</span>
|
<span class="text-field-left" :title="ol.db_field_txt">{{ol.db_field_txt}}</span>
|
||||||
<span class="text-field-right text-field-right-color" v-if="ol.urlClick" @click="urlClick(ol)"
|
<span class="text-field-right text-field-right-color" v-if="ol.urlClick" @click="urlClick(ol)"
|
||||||
:title="ol.value">{{ol.value ? ol.value : '--'}}</span>
|
:title="ol.value">{{ol.value ? ol.value : '--'}}</span>
|
||||||
@@ -135,7 +137,8 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="content-text" v-else>
|
<div class="content-text" v-else>
|
||||||
<div class="text-field" v-for="(ol,index1) in item[val]">
|
<div class="text-field" :class="{'text-content-button-one':ol.field_show_type == 8 ? true :false}"
|
||||||
|
v-for="(ol,index1) in item[val]">
|
||||||
<span class="text-field-left" :title="ol.db_field_txt">{{ol.db_field_txt}}</span>
|
<span class="text-field-left" :title="ol.db_field_txt">{{ol.db_field_txt}}</span>
|
||||||
<span class="text-field-right text-field-right-color" v-if="ol.urlClick" @click="urlClick(ol)"
|
<span class="text-field-right text-field-right-color" v-if="ol.urlClick" @click="urlClick(ol)"
|
||||||
:title="ol.value">{{ol.value ? ol.value : '--'}}</span>
|
:title="ol.value">{{ol.value ? ol.value : '--'}}</span>
|
||||||
@@ -402,7 +405,7 @@
|
|||||||
let index2 = fileName.length
|
let index2 = fileName.length
|
||||||
let fileSuffix = fileName.substring(index1, index2)
|
let fileSuffix = fileName.substring(index1, index2)
|
||||||
if (fileSuffix == '.pdf') {
|
if (fileSuffix == '.pdf') {
|
||||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id+'&userName='+this.userInfo().username))
|
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id + '&userName=' + this.userInfo().username))
|
||||||
} else if (fileSuffix == '.docx') {
|
} else if (fileSuffix == '.docx') {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||||
window.open(url, '_blank')
|
window.open(url, '_blank')
|
||||||
@@ -414,7 +417,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
download(item) {
|
download(item) {
|
||||||
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id ,userName:this.userInfo().username})
|
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id, userName: this.userInfo().username })
|
||||||
},
|
},
|
||||||
UpdateLog() {
|
UpdateLog() {
|
||||||
this.visible = true
|
this.visible = true
|
||||||
@@ -591,6 +594,33 @@
|
|||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.text-content-button-one {
|
||||||
|
width: 100%;
|
||||||
|
|
||||||
|
.text-field-left {
|
||||||
|
width: 124px;
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #6F7385;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
margin-right: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text-field-right {
|
||||||
|
width: calc(100% - 200px);
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 16px;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
color: #040B29;
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,8 @@
|
|||||||
@close="onClose"
|
@close="onClose"
|
||||||
width="900"
|
width="900"
|
||||||
>
|
>
|
||||||
|
<!-- :label-col="labelCol"-->
|
||||||
|
<!-- :wrapper-col="wrapperCol"-->
|
||||||
<a-spin :spinning="loading">
|
<a-spin :spinning="loading">
|
||||||
<a-form>
|
<a-form>
|
||||||
<a-form-model
|
<a-form-model
|
||||||
@@ -17,8 +19,6 @@
|
|||||||
:model="formInline"
|
:model="formInline"
|
||||||
:rules="rules"
|
:rules="rules"
|
||||||
ref="splitEditForm"
|
ref="splitEditForm"
|
||||||
:label-col="labelCol"
|
|
||||||
:wrapper-col="wrapperCol"
|
|
||||||
>
|
>
|
||||||
<a-row :gutter="24" class="split-form-row">
|
<a-row :gutter="24" class="split-form-row">
|
||||||
|
|
||||||
@@ -184,6 +184,7 @@
|
|||||||
<a-form-model-item class="itemModel" :prop="item.db_field_name">
|
<a-form-model-item class="itemModel" :prop="item.db_field_name">
|
||||||
<j-dict-select-tag v-model="formInline[item.db_field_name]"
|
<j-dict-select-tag v-model="formInline[item.db_field_name]"
|
||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
|
class="box-input"
|
||||||
@input="handleInput(item.db_field_name)"
|
@input="handleInput(item.db_field_name)"
|
||||||
:placeholder="$t('PleaseSelect')+item.db_field_txt"
|
:placeholder="$t('PleaseSelect')+item.db_field_txt"
|
||||||
:type="'radio'" :triggerChange="false" :dictCode="item.dict_field"/>
|
:type="'radio'" :triggerChange="false" :dictCode="item.dict_field"/>
|
||||||
@@ -191,7 +192,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="box-title-text box-tree-text" :title="item.db_field_txt" v-else-if="item.field_show_type === '0'">
|
<div class="box-title-text" :title="item.db_field_txt" v-else-if="item.field_show_type === '0'">
|
||||||
<div class="title-text">
|
<div class="title-text">
|
||||||
<span class="Required" v-if="item.field_must_input == 1">*</span>
|
<span class="Required" v-if="item.field_must_input == 1">*</span>
|
||||||
<span class="title-text-text">{{item.db_field_txt}}</span>
|
<span class="title-text-text">{{item.db_field_txt}}</span>
|
||||||
@@ -200,6 +201,7 @@
|
|||||||
<a-tree-select
|
<a-tree-select
|
||||||
tree-node-filter-prop="title"
|
tree-node-filter-prop="title"
|
||||||
v-model="formInline[item.db_field_name]"
|
v-model="formInline[item.db_field_name]"
|
||||||
|
class="box-input"
|
||||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
:tree-data="item.tree"
|
:tree-data="item.tree"
|
||||||
@@ -226,7 +228,6 @@
|
|||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|
||||||
|
|
||||||
@@ -278,16 +279,15 @@
|
|||||||
</a-modal>
|
</a-modal>
|
||||||
<!-- 类型选择弹框-->
|
<!-- 类型选择弹框-->
|
||||||
<a-modal
|
<a-modal
|
||||||
:title="Title"
|
:title="$t('Add')"
|
||||||
class="split-title"
|
class="split-title"
|
||||||
:visible="addConVisible"
|
:visible="addConVisible"
|
||||||
|
|
||||||
@ok="handleOk"
|
@ok="handleOk"
|
||||||
@cancel="handleCancel"
|
@cancel="handleCancel"
|
||||||
>
|
>
|
||||||
<div class="title-wraper">
|
<div class="title-wraper">
|
||||||
<div class="title-top">
|
<div class="title-top">
|
||||||
<span class="title-flex title-text" :class="{'title-flex-active':selected=='TEXT'}" @click="selectTitle('TEXT')">{{$t('text')}}</span>
|
<span class="title-flex title-text-flex" :class="{'title-flex-active':selected=='TEXT'}" @click="selectTitle('TEXT')">{{$t('text')}}</span>
|
||||||
<span class="title-flex title-pic" :class="{'title-flex-active':selected=='IMG'}" @click="selectTitle('IMG')">{{$t('picture')}}</span>
|
<span class="title-flex title-pic" :class="{'title-flex-active':selected=='IMG'}" @click="selectTitle('IMG')">{{$t('picture')}}</span>
|
||||||
<span class="title-flex title-table" :class="{'title-flex-active':selected=='TABLE'}" @click="selectTitle('TABLE')">{{$t('table')}}</span>
|
<span class="title-flex title-table" :class="{'title-flex-active':selected=='TABLE'}" @click="selectTitle('TABLE')">{{$t('table')}}</span>
|
||||||
</div>
|
</div>
|
||||||
@@ -303,7 +303,7 @@
|
|||||||
<!-- <span class="title-num-add">{{$t('addQuantity')}}</span>-->
|
<!-- <span class="title-num-add">{{$t('addQuantity')}}</span>-->
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :span="24">
|
<a-col :span="24">
|
||||||
<a-input-number class="title-num-edit" :min="0" :max="100" v-model="numberForm.textNumber" :placeholder="$t('enterQuantity')" :formatter="limitNumber" :parser="limitNumber" ></a-input-number>
|
<a-input-number class="title-num-edit box-input" :min="0" :max="100" v-model="numberForm.textNumber" :placeholder="$t('enterQuantity')" :formatter="limitNumber" :parser="limitNumber" ></a-input-number>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
@@ -333,12 +333,12 @@
|
|||||||
>
|
>
|
||||||
<a-form-model-item :label="$t('numberRows')" prop="rowCount">
|
<a-form-model-item :label="$t('numberRows')" prop="rowCount">
|
||||||
<!-- <a-form-item :label="$t('numberRows')">-->
|
<!-- <a-form-item :label="$t('numberRows')">-->
|
||||||
<a-input-number v-model="rowColForm.rowCount" :min="1" :max="100" :placeholder="$t('pleaseEnter')+$t('numberRows')" :formatter="limitNumber" :parser="limitNumber" style="width: 100%" />
|
<a-input-number class="box-input" v-model="rowColForm.rowCount" :min="1" :max="100" :placeholder="$t('pleaseEnter')+$t('numberRows')" :formatter="limitNumber" :parser="limitNumber" style="width: 100%" />
|
||||||
<!-- </a-form-item>-->
|
<!-- </a-form-item>-->
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
<a-form-model-item :label="$t('numberColumns')" prop="colCount">
|
<a-form-model-item :label="$t('numberColumns')" prop="colCount">
|
||||||
<!-- <a-form-item :label="$t('numberColumns')">-->
|
<!-- <a-form-item :label="$t('numberColumns')">-->
|
||||||
<a-input-number v-model="rowColForm.colCount" :min="1" :max="100" :placeholder="$t('pleaseEnter')+$t('numberColumns')" :formatter="limitNumber" :parser="limitNumber" style="width: 100%" />
|
<a-input-number class="box-input" v-model="rowColForm.colCount" :min="1" :max="100" :placeholder="$t('pleaseEnter')+$t('numberColumns')" :formatter="limitNumber" :parser="limitNumber" style="width: 100%" />
|
||||||
<!-- </a-form-item>-->
|
<!-- </a-form-item>-->
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</a-form-model>
|
</a-form-model>
|
||||||
@@ -1214,7 +1214,6 @@
|
|||||||
margin-top: 2px;
|
margin-top: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
.con-divider{
|
.con-divider{
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
@@ -1310,8 +1309,21 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
img{
|
img{
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
.box-input {
|
||||||
|
/*min-width: 200px;*/
|
||||||
|
display: inline-block;
|
||||||
|
height: 38px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
.button-text {
|
||||||
|
height: 38px;
|
||||||
|
width: calc(100% - 100px);
|
||||||
|
line-height: 38px;
|
||||||
|
background: #fff;
|
||||||
|
border: 1px #00B3BE solid;
|
||||||
|
color: #00B3BE;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style lang="less">
|
<style lang="less">
|
||||||
@@ -1366,10 +1378,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.split-content{
|
.split-content{
|
||||||
.box-input .ant-input-number-input-wrap{
|
/*.box-input .ant-input-number-input-wrap{*/
|
||||||
height: 30px;
|
/* height: 30px;*/
|
||||||
line-height: 30px;
|
/* line-height: 30px;*/
|
||||||
}
|
/*}*/
|
||||||
.ant-input-number{
|
.ant-input-number{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
@@ -1399,15 +1411,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.box-tree-text{
|
/*.box-tree-text{*/
|
||||||
.ant-select-selection--multiple{
|
/* .ant-select-selection--multiple{*/
|
||||||
height: 32px;
|
/* height: 32px;*/
|
||||||
overflow-y: auto;
|
/* overflow-y: auto;*/
|
||||||
}
|
/* }*/
|
||||||
}
|
/*}*/
|
||||||
.box-input .ant-select-selection__rendered {
|
|
||||||
line-height: 32px;
|
|
||||||
height: 32px;
|
|
||||||
/*overflow-y: auto;*/
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
@@ -1170,17 +1170,18 @@
|
|||||||
@import '~@assets/less/common.less';
|
@import '~@assets/less/common.less';
|
||||||
|
|
||||||
.split-detail {
|
.split-detail {
|
||||||
height: 100% !important;
|
/*height: 100% !important;*/
|
||||||
|
|
||||||
.split-detail-wrap {
|
.split-detail-wrap {
|
||||||
display: flex;
|
/*display: flex;*/
|
||||||
justify-content: space-between;
|
/*justify-content: space-between;*/
|
||||||
|
|
||||||
.split-detail-left {
|
.split-detail-left {
|
||||||
height: 100%;
|
/*height: 100%;*/
|
||||||
min-width: 300px;
|
width: 300px;
|
||||||
|
float: left;
|
||||||
padding-right: 20px;
|
padding-right: 20px;
|
||||||
border-right: 1px solid #E6E7EC;
|
/*border-right: 1px solid #E6E7EC;*/
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
|
||||||
.split-detail-left-tree {
|
.split-detail-left-tree {
|
||||||
@@ -1206,7 +1207,10 @@
|
|||||||
|
|
||||||
.split-detail-right {
|
.split-detail-right {
|
||||||
padding-left: 20px;
|
padding-left: 20px;
|
||||||
flex: 1;
|
width: calc(100% - 300px);
|
||||||
|
float: right;
|
||||||
|
border-left: 1px solid #E6E7EC;
|
||||||
|
/*flex: 1;*/
|
||||||
|
|
||||||
.split-detail-search-header {
|
.split-detail-search-header {
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
@@ -1381,26 +1385,26 @@
|
|||||||
margin-right: 20px !important;
|
margin-right: 20px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title-text {
|
/*.title-text {*/
|
||||||
min-width: 73px !important;
|
/* min-width: 73px !important;*/
|
||||||
}
|
/*}*/
|
||||||
|
|
||||||
.split-detail-wrap {
|
/*.split-detail-wrap {*/
|
||||||
height: 481px !important;
|
/* height: 481px !important;*/
|
||||||
}
|
/*}*/
|
||||||
|
|
||||||
.mainItem {
|
/*.mainItem {*/
|
||||||
height: 500px;
|
/* height: 500px;*/
|
||||||
}
|
/*}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (min-width: 1600px) and (max-width: 2000px) {
|
@media screen and (min-width: 1600px) and (max-width: 2000px) {
|
||||||
.split-detail .split-detail-wrap .split-detail-left {
|
/*.split-detail .split-detail-wrap .split-detail-left {*/
|
||||||
height: 735px !important;
|
/* height: 735px !important;*/
|
||||||
}
|
/*}*/
|
||||||
|
|
||||||
.mainItem {
|
/*.mainItem {*/
|
||||||
height: 800px !important;
|
/* height: 800px !important;*/
|
||||||
}
|
/*}*/
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -11,31 +11,32 @@
|
|||||||
<div class="text-text-right"
|
<div class="text-text-right"
|
||||||
:class="{ 'null-input':item.checked }">
|
:class="{ 'null-input':item.checked }">
|
||||||
<div class="text-header" @click="titleClick(item)">
|
<div class="text-header" @click="titleClick(item)">
|
||||||
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5" >
|
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<span v-html="item.module_type"></span>
|
<span v-html="item.module_type"></span>
|
||||||
</template>
|
</template>
|
||||||
<span style="cursor: pointer" v-html="item.module_type"></span>
|
<span class="text-header-text" style="cursor: pointer" v-html="item.module_type"></span>
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<span v-html="item.serial_number"></span>
|
<span v-html="item.serial_number"></span>
|
||||||
</template>
|
</template>
|
||||||
<span style="cursor: pointer"
|
<span style="cursor: pointer"
|
||||||
|
class="text-header-text"
|
||||||
v-html="item.serial_number"></span>
|
v-html="item.serial_number"></span>
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<span v-html="item.title"></span>
|
<span v-html="item.title"></span>
|
||||||
</template>
|
</template>
|
||||||
<span style="cursor: pointer" v-html="item.title"></span>
|
<span class="text-header-text" style="cursor: pointer" v-html="item.title"></span>
|
||||||
<template slot="title">
|
<template slot="title">
|
||||||
<span v-html="item.file_name"></span>
|
<span v-html="item.file_name"></span>
|
||||||
</template>
|
</template>
|
||||||
<span style="cursor: pointer" v-html="item.file_name"></span>
|
<span class="text-header-text" style="cursor: pointer" v-html="item.file_name"></span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
<!-- <a-tooltip placement="topLeft" :mouseEnterDelay="0.5">-->
|
<!-- <a-tooltip placement="topLeft" :mouseEnterDelay="0.5">-->
|
||||||
|
|
||||||
<!-- </a-tooltip>-->
|
<!-- </a-tooltip>-->
|
||||||
<!-- <a-tooltip placement="topLeft" :mouseEnterDelay="0.5">-->
|
<!-- <a-tooltip placement="topLeft" :mouseEnterDelay="0.5">-->
|
||||||
|
|
||||||
<!-- </a-tooltip>-->
|
<!-- </a-tooltip>-->
|
||||||
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
|
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
|
||||||
|
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
@@ -107,6 +108,7 @@
|
|||||||
conList: [],
|
conList: [],
|
||||||
total: 0,
|
total: 0,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
|
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
queryParam: {}
|
queryParam: {}
|
||||||
}
|
}
|
||||||
@@ -157,7 +159,7 @@
|
|||||||
let index2 = fileName.length
|
let index2 = fileName.length
|
||||||
let fileSuffix = fileName.substring(index1, index2)
|
let fileSuffix = fileName.substring(index1, index2)
|
||||||
if (fileSuffix == '.pdf') {
|
if (fileSuffix == '.pdf') {
|
||||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id.slice(0, 32)+'&userName='+this.userInfo().username))
|
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id.slice(0, 32) + '&userName=' + this.userInfo().username))
|
||||||
} else if (fileSuffix == '.docx') {
|
} else if (fileSuffix == '.docx') {
|
||||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id.slice(0, 32) + fileSuffix)
|
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id.slice(0, 32) + fileSuffix)
|
||||||
window.open(url, '_blank')
|
window.open(url, '_blank')
|
||||||
@@ -259,17 +261,29 @@
|
|||||||
.text-header {
|
.text-header {
|
||||||
margin-bottom: 11px;
|
margin-bottom: 11px;
|
||||||
|
|
||||||
span {
|
.text-header-text {
|
||||||
margin-right: 52px;
|
margin-right: 52px;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
color: #040B29;
|
color: #040B29;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
max-width: 500px;
|
max-width: 180px;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*span {*/
|
||||||
|
/* margin-right: 52px;*/
|
||||||
|
/* font-size: 16px;*/
|
||||||
|
/* font-weight: bold;*/
|
||||||
|
/* color: #040B29;*/
|
||||||
|
/* display: inline-block;*/
|
||||||
|
/* max-width: 500px;*/
|
||||||
|
/* text-overflow: ellipsis;*/
|
||||||
|
/* white-space: nowrap;*/
|
||||||
|
/* overflow: hidden;*/
|
||||||
|
/*}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
.text-content {
|
.text-content {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<a-drawer
|
<a-drawer
|
||||||
title="添加"
|
:title="$t('add')"
|
||||||
:maskClosable="false"
|
:maskClosable="false"
|
||||||
:width="1000"
|
:width="1000"
|
||||||
placement="right"
|
placement="right"
|
||||||
|
|||||||
@@ -162,6 +162,12 @@
|
|||||||
{{text}}
|
{{text}}
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
|
<span slot="standard" slot-scope="text,record" :title="text">
|
||||||
|
<a class="textName" @click="standardClick(record)">
|
||||||
|
{{text}}
|
||||||
|
</a>
|
||||||
|
</span>
|
||||||
<span slot="designDeliverableTemplateName" slot-scope="text,record">
|
<span slot="designDeliverableTemplateName" slot-scope="text,record">
|
||||||
<span>{{record.designDeliverableTypeName}}</span><br v-if="record.designDeliverableTypeName">
|
<span>{{record.designDeliverableTypeName}}</span><br v-if="record.designDeliverableTypeName">
|
||||||
<a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"
|
<a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"
|
||||||
@@ -306,7 +312,7 @@
|
|||||||
dataIndex: 'serialNumber',
|
dataIndex: 'serialNumber',
|
||||||
width: 180,
|
width: 180,
|
||||||
fixed: 'left',
|
fixed: 'left',
|
||||||
scopedSlots: { customRender: 'titleName' }
|
scopedSlots: { customRender: 'standard' }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('title'),
|
title: this.$t('title'),
|
||||||
@@ -840,6 +846,15 @@
|
|||||||
this.loading = false
|
this.loading = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
standardClick(row) {
|
||||||
|
let newUrl = this.$router.resolve({
|
||||||
|
path: '/docManage/library/detail',
|
||||||
|
query: {
|
||||||
|
id: row.bussDocumentLibraryId
|
||||||
|
}
|
||||||
|
})
|
||||||
|
window.open(newUrl.href, '_blank')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -389,7 +389,7 @@ export default {
|
|||||||
],
|
],
|
||||||
paramsName: [
|
paramsName: [
|
||||||
{ required: true, message: this.$t('pleaseSelect')+this.$t('ParameterName'), trigger: 'blur' },
|
{ required: true, message: this.$t('pleaseSelect')+this.$t('ParameterName'), trigger: 'blur' },
|
||||||
{ min:1, max: 30, message: this.$t('cantExeed')+'30'+this.$t('characters'), trigger: 'blur' },
|
{ min:1, max: 100, message: this.$t('cantExeed')+'100'+this.$t('characters'), trigger: 'blur' },
|
||||||
],
|
],
|
||||||
technologyTerritory: [
|
technologyTerritory: [
|
||||||
{ required: true, message: this.$t('pleaseSelect')+this.$t('technicalField'), trigger: 'change' },
|
{ required: true, message: this.$t('pleaseSelect')+this.$t('technicalField'), trigger: 'change' },
|
||||||
@@ -401,7 +401,7 @@ export default {
|
|||||||
{ required: true, message: this.$t('PleaseSelect')+this.$t('areaOfResponsibility'), trigger: 'change' },
|
{ required: true, message: this.$t('PleaseSelect')+this.$t('areaOfResponsibility'), trigger: 'change' },
|
||||||
],
|
],
|
||||||
description: [
|
description: [
|
||||||
{ min:1, max: 1000, message: this.$t('cantExeed')+'1000'+this.$t('characters'), trigger: 'blur' },
|
{ min:1, max: 2000, message: this.$t('cantExeed')+'2000'+this.$t('characters'), trigger: 'blur' },
|
||||||
],
|
],
|
||||||
controlType: [
|
controlType: [
|
||||||
{ required: true, message: this.$t('pleaseSelect')+this.$t('controlType'), trigger: 'change' },
|
{ required: true, message: this.$t('pleaseSelect')+this.$t('controlType'), trigger: 'change' },
|
||||||
@@ -689,15 +689,15 @@ export default {
|
|||||||
this.$message.warning(this.$t('ParameterName')+this.$t('cannotEmpty'))
|
this.$message.warning(this.$t('ParameterName')+this.$t('cannotEmpty'))
|
||||||
falg = 0
|
falg = 0
|
||||||
return
|
return
|
||||||
} else if(item.paramsName.length > 30){
|
} else if(item.paramsName.length > 100){
|
||||||
this.$message.warning(this.$t('ParameterName')+this.$t('cantExeed')+'30'+this.$t('Characters'))
|
this.$message.warning(this.$t('ParameterName')+this.$t('cantExeed')+'100'+this.$t('Characters'))
|
||||||
falg = 0
|
falg = 0
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if(item.description !== undefined && item.description !== null){
|
if(item.description !== undefined && item.description !== null){
|
||||||
// 参数说明的限制
|
// 参数说明的限制
|
||||||
if(item.description.length > 1000){
|
if(item.description.length > 2000){
|
||||||
this.$message.warning(this.$t('ParameterDescription')+this.$t('cantExeed')+'1000'+this.$t('Characters'))
|
this.$message.warning(this.$t('ParameterDescription')+this.$t('cantExeed')+'2000'+this.$t('Characters'))
|
||||||
falg = 0
|
falg = 0
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -84,7 +84,8 @@
|
|||||||
{},
|
{},
|
||||||
{
|
{
|
||||||
title: this.$t('standard'),
|
title: this.$t('standard'),
|
||||||
value: 'serialNumber'
|
value: 'serialNumber',
|
||||||
|
type: '4'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('title'),
|
title: this.$t('title'),
|
||||||
|
|||||||
@@ -1219,7 +1219,8 @@
|
|||||||
if (valid) {
|
if (valid) {
|
||||||
let query = {
|
let query = {
|
||||||
roleCode: this.formInlineRoleSwitching.roleSwitchingCode,
|
roleCode: this.formInlineRoleSwitching.roleSwitchingCode,
|
||||||
id: this.AndUserId
|
id: this.AndUserId,
|
||||||
|
projectLibraryId: this.$route.query.id
|
||||||
}
|
}
|
||||||
this.confirmLoadingRoleSwitching = true
|
this.confirmLoadingRoleSwitching = true
|
||||||
postAction(this.url.AndUserIdEdit, query).then((res) => {
|
postAction(this.url.AndUserIdEdit, query).then((res) => {
|
||||||
@@ -1503,7 +1504,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (let i = 0; i < dataList.length; i++) {
|
for (let i = 0; i < dataList.length; i++) {
|
||||||
if ((dataList[i].taskAffirmStatus == 'Not started' || dataList.taskAffirmStatus == 'Rejected') &&
|
if ((dataList[i].taskAffirmStatus == 'Not started' || dataList[i].taskAffirmStatus == 'Rejected') &&
|
||||||
dataList[i].inventoryAffirmStatus == 'Accepted') {
|
dataList[i].inventoryAffirmStatus == 'Accepted') {
|
||||||
if (dataList[i].engineeringInterfacePerson) {
|
if (dataList[i].engineeringInterfacePerson) {
|
||||||
if (dataList[i].verifyDeliverableType) {
|
if (dataList[i].verifyDeliverableType) {
|
||||||
|
|||||||
@@ -82,7 +82,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getAction, postAction, downloadFile, deleteAction } from '@/api/manage'
|
import { getAction, postAction, downloadFile, deleteAction,downloadFilePost } from '@/api/manage'
|
||||||
import store from '@/store/'
|
import store from '@/store/'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -214,9 +214,9 @@
|
|||||||
let query = {
|
let query = {
|
||||||
...this.queryParam,
|
...this.queryParam,
|
||||||
projectLibraryId: this.$route.query.id,
|
projectLibraryId: this.$route.query.id,
|
||||||
ncrTrackVOList: JSON.stringify(this.content)
|
ncrTrackVOList: this.content
|
||||||
}
|
}
|
||||||
downloadFile(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect)
|
downloadFilePost(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect)
|
||||||
},
|
},
|
||||||
getList() {
|
getList() {
|
||||||
let query = {
|
let query = {
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
:scroll="{x: 1000}"
|
:scroll="{x: 1000}"
|
||||||
:data-source="dataList"
|
:data-source="dataList"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange,columnTitle:' ' }"
|
||||||
:loading="loading">
|
:loading="loading">
|
||||||
|
|
||||||
</a-table>
|
</a-table>
|
||||||
|
|||||||
@@ -182,7 +182,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getAction, postAction, downloadFile, deleteAction } from '@/api/manage'
|
import { getAction, postAction, downloadFile, deleteAction ,downloadFilePost} from '@/api/manage'
|
||||||
import PersonnelSelection from '@/components/PersonnelSelection/index'
|
import PersonnelSelection from '@/components/PersonnelSelection/index'
|
||||||
import store from '@/store/'
|
import store from '@/store/'
|
||||||
|
|
||||||
@@ -354,9 +354,9 @@
|
|||||||
handleExport() {
|
handleExport() {
|
||||||
let query = {
|
let query = {
|
||||||
...this.queryParam,
|
...this.queryParam,
|
||||||
ncrTrackVOList: JSON.stringify(this.content)
|
ncrTrackVOList: this.content
|
||||||
}
|
}
|
||||||
downloadFile(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect)
|
downloadFilePost(this.url.exportData, this.$t('NonConformance') + '.xls', query, this.Deselect)
|
||||||
},
|
},
|
||||||
Deselect() {
|
Deselect() {
|
||||||
this.selectedRowKeys = []
|
this.selectedRowKeys = []
|
||||||
|
|||||||
@@ -100,12 +100,12 @@
|
|||||||
description: '系统通告表管理页面',
|
description: '系统通告表管理页面',
|
||||||
queryParam: {},
|
queryParam: {},
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
|
// '5': this.$t('taskRegulationComplianceTask'),
|
||||||
msgCategoryQuery: {
|
msgCategoryQuery: {
|
||||||
'1': this.$t('SubscriptionNotification'),
|
'1': this.$t('SubscriptionNotification'),
|
||||||
'2': this.$t('warningInformation'),
|
'2': this.$t('warningInformation'),
|
||||||
'3': this.$t('ForwardPush'),
|
'3': this.$t('ForwardPush'),
|
||||||
'4': this.$t('authenticationMessage'),
|
'4': this.$t('authenticationMessage'),
|
||||||
'5': this.$t('taskRegulationComplianceTask'),
|
|
||||||
'6':this.$t('RegulationListConfirmationTask'),
|
'6':this.$t('RegulationListConfirmationTask'),
|
||||||
'7':this.$t('RegulationListConfirmationNotification'),
|
'7':this.$t('RegulationListConfirmationNotification'),
|
||||||
'8':this.$t('RegulationTaskConfirmation'),
|
'8':this.$t('RegulationTaskConfirmation'),
|
||||||
@@ -125,6 +125,12 @@
|
|||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
scopedSlots: { customRender: 'msgTitile' }
|
scopedSlots: { customRender: 'msgTitile' }
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: this.$t('Sponsor'),
|
||||||
|
align: 'center',
|
||||||
|
dataIndex: 'initiator',
|
||||||
|
width: 200,
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: this.$t('MessageType'),
|
title: this.$t('MessageType'),
|
||||||
align: 'center',
|
align: 'center',
|
||||||
|
|||||||
Reference in New Issue
Block a user