|
@@ -46,22 +46,26 @@ public class KaoQinController extends BaseController {
|
|
|
*/
|
|
|
@GetMapping(value = "/daKa")
|
|
|
public AjaxResult daKa(KaoqinConfig kaoqinConfig) {
|
|
|
- //根据部门祖籍列表,查询该部门考勤范围 ,经纬度
|
|
|
- List<KaoqinConfig> kaoqinConfigs = kaoqinConfigService.selectKaoqinConfigList(kaoqinConfig);
|
|
|
- if (kaoqinConfigs != null && kaoqinConfigs.size() > 1) {
|
|
|
- //如果有多条考勤规则,先选离自己最近的规则
|
|
|
- String ancestors = kaoqinConfig.getAncestors();
|
|
|
- String[] split = ancestors.split(",");
|
|
|
- Map<Long, List<KaoqinConfig>> collect = kaoqinConfigs.stream().collect(Collectors.groupingBy(KaoqinConfig::getDeptId));
|
|
|
- for (int i = split.length - 1; i >= 0; i--) {
|
|
|
- String s = split[i];
|
|
|
- List<KaoqinConfig> kaoqinConfigsDept = collect.get(Long.parseLong(s));
|
|
|
- if (kaoqinConfigsDept != null) {
|
|
|
- return AjaxResult.success(kaoqinConfigsDept);
|
|
|
+ //先去 根据当前人员的部门id查询是否有规则,没有再去差祖籍列表
|
|
|
+ KaoqinConfig kaoqinConfigDept = kaoqinConfigService.selectKaoqinConfigByDeptId(kaoqinConfig.getDeptId());
|
|
|
+ if (kaoqinConfigDept == null){
|
|
|
+ //根据部门祖籍列表,查询该部门考勤范围 ,经纬度
|
|
|
+ List<KaoqinConfig> kaoqinConfigs = kaoqinConfigService.selectKaoqinConfigList(kaoqinConfig);
|
|
|
+ if (kaoqinConfigs != null && kaoqinConfigs.size() > 1) {
|
|
|
+ //如果有多条考勤规则,先选离自己最近的规则
|
|
|
+ String ancestors = kaoqinConfig.getAncestors();
|
|
|
+ String[] split = ancestors.split(",");
|
|
|
+ Map<Long, List<KaoqinConfig>> collect = kaoqinConfigs.stream().collect(Collectors.groupingBy(KaoqinConfig::getDeptId));
|
|
|
+ for (int i = split.length - 1; i >= 0; i--) {
|
|
|
+ String s = split[i];
|
|
|
+ List<KaoqinConfig> kaoqinConfigsDept = collect.get(Long.parseLong(s));
|
|
|
+ if (kaoqinConfigsDept != null) {
|
|
|
+ return AjaxResult.success(kaoqinConfigsDept);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- return AjaxResult.success(kaoqinConfigs);
|
|
|
+ return AjaxResult.success(kaoqinConfigDept);
|
|
|
}
|
|
|
|
|
|
|