Просмотр исходного кода

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

Bitliker 9 лет назад
Родитель
Сommit
4276d5aac3

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/MainActivity.java

@@ -571,7 +571,7 @@ public class MainActivity extends BaseActivity implements NetWorkObservable.NetW
         saveOfflineTime();
         MyApplication.getInstance().unregisterNetWorkObserver(this);
         ListenerManager.getInstance().removeAuthStateChangeListener(this);
-        if (mXmppBind) {
+        if (true) {
             unbindService(mXmppServiceConnection);
         }
         unregisterReceiver(mUpdateUnReadReceiver);

+ 8 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/account/LoginActivity.java

@@ -2,6 +2,7 @@ package com.xzjmyk.pm.activity.ui.account;
 
 import android.app.ProgressDialog;
 import android.content.DialogInterface;
+import android.content.Intent;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
@@ -17,6 +18,7 @@ import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.bean.LoginRegisterResult;
 import com.xzjmyk.pm.activity.helper.LoginHelper;
+import com.xzjmyk.pm.activity.ui.MainActivity;
 import com.xzjmyk.pm.activity.ui.base.BaseActivity;
 import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
@@ -119,6 +121,11 @@ public class LoginActivity extends BaseActivity implements View.OnClickListener
             ToastMessage("密码不能为空");
             return;
         }
+        if (true) {
+            login_manage(phoneNumber, password);//登录管理平台
+            return;
+        }
+       
         // 加密之后的密码
         final String digestPwd = new String(Md5Util.toMD5(password));
         final String requestTag = "login";
@@ -178,6 +185,7 @@ public class LoginActivity extends BaseActivity implements View.OnClickListener
                 }
                 if (success) {// 登陆IM成功
                     login_manage(phoneNumber, password);//登录管理平台
+//                    startActivity(new Intent(ct, MainActivity.class));
                 } else {// 登录失败
                     Log.i("gongpengming", result.getResultMsg());
                     String message = TextUtils.isEmpty(result.getResultMsg()) ? getString(R.string.login_failed) : result.getResultMsg();

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/NoticesActivity.java

@@ -247,7 +247,7 @@ public class NoticesActivity extends BaseActivity {
 //			model.tv_title.setText(datas.get(position).getNO_TITLE());
             model.tv_time.setText(CommonUtil.transferLongToDate("yyyy-MM-dd HH:mm:ss",
                     datas.get(position).getNO_APPTIME()));
-            model.tv_theme.setText(datas.get(position).getNO_TITLE());
+            model.tv_theme.setText(datas.get(position).getNO_TITLE().replace(" ",""));
             model.tv_author.setText(datas.get(position).getNO_APPROVER());
             model.id = datas.get(position).getNO_ID();
             model.hasRead = datas.get(position).getSTATUS() == null ? -1 : (int) datas.get(position).getSTATUS();

+ 43 - 19
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/BusinessAddActivity.java

@@ -22,8 +22,10 @@ import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
 import com.xzjmyk.pm.activity.ui.erp.view.SingleDialog;
 import com.xzjmyk.pm.activity.util.ToastUtil;
+import com.xzjmyk.pm.activity.view.wheel.DatePicker;
 
 import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.List;
@@ -88,6 +90,16 @@ public class BusinessAddActivity extends BaseActivity implements View.OnClickLis
         et_business_jieDuan.setKeyListener(null);
         et_business_source.setKeyListener(null);
         et_business_enterMan.setKeyListener(null);
+        
+        et_business_createTime.setOnClickListener(this);
+        et_business_enterTime.setOnClickListener(this);
+        et_business_createTime.setKeyListener(null);
+        et_business_enterTime.setKeyListener(null);
+        et_business_createTime.setFocusable(false);
+        et_business_enterTime.setFocusable(false);
+        
+        et_business_no.setKeyListener(null);
+        et_business_no.setFocusable(false);
     }
     private void initData() {
         getCodeByNet();
@@ -116,6 +128,12 @@ public class BusinessAddActivity extends BaseActivity implements View.OnClickLis
             case R.id.et_business_jieDuan:
                 loadJieDuan();
                 break;
+            case R.id.et_business_createTime:
+                showDateDialog((FormEditText) v.findViewById(R.id.et_business_createTime));
+                break;
+            case R.id.et_business_enterTime:
+                showDateDialog((FormEditText) v.findViewById(R.id.et_business_enterTime));
+                break;
         }
     }
 
