From 670a5331fce22ec8772355b281b635342e5970bd Mon Sep 17 00:00:00 2001 From: zhanghui <15122431204@163.com> Date: Thu, 30 Nov 2017 17:13:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/qhclh/ytzh/bean/FactryBean.java | 55 +++++ .../java/com/qhclh/ytzh/bean/ScanBean.java | 149 +++++++++++++ .../java/com/qhclh/ytzh/bean/WarningBean.java | 62 +++++ .../ytzh/index/planorder/WarningActivity.java | 58 +++++ .../ytzh/index/planorder/WarningAdapter.java | 81 +++++++ .../com/qhclh/ytzh/me/MineInfoActivity.java | 36 +++ .../com/qhclh/ytzh/me/SettingActivity.java | 28 +++ .../qhclh/ytzh/ui/CalendarDialogFragment.java | 71 ++++++ .../java/com/qhclh/ytzh/ui/MyGridView.java | 30 +++ .../breedpoultry/DatanalysisActivity.java | 63 ++++++ .../breedpoultry/DatanalysisSActivity.java | 62 +++++ .../ytzh/work/breedpoultry/FactryAdapter.java | 92 ++++++++ .../ytzh/work/carsmannage/BaseActivity1.java | 98 ++++++++ .../work/carsmannage/CarsManageActivity.java | 211 ++++++++++++++++++ .../ytzh/work/carsmannage/ChicksFragment.java | 46 ++++ .../ytzh/work/carsmannage/FeedFragment.java | 30 +++ .../carsmannage/GrossChickenFragment.java | 47 ++++ .../com/qhclh/ytzh/work/scan/ScanAdapter.java | 98 ++++++++ app/src/main/res/layout/fragment_me.xml | 1 + 19 files changed, 1318 insertions(+) create mode 100644 app/src/main/java/com/qhclh/ytzh/bean/FactryBean.java create mode 100644 app/src/main/java/com/qhclh/ytzh/bean/ScanBean.java create mode 100644 app/src/main/java/com/qhclh/ytzh/bean/WarningBean.java create mode 100644 app/src/main/java/com/qhclh/ytzh/index/planorder/WarningActivity.java create mode 100644 app/src/main/java/com/qhclh/ytzh/index/planorder/WarningAdapter.java create mode 100644 app/src/main/java/com/qhclh/ytzh/me/MineInfoActivity.java create mode 100644 app/src/main/java/com/qhclh/ytzh/me/SettingActivity.java create mode 100644 app/src/main/java/com/qhclh/ytzh/ui/CalendarDialogFragment.java create mode 100644 app/src/main/java/com/qhclh/ytzh/ui/MyGridView.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisActivity.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisSActivity.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/breedpoultry/FactryAdapter.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/carsmannage/BaseActivity1.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/carsmannage/CarsManageActivity.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/carsmannage/ChicksFragment.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/carsmannage/FeedFragment.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/carsmannage/GrossChickenFragment.java create mode 100644 app/src/main/java/com/qhclh/ytzh/work/scan/ScanAdapter.java diff --git a/app/src/main/java/com/qhclh/ytzh/bean/FactryBean.java b/app/src/main/java/com/qhclh/ytzh/bean/FactryBean.java new file mode 100644 index 0000000..1b1d75d --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/bean/FactryBean.java @@ -0,0 +1,55 @@ +package com.qhclh.ytzh.bean; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class FactryBean { + private int id; + private String name; + private boolean isCheck; + + public FactryBean(int id, String name) { + this.id = id; + this.name = name; + } + + public FactryBean(int id, String name, boolean isCheck) { + this.id = id; + this.name = name; + this.isCheck = isCheck; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public boolean isCheck() { + return isCheck; + } + + public void setCheck(boolean check) { + isCheck = check; + } + + @Override + public String toString() { + return "FactryBean{" + + "id=" + id + + ", name='" + name + '\'' + + ", isCheck=" + isCheck + + '}'; + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/bean/ScanBean.java b/app/src/main/java/com/qhclh/ytzh/bean/ScanBean.java new file mode 100644 index 0000000..898cec8 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/bean/ScanBean.java @@ -0,0 +1,149 @@ +package com.qhclh.ytzh.bean; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class ScanBean { + private int id; + private String infos_carname; + private String infos_driver; + private String infos_phone; + private String infos_batch; + private String infos_addrs; + private String infos_time; + private String infos_number; + private String infos_immune; + private String infos_uniformity; + private String infos_startime; + private String infos_endtime; + + public ScanBean(int id, String infos_carname, String infos_driver, String infos_phone, String infos_batch, String infos_addrs, String infos_time, String infos_number, String infos_immune, String infos_uniformity, String infos_startime, String infos_endtime) { + this.id = id; + this.infos_carname = infos_carname; + this.infos_driver = infos_driver; + this.infos_phone = infos_phone; + this.infos_batch = infos_batch; + this.infos_addrs = infos_addrs; + this.infos_time = infos_time; + this.infos_number = infos_number; + this.infos_immune = infos_immune; + this.infos_uniformity = infos_uniformity; + this.infos_startime = infos_startime; + this.infos_endtime = infos_endtime; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getInfos_carname() { + return infos_carname; + } + + public void setInfos_carname(String infos_carname) { + this.infos_carname = infos_carname; + } + + public String getInfos_driver() { + return infos_driver; + } + + public void setInfos_driver(String infos_driver) { + this.infos_driver = infos_driver; + } + + public String getInfos_phone() { + return infos_phone; + } + + public void setInfos_phone(String infos_phone) { + this.infos_phone = infos_phone; + } + + public String getInfos_batch() { + return infos_batch; + } + + public void setInfos_batch(String infos_batch) { + this.infos_batch = infos_batch; + } + + public String getInfos_addrs() { + return infos_addrs; + } + + public void setInfos_addrs(String infos_addrs) { + this.infos_addrs = infos_addrs; + } + + public String getInfos_time() { + return infos_time; + } + + public void setInfos_time(String infos_time) { + this.infos_time = infos_time; + } + + public String getInfos_number() { + return infos_number; + } + + public void setInfos_number(String infos_number) { + this.infos_number = infos_number; + } + + public String getInfos_immune() { + return infos_immune; + } + + public void setInfos_immune(String infos_immune) { + this.infos_immune = infos_immune; + } + + public String getInfos_uniformity() { + return infos_uniformity; + } + + public void setInfos_uniformity(String infos_uniformity) { + this.infos_uniformity = infos_uniformity; + } + + public String getInfos_startime() { + return infos_startime; + } + + public void setInfos_startime(String infos_startime) { + this.infos_startime = infos_startime; + } + + public String getInfos_endtime() { + return infos_endtime; + } + + public void setInfos_endtime(String infos_endtime) { + this.infos_endtime = infos_endtime; + } + + @Override + public String toString() { + return "ScanBean{" + + "id=" + id + + ", infos_carname='" + infos_carname + '\'' + + ", infos_driver='" + infos_driver + '\'' + + ", infos_phone='" + infos_phone + '\'' + + ", infos_batch='" + infos_batch + '\'' + + ", infos_addrs='" + infos_addrs + '\'' + + ", infos_time='" + infos_time + '\'' + + ", infos_number='" + infos_number + '\'' + + ", infos_immune='" + infos_immune + '\'' + + ", infos_uniformity='" + infos_uniformity + '\'' + + ", infos_startime='" + infos_startime + '\'' + + ", infos_endtime='" + infos_endtime + '\'' + + '}'; + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/bean/WarningBean.java b/app/src/main/java/com/qhclh/ytzh/bean/WarningBean.java new file mode 100644 index 0000000..a67b435 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/bean/WarningBean.java @@ -0,0 +1,62 @@ +package com.qhclh.ytzh.bean; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class WarningBean { + private int id; + private String url; + private String content; + private String time; + + public WarningBean(int id, String url, String content, String time) { + this.id = id; + this.url = url; + this.content = content; + this.time = time; + } + + @Override + public String toString() { + return "WarningBean{" + + "id=" + id + + ", url='" + url + '\'' + + ", content='" + content + '\'' + + ", time='" + time + '\'' + + '}'; + } + + public String getTime() { + return time; + } + + public void setTime(String time) { + this.time = time; + } + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } + +} diff --git a/app/src/main/java/com/qhclh/ytzh/index/planorder/WarningActivity.java b/app/src/main/java/com/qhclh/ytzh/index/planorder/WarningActivity.java new file mode 100644 index 0000000..b81f03d --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/index/planorder/WarningActivity.java @@ -0,0 +1,58 @@ +package com.qhclh.ytzh.index.planorder; + +import android.support.v7.widget.Toolbar; +import android.view.View; +import android.widget.ListView; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseActivity; +import com.qhclh.ytzh.bean.WarningBean; + +import java.util.ArrayList; +import java.util.List; + +import butterknife.BindView; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class WarningActivity extends BaseActivity{ + @BindView(R.id.toolbar) + Toolbar mToolbar; + @BindView(R.id.lv_warning) + ListView lv_warning; + + private List warningBeanList; + private WarningAdapter warningAdapter; + @Override + protected int setLayoutId() { + return R.layout.act_warning; + } + + @Override + protected void initView() { + initToolbar(mToolbar, "预警详情页", new View.OnClickListener() { + @Override + public void onClick(View view) { + finish(); + } + }); + } + + @Override + protected void initData() { + warningBeanList = new ArrayList<>(); + for (int i=0;i<8;i++){ + warningBeanList.add(new WarningBean(i,"https://www.baidu.com/img/bd_logo1.png","asagggggggggggwwwwwwwwwwwwwaa"+i,"adf")); + } + + warningAdapter = new WarningAdapter(this,warningBeanList); + lv_warning.setAdapter(warningAdapter); + } + + @Override + protected void initOper() { + + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/index/planorder/WarningAdapter.java b/app/src/main/java/com/qhclh/ytzh/index/planorder/WarningAdapter.java new file mode 100644 index 0000000..79347d8 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/index/planorder/WarningAdapter.java @@ -0,0 +1,81 @@ +package com.qhclh.ytzh.index.planorder; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.BaseAdapter; +import android.widget.ImageView; +import android.widget.TextView; + +import com.bumptech.glide.Glide; +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.bean.WarningBean; + +import java.util.List; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class WarningAdapter extends BaseAdapter { + private Context context; + private List list; + private LayoutInflater layoutInflater; + + public WarningAdapter(Context context, List list) { + this.context = context; + this.list = list; + layoutInflater = LayoutInflater.from(context); + } + + @Override + public int getCount() { + return list.size(); + } + + @Override + public Object getItem(int i) { + return list.get(i); + } + + @Override + public long getItemId(int i) { + return list.get(i).getId(); + } + + @Override + public View getView(int i, View view, ViewGroup viewGroup) { + ViewHolder viewHolder; + WarningBean message = list.get(i); + if (view == null){ + view = layoutInflater.inflate(R.layout.item_warning,viewGroup,false); + viewHolder = new ViewHolder(); + viewHolder.warning_pic = view.findViewById(R.id.warning_pic); + viewHolder.warning_time = view.findViewById(R.id.warning_time); + viewHolder.warning_content = view.findViewById(R.id.warning_content); + + view.setTag(viewHolder); + }else { + viewHolder = (ViewHolder) view.getTag(); + } + + Glide.with(context) + .load(message.getUrl()) + .error(R.mipmap.ic_launcher_round) + .placeholder(R.mipmap.ic_launcher_round) + .into(viewHolder.warning_pic); + + viewHolder.warning_time.setText(message.getTime()); + viewHolder.warning_content.setText(message.getContent()); + + return view; + } + + private class ViewHolder{ + private ImageView warning_pic; + + private TextView warning_time; + private TextView warning_content; + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/me/MineInfoActivity.java b/app/src/main/java/com/qhclh/ytzh/me/MineInfoActivity.java new file mode 100644 index 0000000..e87ed3b --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/me/MineInfoActivity.java @@ -0,0 +1,36 @@ +package com.qhclh.ytzh.me; + +import android.os.Bundle; +import android.support.design.widget.FloatingActionButton; +import android.support.design.widget.Snackbar; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.Toolbar; +import android.view.View; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseActivity; + +public class MineInfoActivity extends BaseActivity { + + + @Override + protected int setLayoutId() { + return R.layout.activity_mine_info; + } + + @Override + protected void initView() { + + } + + @Override + protected void initData() { + + } + + @Override + protected void initOper() { + + } + +} diff --git a/app/src/main/java/com/qhclh/ytzh/me/SettingActivity.java b/app/src/main/java/com/qhclh/ytzh/me/SettingActivity.java new file mode 100644 index 0000000..f516803 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/me/SettingActivity.java @@ -0,0 +1,28 @@ +package com.qhclh.ytzh.me; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseActivity; + +public class SettingActivity extends BaseActivity { + + + @Override + protected int setLayoutId() { + return R.layout.activity_setting; + } + + @Override + protected void initView() { + + } + + @Override + protected void initData() { + + } + + @Override + protected void initOper() { + + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/ui/CalendarDialogFragment.java b/app/src/main/java/com/qhclh/ytzh/ui/CalendarDialogFragment.java new file mode 100644 index 0000000..91b7a6b --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/ui/CalendarDialogFragment.java @@ -0,0 +1,71 @@ +package com.qhclh.ytzh.ui; + +import android.os.Bundle; +import android.support.annotation.NonNull; +import android.support.v4.app.DialogFragment; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.view.Window; + +import com.prolificinteractive.materialcalendarview.CalendarDay; +import com.prolificinteractive.materialcalendarview.MaterialCalendarView; +import com.prolificinteractive.materialcalendarview.OnDateSelectedListener; +import com.qhclh.ytzh.R; + +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.util.Date; + +/** + * Created by luanhui on 2016/7/5. + */ +public class CalendarDialogFragment extends DialogFragment implements OnDateSelectedListener { + +// private TextView textView; + private static final DateFormat FORMATTER = SimpleDateFormat.getDateInstance(); + + + public interface CalendarClickListener + { + void onStartCalendarClick(Date date); + void onEndCalendarClick(Date date); + } + + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + + //去掉标题 + getDialog().requestWindowFeature(Window.FEATURE_NO_TITLE); + return inflater.inflate(R.layout.calendar_dialog_basic, container, false); + } + + @Override + public void onViewCreated(View view, Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + +// textView = (TextView) view.findViewById(R.id.textView); + + MaterialCalendarView widget = (MaterialCalendarView) view.findViewById(R.id.calendarView); + + widget.setOnDateChangedListener(this); + } + + @Override + public void onDateSelected(@NonNull MaterialCalendarView widget, @NonNull CalendarDay date, boolean selected) { +// textView.setText(FORMATTER.format(date.getDate())); + + CalendarClickListener listener = (CalendarClickListener) getActivity(); + String tag=this.getTag(); + if(tag.equals("end")) + { + listener.onEndCalendarClick(date.getDate()); + } + else{ + listener.onStartCalendarClick(date.getDate()); + } + + this.dismiss(); + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/ui/MyGridView.java b/app/src/main/java/com/qhclh/ytzh/ui/MyGridView.java new file mode 100644 index 0000000..a80af03 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/ui/MyGridView.java @@ -0,0 +1,30 @@ +package com.qhclh.ytzh.ui; + +import android.content.Context; +import android.util.AttributeSet; +import android.widget.GridView; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class MyGridView extends GridView { + public MyGridView(Context context, AttributeSet attrs) { + super(context, attrs); + } + + public MyGridView(Context context) { + super(context); + } + + public MyGridView(Context context, AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + } + + @Override + public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + int expandSpec = MeasureSpec.makeMeasureSpec( + Integer.MAX_VALUE >> 2, MeasureSpec.AT_MOST); + super.onMeasure(widthMeasureSpec, expandSpec); + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisActivity.java b/app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisActivity.java new file mode 100644 index 0000000..e356f1a --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisActivity.java @@ -0,0 +1,63 @@ +package com.qhclh.ytzh.work.breedpoultry; + +import android.content.Intent; +import android.support.v7.widget.Toolbar; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseActivity; + +import butterknife.BindView; + +/** + * Created by 青花瓷 on 2017/11/30. + */ +///< 数据分析 +public class DatanalysisActivity extends BaseActivity { + @BindView(R.id.toolbar) + Toolbar mToolbar; + @Override + protected int setLayoutId() { + return R.layout.act_datanalysis; + } + + @Override + protected void initView() { + initToolbar(mToolbar, "数据分析", new View.OnClickListener() { + @Override + public void onClick(View view) { + finish(); + } + }); + } + + @Override + protected void initData() { + + } + + @Override + protected void initOper() { + + } + + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + getMenuInflater().inflate(R.menu.datanalysismenu, menu); + menu.findItem(R.id.datanalysis_menu).setVisible(true); + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.datanalysis_menu: + startActivity(new Intent(this,DatanalysisSActivity.class)); + break; + } + return super.onOptionsItemSelected(item); + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisSActivity.java b/app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisSActivity.java new file mode 100644 index 0000000..a24a8fb --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/breedpoultry/DatanalysisSActivity.java @@ -0,0 +1,62 @@ +package com.qhclh.ytzh.work.breedpoultry; + +import android.support.v7.widget.Toolbar; +import android.view.View; +import android.widget.GridView; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseActivity; +import com.qhclh.ytzh.bean.FactryBean; + +import java.util.ArrayList; +import java.util.List; + +import butterknife.BindView; + +/** + * Created by 青花瓷 on 2017/11/30. + */ +///< 筛选 +public class DatanalysisSActivity extends BaseActivity { + @BindView(R.id.toolbar) + Toolbar mToolbar; + @BindView(R.id.gv_dataanaly) + GridView gv_dataanaly; + private List factryBeanList; + private FactryAdapter factryAdapter; + + private List factryCheck; + @Override + protected int setLayoutId() { + return R.layout.act_datanaly_s; + } + + @Override + protected void initView() { + initToolbar(mToolbar, "筛选", new View.OnClickListener() { + @Override + public void onClick(View view) { + finish(); + } + }); + } + + @Override + protected void initData() { + factryBeanList = new ArrayList<>(); + factryCheck = new ArrayList<>(); + for (int i=0;i<10;i++){ + factryBeanList.add(new FactryBean(i,"adf"+i)); + } + for (int i=0;i list; + private LayoutInflater layoutInflater; + private List isCheck; + + public FactryAdapter(Context context, List list, List isCheck) { + this.context = context; + this.list = list; + this.isCheck = isCheck; + layoutInflater = LayoutInflater.from(context); + } + + public FactryAdapter(Context context, List list) { + this.context = context; + this.list = list; + layoutInflater = LayoutInflater.from(context); + } + + @Override + public int getCount() { + return list.size(); + } + + @Override + public Object getItem(int i) { + return list.get(i); + } + + @Override + public long getItemId(int i) { + return list.get(i).getId(); + } + + @Override + public View getView(int i, View view, ViewGroup viewGroup) { + FactryBean message = list.get(i); + final ViewHolder viewHolder; + if (view == null){ + viewHolder = new ViewHolder(); + view = layoutInflater.inflate(R.layout.item_factry,viewGroup,false); + viewHolder.factry_name = view.findViewById(R.id.factry_name); + + view.setTag(viewHolder); + + }else { + viewHolder = (ViewHolder) view.getTag(); + } + viewHolder.factry_name.setTag(i); + viewHolder.factry_name.setChecked(isCheck.get(i)); + viewHolder.factry_name.setText(message.getName()); + viewHolder.factry_name.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton compoundButton, boolean b) { + int pos = (int) compoundButton.getTag(); + isCheck.set(pos, b); + list.get(pos).setCheck(b); + if (b){ + viewHolder.factry_name.setTextColor(context.getResources().getColor(R.color.green029737)); + }else { + viewHolder.factry_name.setTextColor(context.getResources().getColor(R.color.black303030)); + } + } + }); + + return view; + } + + private class ViewHolder { + public CheckBox factry_name; + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/carsmannage/BaseActivity1.java b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/BaseActivity1.java new file mode 100644 index 0000000..b3cb932 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/BaseActivity1.java @@ -0,0 +1,98 @@ +package com.qhclh.ytzh.work.carsmannage; + +import android.os.Bundle; +import android.support.annotation.IdRes; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; +import android.support.v7.app.ActionBar; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.Toolbar; +import android.view.View; +import android.widget.TextView; +import android.widget.Toast; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.utils.ActivityCollector; +import com.umeng.analytics.MobclickAgent; + +import butterknife.ButterKnife; + + +/** + * Created by 青花瓷 on 2017/7/19. + */ + +public abstract class BaseActivity1 extends AppCompatActivity { + + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(setLayoutId()); + ButterKnife.bind(this); + ActivityCollector.addActivity(this); + initView(); + initData(); + initOper(); + } + + protected abstract int setLayoutId(); + protected abstract void initView(); + protected abstract void initData(); + protected abstract void initOper(); + ///< toolbar设置 + public void initToolbar(Toolbar toolbar, String title, View.OnClickListener listener) { + if (toolbar == null) { + return; + } + TextView tvTitle = findById(toolbar, R.id.tv_toolbar_title1); + if (tvTitle != null) { + tvTitle.setText(title == null ? "" : title); + } + setSupportActionBar(toolbar); + ActionBar actionBar = getSupportActionBar(); + if (actionBar != null) { + actionBar.setDisplayShowTitleEnabled(false); + } + if (listener != null) { + toolbar.setNavigationIcon(R.drawable.fanhui1_3x); + toolbar.setNavigationOnClickListener(listener); + } + } + + @Override + protected void onResume() { + super.onResume(); + try { + MobclickAgent.onResume(this); + } catch (Exception e) { + e.printStackTrace(); + } + } + + @Override + protected void onPause() { + super.onPause(); + try { + MobclickAgent.onPause(this); + } catch (Exception e) { + e.printStackTrace(); + } + } + + + @Override + protected void onDestroy() { + super.onDestroy(); + ActivityCollector.removeActivity(this); + } + + public void finishAll(){ActivityCollector.finishAll();} + + public void showToast(String str) { + Toast.makeText(this, str, Toast.LENGTH_SHORT).show(); + } + + protected T findById(@NonNull View view, @IdRes int resId) { + return ButterKnife.findById(view, resId); + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/carsmannage/CarsManageActivity.java b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/CarsManageActivity.java new file mode 100644 index 0000000..76976cb --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/CarsManageActivity.java @@ -0,0 +1,211 @@ +package com.qhclh.ytzh.work.carsmannage; + +import android.support.v4.app.FragmentTransaction; +import android.support.v7.widget.Toolbar; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; +import android.widget.TextView; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.ui.CalendarDialogFragment; +import com.qhclh.ytzh.utils.DateTimeUtil; + +import java.util.Date; + +import butterknife.BindView; +import butterknife.OnClick; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class CarsManageActivity extends BaseActivity1 implements CalendarDialogFragment.CalendarClickListener{ + @BindView(R.id.toolbar1) + Toolbar mToolbar; + @BindView(R.id.chicks) + TextView chicks; + @BindView(R.id.GrossChicken) + TextView GrossChicken; + @BindView(R.id.feed) + TextView feed; + + ///< 鸡苗 + private static final int TAB_POSITION_CHICKS = 0; + ///< 毛鸡 + private static final int TAB_POSITION_GROSSCHICKEN = 1; + ///< 饲料 + private static final int TAB_POSITION_FEED = 2; + private int mCurrentTabPosition = -1; + private int mTargetTabPosition = TAB_POSITION_CHICKS; + + private ChicksFragment chicksFragment; + private GrossChickenFragment grossChickenFragment; + private FeedFragment feedFragment; + + @Override + protected int setLayoutId() { + return R.layout.act_carsmanage; + } + + @Override + protected void initView() { + ///< 点击切换fragment + onTabClick(mTargetTabPosition); + initToolbar(mToolbar, "车辆管理", new View.OnClickListener() { + @Override + public void onClick(View view) { + finish(); + } + }); + } + + @Override + protected void initData() { + feed.setVisibility(View.GONE); + } + + @Override + protected void initOper() { + + } + + @OnClick({R.id.chicks,R.id.GrossChicken,R.id.feed}) + public void OnClick(View v){ + switch (v.getId()){ + case R.id.chicks: + onTabClick(TAB_POSITION_CHICKS); + break; + case R.id.GrossChicken: + onTabClick(TAB_POSITION_GROSSCHICKEN); + break; + case R.id.feed: + onTabClick(TAB_POSITION_FEED); + break; + + } + } + + private void onTabClick(int tabPosition) { + if (mCurrentTabPosition == tabPosition) { + return; + } + mCurrentTabPosition = tabPosition; + changeTabState(tabPosition); + changeFragment(tabPosition); + } + + private void changeTabState(int tabPosition) { + clearAllTabState(); + switch (tabPosition) { + case TAB_POSITION_CHICKS: { + chicks.setTextColor(this.getResources().getColor(R.color.white)); + chicks.setBackgroundColor(this.getResources().getColor(R.color.green02aa3e)); + break; + } + + case TAB_POSITION_GROSSCHICKEN: { + GrossChicken.setTextColor(this.getResources().getColor(R.color.white)); + GrossChicken.setBackgroundColor(this.getResources().getColor(R.color.green02aa3e)); + break; + } + case TAB_POSITION_FEED: { + feed.setTextColor(this.getResources().getColor(R.color.white)); + feed.setBackgroundColor(this.getResources().getColor(R.color.green02aa3e)); + break; + } + } + } + + + private void clearAllTabState() { + ///< 首页 + chicks.setTextColor(this.getResources().getColor(R.color.grey666666)); + chicks.setBackgroundColor(this.getResources().getColor(R.color.white)); + ///< 工作 + GrossChicken.setTextColor(this.getResources().getColor(R.color.grey666666)); + GrossChicken.setBackgroundColor(this.getResources().getColor(R.color.white)); + ///< 我的 + feed.setTextColor(this.getResources().getColor(R.color.grey666666)); + feed.setBackgroundColor(this.getResources().getColor(R.color.white)); + + } + + + private void changeFragment(int tabPosition) { + FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); + hideFragment(transaction); + switch (tabPosition) { + case TAB_POSITION_CHICKS: { + if (chicksFragment == null) { + chicksFragment = new ChicksFragment(); + transaction.add(R.id.main_container, chicksFragment); + } else { + transaction.show(chicksFragment); + } + break; + } + + case TAB_POSITION_GROSSCHICKEN: { + if (grossChickenFragment == null) { + grossChickenFragment = new GrossChickenFragment(); + transaction.add(R.id.main_container, grossChickenFragment); + } else { + transaction.show(grossChickenFragment); + } + break; + } + + case TAB_POSITION_FEED: { + if (feedFragment == null) { + feedFragment = new FeedFragment(); + transaction.add(R.id.main_container, feedFragment); + } else { + transaction.show(feedFragment); + } + break; + } + } + transaction.commitAllowingStateLoss(); + } + + private void hideFragment(FragmentTransaction transaction) { + if (chicksFragment != null) { + transaction.hide(chicksFragment); + } + + if (grossChickenFragment != null) { + transaction.hide(grossChickenFragment); + } + if (feedFragment != null) { + transaction.hide(feedFragment); + } + } + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + getMenuInflater().inflate(R.menu.screen, menu); + menu.findItem(R.id.screenr).setVisible(true); + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.screenr: + new CalendarDialogFragment().show(getSupportFragmentManager(), "start"); + break; + } + return super.onOptionsItemSelected(item); + } + + @Override + public void onStartCalendarClick(Date date) { + showToast(DateTimeUtil.FormatDate(date)); + } + + @Override + public void onEndCalendarClick(Date date) { + showToast(DateTimeUtil.FormatDate(date)); + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/carsmannage/ChicksFragment.java b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/ChicksFragment.java new file mode 100644 index 0000000..0d15a6a --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/ChicksFragment.java @@ -0,0 +1,46 @@ +package com.qhclh.ytzh.work.carsmannage; + +import android.widget.ListView; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseFragment; +import com.qhclh.ytzh.bean.ScanBean; +import com.qhclh.ytzh.work.scan.ScanAdapter; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class ChicksFragment extends BaseFragment{ + private ListView lv_infos_chicks; + private List scanBeanList; + private ScanAdapter scanAdapter; + @Override + protected int setLayout() { + return R.layout.fragment_chicks; + } + + @Override + protected void initView() { + lv_infos_chicks = getActivity().findViewById(R.id.lv_infos_chicks); + } + + @Override + protected void initData() { + scanBeanList = new ArrayList<>(); + for (int i=0;i<4;i++){ + scanBeanList.add(new ScanBean(i,"车牌号"+i,"司机"+i,"联系方式"+i,"批次"+i,"厂址"+i, + "时间"+i,"数量"+i,"免疫"+i,"均匀度"+i,"起始时间"+i,"到达时间"+i)); + } + scanAdapter = new ScanAdapter(getActivity(),scanBeanList); + lv_infos_chicks.setAdapter(scanAdapter); + } + + @Override + protected void initOper() { + + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/carsmannage/FeedFragment.java b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/FeedFragment.java new file mode 100644 index 0000000..fcfc4f8 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/FeedFragment.java @@ -0,0 +1,30 @@ +package com.qhclh.ytzh.work.carsmannage; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseFragment; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class FeedFragment extends BaseFragment { + @Override + protected int setLayout() { + return R.layout.fragment_feed; + } + + @Override + protected void initView() { + + } + + @Override + protected void initData() { + + } + + @Override + protected void initOper() { + + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/carsmannage/GrossChickenFragment.java b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/GrossChickenFragment.java new file mode 100644 index 0000000..12b326f --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/carsmannage/GrossChickenFragment.java @@ -0,0 +1,47 @@ +package com.qhclh.ytzh.work.carsmannage; + +import android.widget.ListView; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.base.BaseFragment; +import com.qhclh.ytzh.bean.ScanBean; +import com.qhclh.ytzh.work.scan.ScanAdapter; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class GrossChickenFragment extends BaseFragment { + private ListView lv_infos_grosschicken; + + private List scanBeanList; + private ScanAdapter scanAdapter; + @Override + protected int setLayout() { + return R.layout.fragment_grosschicken; + } + + @Override + protected void initView() { + lv_infos_grosschicken = getActivity().findViewById(R.id.lv_infos_grosschicken); + } + + @Override + protected void initData() { + scanBeanList = new ArrayList<>(); + for (int i=0;i<4;i++){ + scanBeanList.add(new ScanBean(i,"车牌号1"+i,"司机1"+i,"联系方式1"+i,"批次1"+i,"厂址1"+i, + "时间1"+i,"数量1"+i,"免疫1"+i,"均匀度1"+i,"起始时间1"+i,"到达时间1"+i)); + } + scanAdapter = new ScanAdapter(getActivity(),scanBeanList); + lv_infos_grosschicken.setAdapter(scanAdapter); + } + + @Override + protected void initOper() { + + } +} diff --git a/app/src/main/java/com/qhclh/ytzh/work/scan/ScanAdapter.java b/app/src/main/java/com/qhclh/ytzh/work/scan/ScanAdapter.java new file mode 100644 index 0000000..01994c5 --- /dev/null +++ b/app/src/main/java/com/qhclh/ytzh/work/scan/ScanAdapter.java @@ -0,0 +1,98 @@ +package com.qhclh.ytzh.work.scan; + +import android.content.Context; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.BaseAdapter; +import android.widget.TextView; + +import com.qhclh.ytzh.R; +import com.qhclh.ytzh.bean.ScanBean; + +import java.util.List; + +/** + * Created by 青花瓷 on 2017/11/30. + */ + +public class ScanAdapter extends BaseAdapter { + + private Context context; + private List list; + private LayoutInflater layoutInflater; + + public ScanAdapter(Context context, List list) { + this.context = context; + this.list = list; + layoutInflater = LayoutInflater.from(context); + } + + @Override + public int getCount() { + return list.size(); + } + + @Override + public Object getItem(int i) { + return list.get(i); + } + + @Override + public long getItemId(int i) { + return list.get(i).getId(); + } + + @Override + public View getView(int i, View view, ViewGroup viewGroup) { + ViewHolder viewHolder; + ScanBean message = list.get(i); + if (view == null){ + view = layoutInflater.inflate(R.layout.item_infos,viewGroup,false); + viewHolder = new ViewHolder(); + viewHolder.infos_carname = view.findViewById(R.id.infos_carname); + viewHolder.infos_driver = view.findViewById(R.id.infos_driver); + viewHolder.infos_phone = view.findViewById(R.id.infos_phone); + viewHolder.infos_batch = view.findViewById(R.id.infos_batch); + viewHolder.infos_addrs = view.findViewById(R.id.infos_addrs); + viewHolder.infos_time = view.findViewById(R.id.infos_time); + viewHolder.infos_number = view.findViewById(R.id.infos_number); + viewHolder.infos_immune = view.findViewById(R.id.infos_immune); + viewHolder.infos_uniformity = view.findViewById(R.id.infos_uniformity); + viewHolder.infos_startime = view.findViewById(R.id.infos_startime); + viewHolder.infos_endtime = view.findViewById(R.id.infos_endtime); + + view.setTag(viewHolder); + }else { + viewHolder = (ViewHolder) view.getTag(); + } + + viewHolder.infos_carname.setText(message.getInfos_carname()); + viewHolder.infos_driver.setText(message.getInfos_driver()); + viewHolder.infos_phone.setText(message.getInfos_phone()); + viewHolder.infos_batch.setText(message.getInfos_batch()); + viewHolder.infos_addrs.setText(message.getInfos_addrs()); + viewHolder.infos_time.setText(message.getInfos_time()); + viewHolder.infos_number.setText(message.getInfos_number()); + viewHolder.infos_immune.setText(message.getInfos_immune()); + viewHolder.infos_uniformity.setText(message.getInfos_uniformity()); + viewHolder.infos_startime.setText(message.getInfos_startime()); + viewHolder.infos_endtime.setText(message.getInfos_endtime()); + + return view; + } + + private class ViewHolder{ + private TextView infos_carname; + private TextView infos_driver; + private TextView infos_phone; + private TextView infos_batch; + private TextView infos_addrs; + private TextView infos_time; + private TextView infos_number; + private TextView infos_immune; + private TextView infos_uniformity; + private TextView infos_startime; + private TextView infos_endtime; + } +} diff --git a/app/src/main/res/layout/fragment_me.xml b/app/src/main/res/layout/fragment_me.xml index 3822615..77df58a 100644 --- a/app/src/main/res/layout/fragment_me.xml +++ b/app/src/main/res/layout/fragment_me.xml @@ -72,6 +72,7 @@ android:paddingRight="12dp" android:text="设置" android:textSize="@dimen/text_size_18" /> +