From ff261194e3defebe1b5efe836ef179c2bf3f9d7a Mon Sep 17 00:00:00 2001 From: wuzhen <52326163@qq.com> Date: Sun, 24 Aug 2025 20:08:03 +0800 Subject: [PATCH] =?UTF-8?q?wuzhen=20=E6=9B=B4=E6=96=B0=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dromara/zsjy/domain/ZsjyGraduateInfo.java | 10 + .../zsjy/domain/bo/ZsjyGraduateInfoBo.java | 10 + .../impl/ZsjyGraduateInfoServiceImpl.java | 30 +- .../mapper/ZsjyGraduateInfoMapper.xml | 6 + web/src/api/zsjy/graduateInfo.ts | 3 +- web/src/api/zsjy/types.ts | 2 + web/src/views/cw/application/index.vue | 475 +++++++++--------- web/src/views/cw/approvalRecord/index.vue | 374 +++++++++++--- web/src/views/cw/financeApproval/index.vue | 35 +- web/src/views/cw/leaderApproval/index.vue | 35 +- web/src/views/zsjy/enterprise/index.vue | 9 + web/src/views/zsjy/graduateInfo/index.vue | 263 +++------- web/src/views/zsjy/jobPosition/index.vue | 462 ++++++++--------- .../views/zsjy/recruitmentPoster/index.vue | 315 ++++++------ 14 files changed, 1131 insertions(+), 898 deletions(-) diff --git a/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/ZsjyGraduateInfo.java b/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/ZsjyGraduateInfo.java index 81b18f36..02782c71 100644 --- a/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/ZsjyGraduateInfo.java +++ b/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/ZsjyGraduateInfo.java @@ -189,6 +189,16 @@ public class ZsjyGraduateInfo extends TenantEntity implements Serializable { */ private String workCity; + /** + * 工作地点 + */ + private String workLocation; + + /** + * 完整地址 + */ + private String fullAddress; + /** * 月薪范围 (1-3000以下 2-3000-5000 3-5000-8000 4-8000-12000 5-12000以上) */ diff --git a/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/bo/ZsjyGraduateInfoBo.java b/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/bo/ZsjyGraduateInfoBo.java index 623e073a..7180e323 100644 --- a/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/bo/ZsjyGraduateInfoBo.java +++ b/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/domain/bo/ZsjyGraduateInfoBo.java @@ -220,6 +220,16 @@ public class ZsjyGraduateInfoBo extends BaseEntity { */ private String workCity; + /** + * 工作地点 + */ + private String workLocation; + + /** + * 完整地址 + */ + private String fullAddress; + /** * 月薪范围 (1-3000以下 2-3000-5000 3-5000-8000 4-8000-12000 5-12000以上) */ diff --git a/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/service/impl/ZsjyGraduateInfoServiceImpl.java b/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/service/impl/ZsjyGraduateInfoServiceImpl.java index d35a9c41..814d3d16 100644 --- a/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/service/impl/ZsjyGraduateInfoServiceImpl.java +++ b/backend/ruoyi-modules/ruoyi-zsjy/src/main/java/org/dromara/zsjy/service/impl/ZsjyGraduateInfoServiceImpl.java @@ -43,7 +43,10 @@ public class ZsjyGraduateInfoServiceImpl implements IZsjyGraduateInfoService { */ @Override public ZsjyGraduateInfoVo queryById(Long id) { - return baseMapper.selectVoById(id); + ZsjyGraduateInfoBo bo = new ZsjyGraduateInfoBo(); + bo.setId(id); + List list = baseMapper.selectGraduateInfoVoList(bo); + return list.isEmpty() ? null : list.get(0); } /** @@ -55,8 +58,8 @@ public class ZsjyGraduateInfoServiceImpl implements IZsjyGraduateInfoService { */ @Override public TableDataInfo queryPageList(ZsjyGraduateInfoBo bo, PageQuery pageQuery) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + Page page = pageQuery.build(); + IPage result = baseMapper.selectGraduateInfoPageList(page, bo); return TableDataInfo.build(result); } @@ -68,8 +71,7 @@ public class ZsjyGraduateInfoServiceImpl implements IZsjyGraduateInfoService { */ @Override public List queryList(ZsjyGraduateInfoBo bo) { - LambdaQueryWrapper lqw = buildQueryWrapper(bo); - return baseMapper.selectVoList(lqw); + return baseMapper.selectGraduateInfoVoList(bo); } /** @@ -211,6 +213,24 @@ public class ZsjyGraduateInfoServiceImpl implements IZsjyGraduateInfoService { throw new RuntimeException("升学状态下,升学院校不能为空"); } } + + // 自动设置组合字段 + // 设置工作地点(工作省份 + 工作城市) + if (StringUtils.isNotBlank(entity.getWorkProvince()) || StringUtils.isNotBlank(entity.getWorkCity())) { + String workLocation = StringUtils.defaultString(entity.getWorkProvince(), "") + + StringUtils.defaultString(entity.getWorkCity(), ""); + entity.setWorkLocation(workLocation); + } + + // 设置完整地址(省份 + 城市 + 区县 + 详细地址) + if (StringUtils.isNotBlank(entity.getProvince()) || StringUtils.isNotBlank(entity.getCity()) || + StringUtils.isNotBlank(entity.getDistrict()) || StringUtils.isNotBlank(entity.getDetailAddress())) { + String fullAddress = StringUtils.defaultString(entity.getProvince(), "") + + StringUtils.defaultString(entity.getCity(), "") + + StringUtils.defaultString(entity.getDistrict(), "") + + StringUtils.defaultString(entity.getDetailAddress(), ""); + entity.setFullAddress(fullAddress); + } } /** diff --git a/backend/ruoyi-modules/ruoyi-zsjy/src/main/resources/mapper/ZsjyGraduateInfoMapper.xml b/backend/ruoyi-modules/ruoyi-zsjy/src/main/resources/mapper/ZsjyGraduateInfoMapper.xml index b23644c0..f6f1b6df 100644 --- a/backend/ruoyi-modules/ruoyi-zsjy/src/main/resources/mapper/ZsjyGraduateInfoMapper.xml +++ b/backend/ruoyi-modules/ruoyi-zsjy/src/main/resources/mapper/ZsjyGraduateInfoMapper.xml @@ -139,6 +139,9 @@ + + and g.id = #{id} + and g.student_no like concat('%', #{studentNo}, '%') diff --git a/web/src/api/zsjy/graduateInfo.ts b/web/src/api/zsjy/graduateInfo.ts index 72f9743f..e470b9b3 100644 --- a/web/src/api/zsjy/graduateInfo.ts +++ b/web/src/api/zsjy/graduateInfo.ts @@ -1,12 +1,13 @@ import request from '@/utils/request'; import { AxiosPromise } from 'axios'; import { GraduateInfoVO, GraduateInfoForm, GraduateInfoQuery, GraduateStatisticsVO } from '@/api/zsjy/types'; +import { TableDataInfo } from '@/api/types'; /** * 查询毕业生信息列表 * @param query 查询参数 */ -export const listGraduateInfo = (query?: GraduateInfoQuery): AxiosPromise => { +export const listGraduateInfo = (query?: GraduateInfoQuery): AxiosPromise> => { return request({ url: '/zsjy/graduate/list', method: 'get', diff --git a/web/src/api/zsjy/types.ts b/web/src/api/zsjy/types.ts index c6884487..7ce13922 100644 --- a/web/src/api/zsjy/types.ts +++ b/web/src/api/zsjy/types.ts @@ -654,6 +654,7 @@ export interface GraduateInfoForm { city?: string; district?: string; detailAddress?: string; + fullAddress?: string; postalCode?: string; employmentStatus?: string; employmentCompany?: string; @@ -661,6 +662,7 @@ export interface GraduateInfoForm { jobPosition?: string; workProvince?: string; workCity?: string; + workLocation?: string; salaryRange?: string; furtherSchool?: string; furtherMajor?: string; diff --git a/web/src/views/cw/application/index.vue b/web/src/views/cw/application/index.vue index 5537332c..97cf69fe 100644 --- a/web/src/views/cw/application/index.vue +++ b/web/src/views/cw/application/index.vue @@ -100,7 +100,9 @@ - + + + 搜索 重置 @@ -110,30 +112,31 @@ - - + - - -
- - + + @@ -156,41 +159,38 @@ {{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}') }} - + - diff --git a/web/src/views/cw/approvalRecord/index.vue b/web/src/views/cw/approvalRecord/index.vue index 64ac9be5..73f218c6 100644 --- a/web/src/views/cw/approvalRecord/index.vue +++ b/web/src/views/cw/approvalRecord/index.vue @@ -1,68 +1,106 @@ - - + diff --git a/web/src/views/cw/financeApproval/index.vue b/web/src/views/cw/financeApproval/index.vue index 0cb3f467..62bc277d 100644 --- a/web/src/views/cw/financeApproval/index.vue +++ b/web/src/views/cw/financeApproval/index.vue @@ -21,7 +21,9 @@ - + + + 搜索 重置 @@ -81,7 +83,7 @@ 导出 - + @@ -125,7 +127,7 @@ - + @@ -227,7 +229,7 @@
- - diff --git a/web/src/views/zsjy/recruitmentPoster/index.vue b/web/src/views/zsjy/recruitmentPoster/index.vue index 23cec15d..f1a3bc04 100644 --- a/web/src/views/zsjy/recruitmentPoster/index.vue +++ b/web/src/views/zsjy/recruitmentPoster/index.vue @@ -2,10 +2,9 @@
-
+
- @@ -40,7 +39,9 @@ - + + + 搜索 重置 @@ -52,32 +53,35 @@
- - + - - -
- + @@ -116,47 +120,21 @@ - +
- -
@@ -376,11 +354,6 @@ const resetQuery = () => { handleQuery(); }; -/** 切换搜索显示 */ -const toggleSearch = () => { - showSearch.value = !showSearch.value; -}; - /** 企业选择改变 */ const handleEnterpriseChange = (val: number | string) => { queryParams.value.positionId = undefined; @@ -533,128 +506,148 @@ onMounted(() => { }); -