@@ -199,7 +217,7 @@ public class BusinessAddActivity extends BaseActivity implements View.OnClickLis
                     array = JSON.parseObject(json).getJSONArray("recorders");
                     if (!array.isEmpty()) {
                         for (int i = 0; i < array.size(); i++) {
-                            lists.add(array.getJSONObject(i).getString("BC_RECORDER"));
+                            lists.add(array.getJSONObject(i).getString("BC_DOMAN"));
                         }
                     }
                     if (lists.isEmpty()) {
@@ -261,38 +279,27 @@ public class BusinessAddActivity extends BaseActivity implements View.OnClickLis
         String bc_contact = getEditText(et_company_man); //联系人
         String bc_remark = getEditText(et_business_source);//备注
         String bc_position = getEditText(et_company_position); //职位
-        String bc_type = "1";  //商机类型
-        String formStore = "{\n" +
+        String bc_type = "私有";  //商机类型
+        String formStore = "{\n"+
+                "\"bc_code\":\"" + et_business_no.getText().toString() + "\",\n" +   //商机名称
+                "\"bc_status\":\"" + "在录入" + "\",\n" + 
+                "\"bc_domancode\":\"" + CommonUtil.getSharedPreferences(ct,"erp_username") + "\",\n" +
+                "\"bc_statuscode\":\"" + "ENTERING" + "\",\n" +
                 "\"bc_description\":\"" + name + "\",\n" +   //商机名称
-
                 "\"bc_from\":\"" + from + "\",\n" +          //商机来源
-
                 "\"bc_nichehouse\":\"" + bc_nichehouse + "\",\n" +      //商机库
-
                 "\"bc_currentprocess\":\"" + bc_currentprocess + "\",\n" +   //当前阶段
-
                 "\"bc_recorddate\":\"" + bc_recorddate + "\",\n" +   //创建时间
-
                 "\"bc_recorder\":\"" + bc_recorder + "\",\n" +   //创建人
-
                 "\"bc_lastdate\":\"" + bc_lastdate + "\",\n" +   //最后跟进时间
-
                 "\"bc_doman\":\"" + bc_doman + "\",\n" +   //跟进人
-
                 "\"bc_remark\":\"" + bc_remark + "\",\n" +   //备注
-
                 "\"bc_custname\":\"" + bc_custname + "\",\n" +   //企业名称
-
                 "\"bc_address\":\"" + bc_address + "\",\n" +   //地址
-
                 "\"bc_contact\":\"" + bc_contact + "\",\n" +   //联系人
-
                 "\"bc_position\":\"" + bc_position + "\",\n" +   //职位
-
                 "\"bt_tel\":\"" + bt_tel + "\",\n" +   //电话
-
                 "\"bc_type\":\"" + bc_type + "\"\n" +   //商机类型
-
                 "}";
         params.put("formStore", formStore);
         params.put("caller", "BusinessChance");
@@ -304,7 +311,7 @@ public class BusinessAddActivity extends BaseActivity implements View.OnClickLis
     private void getCodeByNet() {
         String url = Constants.getAppBaseUrl(ct) + "common/getCodeString.action";
         final Map<String, Object> param = new HashMap<>();
-        String caller = "Meetingroomapply";
+        String caller = "BusinessChance";
         param.put("caller", caller);
         param.put("type", 2);
         param.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
@@ -397,4 +404,21 @@ public class BusinessAddActivity extends BaseActivity implements View.OnClickLis
         }*/
     }
 
+    private void showDateDialog(final  FormEditText tv) {
+        DatePicker picker = new DatePicker(this);
+        picker.setRange(1950, 2030);
+        picker.setSelectedItem(
+                Calendar.getInstance().get(Calendar.YEAR),
+                Calendar.getInstance().get(Calendar.MONTH) + 1,
+                Calendar.getInstance().get(Calendar.DAY_OF_MONTH));
+        picker.setOnDatePickListener(new DatePicker.OnYearMonthDayPickListener() {
+            @Override
+            public void onDatePicked(String year, String month, String day) {
+//                        ToastUtil.showToast(ct, year + "-" + month + "-" + day);
+                tv.setText(year + "-" + month + "-" + day);
+            }
+        });
+        picker.show();
+    }
+
 }

+ 93 - 44
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/ClientActivity.java

