Преглед изворни кода

Merge branch 'developer' of https://gitlab.com/Arisono/SkWeiChat-Baidu into fix_bug

Arison пре 9 година
родитељ
комит
5780e790a0

+ 1 - 1
WeiChat/build.gradle

@@ -13,7 +13,7 @@ android {
     }
     signingConfigs {
         config {
-            storeFile file('C:/Users/Arison/Desktop/applicationsignname[20150409]')
+            storeFile file('D:/config/applicationsignname[20150409]')
             storePassword '13237658359'
             keyAlias 'jie-20150409'
             keyPassword '13237658359'

+ 3 - 1
WeiChat/src/main/AndroidManifest.xml

@@ -832,7 +832,8 @@
             >
         </activity>
         <activity android:name=".ui.erp.activity.oa.AddFlihtsActivity" />
-        <activity android:name=".ui.erp.activity.oa.FlihtsTimeActivity" />
+        <activity android:name=".ui.erp.activity.oa.FlihtsTimeActivity"
+            android:label="时间设置"/>
         <activity
             android:name=".ui.erp.activity.oa.FlightsDateActivity"
             android:label="日期设置" />
@@ -849,6 +850,7 @@
             android:name=".ui.erp.activity.oa.StatisticsActivity"
             android:label="考勤统计" />
         <activity android:name=".ui.erp.activity.oa.DepartmentActivity"
+            android:label="选择部门"
             />
         <activity android:name=".ui.erp.activity.oa.SignStatisticalActivity"
             android:label="考勤统计"/>

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/db/dao/MissionDao.java

@@ -233,7 +233,7 @@ public class MissionDao {
                 show("i====" + i);
             }
             db.setTransactionSuccessful();
-        } catch (android.database.SQLException e) {
+        } catch (SQLException e) {
             show("SQLException=" + e.getMessage());
         } catch (Exception e) {
             show("Exception=" + e.getMessage());

+ 28 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/AddFlihtsActivity.java

@@ -2,6 +2,7 @@ package com.xzjmyk.pm.activity.ui.erp.activity.oa;
 
 import android.content.Intent;
 import android.os.Bundle;
+import android.util.Log;
 import android.view.View;
 import android.widget.EditText;
 import android.widget.TextView;
@@ -11,10 +12,14 @@ import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.sortlist.BaseSortModel;
 import com.xzjmyk.pm.activity.ui.erp.entity.EmployeesEntity;
+import com.xzjmyk.pm.activity.ui.erp.entity.HrorgsEntity;
 import com.xzjmyk.pm.activity.ui.erp.model.oa.FlightsModel;
 import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
+import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 
 public class AddFlihtsActivity extends OABaseActivity implements View.OnClickListener {
     private final int TIME_TV = 0x11,
@@ -78,22 +83,40 @@ public class AddFlihtsActivity extends OABaseActivity implements View.OnClickLis
                 startActivityForResult(intent, DATE_TV);
                 break;
             case R.id.department_tv:
+                intent = new Intent(ct, DepartmentActivity.class);
+                startActivityForResult(intent, DEPARTMENT_TV);
                 break;
             case R.id.munber_tv:
                 intent = new Intent(ct, SelectActiveActivity.class);
                 startActivityForResult(intent, MUNBER_TV);
                 break;
             case R.id.click_btn:
+                //TODO 提交保存 并返回页面
+                model = new FlightsModel();
+                model.setWorkName(rule_name_et.getText().toString());
+                model.setType(1);
+                model.setWeek(date_tv.getText().toString() + " " + time_tv.getText().toString());
+                model.setWorkpcount(100);
+                intent = new Intent();
+                intent.putExtra("data", model);
+                setResult(0x20, intent);
+                finish();
                 break;
         }
     }
 
+
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
         if (resultCode != 0x20 || data == null) return;
         switch (requestCode) {
             case TIME_TV:
+                ArrayList<Map<String, String>> mapList = (ArrayList<Map<String, String>>) data.getSerializableExtra("data");
+                String time = data.getStringExtra("time");
+                time_tv.setText(StringUtils.isEmpty(time) ? "" : time);
+                if (ListUtils.isEmpty(mapList)) return;
+                Log.i("gongpengming", "不为空");
                 break;
             case DATE_TV:
                 List<Integer> inst = data.getIntegerArrayListExtra("data");
@@ -105,6 +128,11 @@ public class AddFlihtsActivity extends OABaseActivity implements View.OnClickLis
                 date_tv.setText(builder.toString());
                 break;
             case DEPARTMENT_TV:
+                List<HrorgsEntity> listSelect = data.getParcelableArrayListExtra("data");
+                int num = ListUtils.isEmpty(listSelect) ? 0 : listSelect.size();
+                if (num > 0)
+                    department_tv.setText("共选择" + num + "个部门");
+                else department_tv.setText("");
                 break;
             case MUNBER_TV:
                 List<BaseSortModel<EmployeesEntity>> baseSortModels = data.getParcelableArrayListExtra("data");

+ 30 - 12
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/DepartmentActivity.java

@@ -1,7 +1,9 @@
 package com.xzjmyk.pm.activity.ui.erp.activity.oa;
 
+import android.content.Intent;
 import android.os.Bundle;
 import android.util.Log;
+import android.view.View;
 import android.widget.CheckBox;
 import android.widget.CompoundButton;
 import android.widget.FrameLayout;
@@ -80,7 +82,15 @@ public class DepartmentActivity extends BaseActivity {
                 if (b) {
                     tView.selectAll(true);
                 } else tView.deselectAll();
-
+            }
+        });
+        findViewById(R.id.sure_tv).setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                Intent intent = new Intent();
+                intent.putParcelableArrayListExtra("data", listSelect);
+                setResult(0x20, intent);
+                finish();
             }
         });
     }
