调整餐厅开餐时间
This commit is contained in:
parent
61848a4a82
commit
c6738119d1
@ -1,6 +1,5 @@
|
||||
package com.evo.common.utils;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.evo.attendance.domain.RzSysParam;
|
||||
import com.evo.attendance.service.IRzSysParamService;
|
||||
@ -12,8 +11,6 @@ import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.time.LocalDate;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -38,7 +35,18 @@ public class ParamUtils {
|
||||
private static ISysDictDataService dictDataService;
|
||||
|
||||
private static IRzHolidayService rzHolidayService;
|
||||
|
||||
/**
|
||||
* 早餐
|
||||
*/
|
||||
public static String BREAKFAST_SCOPE = "早餐";
|
||||
/**
|
||||
* 午餐
|
||||
*/
|
||||
public static String LUNCH_SCOPE = "午餐";
|
||||
/**
|
||||
* 晚餐
|
||||
*/
|
||||
public static String DINNER_SCOPE = "晚餐";
|
||||
@Autowired
|
||||
public ParamUtils(IRzSysParamService paramService, ISysDictDataService dictDataService,IRzHolidayService rzHolidayService) {
|
||||
this.paramService = paramService;
|
||||
@ -46,6 +54,27 @@ public class ParamUtils {
|
||||
this.rzHolidayService = rzHolidayService;
|
||||
}
|
||||
|
||||
/***
|
||||
* 获取餐厅的开放时间
|
||||
* @return
|
||||
*/
|
||||
public static List<Integer> getCanteenOpenHour(){
|
||||
RzSysParam param= paramService.getRzSysParam("餐厅的开放就餐时间", "canteen_open_hour","7,8,11,12,13,17,18,19,20","餐厅的开放就餐时间, 多个时间用,间隔");
|
||||
return Collections.asList(param.getParamValue().split(",")).stream().filter(StringUtils::isNotEmpty).map(Integer::valueOf).collect(Collectors.toList());
|
||||
}
|
||||
public static Map<String, Map<String, Integer>> getCanteenLimitHour(){
|
||||
RzSysParam param= paramService.getRzSysParam("餐厅的开放就餐时间", "canteen_limit_hour","{\""+BREAKFAST_SCOPE+"\":\"6~9\", \""+LUNCH_SCOPE+"\":\"11~14\", \""+DINNER_SCOPE+"\":\"17~20\"}","餐厅的开放就餐时间, 多个时间用,间隔");
|
||||
JSONObject jsonObject = JSONObject.parseObject(param.getParamValue());
|
||||
String[] breakfastScope = jsonObject.getString(BREAKFAST_SCOPE).split("~");
|
||||
String[] lunchScope = jsonObject.getString(LUNCH_SCOPE).split("~");
|
||||
String[] dinnerScope = jsonObject.getString(DINNER_SCOPE).split("~");
|
||||
Map<String, Map<String, Integer>> result = Collections.emptyMap();
|
||||
result.put(BREAKFAST_SCOPE, Collections.asMap("minHour", Integer.valueOf(breakfastScope[0]),"maxHour",Integer.valueOf(breakfastScope[1])));
|
||||
result.put(LUNCH_SCOPE,Collections.asMap("minHour",Integer.valueOf(lunchScope[0]),"maxHour",Integer.valueOf(lunchScope[1])));
|
||||
result.put(DINNER_SCOPE,Collections.asMap("minHour",Integer.valueOf(dinnerScope[0]),"maxHour",Integer.valueOf(dinnerScope[1])));
|
||||
return result;
|
||||
}
|
||||
|
||||
public static String getLimitSubsidyDay(){
|
||||
RzSysParam param= paramService.getRzSysParam("月中转正的补助限制日期", "limit_subsidy_day","10","月中转正的补助限制日期; 如value填写的为10. 则10号之前转正有补助, 10号之后转正没有补助");
|
||||
return param.getParamValue();
|
||||
@ -145,8 +174,7 @@ public class ParamUtils {
|
||||
public static JSONObject getDeviceOverTimeRules(String sn){
|
||||
if(StringUtils.isEmpty(sn)) return null;
|
||||
RzSysParam param= paramService.getRzSysParam("特殊加班的考勤规则", "device_over_time_rules","{\"ET74336\":{\"minHour\":2, \"maxHour\":3,\"endMealTime\":\"19:00\"}}","特殊加班的考勤规则, minHour:最小加班时长. maxHour: 最大加班时长, endMealTime: 餐厅闭厅时间");
|
||||
String val = param.getParamValue();
|
||||
JSONObject jsonObject = JSONObject.parseObject(val);
|
||||
JSONObject jsonObject = JSONObject.parseObject(param.getParamValue());
|
||||
JSONObject rules = jsonObject.getJSONObject(sn);
|
||||
return (ObjectUtils.isEmpty(rules) ? JSONObject.parseObject("{\"maxHour\":4}") : rules);
|
||||
}
|
||||
|
||||
@ -170,7 +170,7 @@ public class WebSocketServer{
|
||||
//发送设备按钮信息
|
||||
snDetailService.sendButtons(Collections.asList(snDetail.getSn()));
|
||||
//发送照片
|
||||
snDetailService.sendPhoto(Collections.asList(snDetail.getSn()), null);
|
||||
// snDetailService.sendPhoto(Collections.asList(snDetail.getSn()), null);
|
||||
}else{
|
||||
//接受设备端返回的数据,先不做处理
|
||||
System.out.println("设备返回信息:"+message);
|
||||
|
||||
@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSONObject;
|
||||
import com.evo.common.constant.Constants;
|
||||
import com.evo.common.core.domain.AjaxResult;
|
||||
import com.evo.common.utils.DateUtils;
|
||||
import com.evo.common.utils.ParamUtils;
|
||||
import com.evo.common.utils.SecurityUtils;
|
||||
import com.evo.common.utils.StringUtils;
|
||||
import com.evo.restaurant.domain.RzRestaurantDetail;
|
||||
@ -22,6 +23,7 @@ import javax.annotation.Resource;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 餐饮详情Service业务层处理
|
||||
@ -71,7 +73,8 @@ public class RzRestaurantDetailServiceImpl implements IRzRestaurantDetailService
|
||||
int hour = calendar.get(Calendar.HOUR_OF_DAY);
|
||||
|
||||
//判断是否在就餐时间,如果在就餐时间打卡有效,否则打卡无效
|
||||
if(hour!=7&&hour!=8&&hour!=11&&hour!=12&&hour!=13&&hour!=18&&hour!=19&&hour!=20){
|
||||
//if(hour!=7&&hour!=8&&hour!=11&&hour!=12&&hour!=13&&hour!=18&&hour!=19&&hour!=20){
|
||||
if(!ParamUtils.getCanteenOpenHour().contains(hour)){
|
||||
cfiv.setResult(2);
|
||||
cfiv.setMsg("{\"Result\":1,\"Msg\":\"不在打卡时间内\"}");
|
||||
return JSONObject.toJSONString(cfiv);
|
||||
@ -109,15 +112,19 @@ public class RzRestaurantDetailServiceImpl implements IRzRestaurantDetailService
|
||||
cyFaceInfo.setName(restaurantStatistics.getName());
|
||||
cyFaceInfo.setTime(new Date());
|
||||
//判断刷脸时间是早餐还是午餐还是晚餐
|
||||
if(hour>6&&hour<9){
|
||||
Map<String, Map<String, Integer>> limitHour = ParamUtils.getCanteenLimitHour();
|
||||
Map<String, Integer> breakfastLimitMap = limitHour.get(ParamUtils.BREAKFAST_SCOPE);
|
||||
Map<String, Integer> lunchLimitMap = limitHour.get(ParamUtils.LUNCH_SCOPE);
|
||||
Map<String, Integer> dinnerLimitMap = limitHour.get(ParamUtils.DINNER_SCOPE);
|
||||
if(breakfastLimitMap.get("minHour") < hour && hour < breakfastLimitMap.get("maxHour")){
|
||||
//说明是早餐
|
||||
cyFaceInfo.setSign("早餐");
|
||||
restaurantStatistics.setBreakfastNumber(restaurantStatistics.getBreakfastNumber() + 1);
|
||||
}else if(hour>=11&&hour<=14){
|
||||
}else if(lunchLimitMap.get("minHour") <= hour && hour <= lunchLimitMap.get("maxHour")){
|
||||
//说明是午餐
|
||||
cyFaceInfo.setSign("午餐");
|
||||
restaurantStatistics.setLunchNumber(restaurantStatistics.getLunchNumber() + 1);
|
||||
}else if(hour>=18&&hour<=20){
|
||||
}else if(dinnerLimitMap.get("minHour") <= hour && hour <= dinnerLimitMap.get("maxHour")){
|
||||
//说明是晚餐
|
||||
cyFaceInfo.setSign("晚餐");
|
||||
restaurantStatistics.setSupperNumber(restaurantStatistics.getSupperNumber() + 1);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user