@@ -320,11 +320,19 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                         if (!sales.isEmpty()){
                             if (sales.size() != 2) {
                                 //__元/第__名   第一名:__金额:__元
-                                tv_rank_sale_left.setText("__" + "元/第"+"__"+"名");
-                                tv_rank_sale_right.setText("第一名:" + sales.getJSONArray(0).getString(1)
-                                        + "金额:" + sales.getJSONArray(0).getIntValue(0) + "元");
-//                            sales.getJSONArray(0).getIntValue(0);//第一名  元
-//                            sales.getJSONArray(0).getString(1);//第一名
+                                CommonUtil.textAarrySpanForStyle(tv_rank_sale_left,
+                                        "__" + "元/第"+"__"+"名",
+                                        new String[]{"__"},ct.getResources().getColor(R.color.yellow_home)
+                                        );
+                                CommonUtil.textAarrySpanForStyle(tv_rank_sale_right,
+                                        "第一名:" + sales.getJSONArray(0).getString(1)
+                                                + "金额:" + sales.getJSONArray(0).getIntValue(0) + " 元"
+                                ,new String[]{sales.getJSONArray(0).getString(1),
+                                        String.valueOf(sales.getJSONArray(0).getIntValue(0))},
+                                        ct.getResources().getColor(R.color.yellow_home));
+//                                tv_rank_sale_right.setText("第一名:" + sales.getJSONArray(0).getString(1)
+//                                        + "金额:" + sales.getJSONArray(0).getIntValue(0) + "元");
+                
                             } else {
                                 tv_rank_sale_left.setText(sales.getJSONArray(1).getIntValue(0) + "元/第1名");
                                 tv_rank_sale_right.setText("第一名:" + sales.getJSONArray(0).getString(1)
@@ -337,19 +345,24 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                     }
 
                     if (visits != null&&!visits.isEmpty()) {
-                        
                         if (visits.size() != 2) {
                             //名称 拜访次数,拜访个数,排名
-                            tv_rank_visit_left.setText(visits.getJSONArray(0).getIntValue(2) + "个/" +
-                                    visits.getJSONArray(0).getIntValue(1) + "次/第"
-                                    + visits.getJSONArray(0).getIntValue(3) + "名");
-                            tv_rank_visit_right.setText("第一名:" + visits.getJSONArray(0).getString(0)
-                                    + "拜访:" + visits.getJSONArray(0).getIntValue(2)
-                                    + "个/" + visits.getJSONArray(0).getIntValue(1) + "次");
-                            visits.getJSONArray(0).getString(0);//第一名  元
-                            visits.getJSONArray(0).getIntValue(1);//第一名
-                            visits.getJSONArray(0).getIntValue(2);//第一名  元
-                            visits.getJSONArray(0).getIntValue(3);//第一名
+                            CommonUtil.textAarrySpanForStyle(tv_rank_visit_left,
+                                    visits.getJSONArray(0).getIntValue(2) + "个/" +
+                                            visits.getJSONArray(0).getIntValue(1) + "次/第"
+                                            + visits.getJSONArray(0).getIntValue(3) + "名",
+                                    new String[]{String.valueOf(visits.getJSONArray(0).getIntValue(2))
+                                            , String.valueOf(visits.getJSONArray(0).getIntValue(1))
+                                            , String.valueOf(visits.getJSONArray(0).getIntValue(3))
+                                    }, ct.getResources().getColor(R.color.yellow_home));
+                            CommonUtil.textAarrySpanForStyle(tv_rank_visit_right,
+                                    "第一名:" + visits.getJSONArray(0).getString(0)
+                                            + "拜访:" + visits.getJSONArray(0).getIntValue(2)
+                                            + "个/" + visits.getJSONArray(0).getIntValue(1) + " 次"
+                                    , new String[]{visits.getJSONArray(0).getString(0)
+                                            , String.valueOf(visits.getJSONArray(0).getIntValue(2))
+                                            , String.valueOf(visits.getJSONArray(0).getIntValue(1))},
+                                    ct.getResources().getColor(R.color.yellow_home));
                         } else {
                             tv_rank_visit_left.setText(visits.getJSONArray(1).getIntValue(2) + "个/" +
                                     visits.getJSONArray(1).getIntValue(1) + "次/第"
@@ -357,11 +370,21 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                             tv_rank_visit_right.setText("第一名:" + visits.getJSONArray(1).getString(0)
                                     + "拜访:" + visits.getJSONArray(1).getIntValue(2)
                                     + "个/" + visits.getJSONArray(1).getIntValue(1) + "次");
-                            visits.getJSONArray(1).getString(0);//第一名  元
-                            visits.getJSONArray(1).getIntValue(1);//第一名
-                            visits.getJSONArray(1).getIntValue(2);//第一名  元
-                            visits.getJSONArray(1).getIntValue(3);//第一名
+                           
                         }
+                    }else{
+                        CommonUtil.textAarrySpanForStyle(tv_rank_visit_left,
+                                "__" + "个/" +
+                                        "__" + "次/第"
+                                        + "__"  + "名",
+                                new String[]{"__"}
+                                , ct.getResources().getColor(R.color.yellow_home));
+                        CommonUtil.textAarrySpanForStyle(tv_rank_visit_right,
+                                "第一名:" + "__"
+                                        + "拜访:" +  "__"
+                                        + "个/" +  "__" + "次"
+                                , new String[]{ "__"},
+                                ct.getResources().getColor(R.color.yellow_home));
                     }
 
                     if (profits != null&&!profits.isEmpty()) {
@@ -373,12 +396,18 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                             profits.getJSONArray(1).getString(1);//第一名
                             profits.getJSONArray(1).getIntValue(2);//第一名  元
                         } else {
-                            tv_rank_rirun_left.setText("__" + "元/第"+"__"+"名");
-                            tv_rank_rirun_right.setText("第一名:" + profits.getJSONArray(0).getString(1)
-                                    + "金额:" + profits.getJSONArray(0).getIntValue(0) + "元");
-                            profits.getJSONArray(0).getIntValue(0);//第一名  元
-                            profits.getJSONArray(0).getString(1);//第一名
-                            profits.getJSONArray(0).getIntValue(2);//第一名  元
+                            CommonUtil.textAarrySpanForStyle(tv_rank_rirun_left,
+                                    profits.getJSONArray(0).getIntValue(0)+ " 元/第"+1+"名",
+                                    new String[]{String.valueOf(profits.getJSONArray(0).getIntValue(0)
+                                            ),"1"},ct.getResources().getColor(R.color.yellow_home));
+                            CommonUtil.textAarrySpanForStyle(tv_rank_rirun_right,
+                                    "第一名:" + profits.getJSONArray(0).getString(1)
+                                            + " 金额:" + profits.getJSONArray(0).getIntValue(0) + " 元"
+                                    , new String[]{
+                                            profits.getJSONArray(0).getString(1),
+                                            String.valueOf(profits.getJSONArray(0).getIntValue(0))
+                                    }, ct.getResources().getColor(R.color.yellow_home));
+                            
                         }
                     }
 
@@ -392,12 +421,16 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                             receivables.getJSONArray(1).getString(1);//第一名
                             receivables.getJSONArray(1).getIntValue(2);//第一名  元
                         } else {
-                            tv_rank_income_left.setText(receivables.getJSONArray(0).getIntValue(0) + "元/第1名");
-                            tv_rank_income_right.setText("第一名:" + receivables.getJSONArray(0).getString(1)
-                                    + "超期应收:" + receivables.getJSONArray(0).getIntValue(0) + "元");
-                            receivables.getJSONArray(0).getIntValue(0);//第一名  元
-                            receivables.getJSONArray(0).getString(1);//第一名
-                            receivables.getJSONArray(0).getIntValue(2);//第一名  元
+                            CommonUtil.textSpanForStyle(tv_rank_income_left,
+                                    receivables.getJSONArray(0).getIntValue(0) + " 元/第1名"
+                                    , String.valueOf(receivables.getJSONArray(0).getIntValue(0)),
+                                    ct.getResources().getColor(R.color.yellow_home));
+                            CommonUtil.textAarrySpanForStyle(tv_rank_income_right,
+                                    "第一名:" + receivables.getJSONArray(0).getString(1)
+                                            + " 超期应收:" + receivables.getJSONArray(0).getIntValue(0) + " 元"
+                                    , new String[]{receivables.getJSONArray(0).getString(1),
+                                            String.valueOf(receivables.getJSONArray(0).getIntValue(0))},
+                                    ct.getResources().getColor(R.color.yellow_home));
                         }
                     }
                     break;
