Browse Source

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

FANGLH 9 years ago
parent
commit
68df1e8328
18 changed files with 260 additions and 178 deletions
  1. 7 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/db/dao/WorkModelDao.java
  2. 46 11
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/BaseInfoActivity.java
  3. 18 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/VisitReportAddActivity.java
  4. 14 29
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/message/ProcessB2BActivity.java
  5. 43 4
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/ChangeMobileActivity.java
  6. 6 4
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/NavigationActivity.java
  7. 2 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/MessageAdapter.java
  8. 2 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/adapter/oa/WorkAdapter.java
  9. 3 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/db/DBManager.java
  10. 2 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/db/DBOpenHelper.java
  11. 2 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/model/oa/WorkModel.java
  12. 2 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/presenter/MessagePresenter.java
  13. 2 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/Constants.java
  14. 2 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/oa/WorkHandlerUtil.java
  15. 2 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/wxapi/ApiBase.java
  16. 1 0
      WeiChat/src/main/java/com/xzjmyk/pm/activity/wxapi/ApiPlatform.java
  17. 37 36
      WeiChat/src/main/res/layout/process_header.xml
  18. 69 83
      WeiChat/src/main/res/layout/task_header.xml

+ 7 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/db/dao/WorkModelDao.java

@@ -7,6 +7,7 @@ import android.database.sqlite.SQLiteDatabase;
 import com.xzjmyk.pm.activity.db.DatabaseManager;
 import com.xzjmyk.pm.activity.ui.erp.model.oa.WorkModel;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
