添加时间夸零晨不能添加bug处理

This commit is contained in:
jia 2024-09-11 22:51:48 +08:00
parent a8f3c3f159
commit 10d9ef2954
12 changed files with 624 additions and 699 deletions

View File

@ -26,5 +26,5 @@ android.enableJetifier=true
android.useAndroidX=true android.useAndroidX=true
android.useDeprecatedNdk=true android.useDeprecatedNdk=true
versionCode=47 versionCode=48
versionName=4.11.7 versionName=4.11.8

View File

@ -18,6 +18,7 @@ import android.widget.TextView;
import com.bumptech.glide.Glide; import com.bumptech.glide.Glide;
import com.ifish.basebean.Device; import com.ifish.basebean.Device;
import com.ifish.basebean.TimeBean;
import com.ifish.baseclass.BaseActivity; import com.ifish.baseclass.BaseActivity;
import com.ifish.tcp.BackInfoMode2F_TimeItem; import com.ifish.tcp.BackInfoMode2F_TimeItem;
import com.ifish.tcp.BackInfoModelSeven_2F_Time; import com.ifish.tcp.BackInfoModelSeven_2F_Time;
@ -28,13 +29,16 @@ import com.ifish.tcp.TcpSendThread;
import com.ifish.utils.AnimationUtil; import com.ifish.utils.AnimationUtil;
import com.ifish.utils.ByteUtil; import com.ifish.utils.ByteUtil;
import com.ifish.utils.Commons; import com.ifish.utils.Commons;
import com.ifish.utils.DateUtil;
import com.ifish.utils.HttpManager; import com.ifish.utils.HttpManager;
import com.ifish.utils.L;
import com.ifish.utils.SPUtil; import com.ifish.utils.SPUtil;
import com.ifish.utils.SystemUtil; import com.ifish.utils.SystemUtil;
import com.ifish.utils.ToastUtil; import com.ifish.utils.ToastUtil;
import com.ifish.view.SelectorImageView; import com.ifish.view.SelectorImageView;
import java.net.Socket; import java.net.Socket;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
@ -66,6 +70,7 @@ public class DingshiStyleActivity extends BaseActivity {
private String s_number; private String s_number;
private int Ding_shi_sNumber; private int Ding_shi_sNumber;
private List<TimeBean> timeList = new ArrayList<TimeBean>();
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@ -280,6 +285,7 @@ public class DingshiStyleActivity extends BaseActivity {
int nuebersum = (int) event.getNumbersum(); int nuebersum = (int) event.getNumbersum();
List<BackInfoMode2F_TimeItem> timeItemList = event.getTimeItemList(); List<BackInfoMode2F_TimeItem> timeItemList = event.getTimeItemList();
if (number == Ding_shi_sNumber) { //循环泵 if (number == Ding_shi_sNumber) { //循环泵
timeList.clear();
ll_timebody1.removeAllViews(); ll_timebody1.removeAllViews();
for (int i = 0; i < nuebersum; i++) { for (int i = 0; i < nuebersum; i++) {
final byte timer_number = timeItemList.get(i).getTimer_number(); final byte timer_number = timeItemList.get(i).getTimer_number();
@ -296,6 +302,12 @@ public class DingshiStyleActivity extends BaseActivity {
} else { } else {
sb_timer.toggle(true); sb_timer.toggle(true);
} }
L.i("jjia-------set------"+ByteUtil.BytesToTimer(timer_time));
timeList = DateUtil.getTimeList(timeList,timer_time,timer_number);
L.i("jjia-------set---------------------------------------------");
tv_timer.setText(ByteUtil.BytesToTimer(timer_time)); tv_timer.setText(ByteUtil.BytesToTimer(timer_time));
sb_timer.setOnClickListener(new View.OnClickListener() { sb_timer.setOnClickListener(new View.OnClickListener() {
@Override @Override
@ -352,7 +364,7 @@ public class DingshiStyleActivity extends BaseActivity {
} }
} }
private void showDTimeialog(final int num, final int timer_number, final int timer_numberonoff, TextView textView) { private void showDTimeialog(final int num, final byte timer_number, final int timer_numberonoff, TextView textView) {
final com.ifish.view.WheelView wv_starttime1, wv_starttime2; final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
final com.ifish.view.WheelView wv_endtime1, wv_endtime2; final com.ifish.view.WheelView wv_endtime1, wv_endtime2;
Button bt_submit, bt_delete; Button bt_submit, bt_delete;
@ -461,52 +473,11 @@ public class DingshiStyleActivity extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
boolean isContain = DateUtil.hasContain(timeList,timer_number,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (isContain){
return;
}
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList();
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(DingshiStyleActivity.this, "开始时间和结束时间不能相同");
return;
}
for (int i = 0; i < timeItemList.size(); i++) {
if (i == (timer_number - 1)) {
continue;
}
BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i);
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
if (time.equals(string)) {
ToastUtil.show(DingshiStyleActivity.this, "时段设置不能重叠");
return;
}
if (string.length() == 11) {
try {
int st1 = Integer.parseInt(string.substring(0, 2));
int st2 = Integer.parseInt(string.substring(3, 5));
int et1 = Integer.parseInt(string.substring(6, 8));
int et2 = Integer.parseInt(string.substring(9, 11));
int stsum1 = st1 * 60 + st2;
int stsum2 = et1 * 60 + et2;
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
int nstsum1 = nst1 * 60 + nst2;
int nstsum2 = net1 * 60 + net2;
boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1);
if(existHoursData){
ToastUtil.show(DingshiStyleActivity.this, "时段设置不能重叠");
return;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(DingshiStyleActivity.this, "开始时间和结束时间不能相同");
return;
}
showProgressDialog(); showProgressDialog();
isDialog = true; isDialog = true;
timerDevice(num, timer_number, timer_numberonoff, time); timerDevice(num, timer_number, timer_numberonoff, time);
@ -588,46 +559,12 @@ public class DingshiStyleActivity extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; byte timerno = -1;
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList(); boolean isContain = DateUtil.hasContain(timeList,timerno,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { if (isContain){
ToastUtil.show(DingshiStyleActivity.this, "开始时间和结束时间不能相同");
return; return;
} }
for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) { String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
if (time.equals(string)) {
ToastUtil.show(DingshiStyleActivity.this, "时段设置不能重叠");
return;
}
if (string.length() == 11) {
try {
int st1 = Integer.parseInt(string.substring(0, 2));
int st2 = Integer.parseInt(string.substring(3, 5));
int et1 = Integer.parseInt(string.substring(6, 8));
int et2 = Integer.parseInt(string.substring(9, 11));
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
int new_start_time = nst1 * 60 + nst2;
int new_end_time = net1 * 60 + net2;
int old_start_time = st1 * 60 + st2;
int old_end_time = et1 * 60 + et2;
boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1);
if(existHoursData){
ToastUtil.show(DingshiStyleActivity.this, "时段设置不能重叠");
return;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
showProgressDialog(); showProgressDialog();
isDialog = true; isDialog = true;
timerDevice(num, timer_number, timer_numberonoff, time); timerDevice(num, timer_number, timer_numberonoff, time);

View File

@ -29,6 +29,7 @@ import com.google.gson.reflect.TypeToken;
import com.ifish.basebean.BaseBean; import com.ifish.basebean.BaseBean;
import com.ifish.basebean.ChangeWater; import com.ifish.basebean.ChangeWater;
import com.ifish.basebean.ErrorSendTimeSetting; import com.ifish.basebean.ErrorSendTimeSetting;
import com.ifish.basebean.TimeBean;
import com.ifish.baseclass.BaseActivity; import com.ifish.baseclass.BaseActivity;
import com.ifish.tcp.BackInfoMode2F_TimeItem; import com.ifish.tcp.BackInfoMode2F_TimeItem;
import com.ifish.tcp.BackInfoModelSeven_2F; import com.ifish.tcp.BackInfoModelSeven_2F;
@ -43,6 +44,7 @@ import com.ifish.utils.Commons.FishKey;
import com.ifish.utils.Commons.LoginSPKey; import com.ifish.utils.Commons.LoginSPKey;
import com.ifish.utils.Commons.NetWork; import com.ifish.utils.Commons.NetWork;
import com.ifish.utils.Commons.Text; import com.ifish.utils.Commons.Text;
import com.ifish.utils.DateUtil;
import com.ifish.utils.HttpListener; import com.ifish.utils.HttpListener;
import com.ifish.utils.HttpManager; import com.ifish.utils.HttpManager;
import com.ifish.utils.L; import com.ifish.utils.L;
@ -98,7 +100,7 @@ public class TimeSettingFour_2F extends BaseActivity {
private TextView tv_iconName_1, tv_iconName_2, tv_iconName_3, tv_iconName_4, tv_iconName_5, tv_iconName_6; private TextView tv_iconName_1, tv_iconName_2, tv_iconName_3, tv_iconName_4, tv_iconName_5, tv_iconName_6;
private ImageView iv_icon1, iv_icon2, iv_icon3, iv_icon4, iv_icon5, iv_icon6, iv_timebody1, iv_timebody2, iv_timebody3, iv_timebody4, iv_timebody5, iv_timebody6; private ImageView iv_icon1, iv_icon2, iv_icon3, iv_icon4, iv_icon5, iv_icon6, iv_timebody1, iv_timebody2, iv_timebody3, iv_timebody4, iv_timebody5, iv_timebody6;
private LinearLayout ll_time1, ll_time2, ll_time3, ll_time4, ll_time5, ll_time6, ll_timebody1, ll_timebody2, ll_timebody3, ll_timebody4, ll_timebody5, ll_timebody6, ll_body1, ll_body2, ll_body3, ll_body4, ll_body5, ll_body6; private LinearLayout ll_time1, ll_time2, ll_time3, ll_time4, ll_time5, ll_time6, ll_timebody1, ll_timebody2, ll_timebody3, ll_timebody4, ll_timebody5, ll_timebody6, ll_body1, ll_body2, ll_body3, ll_body4, ll_body5, ll_body6;
private List<TimeBean> timeList = new ArrayList<TimeBean>();
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@ -351,6 +353,7 @@ public class TimeSettingFour_2F extends BaseActivity {
} else { } else {
sb_timer.toggle(true); sb_timer.toggle(true);
} }
timeList = DateUtil.getTimeList(timeList,timer_time,timer_number);
tv_timer.setText(ByteUtil.BytesToTimer(timer_time)); tv_timer.setText(ByteUtil.BytesToTimer(timer_time));
sb_timer.setOnClickListener(new OnClickListener() { sb_timer.setOnClickListener(new OnClickListener() {
@Override @Override
@ -1471,7 +1474,7 @@ public class TimeSettingFour_2F extends BaseActivity {
} }
private void showDTimeialog(final int num, final int timer_number, final int timer_numberonoff, TextView textView) { private void showDTimeialog(final int num, final byte timer_number, final int timer_numberonoff, TextView textView) {
set_query = num; set_query = num;
final com.ifish.view.WheelView wv_starttime1, wv_starttime2; final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
final com.ifish.view.WheelView wv_endtime1, wv_endtime2; final com.ifish.view.WheelView wv_endtime1, wv_endtime2;
@ -1582,52 +1585,73 @@ public class TimeSettingFour_2F extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
boolean isContain = DateUtil.hasContain(timeList,timer_number,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (isContain){
return;
}
// int startH = wv_starttime1.getSeletedIndex();
// int startM = wv_starttime2.getSeletedIndex();
//
// int endH = wv_endtime1.getSeletedIndex();
// int endM = wv_endtime2.getSeletedIndex();
//
// L.i("jjia----"+startH);
// L.i("jjia----"+startM);
// L.i("jjia----"+endH);
// L.i("jjia----"+endM);
//
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList(); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList();
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingFour_2F.this, "开始时间和结束时间不能相同"); // ToastUtil.show(TimeSettingFour_2F.this, "开始时间和结束时间不能相同");
return; // return;
} // }
for (int i = 0; i < timeItemList.size(); i++) { // boolean isContain = DateUtil.hasContain(timeList,timer_number,startH,startM,endH,endM);
if (i == (timer_number - 1)) { // L.i("jjia----是否包含 "+isContain);
continue; // if (isContain){
} // ToastUtil.show(DingshiStyleActivity.this, "时段设置不能重叠");
BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i); // return;
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // }
if (time.equals(string)) { // for (int i = 0; i < timeItemList.size(); i++) {
ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠"); // if (i == (timer_number - 1)) {
return; // continue;
} // }
if (string.length() == 11) { // BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i);
try { // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
int st1 = Integer.parseInt(string.substring(0, 2)); // if (time.equals(string)) {
int st2 = Integer.parseInt(string.substring(3, 5)); // ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠");
int et1 = Integer.parseInt(string.substring(6, 8)); // return;
int et2 = Integer.parseInt(string.substring(9, 11)); // }
int stsum1 = st1 * 60 + st2; // if (string.length() == 11) {
int stsum2 = et1 * 60 + et2; // try {
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // int st1 = Integer.parseInt(string.substring(0, 2));
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int st2 = Integer.parseInt(string.substring(3, 5));
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int et1 = Integer.parseInt(string.substring(6, 8));
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int et2 = Integer.parseInt(string.substring(9, 11));
int nstsum1 = nst1 * 60 + nst2; // int stsum1 = st1 * 60 + st2;
int nstsum2 = net1 * 60 + net2; // int stsum2 = et1 * 60 + et2;
// int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1); // int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
if(existHoursData){ // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠"); // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
return; // int nstsum1 = nst1 * 60 + nst2;
} // int nstsum2 = net1 * 60 + net2;
//
} catch (Exception e) { // boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1);
e.printStackTrace(); // if(existHoursData){
} // ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠");
} // return;
} // }
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { //
ToastUtil.show(TimeSettingFour_2F.this, "开始时间和结束时间不能相同"); // } catch (Exception e) {
return; // e.printStackTrace();
} // }
// }
// }
// if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
// ToastUtil.show(TimeSettingFour_2F.this, "开始时间和结束时间不能相同");
// return;
// }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;
@ -1635,7 +1659,6 @@ public class TimeSettingFour_2F extends BaseActivity {
} }
}); });
} }
private void showDTimeialogAdd(final int num, final int timer_number, final int timer_numberonoff) { private void showDTimeialogAdd(final int num, final int timer_number, final int timer_numberonoff) {
set_query = num; set_query = num;
final com.ifish.view.WheelView wv_starttime1, wv_starttime2; final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
@ -1675,46 +1698,52 @@ public class TimeSettingFour_2F extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList(); byte timerno = -1;
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { boolean isContain = DateUtil.hasContain(timeList,timerno,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
ToastUtil.show(TimeSettingFour_2F.this, "开始时间和结束时间不能相同"); if (isContain){
return; return;
} }
for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) { String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList();
if (time.equals(string)) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠"); // ToastUtil.show(TimeSettingFour_2F.this, "开始时间和结束时间不能相同");
return; // return;
} // }
if (string.length() == 11) { // for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) {
try { // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
int st1 = Integer.parseInt(string.substring(0, 2)); // if (time.equals(string)) {
int st2 = Integer.parseInt(string.substring(3, 5)); // ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠");
int et1 = Integer.parseInt(string.substring(6, 8)); // return;
int et2 = Integer.parseInt(string.substring(9, 11)); // }
// if (string.length() == 11) {
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // try {
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int st1 = Integer.parseInt(string.substring(0, 2));
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int st2 = Integer.parseInt(string.substring(3, 5));
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int et1 = Integer.parseInt(string.substring(6, 8));
// int et2 = Integer.parseInt(string.substring(9, 11));
int new_start_time = nst1 * 60 + nst2; //
int new_end_time = net1 * 60 + net2; // int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
// int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int old_start_time = st1 * 60 + st2; // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int old_end_time = et1 * 60 + et2; // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
//
boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1); // int new_start_time = nst1 * 60 + nst2;
if(existHoursData){ // int new_end_time = net1 * 60 + net2;
ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠"); //
return; // int old_start_time = st1 * 60 + st2;
} // int old_end_time = et1 * 60 + et2;
} catch (Exception e) { //
e.printStackTrace(); // boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1);
} // if(existHoursData){
} // ToastUtil.show(TimeSettingFour_2F.this, "时段设置不能重叠");
} // return;
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;

View File

@ -30,6 +30,7 @@ import com.google.gson.reflect.TypeToken;
import com.ifish.basebean.BaseBean; import com.ifish.basebean.BaseBean;
import com.ifish.basebean.ChangeWater; import com.ifish.basebean.ChangeWater;
import com.ifish.basebean.ErrorSendTimeSetting; import com.ifish.basebean.ErrorSendTimeSetting;
import com.ifish.basebean.TimeBean;
import com.ifish.baseclass.BaseActivity; import com.ifish.baseclass.BaseActivity;
import com.ifish.tcp.BackInfoMode2F_TimeItem; import com.ifish.tcp.BackInfoMode2F_TimeItem;
import com.ifish.tcp.BackInfoModelFour_3F; import com.ifish.tcp.BackInfoModelFour_3F;
@ -46,6 +47,7 @@ import com.ifish.utils.Commons.FishKey;
import com.ifish.utils.Commons.LoginSPKey; import com.ifish.utils.Commons.LoginSPKey;
import com.ifish.utils.Commons.NetWork; import com.ifish.utils.Commons.NetWork;
import com.ifish.utils.Commons.Text; import com.ifish.utils.Commons.Text;
import com.ifish.utils.DateUtil;
import com.ifish.utils.HttpListener; import com.ifish.utils.HttpListener;
import com.ifish.utils.HttpManager; import com.ifish.utils.HttpManager;
import com.ifish.utils.L; import com.ifish.utils.L;
@ -57,6 +59,7 @@ import com.ifish.wheelview.adapter.ArrayWheelAdapter;
import com.ifish.wheelview.view.WheelView; import com.ifish.wheelview.view.WheelView;
import java.net.Socket; import java.net.Socket;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
@ -367,6 +370,7 @@ public class TimeSettingFour_3F extends BaseActivity {
isDialog = false; isDialog = false;
} }
} }
private List<TimeBean> timeList = new ArrayList<TimeBean>();
//接受查询返回的指令 //接受查询返回的指令
public void onEventMainThread(BackInfoModelSeven_2F_Time event) { public void onEventMainThread(BackInfoModelSeven_2F_Time event) {
@ -393,6 +397,7 @@ public class TimeSettingFour_3F extends BaseActivity {
} else { } else {
sb_timer.toggle(true); sb_timer.toggle(true);
} }
timeList = DateUtil.getTimeList(timeList,timer_time,timer_number);
tv_timer.setText(ByteUtil.BytesToTimer(timer_time)); tv_timer.setText(ByteUtil.BytesToTimer(timer_time));
sb_timer.setOnClickListener(new OnClickListener() { sb_timer.setOnClickListener(new OnClickListener() {
@Override @Override
@ -1383,7 +1388,7 @@ public class TimeSettingFour_3F extends BaseActivity {
} }
private void showDTimeialog(final int num, final int timer_number, final int timer_numberonoff, TextView textView) { private void showDTimeialog(final int num, final byte timer_number, final int timer_numberonoff, TextView textView) {
set_query = num; set_query = num;
final com.ifish.view.WheelView wv_starttime1, wv_starttime2; final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
final com.ifish.view.WheelView wv_endtime1, wv_endtime2; final com.ifish.view.WheelView wv_endtime1, wv_endtime2;
@ -1494,52 +1499,56 @@ public class TimeSettingFour_3F extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
boolean isContain = DateUtil.hasContain(timeList,timer_number,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (isContain){
return;
}
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList(); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList();
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingFour_3F.this, "开始时间和结束时间不能相同"); // ToastUtil.show(TimeSettingFour_3F.this, "开始时间和结束时间不能相同");
return; // return;
} // }
for (int i = 0; i < timeItemList.size(); i++) { // for (int i = 0; i < timeItemList.size(); i++) {
if (i == (timer_number - 1)) { // if (i == (timer_number - 1)) {
continue; // continue;
} // }
BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i); // BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i);
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
if (time.equals(string)) { // if (time.equals(string)) {
ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠"); // ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠");
return; // return;
} // }
if (string.length() == 11) { // if (string.length() == 11) {
try { // try {
int st1 = Integer.parseInt(string.substring(0, 2)); // int st1 = Integer.parseInt(string.substring(0, 2));
int st2 = Integer.parseInt(string.substring(3, 5)); // int st2 = Integer.parseInt(string.substring(3, 5));
int et1 = Integer.parseInt(string.substring(6, 8)); // int et1 = Integer.parseInt(string.substring(6, 8));
int et2 = Integer.parseInt(string.substring(9, 11)); // int et2 = Integer.parseInt(string.substring(9, 11));
int stsum1 = st1 * 60 + st2; // int stsum1 = st1 * 60 + st2;
int stsum2 = et1 * 60 + et2; // int stsum2 = et1 * 60 + et2;
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
int nstsum1 = nst1 * 60 + nst2; // int nstsum1 = nst1 * 60 + nst2;
int nstsum2 = net1 * 60 + net2; // int nstsum2 = net1 * 60 + net2;
//
boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1); // boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1);
if(existHoursData){ // if(existHoursData){
ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠"); // ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠");
return; // return;
} // }
//
} catch (Exception e) { // } catch (Exception e) {
e.printStackTrace(); // e.printStackTrace();
} // }
} // }
} // }
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingFour_3F.this, "开始时间和结束时间不能相同"); // ToastUtil.show(TimeSettingFour_3F.this, "开始时间和结束时间不能相同");
return; // return;
} // }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;
@ -1587,43 +1596,48 @@ public class TimeSettingFour_3F extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; byte timerno = -1;
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList(); boolean isContain = DateUtil.hasContain(timeList,timerno,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { if (isContain){
ToastUtil.show(TimeSettingFour_3F.this, "开始时间和结束时间不能相同");
return; return;
} }
for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) { String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList();
if (time.equals(string)) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠"); // ToastUtil.show(TimeSettingFour_3F.this, "开始时间和结束时间不能相同");
return; // return;
} // }
if (string.length() == 11) { // for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) {
try { // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
int st1 = Integer.parseInt(string.substring(0, 2)); // if (time.equals(string)) {
int st2 = Integer.parseInt(string.substring(3, 5)); // ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠");
int et1 = Integer.parseInt(string.substring(6, 8)); // return;
int et2 = Integer.parseInt(string.substring(9, 11)); // }
int stsum1 = st1 * 60 + st2; // if (string.length() == 11) {
int stsum2 = et1 * 60 + et2; // try {
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // int st1 = Integer.parseInt(string.substring(0, 2));
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int st2 = Integer.parseInt(string.substring(3, 5));
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int et1 = Integer.parseInt(string.substring(6, 8));
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int et2 = Integer.parseInt(string.substring(9, 11));
int nstsum1 = nst1 * 60 + nst2; // int stsum1 = st1 * 60 + st2;
int nstsum2 = net1 * 60 + net2; // int stsum2 = et1 * 60 + et2;
// int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1); // int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
if(existHoursData){ // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠"); // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
return; // int nstsum1 = nst1 * 60 + nst2;
} // int nstsum2 = net1 * 60 + net2;
} catch (Exception e) { //
e.printStackTrace(); // boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1);
} // if(existHoursData){
} // ToastUtil.show(TimeSettingFour_3F.this, "时段设置不能重叠");
} // return;
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;

View File

@ -15,6 +15,7 @@ import android.widget.LinearLayout;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.ifish.basebean.TimeBean;
import com.ifish.baseclass.BaseActivity; import com.ifish.baseclass.BaseActivity;
import com.ifish.tcp.BackInfoMode2F_TimeItem; import com.ifish.tcp.BackInfoMode2F_TimeItem;
import com.ifish.tcp.BackInfoModelSeven_2F; import com.ifish.tcp.BackInfoModelSeven_2F;
@ -24,12 +25,14 @@ import com.ifish.tcp.TcpReceiveThread;
import com.ifish.tcp.TcpSendThread; import com.ifish.tcp.TcpSendThread;
import com.ifish.utils.ByteUtil; import com.ifish.utils.ByteUtil;
import com.ifish.utils.Commons; import com.ifish.utils.Commons;
import com.ifish.utils.DateUtil;
import com.ifish.utils.HttpManager; import com.ifish.utils.HttpManager;
import com.ifish.utils.SystemUtil; import com.ifish.utils.SystemUtil;
import com.ifish.utils.ToastUtil; import com.ifish.utils.ToastUtil;
import com.ifish.view.SelectorImageView; import com.ifish.view.SelectorImageView;
import java.net.Socket; import java.net.Socket;
import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
@ -57,7 +60,7 @@ public class TimeSettingSix4F_Detail_TimeMode extends BaseActivity {
private Boolean DeviceOnLine = true; private Boolean DeviceOnLine = true;
private String mac = ""; private String mac = "";
private BackInfoModelSeven_2F backQueryObj; private BackInfoModelSeven_2F backQueryObj;
private List<TimeBean> timeList = new ArrayList<TimeBean>();
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@ -156,46 +159,51 @@ public class TimeSettingSix4F_Detail_TimeMode extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; byte timerno = -1;
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList(); boolean isContain = DateUtil.hasContain(timeList,timerno,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { if (isContain){
ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "开始时间和结束时间不能相同");
return; return;
} }
for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) { String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList();
if (time.equals(string)) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠"); // ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "开始时间和结束时间不能相同");
return; // return;
} // }
if (string.length() == 11) { // for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) {
try { // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
int st1 = Integer.parseInt(string.substring(0, 2)); // if (time.equals(string)) {
int st2 = Integer.parseInt(string.substring(3, 5)); // ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠");
int et1 = Integer.parseInt(string.substring(6, 8)); // return;
int et2 = Integer.parseInt(string.substring(9, 11)); // }
// if (string.length() == 11) {
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // try {
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int st1 = Integer.parseInt(string.substring(0, 2));
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int st2 = Integer.parseInt(string.substring(3, 5));
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int et1 = Integer.parseInt(string.substring(6, 8));
// int et2 = Integer.parseInt(string.substring(9, 11));
int new_start_time = nst1 * 60 + nst2; //
int new_end_time = net1 * 60 + net2; // int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
// int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int old_start_time = st1 * 60 + st2; // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int old_end_time = et1 * 60 + et2; // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
//
boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1); // int new_start_time = nst1 * 60 + nst2;
if(existHoursData){ // int new_end_time = net1 * 60 + net2;
ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠"); //
return; // int old_start_time = st1 * 60 + st2;
} // int old_end_time = et1 * 60 + et2;
} catch (Exception e) { //
e.printStackTrace(); // boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1);
} // if(existHoursData){
} // ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠");
} // return;
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;
@ -335,6 +343,7 @@ public class TimeSettingSix4F_Detail_TimeMode extends BaseActivity {
} else { } else {
sb_timer.toggle(true); sb_timer.toggle(true);
} }
timeList = DateUtil.getTimeList(timeList,timer_time,timer_number);
tv_timer.setText(ByteUtil.BytesToTimer(timer_time)); tv_timer.setText(ByteUtil.BytesToTimer(timer_time));
sb_timer.setOnClickListener(new View.OnClickListener() { sb_timer.setOnClickListener(new View.OnClickListener() {
@Override @Override
@ -426,7 +435,7 @@ public class TimeSettingSix4F_Detail_TimeMode extends BaseActivity {
} }
private void showDTimeialog(final int num, final int timer_number, final int timer_numberonoff, TextView textView) { private void showDTimeialog(final int num, final byte timer_number, final int timer_numberonoff, TextView textView) {
set_query = num; set_query = num;
final com.ifish.view.WheelView wv_starttime1, wv_starttime2; final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
final com.ifish.view.WheelView wv_endtime1, wv_endtime2; final com.ifish.view.WheelView wv_endtime1, wv_endtime2;
@ -537,52 +546,56 @@ public class TimeSettingSix4F_Detail_TimeMode extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
boolean isContain = DateUtil.hasContain(timeList,timer_number,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (isContain){
return;
}
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList(); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSeven_2F_time.getTimeItemList();
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "开始时间和结束时间不能相同"); // ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "开始时间和结束时间不能相同");
return; // return;
} // }
for (int i = 0; i < timeItemList.size(); i++) { // for (int i = 0; i < timeItemList.size(); i++) {
if (i == (timer_number - 1)) { // if (i == (timer_number - 1)) {
continue; // continue;
} // }
BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i); // BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i);
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
if (time.equals(string)) { // if (time.equals(string)) {
ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠"); // ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠");
return; // return;
} // }
if (string.length() == 11) { // if (string.length() == 11) {
try { // try {
int st1 = Integer.parseInt(string.substring(0, 2)); // int st1 = Integer.parseInt(string.substring(0, 2));
int st2 = Integer.parseInt(string.substring(3, 5)); // int st2 = Integer.parseInt(string.substring(3, 5));
int et1 = Integer.parseInt(string.substring(6, 8)); // int et1 = Integer.parseInt(string.substring(6, 8));
int et2 = Integer.parseInt(string.substring(9, 11)); // int et2 = Integer.parseInt(string.substring(9, 11));
int stsum1 = st1 * 60 + st2; // int stsum1 = st1 * 60 + st2;
int stsum2 = et1 * 60 + et2; // int stsum2 = et1 * 60 + et2;
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
int nstsum1 = nst1 * 60 + nst2; // int nstsum1 = nst1 * 60 + nst2;
int nstsum2 = net1 * 60 + net2; // int nstsum2 = net1 * 60 + net2;
//
boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1); // boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1);
if(existHoursData){ // if(existHoursData){
ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠"); // ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "时段设置不能重叠");
return; // return;
} // }
//
} catch (Exception e) { // } catch (Exception e) {
e.printStackTrace(); // e.printStackTrace();
} // }
} // }
} // }
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "开始时间和结束时间不能相同"); // ToastUtil.show(TimeSettingSix4F_Detail_TimeMode.this, "开始时间和结束时间不能相同");
return; // return;
} // }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;