@@ -405,16 +438,26 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                     progressDialog.dismiss();
                     Log.i(TAG, "handleMessage SalesKit:" + msg.getData().getString("result"));
                     root = JSON.parseObject(msg.getData().getString("result")).getJSONObject("datas");
-                    tv_sale_chuhuo.setText(root.getIntValue("saleamount") + "元出货单金额");
-                    tv_sale_customer.setText(root.getIntValue("customercount") + "个新增客户");
-                    tv_sale_linkman.setText(root.getIntValue("contactcount") + "个新增联系人");
-                    tv_sale_order.setText(root.getIntValue("salecount") + "个新增销售单");
-                    tv_sale_businessChange.setText(root.getIntValue("nichechangecount") + "个新增商机变更");
-                    tv_sale_business.setText(root.getIntValue("nichecount") + "个新增商机数");
-                    tv_sale_huikuan.setText(root.getIntValue("backamount") + "元回款");
-
-                    tv_sale_visit.setText(root.getJSONArray("visit").getIntValue(0) + "个/" + root.getJSONArray("visit").getIntValue(1) + "次");
-
+                    
+                    CommonUtil.textAarrySpanForStyle(tv_sale_chuhuo
+                    ,root.getIntValue("saleamount") + " 元出货单金额",
+                            new String[]{String.valueOf(root.getIntValue("saleamount"))},
+                            ct.getResources().getColor(R.color.yellow_home));
+                    CommonUtil.textAarrySpanForStyle(tv_sale_customer,root.getIntValue("customercount") + " 个新增客户"
+                    ,new String[]{String.valueOf(root.getIntValue("customercount"))},ct.getResources().getColor(R.color.yellow_home));
+                    CommonUtil.textAarrySpanForStyle( tv_sale_linkman,root.getIntValue("contactcount") + " 个新增联系人"
+                            ,new String[]{String.valueOf(root.getIntValue("contactcount"))},ct.getResources().getColor(R.color.yellow_home));
+                    CommonUtil.textAarrySpanForStyle( tv_sale_order,root.getIntValue("salecount") + " 个新增销售单"
+                            ,new String[]{String.valueOf(root.getIntValue("salecount") )},ct.getResources().getColor(R.color.yellow_home));
+                    CommonUtil.textAarrySpanForStyle(tv_sale_businessChange,root.getIntValue("nichechangecount") + " 个新增商机变更"
+                            ,new String[]{String.valueOf(root.getIntValue("nichechangecount"))},ct.getResources().getColor(R.color.yellow_home));
+                    CommonUtil.textAarrySpanForStyle(tv_sale_business,root.getIntValue("nichecount") + " 个新增商机数"
+                            ,new String[]{String.valueOf(root.getIntValue("nichecount"))},ct.getResources().getColor(R.color.yellow_home));
+                    CommonUtil.textAarrySpanForStyle(tv_sale_huikuan, root.getIntValue("backamount") + " 元回款"
+                            , new String[]{String.valueOf(root.getIntValue("backamount"))}, ct.getResources().getColor(R.color.yellow_home));
+                    CommonUtil.textAarrySpanForStyle(tv_sale_visit, root.getJSONArray("visit").getIntValue(0) + " 个/" + root.getJSONArray("visit").getIntValue(1) + " 次"
+                            , new String[]{String.valueOf(root.getJSONArray("visit").getIntValue(0)),
+                            String.valueOf(root.getJSONArray("visit").getIntValue(1))}, ct.getResources().getColor(R.color.yellow_home));
                     break;
                 case INIT_Targets:
                     progressDialog.dismiss();
