Merge remote-tracking branch 'origin/dev_2nd_LCYH' into dev_2nd_LCYH
# Conflicts: # jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectCertificationInventoryEOController.java # jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectCertificationInventoryEOServiceImpl.java
This commit is contained in:
+7
@@ -255,4 +255,11 @@ public class ProjectCertificationInventoryEOController extends JeroController<Pr
|
|||||||
public void exportTemplate(ProjectCertificationInventoryEO projectCertificationInventoryEO, HttpServletResponse response, HttpServletRequest request) throws Exception {
|
public void exportTemplate(ProjectCertificationInventoryEO projectCertificationInventoryEO, HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||||
projectCertificationInventoryEOService.exportTemplate(projectCertificationInventoryEO,response,request);
|
projectCertificationInventoryEOService.exportTemplate(projectCertificationInventoryEO,response,request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@AutoLog(value = "项目库-认证清单表-调取添加")
|
||||||
|
@ApiOperation(value="项目库-认证清单表-调取添加", notes="项目库-认证清单表-调取添加")
|
||||||
|
@PostMapping(value = "/callAdd")
|
||||||
|
public Result<?> callAdd(@RequestBody JSONObject json) {
|
||||||
|
return this.projectCertificationInventoryEOService.callAdd(json);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+7
@@ -177,4 +177,11 @@ public interface IProjectCertificationInventoryEOService extends IService<Projec
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Result<?> updateConfigItemBatch(JSONObject json);
|
Result<?> updateConfigItemBatch(JSONObject json);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 调取添加
|
||||||
|
* @param json
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
Result<?> callAdd(JSONObject json);
|
||||||
}
|
}
|
||||||
|
|||||||
+44
-2
@@ -12,6 +12,9 @@ import com.jero.common.constant.enums.CutEnum;
|
|||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.common.util.DateUtils;
|
import com.jero.common.util.DateUtils;
|
||||||
|
import com.jero.modules.authDummy.entity.AuthDummyInventoryInfoEO;
|
||||||
|
import com.jero.modules.authDummy.service.IAuthDummyInventoryBaseEOService;
|
||||||
|
import com.jero.modules.authDummy.service.IAuthDummyInventoryInfoEOService;
|
||||||
import com.jero.modules.feishu.enums.TemplateInfoEnum2;
|
import com.jero.modules.feishu.enums.TemplateInfoEnum2;
|
||||||
import com.jero.modules.feishu.service.IFeishuService;
|
import com.jero.modules.feishu.service.IFeishuService;
|
||||||
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
|
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
|
||||||
@@ -99,6 +102,10 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
|
|||||||
private SysRoleMapper sysRoleMapper;
|
private SysRoleMapper sysRoleMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IFeishuService feishuService;
|
private IFeishuService feishuService;
|
||||||
|
@Autowired
|
||||||
|
private IAuthDummyInventoryBaseEOService authDummyInventoryBaseEOService;
|
||||||
|
@Autowired
|
||||||
|
private IAuthDummyInventoryInfoEOService authDummyInventoryInfoEOService;
|
||||||
|
|
||||||
|
|
||||||
@Value(value = "${jero.backUrl}")
|
@Value(value = "${jero.backUrl}")
|
||||||
@@ -1193,6 +1200,10 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
for (ProjectCertificationInventoryEO projectCertificationInventoryEO : projectCertificationInventoryEOList) {
|
||||||
|
projectCertificationInventoryEO.setFlowStatus(CertificationInventoryFlowStatusEnum.CERTIFICATION_RETURNED.getValue());
|
||||||
|
}
|
||||||
|
|
||||||
Map<String, Object> standNameAndItemName = this.getStandNameAndItemName(projectCertificationInventoryEOList);
|
Map<String, Object> standNameAndItemName = this.getStandNameAndItemName(projectCertificationInventoryEOList);
|
||||||
String standName = (String) standNameAndItemName.get("standName");
|
String standName = (String) standNameAndItemName.get("standName");
|
||||||
String itemName = (String) standNameAndItemName.get("itemName");
|
String itemName = (String) standNameAndItemName.get("itemName");
|
||||||
@@ -1710,8 +1721,6 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
|
|||||||
StringBuilder standNameSb = new StringBuilder();
|
StringBuilder standNameSb = new StringBuilder();
|
||||||
StringBuilder itemNameSb = new StringBuilder();
|
StringBuilder itemNameSb = new StringBuilder();
|
||||||
for (ProjectCertificationInventoryEO projectCertificationInventoryEO : projectCertificationInventoryEOList) {
|
for (ProjectCertificationInventoryEO projectCertificationInventoryEO : projectCertificationInventoryEOList) {
|
||||||
projectCertificationInventoryEO.setFlowStatus(CertificationInventoryFlowStatusEnum.CERTIFICATION_RETURNED.getValue());
|
|
||||||
|
|
||||||
if(StringUtils.isNotEmpty(projectCertificationInventoryEO.getInspectionItem())){
|
if(StringUtils.isNotEmpty(projectCertificationInventoryEO.getInspectionItem())){
|
||||||
itemNameSb.append(projectCertificationInventoryEO.getInspectionItem()).append(",");
|
itemNameSb.append(projectCertificationInventoryEO.getInspectionItem()).append(",");
|
||||||
}
|
}
|
||||||
@@ -1785,6 +1794,39 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
|
|||||||
this.updateBatchById(projectCertificationInventoryEOList);
|
this.updateBatchById(projectCertificationInventoryEOList);
|
||||||
return Result.OK("修改配置成功!");
|
return Result.OK("修改配置成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Result<?> callAdd(JSONObject json) {
|
||||||
|
String authDummyInventoryBaseId = json.getString("authDummyInventoryBaseId");
|
||||||
|
if(StringUtils.isEmpty(authDummyInventoryBaseId)){
|
||||||
|
throw new JeroBootException("请选择一个认证虚拟清单进行操作!");
|
||||||
|
}
|
||||||
|
|
||||||
|
String authDummyInventoryInfoIds = json.getString("authDummyInventoryInfoIds");
|
||||||
|
if(StringUtils.isEmpty(authDummyInventoryInfoIds)){
|
||||||
|
throw new JeroBootException("至少选择一条数据进行调取!");
|
||||||
|
}
|
||||||
|
|
||||||
|
String projectLibraryId = json.getString("projectLibraryId");
|
||||||
|
|
||||||
|
QueryWrapper<AuthDummyInventoryInfoEO> authDummyInfoQueryWrap = new QueryWrapper<>();
|
||||||
|
authDummyInfoQueryWrap.lambda().in(AuthDummyInventoryInfoEO::getId,authDummyInventoryInfoIds.split(","));
|
||||||
|
List<AuthDummyInventoryInfoEO> authDummyInventoryInfoEOList = this.authDummyInventoryInfoEOService.list(authDummyInfoQueryWrap);
|
||||||
|
|
||||||
|
if(CollectionUtils.isNotEmpty(authDummyInventoryInfoEOList)){
|
||||||
|
List<ProjectCertificationInventoryEO> projectCertificationInventoryEOList = new ArrayList<>();
|
||||||
|
for (AuthDummyInventoryInfoEO authDummyInventoryInfoEO : authDummyInventoryInfoEOList) {
|
||||||
|
ProjectCertificationInventoryEO projectCertificationInventoryEOTemp = new ProjectCertificationInventoryEO();
|
||||||
|
BeanUtils.copyProperties(authDummyInventoryInfoEO,projectCertificationInventoryEOTemp);
|
||||||
|
|
||||||
|
projectCertificationInventoryEOTemp.setProjectLibraryId(projectLibraryId);
|
||||||
|
projectCertificationInventoryEOList.add(projectCertificationInventoryEOTemp);
|
||||||
|
}
|
||||||
|
this.saveBatch(projectCertificationInventoryEOList);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Result.OK("调取成功!");
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 模板下载
|
* 模板下载
|
||||||
* @param projectCertificationInventoryEO
|
* @param projectCertificationInventoryEO
|
||||||
|
|||||||
+157
-53
@@ -93,7 +93,46 @@
|
|||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="Required">*</span>
|
||||||
|
<span class="title-text-text" :title="$t('configurationItem')">{{$t('configurationItem')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item
|
||||||
|
class="itemModel"
|
||||||
|
:prop="'dataList.'+index+'.configItem'"
|
||||||
|
:rules="[{ required: true, message: $t('configurationItem') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||||
|
>
|
||||||
|
<j-dict-select-tag class="box-input" v-model="item.configItem"
|
||||||
|
@input="handleInput('dataList.'+index+'.configItem')"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('configurationItem')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4'"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="Required">*</span>
|
||||||
|
<span class="title-text-text"
|
||||||
|
:title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item class="itemModel"
|
||||||
|
:prop="'dataList.'+index+'.dutyTerritory'"
|
||||||
|
:rules="[{ required: true, message: $t('areaOfResponsibility') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||||
|
>
|
||||||
|
<j-dict-select-tag class="box-input" v-model="item.dutyTerritory"
|
||||||
|
@input="handleInput('dataList.'+index+'.dutyTerritory')"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
@@ -141,25 +180,6 @@
|
|||||||
</a-row>
|
</a-row>
|
||||||
|
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :span="12">
|
|
||||||
<div class="box-title-text">
|
|
||||||
<div class="title-text">
|
|
||||||
<span class="Required">*</span>
|
|
||||||
<span class="title-text-text"
|
|
||||||
:title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
|
||||||
</div>
|
|
||||||
<a-form-model-item class="itemModel"
|
|
||||||
:prop="'dataList.'+index+'.dutyTerritory'"
|
|
||||||
:rules="[{ required: true, message: $t('areaOfResponsibility') + $t('cannotEmpty'), trigger: 'change'},]"
|
|
||||||
>
|
|
||||||
<j-dict-select-tag class="box-input" v-model="item.dutyTerritory"
|
|
||||||
@input="handleInput('dataList.'+index+'.dutyTerritory')"
|
|
||||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
|
||||||
:type="'select'"
|
|
||||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
|
||||||
</a-form-model-item>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
<div class="title-text">
|
<div class="title-text">
|
||||||
@@ -180,30 +200,52 @@
|
|||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
|
||||||
|
|
||||||
<a-row :gutter="24">
|
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
<div class="title-text">
|
<div class="title-text">
|
||||||
<span class="Required">*</span>
|
<span class="Required">*</span>
|
||||||
<span class="title-text-text" :title="$t('personLiable')">{{$t('personLiable')}}</span>
|
<span class="title-text-text" :title="$t('closingDate')">{{$t('closingDate')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel-multi"
|
<a-form-model-item class="itemModel"
|
||||||
:prop="'dataList.'+index+'.dutyPersonName'"
|
:prop="'dataList.'+index+'.endTime'"
|
||||||
:rules="[{ required: true, message: $t('personLiable') + $t('cannotEmpty'), trigger: 'change'},]"
|
:rules="[{ required: true, message: $t('closingDate') + $t('cannotEmpty'), trigger: 'change'},]"
|
||||||
>
|
>
|
||||||
<PersonnelSelection
|
<a-date-picker class="box-input"
|
||||||
:query="{db_field_name:'dutyPerson',db_field_txt:$t('personLiable'),subscript:index}"
|
:placeholder="$t('PleaseSelect')+$t('closingDate')"
|
||||||
:personneQuery="item"
|
@change="dateChange({db_field_name:'endTime'},index)"
|
||||||
:isSingleChoice="true"
|
format="YYYY-MM-DD"
|
||||||
@change="PersonnelSelectionChange"
|
:disabledDate="disabledDate"
|
||||||
:disabled="disabled"
|
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||||
v-model="item.dutyPersonName"/>
|
v-model="item.endTime"
|
||||||
|
style="width: 100%"/>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|
||||||
|
<!-- <a-row :gutter="24">-->
|
||||||
|
<!-- <a-col :span="12">-->
|
||||||
|
<!-- <div class="box-title-text">-->
|
||||||
|
<!-- <div class="title-text">-->
|
||||||
|
<!-- <span class="Required">*</span>-->
|
||||||
|
<!-- <span class="title-text-text" :title="$t('personLiable')">{{$t('personLiable')}}</span>-->
|
||||||
|
<!-- </div>-->
|
||||||
|
<!-- <a-form-model-item class="itemModel-multi"-->
|
||||||
|
<!-- :prop="'dataList.'+index+'.dutyPersonName'"-->
|
||||||
|
<!-- :rules="[{ required: true, message: $t('personLiable') + $t('cannotEmpty'), trigger: 'change'},]"-->
|
||||||
|
<!-- >-->
|
||||||
|
<!-- <PersonnelSelection-->
|
||||||
|
<!-- :query="{db_field_name:'dutyPerson',db_field_txt:$t('personLiable'),subscript:index}"-->
|
||||||
|
<!-- :personneQuery="item"-->
|
||||||
|
<!-- :isSingleChoice="true"-->
|
||||||
|
<!-- @change="PersonnelSelectionChange"-->
|
||||||
|
<!-- :disabled="disabled"-->
|
||||||
|
<!-- v-model="item.dutyPersonName"/>-->
|
||||||
|
<!-- </a-form-model-item>-->
|
||||||
|
<!-- </div>-->
|
||||||
|
<!-- </a-col>-->
|
||||||
|
<!-- </a-row>-->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -240,7 +282,44 @@
|
|||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
<a-row :gutter="24">
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="Required">*</span>
|
||||||
|
<span class="title-text-text" :title="$t('configurationItem')">{{$t('configurationItem')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item
|
||||||
|
class="itemModel"
|
||||||
|
:prop="'configItem'"
|
||||||
|
>
|
||||||
|
<j-dict-select-tag class="box-input" v-model="formInline.configItem"
|
||||||
|
@input="handleInput('configItem')"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('configurationItem')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4'"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="Required">*</span>
|
||||||
|
<span class="title-text-text"
|
||||||
|
:title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item class="itemModel"
|
||||||
|
:prop="'dutyTerritory'"
|
||||||
|
>
|
||||||
|
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
|
||||||
|
@input="handleInput('dutyTerritory')"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
@@ -286,24 +365,6 @@
|
|||||||
</a-row>
|
</a-row>
|
||||||
|
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
<a-col :span="12">
|
|
||||||
<div class="box-title-text">
|
|
||||||
<div class="title-text">
|
|
||||||
<span class="Required">*</span>
|
|
||||||
<span class="title-text-text"
|
|
||||||
:title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
|
|
||||||
</div>
|
|
||||||
<a-form-model-item class="itemModel"
|
|
||||||
:prop="'dutyTerritory'"
|
|
||||||
>
|
|
||||||
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
|
|
||||||
@input="handleInput('dutyTerritory')"
|
|
||||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
|
||||||
:type="'select'"
|
|
||||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
|
||||||
</a-form-model-item>
|
|
||||||
</div>
|
|
||||||
</a-col>
|
|
||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
<div class="title-text">
|
<div class="title-text">
|
||||||
@@ -323,6 +384,26 @@
|
|||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<a-col :span="12">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="Required">*</span>
|
||||||
|
<span class="title-text-text" :title="$t('closingDate')">{{$t('closingDate')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item class="itemModel"
|
||||||
|
:prop="'endTime'"
|
||||||
|
>
|
||||||
|
<a-date-picker class="box-input"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('closingDate')"
|
||||||
|
@change="dateChange({db_field_name:'endTime'})"
|
||||||
|
format="YYYY-MM-DD"
|
||||||
|
:disabledDate="disabledDate"
|
||||||
|
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||||
|
v-model="formInline.endTime"
|
||||||
|
style="width: 100%"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|
||||||
<a-row :gutter="24">
|
<a-row :gutter="24">
|
||||||
@@ -377,6 +458,7 @@
|
|||||||
import uploadFile from '@/components/uploadFile/file'
|
import uploadFile from '@/components/uploadFile/file'
|
||||||
import { getAction, postAction, downloadFile, putAction } from '@/api/manage'
|
import { getAction, postAction, downloadFile, putAction } from '@/api/manage'
|
||||||
import { mapGetters } from 'vuex'
|
import { mapGetters } from 'vuex'
|
||||||
|
import moment from 'moment'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'addModel',
|
name: 'addModel',
|
||||||
@@ -450,7 +532,17 @@
|
|||||||
message: this.$t('personLiable') + this.$t('cannotEmpty'),
|
message: this.$t('personLiable') + this.$t('cannotEmpty'),
|
||||||
trigger: 'change'
|
trigger: 'change'
|
||||||
}
|
}
|
||||||
]
|
],
|
||||||
|
endTime:[
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: this.$t('closingDate') + this.$t('cannotEmpty'),
|
||||||
|
trigger: 'change'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
configItem:[
|
||||||
|
{ required: true, message: this.$t('configurationItem') + this.$t('cannotEmpty'), trigger: 'change' },
|
||||||
|
],
|
||||||
},
|
},
|
||||||
disabled: false,
|
disabled: false,
|
||||||
projectNameList: [],
|
projectNameList: [],
|
||||||
@@ -471,6 +563,18 @@
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
...mapGetters(['userInfo']),
|
...mapGetters(['userInfo']),
|
||||||
|
disabledDate(current) {
|
||||||
|
return current && current < moment().subtract(1, 'day')
|
||||||
|
},
|
||||||
|
dateChange(item,index) {
|
||||||
|
if (index){
|
||||||
|
this.formInline.dataList[index][item.db_field_name] = this.formInline.dataList[index][item.db_field_name] ? moment(this.formInline.dataList[index][item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||||
|
|
||||||
|
}else{
|
||||||
|
this.formInline[item.db_field_name] = this.formInline[item.db_field_name] ? moment(this.formInline[item.db_field_name]).format('YYYY-MM-DD') : ''
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
getDeliverableTree() {
|
getDeliverableTree() {
|
||||||
getAction('/sys/category/getDeliverableTree', {}).then((res) => {
|
getAction('/sys/category/getDeliverableTree', {}).then((res) => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
|
|||||||
+93
-40
@@ -17,19 +17,11 @@
|
|||||||
<span class="title-text-text" :title="$t('configurationItem')">{{$t('configurationItem')}}</span>
|
<span class="title-text-text" :title="$t('configurationItem')">{{$t('configurationItem')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel">
|
<a-form-model-item class="itemModel">
|
||||||
<a-select :placeholder="$t('PleaseSelect')+$t('configurationItem')"
|
<j-dict-select-tag class="box-input" v-model="formInline.configItem"
|
||||||
class="box-input"
|
@input="handleInput('configItem')"
|
||||||
allowClear
|
:placeholder="$t('PleaseSelect')+$t('configurationItem')"
|
||||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
:type="'select'"
|
||||||
v-model="formInline.configItem">
|
:triggerChange="false" :dictCode="'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4'"/>
|
||||||
<a-select-option v-for="(item, key) in configurationItemList"
|
|
||||||
:key="item.key"
|
|
||||||
:value="item.value">
|
|
||||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
|
||||||
{{ item.label }}
|
|
||||||
</span>
|
|
||||||
</a-select-option>
|
|
||||||
</a-select>
|
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -74,15 +66,20 @@
|
|||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
<div class="title-text">
|
<div class="title-text">
|
||||||
<span class="title-text-text" :title="$t('personLiable')">{{$t('personLiable')}}</span>
|
<span class="title-text-text" :title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel-multi">
|
<a-form-model-item class="itemModel-multi">
|
||||||
<PersonnelSelection :query="{db_field_name:'dutyPerson',db_field_txt:$t('personLiable')}"
|
<a-tree-select
|
||||||
:isSingleChoice="true"
|
tree-node-filter-prop="title"
|
||||||
:personneQuery="formInline"
|
v-model="formInline.deliverableType"
|
||||||
v-if="visible"
|
:maxTagCount="1"
|
||||||
@change="PersonnelSelectionChange"
|
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||||
v-model="formInline.dutyPersonName"/>
|
class="box-input"
|
||||||
|
style="width: 100%"
|
||||||
|
:tree-data="DeliverableTreeList"
|
||||||
|
tree-checkable
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
||||||
|
/>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -91,25 +88,52 @@
|
|||||||
<a-col :span="12">
|
<a-col :span="12">
|
||||||
<div class="box-title-text">
|
<div class="box-title-text">
|
||||||
<div class="title-text">
|
<div class="title-text">
|
||||||
<span class="title-text-text" :title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
|
<span class="title-text-text" :title="$t('closingDate')">{{$t('closingDate')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel">
|
<a-form-model-item class="itemModel"
|
||||||
<a-select :placeholder="$t('PleaseSelect')+$t('typeOfDeliverables')"
|
:prop="'endTime'"
|
||||||
class="box-input"
|
>
|
||||||
allowClear
|
<a-date-picker class="box-input"
|
||||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
:placeholder="$t('PleaseSelect')+$t('closingDate')"
|
||||||
v-model="formInline.deliverableType">
|
@change="dateChange({db_field_name:'endTime'})"
|
||||||
<a-select-option v-for="(item, key) in typeOfDeliverablesList"
|
format="YYYY-MM-DD"
|
||||||
:key="item.key"
|
:disabledDate="disabledDate"
|
||||||
:value="item.value">
|
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
v-model="formInline.endTime"
|
||||||
{{ item.label }}
|
style="width: 100%"/>
|
||||||
</span>
|
|
||||||
</a-select-option>
|
|
||||||
</a-select>
|
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
<a-col :span="12" v-if="roleSwitchingCode == 2">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="title-text-text"
|
||||||
|
:title="$t('CertificationProgress')">{{$t('CertificationProgress')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item class="itemModel">
|
||||||
|
<j-dict-select-tag class="box-input" v-model="formInline.certificationProgress"
|
||||||
|
@input="handleInput('certificationProgress')"
|
||||||
|
:placeholder="$t('PleaseSelect')+$t('CertificationProgress')"
|
||||||
|
:type="'select'"
|
||||||
|
:triggerChange="false" :dictCode="'certification_progress'"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
<a-row :gutter="24" v-if="name == $t('BatchSetting') && roleSwitchingCode == 2">
|
||||||
|
<a-col :span="24">
|
||||||
|
<div class="box-title-text">
|
||||||
|
<div class="title-text">
|
||||||
|
<span class="title-text-text"
|
||||||
|
:title="$t('remarks')">{{$t('remarks')}}</span>
|
||||||
|
</div>
|
||||||
|
<a-form-model-item class="itemModel" :prop="'certificationProgressRemark'">
|
||||||
|
<a-textarea
|
||||||
|
:placeholder="$t('PleaseEnter')+$t('remarks')"
|
||||||
|
v-model="formInline.certificationProgressRemark" :rows="4"/>
|
||||||
|
</a-form-model-item>
|
||||||
|
</div>
|
||||||
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
</a-form-model>
|
</a-form-model>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
@@ -122,7 +146,7 @@
|
|||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'batSetting',
|
name: 'batSetting',
|
||||||
props: ['url'],
|
props: ['url','roleSwitchingCode'],
|
||||||
components: {
|
components: {
|
||||||
PersonnelSelection
|
PersonnelSelection
|
||||||
},
|
},
|
||||||
@@ -131,19 +155,36 @@
|
|||||||
visible: false,
|
visible: false,
|
||||||
confirmLoading: false,
|
confirmLoading: false,
|
||||||
formInline: {},
|
formInline: {},
|
||||||
rules: {},
|
rules: {
|
||||||
|
|
||||||
|
},
|
||||||
ids: [],
|
ids: [],
|
||||||
configurationItemList: [],
|
configurationItemList: [],
|
||||||
engineeringInterfacePersonList: [],
|
engineeringInterfacePersonList: [],
|
||||||
typeOfDeliverablesList: [],
|
typeOfDeliverablesList: [],
|
||||||
name: ''
|
name: '',
|
||||||
|
DeliverableTreeList: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
disabledDate(current) {
|
||||||
|
return current && current < moment().subtract(1, 'day')
|
||||||
|
},
|
||||||
|
|
||||||
|
getDeliverableTree() {
|
||||||
|
getAction('/sys/category/getDeliverableTree', {}).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.DeliverableTreeList = res.result
|
||||||
|
} else {
|
||||||
|
this.DeliverableTreeList = []
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
edit(data, name) {
|
edit(data, name) {
|
||||||
this.visible = true
|
this.visible = true
|
||||||
|
this.getDeliverableTree()
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.ids = data || []
|
this.ids = data || []
|
||||||
this.formInline = {}
|
this.formInline = {}
|
||||||
@@ -163,12 +204,24 @@
|
|||||||
},
|
},
|
||||||
handleOkOne() {
|
handleOkOne() {
|
||||||
let ids = JSON.parse(JSON.stringify(this.ids))
|
let ids = JSON.parse(JSON.stringify(this.ids))
|
||||||
|
let formInline = JSON.parse(JSON.stringify(this.formInline))
|
||||||
|
Object.keys(formInline).forEach(res => {
|
||||||
|
if (formInline[res] && formInline[res] instanceof Array) {
|
||||||
|
formInline[res] = formInline[res].join(',')
|
||||||
|
}
|
||||||
|
})
|
||||||
let query = {
|
let query = {
|
||||||
ids: ids.join(','),
|
ids: ids.join(','),
|
||||||
...this.formInline
|
...formInline
|
||||||
}
|
}
|
||||||
|
let url = ''
|
||||||
this.confirmLoading = true
|
this.confirmLoading = true
|
||||||
postAction(this.url.setBatch, query).then((res) => {
|
if (this.name == this.$t('changeSetting')) {
|
||||||
|
url = '/project/projectCertificationInventoryEO/updateConfigItemBatch'
|
||||||
|
} else {
|
||||||
|
url = this.url.setBatch
|
||||||
|
}
|
||||||
|
postAction(url, query).then((res) => {
|
||||||
if (res.success) {
|
if (res.success) {
|
||||||
this.$message.success(this.$t('OperationSuccessful'))
|
this.$message.success(this.$t('OperationSuccessful'))
|
||||||
this.visible = false
|
this.visible = false
|
||||||
|
|||||||
@@ -54,10 +54,10 @@
|
|||||||
<a-button class="box-button" type="primary" @click="searchQuery">{{ $t('query') }}</a-button>
|
<a-button class="box-button" type="primary" @click="searchQuery">{{ $t('query') }}</a-button>
|
||||||
<a-button class="box-button" style="margin-left: 8px"
|
<a-button class="box-button" style="margin-left: 8px"
|
||||||
@click="searchReset">{{ $t('reset') }}</a-button>
|
@click="searchReset">{{ $t('reset') }}</a-button>
|
||||||
<a @click="handleToggleSearch" style="margin-left: 8px">
|
<!-- <a @click="handleToggleSearch" style="margin-left: 8px">-->
|
||||||
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
|
<!-- {{ !toggleSearchStatus ? $t('open') : $t('away') }}-->
|
||||||
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
|
<!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
|
||||||
</a>
|
<!-- </a>-->
|
||||||
</a-col>
|
</a-col>
|
||||||
</span>
|
</span>
|
||||||
</a-row>
|
</a-row>
|
||||||
@@ -347,7 +347,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<transferList :url="url" @transferListForm="transferListForm" ref="transferListRef"/>
|
<transferList :url="url" @transferListForm="transferListForm" ref="transferListRef"/>
|
||||||
<certificationDirectory :isDisplayNum="isDisplayNum" :url="url" ref="certificationDirectoryRef"/>
|
<certificationDirectory :isDisplayNum="isDisplayNum" :url="url" ref="certificationDirectoryRef"/>
|
||||||
<batSetting :url="url" ref="batSettingRef" @batSettingForm="batSettingForm"/>
|
<batSetting :url="url" ref="batSettingRef" :roleSwitchingCode="roleSwitchingCode" @batSettingForm="batSettingForm"/>
|
||||||
<addModel ref="addModelRef" @addModelForm="addModelForm"/>
|
<addModel ref="addModelRef" @addModelForm="addModelForm"/>
|
||||||
<modifyHistory ref="modifyHistoryRef"/>
|
<modifyHistory ref="modifyHistoryRef"/>
|
||||||
<uploadFile ref="uploadFile" :isMultiple="true" :disabled="disabled" @uploadSuccess="uploadSuccess"></uploadFile>
|
<uploadFile ref="uploadFile" :isMultiple="true" :disabled="disabled" @uploadSuccess="uploadSuccess"></uploadFile>
|
||||||
@@ -473,7 +473,51 @@
|
|||||||
'NA': 'notInvolvedColor',
|
'NA': 'notInvolvedColor',
|
||||||
'Not start': 'submittedColor'
|
'Not start': 'submittedColor'
|
||||||
},
|
},
|
||||||
fieldList: [],
|
fieldList: [
|
||||||
|
{
|
||||||
|
type: 'string',
|
||||||
|
value: 'category',
|
||||||
|
text: this.$t('category')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'string',
|
||||||
|
value: 'inspectionItem',
|
||||||
|
text: this.$t('inspectionItems')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: '',
|
||||||
|
value: 'configItem',
|
||||||
|
text: this.$t('configurationItem'),
|
||||||
|
dictCode: 'ren4_zheng4_qing1_dan1_-_pei4_zhi4_xiang4'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'string',
|
||||||
|
value: 'wvtaId',
|
||||||
|
text: 'WVTA ID'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'string',
|
||||||
|
value: 'serialNumber',
|
||||||
|
text: this.$t('standardNo')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'Personnel',
|
||||||
|
value: 'sdt',
|
||||||
|
valueName: 'sdtName',
|
||||||
|
text: this.$t('engineeringInterfacePerson')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'Personnel',
|
||||||
|
value: 'dutyPerson',
|
||||||
|
valueName: 'dutyPersonName',
|
||||||
|
text: this.$t('personLiable')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'date',
|
||||||
|
value: 'endTime',
|
||||||
|
text: this.$t('closingDate')
|
||||||
|
},
|
||||||
|
],
|
||||||
disabled: false,
|
disabled: false,
|
||||||
queryParamQuery: {},
|
queryParamQuery: {},
|
||||||
formInline: {},
|
formInline: {},
|
||||||
@@ -538,7 +582,7 @@
|
|||||||
{
|
{
|
||||||
title: this.$t('configurationItem'),
|
title: this.$t('configurationItem'),
|
||||||
align: 'left',
|
align: 'left',
|
||||||
dataIndex: 'configItem',
|
dataIndex: 'configItem_dictText',
|
||||||
width: 180,
|
width: 180,
|
||||||
ellipsis: true
|
ellipsis: true
|
||||||
},
|
},
|
||||||
@@ -1187,6 +1231,8 @@
|
|||||||
this.$message.success(this.$t('OperationSuccessful'))
|
this.$message.success(this.$t('OperationSuccessful'))
|
||||||
this.visibleRoleSwitching = false
|
this.visibleRoleSwitching = false
|
||||||
this.confirmLoadingRoleSwitching = false
|
this.confirmLoadingRoleSwitching = false
|
||||||
|
this.selectedRowKeysList = []
|
||||||
|
this.selectedRowKeys = []
|
||||||
this.getList()
|
this.getList()
|
||||||
this.$emit('getRoleSwitch', this.roleSwitchingCode)
|
this.$emit('getRoleSwitch', this.roleSwitchingCode)
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user