@@ -131,19 +141,27 @@ public class DepartmentActivity extends BaseActivity {
         return treeNode;
     }
 
+    ArrayList<HrorgsEntity> listSelect;
+
     public void onCheckedChanged(boolean isClicked) {
-        int selectNum = 0;
-        Log.i("gongpengming", "hrorgsEntities=" + tView.getSelected());
-        selectNum = tView.getSelected().size();
-        mumber_tv.setText("选择 " + selectNum + " 个人员");
+        if (listSelect == null)
+            listSelect = new ArrayList<>();
+        else listSelect.clear();
+        List<TreeNode> list = tView.getSelected();
+        if (ListUtils.isEmpty(list)) {
+            return;
+        }
+        for (TreeNode e : list) {
+            if (e.isLeaf() && e.getValue() instanceof HrorgsEntity) {//在最底层
+                listSelect.add((HrorgsEntity) e.getValue());
+            }
+        }
+        setMumberSelect();
     }
 
-
-    private void recursiveNum(int i, List<TreeNode> parent) {
-        if (ListUtils.isEmpty(parent)) return;
-        for (TreeNode n : parent) {
-            if (n.isSelected()) i++;
-        }
-        recursiveNum(i, getAllChild(parent));
+    private void setMumberSelect() {
+        int selectNum = ListUtils.isEmpty(listSelect) ? 0 : listSelect.size();
+        mumber_tv.setText("已选择 " + selectNum + " 个部门");
     }
+
 }

+ 12 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/FlightsActivity.java

@@ -14,6 +14,7 @@ import com.xzjmyk.pm.activity.ui.erp.presenter.FlightsPresernter;
 import com.xzjmyk.pm.activity.ui.erp.presenter.imp.IFlightsView;
 import com.xzjmyk.pm.activity.view.MostLinearLayoutManager;
 