@@ -425,6 +468,8 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                         tv_em_name.setText(target.getString("EM_CODE"));
                         tv_em_name.setText(target.getString("CUSTOMERCOUNT"));
                         tv_em_depart.setText(target.getString("BFCOUNT"));
+                        
+                        
                         tv_em_plan.setText(target.getIntValue("RANK")+"");
                         tv_em_sale.setText(target.getIntValue("FIRSTBFCOUNT")+"");
                         tv_em_planrirun.setText(target.getIntValue("TOPCOUNT")+"");
@@ -443,8 +488,12 @@ public class ClientActivity extends BaseActivity implements View.OnClickListener
                     progressDialog.dismiss();
                     Log.i(TAG, "handleMessage InactionCusts:" + msg.getData().getString("result"));
                     root = JSON.parseObject(msg.getData().getString("result")).getJSONObject("datas");
-                    root.getIntValue("customernum");
-                    tv_cu_count.setText(root.getIntValue("customernum")+"个");
+                
+                    CommonUtil.textAarrySpanForStyle(tv_cu_count,
+                            root.getIntValue("customernum") + " 个"
+                            , new String[]{String.valueOf(root.getIntValue("customernum"))},
+                            ct.getResources().getColor(R.color.yellow_home));
+                  
                     break;
                 case Constants.APP_SOCKETIMEOUTEXCEPTION:
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));

+ 25 - 5
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/ContactManAddActivity.java

@@ -10,6 +10,7 @@ import android.view.View;
 import android.widget.EditText;
 import android.widget.RelativeLayout;
 
+import com.alibaba.fastjson.JSON;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.R;
@@ -68,7 +69,7 @@ public class ContactManAddActivity extends BaseActivity implements View.OnClickL
     }
 
     private void initData() {
-
+          getCodeByNet();
     }
 
     private void initView() {
@@ -111,6 +112,7 @@ public class ContactManAddActivity extends BaseActivity implements View.OnClickL
         return true;
     }
 
+  
     private Handler mHandler = new Handler() {
         @Override
         public void handleMessage(Message msg) {
@@ -120,6 +122,11 @@ public class ContactManAddActivity extends BaseActivity implements View.OnClickL
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));
                      ToastMessage("保存成功!");
                     break;
+                case codeWhat://获取编号
+                    progressDialog.dismiss();
+                     tv_code= JSON.parseObject(msg.getData().getString("result")).getString("code");
+                    
+                    break;
                 case Constants.APP_SOCKETIMEOUTEXCEPTION:
                     progressDialog.dismiss();
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));
@@ -137,9 +144,10 @@ public class ContactManAddActivity extends BaseActivity implements View.OnClickL
         }else{
             sex="1";
         }
-        String formStore="{\"ct_name\":\"" +
-                tv_name.getText().toString() +
-                "\",\"ct_sex\":" +
+        String formStore="{" +
+                "\"ct_code\":\"" + tv_code + "\"," +
+                "\"ct_name\":\"" + tv_name.getText().toString() + "\"," +
+                "\"ct_sex\":" +
                 sex +
                 ",\"ct_cuname\":\"" +
                 tv_company_login.getText().toString() +
@@ -228,5 +236,17 @@ public class ContactManAddActivity extends BaseActivity implements View.OnClickL
         picker.show();
     }
 
-
+    private static final int codeWhat = 0x11;
+    private  String tv_code;
+    private void getCodeByNet() {
+        String url = Constants.getAppBaseUrl(ct) + "common/getCodeString.action";
+        final Map<String, Object> param = new HashMap<>();
+        String caller = "Contact";
+        param.put("caller", caller);
+        param.put("type", 2);
+        param.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
+        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
+        headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
+       ViewUtil.httpSendRequest(ct, url, param, mHandler, headers, codeWhat, null, null, "post");
+    }
 }

+ 24 - 3
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/CustomerAddActivity.java

@@ -7,6 +7,7 @@ import android.util.Log;
 import android.view.Menu;
 import android.view.MenuItem;
 
+import com.alibaba.fastjson.JSON;
 import com.andreabaccega.widget.FormEditText;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
@@ -54,7 +55,7 @@ public class CustomerAddActivity extends BaseActivity {
     }
 
     private void initData() {
-
+        getCodeByNet();
     }
 
     private void initView() {
@@ -107,13 +108,18 @@ public class CustomerAddActivity extends BaseActivity {
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));
                     ToastMessage(msg.getData().getString("result"));
                     break;