View File

@ -1020,257 +1020,6 @@ public class TimeSettingSix_4F_DetailActivity extends BaseActivity implements Zi
hour = time.hour; hour = time.hour;
} }
private void showDTimeialog(final int num, final int timer_number, final int timer_numberonoff, TextView textView) {
set_query = num;
final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
final com.ifish.view.WheelView wv_endtime1, wv_endtime2;
Button bt_submit, bt_delete;
final String[] starttime1 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23"};
final String[] starttime2 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59"};
final String[] endtime1 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23"};
final String[] endtime2 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59"};
dialog = new Dialog(TimeSettingSix_4F_DetailActivity.this, R.style.HOLOMyDialogs);
dialog.setCancelable(true);
Window window = dialog.getWindow();
window.setContentView(R.layout.sevensettime_dialog);
wv_starttime1 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_starttime1);
wv_starttime2 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_starttime2);
bt_submit = (Button) window.findViewById(R.id.bt_submit);
bt_delete = (Button) window.findViewById(R.id.bt_delete);
wv_endtime1 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_endtime1);
wv_endtime2 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_endtime2);
wv_starttime1.setOffset(2);
wv_starttime2.setOffset(2);
wv_endtime1.setOffset(2);
wv_endtime2.setOffset(2);
wv_starttime1.setItems(Arrays.asList(starttime1));
wv_starttime2.setItems(Arrays.asList(starttime2));
wv_endtime1.setItems(Arrays.asList(endtime1));
wv_endtime2.setItems(Arrays.asList(endtime2));
getNowTime();
dialog.show();
int start1 = 0;
int start2 = 0;
int end1 = 0;
int end2 = 0;
Boolean startBoolean1 = false;
Boolean startBoolean2 = false;
Boolean endBoolean1 = false;
Boolean endBoolean2 = false;
String string = textView.getText().toString();
String startsubstring1 = "";
String startsubstring2 = "";
String endsubstring1 = "";
String endsubstring2 = "";
try {
if (!TextUtils.isEmpty(string)) {
startsubstring1 = string.substring(0, 2);
startsubstring2 = string.substring(3, 5);
endsubstring1 = string.substring(6, 8);
endsubstring2 = string.substring(9, 11);
}
} catch (Exception e) {
}
for (int i = 0; i < starttime1.length; i++) {
if (starttime1[i].equals(startsubstring1)) {
start1 = i;
startBoolean1 = true;
}
}
for (int i = 0; i < starttime2.length; i++) {
if (starttime2[i].equals(startsubstring2)) {
start2 = i;
startBoolean2 = true;
}
}
for (int i = 0; i < endtime1.length; i++) {
if (endtime1[i].equals(endsubstring1)) {
end1 = i;
endBoolean1 = true;
}
}
for (int i = 0; i < endtime2.length; i++) {
if (endtime2[i].equals(endsubstring2)) {
end2 = i;
endBoolean2 = true;
}
}
if (startBoolean1) {
wv_starttime1.setSeletion(start1);
} else {
wv_starttime1.setSeletion(12);
}
if (startBoolean2) {
wv_starttime2.setSeletion(start2);
} else {
wv_starttime2.setSeletion(30);
}
if (endBoolean1) {
wv_endtime1.setSeletion(end1);
} else {
wv_endtime1.setSeletion(13);
}
if (endBoolean2) {
wv_endtime2.setSeletion(end2);
} else {
wv_endtime2.setSeletion(30);
}
bt_delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showProgressDialog();
startTimer();
isDialog = true;
timerDevice(num, timer_number, timer_numberonoff, "00:00-00:00");
}
});
/**
* 点击确定时间的按钮
*/
bt_submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList();
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingSix_4F_DetailActivity.this, "开始时间和结束时间不能相同");
return;
}
for (int i = 0; i < timeItemList.size(); i++) {
if (i == (timer_number - 1)) {
continue;
}
BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i);
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
if (time.equals(string)) {
ToastUtil.show(TimeSettingSix_4F_DetailActivity.this, "时段设置不能重叠");
return;
}
if (string.length() == 11) {
try {
int st1 = Integer.parseInt(string.substring(0, 2));
int st2 = Integer.parseInt(string.substring(3, 5));
int et1 = Integer.parseInt(string.substring(6, 8));
int et2 = Integer.parseInt(string.substring(9, 11));
int stsum1 = st1 * 60 + st2;
int stsum2 = et1 * 60 + et2;
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
int nstsum1 = nst1 * 60 + nst2;
int nstsum2 = net1 * 60 + net2;
boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1);
if(existHoursData){
ToastUtil.show(TimeSettingSix_4F_DetailActivity.this, "时段设置不能重叠");
return;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingSix_4F_DetailActivity.this, "开始时间和结束时间不能相同");
return;
}
showProgressDialog();
startTimer();
isDialog = true;
timerDevice(num, timer_number, timer_numberonoff, time);
}
});
}
private void showDTimeialogAdd(final int num, final int timer_number, final int timer_numberonoff) {
set_query = num;
final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
final com.ifish.view.WheelView wv_endtime1, wv_endtime2;
Button bt_submit;
final String[] starttime1 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23"};
final String[] starttime2 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59"};
final String[] endtime1 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23"};
final String[] endtime2 = new String[]{"00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59"};
dialog = new Dialog(TimeSettingSix_4F_DetailActivity.this, R.style.HOLOMyDialogs);
dialog.setCancelable(true);
Window window = dialog.getWindow();
window.setContentView(R.layout.sevensettime_dialogadd);
wv_starttime1 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_starttime1);
wv_starttime2 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_starttime2);
bt_submit = (Button) window.findViewById(R.id.bt_submit);
wv_endtime1 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_endtime1);
wv_endtime2 = (com.ifish.view.WheelView) window.findViewById(R.id.wv_endtime2);
wv_starttime1.setOffset(2);
wv_starttime2.setOffset(2);
wv_endtime1.setOffset(2);
wv_endtime2.setOffset(2);
wv_starttime1.setItems(Arrays.asList(starttime1));
wv_starttime2.setItems(Arrays.asList(starttime2));
wv_endtime1.setItems(Arrays.asList(endtime1));
wv_endtime2.setItems(Arrays.asList(endtime2));
getNowTime();
dialog.show();
wv_starttime1.setSeletion(12);
wv_starttime2.setSeletion(30);
wv_endtime1.setSeletion(13);
wv_endtime2.setSeletion(30);
/**
* 点击确定时间的按钮
*/
bt_submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList();
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(TimeSettingSix_4F_DetailActivity.this, "开始时间和结束时间不能相同");
return;
}
for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) {
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
if (time.equals(string)) {
ToastUtil.show(TimeSettingSix_4F_DetailActivity.this, "时段设置不能重叠");
return;
}
if (string.length() == 11) {
try {
int st1 = Integer.parseInt(string.substring(0, 2));
int st2 = Integer.parseInt(string.substring(3, 5));
int et1 = Integer.parseInt(string.substring(6, 8));
int et2 = Integer.parseInt(string.substring(9, 11));
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
int new_start_time = nst1 * 60 + nst2;
int new_end_time = net1 * 60 + net2;
int old_start_time = st1 * 60 + st2;
int old_end_time = et1 * 60 + et2;
boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1);
if(existHoursData){
ToastUtil.show(TimeSettingSix_4F_DetailActivity.this, "时段设置不能重叠");
return;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
showProgressDialog();
startTimer();
isDialog = true;
timerDevice(num, timer_number, timer_numberonoff, time);
}
});
}
public void hideXunhuanDetailViews(String s_number){ public void hideXunhuanDetailViews(String s_number){
if("E4".equalsIgnoreCase(s_number)){ if("E4".equalsIgnoreCase(s_number)){

View File

@ -19,6 +19,7 @@ import android.widget.TextView;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import com.ifish.basebean.Device; import com.ifish.basebean.Device;
import com.ifish.basebean.TimeBean;
import com.ifish.baseclass.BaseActivity; import com.ifish.baseclass.BaseActivity;
import com.ifish.tcp.BackInfoMode2F_TimeItem; import com.ifish.tcp.BackInfoMode2F_TimeItem;
import com.ifish.tcp.BackInfoModelSeven_2F_Time; import com.ifish.tcp.BackInfoModelSeven_2F_Time;
@ -29,6 +30,7 @@ import com.ifish.tcp.TcpSendThread;
import com.ifish.utils.AnimationUtil; import com.ifish.utils.AnimationUtil;
import com.ifish.utils.ByteUtil; import com.ifish.utils.ByteUtil;
import com.ifish.utils.Commons; import com.ifish.utils.Commons;
import com.ifish.utils.DateUtil;
import com.ifish.utils.HttpManager; import com.ifish.utils.HttpManager;
import com.ifish.utils.SPUtil; import com.ifish.utils.SPUtil;
import com.ifish.utils.SystemUtil; import com.ifish.utils.SystemUtil;
@ -69,7 +71,7 @@ public class ZihuifuStyleActivity extends BaseActivity {
private SelectorImageView iv_open_all_day_check; private SelectorImageView iv_open_all_day_check;
private String s_number; //设备编号字符串 如E1E2E3E4. private String s_number; //设备编号字符串 如E1E2E3E4.
private String Zi_huifu_sNumber; private String Zi_huifu_sNumber;
private List<TimeBean> timeList = new ArrayList<TimeBean>();
@Override @Override
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@ -189,6 +191,7 @@ public class ZihuifuStyleActivity extends BaseActivity {
iv_open_all_day_check.toggle(false); iv_open_all_day_check.toggle(false);
} }
} }
timeList = DateUtil.getTimeList(timeList,timer_time,timer_number);
tv_timer.setText(ByteUtil.BytesToTimer(timer_time)); tv_timer.setText(ByteUtil.BytesToTimer(timer_time));
sb_timer.setOnClickListener(new View.OnClickListener() { sb_timer.setOnClickListener(new View.OnClickListener() {
@Override @Override
@ -570,46 +573,51 @@ public class ZihuifuStyleActivity extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; byte timerno = -1;
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList(); boolean isContain = DateUtil.hasContain(timeList,timerno,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { if (isContain){
ToastUtil.show(ZihuifuStyleActivity.this, "开始时间和结束时间不能相同");
return; return;
} }
for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) { String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList();
if (time.equals(string)) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠"); // ToastUtil.show(ZihuifuStyleActivity.this, "开始时间和结束时间不能相同");
return; // return;
} // }
if (string.length() == 11) { // for (BackInfoMode2F_TimeItem backInfoMode2F_timeItem : timeItemList) {
try { // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
int st1 = Integer.parseInt(string.substring(0, 2)); // if (time.equals(string)) {
int st2 = Integer.parseInt(string.substring(3, 5)); // ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠");
int et1 = Integer.parseInt(string.substring(6, 8)); // return;
int et2 = Integer.parseInt(string.substring(9, 11)); // }
// if (string.length() == 11) {
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // try {
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int st1 = Integer.parseInt(string.substring(0, 2));
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int st2 = Integer.parseInt(string.substring(3, 5));
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int et1 = Integer.parseInt(string.substring(6, 8));
// int et2 = Integer.parseInt(string.substring(9, 11));
int new_start_time = nst1 * 60 + nst2; //
int new_end_time = net1 * 60 + net2; // int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
// int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int old_start_time = st1 * 60 + st2; // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int old_end_time = et1 * 60 + et2; // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
//
boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1); // int new_start_time = nst1 * 60 + nst2;
if(existHoursData){ // int new_end_time = net1 * 60 + net2;
ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠"); //
return; // int old_start_time = st1 * 60 + st2;
} // int old_end_time = et1 * 60 + et2;
} catch (Exception e) { //
e.printStackTrace(); // boolean existHoursData = SystemUtil.ExistHoursData(new_start_time, new_end_time, old_start_time, old_end_time, net1);
} // if(existHoursData){
} // ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠");
} // return;
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
// }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;
@ -711,7 +719,7 @@ public class ZihuifuStyleActivity extends BaseActivity {
} }
} }
private void showDTimeialog(final int num, final int timer_number, final int timer_numberonoff, TextView textView) { private void showDTimeialog(final int num, final byte timer_number, final int timer_numberonoff, TextView textView) {
final com.ifish.view.WheelView wv_starttime1, wv_starttime2; final com.ifish.view.WheelView wv_starttime1, wv_starttime2;
final com.ifish.view.WheelView wv_endtime1, wv_endtime2; final com.ifish.view.WheelView wv_endtime1, wv_endtime2;
Button bt_submit, bt_delete; Button bt_submit, bt_delete;
@ -821,52 +829,56 @@ public class ZihuifuStyleActivity extends BaseActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
boolean isContain = DateUtil.hasContain(timeList,timer_number,wv_starttime1,wv_starttime2,wv_endtime1,wv_endtime2);
if (isContain){
return;
}
String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()]; String time = starttime1[wv_starttime1.getSeletedIndex()] + ":" + starttime2[wv_starttime2.getSeletedIndex()] + "-" + endtime1[wv_endtime1.getSeletedIndex()] + ":" + endtime2[wv_endtime2.getSeletedIndex()];
List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList(); // List<BackInfoMode2F_TimeItem> timeItemList = backInfoModelSix_4F_time.getTimeItemList();
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(ZihuifuStyleActivity.this, "开始时间和结束时间不能相同"); // ToastUtil.show(ZihuifuStyleActivity.this, "开始时间和结束时间不能相同");
return; // return;
} // }
for (int i = 0; i < timeItemList.size(); i++) { // for (int i = 0; i < timeItemList.size(); i++) {
if (i == (timer_number - 1)) { // if (i == (timer_number - 1)) {
continue; // continue;
} // }
BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i); // BackInfoMode2F_TimeItem backInfoMode2F_timeItem = timeItemList.get(i);
String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time()); // String string = ByteUtil.BytesToTimer(backInfoMode2F_timeItem.getTimer_time());
if (time.equals(string)) { // if (time.equals(string)) {
ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠"); // ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠");
return; // return;
} // }
if (string.length() == 11) { // if (string.length() == 11) {
try { // try {
int st1 = Integer.parseInt(string.substring(0, 2)); // int st1 = Integer.parseInt(string.substring(0, 2));
int st2 = Integer.parseInt(string.substring(3, 5)); // int st2 = Integer.parseInt(string.substring(3, 5));
int et1 = Integer.parseInt(string.substring(6, 8)); // int et1 = Integer.parseInt(string.substring(6, 8));
int et2 = Integer.parseInt(string.substring(9, 11)); // int et2 = Integer.parseInt(string.substring(9, 11));
int stsum1 = st1 * 60 + st2; // int stsum1 = st1 * 60 + st2;
int stsum2 = et1 * 60 + et2; // int stsum2 = et1 * 60 + et2;
int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]); // int nst1 = Integer.parseInt(starttime1[wv_starttime1.getSeletedIndex()]);
int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]); // int nst2 = Integer.parseInt(starttime2[wv_starttime2.getSeletedIndex()]);
int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]); // int net1 = Integer.parseInt(endtime1[wv_endtime1.getSeletedIndex()]);
int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]); // int net2 = Integer.parseInt(endtime2[wv_endtime2.getSeletedIndex()]);
int nstsum1 = nst1 * 60 + nst2; // int nstsum1 = nst1 * 60 + nst2;
int nstsum2 = net1 * 60 + net2; // int nstsum2 = net1 * 60 + net2;
//
boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1); // boolean existHoursData = SystemUtil.ExistHoursData(nstsum1, nstsum2, stsum1, stsum2, net1);
if(existHoursData){ // if(existHoursData){
ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠"); // ToastUtil.show(ZihuifuStyleActivity.this, "时段设置不能重叠");
return; // return;
} // }
//
} catch (Exception e) { // } catch (Exception e) {
e.printStackTrace(); // e.printStackTrace();
} // }
} // }
} // }
if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) { // if (wv_starttime1.getSeletedIndex() == wv_endtime1.getSeletedIndex() && wv_starttime2.getSeletedIndex() == wv_endtime2.getSeletedIndex()) {
ToastUtil.show(ZihuifuStyleActivity.this, "开始时间和结束时间不能相同"); // ToastUtil.show(ZihuifuStyleActivity.this, "开始时间和结束时间不能相同");
return; // return;
} // }
showProgressDialog(); showProgressDialog();
startTimer(); startTimer();
isDialog = true; isDialog = true;

