|
@@ -48,7 +48,7 @@
|
|
<span class="ml-1">提示</span>
|
|
<span class="ml-1">提示</span>
|
|
</div>
|
|
</div>
|
|
<div class="text-gray-400 tip-item">1、灰色框代表可通过系统识别计算,公式自动引用,可通过公式计算少量数据,(表头数据及简单),也可只填写白色框数据</div>
|
|
<div class="text-gray-400 tip-item">1、灰色框代表可通过系统识别计算,公式自动引用,可通过公式计算少量数据,(表头数据及简单),也可只填写白色框数据</div>
|
|
- <div class="text-gray-400 tip-item">2、系统支持键盘中,shift + tab键向上一个填报框切换,tab向下一个填报框切换。暂不支持上下按键切换输入框</div>
|
|
|
|
|
|
+ <div class="text-gray-400 tip-item">2、系统支持键盘中,shift + tab键向上一个填报框切换,tab向下一个填报框切换。Shift + 上 ( ↑ )、下 ( ↓ )、左 ( ← )、右 ( → )键,切换填报输入框焦点。 </div>
|
|
<div class="table-tip-foot">
|
|
<div class="table-tip-foot">
|
|
<div class="tip-left-btn">
|
|
<div class="tip-left-btn">
|
|
<HcTooltip keys="wbs_import_table">
|
|
<HcTooltip keys="wbs_import_table">
|
|
@@ -152,7 +152,7 @@
|
|
:autoExpandKeys="CTDTreeAutoExpandKeys"
|
|
:autoExpandKeys="CTDTreeAutoExpandKeys"
|
|
@node-click="CTDElTreeClick"
|
|
@node-click="CTDElTreeClick"
|
|
:indent="0"
|
|
:indent="0"
|
|
-
|
|
|
|
|
|
+
|
|
>
|
|
>
|
|
</ElTree>
|
|
</ElTree>
|
|
</el-scrollbar>
|
|
</el-scrollbar>
|
|
@@ -181,7 +181,7 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
|
|
+
|
|
|
|
|
|
</HcDialog>
|
|
</HcDialog>
|
|
<!-- 选择要插入的数据 -->
|
|
<!-- 选择要插入的数据 -->
|
|
@@ -199,7 +199,7 @@
|
|
<template #tempLow="{row}">{{row['tempLow']}} ~ {{row['tempHigh']}}</template>
|
|
<template #tempLow="{row}">{{row['tempLow']}} ~ {{row['tempHigh']}}</template>
|
|
<template #action="{row}">
|
|
<template #action="{row}">
|
|
<el-checkbox size="large" @change="insertDataTableCheck(row)"/>
|
|
<el-checkbox size="large" @change="insertDataTableCheck(row)"/>
|
|
-
|
|
|
|
|
|
+
|
|
</template>
|
|
</template>
|
|
</HcTable>
|
|
</HcTable>
|
|
</div> -->
|
|
</div> -->
|
|
@@ -235,12 +235,12 @@
|
|
<div class="copy-node-many-box" v-if="CopyModalType=== '1'">
|
|
<div class="copy-node-many-box" v-if="CopyModalType=== '1'">
|
|
<div class="copy-node-many-tree">
|
|
<div class="copy-node-many-tree">
|
|
<el-scrollbar>
|
|
<el-scrollbar>
|
|
- <WbsTree
|
|
|
|
- :projectId="projectId"
|
|
|
|
- :contractId="contractId"
|
|
|
|
- @nodeTap="wbsElTreeClick"
|
|
|
|
|
|
+ <WbsTree
|
|
|
|
+ :projectId="projectId"
|
|
|
|
+ :contractId="contractId"
|
|
|
|
+ @nodeTap="wbsElTreeClick"
|
|
@nodeLoading="ElTreeNodeLoading"
|
|
@nodeLoading="ElTreeNodeLoading"
|
|
-
|
|
|
|
|
|
+
|
|
/>
|
|
/>
|
|
</el-scrollbar>
|
|
</el-scrollbar>
|
|
</div>
|
|
</div>
|
|
@@ -284,7 +284,7 @@
|
|
>
|
|
>
|
|
</ElTree>
|
|
</ElTree>
|
|
<!-- 第三方树 -->
|
|
<!-- 第三方树 -->
|
|
- <ElTree
|
|
|
|
|
|
+ <ElTree
|
|
v-else
|
|
v-else
|
|
class="hc-tree-node" ref="ElTreeRef2" :props="thirdElTreeProps" :data="thirdtreeDatas" highlight-current accordion node-key="id"
|
|
class="hc-tree-node" ref="ElTreeRef2" :props="thirdElTreeProps" :data="thirdtreeDatas" highlight-current accordion node-key="id"
|
|
@node-click="thirdtreeDatasElTreeClick" :indent="0">
|
|
@node-click="thirdtreeDatasElTreeClick" :indent="0">
|
|
@@ -319,19 +319,19 @@
|
|
<span :class="[row?.isSelectedStatus===1?'text-green':'']">{{row?.reportNo}}</span>
|
|
<span :class="[row?.isSelectedStatus===1?'text-green':'']">{{row?.reportNo}}</span>
|
|
</template>
|
|
</template>
|
|
</HcTable>
|
|
</HcTable>
|
|
-
|
|
|
|
|
|
+
|
|
</div>
|
|
</div>
|
|
<div class="dialog-pages">
|
|
<div class="dialog-pages">
|
|
<HcPages :pages="filesearchFormPage" @change="filesearchFormPageChange"/>
|
|
<HcPages :pages="filesearchFormPage" @change="filesearchFormPageChange"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
-
|
|
|
|
|
|
+
|
|
|
|
|
|
</HcDialog>
|
|
</HcDialog>
|
|
<!-- 公式参数配置 -->
|
|
<!-- 公式参数配置 -->
|
|
<HcDialog :show="formulaModal" title="公式参数配置" widths="84%" saveText="保存" @close="formulaModal = false" @save="PanelSaveClick">
|
|
<HcDialog :show="formulaModal" title="公式参数配置" widths="84%" saveText="保存" @close="formulaModal = false" @save="PanelSaveClick">
|
|
-
|
|
|
|
|
|
+
|
|
<div v-if="componentDetail['type']==='radio'">
|
|
<div v-if="componentDetail['type']==='radio'">
|
|
<el-form ref="formIDVFRef" :model="formulaModalinfo" label-width="auto" size="large" >
|
|
<el-form ref="formIDVFRef" :model="formulaModalinfo" label-width="auto" size="large" >
|
|
<el-form-item :label="componentDetail['info']['label']">
|
|
<el-form-item :label="componentDetail['info']['label']">
|
|
@@ -399,7 +399,7 @@ const props = defineProps({
|
|
wbsTempId: {
|
|
wbsTempId: {
|
|
type: [String,Number],
|
|
type: [String,Number],
|
|
default: ''
|
|
default: ''
|
|
- },
|
|
|
|
|
|
+ },
|
|
tenantId: {
|
|
tenantId: {
|
|
type: [String,Number],
|
|
type: [String,Number],
|
|
default: ''
|
|
default: ''
|
|
@@ -471,12 +471,12 @@ watch(() => [
|
|
props.wbsType,
|
|
props.wbsType,
|
|
props.status
|
|
props.status
|
|
], ([expandKeys, UserProjectId, UserContractId, UserWbsTempId, UserTenantId, UserIdPrefix, wbs_type,val]) => {
|
|
], ([expandKeys, UserProjectId, UserContractId, UserWbsTempId, UserTenantId, UserIdPrefix, wbs_type,val]) => {
|
|
-
|
|
|
|
|
|
+
|
|
projectId.value = UserProjectId
|
|
projectId.value = UserProjectId
|
|
contractId.value = UserContractId
|
|
contractId.value = UserContractId
|
|
wbsTempId.value = UserWbsTempId
|
|
wbsTempId.value = UserWbsTempId
|
|
tenantId.value = UserTenantId
|
|
tenantId.value = UserTenantId
|
|
-
|
|
|
|
|
|
+
|
|
wbsType.value = wbs_type
|
|
wbsType.value = wbs_type
|
|
isStatus.value = val
|
|
isStatus.value = val
|
|
})
|
|
})
|
|
@@ -517,7 +517,7 @@ const ActiveKey = ref([])
|
|
const formKeyIds = ref('')
|
|
const formKeyIds = ref('')
|
|
const formparentId=ref('')
|
|
const formparentId=ref('')
|
|
const CollapseChange = async (name) => {
|
|
const CollapseChange = async (name) => {
|
|
-
|
|
|
|
|
|
+
|
|
ActiveKey.value = name
|
|
ActiveKey.value = name
|
|
let names=[]
|
|
let names=[]
|
|
if(name.length>0){
|
|
if(name.length>0){
|
|
@@ -527,7 +527,7 @@ const CollapseChange = async (name) => {
|
|
getOffsetTop(name);
|
|
getOffsetTop(name);
|
|
const index = names[1]
|
|
const index = names[1]
|
|
const item = listDatas.value[index]
|
|
const item = listDatas.value[index]
|
|
-
|
|
|
|
|
|
+
|
|
formKeyIds.value = item.pkeyId ? item.pkeyId + '' : ''
|
|
formKeyIds.value = item.pkeyId ? item.pkeyId + '' : ''
|
|
formparentId.value= item.parentId ? item.parentId + '' : ''
|
|
formparentId.value= item.parentId ? item.parentId + '' : ''
|
|
if (!item.isTableFormRender) {
|
|
if (!item.isTableFormRender) {
|
|
@@ -758,9 +758,9 @@ const tabTypeChange = ({key}) => {
|
|
}else{
|
|
}else{
|
|
placeholderType='试验报告单'
|
|
placeholderType='试验报告单'
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
getSearchNodeTables()
|
|
getSearchNodeTables()
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
const insertDataTableLoading=ref(false)
|
|
const insertDataTableLoading=ref(false)
|
|
const insertDataTableColumn = ref(
|
|
const insertDataTableColumn = ref(
|
|
@@ -1010,17 +1010,17 @@ const handleMenuSelect = ({key}) => {
|
|
fileModal.value=true;
|
|
fileModal.value=true;
|
|
fileModalradio.value=1
|
|
fileModalradio.value=1
|
|
filedialogTableData.value=[]
|
|
filedialogTableData.value=[]
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
else if(key === 'formula'){
|
|
else if(key === 'formula'){
|
|
-
|
|
|
|
|
|
+
|
|
console.log('公式参数');
|
|
console.log('公式参数');
|
|
console.log(tableFormItemNode.value,'tableFormItemNode.value');
|
|
console.log(tableFormItemNode.value,'tableFormItemNode.value');
|
|
formulaModal.value=true
|
|
formulaModal.value=true
|
|
getPanel()
|
|
getPanel()
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
@@ -1034,7 +1034,7 @@ const getPanel= async () => {
|
|
pkeyId:pkeyIds,
|
|
pkeyId:pkeyIds,
|
|
|
|
|
|
}, false)
|
|
}, false)
|
|
-
|
|
|
|
|
|
+
|
|
if (!error && code === 200) {
|
|
if (!error && code === 200) {
|
|
componentDetail.value = getObjNullValue(data)
|
|
componentDetail.value = getObjNullValue(data)
|
|
} else {
|
|
} else {
|
|
@@ -1057,8 +1057,8 @@ const PanelSaveClick = async (item,index) => {
|
|
window?.$message?.success('操作成功')
|
|
window?.$message?.success('操作成功')
|
|
formulaModal.value=false;
|
|
formulaModal.value=false;
|
|
}
|
|
}
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
//插入设计值
|
|
//插入设计值
|
|
const IDVFModal = ref(false)
|
|
const IDVFModal = ref(false)
|
|
@@ -1218,13 +1218,13 @@ const filedialogTableSelection1 = (rows) => {
|
|
filetableCheckedKeys.value = rows.filter((item) => {
|
|
filetableCheckedKeys.value = rows.filter((item) => {
|
|
return (item??'') !== '';
|
|
return (item??'') !== '';
|
|
})
|
|
})
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
const filedialogTableSelection = (rows) => {
|
|
const filedialogTableSelection = (rows) => {
|
|
filetableCheckedKeys.value = rows.filter((item) => {
|
|
filetableCheckedKeys.value = rows.filter((item) => {
|
|
return (item??'') !== '';
|
|
return (item??'') !== '';
|
|
})
|
|
})
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
//确认关联试验文件
|
|
//确认关联试验文件
|
|
const savefileModal = ()=>{
|
|
const savefileModal = ()=>{
|
|
@@ -1239,8 +1239,8 @@ const savefileModal = ()=>{
|
|
}else{
|
|
}else{
|
|
window?.$message?.warning('请选择你要关联的文件')
|
|
window?.$message?.warning('请选择你要关联的文件')
|
|
}
|
|
}
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
const CTDdialogTableColumn = ref([
|
|
const CTDdialogTableColumn = ref([
|
|
{key:'reportNo', name: '报告编号'},
|
|
{key:'reportNo', name: '报告编号'},
|
|
@@ -1316,11 +1316,11 @@ const getfileNodeData = async ()=>{
|
|
filedialogTableData.value.forEach((item)=>{
|
|
filedialogTableData.value.forEach((item)=>{
|
|
if(item.isSelectedStatus===1){
|
|
if(item.isSelectedStatus===1){
|
|
defaultarr.push(item)
|
|
defaultarr.push(item)
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
tabtoggleSelection(defaultarr)
|
|
tabtoggleSelection(defaultarr)
|
|
})
|
|
})
|
|
-
|
|
|
|
|
|
+
|
|
} else {
|
|
} else {
|
|
filedialogTableData.value = []
|
|
filedialogTableData.value = []
|
|
filesearchFormPage.value.total = 0
|
|
filesearchFormPage.value.total = 0
|
|
@@ -1337,7 +1337,7 @@ const tabtoggleSelection=(rows)=> {
|
|
});
|
|
});
|
|
} else {
|
|
} else {
|
|
dialogTableRef1.value?.clearSelection();
|
|
dialogTableRef1.value?.clearSelection();
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
}
|
|
}
|
|
const outtabtoggleSelection=(rows)=> {
|
|
const outtabtoggleSelection=(rows)=> {
|
|
@@ -1346,7 +1346,7 @@ const outtabtoggleSelection=(rows)=> {
|
|
nextTick(()=>{
|
|
nextTick(()=>{
|
|
dialogTableRef2.value?.toggleRowSelection(row,true);
|
|
dialogTableRef2.value?.toggleRowSelection(row,true);
|
|
})
|
|
})
|
|
-
|
|
|
|
|
|
+
|
|
});
|
|
});
|
|
} else {
|
|
} else {
|
|
dialogTableRef2.value?.clearSelection();
|
|
dialogTableRef2.value?.clearSelection();
|
|
@@ -1362,9 +1362,9 @@ const thirdtabtoggleSelection=(rows)=> {
|
|
}else{
|
|
}else{
|
|
dialogTableRef.value?.toggleRowSelection(row,true);
|
|
dialogTableRef.value?.toggleRowSelection(row,true);
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
})
|
|
})
|
|
-
|
|
|
|
|
|
+
|
|
});
|
|
});
|
|
} else {
|
|
} else {
|
|
if(fileModalradio.value==2){
|
|
if(fileModalradio.value==2){
|
|
@@ -1372,7 +1372,7 @@ const thirdtabtoggleSelection=(rows)=> {
|
|
}else{
|
|
}else{
|
|
dialogTableRef.value?.clearSelection();
|
|
dialogTableRef.value?.clearSelection();
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -1390,7 +1390,7 @@ const getBussddataInfotrialData = async ()=>{
|
|
insertDataTable.value = getArrValue(data)
|
|
insertDataTable.value = getArrValue(data)
|
|
} else {
|
|
} else {
|
|
insertDataTable.value = []
|
|
insertDataTable.value = []
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
@@ -1400,7 +1400,7 @@ const getBussddataInfotrialData = async ()=>{
|
|
//取消关联数据
|
|
//取消关联数据
|
|
const cancelinsertData = async () => {
|
|
const cancelinsertData = async () => {
|
|
insertDataShow.value=false
|
|
insertDataShow.value=false
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
//确定关联试验数据数据
|
|
//确定关联试验数据数据
|
|
const submitinsertData = async () => {
|
|
const submitinsertData = async () => {
|
|
@@ -1510,7 +1510,7 @@ const getSearchNodeTables = async () => {
|
|
testReportData.value = getArrValue(data)
|
|
testReportData.value = getArrValue(data)
|
|
} else {
|
|
} else {
|
|
testReportData.value = []
|
|
testReportData.value = []
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1562,8 +1562,8 @@ const getthirdTreeDatas = async (type) => {
|
|
}else{
|
|
}else{
|
|
thirdtreeDatas.value = getArrValue(data['leftTree'])
|
|
thirdtreeDatas.value = getArrValue(data['leftTree'])
|
|
}
|
|
}
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
} else {
|
|
} else {
|
|
thirdtreeDatas.value = []
|
|
thirdtreeDatas.value = []
|
|
}
|
|
}
|
|
@@ -1595,14 +1595,14 @@ const getthirdTreetavleDatas = async () => {
|
|
filedialogTableData.value.forEach((item)=>{
|
|
filedialogTableData.value.forEach((item)=>{
|
|
if(item.isSelectedStatus===1){
|
|
if(item.isSelectedStatus===1){
|
|
defaultarr.push(item)
|
|
defaultarr.push(item)
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
if(fileModalradio===2){
|
|
if(fileModalradio===2){
|
|
outtabtoggleSelection(defaultarr)
|
|
outtabtoggleSelection(defaultarr)
|
|
}else{
|
|
}else{
|
|
thirdtabtoggleSelection(defaultarr)
|
|
thirdtabtoggleSelection(defaultarr)
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
})
|
|
})
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
@@ -1679,7 +1679,7 @@ const getOffsetTop = (key = '') => {
|
|
emit('offsetTop', dom?.offsetTop)
|
|
emit('offsetTop', dom?.offsetTop)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
} else {
|
|
} else {
|
|
emit('offsetTop', 0)
|
|
emit('offsetTop', 0)
|
|
}
|
|
}
|
|
@@ -1774,14 +1774,14 @@ table{
|
|
overflow: auto;
|
|
overflow: auto;
|
|
flex: 1;
|
|
flex: 1;
|
|
border: 8px solid #50545E;
|
|
border: 8px solid #50545E;
|
|
-
|
|
|
|
|
|
+
|
|
.hc-no-table-form {
|
|
.hc-no-table-form {
|
|
position: relative;
|
|
position: relative;
|
|
height: 100%;
|
|
height: 100%;
|
|
display: flex;
|
|
display: flex;
|
|
justify-content: center;
|
|
justify-content: center;
|
|
align-items: center;
|
|
align-items: center;
|
|
-
|
|
|
|
|
|
+
|
|
.table-form-no {
|
|
.table-form-no {
|
|
position: relative;
|
|
position: relative;
|
|
img {
|
|
img {
|