+                case codeWhat://获取编号
+                    progressDialog.dismiss();
+                    tv_code= JSON.parseObject(msg.getData().getString("result")).getString("code");
+                    break;
             }
         }
     };
 
     private void sendHttpResquest(int what){
         progressDialog.show();
-        String formStore="{\"cu_code\":\"232423453\",\"cu_name\":\"" +
+        String formStore="{\"cu_code\":\"" +tv_code+
+                "\",\"cu_name\":\"" +
                 et_cu_name.getText().toString()+
                 "\",\"cu_source\":\"" +
                 et_cu_source.getText().toString() +
@@ -131,9 +137,24 @@ public class CustomerAddActivity extends BaseActivity {
         String url= Constants.getAppBaseUrl(ct)+"scm/sale/savePreCustomer.action";
         Map<String,Object> params=new HashMap<>();
         params.put("formStore", formStore);
-        params.put("caller", "PreCustome");
+        params.put("caller", "PreCustomer");
         LinkedHashMap<String , Object> headers=new LinkedHashMap<>();
         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
         ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, what, null, null, "post");
     }
+
+
+    private static final int codeWhat = 0x11;
+    private  String tv_code;
+    private void getCodeByNet() {
+        String url = Constants.getAppBaseUrl(ct) + "common/getCodeString.action";
+        final Map<String, Object> param = new HashMap<>();
+        String caller = "PreCustomer";
+        param.put("caller", caller);
+        param.put("type", 2);
+        param.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
+        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
+        headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
+       ViewUtil.httpSendRequest(ct, url, param, mHandler, headers, codeWhat, null, null, "post");
+    }
 }

+ 23 - 4
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/TaskAddActivity.java

@@ -11,6 +11,7 @@ import android.view.View;
 import android.widget.EditText;
 import android.widget.TextView;
 
+import com.alibaba.fastjson.JSON;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.ViewInjectInfo;
 import com.lidroid.xutils.view.annotation.ViewInject;
@@ -80,7 +81,7 @@ public class TaskAddActivity extends BaseActivity implements View.OnClickListene
 
     }
     private void initData() {
-
+     getCodeByNet();
     }
 
   
@@ -121,6 +122,10 @@ public class TaskAddActivity extends BaseActivity implements View.OnClickListene
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));
                     ToastMessage("保存异常!");
                     break;
+                case codeWhat://获取编号
+                    progressDialog.dismiss();
+                    tv_code= JSON.parseObject(msg.getData().getString("result")).getString("code");
+                    break;
             }
         }
     };
@@ -128,9 +133,8 @@ public class TaskAddActivity extends BaseActivity implements View.OnClickListene
     private void sendHttpResquest(int what){
         progressDialog.show();
         String formStore="{\n" +
-                "\"name\":\"" +
-                tv_name.getText().toString()+
-                "\",\n" +
+                "\"taskcode\":\"" + tv_code+ "\",\n" +
+                "\"name\":\"" + tv_name.getText().toString()+ "\",\n" +
                 "\"resourcename\":\"" +
                 tv_executive.getText().toString() +
                 "\",\n" +
@@ -227,4 +231,19 @@ public class TaskAddActivity extends BaseActivity implements View.OnClickListene
                 break;
         }
     }
+
+
+    private static final int codeWhat = 0x11;
+    private  String tv_code;
+    private void getCodeByNet() {
+        String url = Constants.getAppBaseUrl(ct) + "common/getCodeString.action";
+        final Map<String, Object> param = new HashMap<>();
+        String caller = "ProjectTask";
+        param.put("caller", caller);
+        param.put("type", 2);
+        param.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
+        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
+        headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
+       ViewUtil.httpSendRequest(ct, url, param, mHandler, headers, codeWhat, null, null, "post");
+    }
 }

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

@@ -12,6 +12,7 @@ import android.view.View;
 import android.widget.EditText;
 import android.widget.TextView;
 
+import com.alibaba.fastjson.JSON;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.R;
@@ -78,7 +79,7 @@ public class VisitReportAddActivity extends BaseActivity  implements View.OnClic
     }
 
     private void initData() {
-
+        getCodeByNet();
     }
 
     @Override
@@ -113,6 +114,10 @@ public class VisitReportAddActivity extends BaseActivity  implements View.OnClic
                     progressDialog.dismiss();
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));
 
+                    break;
+                case codeWhat://获取编号
+                    progressDialog.dismiss();
+                    tv_code= JSON.parseObject(msg.getData().getString("result")).getString("code");
                     break;
             }
         }
@@ -121,9 +126,8 @@ public class VisitReportAddActivity extends BaseActivity  implements View.OnClic
     private void sendHttpResquest(int what){
         progressDialog.show();
         String formStore="{\n" +
-                "\"vr_visittime\":\"" +
-               tv_date_select.getText().toString()+
-                "\",\n" +
+                "\"vr_code\":\"" + tv_code+ "\",\n" +
+                "\"vr_visittime\":\"" + tv_date_select.getText().toString()+ "\",\n" +
                 "\"vr_visitplace\":\"" +
               tv_address_login.getText().toString()+
                 "\",\n" +
@@ -197,4 +201,18 @@ public class VisitReportAddActivity extends BaseActivity  implements View.OnClic
         });
         picker.show();
     }