View File

@ -764,7 +764,7 @@ public class NewBindDeviceActivity extends AppCompatActivity {
@Override @Override
public void onConnectFail(BleDevice bleDevice, BleException exception) { public void onConnectFail(BleDevice bleDevice, BleException exception) {
ToastUtil.show(NewBindDeviceActivity.this,"连接蓝牙设备失败"); ToastUtil.show(NewBindDeviceActivity.this,"连接蓝牙设备失败,请重试");
dismissProgressDialogCancelble(); dismissProgressDialogCancelble();
} }

View File

@ -0,0 +1,39 @@
package com.ifish.basebean;
import com.ifish.utils.L;
public class TimeBean {
private byte no;
private int start;
private int end;
public byte getNo() {
return no;
}
public int getEnd() {
return end;
}
public void setEnd(int end) {
this.end = end;
}
public void setStart(int start) {
this.start = start;
}
public int getStart() {
return start;
}
public TimeBean(byte no,int start, int end){
this.no = no;
this.start = start;
this.end =end;
L.i("jjia------"+start+"-"+end);
}
}

View File

@ -115,7 +115,7 @@ public class BaseApplication extends MultiDexApplication {
// .setDeviceName(true, names) // 只扫描指定广播名的设备可选 // .setDeviceName(true, names) // 只扫描指定广播名的设备可选
// .setDeviceMac(mac) // 只扫描指定mac的设备可选 // .setDeviceMac(mac) // 只扫描指定mac的设备可选
// .setAutoConnect(isAutoConnect) // 连接时的autoConnect参数可选默认false // .setAutoConnect(isAutoConnect) // 连接时的autoConnect参数可选默认false
.setScanTimeOut(20000) // 扫描超时时间可选默认10秒小于等于0表示不限制扫描时间 .setScanTimeOut(30000) // 扫描超时时间30S可选默认10秒小于等于0表示不限制扫描时间
.build(); .build();
BleManager.getInstance().initScanRule(scanRuleConfig); BleManager.getInstance().initScanRule(scanRuleConfig);
@ -355,7 +355,6 @@ public class BaseApplication extends MultiDexApplication {
*/ */
public static OkHttpClient getSOkHttpClient() { public static OkHttpClient getSOkHttpClient() {
//创建okhttp的请求对象 参考地址 http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0106/2275.html //创建okhttp的请求对象 参考地址 http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0106/2275.html
// if (sOkHttpClient == null) { // if (sOkHttpClient == null) {
// sOkHttpClient = // sOkHttpClient =
return new OkHttpClient.Builder() return new OkHttpClient.Builder()

View File

@ -1550,6 +1550,10 @@ public class DeviceFragment extends BaseV4Fragment implements ObservableScrollVi
AnimationUtil.startAnimation(getActivity()); AnimationUtil.startAnimation(getActivity());
break; break;
case R.id.rl_adddevice: case R.id.rl_adddevice:
EventBean eventBean = new EventBean(EventBean.BLUETOOTH_STOP_SCAN);
EventBus.getDefault().post(eventBean);
if (!permissionHelper.checkSelfPermission(permission)) { if (!permissionHelper.checkSelfPermission(permission)) {
getPermission(); getPermission();
return; return;
@ -2064,6 +2068,7 @@ public class DeviceFragment extends BaseV4Fragment implements ObservableScrollVi
@Override @Override
public void onScanFinished(List<BleDevice> scanResultList) { public void onScanFinished(List<BleDevice> scanResultList) {
if (currentDevice!=null){ // 扫描结束有设备 if (currentDevice!=null){ // 扫描结束有设备
L.i("jjjia-----------scan---");
showDevice(); showDevice();
} }
} }
@ -2094,34 +2099,50 @@ public class DeviceFragment extends BaseV4Fragment implements ObservableScrollVi
} }
private boolean isShowIng = false;
private boolean isShowEd = false;
public void onEventMainThread(EventBean eventBean){ public void onEventMainThread(EventBean eventBean){
if (eventBean!= null){ if (eventBean!= null){
if (EventBean.BLUETOOTH_START_SCAN.equals(eventBean.name)){
// ToastUtil.show(requireActivity(),isShowEd+"show");
if (!isShowEd){
// ToastUtil.show(requireActivity(),"re scaan");
initBooth();
}
}else if (EventBean.BLUETOOTH_STOP_SCAN.equals(eventBean.name)){
// ToastUtil.show(requireActivity(),"hide");
// L.i("jjia----------hide==");
if (!isShowIng){
currentDevice = null;
}
BleManager.getInstance().cancelScan();
}
} }
} }
public void showDevice(){ public void showDevice(){
// 检测页面 // 检测页面
AlertDialog.Builder dialog = new AlertDialog.Builder(requireContext(), AlertDialog.THEME_HOLO_LIGHT); if (!isShowIng){
dialog.setCancelable(true); isShowIng = true;
dialog.setTitle("提示"); isShowEd = true;
dialog.setMessage("发现一个新设备是否去添加"); AlertDialog.Builder dialog = new AlertDialog.Builder(requireContext(), AlertDialog.THEME_HOLO_LIGHT);
dialog.setNegativeButton("取消", new DialogInterface.OnClickListener() { dialog.setCancelable(true);
@Override dialog.setTitle("提示");
public void onClick(DialogInterface arg0, int arg1) { dialog.setMessage("发现一个新设备是否去添加");
arg0.dismiss(); dialog.setOnDismissListener(dialogInterface -> isShowIng = false);
} dialog.setNegativeButton("取消", (arg0, arg1) -> arg0.dismiss());
}); dialog.setPositiveButton("确定", (dialog1, which) -> {
dialog.setPositiveButton("确定", (dialog1, which) -> { dialog1.dismiss();
dialog1.dismiss(); Intent intent = new Intent();
Intent intent = new Intent(); intent.setClass(requireActivity(), NewBindDeviceActivity.class);
intent.setClass(requireActivity(), NewBindDeviceActivity.class); intent.putExtra("title", "连接水族箱");
intent.putExtra("title", "连接水族箱"); intent.putExtra("type", "bluetooth");
intent.putExtra("type", "bluetooth"); intent.putExtra("device", currentDevice);
intent.putExtra("device", currentDevice); startActivity(intent);
startActivity(intent); AnimationUtil.finishAnimation(requireActivity());
AnimationUtil.finishAnimation(requireActivity()); });
}); dialog.show();
dialog.show(); }
} }
} }

View File

@ -0,0 +1,112 @@
package com.ifish.utils
import com.ifish.basebean.TimeBean
import com.ifish.baseclass.BaseApplication
import com.ifish.view.WheelView
class DateUtil {
companion object{
@JvmStatic
public fun hasContain(timeList: List<TimeBean>, timer_num: Byte, start: Int, end: Int): Boolean {
L.i("jjia--------1-$start-$end")
if (timeList != null && timeList.size > 0) {
for (item in timeList) {
if (timer_num == item.no) {
continue
}
val a = item.start
val b = item.end
L.i("jjia-------2--$a-$b")
if (start >= a && start <= b) {
return true
}
if (end >= a && end <= b) {
return true
}
}
return false
} else {
return false
}
}
@JvmStatic
public fun hasContain(timeList: List<TimeBean>, timer_num: Byte, startHView: WheelView, startMView:WheelView, endHView:WheelView, endMView:WheelView):Boolean{
val startH: Int = startHView.getSeletedIndex()
val startM: Int = startMView.getSeletedIndex()
val endH: Int = endHView.getSeletedIndex()
val endM: Int = endMView.getSeletedIndex()
if (startH == endH && startM == endM) {
ToastUtil.show(BaseApplication.app, "开始时间和结束时间不能相同")
return true
}
var isContain = false
var h1 = -1
var m1 = -1
var h2 = -1
var m2 = -1
if (startH > endH) {
h1 = startH * 60 + startM
m1 = 24 * 60
isContain = hasContain(timeList, timer_num, h1, m1)
if (!isContain) {
h2 = 0
m2 = endH * 60 + endM
isContain = hasContain(timeList, timer_num, h2, m2)
}
} else {
h1 = startH * 60 + startM
m1 = endH * 60 + endM
isContain = hasContain(timeList, timer_num, h1, m1)
}
if (isContain){
ToastUtil.show(BaseApplication.app, "时段设置不能重叠")
}
return isContain
}
@JvmStatic
fun getTimeList(timeList :MutableList<TimeBean>,timer_time:ByteArray,timer_number:Byte):List<TimeBean>{
var startH = 0
var startM = 0
var endH = 0
var endM = 0
for (j in timer_time.indices) {
if (j == 0) {
startH = timer_time.get(j).toInt()
L.i("jjia-------set------$startH")
} else if (j == 1) {
startM = timer_time.get(j).toInt()
L.i("jjia-------set------$startM")
} else if (j == 2) {
endH = timer_time.get(j).toInt()
L.i("jjia-------set------$endH")
} else if (j == 3) {
endM = timer_time.get(j).toInt()
L.i("jjia-------set------$endM")
}
}
if (startH > endH) {
timeList.add(TimeBean(timer_number, startH * 60 + startM, 24 * 60))
timeList.add(TimeBean(timer_number, 0, endH * 60 + endM))
} else {
timeList.add(TimeBean(timer_number, startH * 60 + startM, endH * 60 + endM))
}
return timeList
}
}
}