| talent-card-admin/src/style.css | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| talent-card-admin/src/views/FamilyCardView.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| talent-card-admin/src/views/MerchantCreateView.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| talent-card-server/src/main/java/com/talentcard/server/service/DependentCardApplyAdminService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
talent-card-admin/src/style.css
@@ -696,6 +696,26 @@ background: #ffffff; } .merchant-school-address-panel { margin-top: 12px; padding: 20px 28px 18px; background: #ffffff; } .merchant-school-address-title { margin: 0 0 16px; color: #111827; font-size: 14px; font-weight: 700; text-align: left; } .merchant-school-address-actions { display: flex; justify-content: flex-end; margin-top: 16px; } .merchant-rights-section-title { margin: 0 0 18px 28px; color: #111827; talent-card-admin/src/views/FamilyCardView.vue
@@ -195,7 +195,7 @@ <el-option v-for="item in statusOptions" :key="item.label" :label="item.label" :value="item.value" /> </el-select> </el-form-item> <el-form-item label="申请时间" :class="{ 'family-card-filter-date': isManagement }"> <el-form-item :label="isManagement ? '注册时间' : '申请时间'" :class="{ 'family-card-filter-date': isManagement }"> <el-date-picker v-model="filters.applyTime" type="daterange" talent-card-admin/src/views/MerchantCreateView.vue
@@ -2500,25 +2500,6 @@ </div> </div> <div v-if="isChildcareMerchant" class="merchant-rights-parking-address-panel" style="padding: 0 100px;"> <div class="parking-address-header">学校地址</div> <div class="parking-address-table-wrapper"> <el-table :data="schoolAddresses" border> <el-table-column label="名称" prop="name" /> <el-table-column label="地址" prop="address" /> <el-table-column label="操作" width="120" align="center"> <template #default="{ $index }"> <el-button link type="danger" @click="removeSchool($index)">删除</el-button> <el-button link type="primary" @click="openSchoolDialog($index)">详情</el-button> </template> </el-table-column> </el-table> <div style="text-align: center; margin-top: 16px;"> <el-button plain @click="openSchoolDialog(-1)">新增</el-button> </div> </div> </div> <div v-if="isApprovalMerchant" class="merchant-rights-parking-address-panel" style="padding: 0 32px;"> <div class="parking-address-header">商家权益</div> <div class="parking-address-table-wrapper"> @@ -2572,6 +2553,23 @@ </div> </section> <section v-if="isChildcareMerchant" class="merchant-school-address-panel"> <h3 class="merchant-school-address-title">学校地址</h3> <el-table :data="schoolAddresses" border> <el-table-column label="名称" prop="name" /> <el-table-column label="地址" prop="address" /> <el-table-column label="操作" width="120" align="center"> <template #default="{ $index }"> <el-button link type="danger" @click="removeSchool($index)">删除</el-button> <el-button link type="primary" @click="openSchoolDialog($index)">详情</el-button> </template> </el-table-column> </el-table> <div class="merchant-school-address-actions"> <el-button plain @click="openSchoolDialog(-1)">新增</el-button> </div> </section> <el-button type="primary" class="merchant-create-save" :loading="rightsSaving" @click="saveRights">保存</el-button> </template> talent-card-server/src/main/java/com/talentcard/server/service/DependentCardApplyAdminService.java
@@ -61,7 +61,8 @@ throw new BusinessException(ErrorCode.BAD_REQUEST, "家属卡管理状态只能为正常或已解绑"); } if (applyStart != null && applyEnd != null && applyStart.isAfter(applyEnd)) { throw new BusinessException(ErrorCode.BAD_REQUEST, "申请开始时间不能晚于结束时间"); throw new BusinessException(ErrorCode.BAD_REQUEST, management ? "注册开始时间不能晚于结束时间" : "申请开始时间不能晚于结束时间"); } int safePage = Math.max(page, 1); int safeSize = Math.min(Math.max(size, 1), 100); @@ -85,15 +86,22 @@ .like(DependentCardApply::getTalentCardNo, talentKeyword.trim()) .or() .apply("exists (select 1 from talent_user u where u.id = dependent_card_apply.talent_id and u.deleted = 0 and u.id_card_no like concat('%', {0}, '%'))", talentKeyword.trim())) .ge(applyStart != null, DependentCardApply::getApplyTime, applyStart == null ? null : applyStart.atStartOfDay()) .lt(applyEnd != null, DependentCardApply::getApplyTime, applyEnd == null ? null : applyEnd.plusDays(1).atStartOfDay()); .ge(!management && applyStart != null, DependentCardApply::getApplyTime, applyStart == null ? null : applyStart.atStartOfDay()) .lt(!management && applyEnd != null, DependentCardApply::getApplyTime, applyEnd == null ? null : applyEnd.plusDays(1).atStartOfDay()) .ge(management && applyStart != null, DependentCardApply::getAuditTime, applyStart == null ? null : applyStart.atStartOfDay()) .lt(management && applyEnd != null, DependentCardApply::getAuditTime, applyEnd == null ? null : applyEnd.plusDays(1).atStartOfDay()); long total = mapper.selectCount(query); if (total == 0) { return new PageResult<>(List.of(), safePage, safeSize, 0); } long offset = (long) (safePage - 1) * safeSize; List<DependentCardApplyAdminResponse> records = mapper.selectList( query.orderByDesc(DependentCardApply::getApplyTime) query.orderByDesc(management, DependentCardApply::getAuditTime) .orderByDesc(!management, DependentCardApply::getApplyTime) .orderByDesc(DependentCardApply::getId) .last("limit " + safeSize + " offset " + offset) ).stream()