+
+    private static final int codeWhat = 0x11;
+    private  String tv_code;
+    private void getCodeByNet() {
+        String url = Constants.getAppBaseUrl(ct) + "common/getCodeString.action";
+        final Map<String, Object> param = new HashMap<>();
+        String caller = "VisitRecord";
+        param.put("caller", caller);
+        param.put("type", 2);
+        param.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
+        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
+        headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
+        ViewUtil.httpSendRequest(ct, url, param, mHandler, headers, codeWhat, null, null, "post");
+    }
 }

+ 22 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/crm/VisitReportPlanActivity.java

@@ -11,6 +11,7 @@ import android.view.View;
 import android.widget.EditText;
 import android.widget.TextView;
 
+import com.alibaba.fastjson.JSON;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.xzjmyk.pm.activity.R;
@@ -72,7 +73,7 @@ public class VisitReportPlanActivity extends BaseActivity  implements View.OnCli
     }
 
     private void initData() {
-
+      getCodeByNet();
     }
 
     @Override
@@ -109,6 +110,10 @@ public class VisitReportPlanActivity extends BaseActivity  implements View.OnCli
                     Log.i(TAG, "handleMessage:" + msg.getData().getString("result"));
                     ToastMessage("保存异常!");
                     break;
+                case codeWhat://获取编号
+                    progressDialog.dismiss();
+                    tv_code= JSON.parseObject(msg.getData().getString("result")).getString("code");
+                    break;
             }
         }
     };
@@ -117,7 +122,7 @@ public class VisitReportPlanActivity extends BaseActivity  implements View.OnCli
         progressDialog.show();
         String formStore ="\n" +
                 "{\n" +
-              /*  "\"vp_id\":\"1223\",\n" +*/
+                "\"vp_code\":\""+tv_code+"\",\n" +
                 "\"vp_date\":\"" +
                tv_date_select.getText().toString() +
                 "\",\n" +
@@ -187,4 +192,19 @@ public class VisitReportPlanActivity extends BaseActivity  implements View.OnCli
                 break;
         }
     }
+
+    private static final int codeWhat = 0x11;
+    private  String tv_code;
+    private void getCodeByNet() {
+        String url = Constants.getAppBaseUrl(ct) + "common/getCodeString.action";
+        final Map<String, Object> param = new HashMap<>();
+        String caller = "VisitRecord";
+        param.put("caller", caller);
+        param.put("type", 2);
+        param.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
+        LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
+        headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
+        ViewUtil.httpSendRequest(ct, url, param, mHandler, headers, codeWhat, null, null, "post");
+    }
+    
 }

+ 30 - 27
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/LinksManFragment.java

@@ -201,33 +201,36 @@ public class LinksManFragment extends XutilsFragment implements View.OnClickList
                 new String[]{master},
                 "whichsys=?");
         List<Friend> friends = new ArrayList<>();
-        for (int i = 0; i < emList.size(); i++) {//企业通讯人员
-            // friends.add(EnterChatAction(emList.get(i)));
-            if (mLoginUserId.equals((emList.get(i).getEm_IMID() + ""))) {
-                continue;
-            }
-            String fId = String.valueOf(emList.get(i).getEm_IMID());
-            if (!ListUtils.isEmpty(friend)) {
-                for (int j = 0; j < friend.size(); j++) {//IM好友
-                    if (mLoginUserId.equals((friend.get(j).getUserId() + ""))) {
-                        friend.remove(j);
-                        continue;
-                    }
-                    if (fId.equals(friend.get(j).getUserId())) {  //当有重复
-                        //改昵称
-                        friend.get(j).setNickName(emList.get(i).getEM_NAME());
-                        friend.get(j).setRemarkName(emList.get(i).getEM_NAME());//备注
-                        FriendDao.getInstance().setRemarkName(mLoginUserId, friend.get(j).getUserId(), friend.get(j).getRemarkName());
-                        break;
-                    } else if ((j == (friend.size() - 1)) && !(fId.equals(friend.get(j).getUserId()))) {
-                        friends.add(EnterChatAction(emList.get(i)));
-                    }
-                }
-            } else {
-                friends.add(EnterChatAction(emList.get(i)));
-            }
-        }
+       if (emList.size()>0&&mLoginUserId!=null){
+           for (int i = 0; i < emList.size(); i++) {//企业通讯人员
+               // friends.add(EnterChatAction(emList.get(i)));
+               if (mLoginUserId.equals((emList.get(i).getEm_IMID() + ""))) {
+                   continue;
+               }
+               String fId = String.valueOf(emList.get(i).getEm_IMID());
+               if (!ListUtils.isEmpty(friend)) {
+                   for (int j = 0; j < friend.size(); j++) {//IM好友
+                       if (mLoginUserId.equals((friend.get(j).getUserId() + ""))) {
+                           friend.remove(j);
+                           continue;
+                       }
+                       if (fId.equals(friend.get(j).getUserId())) {  //当有重复
+                           //改昵称
+                           friend.get(j).setNickName(emList.get(i).getEM_NAME());
+                           friend.get(j).setRemarkName(emList.get(i).getEM_NAME());//备注
+                           FriendDao.getInstance().setRemarkName(mLoginUserId, friend.get(j).getUserId(), friend.get(j).getRemarkName());
+                           break;
+                       } else if ((j == (friend.size() - 1)) && !(fId.equals(friend.get(j).getUserId()))) {
+                           friends.add(EnterChatAction(emList.get(i)));
+                       }
+                   }
+               } else {
+                   friends.add(EnterChatAction(emList.get(i)));
+               }
+           }
+       }
         //下面两行待优化
