|
|
@@ -115,9 +115,9 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
if (isB2b) {
|
|
|
signinWork(bundle, "");
|
|
|
} else {
|
|
|
- if(SwitchUtil.needMacForSign()){
|
|
|
+ if (SwitchUtil.needMacForSign()) {
|
|
|
validatorMac(model, SystemUtil.getMac(MyApplication.getInstance())); // 关闭mac地址验证
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
CommonInterface.getInstance().getCodeByNet("CardLog", new CommonInterface.OnResultListener() {
|
|
|
@Override
|
|
|
public void result(boolean isOk, int result, String message) {
|
|
|
@@ -262,18 +262,18 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
form.put("cl_address", address);
|
|
|
form.put("cl_location", "android " + MyApplication.getInstance().getString(R.string.auto_work_signin_log));
|
|
|
// int comDistance = PreferenceUtils.getInt("distance", 0);
|
|
|
- float distance =-1;
|
|
|
+ float distance = -1;
|
|
|
List<WorkLocationModel> beanList = WorkLocationDao.getInstance().queryByEnCode();
|
|
|
if (!ListUtils.isEmpty(beanList)) {
|
|
|
for (WorkLocationModel bean : beanList) {
|
|
|
- float dis=LocationDistanceUtils.distanceMeBack(bean.getLocation());
|
|
|
- if ( dis< bean.getValidrange()) {
|
|
|
- distance=dis;
|
|
|
+ float dis = LocationDistanceUtils.distanceMeBack(bean.getLocation());
|
|
|
+ if (dis < bean.getValidrange()) {
|
|
|
+ distance = dis;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- if (distance==-1) {
|
|
|
+ if (distance == -1) {
|
|
|
//判断是否有外勤
|
|
|
boolean isOutPlan = PreferenceUtils.getBoolean(AppConfig.HAVE_OUT_PLAN, false);
|
|
|
return false;
|
|
|
@@ -454,13 +454,13 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
LocalBroadcastManager.getInstance(MyApplication.getInstance()).sendBroadcast(intent);
|
|
|
PreferenceUtils.putBoolean("hasAutoSign", true);
|
|
|
int isWork = bundle == null ? -1 : bundle.getInt("isWork", -1);
|
|
|
- int rawId=R.raw.voice_work;
|
|
|
+ int rawId = R.raw.voice_work;
|
|
|
switch (isWork) {
|
|
|
case 0:
|
|
|
- rawId=R.raw.voice_off;
|
|
|
+ rawId = R.raw.voice_off;
|
|
|
break;
|
|
|
case 1:
|
|
|
- rawId=R.raw.voice_work;
|
|
|
+ rawId = R.raw.voice_work;
|
|
|
break;
|
|
|
}
|
|
|
VoiceUtils.signVoice(rawId);
|
|
|
@@ -481,7 +481,7 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
if (bundle == null) return;
|
|
|
MissionModel mission = bundle.getParcelable("data");
|
|
|
if (mission == null) return;
|
|
|
- updataMissonDB(mission);
|
|
|
+ updataMissonDB(mission, true);
|
|
|
}
|
|
|
}
|
|
|
break;
|
|
|
@@ -589,7 +589,7 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
|
|
|
- private void updataMissonDB(MissionModel mission) throws Exception {
|
|
|
+ public void updataMissonDB(MissionModel mission, boolean isAuto) throws Exception {
|
|
|
//更新数据库
|
|
|
if (mission == null) return;//如果数据库没有,一般不会出现这样的情况
|
|
|
if (StringUtil.isEmpty(mission.getRealTime()))
|
|
|
@@ -598,21 +598,23 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
String title = "";
|
|
|
String subTitle = "";
|
|
|
if (mission.getStatus() == 2) {//签退
|
|
|
- title = MyApplication.getInstance().getString(R.string.auto_mission_alert);
|
|
|
- if (StringUtil.isEmpty(mission.getCompanyName()))
|
|
|
- subTitle = MyApplication.getInstance().getString(R.string.uu_auto_signined_down);
|
|
|
- else
|
|
|
- subTitle = MyApplication.getInstance().getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_down);
|
|
|
+ if (isAuto) {
|
|
|
+ title = getString(R.string.auto_mission_alert);
|
|
|
+ } else {
|
|
|
+ title = getString(R.string.manual_mission_alert);
|
|
|
+ }
|
|
|
+ subTitle = getMissionSubTitle(mission);
|
|
|
|
|
|
CommonInterface.getInstance().endMission(mission.getId(), false);
|
|
|
loadIsMission(mission);
|
|
|
} else {//签到
|
|
|
if (mission.getStatus() < 1) {
|
|
|
- title = getString(R.string.auto_mission_alert);
|
|
|
- if (StringUtil.isEmpty(mission.getCompanyName()))
|
|
|
- subTitle = getString(R.string.uu_auto_signined_up);
|
|
|
- else
|
|
|
- subTitle = getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_up);
|
|
|
+ if (isAuto) {
|
|
|
+ title = getString(R.string.auto_mission_alert);
|
|
|
+ } else {
|
|
|
+ title = getString(R.string.manual_mission_alert);
|
|
|
+ }
|
|
|
+ subTitle = getMissionSubTitle(mission);
|
|
|
mission.setStatus(1);//说明没有打过卡
|
|
|
boolean saveOk = MissionDao.getInstance().updata(mission);
|
|
|
if (saveOk)//XXX公司自动外勤签到成功
|
|
|
@@ -626,6 +628,22 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
MessageDao.getInstance().instartSignin(title, subTitle);
|
|
|
}
|
|
|
|
|
|
+ public static String getMissionSubTitle(MissionModel mission) {
|
|
|
+ String subTitle;
|
|
|
+ if (mission.getStatus() == 2) {
|
|
|
+ if (StringUtil.isEmpty(mission.getCompanyName()))
|
|
|
+ subTitle = MyApplication.getInstance().getString(R.string.uu_auto_signined_down);
|
|
|
+ else
|
|
|
+ subTitle = MyApplication.getInstance().getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_down);
|
|
|
+ } else {
|
|
|
+ if (StringUtil.isEmpty(mission.getCompanyName()))
|
|
|
+ subTitle = getString(R.string.uu_auto_signined_up);
|
|
|
+ else
|
|
|
+ subTitle = getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_up);
|
|
|
+ }
|
|
|
+ return subTitle;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 外勤签退后判断时候还有外勤计划,如果没有,判断是否符合返回公司 返回提示请返回公司签到
|
|
|
*
|
|
|
@@ -930,7 +948,7 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
|
|
|
return (int) (time2 / 1000);
|
|
|
}
|
|
|
|
|
|
- private String getString(int id) {
|
|
|
+ private static String getString(int id) {
|
|
|
return MyApplication.getInstance().getString(id);
|
|
|
}
|
|
|
|