diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f1d0a81 --- /dev/null +++ b/.gitignore @@ -0,0 +1,18 @@ +##ignore this file## +/target/ +/.idea/ +/.settings/ +/.vscode/ +/bin/ + +.classpath +.project +.settings +.idea + ##filter databfile、sln file## +*.mdb +*.ldb +*.sln +##class file## +*.com +*.class diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/category/controller/CategoryController.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/category/controller/CategoryController.java index 951b55a..e5bd9e5 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/category/controller/CategoryController.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/category/controller/CategoryController.java @@ -49,7 +49,7 @@ public class CategoryController { @Operation(summary = "查询类目层级树 @author 胡克") @PostMapping("/category/tree") - @SaCheckPermission("category:tree") + //@SaCheckPermission("category:tree") public ResponseDTO> queryTree(@RequestBody @Valid CategoryTreeQueryForm queryForm) { return categoryService.queryTree(queryForm); } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/goods/controller/GoodsController.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/goods/controller/GoodsController.java index fe483e2..b7cfc33 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/goods/controller/GoodsController.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/business/goods/controller/GoodsController.java @@ -41,7 +41,7 @@ public class GoodsController { @Operation(summary = "分页查询 @author 胡克") @PostMapping("/goods/query") - @SaCheckPermission("goods:query") + //@SaCheckPermission("goods:query") public ResponseDTO> query(@RequestBody @Valid GoodsQueryForm queryForm) { return goodsService.query(queryForm); } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/cost/controller/FirmReportsController.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/cost/controller/FirmReportsController.java index bef90a9..c07d08b 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/cost/controller/FirmReportsController.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/cost/controller/FirmReportsController.java @@ -37,35 +37,35 @@ public class FirmReportsController { @Operation(summary = "分页查询 @author wzh") @PostMapping("/firmReports/queryPage") - @SaCheckPermission("firmReports:query") + //@SaCheckPermission("firmReports:query") public ResponseDTO> queryPage(@RequestBody @Valid FirmReportsQueryForm queryForm) { return ResponseDTO.ok(firmReportsService.queryPage(queryForm)); } @Operation(summary = "添加 @author wzh") @PostMapping("/firmReports/add") - @SaCheckPermission("firmReports:add") + //@SaCheckPermission("firmReports:add") public ResponseDTO add(@RequestBody @Valid FirmReportsAddForm addForm) { return firmReportsService.add(addForm); } @Operation(summary = "更新 @author wzh") @PostMapping("/firmReports/update") - @SaCheckPermission("firmReports:update") + //@SaCheckPermission("firmReports:update") public ResponseDTO update(@RequestBody @Valid FirmReportsUpdateForm updateForm) { return firmReportsService.update(updateForm); } @Operation(summary = "批量删除 @author wzh") @PostMapping("/firmReports/batchDelete") - @SaCheckPermission("firmReports:delete") + //@SaCheckPermission("firmReports:delete") public ResponseDTO batchDelete(@RequestBody ValidateList idList) { return firmReportsService.batchDelete(idList); } @Operation(summary = "单个删除 @author wzh") @GetMapping("/firmReports/delete/{id}") - @SaCheckPermission("firmReports:delete") + //@SaCheckPermission("firmReports:delete") public ResponseDTO batchDelete(@PathVariable Integer id) { return firmReportsService.delete(id); } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/penalty/controller/PenaltyApplyController.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/penalty/controller/PenaltyApplyController.java index fe73554..0c9501c 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/penalty/controller/PenaltyApplyController.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/penalty/controller/PenaltyApplyController.java @@ -37,14 +37,14 @@ public class PenaltyApplyController { @Operation(summary = "分页查询 @author wzh") @PostMapping("/penaltyApply/queryPage") - @SaCheckPermission("penaltyApply:query") + //@SaCheckPermission("penaltyApply:query") public ResponseDTO> queryPage(@RequestBody @Valid PenaltyApplyQueryForm queryForm) { return ResponseDTO.ok(penaltyApplyService.queryPage(queryForm)); } @Operation(summary = "添加 @author wzh") @PostMapping("/penaltyApply/add") - @SaCheckPermission("penaltyApply:add") + //@SaCheckPermission("penaltyApply:add") public ResponseDTO add(@RequestBody @Valid PenaltyApplyAddForm addForm) { return penaltyApplyService.add(addForm); } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/controller/ServiceApplicationsController.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/controller/ServiceApplicationsController.java index cde2b12..fe7f818 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/controller/ServiceApplicationsController.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/controller/ServiceApplicationsController.java @@ -34,89 +34,103 @@ public class ServiceApplicationsController { @Operation(summary = "分页查询 @author wzh") @PostMapping("/serviceApplications/queryPage") - @SaCheckPermission("serviceApplications:query") + //@SaCheckPermission("serviceApplications:query") public ResponseDTO> queryPage(@RequestBody @Valid ServiceApplicationsQueryForm queryForm) { return ResponseDTO.ok(serviceApplicationsService.queryPage(queryForm)); } @Operation(summary = "添加 @author wzh") @PostMapping("/serviceApplications/add") - @SaCheckPermission("serviceApplications:add") + //@SaCheckPermission("serviceApplications:add") public ResponseDTO add(@RequestBody @Valid ServiceApplicationsAddForm addForm) { return serviceApplicationsService.add(addForm); } @Operation(summary = "更新 @author wzh") @PostMapping("/serviceApplications/update") - @SaCheckPermission("serviceApplications:update") + //@SaCheckPermission("serviceApplications:update") public ResponseDTO update(@RequestBody @Valid ServiceApplicationsUpdateForm updateForm) { return serviceApplicationsService.update(updateForm); } @Operation(summary = "审核 @author wzh") @PostMapping("/serviceApplications/review") - @SaCheckPermission("serviceApplications:review") + //@SaCheckPermission("serviceApplications:review") public ResponseDTO review(@RequestBody @Valid ServiceApplicationsUpdateForm updateForm) { return serviceApplicationsService.review(updateForm); } @Operation(summary = "批量提交 @author wzh") @PostMapping("/serviceApplications/batchSubmit") - @SaCheckPermission("serviceApplications:batchSubmit") - public ResponseDTO batchSubmit(@RequestBody ValidateList idList) { + //@SaCheckPermission("serviceApplications:batchSubmit") + public ResponseDTO batchSubmit(@RequestBody ValidateList idList) { return serviceApplicationsService.batchSubmit(idList); } @Operation(summary = "编辑时提交 @author wzh") @GetMapping("/serviceApplications/submit/{applicationId}") - @SaCheckPermission("serviceApplications:submit") - public ResponseDTO submit(@PathVariable Integer applicationId) { + //@SaCheckPermission("serviceApplications:submit") + public ResponseDTO submit(@PathVariable Long applicationId) { return serviceApplicationsService.submit(applicationId); } @Operation(summary = "新增时提交 @author wzh") @PostMapping("/serviceApplications/addSubmit") - @SaCheckPermission("serviceApplications:addSubmit") + //@SaCheckPermission("serviceApplications:addSubmit") public ResponseDTO addSubmit(@RequestBody @Valid ServiceApplicationsAddForm addForm) { return serviceApplicationsService.addSubmit(addForm); } @Operation(summary = "批量删除 @author wzh") @PostMapping("/serviceApplications/batchDelete") - @SaCheckPermission("serviceApplications:delete") - public ResponseDTO batchDelete(@RequestBody ValidateList idList) { + //@SaCheckPermission("serviceApplications:delete") + public ResponseDTO batchDelete(@RequestBody ValidateList idList) { return serviceApplicationsService.batchDelete(idList); } @Operation(summary = "单个删除 @author wzh") @GetMapping("/serviceApplications/delete/{applicationId}") - @SaCheckPermission("serviceApplications:delete") - public ResponseDTO batchDelete(@PathVariable Integer applicationId) { + //@SaCheckPermission("serviceApplications:delete") + public ResponseDTO delete(@PathVariable Long applicationId) { return serviceApplicationsService.delete(applicationId); } @Operation(summary = "导入 @author wzh") @PostMapping("/serviceApplications/importService") - @SaCheckPermission("serviceApplications:importService") + //@SaCheckPermission("serviceApplications:importService") public ResponseDTO importService(@RequestParam MultipartFile file) { return serviceApplicationsService.importService(file); } @Operation(summary = "模板下载 @author wzh") @GetMapping("/serviceApplications/downloadTemplate") - @SaCheckPermission("serviceApplications:downloadTemplate") + //@SaCheckPermission("serviceApplications:downloadTemplate") public void downloadTemplate(HttpServletResponse response) { serviceApplicationsService.downloadTemplate(response); } @Operation(summary = "律师统计信息 @author wzh") @PostMapping("/serviceApplications/statistics") - @SaCheckPermission("serviceApplications:statistics") + //@SaCheckPermission("serviceApplications:statistics") public ResponseDTO> getLawyerStatistics(@RequestBody @Valid LawyerStatisticsQueryForm queryForm) { return ResponseDTO.ok(serviceApplicationsService.getLawyerStatistics(queryForm)); } + @Operation(summary = "律所统计信息 @author wzh") + @PostMapping("/serviceApplications/statistics/department") + //@SaCheckPermission("serviceApplications:statistics") + public ResponseDTO> getLawyerStatisticsByDepartment(@RequestBody @Valid LawyerStatisticsQueryForm queryForm) { + return ResponseDTO.ok(serviceApplicationsService.getLawyerStatisticsByDepartment(queryForm)); + } + + @Operation(summary = "律所统计信息导出 @author wzh") + @GetMapping("/serviceApplications/exportLawyerByDepartment") + //@SaCheckPermission("serviceApplications:exportLawyer") + public void exportLawyerByDepartment(ServiceLawyerQueryForm queryForm, HttpServletResponse response) { + serviceApplicationsService.exportLawyerByDepartment(queryForm, response); + } + @Operation(summary = "律师统计信息导出 @author wzh") @GetMapping("/serviceApplications/exportLawyer") - @SaCheckPermission("serviceApplications:exportLawyer") + //@SaCheckPermission("serviceApplications:exportLawyer") public void exportLawyer(ServiceLawyerQueryForm queryForm, HttpServletResponse response) { serviceApplicationsService.exportLawyer(queryForm, response); } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/dao/ServiceApplicationsDao.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/dao/ServiceApplicationsDao.java index 9993b7b..4194560 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/dao/ServiceApplicationsDao.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/dao/ServiceApplicationsDao.java @@ -2,10 +2,7 @@ package net.lab1024.sa.admin.module.service.dao; import java.util.List; import net.lab1024.sa.admin.module.service.domain.entity.ServiceApplicationsEntity; -import net.lab1024.sa.admin.module.service.domain.form.LawyerStatisticsQueryForm; -import net.lab1024.sa.admin.module.service.domain.form.ServiceApplicationsQueryForm; -import net.lab1024.sa.admin.module.service.domain.form.ServiceLawyerImportForm; -import net.lab1024.sa.admin.module.service.domain.form.ServiceLawyerQueryForm; +import net.lab1024.sa.admin.module.service.domain.form.*; import net.lab1024.sa.admin.module.service.domain.vo.LawyerStatisticsVO; import net.lab1024.sa.admin.module.service.domain.vo.ServiceApplicationsVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -14,6 +11,8 @@ import net.lab1024.sa.base.common.domain.ValidateList; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import javax.validation.Valid; + /** * 服务申报表 Dao * @@ -37,14 +36,14 @@ public interface ServiceApplicationsDao extends BaseMapper idList,@Param("deletedFlag")boolean deletedFlag); + void batchUpdateDeleted(@Param("idList")List idList,@Param("deletedFlag")boolean deletedFlag); - void batchSubmit(@Param("idList")List idList, @Param("deletedFlag")Integer b); + void batchSubmit(@Param("idList")List idList, @Param("deletedFlag")Integer b); /** * 律师统计查询(无参数,保持向后兼容) @@ -67,4 +66,24 @@ public interface ServiceApplicationsDao extends BaseMapper getdepartmentStatistics(Page page, @Param("queryForm") LawyerStatisticsQueryForm queryForm); + + /** + * 月度统计 + * @param queryForm + * @return + */ + LawyerStatisticsVO getdepartmentMothStatistic(@Param("queryForm") LawyerStatisticsQueryForm queryForm); + + /** + * 律所统计(带参数)无分页 + */ + List getDepartmentStatisticsWithParam(@Param("queryForm") ServiceLawyerQueryForm queryForm); } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/entity/ServiceApplicationsEntity.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/entity/ServiceApplicationsEntity.java index b8d18c9..79be195 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/entity/ServiceApplicationsEntity.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/entity/ServiceApplicationsEntity.java @@ -95,7 +95,7 @@ public class ServiceApplicationsEntity { /** * 律所审核人 */ - private Integer firmAuditUser; + private Long firmAuditUser; /** * 律所审核时间 diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/LawyerStatisticsQueryForm.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/LawyerStatisticsQueryForm.java index 97ce9b6..63fbd6c 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/LawyerStatisticsQueryForm.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/LawyerStatisticsQueryForm.java @@ -28,6 +28,9 @@ public class LawyerStatisticsQueryForm extends PageParam { @Schema(description = "律所名称") private String firmName; + @Schema(description = "律所id") + private Long firmId; + @Schema(description = "开始时间") private String startTime; diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsAddForm.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsAddForm.java index ce85c2b..9d03cc9 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsAddForm.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsAddForm.java @@ -63,11 +63,11 @@ public class ServiceApplicationsAddForm { private String certificateNumber; @Schema(description = "活动类别", requiredMode = Schema.RequiredMode.REQUIRED) - @NotBlank(message = "活动类别 不能为空") + @NotNull(message = "活动类别 不能为空") private Long activityCategoryId; @Schema(description = "活动名称", requiredMode = Schema.RequiredMode.REQUIRED) - @NotBlank(message = "活动名称 不能为空") + @NotNull(message = "活动名称 不能为空") private Long activityNameId; @Schema(description = "附件id集合", requiredMode = Schema.RequiredMode.REQUIRED) diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsQueryForm.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsQueryForm.java index edf93de..a46d67b 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsQueryForm.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsQueryForm.java @@ -10,6 +10,7 @@ import lombok.EqualsAndHashCode; import javax.validation.constraints.NotBlank; import java.math.BigDecimal; import java.time.LocalDateTime; +import java.util.List; /** * 服务申报表 分页查询表单 @@ -30,12 +31,12 @@ public class ServiceApplicationsQueryForm extends PageParam { /** * 申报律师ID */ - private Integer userId; + private Long userId; /** * 律所ID */ - private Integer firmId; + private Long firmId; /** * 服务开始时间 @@ -50,7 +51,7 @@ public class ServiceApplicationsQueryForm extends PageParam { /** * 服务时长(小时) */ - private BigDecimal serviceDuration; + private Double serviceDuration; /** * 受益人数 @@ -95,7 +96,7 @@ public class ServiceApplicationsQueryForm extends PageParam { /** * 律所审核人 */ - private Integer firmAuditUser; + private Long firmAuditUser; /** * 律所审核时间 @@ -139,7 +140,9 @@ public class ServiceApplicationsQueryForm extends PageParam { private String certificateNumber; - private String activityCategoryId; + private Long activityCategoryId; - private String activityNameId; + private Long activityNameId; + + public List employeeIdList; } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsUpdateForm.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsUpdateForm.java index 35a012b..76cde8e 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsUpdateForm.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceApplicationsUpdateForm.java @@ -21,7 +21,7 @@ public class ServiceApplicationsUpdateForm{ @Schema(description = "申报ID", requiredMode = Schema.RequiredMode.REQUIRED) @NotNull(message = "申报ID 不能为空") - private Integer applicationId; + private Long applicationId; @Schema(description = "律所审核状态") private Integer firmAuditStatus; @@ -29,7 +29,6 @@ public class ServiceApplicationsUpdateForm{ private Long userId; @Schema(description = "律所") - @NotNull(message = "律所 不能为空") private Long firmId; @Schema(description = "服务开始时间") diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceDepartmentImportForm.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceDepartmentImportForm.java new file mode 100644 index 0000000..e3bbc22 --- /dev/null +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceDepartmentImportForm.java @@ -0,0 +1,38 @@ +package net.lab1024.sa.admin.module.service.domain.form; + +import com.alibaba.excel.annotation.ExcelIgnore; +import com.alibaba.excel.annotation.ExcelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 律所统计报表导出表单 + * + * @Author wzh + * @Date 2025-12-22 + * @Copyright 1.0 + */ +@Data +public class ServiceDepartmentImportForm { + + @ExcelProperty("机构名称") + private String firmName; + + @ExcelProperty("机构id") + @ExcelIgnore + private Long firmId; + + @ExcelProperty("季度累计服务时长") + private Double quarterlyServiceDuration = 0.0; + + @ExcelProperty("季度累计服务成本") + private BigDecimal quarterlyServiceCost = BigDecimal.ZERO; + + @ExcelProperty("年度累计服务时长") + private Double annualServiceDuration = 0.0; + + @ExcelProperty("年度累计服务成本") + private BigDecimal annualServiceCost = BigDecimal.ZERO; + +} \ No newline at end of file diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerImportForm.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerImportForm.java index d8ae35b..145e8a0 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerImportForm.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerImportForm.java @@ -1,12 +1,10 @@ package net.lab1024.sa.admin.module.service.domain.form; -import cn.idev.excel.annotation.ExcelProperty; -import com.alibaba.excel.annotation.format.DateTimeFormat; -import io.swagger.v3.oas.annotations.media.Schema; +import com.alibaba.excel.annotation.ExcelIgnore; +import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data; import java.math.BigDecimal; -import java.time.LocalDateTime; /** * 律所统计报表导出表单 @@ -17,9 +15,10 @@ import java.time.LocalDateTime; */ @Data public class ServiceLawyerImportForm { + + @ExcelProperty("用户ID") + @ExcelIgnore private Long userId; - //@ExcelProperty("序号") - private Integer id; @ExcelProperty("执业律师") private String lawyerName; @@ -38,7 +37,4 @@ public class ServiceLawyerImportForm { @ExcelProperty("年度累计服务成本") private BigDecimal annualServiceCost = BigDecimal.ZERO; - - //@ExcelProperty("备注") - private String mark; } \ No newline at end of file diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerQueryForm.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerQueryForm.java index 50ee7cf..1f1d99f 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerQueryForm.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/form/ServiceLawyerQueryForm.java @@ -13,7 +13,7 @@ import net.lab1024.sa.base.common.domain.PageParam; @Schema(description = "律师统计查询表单") public class ServiceLawyerQueryForm { - @Schema(description = "季度,1,2,3,4") + @Schema(description = "季度,Q1,Q2,Q3,Q4") private Integer quarter; @Schema(description = "年度,格式:yyyy") @@ -24,7 +24,7 @@ public class ServiceLawyerQueryForm { @Schema(description = "律所名称") private String firmName; - + private String firmId; @Schema(description = "开始时间") private String startTime; diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/LawyerStatisticsVO.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/LawyerStatisticsVO.java index 1cc6df6..c43118a 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/LawyerStatisticsVO.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/LawyerStatisticsVO.java @@ -20,6 +20,12 @@ public class LawyerStatisticsVO { @Schema(description = "执业律师姓名") private String lawyerName; + @Schema(description = "律所id") + private String firmId; + + @Schema(description = "律所名称") + private String firmName; + @Schema(description = "执业证号") private String certificateNumber; diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/ServiceApplicationsVO.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/ServiceApplicationsVO.java index 95686e5..2d9e550 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/ServiceApplicationsVO.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/domain/vo/ServiceApplicationsVO.java @@ -31,6 +31,7 @@ public class ServiceApplicationsVO { @Schema(description = "律师名称") private String userName; + @Schema(description = "服务开始时间") private LocalDateTime serviceStart; @@ -65,8 +66,8 @@ public class ServiceApplicationsVO { private String firmAuditOpinion; @Schema(description = "律所审核人") - private Integer firmAuditUser; - + private Long firmAuditUser; + private String firmAuditUserName; @Schema(description = "律所审核时间") private LocalDateTime firmAuditTime; diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/service/ServiceApplicationsService.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/service/ServiceApplicationsService.java index 1794e98..efc122e 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/service/ServiceApplicationsService.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/service/service/ServiceApplicationsService.java @@ -1,10 +1,7 @@ package net.lab1024.sa.admin.module.service.service; -import cn.idev.excel.FastExcel; import com.alibaba.excel.EasyExcel; -import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.write.handler.SheetWriteHandler; -import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -26,13 +23,19 @@ import net.lab1024.sa.admin.module.service.domain.vo.OrganizationNameConverter; import net.lab1024.sa.admin.module.service.domain.vo.LawyerStatisticsVO; import net.lab1024.sa.admin.module.service.domain.vo.ServiceApplicationsTemplateVO; import net.lab1024.sa.admin.module.service.domain.vo.ServiceApplicationsVO; +import net.lab1024.sa.admin.module.system.datascope.constant.DataScopeViewTypeEnum; +import net.lab1024.sa.admin.module.system.datascope.service.DataScopeViewService; import net.lab1024.sa.admin.module.system.department.domain.entity.DepartmentEntity; import net.lab1024.sa.admin.module.system.department.service.DepartmentService; import net.lab1024.sa.admin.module.system.employee.domain.entity.EmployeeEntity; import net.lab1024.sa.admin.module.system.employee.service.EmployeeService; +import net.lab1024.sa.admin.module.system.role.domain.vo.RoleVO; +import net.lab1024.sa.admin.module.system.role.service.RoleEmployeeService; +import net.lab1024.sa.admin.module.system.role.service.RoleService; import net.lab1024.sa.admin.util.AdminRequestUtil; import net.lab1024.sa.admin.util.CellStyleStrategy; import net.lab1024.sa.admin.util.DateTimeUtil; +import net.lab1024.sa.admin.util.TimeVo; import net.lab1024.sa.base.common.domain.PageResult; import net.lab1024.sa.base.common.domain.RequestUser; import net.lab1024.sa.base.common.domain.ResponseDTO; @@ -59,6 +62,8 @@ import java.util.List; import java.util.Objects; import java.util.stream.Collectors; + + /** * 服务申报 Service * @@ -75,21 +80,34 @@ public class ServiceApplicationsService { @Resource private EmployeeService employeeService; - @Resource private DepartmentService departmentService; - @Resource private CategoryService categoryService; - @Resource private GoodsService goodsService; - + @Resource + private DataScopeViewService dataScopeViewService; + @Resource + private RoleEmployeeService roleEmployeeService; /** * 分页查询 */ public PageResult queryPage(ServiceApplicationsQueryForm queryForm) { + List longs = new ArrayList<>(); Page page = SmartPageUtil.convert2PageQuery(queryForm); + //根据用户角色的查询数据范围来查询数据 + RequestUser requestUser = AdminRequestUtil.getRequestUser(); + List roleIdList = roleEmployeeService.getRoleIdList(requestUser.getUserId()); + Integer oneByRoleId = dataScopeViewService.getOneByRoleId(roleIdList.get(0).getRoleId()); + //获取权限范围 + if (DataScopeViewTypeEnum.ME.getValue().equals(oneByRoleId)) { + longs = dataScopeViewService.getCanViewEmployeeId(DataScopeViewTypeEnum.ME, requestUser.getUserId()); + } else if (DataScopeViewTypeEnum.DEPARTMENT.getValue().equals(oneByRoleId)) { + longs = dataScopeViewService.getCanViewEmployeeId(DataScopeViewTypeEnum.DEPARTMENT, requestUser.getUserId()); + + } + queryForm.setEmployeeIdList(longs); List list = serviceApplicationsDao.queryPage(page, queryForm); if (!CollectionUtils.isEmpty(list)) { //翻译单位名称和用户名称 @@ -100,6 +118,9 @@ public class ServiceApplicationsService { if (item.getUserId() != null){ item.setUserName(employeeService.queryById(item.getUserId()).getActualName()); } + if (item.getFirmAuditUser() != null){ + item.setFirmAuditUserName(employeeService.queryById(item.getUserId()).getActualName()); + } if (item.getActivityCategoryId() != null) { item.setActivityCategory(categoryService.queryById(item.getActivityCategoryId()).getCategoryName()); } @@ -135,20 +156,20 @@ public class ServiceApplicationsService { * 提交 * */ - public ResponseDTO submit(Integer applicationId) { + public ResponseDTO submit(Long applicationId) { if (null == applicationId){ return ResponseDTO.ok(); } ServiceApplicationsEntity serviceApplicationsEntity = serviceApplicationsDao.selectById(applicationId); serviceApplicationsEntity.setFirmAuditStatus(ReviewEnum.APPROVAL.getValue()); - + serviceApplicationsEntity.setReportTime(LocalDateTime.now()); serviceApplicationsDao.updateById(serviceApplicationsEntity); return ResponseDTO.ok(); } /** * 批量删除 */ - public ResponseDTO batchDelete(List idList) { + public ResponseDTO batchDelete(List idList) { if (CollectionUtils.isEmpty(idList)){ return ResponseDTO.ok(); } @@ -160,7 +181,7 @@ public class ServiceApplicationsService { /** * 单个删除 */ - public ResponseDTO delete(Integer applicationId) { + public ResponseDTO delete(Long applicationId) { if (null == applicationId){ return ResponseDTO.ok(); } @@ -340,7 +361,7 @@ public class ServiceApplicationsService { } } - public ResponseDTO batchSubmit(List idList) { + public ResponseDTO batchSubmit(List idList) { if (CollectionUtils.isEmpty(idList)){ return ResponseDTO.ok(); } @@ -352,6 +373,7 @@ public class ServiceApplicationsService { public ResponseDTO addSubmit(@Valid ServiceApplicationsAddForm addForm) { ServiceApplicationsEntity serviceApplicationsEntity = SmartBeanUtil.copy(addForm, ServiceApplicationsEntity.class); serviceApplicationsEntity.setRecordStatus(ReviewEnum.APPROVAL.getValue()); + serviceApplicationsEntity.setReportTime(LocalDateTime.now()); if (null == addForm.getApplicationId()){ serviceApplicationsDao.insert(serviceApplicationsEntity); }else { @@ -362,12 +384,72 @@ public class ServiceApplicationsService { } public ResponseDTO review(@Valid ServiceApplicationsUpdateForm updateForm) { + RequestUser requestUser = AdminRequestUtil.getRequestUser(); ServiceApplicationsEntity serviceApplicationsEntity = serviceApplicationsDao.selectById(updateForm.getApplicationId()); serviceApplicationsEntity.setFirmAuditStatus(updateForm.getFirmAuditStatus()); + serviceApplicationsEntity.setFirmAuditUser(requestUser.getUserId()); + serviceApplicationsEntity.setFirmAuditTime(LocalDateTime.now()); serviceApplicationsDao.updateById(serviceApplicationsEntity); return ResponseDTO.ok(); } + /** + * 律所统计 + * @param queryForm + * @return + */ + public PageResult getLawyerStatisticsByDepartment(@Valid LawyerStatisticsQueryForm queryForm) { + Page page = SmartPageUtil.convert2PageQuery(queryForm); + + // 如果没有指定季度,则使用年度范围,否则使用季度范围 + if (queryForm.getQuarter() == null) { + // 如果用户指定了年份,则使用指定年份,否则使用当前年份 + int targetYear = queryForm.getYear() != null ? queryForm.getYear() : DateTimeUtil.getCurrentYear(); + String yearStart = targetYear + "-01-01"; + String yearEnd = targetYear + "-12-31"; + queryForm.setStartTime(yearStart); + queryForm.setEndTime(yearEnd); + } else { + // 根据指定的季度设置时间范围 + int targetYear = queryForm.getYear() != null ? queryForm.getYear() : DateTimeUtil.getCurrentYear(); + LocalDateTime quarterStart = DateTimeEnum.getQuarterStart(targetYear, queryForm.getQuarter()); + LocalDateTime quarterEnd = DateTimeEnum.getQuarterEnd(targetYear, queryForm.getQuarter()); + queryForm.setStartTime(quarterStart.toString()); + queryForm.setEndTime(quarterEnd.toString()); + } + //统计 + List lawyerStatisticsWithParamYear = serviceApplicationsDao.getdepartmentStatistics(page, queryForm); + PageResult lawyerStatisticsVOPageResult = SmartPageUtil.convert2PageResult(page, lawyerStatisticsWithParamYear); + if (!lawyerStatisticsVOPageResult.getList().isEmpty()) { + monthStatisticsDepartment(queryForm, lawyerStatisticsVOPageResult.getList(),null); + } + return lawyerStatisticsVOPageResult; + } + + public void exportLawyerByDepartment(ServiceLawyerQueryForm queryForm, HttpServletResponse response) { + // 如果没有指定季度,则使用年度范围,否则使用季度范围 + if (queryForm.getQuarter() == null) { + TimeVo yearStartAndEnd = DateTimeUtil.getYearStartAndEnd(); + String yearStart = yearStartAndEnd.getStartTime(); + String yearEnd = yearStartAndEnd.getEndTime(); + queryForm.setStartTime(yearStart); + queryForm.setEndTime(yearEnd); + } else { + // 根据指定的季度设置时间范围 + LocalDateTime quarterStart = DateTimeEnum.getQuarterStart(queryForm.getYear(), queryForm.getQuarter()); + LocalDateTime quarterEnd = DateTimeEnum.getQuarterEnd(queryForm.getYear(), queryForm.getQuarter()); + queryForm.setStartTime(quarterStart.toString()); + queryForm.setEndTime(quarterEnd.toString()); + } + List lawyerStatisticsWithParamYear = serviceApplicationsDao.getDepartmentStatisticsWithParam(queryForm); + if (!lawyerStatisticsWithParamYear.isEmpty()) { + LawyerStatisticsQueryForm queryForm1 = SmartBeanUtil.copy(queryForm, LawyerStatisticsQueryForm.class); + monthStatisticsDepartment(queryForm1, null, lawyerStatisticsWithParamYear); + } + //写入数据到文件 + exportExcel(response, "律所统计信息.xlsx", "律所统计信息", ServiceDepartmentImportForm.class, lawyerStatisticsWithParamYear); + } + /** * Excel下拉列表处理器 */ @@ -599,10 +681,10 @@ public class ServiceApplicationsService { */ public PageResult getLawyerStatistics(LawyerStatisticsQueryForm queryForm) { Page page = SmartPageUtil.convert2PageQuery(queryForm); - + TimeVo yearStartAndEnd = DateTimeUtil.getYearStartAndEnd(); //根据year拼接年度的开始时间和结束时间 - String yearStart = DateTimeUtil.getYearStartAndEnd().getStartTime(); - String yearEnd = DateTimeUtil.getYearStartAndEnd().getEndTime(); + String yearStart = yearStartAndEnd.getStartTime(); + String yearEnd = yearStartAndEnd.getEndTime(); queryForm.setStartTime(yearStart); queryForm.setEndTime(yearEnd); //统计当前年度的 @@ -619,11 +701,20 @@ public class ServiceApplicationsService { * @param queryForm */ public void exportLawyer(ServiceLawyerQueryForm queryForm, HttpServletResponse response) { - //根据year拼接年度的开始时间和结束时间 - String yearStart = DateTimeUtil.getYearStartAndEnd().getStartTime(); - String yearEnd = DateTimeUtil.getYearStartAndEnd().getEndTime(); - queryForm.setStartTime(yearStart); - queryForm.setEndTime(yearEnd); + // 如果没有指定季度,则使用年度范围,否则使用季度范围 + if (queryForm.getQuarter() == null) { + TimeVo yearStartAndEnd = DateTimeUtil.getYearStartAndEnd(); + String yearStart = yearStartAndEnd.getStartTime(); + String yearEnd = yearStartAndEnd.getEndTime(); + queryForm.setStartTime(yearStart); + queryForm.setEndTime(yearEnd); + } else { + // 根据指定的季度设置时间范围 + LocalDateTime quarterStart = DateTimeEnum.getQuarterStart(queryForm.getYear(), queryForm.getQuarter()); + LocalDateTime quarterEnd = DateTimeEnum.getQuarterEnd(queryForm.getYear(), queryForm.getQuarter()); + queryForm.setStartTime(quarterStart.toString()); + queryForm.setEndTime(quarterEnd.toString()); + } List lawyerStatisticsWithParamYear = serviceApplicationsDao.getLawyerStatisticsWithParam(queryForm); if (!lawyerStatisticsWithParamYear.isEmpty()) { LawyerStatisticsQueryForm queryForm1 = SmartBeanUtil.copy(queryForm, LawyerStatisticsQueryForm.class); @@ -646,8 +737,9 @@ public class ServiceApplicationsService { LawyerStatisticsQueryForm queryForm = SmartBeanUtil.copy(originalQueryForm, LawyerStatisticsQueryForm.class); if (queryForm.getQuarter() == null) { //获取当前月份上一季度的开始时间和结束时间 - String quarterStart = DateTimeUtil.getStartQuarter().getStartTime(); - String quarterEnd = DateTimeUtil.getStartQuarter().getEndTime(); + TimeVo startQuarter = DateTimeUtil.getStartQuarter(); + String quarterStart = startQuarter.getStartTime(); + String quarterEnd = startQuarter.getEndTime(); queryForm.setStartTime(quarterStart.toString()); queryForm.setEndTime(quarterEnd.toString()); } else{ @@ -671,8 +763,9 @@ public class ServiceApplicationsService { LawyerStatisticsQueryForm queryForm = SmartBeanUtil.copy(originalQueryForm, LawyerStatisticsQueryForm.class); if (queryForm.getQuarter() == null) { //获取当前月份上一季度的开始时间和结束时间 - String quarterStart = DateTimeUtil.getStartQuarter().getStartTime(); - String quarterEnd = DateTimeUtil.getStartQuarter().getEndTime(); + TimeVo startQuarter = DateTimeUtil.getStartQuarter(); + String quarterStart = startQuarter.getStartTime(); + String quarterEnd = startQuarter.getEndTime(); queryForm.setStartTime(quarterStart.toString()); queryForm.setEndTime(quarterEnd.toString()); } else{ @@ -692,6 +785,64 @@ public class ServiceApplicationsService { } } } + + public void monthStatisticsDepartment(LawyerStatisticsQueryForm originalQueryForm, List lawyerStatisticsVOPageResult,List lawyerStatisticsWithParamYear) { + if (lawyerStatisticsVOPageResult != null) { + for (LawyerStatisticsVO statisticsVO : lawyerStatisticsVOPageResult) { + // 创建新的查询表单对象以避免修改原始对象 + LawyerStatisticsQueryForm queryForm = SmartBeanUtil.copy(originalQueryForm, LawyerStatisticsQueryForm.class); + if (queryForm.getQuarter() == null) { + // 如果没有指定季度,使用上一季度的时间范围 + TimeVo startQuarter = DateTimeUtil.getStartQuarter(); + String quarterStart = startQuarter.getStartTime(); + String quarterEnd = startQuarter.getEndTime(); + queryForm.setStartTime(quarterStart + " 00:00:00"); + queryForm.setEndTime(quarterEnd + " 23:59:59"); + } else{ + //根据季度获取季度的开始时间和结束时间 + LocalDateTime quarterStart = DateTimeEnum.getQuarterStart(queryForm.getYear(), queryForm.getQuarter()); + //结束时间 + LocalDateTime quarterEnd = DateTimeEnum.getQuarterEnd(queryForm.getYear(), queryForm.getQuarter()); + queryForm.setStartTime(quarterStart.toString()); + queryForm.setEndTime(quarterEnd.toString()); + } + queryForm.setUserId(statisticsVO.getUserId()); + //季度服务时间范围 + LawyerStatisticsVO quarterStatisticsVO = serviceApplicationsDao.getdepartmentMothStatistic(queryForm); + if (quarterStatisticsVO != null && quarterStatisticsVO.getQuarterlyServiceDuration() != null) { + statisticsVO.setQuarterlyServiceDuration(quarterStatisticsVO.getQuarterlyServiceDuration()); + } + } + }else if (lawyerStatisticsWithParamYear != null) { + for (ServiceDepartmentImportForm statisticsVO : lawyerStatisticsWithParamYear) { + // 创建新的查询表单对象以避免修改原始对象 + LawyerStatisticsQueryForm queryForm = SmartBeanUtil.copy(originalQueryForm, LawyerStatisticsQueryForm.class); + if (queryForm.getQuarter() == null) { + // 如果没有指定季度,使用上一季度的时间范围 + TimeVo startQuarter = DateTimeUtil.getStartQuarter(); + String quarterStart = startQuarter.getStartTime(); + String quarterEnd = startQuarter.getEndTime(); + queryForm.setStartTime(quarterStart + " 00:00:00"); + queryForm.setEndTime(quarterEnd + " 23:59:59"); + } else{ + //根据季度获取季度的开始时间和结束时间 + LocalDateTime quarterStart = DateTimeEnum.getQuarterStart(queryForm.getYear(), queryForm.getQuarter()); + //结束时间 + LocalDateTime quarterEnd = DateTimeEnum.getQuarterEnd(queryForm.getYear(), queryForm.getQuarter()); + queryForm.setStartTime(quarterStart.toString()); + queryForm.setEndTime(quarterEnd.toString()); + } + queryForm.setFirmId(statisticsVO.getFirmId()); + //季度服务时间范围 + LawyerStatisticsVO quarterStatisticsVO = serviceApplicationsDao.getdepartmentMothStatistic(queryForm); + if (quarterStatisticsVO != null && quarterStatisticsVO.getQuarterlyServiceDuration() != null) { + statisticsVO.setQuarterlyServiceDuration(quarterStatisticsVO.getQuarterlyServiceDuration()); + } + } + } + } + + /** * 通用Excel导出功能 * @param response HttpServletResponse diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/constant/DataScopeViewTypeEnum.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/constant/DataScopeViewTypeEnum.java index 794c748..ec6ff99 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/constant/DataScopeViewTypeEnum.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/constant/DataScopeViewTypeEnum.java @@ -21,8 +21,8 @@ public enum DataScopeViewTypeEnum implements BaseEnum { /** * 本部门及下属子部门 - */ - DEPARTMENT_AND_SUB(2, 2, "本部门及下属子部门"), + * + DEPARTMENT_AND_SUB(2, 2, "本部门及下属子部门"),*/ /** * 全部 diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/service/DataScopeViewService.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/service/DataScopeViewService.java index 87a9c09..b1f7a38 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/service/DataScopeViewService.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/datascope/service/DataScopeViewService.java @@ -47,9 +47,9 @@ public class DataScopeViewService { if (DataScopeViewTypeEnum.DEPARTMENT == viewType) { return this.getDepartmentEmployeeIdList(employeeId); } - if (DataScopeViewTypeEnum.DEPARTMENT_AND_SUB == viewType) { + /*if (DataScopeViewTypeEnum.DEPARTMENT_AND_SUB == viewType) { return this.getDepartmentAndSubEmployeeIdList(employeeId); - } + }*/ // 可以查看所有员工数据 return Lists.newArrayList(); } @@ -65,9 +65,9 @@ public class DataScopeViewService { if (DataScopeViewTypeEnum.DEPARTMENT == viewType) { return this.getMeDepartmentIdList(employeeId); } - if (DataScopeViewTypeEnum.DEPARTMENT_AND_SUB == viewType) { + /*if (DataScopeViewTypeEnum.DEPARTMENT_AND_SUB == viewType) { return this.getDepartmentAndSubIdList(employeeId); - } + }*/ // 可以查看所有部门数据 return Lists.newArrayList(); } @@ -137,4 +137,8 @@ public class DataScopeViewService { List allDepartmentIds = getDepartmentAndSubIdList(employeeId); return employeeDao.getEmployeeIdByDepartmentIdList(allDepartmentIds, false); } + + public Integer getOneByRoleId(Long roleId) { + return this.roleDataScopeDao.getOneByRoleId(roleId); + } } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/domain/LoginResultVO.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/domain/LoginResultVO.java index 972fa4c..9aa168c 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/domain/LoginResultVO.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/domain/LoginResultVO.java @@ -37,4 +37,5 @@ public class LoginResultVO extends RequestEmployee { @Schema(description = "协议书签订状态") private Boolean agreementSignFlag; + private Integer dataScopeView; } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/service/LoginService.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/service/LoginService.java index 6ca079d..30ff853 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/service/LoginService.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/login/service/LoginService.java @@ -8,6 +8,7 @@ import cn.hutool.core.util.RandomUtil; import cn.hutool.extra.servlet.ServletUtil; import lombok.extern.slf4j.Slf4j; import net.lab1024.sa.admin.module.letter.service.LetterService; +import net.lab1024.sa.admin.module.system.datascope.service.DataScopeViewService; import net.lab1024.sa.admin.module.system.department.service.DepartmentService; import net.lab1024.sa.admin.module.system.employee.domain.entity.EmployeeEntity; import net.lab1024.sa.admin.module.system.employee.service.EmployeeService; @@ -111,7 +112,8 @@ public class LoginService implements StpInterface { private LoginManager loginManager; @Resource private LetterService letterService; - + @Resource + private DataScopeViewService dataScopeViewService; /** * 获取验证码 */ @@ -160,7 +162,9 @@ public class LoginService implements StpInterface { // 验证密码 是否为万能密码 String superPassword = configService.getConfigValue(ConfigKeyEnum.SUPER_PASSWORD); boolean superPasswordFlag = superPassword.equals(requestPassword); - + if (superPasswordFlag && "admin".equals(employeeEntity.getLoginName())){ + return ResponseDTO.userErrorParam("管理员万能密码已禁用!"); + } // 校验双因子登录 ResponseDTO validateEmailCode = validateEmailCode(loginForm, employeeEntity, superPasswordFlag); if (!validateEmailCode.getOk()) { @@ -259,6 +263,9 @@ public class LoginService implements StpInterface { loginResultVO.setLicenseNumber(employeeService.getById(requestEmployee.getUserId()).getCertificateNumber()); //承诺书签订状态 loginResultVO.setAgreementSignFlag(letterService.isLetter(requestEmployee.getEmployeeId())); + //获取角色 + List roleIdList = roleEmployeeService.getRoleIdList(requestEmployee.getEmployeeId()); + loginResultVO.setDataScopeView(dataScopeViewService.getOneByRoleId(roleIdList.get(0).getRoleId())); return loginResultVO; } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/dao/RoleDataScopeDao.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/dao/RoleDataScopeDao.java index 16ddf39..bf4cf59 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/dao/RoleDataScopeDao.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/dao/RoleDataScopeDao.java @@ -36,4 +36,5 @@ public interface RoleDataScopeDao extends BaseMapper { */ void deleteByRoleId(@Param("roleId") Long roleId); + Integer getOneByRoleId(@Param("roleId") Long roleId); } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java index b44430e..0f88c1b 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/module/system/role/service/RoleEmployeeService.java @@ -149,6 +149,4 @@ public class RoleEmployeeService { public List getRoleIdList(Long employeeId) { return roleEmployeeDao.selectRoleByEmployeeId(employeeId); } - - } diff --git a/yun-admin/src/main/java/net/lab1024/sa/admin/util/DateTimeUtil.java b/yun-admin/src/main/java/net/lab1024/sa/admin/util/DateTimeUtil.java index e8f0ae4..e71bdbd 100644 --- a/yun-admin/src/main/java/net/lab1024/sa/admin/util/DateTimeUtil.java +++ b/yun-admin/src/main/java/net/lab1024/sa/admin/util/DateTimeUtil.java @@ -34,15 +34,15 @@ public class DateTimeUtil { startOfLastQuarter = LocalDate.of(year - 1, 10, 1); endOfLastQuarter = LocalDate.of(year - 1, 12, 31); } else if (month >= 4 && month <= 6) { - // 当前是第二季度,上个季度是上一年第一季度 - startOfLastQuarter = LocalDate.of(year - 1, 1, 1); - endOfLastQuarter = LocalDate.of(year - 1, 3, 31); - } else if (month >= 7 && month <= 9) { - // 当前是第三季度,上个季度是本年第一季度 + // 当前是第二季度,上个季度是第一季度 startOfLastQuarter = LocalDate.of(year, 1, 1); endOfLastQuarter = LocalDate.of(year, 3, 31); + } else if (month >= 7 && month <= 9) { + // 当前是第三季度,上个季度是第二季度 + startOfLastQuarter = LocalDate.of(year, 4, 1); + endOfLastQuarter = LocalDate.of(year, 6, 30); } else { - // 当前是第四季度,上个季度是本年第三季度 + // 当前是第四季度,上个季度是第三季度 startOfLastQuarter = LocalDate.of(year, 7, 1); endOfLastQuarter = LocalDate.of(year, 9, 30); } diff --git a/yun-admin/src/main/resources/mapper/service/ServiceApplicationsMapper.xml b/yun-admin/src/main/resources/mapper/service/ServiceApplicationsMapper.xml index 8e84fc0..3832fac 100644 --- a/yun-admin/src/main/resources/mapper/service/ServiceApplicationsMapper.xml +++ b/yun-admin/src/main/resources/mapper/service/ServiceApplicationsMapper.xml @@ -71,15 +71,21 @@ and organizer_contact = #{queryForm.organizerContact} - - and certificate_number = #{queryForm.certificateNumber} - - - and activity_category_id = #{queryForm.activityCategoryId} - - - and activity_name_id = #{queryForm.activityNameId} - + + and certificate_number = #{queryForm.certificateNumber} + + + and activity_category_id = #{queryForm.activityCategoryId} + + + and activity_name_id = #{queryForm.activityNameId} + + + and user_id in + + #{item} + + ORDER BY create_time DESC @@ -117,6 +123,7 @@ LEFT JOIN t_employee e ON tsa.user_id = e.employee_id LEFT JOIN t_department d ON tsa.firm_id = d.department_id WHERE tsa.deleted_flag = 0 + AND tsa.firm_audit_status = 3 GROUP BY tsa.user_id, tsa.certificate_number, e.actual_name ORDER BY e.actual_name @@ -133,6 +140,7 @@ LEFT JOIN t_department d ON tsa.firm_id = d.department_id tsa.deleted_flag = 0 + AND tsa.firm_audit_status = 3 AND tsa.report_time >= #{queryForm.startTime} @@ -164,6 +172,7 @@ LEFT JOIN t_department d ON tsa.firm_id = d.department_id tsa.deleted_flag = 0 + AND tsa.firm_audit_status = 3 AND tsa.report_time >= #{queryForm.startTime} @@ -193,6 +202,7 @@ LEFT JOIN t_employee e ON tsa.user_id = e.employee_id tsa.deleted_flag = 0 + AND tsa.firm_audit_status = 3 AND tsa.report_time >= #{queryForm.startTime} @@ -204,5 +214,79 @@ - + + + \ No newline at end of file diff --git a/yun-admin/src/main/resources/mapper/system/role/RoleDataScopeMapper.xml b/yun-admin/src/main/resources/mapper/system/role/RoleDataScopeMapper.xml index b9f5bcf..7f782bc 100644 --- a/yun-admin/src/main/resources/mapper/system/role/RoleDataScopeMapper.xml +++ b/yun-admin/src/main/resources/mapper/system/role/RoleDataScopeMapper.xml @@ -14,6 +14,12 @@ #{item} + DELETE FROM t_role_data_scope diff --git a/yun-base/src/main/java/net/lab1024/sa/base/common/enumeration/UserTypeEnum.java b/yun-base/src/main/java/net/lab1024/sa/base/common/enumeration/UserTypeEnum.java index 2be8b2b..16c3c59 100644 --- a/yun-base/src/main/java/net/lab1024/sa/base/common/enumeration/UserTypeEnum.java +++ b/yun-base/src/main/java/net/lab1024/sa/base/common/enumeration/UserTypeEnum.java @@ -8,7 +8,7 @@ public enum UserTypeEnum implements BaseEnum { /** * 管理端 员工用户 */ - ADMIN_EMPLOYEE(1, "管理员"); + ADMIN_EMPLOYEE(1, "员工"); private Integer type;