Merge branch 'dev_2nd_LCYH' of http://git.hzwlsoft.com/laws-nio/laws-weilai into dev_2nd_LCYH
This commit is contained in:
+2
@@ -319,4 +319,6 @@ public interface ISysUserService extends IService<SysUser> {
|
||||
* @return
|
||||
*/
|
||||
String getUsernameByUserId(List<SysUser> sysUserList, String userId);
|
||||
|
||||
List<SysUser> querySysUserByUserNameList(List<String> userNameList);
|
||||
}
|
||||
|
||||
+13
@@ -797,4 +797,17 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysUser> querySysUserByUserNameList(List<String> userNameList) {
|
||||
List<SysUser> result = new ArrayList<>();
|
||||
if(CollectionUtils.isNotEmpty(userNameList)){
|
||||
userNameList = userNameList.stream().distinct().collect(Collectors.toList());
|
||||
|
||||
QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.lambda().in(SysUser::getUsername,userNameList);
|
||||
result = this.list(queryWrapper);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
+115
-50
@@ -6790,6 +6790,13 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
String value = "";
|
||||
boolean flag = true;
|
||||
|
||||
List<String> userNameList = new ArrayList<>();
|
||||
String designDutyIds = dataList.stream().map(ProjectLawsInventoryEO::getDesignDutyId).collect(Collectors.joining(","));
|
||||
String verifyDutyIds = dataList.stream().map(ProjectLawsInventoryEO::getVerifyDutyId).collect(Collectors.joining(","));
|
||||
userNameList.addAll(Arrays.asList(designDutyIds.split(",")));
|
||||
userNameList.addAll(Arrays.asList(verifyDutyIds.split(",")));
|
||||
List<SysUser> sysUserList = this.sysUserService.querySysUserByUserNameList(userNameList);
|
||||
|
||||
//编号验证
|
||||
verifySerialNumber(dataList,projectLawsInventoryEOTemp,dataSource);
|
||||
for (ProjectLawsInventoryEO projectLawsInventoryEO : dataList) {
|
||||
@@ -6917,52 +6924,54 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
}
|
||||
|
||||
String nameCn = "";
|
||||
String nameEn = "";
|
||||
|
||||
//责任领域(多选必填)
|
||||
flag = must(projectLawsInventoryEO, errorMsg, msgList, dutyTerritory,"责任领域","Responsible Field");
|
||||
if(flag){
|
||||
value = pullMore(dictItemList, projectLawsInventoryEO, errorMsg, dutyTerritory,msgList,"责任领域","Responsible Field","duty_territory");
|
||||
if(StringUtils.isNotBlank(value)){
|
||||
//工程接口人(责任领域下的工程接口人)
|
||||
Map<String, Object> objectMap = iProjectRelatedPersonnelService.queryPersonByProjectId(projectLawsInventoryEOTemp.getProjectLibraryId(), value);
|
||||
|
||||
//法规工程师
|
||||
List<Map<String, String>> mapLawList = (List<Map<String, String>>) objectMap.get("lawEngineerList");
|
||||
//认证工程师
|
||||
List<Map<String, String>> mapCertificationList = (List<Map<String, String>>) objectMap.get("certificationEngineerList");
|
||||
//工程接口人
|
||||
List<Map<String, String>> mapPersonList = (List<Map<String, String>>) objectMap.get("engineeringInterfacePersonList");
|
||||
//所有人
|
||||
List<Map<String, String>> allPersonList = (List<Map<String, String>>) objectMap.get("allPersonList");
|
||||
|
||||
projectLawsInventoryEO.setDutyTerritory(value);
|
||||
|
||||
// 如果责任领域存在,再匹配这些人员
|
||||
//法规工程师
|
||||
if(StringUtils.isNotBlank(regulationOwnerId)){
|
||||
nameCn = "法规工程师";
|
||||
nameEn = "regulatory engineer";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, regulationOwnerId, mapLawList,nameCn,nameEn, ProjectRoleEnum.REGULATI_ENGINEER.getValue());
|
||||
}
|
||||
|
||||
//认证工程师
|
||||
if(StringUtils.isNotBlank(homologationEngineerId)){
|
||||
nameCn = "认证工程师";
|
||||
nameEn = "certification engineer ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapCertificationList,nameCn,nameEn,ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue());
|
||||
}
|
||||
|
||||
//工程接口人
|
||||
if(StringUtils.isNotBlank(engineeringInterfacePerson)){
|
||||
nameCn = "工程接口人";
|
||||
nameEn = "Engineering Interface ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, engineeringInterfacePerson, mapPersonList,nameCn,nameEn,ProjectRoleEnum.ENGINEERING_INTERFACE_PERSON.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
//工程接口人(责任领域下的工程接口人)
|
||||
Map<String, Object> objectMap = iProjectRelatedPersonnelService.queryPersonByProjectId(projectLawsInventoryEOTemp.getProjectLibraryId(), value);
|
||||
|
||||
//法规工程师
|
||||
List<Map<String, String>> mapLawList = (List<Map<String, String>>) objectMap.get("lawEngineerList");
|
||||
//认证工程师
|
||||
List<Map<String, String>> mapCertificationList = (List<Map<String, String>>) objectMap.get("certificationEngineerList");
|
||||
//工程接口人
|
||||
List<Map<String, String>> mapPersonList = (List<Map<String, String>>) objectMap.get("engineeringInterfacePersonList");
|
||||
//所有人
|
||||
List<Map<String, String>> allPersonList = (List<Map<String, String>>) objectMap.get("allPersonList");
|
||||
|
||||
String nameCn = "";
|
||||
String nameEn = "";
|
||||
//法规工程师
|
||||
if(StringUtils.isNotBlank(regulationOwnerId)){
|
||||
nameCn = "法规工程师";
|
||||
nameEn = "regulatory engineer";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, regulationOwnerId, mapLawList,nameCn,nameEn, ProjectRoleEnum.REGULATI_ENGINEER.getValue());
|
||||
}
|
||||
|
||||
//认证工程师
|
||||
if(StringUtils.isNotBlank(homologationEngineerId)){
|
||||
nameCn = "认证工程师";
|
||||
nameEn = "certification engineer ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, homologationEngineerId, mapCertificationList,nameCn,nameEn,ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue());
|
||||
}
|
||||
|
||||
//工程接口人
|
||||
if(StringUtils.isNotBlank(engineeringInterfacePerson)){
|
||||
nameCn = "工程接口人";
|
||||
nameEn = "Engineering Interface ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, engineeringInterfacePerson, mapPersonList,nameCn,nameEn,ProjectRoleEnum.ENGINEERING_INTERFACE_PERSON.getValue());
|
||||
}
|
||||
|
||||
|
||||
//设计
|
||||
//交付物类型
|
||||
@@ -6979,19 +6988,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
|
||||
//发起人
|
||||
if(StringUtils.isNotBlank(designInitiator)){
|
||||
/*if(StringUtils.isNotBlank(designInitiator)){
|
||||
nameCn = "设计符合性确认发起人";
|
||||
nameEn = "confirm design conformance initiator ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designInitiator, allPersonList,nameCn,nameEn,ProjectRoleEnum.DESIGNINITIATOR.getValue());
|
||||
}
|
||||
}*/
|
||||
|
||||
//责任人
|
||||
if(StringUtils.isNotBlank(designDuty)){
|
||||
nameCn = "设计符合性确认责任人";
|
||||
nameEn = "confirm design conformance responsible";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList, designDuty, allPersonList,nameCn,nameEn,ProjectRoleEnum.DESIGNDUTY.getValue());
|
||||
sysUserVerify(projectLawsInventoryEO, errorMsg, msgList, designDuty, sysUserList,nameCn,nameEn,ProjectRoleEnum.DESIGNDUTY.getValue());
|
||||
}
|
||||
|
||||
//截止时间
|
||||
@@ -7016,7 +7025,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
|
||||
//发起人
|
||||
if(StringUtils.isNotBlank(prehomoInitiator)){
|
||||
/*if(StringUtils.isNotBlank(prehomoInitiator)){
|
||||
nameCn = "Pre-homo确认发起人";
|
||||
nameEn = "Pre-homo identifies the initiator ";
|
||||
//验证人员是否存在
|
||||
@@ -7029,7 +7038,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
nameEn = "Pre-homo identifies the person responsible ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,prehomoDuty, allPersonList,nameCn,nameEn,ProjectRoleEnum.PREHOMODUTY.getValue());
|
||||
}
|
||||
}*/
|
||||
|
||||
//截止时间
|
||||
flag = dateVerify(projectLawsInventoryEO, errorMsg, prehomoDueDate,msgList,"截止时间","due date");
|
||||
@@ -7053,19 +7062,19 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
|
||||
|
||||
//发起人
|
||||
if(StringUtils.isNotBlank(verifyInitiator)){
|
||||
/*if(StringUtils.isNotBlank(verifyInitiator)){
|
||||
nameCn = "验证符合性确认发起人";
|
||||
nameEn = "verify conformance validates the originator ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyInitiator, allPersonList,nameCn,nameEn,ProjectRoleEnum.VERIFYINITIATOR.getValue());
|
||||
}
|
||||
}*/
|
||||
|
||||
//责任人
|
||||
if(StringUtils.isNotBlank(verifyDuty)){
|
||||
nameCn = "验证符合性确认责任人";
|
||||
nameEn = "verify conformance to confirm the responsible person ";
|
||||
//验证人员是否存在
|
||||
personnelVerify(projectLawsInventoryEO, errorMsg, msgList,verifyDuty, allPersonList,nameCn,nameEn,ProjectRoleEnum.VERIFYDUTY.getValue());
|
||||
sysUserVerify(projectLawsInventoryEO, errorMsg, msgList,verifyDuty, sysUserList,nameCn,nameEn,ProjectRoleEnum.VERIFYDUTY.getValue());
|
||||
}
|
||||
|
||||
|
||||
@@ -7591,17 +7600,17 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
}
|
||||
if(count == 0){
|
||||
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
|
||||
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配";
|
||||
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配, ";
|
||||
}else{
|
||||
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list";
|
||||
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list, ";
|
||||
}
|
||||
msgList.add(errorMsg);
|
||||
}
|
||||
}else{
|
||||
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
|
||||
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配";
|
||||
errorMsg += nameCn+regulationOwnerId+"与相关人员名单中责任领域下的人员不匹配, ";
|
||||
}else{
|
||||
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list";
|
||||
errorMsg += nameEn+regulationOwnerId+"does not match a person under the Responsible Field in the relevant person list, ";
|
||||
}
|
||||
msgList.add(errorMsg);
|
||||
}
|
||||
@@ -11077,5 +11086,61 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统内所有用户验证
|
||||
* @param projectLawsInventoryEO
|
||||
* @param errorMsg
|
||||
* @param msgList
|
||||
* @param regulationOwnerId
|
||||
* @param sysUserList
|
||||
* @param nameCn
|
||||
* @param nameEn
|
||||
* @param fieldNumber
|
||||
*/
|
||||
private void sysUserVerify(ProjectLawsInventoryEO projectLawsInventoryEO,
|
||||
String errorMsg, List<String> msgList,
|
||||
String userName,
|
||||
List<SysUser> sysUserList,
|
||||
String nameCn,String nameEn,
|
||||
String fieldNumber) {
|
||||
//单选
|
||||
if(userName.contains(",")){
|
||||
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
|
||||
errorMsg += nameCn + "导入只能填写一个用户名, ";
|
||||
}else{
|
||||
errorMsg += "Only one user name can be entered for"+ nameEn +"import, ";
|
||||
}
|
||||
msgList.add(errorMsg);
|
||||
}
|
||||
|
||||
if(sysUserList.size() != 0){
|
||||
int count = 0;
|
||||
for (SysUser sysUser : sysUserList) {
|
||||
if(StringUtils.equals(userName,sysUser.getUsername())){
|
||||
count ++;
|
||||
if(ProjectRoleEnum.DESIGNDUTY.getValue().equals(fieldNumber)) {
|
||||
projectLawsInventoryEO.setDesignDutyId(sysUser.getId());
|
||||
}else if(ProjectRoleEnum.VERIFYDUTY.getValue().equals(fieldNumber)){
|
||||
projectLawsInventoryEO.setVerifyDutyId(sysUser.getId());
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(count == 0){
|
||||
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
|
||||
errorMsg += nameCn+userName+"在系统中不存在, ";
|
||||
}else{
|
||||
errorMsg += nameEn+userName+"Does not exist in the system, ";
|
||||
}
|
||||
msgList.add(errorMsg);
|
||||
}
|
||||
}else{
|
||||
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
|
||||
errorMsg += nameCn+userName+"在系统中不存在, ";
|
||||
}else{
|
||||
errorMsg += nameEn+userName+"Does not exist in the system, ";
|
||||
}
|
||||
msgList.add(errorMsg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
v-model="queryParam.serial_number"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<template v-if="toggleSearchStatus">
|
||||
<!-- <template v-if="toggleSearchStatus">-->
|
||||
<a-col :md="12" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('title')">
|
||||
@@ -42,13 +42,13 @@
|
||||
<!-- :triggerChange="false" :dictCode="'state'"/>-->
|
||||
<!-- </div>-->
|
||||
<!-- </a-col>-->
|
||||
</template>
|
||||
<!-- </template>-->
|
||||
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
<a-col :md="12" :sm="24">
|
||||
<a @click="handleToggleSearch">
|
||||
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
|
||||
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
|
||||
</a>
|
||||
<!-- <a @click="handleToggleSearch">-->
|
||||
<!-- {{ !toggleSearchStatus ? $t('open') : $t('away') }}-->
|
||||
<!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
|
||||
<!-- </a>-->
|
||||
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
|
||||
<globalAdvancedQuery ref="globalAdvancedQueryRef"
|
||||
|
||||
@@ -385,7 +385,7 @@
|
||||
ellipsis: true,
|
||||
dataIndex: 'fileName',
|
||||
scopedSlots: { customRender: 'fileName' },
|
||||
width: 200
|
||||
width: 400
|
||||
},
|
||||
{
|
||||
title: this.$t('fileDeclaration'),
|
||||
@@ -393,7 +393,7 @@
|
||||
ellipsis: true,
|
||||
dataIndex: 'fileDescription',
|
||||
scopedSlots: { customRender: 'projectName' },
|
||||
width: 300
|
||||
width: 400
|
||||
},
|
||||
{
|
||||
title: this.$t('uploadedBy'),
|
||||
@@ -412,14 +412,14 @@
|
||||
align: 'left',
|
||||
ellipsis: true,
|
||||
dataIndex: 'createTime',
|
||||
width: 250
|
||||
width: 150
|
||||
},
|
||||
{
|
||||
title: this.$t('operation'),
|
||||
align: 'left',
|
||||
fixed: 'right',
|
||||
ellipsis: true,
|
||||
width: 250,
|
||||
width: 150,
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
|
||||
@@ -329,6 +329,13 @@
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
projectVersion:[
|
||||
{
|
||||
required: true,
|
||||
message: this.$t('projectVersion') + this.$t('cannotEmpty'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
digitalPlatform: [
|
||||
{
|
||||
max: 100,
|
||||
|
||||
+6
@@ -21,6 +21,7 @@
|
||||
<a-form-model-item class="itemModel" :prop="this.formInline.id?'':'serialNumber'">
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('regulationNo')"
|
||||
optionFilterProp="label"
|
||||
v-if="!this.formInline.id"
|
||||
@change="serialNumberChange"
|
||||
:disabled="this.formInline.id?true:false"
|
||||
showSearch
|
||||
@@ -35,6 +36,11 @@
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<a-input class="box-input"
|
||||
:disabled="true"
|
||||
v-else
|
||||
v-model.trim="formInline.serialNumber"
|
||||
:placeholder="$t('PleaseEnter')+this.$t('regulationNo')"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
|
||||
@@ -513,6 +513,7 @@ export default {
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
projectInfoClick(item){
|
||||
item.projectName = item.showName
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/ProjectDetails',
|
||||
query: item
|
||||
|
||||
Reference in New Issue
Block a user