+import java.util.ArrayList;
 import java.util.List;
 
 public class FlightsActivity extends OABaseActivity implements IFlightsView {
@@ -69,7 +70,7 @@ public class FlightsActivity extends OABaseActivity implements IFlightsView {
     private void addMenuClicking(FlightsModel model) {
         Intent intent = new Intent(ct, AddFlihtsActivity.class);
         intent.putExtra("data", model);
-        startActivity(intent);
+        startActivityForResult(intent, 0x21);
     }
 
     private void initView() {
@@ -79,4 +80,14 @@ public class FlightsActivity extends OABaseActivity implements IFlightsView {
     }
 
 
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        if (data != null && 0x21 == requestCode && 0x20 == resultCode) {
+            List<FlightsModel> models = new ArrayList<>();
+            FlightsModel model = data.getParcelableExtra("data");
+            models.add(model);
+            showModel(models);
+        }
+    }
 }

+ 79 - 9
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/FlihtsTimeActivity.java

@@ -1,5 +1,6 @@
 package com.xzjmyk.pm.activity.ui.erp.activity.oa;
 
+import android.content.Intent;
 import android.os.Bundle;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
@@ -12,16 +13,17 @@ import android.widget.TextView;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.bean.oa.SelectBean;
 import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.view.MostLinearLayoutManager;
 import com.xzjmyk.pm.activity.view.RecycleViewDivider;
+import com.xzjmyk.pm.activity.view.crouton.Crouton;
 import com.xzjmyk.pm.activity.view.wheel.TimePicker;
 
 import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 
 public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickListener {
@@ -34,10 +36,8 @@ public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickLi
     private TextView time_tv;
     @ViewInject(R.id.munber_tv)
     private TextView munber_tv;
-    @ViewInject(R.id.add_tv)
-    private TextView add_tv;
 
-    private List<Map<String, String>> mapList;
+    private ArrayList<Map<String, String>> mapList;
     private MyAdapter adapter;
 
     @Override
@@ -67,8 +67,28 @@ public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickLi
     public void onClick(View view) {
         switch (view.getId()) {
             case R.id.munber_tv:
+                String[] str = new String[]{"上班前1个小时", "上班前2个小时",
+                        "上班前3个小时", "上班前4个小时", "上班前5个小时"};
+                ArrayList<SelectBean> beans = new ArrayList<>();
+                SelectBean bean = null;
+                for (String e : str) {
+                    bean = new SelectBean();
+                    bean.setName(e);
+                    bean.setClick(false);
+                    beans.add(bean);
+                }
+                Intent intent = new Intent(ct, SelectActivity.class);
+                intent.putExtra("type", 2);
+                intent.putParcelableArrayListExtra("data", beans);
+                intent.putExtra("title", "最早上班时间");
+                startActivityForResult(intent, 0x21);
                 break;
             case R.id.click_btn:
+                intent = new Intent();
+                intent.putExtra("data", mapList);
+                intent.putExtra("time", setTime(mapList));
+                setResult(0x20, intent);
+                finish();
                 break;
             case R.id.add_tv:
                 addEmpty();
@@ -76,6 +96,15 @@ public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickLi
         }
     }
 
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        if (data == null) return;
+        if (0x21 == requestCode) {
+            SelectBean bean = data.getParcelableExtra("data");
+            munber_tv.setText(bean.getName());
+        }
+    }
 
     class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
 
@@ -98,13 +127,25 @@ public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickLi
             holder.start_tv.setOnClickListener(new View.OnClickListener() {
                 @Override
                 public void onClick(View view) {
-                    showDateDialog(position, true);
+                    try {
+                        showDateDialog(position, true);
+                    } catch (Exception e) {
+
+                    }
                 }
             });
             holder.end_tv.setOnClickListener(new View.OnClickListener() {
                 @Override
                 public void onClick(View view) {
-                    showDateDialog(position, false);
+                    try {
+                        if (StringUtils.isEmpty(mapList.get(position).get(KEY))) {
+                            Crouton.showToast(ct, "请先填写开始时间", R.color.load_warning);
+                            return;
+                        }
+                        showDateDialog(position, false);
+                    } catch (Exception e) {
+
+                    }
                 }
             });
             holder.img.setOnClickListener(new View.OnClickListener() {
@@ -158,6 +199,25 @@ public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickLi
 
     }
 
+    //计算合计工时
+    private String setTime(ArrayList<Map<String, String>> mapList) {
+        long time = 0;
+        StringBuilder builder = new StringBuilder();
+        for (Map<String, String> m : mapList) {
+            String start = m.get(KEY);
+            String end = m.get(VALUES);
+            builder.append(start + "-" + end + " ");
+            if (StringUtils.isEmpty(start) || StringUtils.isEmpty(end)) continue;
+            time += setTime(start, end);
+        }
+
+        int min = (int) (time / (1000 * 60));//获取分钟
+
+        int h = min / 60;//获取小时
+        int m = min % 60;//获取分钟
+        return builder.toString() + "" + h + "小时";
+    }
+
     //计算合计工时
     private void setTime() {
         long time = 0;
@@ -179,6 +239,7 @@ public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickLi
         time_tv.setText(finalTime);
     }
 
+
     private long setTime(String start, String end) {
         long startMin = TimeUtils.f_str_2_long(TimeUtils.s_long_2_str(System.currentTimeMillis()) + " " + start + ":00");
         long endMin = TimeUtils.f_str_2_long(TimeUtils.s_long_2_str(System.currentTimeMillis()) + " " + end + ":00");
@@ -193,14 +254,23 @@ public class FlihtsTimeActivity extends OABaseActivity implements View.OnClickLi
 
     private void showDateDialog(final int position, final boolean isStart) {
         TimePicker picker = new TimePicker(this, TimePicker.HOUR_OF_DAY);
-        picker.setSelectedItem(8, 12);
+        picker.setSelectedItem(12, 12);
         picker.setOnTimePickListener(new TimePicker.OnTimePickListener() {
             @Override
             public void onTimePicked(String hour, String minute) {
                 String string = hour + ":" + minute;
-                if (isStart)
+                if (isStart) {
                     mapList.get(position).put(KEY, string);
-                else mapList.get(position).put(VALUES, string);
+
+                } else {
+                    if (StringUtils.isEmpty(mapList.get(position).get(KEY)) ||
+                            mapList.get(position).get(KEY).compareTo(string) > 0) {
+                        Crouton.showToast(ct, "下班时间不能小于上班时间", R.color.load_warning);
+                        return;
+                    }
+                    mapList.get(position).put(VALUES, string);
+                    setTime();
+                }
                 adapter.notifyItemChanged(position);
             }
         });

+ 2 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/oa/FlightsAdapter.java

@@ -46,8 +46,8 @@ public class FlightsAdapter extends RecyclerView.Adapter<FlightsAdapter.FlightVi
         try {
             final FlightsModel model = models.get(position);
             setType(holder, model.getType());//设置隐藏和显示
-            holder.rule_name_tv.setText(StringUtils.getNull(model.getRuleName()));
-            holder.mumber_tv.setText(getNumber(model.getMember()));
+            holder.rule_name_tv.setText(StringUtils.getNull(model.getWorkName()));
+            holder.mumber_tv.setText(getNumber(model.getWorkpcount()));
             holder.week_tv.setText(StringUtils.getNull(model.getWeek()));
             holder.itemView.setOnClickListener(new View.OnClickListener() {
                 @Override

+ 4 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/oa/SelectableHeaderHolder.java

@@ -31,7 +31,8 @@ public class SelectableHeaderHolder extends TreeNode.BaseNodeViewHolder<HrorgsEn
 
     @Override
     public View createNodeView(final TreeNode node, HrorgsEntity value) {
-        View view = LayoutInflater.from(MyApplication.getInstance()).inflate(R.layout.item_department, null, false);
+        View view = LayoutInflater.from(MyApplication.getInstance()).inflate(R.layout.item_department,
+                null, false);
         CheckBox node_cb = (CheckBox) view.findViewById(R.id.node_cb);
         ImageView image = (ImageView) view.findViewById(R.id.image);
         TextView node_value = (TextView) view.findViewById(R.id.node_value);
@@ -40,11 +41,11 @@ public class SelectableHeaderHolder extends TreeNode.BaseNodeViewHolder<HrorgsEn
             @Override
             public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) {
                 node.setSelected(isChecked);
-                if (context != null)
-                    context.onCheckedChanged(isChecked);
                 for (TreeNode n : node.getChildren()) {
                     getTreeView().selectNode(n, isChecked);
                 }
+                if (context != null)
+                    context.onCheckedChanged(isChecked);
             }
         });
         node_cb.setChecked(node.isSelected());

+ 51 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/entity/HrorgsEntity.java

@@ -1,6 +1,9 @@
 package com.xzjmyk.pm.activity.ui.erp.entity;
 
-public class HrorgsEntity {
+import android.os.Parcel;
+import android.os.Parcelable;
+
+public class HrorgsEntity implements Parcelable {
 
     private String or_code;
 
@@ -25,6 +28,33 @@ public class HrorgsEntity {
     //1代表是创建管理群 ,null代表没有
     private int or_remark;
 
+public HrorgsEntity(){}
+
+    protected HrorgsEntity(Parcel in) {
+        or_code = in.readString();
+        whichsys = in.readString();
+        or_subof = in.readInt();
+        company = in.readString();
+        or_isleaf = in.readInt();
+        or_name = in.readString();
+        or_id = in.readInt();
+        flag = in.readString();
+        or_headmancode = in.readString();
+        or_headmanname = in.readString();
+        or_remark = in.readInt();
+    }
+
+    public static final Creator<HrorgsEntity> CREATOR = new Creator<HrorgsEntity>() {
+        @Override
+        public HrorgsEntity createFromParcel(Parcel in) {
+            return new HrorgsEntity(in);
+        }
+
+        @Override
+        public HrorgsEntity[] newArray(int size) {
+            return new HrorgsEntity[size];
+        }
+    };
 
     public String getOr_code() {
         return this.or_code;
@@ -114,4 +144,24 @@ public class HrorgsEntity {
     public void setOr_remark(int or_remark) {
         this.or_remark = or_remark;
     }
+
+    @Override
+    public int describeContents() {
+        return 0;
+    }
+
+    @Override
+    public void writeToParcel(Parcel parcel, int i) {
+        parcel.writeString(or_code);
+        parcel.writeString(whichsys);
+        parcel.writeInt(or_subof);
+        parcel.writeString(company);
+        parcel.writeInt(or_isleaf);
+        parcel.writeString(or_name);
+        parcel.writeInt(or_id);
+        parcel.writeString(flag);
+        parcel.writeString(or_headmancode);
+        parcel.writeString(or_headmanname);
+        parcel.writeInt(or_remark);
+    }
 }

+ 37 - 35
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/model/oa/FlightsModel.java

@@ -3,7 +3,6 @@ package com.xzjmyk.pm.activity.ui.erp.model.oa;
 import android.os.Parcel;
 import android.os.Parcelable;
 
-import java.util.List;
 import java.util.Map;
 
 /**
@@ -13,10 +12,11 @@ import java.util.Map;
 public class FlightsModel implements Parcelable {
     private int id;              //id
     private int type;           //类型  1、正常班次(可有排版 可删除)  2.默认班次 (有排版  无删除) 3.自由排班
-    private String ruleName;     //规则名称
-    private int member;         //成员
-    private List<Integer> weeks;//班次时间段    周  1、2、3、4、5
-    private Map<String, String> works;//上班时间,key==上班时间   values==下班时间
+    private String workName;     //规则名称
+        private int workpcount;         //成员
+    private String workday;         //工作日期
+    private String earlyTime;         //最早时间
+    private Map<String, String> worktimeon;//上班时间,key==上班时间   values==下班时间
     private String week;//显示出来的week 在适配器中不做运算
 
     public FlightsModel() {
@@ -26,8 +26,10 @@ public class FlightsModel implements Parcelable {
     protected FlightsModel(Parcel in) {
         id = in.readInt();
         type = in.readInt();
-        ruleName = in.readString();
-        member = in.readInt();
+        workName = in.readString();
+        workpcount = in.readInt();
+        workday = in.readString();
+        earlyTime = in.readString();
         week = in.readString();
     }
 
@@ -35,8 +37,10 @@ public class FlightsModel implements Parcelable {
     public void writeToParcel(Parcel dest, int flags) {
         dest.writeInt(id);
         dest.writeInt(type);
-        dest.writeString(ruleName);
-        dest.writeInt(member);
+        dest.writeString(workName);
+        dest.writeInt(workpcount);
+        dest.writeString(workday);
+        dest.writeString(earlyTime);
         dest.writeString(week);
     }
 
@@ -57,16 +61,6 @@ public class FlightsModel implements Parcelable {
         }
     };
 
-    public FlightsModel(int id, int type, String ruleName, int member, List<Integer> weeks, Map<String, String> works, String week) {
-        this.id = id;
-        this.type = type;
-        this.ruleName = ruleName;
-        this.member = member;
-        this.weeks = weeks;
-        this.works = works;
-        this.week = week;
-
-    }
 
     public int getId() {
         return id;
@@ -84,36 +78,44 @@ public class FlightsModel implements Parcelable {
         this.type = type;
     }
 
-    public String getRuleName() {
-        return ruleName;
+    public String getWorkName() {
+        return workName;
+    }
+
+    public void setWorkName(String workName) {
+        this.workName = workName;
+    }
+
+    public int getWorkpcount() {
+        return workpcount;
     }
 
-    public void setRuleName(String ruleName) {
-        this.ruleName = ruleName;
+    public void setWorkpcount(int workpcount) {
+        this.workpcount = workpcount;
     }
 
-    public int getMember() {
-        return member;
+    public String getWorkday() {
+        return workday;
     }
 
-    public void setMember(int member) {
-        this.member = member;
+    public void setWorkday(String workday) {
+        this.workday = workday;
     }
 
-    public List<Integer> getWeeks() {
-        return weeks;
+    public String getEarlyTime() {
+        return earlyTime;
     }
 
-    public void setWeeks(List<Integer> weeks) {
-        this.weeks = weeks;
+    public void setEarlyTime(String earlyTime) {
+        this.earlyTime = earlyTime;
     }
 
-    public Map<String, String> getWorks() {
-        return works;
+    public Map<String, String> getWorktimeon() {
+        return worktimeon;
     }
 
-    public void setWorks(Map<String, String> works) {
-        this.works = works;
+    public void setWorktimeon(Map<String, String> worktimeon) {
+        this.worktimeon = worktimeon;
     }
 
     public String getWeek() {

+ 1 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/presenter/MissionPresenter.java

@@ -122,6 +122,7 @@ public class MissionPresenter implements IMissionPresenter, HttpHandler.OnResult
     private void savePlan2Net(Bundle bundle) {
         if (bundle == null) return;
         int id = bundle.getInt("id");
+        int position = bundle.getInt("position");
         String code = bundle.getString("code");
         MissionModel entity = bundle.getParcelable("data");
         if (id == 0 || StringUtils.isEmpty(code) || entity == null) return;

+ 9 - 9
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/presenter/WorkPresenter.java

@@ -526,15 +526,15 @@ public class WorkPresenter implements HttpHandler.OnResultListener, IWorkPresent
      */
     public void submitWork(final ArrayList<WorkModel> models, String macAddress) {
         subMitTime = System.currentTimeMillis();
-//        validatorMac(models, macAddress);
-        CommonInterface.getInstance().getCodeByNet("CardLog", new CommonInterface.OnResultListener() {
-            @Override
-            public void result(boolean isOk, String result, String message) {
-                Bundle bundle = new Bundle();
-                bundle.putParcelableArrayList("models", models);
-                signinWork(bundle, result);
-            }
-        });
+        validatorMac(models, macAddress);
+//        CommonInterface.getInstance().getCodeByNet("CardLog", new CommonInterface.OnResultListener() {
+//            @Override
+//            public void result(boolean isOk, String result, String message) {
+//                Bundle bundle = new Bundle();
+//                bundle.putParcelableArrayList("models", models);
+//                signinWork(bundle, result);
+//            }
+//        });
     }
 
 

+ 6 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/attendance/AutoErpSigninUitl.java

@@ -768,7 +768,12 @@ public class AutoErpSigninUitl implements HttpHandler.OnResultListener {
                 ThreadUtil.getInstance().addTask(new Runnable() {
                     @Override
                     public void run() {
-                        boolean saveOk = MissionDao.getInstance().updataOrCreate(entities);
+                        boolean saveOk = false;
+                        try {
+                            saveOk = MissionDao.getInstance().updataOrCreate(entities);
+                        } catch (Exception e) {
+
+                        }
                         if (saveOk) {
                             HttpHandler.getInstance().post(new Runnable() {
                                 @Override