+        if (friend==null)return; 
         for (int i = 0; i < friend.size(); i++) friend.get(i).setFriend(true);
         for (int i = 0; i < friends.size(); i++) friends.get(i).setFriend(false);
         friend.addAll(friends);
@@ -839,7 +842,7 @@ public class LinksManFragment extends XutilsFragment implements View.OnClickList
     public void onDestroy() {
 
         getActivity().unregisterReceiver(receiver);
-
+        mActivity.unbindService(mServiceConnection);
         super.onDestroy();
     }
 

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

@@ -14,12 +14,20 @@ import android.content.pm.PackageManager.NameNotFoundException;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
 import android.graphics.Matrix;
+import android.graphics.Typeface;
 import android.net.ConnectivityManager;
 import android.net.NetworkInfo;
 import android.os.Build;
+import android.text.Spannable;
+import android.text.SpannableStringBuilder;
+import android.text.style.ForegroundColorSpan;
+import android.text.style.StrikethroughSpan;
+import android.text.style.StyleSpan;
+import android.text.style.UnderlineSpan;
 import android.util.DisplayMetrics;
 import android.util.Log;
 import android.util.Patterns;
+import android.widget.TextView;
 
 import com.nostra13.universalimageloader.core.DisplayImageOptions;
 import com.nostra13.universalimageloader.core.assist.ImageScaleType;
@@ -616,5 +624,58 @@ public class CommonUtil {
         ct.getApplicationContext().startActivity(intent);
     }
 
+   /**
+     * @desc:修改textView样式
+     * @author:Arison on 2016/8/3
+     */
+    public static void textSpanForStyle(
+            TextView view,
+            String input,
+            String match,
+            int color) {
+        SpannableStringBuilder style=new SpannableStringBuilder(input);
+        Pattern highlight = Pattern.compile(match);
+        Matcher m = highlight.matcher(style.toString());
+        while (m.find()) {
+            style.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), m.start(), m.end(),
+                    Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+            style.setSpan(new ForegroundColorSpan(color), m.start(), m.end(),
+                    Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+//            style.setSpan(new StrikethroughSpan(), m.start(), m.end(), 
+//                    Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+            style.setSpan(new UnderlineSpan(), m.start(), m.end(),
+                    Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+        }
+        view.setText(style);
+    }
+
+
+    /**
+     * @desc:修改textView样式  批量修改
+     * @author:Arison on 2016/8/3
+     */
+    public static void textAarrySpanForStyle(
+            TextView view,
+            String input,
+            String[] match,
+            int color) {
+        SpannableStringBuilder style=new SpannableStringBuilder(input);
+        for (String item:match){
+            Pattern highlight = Pattern.compile(item);
+            Matcher m = highlight.matcher(style.toString());
+            while (m.find()) {
+                style.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), m.start(), m.end(),
+                        Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+                style.setSpan(new ForegroundColorSpan(color), m.start(), m.end(),
+                        Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+//            style.setSpan(new StrikethroughSpan(), m.start(), m.end(), 
+//                    Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+                style.setSpan(new UnderlineSpan(), m.start(), m.end(),
+                        Spannable.SPAN_INCLUSIVE_INCLUSIVE);
+            }
+        }
+        view.setText(style);
+        }
+    
 
 }

+ 1 - 0
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/MessageFragment.java

@@ -375,6 +375,7 @@ public class MessageFragment extends EasyFragment {
 
     public void setFriendName(List<Friend> friends, String id) {
         List<Friend> f = FriendDao.getInstance().getFriends(id);
+        if (friends==null)return;
         for (int i = 0; i < friends.size(); i++) {
             for (int j = 0; j < f.size(); j++) {
                 if (friends.get(i).get_id() == f.get(j).get_id()) {

+ 1 - 0
WeiChat/src/main/res/values/styles.xml

@@ -620,6 +620,7 @@
         <item name="android:layout_width">0dp</item>
         <item name="android:layout_height">wrap_content</item>
         <item name="android:layout_gravity">center_vertical</item>
+        <item name="android:layout_marginRight">3dp</item>
         <item name="android:layout_weight">2</item>
         <item name="android:text">"__元/第__名"</item>
     </style>