Merge branch 'cjw-dev' into shenzhen-dev

This commit is contained in:
Vce 2024-07-05 21:25:15 +08:00
commit ee3696dd60
4 changed files with 2452 additions and 58 deletions

View File

@ -229,6 +229,9 @@ export const selectHierarchyEnterpriseListApi = (params: {}) => {
export const getXzParentChildTaskListApi = (params: {}) => { export const getXzParentChildTaskListApi = (params: {}) => {
return http.post(BASEURL + `/xmgl/xzTaskProgress/getParentChildList`, params, { headers: { noLoading: true } }); return http.post(BASEURL + `/xmgl/xzTaskProgress/getParentChildList`, params, { headers: { noLoading: true } });
}; };
export const getXzMilestoneListApi = (params: {}) => {
return http.post(BASEURL + `/xmgl/xzMilestone/list`, params, { headers: { noLoading: true } });
};
// 甘特图接口结束位置 // 甘特图接口结束位置

View File

@ -124,10 +124,14 @@
<span>{{ item.name || "--" }}</span> <span>{{ item.name || "--" }}</span>
</el-tooltip> </el-tooltip>
</div> </div>
<div>{{ item.subjectName || "--" }}</div> <div>
<el-tooltip class="box-item" style="text-align:center" effect="dark" :content="item.subjectName" placement="top-start">
<span>{{ item.subjectName || '--' }}</span>
</el-tooltip>
</div>
<div style="width:180px"> <div style="width:180px">
<el-tooltip class="box-item" style="text-align:center" effect="dark" :content="item.title" placement="top-start"> <el-tooltip class="box-item" style="text-align:center" effect="dark" :content="item.title" placement="top-start">
<span>{{ item.title || "--" }}</span> <span>{{ item.title || '--' }}</span>
</el-tooltip> </el-tooltip>
</div> </div>
<div style="width: 350px">{{ item.trainBeginTime || "--" }} - {{ item.trainEndTime || "--" }}</div> <div style="width: 350px">{{ item.trainBeginTime || "--" }} - {{ item.trainEndTime || "--" }}</div>
@ -166,7 +170,11 @@
</div> </div>
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleDetailTab"> <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleDetailTab">
<el-tab-pane :label="'学习记录'" name="first"> <el-tab-pane :label="'学习记录'" name="first">
<div class="table-one" style="transform: translateY(-20px)"> <div class="searchInner">
<span style="margin-right:5px">姓名</span>
<el-input v-model="workerName" clearable size="small" style="width: 150px" @input="handleInput2" placeholder="请输入姓名" />
</div>
<div class="table-one" style="transform:translateY(10px)">
<div class="tabList" style="justify-content:space-around"> <div class="tabList" style="justify-content:space-around">
<div>序号</div> <div>序号</div>
<div>姓名</div> <div>姓名</div>
@ -176,7 +184,7 @@
<div>开始学习时间</div> <div>开始学习时间</div>
<div>结束学习时间</div> <div>结束学习时间</div>
</div> </div>
<el-scrollbar class="listBox" ref="refScrollbar" style="height: 370px"> <el-scrollbar class="listBox" ref="refScrollbar" style="height:370px;">
<div v-for="(item, index) in studyExamRecord" class="listStyle" :key="item" style="justify-content:space-around"> <div v-for="(item, index) in studyExamRecord" class="listStyle" :key="item" style="justify-content:space-around">
<div>{{ index + 1 }}</div> <div>{{ index + 1 }}</div>
<div>{{ item.workerName || "--" }}</div> <div>{{ item.workerName || "--" }}</div>
@ -214,7 +222,11 @@
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="'考试记录'" name="second"> <el-tab-pane :label="'考试记录'" name="second">
<div class="table-one" style="transform: translateY(-20px)"> <div class="searchInner">
<span style="margin-right:5px">姓名</span>
<el-input v-model="workerName" clearable size="small" style="width: 150px" @input="handleInput2" placeholder="请输入姓名" />
</div>
<div class="table-one" style="transform:translateY(10px)">
<div class="tabList" style="justify-content:space-around"> <div class="tabList" style="justify-content:space-around">
<div>序号</div> <div>序号</div>
<div>姓名</div> <div>姓名</div>
@ -232,17 +244,15 @@
<el-scrollbar class="listBox" ref="refScrollbar" style="height:370px"> <el-scrollbar class="listBox" ref="refScrollbar" style="height:370px">
<div v-for="(item, index) in studyExamRecord" class="listStyle" :key="item" style="justify-content:space-around"> <div v-for="(item, index) in studyExamRecord" class="listStyle" :key="item" style="justify-content:space-around">
<div>{{ index + 1 }}</div> <div>{{ index + 1 }}</div>
<div>{{ item.workerName || "--" }}</div> <div>{{ item.workerName || '--' }}</div>
<div>{{ item.subjectName || "--" }}</div>
<div> <div>
<el-tooltip <el-tooltip class="box-item" style="text-align:center" effect="dark" :content="eduPlanItem.subjectName" placement="top-start">
class="box-item" <span>{{ eduPlanItem.subjectName || '--' }}</span>
style="text-align: center" </el-tooltip>
effect="dark" </div>
:content="item.examPaperName" <div>
placement="top-start" <el-tooltip class="box-item" style="text-align:center" effect="dark" :content="eduPlanItem.paperName" placement="top-start">
> <span>{{ eduPlanItem.paperName || '--' }}</span>
<span>{{ item.examPaperName || "--" }}</span>
</el-tooltip> </el-tooltip>
</div> </div>
<div style="width: 140px"> <div style="width: 140px">
@ -274,7 +284,11 @@
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="'未学习记录'" name="third"> <el-tab-pane :label="'未学习记录'" name="third">
<div class="table-one" style="transform: translateY(-20px)"> <div class="searchInner">
<span style="margin-right:5px">姓名</span>
<el-input v-model="workerName" clearable size="small" style="width: 150px" @input="handleInput2" placeholder="请输入姓名" />
</div>
<div class="table-one" style="transform:translateY(10px);">
<div class="tabList" style="justify-content:space-around"> <div class="tabList" style="justify-content:space-around">
<div>序号</div> <div>序号</div>
<div>姓名</div> <div>姓名</div>
@ -320,7 +334,11 @@
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="'未考试记录'" name="four"> <el-tab-pane :label="'未考试记录'" name="four">
<div class="table-one" style="transform: translateY(-20px)"> <div class="searchInner">
<span style="margin-right:5px">姓名</span>
<el-input v-model="workerName" clearable size="small" style="width: 150px" @input="handleInput2" placeholder="请输入姓名" />
</div>
<div class="table-one" style="transform:translateY(10px)">
<div class="tabList" style="justify-content:space-around"> <div class="tabList" style="justify-content:space-around">
<div>序号</div> <div>序号</div>
<div>姓名</div> <div>姓名</div>
@ -329,7 +347,7 @@
<div>科目类型</div> <div>科目类型</div>
<div>考试名称</div> <div>考试名称</div>
</div> </div>
<el-scrollbar class="listBox" ref="refScrollbar" style="height: 370px"> <el-scrollbar class="listBox" ref="refScrollbar" style="height:370px;">
<div v-for="(item, index) in studyExamRecord" class="listStyle" :key="item" style="justify-content:space-around"> <div v-for="(item, index) in studyExamRecord" class="listStyle" :key="item" style="justify-content:space-around">
<div>{{ index + 1 }}</div> <div>{{ index + 1 }}</div>
<div>{{ item.workerName || "--" }}</div> <div>{{ item.workerName || "--" }}</div>
@ -416,18 +434,24 @@ const activeName = ref("first" as any);
const studyExamRecord = ref("" as any); const studyExamRecord = ref("" as any);
// //
const handleOpenDetail = async (item: any) => { const handleOpenDetail = async (item: any) => {
activeIndex.value = 0
activeName.value = 'first'
isDetail.value = true; isDetail.value = true;
workerName.value = ''
eduPlanItem.value = item; eduPlanItem.value = item;
getStudyExamData(); getStudyExamData();
}; };
const handleCloseDetail = async () => { const handleCloseDetail = async () => {
// activeIndex.value = 0; activeIndex.value = 0
activeName.value = 'first'
workerName.value = ''
isDetail.value = false; isDetail.value = false;
}; };
//tab //tab
const handleDetailTab = async (tab: TabsPaneContext, event: Event) => { const handleDetailTab = async (tab: TabsPaneContext, event: Event) => {
if (tab.index == activeIndex.value) return; if (tab.index == activeIndex.value) return;
activeIndex.value = tab.index; activeIndex.value = tab.index;
workerName.value = ''
getStudyExamData(); getStudyExamData();
}; };
let total = ref(0 as any); let total = ref(0 as any);
@ -445,6 +469,7 @@ const getStudyExamData = async () => {
let data: any = { let data: any = {
projectSn: store.sn, projectSn: store.sn,
trainId: eduPlanItem.value.id, trainId: eduPlanItem.value.id,
workerName: workerName.value,
pageNo: pageNo1.value, pageNo: pageNo1.value,
pageSize: 10 pageSize: 10
}; };
@ -486,7 +511,8 @@ const getStudyExamData = async () => {
} }
}; };
const eduPlanName = ref("" as any); const eduPlanName = ref(''as any)
const workerName = ref(''as any)
const partyMemberList = ref({} as any); const partyMemberList = ref({} as any);
// //
const getMemberCountList = async (tip: any) => { const getMemberCountList = async (tip: any) => {
@ -529,10 +555,16 @@ const getMemberCountList = async (tip: any) => {
}; };
// //
const handleInput = async () => { const handleInput = async () => {
partyMemberList.value = []; partyMemberList.value = []
pageNo.value = 1; pageNo.value = 1
getMemberCountList("search"); getMemberCountList('search')
}; }
//
const handleInput2 = async () => {
partyMemberList.value = []
pageNo.value = 1
getStudyExamData()
}
onMounted(async () => { onMounted(async () => {
await getMemberCountList("search"); await getMemberCountList("search");
@ -555,6 +587,12 @@ onMounted(async () => {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.searchInner{
color:#fff;
position: absolute;
top:0%;
left:0%;
}
.political-outlook { .political-outlook {
height: 97%; height: 97%;
margin: 0 60px; margin: 0 60px;

File diff suppressed because it is too large Load Diff

View File

@ -253,9 +253,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in child.gantts" v-for="(gantt, index) in child.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, child)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, child)"
@mouseleave="handleLeave" -->
</div> </div>
<!-- 第三层 --> <!-- 第三层 -->
@ -305,9 +306,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in second.gantts" v-for="(gantt, index) in second.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, second)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, second)"
@mouseleave="handleLeave" -->
</div> </div>
<!-- 第四层 --> <!-- 第四层 -->
@ -357,9 +359,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in third.gantts" v-for="(gantt, index) in third.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, third)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, third)"
@mouseleave="handleLeave" -->
</div> </div>
<!-- 第五层 --> <!-- 第五层 -->
@ -409,9 +412,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in fouth.gantts" v-for="(gantt, index) in fouth.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, fouth)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, fouth)"
@mouseleave="handleLeave" -->
</div> </div>
<!-- 第六层 --> <!-- 第六层 -->
@ -460,9 +464,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in fifth.gantts" v-for="(gantt, index) in fifth.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, fifth)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, fifth)"
@mouseleave="handleLeave" -->
</div> </div>
<!-- 第七层 --> <!-- 第七层 -->
@ -511,9 +516,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in sixth.gantts" v-for="(gantt, index) in sixth.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, sixth)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, sixth)"
@mouseleave="handleLeave" -->
</div> </div>
<!-- 第八层 --> <!-- 第八层 -->
@ -568,9 +574,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in seventh.gantts" v-for="(gantt, index) in seventh.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, seventh)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, seventh)"
@mouseleave="handleLeave" -->
</div> </div>
<!-- 第九层 --> <!-- 第九层 -->
@ -621,9 +628,10 @@
:style="gantt" :style="gantt"
v-for="(gantt, index) in eighth.gantts" v-for="(gantt, index) in eighth.gantts"
:key="index" :key="index"
@mouseenter="e => handleHover(e, eighth)" :title="child.taskName + ' ' + headerList[child.status].label"
@mouseleave="handleLeave"
></div> ></div>
<!-- @mouseenter="e => handleHover(e, eighth)"
@mouseleave="handleLeave" -->
</div> </div>
</div> </div>
</div> </div>
@ -694,9 +702,11 @@ function handleChangeTab(val: any) {
partyMemberList.value = []; partyMemberList.value = [];
pageNo.value = 1; pageNo.value = 1;
} else { } else {
selectVal.value = ''
treeData.value = ''
getHierarchyEnterpriseList(); getHierarchyEnterpriseList();
getCountFn(); // getCountFn();
getDataList(); // getDataList();
} }
} }
@ -872,12 +882,12 @@ const getHierarchyEnterpriseList = async () => {
level1CompanyData.value = res.result; level1CompanyData.value = res.result;
if (level1CompanyData.value && level1CompanyData.value.length > 0) { if (level1CompanyData.value && level1CompanyData.value.length > 0) {
nextTick(() => { nextTick(() => {
treeData.value = level1CompanyData.value[0]; // treeData.value = level1CompanyData.value[0];
selectVal.value = level1CompanyData.value[0].enterpriseName; // selectVal.value = level1CompanyData.value[0].enterpriseName;
// tree.value.setCurrentKey(level1CompanyData.value[0].id);//tree // tree.value.setCurrentKey(level1CompanyData.value[0].id);//tree
groupTree.value.setCurrentKey(level1CompanyData.value[0].id); // groupTree.value.setCurrentKey(level1CompanyData.value[0].id);
getDataList(); //123 getDataList(); //123
// getCountFn();//123 getCountFn();//123
}); });
} }
// this.enterpriseTreeData = res.result // this.enterpriseTreeData = res.result