+import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 
@@ -92,6 +93,7 @@ public class WorkModelDao {
                     models.add(model);
             }
         } catch (Exception e) {
+            if (e!=null) LogUtil.i("query Exception"+e.getMessage());
         } finally {
             if (c != null)
                 c.close();
@@ -195,6 +197,7 @@ public class WorkModelDao {
         values.put("leaveAlarm", e.isLeaveAlarm() ? 1 : 0);
         values.put("workAlarm", e.isWorkAlarm() ? 1 : 0);
         values.put("offAlarm", e.isLeaveAlarm() ? 1 : 0);
+        values.put("isNextDay", e.isNextDay() ? 1 : 0);
 
         if (!StringUtils.isEmpty(e.getWorkSignin())
                 && (e.getWorkSignin().compareTo(e.getWorkStart()) < 0 ||
@@ -223,6 +226,7 @@ public class WorkModelDao {
         String offend = c.getString(c.getColumnIndex("offend"));//下班签到时间
         String offSignin = c.getString(c.getColumnIndex("offSignin"));//下班签到时间
         String offAllegedly = c.getString(c.getColumnIndex("offAllegedly"));//下班签到时间
+        boolean isNextDay = c.getInt(c.getColumnIndex("isNextDay")) > 0;//是否是跨天
         boolean offAlarm = c.getInt(c.getColumnIndex("offAlarm")) > 0;//下班提醒
         boolean leaveAlarm = c.getInt(c.getColumnIndex("leaveAlarm")) > 0;//离开提醒
         if (StringUtils.isEmpty(workStart) || StringUtils.isEmpty(workTime) || StringUtils.isEmpty(workend) ||
@@ -245,13 +249,14 @@ public class WorkModelDao {
                 offSignin,
                 offAllegedly,
                 offAlarm,
-                leaveAlarm
+                leaveAlarm,
+                isNextDay
         );
     }
 
     private String[] getColumns() {
         return new String[]{"id", "workStart", "workTime", "workend", "workSignin", "workAllegedly", "workAlarm", "offStart"
-                , "offTime", "offend", "offSignin", "offAllegedly", "offAlarm", "leaveAlarm"};
+                , "offTime", "offend", "offSignin", "offAllegedly", "offAlarm", "leaveAlarm","isNextDay"};
     }
 
     private boolean isEmptyByOne(String... args) {

+ 46 - 11
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/BaseInfoActivity.java

@@ -67,6 +67,7 @@ import java.util.HashMap;
 import java.util.List;
 
 import static com.xzjmyk.pm.activity.R.id.me_nickname_tv;
+import static com.xzjmyk.pm.activity.R.id.tv_name_value;
 
 /**
  * 个人资料页面
@@ -83,7 +84,7 @@ public class BaseInfoActivity extends BaseActivity implements View.OnClickListen
     private TextView tv_birthday;
     @ViewInject(R.id.me_address_tv)
     private TextView tv_address;
-    @ViewInject(R.id.tv_name_value)
+    @ViewInject(tv_name_value)
     private TextView tv_name;
     @ViewInject(R.id.tv_tel_value)
     private TextView tv_tel;
@@ -171,23 +172,17 @@ public class BaseInfoActivity extends BaseActivity implements View.OnClickListen
         }
         tv_birthday.setText(TimeUtils.sk_time_s_long_2_str(mTempData.getBirthday()));
         //查询数据库
-        DBManager dbManager = new DBManager(this);
+        DBManager dbManager = new DBManager();
         String userId = mUser.getUserId();
-        String whichsys = CommonUtil.getSharedPreferences(this, "erp_master");
+        String whichsys = CommonUtil.getMaster();
         List<EmployeesEntity> entities = dbManager.select_getEmployee(new String[]{userId, whichsys}, "em_imid=? and whichsys=?");
+        dbManager.closeDB();
         if (ListUtils.isEmpty(entities)) {
-//            tv_nickname.setText(mTempData.getNickName());
             mNickname = mTempData.getNickName();
         } else {
-//            tv_nickname.setText(entities.get(0).getEM_NAME());
-            tv_name.setText(entities.get(0).getEM_NAME());
-            tv_tel.setText(mTempData.getTelephone());
-            tv_depart.setText(entities.get(0).getEM_DEFAULTORNAME());
-            tv_position.setText(entities.get(0).getEM_POSITION());
             mNickname = entities.get(0).getEM_NAME();
         }
-        // mNameEdit.setText(mTempData.getNickName());
-
+        initEmployee(entities);
         if (!StringUtils.isEmpty(Area.getCityAreaString(0, mTempData.getAreaId()))) {
             tv_address.setText(Area.getProvinceCityString(mTempData.getProvinceId(), mTempData.getCityId())
                     + "-" + Area.getCityAreaString(0, mTempData.getAreaId()));
@@ -200,6 +195,46 @@ public class BaseInfoActivity extends BaseActivity implements View.OnClickListen
         AvatarHelper.getInstance().displayAvatar(mTempData.getUserId(), iv_headImage, true);
     }
 
+    private void initEmployee(List<EmployeesEntity> entities) {
+        String name = "";
+        String phone = "";
+        String depart = "";
+        String position = "";
+        if (!ListUtils.isEmpty(entities)) {
+            EmployeesEntity employeesEntity = entities.get(0);
+            if (employeesEntity != null) {
+                name = employeesEntity.getEM_NAME();
+                phone = employeesEntity.getEM_MOBILE();
+                depart = employeesEntity.getEM_DEPART();
+                position = employeesEntity.getEM_POSITION();
+            }
+        }
+        if (isNull(name))
+            name = CommonUtil.getName();
+        if (isNull(phone))
+            phone = CommonUtil.getSharedPreferences(ct, "user_phone");
+        tv_name.setText(getNotNull(name));
+        tv_tel.setText(getNotNull(phone));
+        tv_depart.setText(getNotNull(depart));
+        tv_position.setText(getNotNull(position));
+    }
+
+    private boolean isNull(String str) {
+        if (StringUtils.isEmpty(str))
+            return true;
+        if ("未填写".equals(str.trim()))
+            return true;
+        return false;
+    }
+
+    private String getNotNull(String str) {
+        if (StringUtils.isEmpty(str))
+            return "未填写";
+        return str;
+
+
+    }
+
     @Override
     public void onClick(View v) {
         int id = v.getId();

+ 18 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/VisitReportAddActivity.java

@@ -389,10 +389,27 @@ public class VisitReportAddActivity extends BaseActivity implements View.OnClick
             Crouton.makeText(ct, "请输入拜访内容");
             return false;
         }
-        return tv_customer_login.testValidity() && tv_linksman_login.testValidity() && tv_address_login.testValidity()
+        if (!validatorInput()){
+            ToastMessage("不能输入特殊字符");
+        }
+        return  tv_customer_login.testValidity()
+                && tv_linksman_login.testValidity()
+                && tv_address_login.testValidity()
                 && tv_visit_theme.testValidity();
     }
 
+
+    private boolean validatorInput(String... message){
+        if (message==null||message.length<=0)return true;
+        for (String e:message){
+            if (!StringUtils.isEmpty(e)&&!validatorInput(e))return false;
+        }
+        return true;
+    }
+    private boolean validatorInput(String e){
+return true;
+    }
+
     private void sendHttpResquest(int what, String code) {
         String emname = CommonUtil.getSharedPreferences(ct, "erp_emname");
         if (StringUtils.isEmpty(emname)) {

+ 14 - 29
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/message/ProcessB2BActivity.java

@@ -95,40 +95,20 @@ public class ProcessB2BActivity extends BaseActivity implements View.OnClickList
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
-        LogUtil.i("requestCode == " + requestCode);
-        LogUtil.i("resultCode == " + resultCode);
-        if (requestCode == 0x322) {
-            loadProcesstoAlreadyDo(1);
-            return;
-        } else if (requestCode == 0x321) {
-            loadProcessToDo(1);
-        }
         if (data == null) {
-            LogUtil.i("data == null");
+            LogUtil.i("data == null=");
             return;
         }
-        String delete_succeed = data.getStringExtra("delete_succeed");
-        LogUtil.i("delete_succeed == " + delete_succeed);
-        if (!StringUtils.isEmpty(delete_succeed) && delete_succeed.equals("delete_succeed")) {
-            LogUtil.i("requestCode == " + requestCode);
-            LogUtil.i("resultCode == " + resultCode);
-            if (requestCode == 0x322 && resultCode == PlatWDdetailyActivity.DELETE_SUCCEED) {
-                LogUtil.i("进来第一个");
-                try {
+        boolean isRemove = data.getBooleanExtra("isRemove", false);
+        LogUtil.i("isRemove="+isRemove);
+        if (isRemove) {
+            if (requestCode == 0x322 || requestCode == 0x321) {
+                if (!ListUtils.isEmpty(arrayUn)&&arrayUn.size()>mPosition){
+                    LogUtil.i("notifyDataSetChanged");
                     arrayUn.remove(mPosition);
+                    mAdapter.jsonArray=arrayUn;
                     mAdapter.notifyDataSetChanged();
-                } catch (Exception e) {
-                    loadProcessToDo(page);
-                }
-            } else if (requestCode == 0x321 && resultCode == 0x328) {
-                LogUtil.i("进来第二个");
-                try {
-                    arrayRe.remove(mPosition);
-                    mAdapter.notifyDataSetChanged();
-                } catch (Exception e) {
-                    loadProcesstoAlreadyDo(pageDone);
                 }
-
             }
         }
     }
@@ -145,11 +125,11 @@ public class ProcessB2BActivity extends BaseActivity implements View.OnClickList
                     if (page == 1) arrayUn.clear();
                     arrayUn.addAll(itemArray);
 //                    array = CommonUtil.sortJsonArray(array);//排序
-
                     if (mAdapter == null) {
                         mAdapter = new ProcessAdapter(ct, arrayUn);
                         mList.setAdapter(mAdapter);
                     } else {
+                        mAdapter.setJsonArray(arrayUn);
                         mAdapter.notifyDataSetChanged();
                     }
                     if (arrayUn.size() == 0) {
@@ -171,6 +151,7 @@ public class ProcessB2BActivity extends BaseActivity implements View.OnClickList
                         mAdapter = new ProcessAdapter(ct, arrayRe);
                         mList.setAdapter(mAdapter);
                     } else {
+                        mAdapter.setJsonArray(arrayRe);
                         mAdapter.notifyDataSetChanged();
                     }
                     if (arrayRe.size() == 0) {
@@ -573,6 +554,10 @@ public class ProcessB2BActivity extends BaseActivity implements View.OnClickList
             this.inflater = LayoutInflater.from(ct);
         }
 
+        public void setJsonArray(JSONArray jsonArray) {
+            this.jsonArray = jsonArray;
+        }
+
         @Override
         public int getCount() {
             return jsonArray == null ? 0 : jsonArray.size();

+ 43 - 4
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/ChangeMobileActivity.java

@@ -31,6 +31,9 @@ import com.xzjmyk.pm.activity.ui.erp.util.Constants;
 import com.xzjmyk.pm.activity.ui.erp.util.JsonValidator;
 import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
 import com.xzjmyk.pm.activity.ui.erp.util.oa.HttpHandler;
+import com.xzjmyk.pm.activity.ui.erp.util.oa.http.OAHttpHelper;
+import com.xzjmyk.pm.activity.ui.erp.util.oa.http.OnHttpResultListener;
+import com.xzjmyk.pm.activity.ui.erp.util.oa.http.Request;
 import com.xzjmyk.pm.activity.util.PreferenceUtils;
 import com.xzjmyk.pm.activity.util.TimeUtils;
 import com.xzjmyk.pm.activity.view.crouton.Crouton;
@@ -224,7 +227,7 @@ public class ChangeMobileActivity extends BaseActivity {
                     isB2b = ApiUtils.getApiModel() instanceof ApiPlatform;
                     if (type == 2) {
                         if (isB2b)
-                            suppleSigninByB2b(message);
+                            suppleB2bSignin(message);
                         else
                             suppleSignin(message);
                     } else
@@ -269,6 +272,24 @@ public class ChangeMobileActivity extends BaseActivity {
         startActivityForResult(intent, 0x22);
     }
 
+
+    private void suppleB2bSignin(String message) {
+        progressDialog.show();
+        String url = ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().saveSignApp;
+        Map<String, Object> formStore = new HashMap<>();
+        formStore.put("emuu", CommonUtil.getEmcode());
+        formStore.put("remark", message);
+        formStore.put("mobile", MyApplication.getInstance().mLoginUser.getTelephone());
+        formStore.put("signtime", getTime(tag));
+        formStore.put("address", MyApplication.getInstance().getBdLocationHelper().getAddress());
+        formStore.put("uu", CommonUtil.getSharedPreferences(MyApplication.getInstance().getApplicationContext(), "companyEnUu"));
+        Map<String, Object> param = new HashMap<>();
+        param.put("formStore", StringUtils.mapToJson(formStore));
+        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
+        headers.put("Cookie", "JSESSIONID=" + ApiConfig.getInstance(ApiUtils.getApiModel()).getmApiBase().getCookie());
+        ViewUtil.httpSendRequest(ct, url, param, handler, headers, 0x13, null, null, "post");
+    }
+
     /*申请申诉*/
     private void suppleSignin(String message) {
         progressDialog.show();
@@ -291,9 +312,27 @@ public class ChangeMobileActivity extends BaseActivity {
         params.put("ms_signtime", getTime(tag));//申诉时间
         String formStore = StringUtils.mapToJson(params);
         param.put("formStore", formStore);
-        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
-        headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
-        ViewUtil.httpSendRequest(ct, url, param, handler, headers, 0x13, null, null, "post");
+        Request request = new Request.Bulider()
+                .setWhat(0x13)
+                .setMode(Request.Mode.POST)
+                .setParam(param)
+                .setUrl(url)
+                .bulid();
+
+        OAHttpHelper.getInstance().requestHttp(request, new OnHttpResultListener() {
+            @Override
+            public void result(int what, boolean isJSON, String message, Bundle bundle) {
+                endActivity();
+            }
+
+            @Override
+            public void error(int what, String message, Bundle bundle) {
+                if (!StringUtils.isEmpty(message))
+                    Crouton.showToast(ct, message, R.color.load_error);
+            }
+        });
+
+
     }
 
     private void suppleSigninByB2b(String message) {

+ 6 - 4
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/oa/NavigationActivity.java

@@ -26,6 +26,7 @@ import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.ui.erp.activity.WebViewCommActivity;
+import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.oa.baidu.BaiduMapUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.oa.baidu.OnGetRoutePlanResult;
@@ -169,10 +170,11 @@ public class NavigationActivity extends BaseActivity {
         String title = "导航";
         url = "www.baidu.com";
         LogUtil.i(url);
-        Intent intent = new Intent(ct, NavigationWebActivity.class);
-        intent.putExtra("title", title)
-                .putExtra("url", url);
-        startActivity(intent);
+        ViewUtil.webLinks(ct, url, title);
+//        Intent intent = new Intent(ct, NavigationWebActivity.class);
+//        intent.putExtra("title", title)
+//                .putExtra("url", url);
+//        startActivity(intent);
     }
 
     private void toBaiduWebMap() {

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

@@ -109,6 +109,8 @@ public class MessageAdapter extends BaseAdapter {
         }
         if (!TextUtils.isEmpty(content)) {
             holder.content_tv.setText(Html.fromHtml(content.toString()));
+        }else{
+            holder.content_tv.setText("");
         }
         //设置红点显示数量
         if (friend.getUnReadNum() > 0) {

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

@@ -205,7 +205,7 @@ public class WorkAdapter extends RecyclerView.Adapter<WorkAdapter.ViewHoler> {
         if (StringUtils.isEmpty(model.getWorkTime())) return "";
         if (isToday) {//是今天
             if (StringUtils.isEmpty(model.getWorkSignin())) {
-                if (getWorkEndOrOffStart(model.getWorkTime(), true).compareTo(newTime) < 0) {
+                if (!model.isNextDay() && getWorkEndOrOffStart(model.getWorkTime(), true).compareTo(newTime) < 0) {
                     //矿工 当前时间在上班结束时间或是下班打卡存在
                     return NONCLASS;
                 } else return "";
@@ -258,7 +258,7 @@ public class WorkAdapter extends RecyclerView.Adapter<WorkAdapter.ViewHoler> {
             return "";
         } else if (!isToday) {
             return NONCLASS;
-        } else if (!isFinal && !StringUtils.isEmpty(model.getOffend()) && model.getOffend().compareTo(newTime) < 0) {
+        } else if (!model.isNextDay() && !isFinal && !StringUtils.isEmpty(model.getOffend()) && model.getOffend().compareTo(newTime) < 0) {
             return NONCLASS;
         } else return "";
     }

+ 3 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/db/DBManager.java

@@ -190,6 +190,8 @@ public class DBManager {
         if (!db.isOpen()) return;
         SQLiteStatement sta = db.compileStatement(sql);
         db.beginTransaction();
+        String whichsys=CommonUtil.getMaster();
+        if (StringUtils.isEmpty(whichsys))whichsys="未填写";
         for (int i = 0; i < employeesEntities.size(); i++) {
             EmployeesEntity entity = employeesEntities.get(i);
             sta.bindString(1, String.valueOf(entity.getEM_ID()));
@@ -201,7 +203,7 @@ public class DBManager {
             sta.bindString(7, entity.getEM_MOBILE() == null ? "未填写" : entity.getEM_MOBILE());
             sta.bindString(8, String.valueOf(entity.getEM_UU()));
             sta.bindString(9, entity.getCOMPANY());
-            sta.bindString(10, entity.getWHICHSYS() == null ? "" : entity.getWHICHSYS());
+            sta.bindString(10, StringUtils.isEmpty(entity.getWHICHSYS())?whichsys:entity.getWHICHSYS());
             sta.bindLong(11, entity.getEm_defaultorid());
             sta.bindString(12, entity.getFLAG());
             sta.bindString(13, String.valueOf(entity.getEm_IMID()));

+ 2 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/db/DBOpenHelper.java

@@ -14,8 +14,8 @@ import com.xzjmyk.pm.activity.ui.erp.util.LogUtil;
  * @注释:建立数据库
  */
 public class DBOpenHelper extends SQLiteOpenHelper {
-    //TODO  上一个发布版本是71
-    private static final int DATABASE_VERSION = 74;//数据库版本号(每添加一个表要增加版本号)
+    //TODO  上一个发布版本是74
+    private static final int DATABASE_VERSION = 75;//数据库版本号(每添加一个表要增加版本号)
     public static String dataBaseName = "erp.db";//数据库名称
     public Context context;
 

+ 2 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/model/oa/WorkModel.java

@@ -42,7 +42,7 @@ public class WorkModel implements Parcelable {
                      String offSignin,
                      String offAllegedly,
                      boolean offAlarm,
-                     boolean leaveAlarm
+                     boolean leaveAlarm,boolean isNextDay
     ) {
         this.id = id;
         this.workStart = workStart;
@@ -58,6 +58,7 @@ public class WorkModel implements Parcelable {
         this.offAllegedly = offAllegedly;
         this.offAlarm = offAlarm;
         this.leaveAlarm = leaveAlarm;
+        this.isNextDay = isNextDay;
     }
 
     protected WorkModel(Parcel in) {

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

@@ -276,10 +276,11 @@ public class MessagePresenter implements OnHttpResultListener {
         switch (what) {
             case LOAD_EMNEWS:
                 if (!object.containsKey("listdata")) {
+                    handlerNewsFormErp(new JSONArray());
                     return;
                 }
                 String ids = object.getString("ids");
-                if (!com.xzjmyk.pm.activity.ui.erp.util.StringUtils.isEmpty(ids))
+                if (StringUtils.isEmpty(ids))
                     postReadNews(ids);
                 JSONArray array = object.getJSONArray("listdata");
                 handlerNewsFormErp(array);

+ 2 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/Constants.java

@@ -86,6 +86,8 @@ public class Constants {
             + "offAllegedly  varchar(6),"//下班申诉时间  hh:mm
             + "offAlarm INTEGER,"//下班提醒 0|1
 
+            + "isNextDay INTEGER,"//是否是跨天 0|1
+
             + "leaveAlarm INTEGER"//离开提示次数  0|1
 
             + ")";

+ 2 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/util/oa/WorkHandlerUtil.java

@@ -356,7 +356,6 @@ public class WorkHandlerUtil {
             }
             //如果没有下一个班次,就设置结束时间为
             models.get(i).setOffend(getOffEnd(models.get(i).getOffTime(), nextWorkStartTime));
-
             if (StringUtils.isEmpty(models.get(i).getOffend()))
                 models.get(i).setOffend(isNextDay ? models.get(0).getWorkStart() : "24:00");
             models.get(i).setNextDay(isNextDay);
@@ -390,6 +389,8 @@ public class WorkHandlerUtil {
     private static String getOffEnd(String offTime, String nextWorkStartTime) {
         if (StringUtils.isEmpty(nextWorkStartTime)) {//没有下一个班次
             return nextWorkStartTime;
+        } else if (nextWorkStartTime.compareTo(offTime) < 0) {
+            return "24:00";
         } else {
             String time = TimeUtils.s_long_2_str(System.currentTimeMillis()) + " " + offTime + ":00";
             long currentTime = TimeUtils.f_str_2_long(time);

+ 2 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/wxapi/ApiBase.java

@@ -98,6 +98,8 @@ public abstract class ApiBase {
     public String second_msg_detaily; // 消息第二层红点
     public String back_ids;
     public String add_people;
+    public String saveSignApp;//提交申述
+
     public String getCommon_delete_approval_flow_url() {
         return common_delete_approval_flow_url;
     }

+ 1 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/wxapi/ApiPlatform.java

@@ -97,6 +97,7 @@ public class ApiPlatform extends ApiBase implements ApiModel {
         super.releaseCount = mBaseUrl + "mobile/release/count";
         super.countBack = mBaseUrl + "mobile/release/count/back";
         super.add_people = mBaseUrl + "mobile/adduser/user";
+        super.saveSignApp = mBaseUrl + "mobile/signapp/saveSignApp";
 
 
         /*strat by Bitliker*/ //外勤

+ 37 - 36
WeiChat/src/main/res/layout/process_header.xml

@@ -2,81 +2,82 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/top"
     android:layout_width="match_parent"
-    android:background="@color/antionbarcolor"
-    android:layout_height="?attr/actionBarSize">
+    android:layout_height="?attr/actionBarSize"
+    android:background="@color/antionbarcolor">
+
     <ImageView
         android:id="@+id/back"
         android:layout_width="wrap_content"
         android:layout_height="match_parent"
         android:padding="10dp"
         android:src="@drawable/back" />
+
     <LinearLayout
         android:id="@+id/ll_top_state"
         android:layout_width="match_parent"
-        android:layout_centerInParent="true"
-        android:layout_marginLeft="60dp"
-        android:layout_marginRight="60dp"
+        android:layout_height="40dp"
+        android:layout_centerVertical="true"
         android:layout_marginBottom="13dp"
+        android:layout_marginLeft="50dp"
+        android:layout_marginRight="50dp"
         android:layout_marginTop="13dp"
-        android:layout_height="40dp"
-        android:padding="1dp"
         android:background="@drawable/shape_process_linear"
         android:orientation="horizontal"
+        android:padding="1dp"
         android:weightSum="3">
 
         <TextView
-            android:layout_width="match_parent"
+            android:id="@+id/tv_process_un"
+            android:layout_width="0dp"
             android:layout_height="match_parent"
             android:layout_gravity="center_vertical"
-            android:gravity="center"
-            android:background="@drawable/shape_process_item"
             android:layout_weight="1"
+            android:background="@drawable/shape_process_item"
+            android:gravity="center"
             android:text="待审批"
-            android:textColor="@color/selector_schedule_text"
-            android:id="@+id/tv_process_un" />
+            android:textColor="@color/selector_schedule_text" />
 
         <TextView
-            android:layout_width="match_parent"
+            android:id="@+id/tv_process_already"
+            android:layout_width="0dp"
             android:layout_height="match_parent"
             android:layout_gravity="center_vertical"
+            android:layout_marginRight="5dp"
             android:layout_weight="1"
             android:background="@drawable/shape_process_item"
-
-            android:textColor="@color/selector_schedule_text"
             android:gravity="center"
+            android:paddingLeft="10dp"
             android:text="已审批"
-            android:id="@+id/tv_process_already" />
+            android:textColor="@color/selector_schedule_text" />
 
         <TextView
-            android:layout_width="match_parent"
+            android:id="@+id/tv_process_me"
+            android:layout_width="0dp"
             android:layout_height="match_parent"
             android:layout_gravity="center_vertical"
             android:layout_weight="1"
             android:background="@drawable/shape_process_item"
-            android:textColor="@color/selector_schedule_text"
-
             android:gravity="center"
             android:text="我发起的"
-            android:id="@+id/tv_process_me"
-             />
+            android:textColor="@color/selector_schedule_text" />
 
     </LinearLayout>
-    
+
 
     <!--<TextView-->
-        <!--android:id="@+id/title"-->
-        <!--android:layout_width="wrap_content"-->
-        <!--android:layout_height="wrap_content"-->
-        <!--android:layout_centerInParent="true"-->
-        <!--android:drawableRight="@drawable/down"-->
-        <!--android:textColor="@color/white"-->
-        <!--android:textSize="@dimen/text_main" />-->
+    <!--android:id="@+id/title"-->
+    <!--android:layout_width="wrap_content"-->
+    <!--android:layout_height="wrap_content"-->
+    <!--android:layout_centerInParent="true"-->
+    <!--android:drawableRight="@drawable/down"-->
+    <!--android:textColor="@color/white"-->
+    <!--android:textSize="@dimen/text_main" />-->
 
-  <!--  <ImageView
-        android:id="@+id/seting"
-        android:layout_width="40dp"
-        android:layout_height="match_parent"
-        android:layout_alignParentRight="true"
-        android:padding="8dp"
-        android:src="@drawable/setting" />-->
+    <!--  <ImageView
+          android:id="@+id/seting"
+          android:layout_width="40dp"
+          android:layout_height="match_parent"
+          android:layout_alignParentRight="true"
+          android:padding="8dp"
+          android:src="@drawable/setting" />-->
 </RelativeLayout>

+ 69 - 83
WeiChat/src/main/res/layout/task_header.xml

@@ -1,95 +1,81 @@
 <?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/top"
     android:layout_width="match_parent"
-    android:background="@color/antionbarcolor"
     android:layout_height="?attr/actionBarSize"
-    android:orientation="horizontal"
-    android:gravity="center"
-    >
-    <RelativeLayout
-        android:id="@+id/top"
+    android:background="@color/antionbarcolor">
+
+    <ImageView
+        android:id="@+id/back"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:src="@drawable/back" />
+
+    <LinearLayout
+        android:id="@+id/ll_top_state"
         android:layout_width="match_parent"
-        android:background="@color/antionbarcolor"
-        android:layout_height="?attr/actionBarSize"
+        android:layout_height="40dp"
+        android:layout_centerVertical="true"
+        android:layout_marginBottom="13dp"
+        android:layout_marginLeft="50dp"
+        android:layout_marginRight="40dp"
+        android:layout_marginTop="13dp"
+        android:background="@drawable/shape_process_linear"
         android:orientation="horizontal"
-        android:gravity="center"
-        >
-        <ImageView
-            android:id="@+id/back"
-            android:layout_width="wrap_content"
-            android:layout_height="match_parent"
-            android:src="@drawable/back"
-            />
-        <LinearLayout
-
-            android:gravity="center_vertical"
-            android:id="@+id/ll_top_state"
-            android:layout_width="match_parent"
-            android:layout_centerInParent="true"
-            android:layout_marginLeft="60dp"
-            android:layout_marginRight="60dp"
-            android:layout_marginBottom="13dp"
-            android:layout_marginTop="13dp"
-            android:layout_height="40dp"
-            android:padding="1dp"
-            android:background="@drawable/shape_process_linear"
-            android:orientation="horizontal"
-            android:weightSum="3">
+        android:padding="1dp"
+        android:weightSum="3">
 
-            <TextView
-                android:id="@+id/wait_tv"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:layout_gravity="center_vertical"
-                android:gravity="center"
-                android:background="@drawable/shape_process_item"
-                android:layout_weight="1"
-                android:text="待处理"
-                android:textColor="@color/selector_schedule_text"
-                />
+        <TextView
+            android:id="@+id/wait_tv"
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_gravity="center_vertical"
+            android:layout_weight="1"
+            android:background="@drawable/shape_process_item"
+            android:gravity="center"
+            android:text="待处理"
+            android:textColor="@color/selector_schedule_text" />
 
-            <TextView
-                android:id="@+id/done_tv"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:layout_gravity="center_vertical"
-                android:layout_weight="1"
-                android:background="@drawable/shape_process_item"
-                android:textColor="@color/selector_schedule_text"
-                android:gravity="center"
-                android:text="已处理"
-                />
+        <TextView
+            android:id="@+id/done_tv"
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_gravity="center_vertical"
+            android:layout_marginRight="6dp"
+            android:layout_weight="1"
+            android:background="@drawable/shape_process_item"
+            android:gravity="center"
+            android:text="已处理"
+            android:textColor="@color/selector_schedule_text" />
 
-            <TextView
-                android:id="@+id/isend_tv"
-                android:layout_width="match_parent"
-                android:layout_height="match_parent"
-                android:layout_gravity="center_vertical"
-                android:layout_weight="1"
-                android:background="@drawable/shape_process_item"
-                android:textColor="@color/selector_schedule_text"
-                android:gravity="center"
-                android:text="我发起的"
-                />
+        <TextView
+            android:id="@+id/isend_tv"
+            android:layout_width="0dp"
+            android:layout_height="match_parent"
+            android:layout_gravity="center_vertical"
+            android:layout_weight="1"
+            android:background="@drawable/shape_process_item"
+            android:gravity="center"
+            android:text="我发起的"
+            android:textColor="@color/selector_schedule_text" />
 
-        </LinearLayout>
+    </LinearLayout>
 
 
-        <!--<TextView-->
-        <!--android:id="@+id/title"-->
-        <!--android:layout_width="wrap_content"-->
-        <!--android:layout_height="wrap_content"-->
-        <!--android:layout_centerInParent="true"-->
-        <!--android:drawableRight="@drawable/down"-->
-        <!--android:textColor="@color/white"-->
-        <!--android:textSize="@dimen/text_main" />-->
+    <!--<TextView-->
+    <!--android:id="@+id/title"-->
+    <!--android:layout_width="wrap_content"-->
+    <!--android:layout_height="wrap_content"-->
+    <!--android:layout_centerInParent="true"-->
+    <!--android:drawableRight="@drawable/down"-->
+    <!--android:textColor="@color/white"-->
+    <!--android:textSize="@dimen/text_main" />-->
 
-        <!--  <ImageView
-              android:id="@+id/seting"
-              android:layout_width="40dp"
-              android:layout_height="match_parent"
-              android:layout_alignParentRight="true"
-              android:padding="8dp"
-              android:src="@drawable/setting" />-->
-    </RelativeLayout>
-</LinearLayout>
+     <!--<ImageView-->
+          <!--android:id="@+id/seting"-->
+          <!--android:layout_width="40dp"-->
+          <!--android:layout_height="match_parent"-->
+          <!--android:layout_alignParentRight="true"-->
+          <!--android:padding="8dp"-->
+          <!--android:src="@drawable/setting" />-->
+</RelativeLayout>