|
|
@@ -1,75 +1,83 @@
|
|
|
package com.xzjmyk.pm.activity.ui.erp.util.alarm;
|
|
|
|
|
|
-import android.content.Context;
|
|
|
-import android.database.SQLException;
|
|
|
-import android.os.Handler;
|
|
|
-import android.os.Message;
|
|
|
import android.util.Log;
|
|
|
|
|
|
-import com.alibaba.fastjson.JSONArray;
|
|
|
-import com.alibaba.fastjson.JSONObject;
|
|
|
-import com.xzjmyk.pm.activity.BdLocationHelper;
|
|
|
+import com.xzjmyk.pm.activity.AppConfig;
|
|
|
import com.xzjmyk.pm.activity.MyApplication;
|
|
|
-import com.xzjmyk.pm.activity.R;
|
|
|
import com.xzjmyk.pm.activity.bean.oa.SigninBean;
|
|
|
+import com.xzjmyk.pm.activity.db.dao.ErrorMagDao;
|
|
|
import com.xzjmyk.pm.activity.db.dao.SigninDao;
|
|
|
-import com.xzjmyk.pm.activity.ui.erp.activity.oa.SigninActivity;
|
|
|
-import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
|
|
|
-import com.xzjmyk.pm.activity.ui.erp.util.CodeUtil;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.entity.ErrorEntity;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.entity.MissionPlanEntity;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
|
|
|
import com.xzjmyk.pm.activity.util.BaiduMapUtil;
|
|
|
import com.xzjmyk.pm.activity.util.TimeUtils;
|
|
|
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.LinkedHashMap;
|
|
|
import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-
|
|
|
-import static com.alibaba.fastjson.JSON.parseObject;
|
|
|
-import static com.xzjmyk.pm.activity.ui.erp.net.ViewUtil.ct;
|
|
|
|
|
|
/**
|
|
|
- * 提醒管理器
|
|
|
- * Created by pengminggong on 2016/10/26.
|
|
|
+ * 关于提醒管理器(1.上班时间内离开办公地点 2.考勤提醒 3.自动签到外勤)
|
|
|
+ * <p>
|
|
|
+ * Created by Bitliker on 2016/11/18.
|
|
|
*/
|
|
|
-public class AlarmManage extends IAlarmManage {
|
|
|
-
|
|
|
- private NotificationManage manage;
|
|
|
- private SigninBean bean;
|
|
|
- private boolean isWork;
|
|
|
-
|
|
|
- private Handler handler = new Handler() {
|
|
|
- @Override
|
|
|
- public void handleMessage(Message msg) {
|
|
|
- String message = msg.getData().getString("result");
|
|
|
- switch (msg.what) {
|
|
|
- case 0x11:
|
|
|
- loadLog();
|
|
|
- break;
|
|
|
- case 0x12:
|
|
|
- if (parseObject(message).containsKey("listdata")) {
|
|
|
- setDataByLogs(parseObject(message).getJSONArray("listdata"));
|
|
|
- }
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
+public class AlarmManage {
|
|
|
+ /**
|
|
|
+ * 计算是否符合自动外勤,返回外勤列表中距离最小的对象,如果不符合,返回空
|
|
|
+ * 1.判断进行中的外勤计划,如果离开了签到最后一次,结束该计划
|
|
|
+ * 2.如果第一个不存在,判断获取最近的位置(包含已经结束的,防止定位不准问题)
|
|
|
+ *
|
|
|
+ * @param list 外勤列表数据
|
|
|
+ * @return
|
|
|
+ * @throws ClassCastException
|
|
|
+ */
|
|
|
+ public MissionPlanEntity reckonMission(List<MissionPlanEntity> list) throws ClassCastException {
|
|
|
+ int companyDistance = CommonUtil.getSharedPreferencesInt(MyApplication.getInstance(), AppConfig.ALARM_MISSION_DISTANCE, 500);
|
|
|
+ MissionPlanEntity minBean = null;
|
|
|
+ float minDistance = 0;
|
|
|
+ if (ListUtils.isEmpty(list)) {
|
|
|
+ return minBean;
|
|
|
+ }
|
|
|
+ for (MissionPlanEntity e : list) {
|
|
|
+ if (e.getLatLng() == null) continue;//定位不存在
|
|
|
+ //获取当前与目的地的距离
|
|
|
+ float distance = Float.valueOf(BaiduMapUtil.getInstence().getDistance(e.getLatLng()));
|
|
|
+ if (e.getStatus() == 1 && distance > companyDistance) {//1.判断进行中的外勤计划,如果离开了签到最后一次,结束该计划
|
|
|
+ Log.i("gongpengming", "符合外勤签退");
|
|
|
+ minBean = e;
|
|
|
+ minBean.setStatus(2);//结束该外勤
|
|
|
+ break;
|
|
|
+ } else if (distance < companyDistance) { //判断符合自动外勤
|
|
|
+ Log.i("gongpengming", "符合外勤签到");
|
|
|
+ if (minDistance <= 0 || minDistance > distance) {//2.如果第一个不存在,判断获取最近的位置
|
|
|
+ minDistance = distance;
|
|
|
+ minBean = e;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- };
|
|
|
-
|
|
|
-
|
|
|
- public AlarmManage() {
|
|
|
- manage = new NotificationManage();
|
|
|
+ return minBean;
|
|
|
}
|
|
|
|
|
|
- private NotificationManage getManage() {
|
|
|
- if (manage == null)
|
|
|
- manage = new NotificationManage();
|
|
|
- return manage;
|
|
|
+ //自动外勤提醒
|
|
|
+ public MissionPlanEntity alarmMission(List<MissionPlanEntity> list) throws ClassCastException {
|
|
|
+ //获取当天外勤计划
|
|
|
+ if (ListUtils.isEmpty(list)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ for (MissionPlanEntity e : list) {
|
|
|
+ if (!StringUtils.isEmpty(e.getVisitTime()) &&
|
|
|
+ //当前时间大于计划时间
|
|
|
+ System.currentTimeMillis() > TimeUtils.f_str_2_long(e.getVisitTime())
|
|
|
+ //没有签到过
|
|
|
+ && StringUtils.isEmpty(e.getRealTime()) && e.getStatus() != 3) {
|
|
|
+ return e;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
- //设置提醒
|
|
|
+ //自动打卡和提醒
|
|
|
public int reckonNextAlarm() {
|
|
|
//1.判断是否离开办公地点
|
|
|
// if (isOutoffWork()) {//离开办公地点
|
|
|
@@ -77,28 +85,26 @@ public class AlarmManage extends IAlarmManage {
|
|
|
// return;
|
|
|
// }
|
|
|
boolean isAlarm = CommonUtil.getSharedPreferencesBoolean(MyApplication.getInstance(), "ALARMA_CLICK", false);//是否自动打卡
|
|
|
- boolean isAuto = CommonUtil.getSharedPreferencesBoolean(MyApplication.getInstance(), "AUTO_SIGNIN", false);//是否提醒
|
|
|
- if (!isAlarm && !isAuto) return -1;
|
|
|
+ boolean isAuto = CommonUtil.getSharedPreferencesBoolean(MyApplication.getInstance(), "AUTO_SIGNIN", true);//是否提醒
|
|
|
long time = 0;
|
|
|
- bean = getNextBean();
|
|
|
+ SigninBean bean = getNextBean();//获取当前所在班次的下班之前
|
|
|
if (bean == null) return -1;
|
|
|
if (isAuto) {
|
|
|
- time = getNextWorkAuto(bean);//获取下一次自动上班打卡
|
|
|
- Log.i("gongpengming", "获取下一次自动上班打卡时间为=" + TimeUtils.f_long_2_str(time));
|
|
|
- if (time != 0 && Math.abs(System.currentTimeMillis() - time) <= 60000) {
|
|
|
+ time = getWorkAuto(bean);//获取下一次自动上班打卡
|
|
|
+ Log.i("gongpengming", "time=" + TimeUtils.f_long_2_str(time));//过期返回0
|
|
|
+ try {
|
|
|
+ saveMsg2DB(time);
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ }
|
|
|
+ if (time != 0) {
|
|
|
//TODO 符合自动上班打卡
|
|
|
-// SigninUtil util = new SigninUtil();
|
|
|
-// util.autoSignin();
|
|
|
-// doAutoSignin(true);
|
|
|
return 1;
|
|
|
}
|
|
|
- time = getNextOffAuto(bean);//获取下一次自动上班打卡
|
|
|
+ time = getOffAuto(bean);//获取下一次自动上班打卡
|
|
|
Log.i("gongpengming", "获取下一次自动上班打卡=" + TimeUtils.f_long_2_str(time));
|
|
|
- if (time != 0 && Math.abs(System.currentTimeMillis() - time) <= 60000) {
|
|
|
+ if (time != 0) {
|
|
|
//TODO 符合自动下班打卡
|
|
|
-// SigninUtil util = new SigninUtil();
|
|
|
-// util.autoSignin();
|
|
|
-// doAutoSignin(false);
|
|
|
return 1;
|
|
|
}
|
|
|
}
|
|
|
@@ -108,7 +114,6 @@ public class AlarmManage extends IAlarmManage {
|
|
|
Log.i("gongpengming", "获取上班提醒时间=" + TimeUtils.f_long_2_str(time));
|
|
|
if (time != 0 && Math.abs(System.currentTimeMillis() - time) <= 60000) {
|
|
|
//TODO 符合上班提醒
|
|
|
- getManage().sendNotification(MyApplication.getInstance(), "请按时上班打卡", SigninActivity.class);
|
|
|
bean.setWorkAlarm(bean.getWorkAlarm() + 1);
|
|
|
dao.updateByBrean(bean);
|
|
|
return 2;
|
|
|
@@ -117,139 +122,117 @@ public class AlarmManage extends IAlarmManage {
|
|
|
Log.i("gongpengming", "获取下班提醒时间=" + TimeUtils.f_long_2_str(time));
|
|
|
if (time != 0 && Math.abs(System.currentTimeMillis() - time) <= 60000) {
|
|
|
//TODO 符合下班提醒
|
|
|
- getManage().sendNotification(MyApplication.getInstance(), "请按时下班打卡", SigninActivity.class);
|
|
|
bean.setOffAlarm(bean.getOffAlarm() + 1);
|
|
|
dao.updateByBrean(bean);
|
|
|
return 3;
|
|
|
}
|
|
|
}
|
|
|
- return -1;
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
- private void doAutoSignin(boolean isWork) {
|
|
|
- this.isWork = isWork;
|
|
|
- if (bean != null) {//已经签过卡了
|
|
|
- if (isWork) {
|
|
|
- if (!StringUtils.isEmpty(bean.getWorkSignin()) && !StringUtils.isEmpty(bean.getWorkTime())
|
|
|
- && bean.getWorkSignin().compareTo(bean.getWorkTime()) < 0)
|
|
|
- return;
|
|
|
- } else {
|
|
|
- if (!StringUtils.isEmpty(bean.getOffSignin()) && !StringUtils.isEmpty(bean.getOffTime())
|
|
|
- && bean.getOffSignin().compareTo(bean.getOffTime()) > 0)
|
|
|
- return;
|
|
|
- }
|
|
|
- }
|
|
|
- CodeUtil.getInstance().getCode(MyApplication.getInstance(), "CardLog", new CodeUtil.OnCodeLinstener() {
|
|
|
- @Override
|
|
|
- public void callBack(String code) {
|
|
|
- doSignin(MyApplication.getInstance(), code);
|
|
|
- }
|
|
|
- }
|
|
|
- );
|
|
|
+ //5.判断是否离开工作范围
|
|
|
+ protected boolean isOutoffWork() {
|
|
|
+ if (!isWorkTime()) return false;
|
|
|
+ int comDistance = CommonUtil.getSharedPreferencesInt(MyApplication.getInstance(), "distance", 0);//规定距离
|
|
|
+ Log.i("gongpengming", "distance=" + comDistance);
|
|
|
+ return comDistance < Float.valueOf(BaiduMapUtil.getInstence().getDistance()) ? true : false;
|
|
|
}
|
|
|
|
|
|
- //签到
|
|
|
- private void doSignin(Context ct, String code) {
|
|
|
- Map<String, Object> param = new HashMap<>();
|
|
|
- Map<String, Object> form = new HashMap<>();
|
|
|
- form.put("cl_code", code);
|
|
|
- form.put("cl_phone", MyApplication.getInstance().mLoginUser.getTelephone());
|
|
|
- form.put("cl_emcode", CommonUtil.getSharedPreferences(ct, "erp_username"));
|
|
|
- String emname = CommonUtil.getSharedPreferences(ct, "erp_emname");
|
|
|
- if (StringUtils.isEmpty(emname)) {
|
|
|
- emname = MyApplication.getInstance().mLoginUser.getNickName().trim();
|
|
|
- }
|
|
|
- form.put("cl_emname", emname);
|
|
|
- boolean isp = isPlay(ct, form);
|
|
|
- if (!isp) return;//不符合打卡
|
|
|
- String formStore = StringUtils.mapToJson(form);
|
|
|
- param.put("caller", "CardLog");
|
|
|
- param.put("formStore", formStore);
|
|
|
- String url = CommonUtil.getSharedPreferences(ct, "erp_baseurl") + "mobile/saveCardLog.action";
|
|
|
- param.put("emcode", CommonUtil.getSharedPreferences(ct, "erp_username"));
|
|
|
- LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
|
|
|
- headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
|
|
|
- ViewUtil.httpSendRequest(ct, url, param, handler, headers, 0x11, null, null, "get");
|
|
|
+
|
|
|
+ private void saveMsg2DB(long time) {
|
|
|
+ ErrorEntity entity = new ErrorEntity();
|
|
|
+ entity.setTitle("IAlarmManage");
|
|
|
+ entity.setTime(TimeUtils.f_long_2_str(System.currentTimeMillis()));
|
|
|
+ entity.setMsg("获取下一次自动上班打卡时间为=" + TimeUtils.f_long_2_str(time));
|
|
|
+ ErrorMagDao.getInstance().insert(entity);
|
|
|
}
|
|
|
|
|
|
- /*判断是否符合打卡*/
|
|
|
- private boolean isPlay(Context ct, Map<String, Object> form) {
|
|
|
- try {
|
|
|
- //判断是否符合打卡
|
|
|
- BdLocationHelper helper = MyApplication.getInstance().getBdLocationHelper();
|
|
|
- form.put("cl_address", helper.getAddress());
|
|
|
- form.put("cl_location", helper.getName());
|
|
|
- int comDistance = CommonUtil.getSharedPreferencesInt(ct, "distance", 0);
|
|
|
- String distance = BaiduMapUtil.getInstence().getDistance();
|
|
|
- if (comDistance < Float.valueOf(distance)) {//规定地址<实际地址 不符合
|
|
|
- helper.requestLocation();//当不符合时候提交定位,并不执行打卡签到
|
|
|
- return false;
|
|
|
- } else {
|
|
|
- form.put("cl_distance", distance);
|
|
|
- return true;
|
|
|
+
|
|
|
+ private SigninBean getNextBean() {
|
|
|
+ SigninDao dao = new SigninDao(MyApplication.getInstance());
|
|
|
+ List<SigninBean> list = dao.queryByEmcode();//获取所有班次
|
|
|
+ if (ListUtils.isEmpty(list)) return null;
|
|
|
+ long endTime = 0;
|
|
|
+ SigninBean minSignin = null;
|
|
|
+ for (SigninBean e : list) {
|
|
|
+ endTime = getTimeByHHmm(StringUtils.isEmpty(e.getEndTime()) ? e.getOffTime() : e.getEndTime());
|
|
|
+ if (System.currentTimeMillis() < endTime) {//当前时间在该班次结束之前
|
|
|
+ return e;
|
|
|
}
|
|
|
- } catch (NullPointerException e) {
|
|
|
- return false;
|
|
|
- } catch (SQLException e) {
|
|
|
- return false;
|
|
|
- }
|
|
|
+ if (minSignin == null) minSignin = e;
|
|
|
+ else if (StringUtils.isEmpty(minSignin.getWorkTime()) && StringUtils.isEmpty(minSignin.getWorkTime()) &&
|
|
|
+ minSignin.getWorkTime().compareTo(e.getWorkTime()) > 0) minSignin = e;
|
|
|
+ }//当天班次无存在符合时间点
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
- //获取打卡记录 date:yyyy-MM-dd
|
|
|
- private void loadLog() {
|
|
|
- String date = TimeUtils.s_long_2_str(System.currentTimeMillis());
|
|
|
- //获取网络数据
|
|
|
- String url = CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_baseurl") + "mobile/oa/workdata.action";
|
|
|
- Map<String, Object> param = new HashMap<>();
|
|
|
- String code = CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_username");
|
|
|
- param.put("currentMaster", CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_master"));
|
|
|
- param.put("page", 1);
|
|
|
- param.put("pageSize", 1000);
|
|
|
- param.put("condition", "cl_emcode='" + code + "' and to_char(cl_time,'yyyy-MM-dd')='" + date + "'");
|
|
|
- param.put("caller", "CardLog");
|
|
|
- param.put("emcode", code);
|
|
|
- param.put("master", CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_master"));
|
|
|
- param.put("sessionUser", CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_username"));
|
|
|
- param.put("sessionId", CommonUtil.getSharedPreferences(MyApplication.getInstance(), "sessionId"));
|
|
|
- LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
|
|
|
- headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
|
|
|
- ViewUtil.httpSendRequest(MyApplication.getInstance(), url, param, handler, headers, 0x12, null, null, "get");
|
|
|
+
|
|
|
+ private long getNextWorkAlarm(SigninBean bean) {
|
|
|
+ if (bean == null || !StringUtils.isEmpty(bean.getWorkSignin()) || bean.getWorkAlarm() != 0 || StringUtils.isEmpty(bean.getWorkTime()))
|
|
|
+ return 0;
|
|
|
+ int difference = CommonUtil.getSharedPreferencesInt(MyApplication.getInstance(), "ALARM_WORK_TIME", 5);//上班提前xx分钟
|
|
|
+ return getTimeByHHmm(bean.getWorkTime()) - difference * 60000;
|
|
|
}
|
|
|
|
|
|
- //处理数据,获取到用户签到列表
|
|
|
- private void setDataByLogs(JSONArray array) {
|
|
|
- //取最后一个
|
|
|
- JSONObject object = array.getJSONObject(array.size() - 1);
|
|
|
- String time = object.getString("cl_time");//获取最后一次打卡信息,班次打卡信息
|
|
|
- time = TimeUtils.clearDay(time);//获取到的
|
|
|
- if (StringUtils.isEmpty(time)) return;
|
|
|
- SigninDao dao = new SigninDao(MyApplication.getInstance());
|
|
|
- if (bean != null) {
|
|
|
- if (isWork && !StringUtils.isEmpty(bean.getStartTime()) && bean.getStartTime().compareTo(time) < 0
|
|
|
- && bean.getWorkTime().compareTo(time) > 0) {//打卡时间小于上班时间
|
|
|
- bean.setWorkSignin(time);
|
|
|
- getManage().sendNotification(MyApplication.getInstance(), R.string.auto_signin, SigninActivity.class);
|
|
|
- dao.updateByBrean(bean);
|
|
|
- } else if (!isWork && !StringUtils.isEmpty(bean.getEndTime()) && bean.getEndTime().compareTo(time) > 0
|
|
|
- && bean.getOffTime().compareTo(time) < 0) {
|
|
|
- bean.setOffSignin(time);
|
|
|
- dao.updateByBrean(bean);
|
|
|
- getManage().sendNotification(MyApplication.getInstance(), R.string.auto_signin, SigninActivity.class);
|
|
|
- }
|
|
|
+
|
|
|
+ private long getNextOffAlarm(SigninBean bean) {
|
|
|
+ if (bean == null || !StringUtils.isEmpty(bean.getOffSignin()) || bean.getOffAlarm() != 0 || StringUtils.isEmpty(bean.getOffTime()))
|
|
|
+ return 0;
|
|
|
+ int difference = CommonUtil.getSharedPreferencesInt(MyApplication.getInstance(), "ALARM_OFFWORK_TIME", 5);//下班延迟xx分钟
|
|
|
+ return getTimeByHHmm(bean.getOffTime()) + difference * 60000;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //获取上班打卡时间
|
|
|
+ private long getWorkAuto(SigninBean bean) {
|
|
|
+ if (bean == null || !StringUtils.isEmpty(bean.getWorkSignin())
|
|
|
+ || StringUtils.isEmpty(bean.getWorkTime()) ||
|
|
|
+ StringUtils.isEmpty(bean.getStartTime()))
|
|
|
+ return 0;
|
|
|
+ long workTime = getTimeByHHmm(bean.getWorkTime());
|
|
|
+ long startTime = getTimeByHHmm(bean.getStartTime());//上班范围+3分钟
|
|
|
+ if (startTime < System.currentTimeMillis() && workTime > System.currentTimeMillis()) {
|
|
|
+ return System.currentTimeMillis();
|
|
|
} else {
|
|
|
- List<SigninBean> beans = dao.queryByEmcode();
|
|
|
- for (SigninBean e : beans) {
|
|
|
- if (!StringUtils.isEmpty(e.getStartTime()) && !StringUtils.isEmpty(e.getEndTime()) && e.getStartTime().compareTo(time) < 0 && e.getEndTime().compareTo(time) > 0) {
|
|
|
- //在该班次内
|
|
|
- if (isWork) e.setWorkSignin(time);
|
|
|
- else e.setOffSignin(time);
|
|
|
- //TODO 保存数据库
|
|
|
- dao.updateByBrean(e);
|
|
|
- return;
|
|
|
- }
|
|
|
- }
|
|
|
+ return 0;
|
|
|
}
|
|
|
+ }
|
|
|
|
|
|
+
|
|
|
+ //获取下班打卡时间
|
|
|
+ private long getOffAuto(SigninBean bean) {
|
|
|
+ if (bean == null || !StringUtils.isEmpty(bean.getOffSignin()) ||
|
|
|
+ StringUtils.isEmpty(bean.getOffTime()) ||
|
|
|
+ StringUtils.isEmpty(bean.getEndTime()))
|
|
|
+ return 0;
|
|
|
+ long workTime = getTimeByHHmm(bean.getOffTime());
|
|
|
+ long endTime = getTimeByHHmm(bean.getEndTime());//上班范围+3分钟
|
|
|
+ if (workTime < System.currentTimeMillis() && endTime > System.currentTimeMillis()) {
|
|
|
+ return System.currentTimeMillis();
|
|
|
+ } else {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /*通过时分获取当天改时间时间戳*/
|
|
|
+ private long getTimeByHHmm(String time) {
|
|
|
+ if (StringUtils.isEmpty(time)) return 0;
|
|
|
+ String che = TimeUtils.s_long_2_str(System.currentTimeMillis()) + " " + time + ":00";//当天下班时间
|
|
|
+ return TimeUtils.f_str_2_long(che);
|
|
|
}
|
|
|
|
|
|
+ /*当前是否在办公时间内*/
|
|
|
+ private boolean isWorkTime() {
|
|
|
+ try {
|
|
|
+ SigninBean bean = getNextBean();
|
|
|
+ //此语句判空处理有问题!!! Arison
|
|
|
+ if (!StringUtils.isEmpty(bean.getWorkTime()) && System.currentTimeMillis() > getTimeByHHmm(bean.getWorkTime()))
|
|
|
+ return true;
|
|
|
+ else return false;
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|