Browse Source

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

# Conflicts:
#	WeiChat/version.properties
Arison 8 years ago
parent
commit
692ed6b38f
36 changed files with 817 additions and 227 deletions
  1. 2 2
      WeiChat/build.gradle
  2. 43 7
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/ChatActivity.java
  3. 0 9
      app_core/common/src/main/assets/work_menu.json
  4. 2 3
      app_core/common/src/main/java/com/core/app/Constants.java
  5. 30 0
      app_core/common/src/main/java/com/core/widget/SearchActionView.java
  6. 3 1
      app_core/network/src/main/java/com/me/network/app/http/HttpRequest.java
  7. 1 0
      app_modular/appbooking/src/main/java/com/modular/booking/activity/services/BServiceDetailActivity.java
  8. BIN
      app_modular/appbooking/src/main/res/drawable-xhdpi/icon_bservice_banner_deafult.png
  9. 0 4
      app_modular/appcontact/src/main/java/com/uas/appcontact/db/TopContactsDao.java
  10. 45 35
      app_modular/appcontact/src/main/java/com/uas/appcontact/ui/activity/MyFriendActivity.java
  11. 4 1
      app_modular/appme/src/main/java/com/uas/appme/settings/activity/BSettingLocationActivity.java
  12. 1 2
      app_modular/appmessages/src/main/java/com/modular/appmessages/presenter/MessagePresenter.java
  13. 46 0
      app_modular/apputils/src/main/java/com/modular/apputils/utils/RecyclerItemDecoration.java
  14. 58 34
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/activity/PurchaseDetailsActivity.java
  15. 8 2
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/PurchaseDetailsAdapter.java
  16. 42 7
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/model/Purchase.java
  17. 8 6
      app_modular/appworks/src/main/java/com/uas/appworks/activity/B2BBusinessMainActivity.java
  18. 34 19
      app_modular/appworks/src/main/java/com/uas/appworks/activity/CustomerInquiryDetailActivity.java
  19. 25 12
      app_modular/appworks/src/main/java/com/uas/appworks/activity/CustomerInquiryListActivity.java
  20. 61 4
      app_modular/appworks/src/main/java/com/uas/appworks/activity/PublicInquiryDetailActivity.java
  21. 23 6
      app_modular/appworks/src/main/java/com/uas/appworks/activity/PublicInquiryListActivity.java
  22. 25 10
      app_modular/appworks/src/main/java/com/uas/appworks/activity/PurchaseOrderListActivity.java
  23. 8 0
      app_modular/appworks/src/main/java/com/uas/appworks/adapter/B2BQuotePriceAdapter.java
  24. 2 1
      app_modular/appworks/src/main/java/com/uas/appworks/adapter/B2bBusinessListAdapter.java
  25. 7 5
      app_modular/appworks/src/main/java/com/uas/appworks/fragment/B2BBusinessListFragment.java
  26. 9 0
      app_modular/appworks/src/main/java/com/uas/appworks/model/bean/B2BBusinessListBean.java
  27. 1 0
      app_modular/appworks/src/main/res/layout/activity_customer_inquiry_detail.xml
  28. 240 41
      app_modular/appworks/src/main/res/layout/activity_public_inquiry_detail.xml
  29. 28 7
      app_modular/appworks/src/main/res/layout/item_ls_purchase.xml
  30. 23 9
      app_modular/appworks/src/main/res/layout/item_purchase.xml
  31. 25 0
      app_modular/appworks/src/main/res/layout/layout_list_purchase_order.xml
  32. 1 0
      app_modular/appworks/src/main/res/layout/layout_list_subsection_quotation.xml
  33. 3 0
      app_modular/appworks/src/main/res/values-en/strings.xml
  34. 3 0
      app_modular/appworks/src/main/res/values-zh-rCN/strings.xml
  35. 3 0
      app_modular/appworks/src/main/res/values-zh-rTW/strings.xml
  36. 3 0
      app_modular/appworks/src/main/res/values/strings.xml

+ 2 - 2
WeiChat/build.gradle

@@ -120,7 +120,7 @@ android {
         flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
     }
 
-    applicationVariants.all { variant ->
+    /*applicationVariants.all { variant ->
         variant.outputs.each { output ->
             def outputFile = output.outputFile
             def fileName
@@ -142,7 +142,7 @@ android {
                 output.outputFile = new File(outputFile.parent, fileName)
             }
         }
-    }
+    }*/
 }
 
 dependencies {

+ 43 - 7
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/message/ChatActivity.java

@@ -33,11 +33,14 @@ import com.common.LogUtil;
 import com.common.data.CalendarUtil;
 import com.common.data.ListUtils;
 import com.common.preferences.PreferenceUtils;
+import com.common.thread.ThreadPool;
 import com.common.ui.CameraUtil;
 import com.core.app.ActionBackActivity;
 import com.core.app.Constants;
 import com.core.app.MyApplication;
 import com.core.broadcast.MsgBroadcast;
+import com.core.dao.DBManager;
+import com.core.model.EmployeesEntity;
 import com.core.model.Friend;
 import com.core.model.User;
 import com.core.model.XmppMessage;
@@ -46,6 +49,7 @@ import com.core.net.volley.FastVolley;
 import com.core.net.volley.ObjectResult;
 import com.core.net.volley.Result;
 import com.core.net.volley.StringJsonObjectRequest;
+import com.core.utils.CommonUtil;
 import com.core.utils.ToastUtil;
 import com.core.xmpp.CoreService;
 import com.core.xmpp.FriendHelper;
@@ -150,7 +154,36 @@ public class ChatActivity extends ActionBackActivity
         instantFilePath = getIntent().getStringExtra(Constants.INSTANT_MESSAGE_FILE);//只有转发文件才会有
         IntentFilter filter = new IntentFilter(Constants.CHAT_MESSAGE_DELETE_ACTION);
         registerReceiver(broadcastReceiver, filter);
+        addPhone2Friend();
+    }
 
+    private void addPhone2Friend() {
+        if (mFriend != null && TextUtils.isEmpty(mFriend.getPhone())) {
+            LogUtil.i("mFriend != null && TextUtils.isEmpty(mFriend.getPhone())");
+            ThreadPool.getThreadPool().addTask(new Runnable() {
+                @Override
+                public void run() {
+                    Intent intent = getIntent();
+                    String phone = null;
+                    if (intent != null) {
+                        phone = intent.getStringExtra("phone");
+                    }
+                    if (!TextUtils.isEmpty(mFriend.getEmCode())) {
+                        String whichsys = CommonUtil.getMaster();
+                        String[] selectionArgs = {mFriend.getEmCode(), whichsys};
+                        String selection = "em_code=? and whichsys=? ";
+                        EmployeesEntity emModel = DBManager.getInstance().selectForEmployee(selectionArgs, selection);
+                        if (emModel != null && !TextUtils.isEmpty(emModel.getEM_MOBILE())) {
+                            phone = emModel.getEM_MOBILE();
+                        }
+                    }
+                    LogUtil.i("phone=" + phone);
+                    if (!TextUtils.isEmpty(phone)) {
+                        mFriend.setPhone(phone);
+                    }
+                }
+            });
+        }
     }
 
     BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@@ -453,10 +486,10 @@ public class ChatActivity extends ActionBackActivity
             if (!message.isUpload()) {
                 UploadEngine.uploadImFile(mFriend.getUserId(), message, mUploadResponse);
             } else {
-                mService.sendChatMessage(mFriend.getUserId(), message);
+              sendMessageByService( message);
             }
         } else {
-            mService.sendChatMessage(mFriend.getUserId(), message);
+            sendMessageByService(message);
         }
         // mService.sendChatMessage(mFriend.getUserId(), chatMessage);
     }
@@ -507,24 +540,23 @@ public class ChatActivity extends ActionBackActivity
 
             } else {
                 Log.d("roamer", "sendChatMessage....");
-                mService.sendChatMessage(mFriend.getUserId(), message);
+                sendMessageByService( message);
             }
         } else {
             Log.d("roamer", "sendChatMessage");
 
-            mService.sendChatMessage(mFriend.getUserId(), message);
+            sendMessageByService( message);
             //进行百度推送
             sendPushTask(mLoginUserId, mFriend.getUserId(), message.getContent());
 
         }
-        LogUtil.i("发送聊天\n"+JSON.toJSONString(mFriend));
         TopContactsDao.api().addGoodFriend(mFriend);
     }
 
     private UploadEngine.ImFileUploadResponse mUploadResponse = new UploadEngine.ImFileUploadResponse() {
         @Override
         public void onSuccess(String toUserId, ChatMessage message) {
-            mService.sendChatMessage(mFriend.getUserId(), message);
+            sendMessageByService(message);
 
         }
 
@@ -541,9 +573,13 @@ public class ChatActivity extends ActionBackActivity
                 }
             }
         }
-
     };
 
+    private void sendMessageByService(ChatMessage message){
+        if (mService!=null&&mFriend!=null){
+            mService.sendChatMessage(mFriend.getUserId(), message);
+        }
+    }
     /**
      * 停止播放聊天的录音
      */

+ 0 - 9
app_core/common/src/main/assets/work_menu.json

@@ -266,15 +266,6 @@
         "menuUrl": "",
         "caller": "",
         "isHide": false
-      },
-      {
-        "isLocalMenu": true,
-        "menuName": "str_company_salary",
-        "menuIcon": "company_salary",
-        "menuActivity": "com.modular.appme.CheckWagesActivity",
-        "menuUrl": "",
-        "caller": "",
-        "isHide": false
       }
     ]
   },

+ 2 - 3
app_core/common/src/main/java/com/core/app/Constants.java

@@ -17,6 +17,7 @@ public class Constants {
         String url = "";
         if (BaseConfig.isDebug()) {
             url = IM_BASE_URL_TEST;
+//            url = IM_BASE_URL;
         } else {
             url = IM_BASE_URL;
         }
@@ -487,11 +488,9 @@ public class Constants {
          */
         String B2B_COMPANY_BEAN = "b2b_company_bean";
 
-        String KEY_PURCHASE_ID = "key_purchase_id";
-        String KEY_PURCHASE_STATUS = "key_purchase_status";
-
         String EXTRA_B2B_LIST_ID = "extra_b2b_list_id";
         String EXTRA_B2B_LIST_STATE = "extra_b2b_list_state";
+        String EXTRA_B2B_LIST_ENUU = "extra_b2b_list_enuu";
         String EXTRA_B2B_LIST_JSON = "extra_b2b_list_json";
 
         String STATE_PURCHASE_ORDER_TODO = "todo";

+ 30 - 0
app_core/common/src/main/java/com/core/widget/SearchActionView.java

@@ -4,6 +4,8 @@ import android.app.Activity;
 import android.content.Context;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.text.Editable;
+import android.text.TextWatcher;
 import android.util.AttributeSet;
 import android.view.KeyEvent;
 import android.view.LayoutInflater;
@@ -27,6 +29,7 @@ public class SearchActionView extends FrameLayout {
     private OnVoiceCompleteListener mOnVoiceCompleteListener;
     private OnEnterActionListener mOnEnterActionListener;
     private OnMenuClickListener mOnMenuClickListener;
+    private OnTextChangedListener mOnTextChangedListener;
     private ClearEditText mSearchEditText;
 
     public void setOnVoiceCompleteListener(OnVoiceCompleteListener onVoiceCompleteListener) {
@@ -41,6 +44,10 @@ public class SearchActionView extends FrameLayout {
         mOnMenuClickListener = onMenuClickListener;
     }
 
+    public void setOnTextChangedListener(OnTextChangedListener onTextChangedListener) {
+        mOnTextChangedListener = onTextChangedListener;
+    }
+
     public void setMenuImage(int menuImage) {
         try {
             mMenuImageView.setImageResource(menuImage);
@@ -117,6 +124,25 @@ public class SearchActionView extends FrameLayout {
                 return false;
             }
         });
+
+        mSearchEditText.addTextChangedListener(new TextWatcher() {
+            @Override
+            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
+
+            }
+
+            @Override
+            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
+
+            }
+
+            @Override
+            public void afterTextChanged(Editable editable) {
+                if (mOnTextChangedListener != null) {
+                    mOnTextChangedListener.onTextChanged(editable.toString());
+                }
+            }
+        });
     }
 
     public void setSearchHint(String hint) {
@@ -142,4 +168,8 @@ public class SearchActionView extends FrameLayout {
     public interface OnMenuClickListener {
         void onMenuClick(View view);
     }
+
+    public interface OnTextChangedListener {
+        void onTextChanged(String text);
+    }
 }

+ 3 - 1
app_core/network/src/main/java/com/me/network/app/http/HttpRequest.java

@@ -1,6 +1,7 @@
 package com.me.network.app.http;
 
 import android.text.TextUtils;
+import android.util.Log;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
@@ -87,7 +88,8 @@ public class HttpRequest {
                             failMsg = result;
                         }
                     } catch (Exception e) {
-                        if (result.length() < 20) {
+                        Log.e("exceptionInfo", result);
+                        if (result.length() < 40) {
                             failMsg = result;
                         }
                     }

+ 1 - 0
app_modular/appbooking/src/main/java/com/modular/booking/activity/services/BServiceDetailActivity.java

@@ -60,6 +60,7 @@ public class BServiceDetailActivity extends OABaseActivity implements View.OnCli
 		progressDialog.show();
 		mCompanyId = model.getCompanyid();
 		mServiceId = "0";
+		LogUtil.prinlnLongMsg("appStoreman","companyid = "+ mCompanyId + ",serviceid = " +mServiceId + ",Token = " + MyApplication.getInstance().mAccessToken);
 		mHttpClient.Api().send(new HttpClient.Builder()
 				.url("/user/appStoreman")
 				.add("companyid", mCompanyId)

BIN
app_modular/appbooking/src/main/res/drawable-xhdpi/icon_bservice_banner_deafult.png


+ 0 - 4
app_modular/appcontact/src/main/java/com/uas/appcontact/db/TopContactsDao.java

@@ -114,14 +114,10 @@ public class TopContactsDao extends Dao<TopContacts> {
                 + DatabaseTables.TopContactsTable.Cols.USER_ID + "=? ";
         String[] whereAge = new String[]{topContacts.getOwnerId(), topContacts.getUserId()};
         List<TopContacts> dbContacts = query(where, whereAge);
-        LogUtil.i("owner_id=" + topContacts.getOwnerId());
-        LogUtil.i("user_id=" + topContacts.getUserId());
         if (ListUtils.isEmpty(dbContacts)) {
-            LogUtil.i("ListUtils.isEmpty(dbContacts)=");
             boolean b = insert(topContacts, where, whereAge);
             LogUtil.i("insert=" + b);
         } else {
-            LogUtil.i("ListUtils.isEmpty(dbContacts)=elseelseelseelseelse"+dbContacts.size());
             TopContacts dbContact = dbContacts.get(0);
             if (dbContact != null && (System.currentTimeMillis() - dbContact.getLastTime())< (86400000)) {
                 topContacts.setStatus(1);

+ 45 - 35
app_modular/appcontact/src/main/java/com/uas/appcontact/ui/activity/MyFriendActivity.java

@@ -23,6 +23,7 @@ import com.common.LogUtil;
 import com.common.data.JSONUtil;
 import com.common.data.ListUtils;
 import com.common.data.StringUtil;
+import com.common.thread.ThreadPool;
 import com.common.ui.ProgressDialogUtil;
 import com.core.app.MyApplication;
 import com.core.base.BaseActivity;
@@ -96,15 +97,15 @@ public class MyFriendActivity extends BaseActivity {
         initView();
 
     }
-    
+
     private void initView() {
         progressDialog.show();
         mPullToRefreshListView = (PullToRefreshListView) findViewById(R.id.pull_refresh_list);
         mTextDialog = (TextView) findViewById(R.id.text_dialog);
         mSideBar = (SideBar) findViewById(R.id.sidebar);
-        voiceSearchView = (VoiceSearchView)findViewById(R.id.voiceSearchView);
+        voiceSearchView = (VoiceSearchView) findViewById(R.id.voiceSearchView);
         mSideBar.setTextView(mTextDialog);
-      
+
         mSideBar.setOnTouchingLetterChangedListener(new SideBar.OnTouchingLetterChangedListener() {
             @Override
             public void onTouchingLetterChanged(String s) {
@@ -124,7 +125,7 @@ public class MyFriendActivity extends BaseActivity {
                 //linear_top_menu.setVisibility(View.VISIBLE);
             }
         });
-      // setHeaderView();
+        // setHeaderView();
         loadData();
        /* mPullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener<ListView>() {
             @Override
@@ -134,23 +135,24 @@ public class MyFriendActivity extends BaseActivity {
                 loadData();
             }
         });*/
-       mPullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
-           @Override
-           public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
-               progressDialog.show();
-               mAdapter.setisRefeshed(true);
-               upDataFriend();
-               loadData();
-           }
+        mPullToRefreshListView.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
+            @Override
+            public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
+                progressDialog.show();
+                mAdapter.setisRefeshed(true);
+                upDataFriend();
+                loadData();
+            }
 
-           @Override
-           public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
+            @Override
+            public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
 
-           }
-       });
+            }
+        });
 
         mPullToRefreshListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
             private Friend friend;   //l临时对象
+
             @Override
             public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                 try {
@@ -199,10 +201,7 @@ public class MyFriendActivity extends BaseActivity {
         View headview = LayoutInflater.from(ct).inflate(R.layout.header_fragment_contact, null);
         mPullToRefreshListView.getRefreshableView().addHeaderView(headview);
         headview.findViewById(R.id.click_ll).setVisibility(View.GONE);
-       voiceSearchView = (VoiceSearchView) headview.findViewById(R.id.voiceSearchView);
-
-    
-
+        voiceSearchView = (VoiceSearchView) headview.findViewById(R.id.voiceSearchView);
     }
 
     /**
@@ -219,7 +218,7 @@ public class MyFriendActivity extends BaseActivity {
                 mAdapter.getmSortFriends().add(e);
             }
         }
-        LogUtil.prinlnLongMsg("mSortFriends",JSON.toJSONString(mAdapter.getmSortFriends()));
+        LogUtil.prinlnLongMsg("mSortFriends", JSON.toJSONString(mAdapter.getmSortFriends()));
         mAdapter.notifyDataSetChanged();
     }
 
@@ -230,7 +229,7 @@ public class MyFriendActivity extends BaseActivity {
 //            loadData();
             mNeedUpdate = false;
         }
-        if (mAdapter!=null) {
+        if (mAdapter != null) {
             mAdapter.notifyDataSetChanged();
         }
     }
@@ -240,18 +239,29 @@ public class MyFriendActivity extends BaseActivity {
     private void loadData() {
 //        if (isPeculiar) loadContactByERpNet();
 //        else
-        new Thread(new Runnable() {
+        ThreadPool.getThreadPool().addTask(new Runnable() {
             @Override
             public void run() {
                 long startTime = System.currentTimeMillis();
-                if (mLoginUserId == null)
+                if (mLoginUserId == null) {
                     mLoginUserId = MyApplication.getInstance().mLoginUser.getUserId();
+                }
+                friends = new ArrayList<>();
                 if (isPeculiar) {
                     List<TopContacts> topContacts = TopContactsDao.api().getTopContacts();
-                    if (topContacts!=null){
-                        LogUtil.i("topContacts="+JSON.toJSONString(topContacts));
+                    if (topContacts != null) {
+                        for (TopContacts e : topContacts) {
+                            Friend f = new Friend();
+                            f.setNickName(e.getName());
+                            f.setPhone(e.getPhone());
+                            f.setUserId(e.getUserId());
+                            f.setOwnerId(e.getOwnerId());
+                            f.setEmCode(e.getEmCode());
+                            f.setTimeSend((int) (e.getLastTime() / 1000));
+                            friends.add(f);
+                        }
                     }
-                    friends = FriendDao.getInstance().getFriends(mLoginUserId, "clickNum", 10);
+//                    friends = FriendDao.getInstance().getFriends(mLoginUserId, "clickNum", 10);
                 } else {
                     friends = FriendDao.getInstance().getFriends(mLoginUserId);// 取所有好友
                 }
@@ -266,11 +276,11 @@ public class MyFriendActivity extends BaseActivity {
                     @Override
                     public void run() {
                         handlerFriends(friends);
-                        LogUtil.prinlnLongMsg("hifriends",JSON.toJSONString(friends));
+                        LogUtil.prinlnLongMsg("hifriends", JSON.toJSONString(friends));
                     }
                 }, delayTime);
             }
-        }).start();
+        });
     }
 
     private void getFriendByRep(EmployeesEntity e, Friend friend) {
@@ -323,7 +333,7 @@ public class MyFriendActivity extends BaseActivity {
                     friends.add(friend);
                 }
                 handlerFriends(friends);
-                LogUtil.prinlnLongMsg("hifriends",JSON.toJSONString(friend));
+                LogUtil.prinlnLongMsg("hifriends", JSON.toJSONString(friend));
             }
 
             @Override
@@ -356,19 +366,19 @@ public class MyFriendActivity extends BaseActivity {
                 public int compare(BaseSortModel<Friend> o1, BaseSortModel<Friend> o2) {
                     Friend f1 = o1.getBean();
                     Friend f2 = o2.getBean();
-                    return f2.getClickNum()-f1.getClickNum();
+                    return f2.getClickNum() - f1.getClickNum();
                 }
             });
-            LogUtil.prinlnLongMsg("mSortFriends",JSON.toJSONString(mSortFriends));
+            LogUtil.prinlnLongMsg("mSortFriends", JSON.toJSONString(mSortFriends));
             Collections.sort(allFriends, new Comparator<BaseSortModel<Friend>>() {
                 @Override
                 public int compare(BaseSortModel<Friend> o1, BaseSortModel<Friend> o2) {
                     Friend f1 = o1.getBean();
                     Friend f2 = o2.getBean();
-                    return f2.getClickNum()-f1.getClickNum();
+                    return f2.getClickNum() - f1.getClickNum();
                 }
             });
-            LogUtil.prinlnLongMsg("allFriends",JSON.toJSONString(allFriends));
+            LogUtil.prinlnLongMsg("allFriends", JSON.toJSONString(allFriends));
 //            Collections.sort(mSortFriends, mBaseComparator);
 //            Collections.sort(allFriends, mBaseComparator);
         }
@@ -453,7 +463,7 @@ public class MyFriendActivity extends BaseActivity {
         }, new StringJsonArrayRequest.Listener<AttentionUser>() {
             @Override
             public void onResponse(ArrayResult<AttentionUser> result) {
-                LogUtil.d("Test","result:"+result);
+                LogUtil.d("Test", "result:" + result);
                 boolean success = Result.defaultParser(MyFriendActivity.this, result, false);
                 if (success) {
                     FriendDao.getInstance().addAttentionUsers(mHandler, MyApplication.getInstance().mLoginUser.getUserId(), result.getData(),

+ 4 - 1
app_modular/appme/src/main/java/com/uas/appme/settings/activity/BSettingLocationActivity.java

@@ -125,7 +125,10 @@ public class BSettingLocationActivity extends BaseActivity implements View.OnCli
 
                 //{"result":[{"sc_industry":"医疗","sc_industrycode":"10001"}]}
                 JSONArray array = JSON.parseObject(o.toString()).getJSONArray("result");
-                if (ListUtils.isEmpty(array)) return;
+                if (ListUtils.isEmpty(array)) {
+                    progressDialog.dismiss();
+                    return;
+                }
                 JSONObject object = array.getJSONObject(0);
                 if (object == null) return;
                 sc_industry = object.getString("sc_industry");

+ 1 - 2
app_modular/appmessages/src/main/java/com/modular/appmessages/presenter/MessagePresenter.java

@@ -58,7 +58,6 @@ import com.modular.appmessages.util.ApprovalUtil;
 import com.modular.apputils.utils.SwitchUtil;
 import com.modular.booking.activity.services.BServiceListActivity;
 import com.modular.booking.model.SBMenuModel;
-import com.uas.appworks.CRM.erp.activity.DeviceManageActivity;
 import com.uas.appworks.OA.platform.activity.BusinessTravelActivity;
 import com.uas.appworks.OA.platform.activity.PurchaseDetailsActivity;
 
@@ -1273,7 +1272,7 @@ public class MessagePresenter implements OnHttpResultListener {
                 ct.startActivity(intent);
                 break;
             case 10:
-                intent = new Intent(ct, PurchaseDetailsActivity.class).putExtra(Constants.FLAG.KEY_PURCHASE_STATUS, "待回复");
+                intent = new Intent(ct, PurchaseDetailsActivity.class).putExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE, "待回复");
                 ct.startActivity(intent);
                 break;
             default:

+ 46 - 0
app_modular/apputils/src/main/java/com/modular/apputils/utils/RecyclerItemDecoration.java

@@ -0,0 +1,46 @@
+package com.modular.apputils.utils;
+
+import android.graphics.Canvas;
+import android.graphics.Paint;
+import android.graphics.Rect;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+
+import com.modular.apputils.R;
+
+/**
+ * Created by Bitlike on 2018/1/24.
+ */
+
+public class RecyclerItemDecoration extends RecyclerView.ItemDecoration {
+
+    private int dividerHeight;
+    private Paint mPaint;
+
+    public RecyclerItemDecoration(int dividerHeight) {
+        this.dividerHeight = dividerHeight;
+        mPaint = new Paint();
+        mPaint.setColor(0xBFD3D3D3);
+    }
+
+    @Override
+    public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) {
+        super.onDraw(c, parent, state);
+        int childCount = parent.getChildCount();
+        int left = parent.getPaddingLeft();
+        int right = parent.getWidth() - parent.getPaddingRight();
+
+        for (int i = 0; i < childCount - 1; i++) {
+            View view = parent.getChildAt(i);
+            float top = view.getBottom();
+            float bottom = view.getBottom() + dividerHeight;
+            c.drawRect(left, top, right, bottom, mPaint);
+        }
+    }
+
+    @Override
+    public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {
+        super.getItemOffsets(outRect, view, parent, state);
+        outRect.bottom = this.dividerHeight;
+    }
+}

+ 58 - 34
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/activity/PurchaseDetailsActivity.java

@@ -1,18 +1,17 @@
 package com.uas.appworks.OA.platform.activity;
 
 import android.content.Intent;
-import android.support.v7.widget.DividerItemDecoration;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.text.TextUtils;
 import android.view.KeyEvent;
 import android.view.MenuItem;
-import android.widget.LinearLayout;
 import android.widget.Toast;
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.common.LogUtil;
 import com.common.data.DateFormatUtil;
 import com.common.data.JSONUtil;
 import com.common.data.ListUtils;
@@ -21,12 +20,14 @@ import com.common.thread.ThreadPool;
 import com.core.app.Constants;
 import com.core.app.MyApplication;
 import com.core.net.http.http.OAHttpHelper;
+import com.core.utils.CommonUtil;
 import com.core.utils.ToastUtil;
 import com.me.network.app.http.Method;
 import com.modular.apputils.activity.BaseNetActivity;
 import com.modular.apputils.listener.OnSmartHttpListener;
 import com.modular.apputils.network.Parameter;
 import com.modular.apputils.network.Tags;
+import com.modular.apputils.utils.RecyclerItemDecoration;
 import com.uas.appworks.OA.platform.adapter.PurchaseDetailsAdapter;
 import com.uas.appworks.OA.platform.model.Purchase;
 import com.uas.appworks.R;
@@ -45,6 +46,7 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
 
     private String varId;
     private String varStatus;
+    private String enUU;
 
     private RecyclerView mRecyclerView;
     private PurchaseDetailsAdapter mAdapter;
@@ -66,8 +68,12 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
     protected void init() throws Exception {
         Intent intent = getIntent();
         if (intent != null) {
-            varId = intent.getStringExtra(Constants.FLAG.KEY_PURCHASE_ID);
-            varStatus = intent.getStringExtra(Constants.FLAG.KEY_PURCHASE_STATUS);
+            varId = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_ID);
+            varStatus = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE);
+            enUU = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_ENUU);
+            if (TextUtils.isEmpty(enUU)) {
+                enUU = CommonUtil.getSharedPreferences(mContext, Constants.CACHE.B2B_BUSINESS_ENUU);
+            }
         }
         if (varStatus == null) {
             varStatus = "";
@@ -97,7 +103,7 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
     private void initView() {
         mRecyclerView = findViewById(R.id.mRecyclerView);
         mRecyclerView.setLayoutManager(new LinearLayoutManager(ct));
-        mRecyclerView.addItemDecoration(new DividerItemDecoration(ct, LinearLayout.VERTICAL));
+        mRecyclerView.addItemDecoration(new RecyclerItemDecoration(1));
 
     }
 
@@ -107,8 +113,8 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
 
 
     private void loadData() {
-        int enuu = 10041559;
-        String phone = "15671616315";
+        showProgress();
+        String phone = MyApplication.getInstance().mLoginUser.getTelephone();
         Parameter.Builder builder = new Parameter.Builder();
         String url = "mobile/sale/orders/" + varId + "/info";//卖方
         builder.mode(Method.GET)
@@ -116,15 +122,14 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
                 .record(0x11)
                 .showLog(true)
                 .autoProgress(true)
-                .addParams("en_uu", enuu)
+                .addParams("en_uu", enUU)
                 .addParams("user_tel", phone);
         requestHttp(builder, this);
     }
 
-    private int replyNumber;
+    private boolean replyed;
 
     private void verifiReply(List<Purchase> purchases) {
-        replyNumber = 0;
         List<Map<String, Object>> mapList = new ArrayList<>();
         for (int i = 1; i < purchases.size(); i++) {
             Purchase purchase = purchases.get(i);
@@ -141,18 +146,16 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
             String json = JSONUtil.map2JSON(mapList);
             reply(json);
         } else {
-            ToastUtil.showToast(ct,"没有可以提交的明细表单");
+            ToastUtil.showToast(ct, "没有可以提交的明细表单");
         }
     }
 
     private void reply(String json) {
-        replyNumber++;
-        int enuu = 10041559;
-        String phone = "15671616315";
+        String phone = MyApplication.getInstance().mLoginUser.getTelephone();
         Parameter.Builder builder = new Parameter.Builder();
         builder.mode(Method.POST)
                 .url("mobile/sale/orders/reply")
-                .addParams("en_uu", enuu)
+                .addParams("en_uu", enUU)
                 .addParams("json", json)
                 .addParams("user_tel", phone)
                 .record(0x12)
@@ -181,15 +184,13 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
                 handleMessage(message);
                 break;
             case 0x12:
-                replyNumber--;
-                if (replyNumber == 0) {
-                    Toast.makeText(MyApplication.getInstance(), "回复成功", Toast.LENGTH_SHORT).show();
-                    if (!this.isFinishing()) {
-                        loadData();
-                    }
+                if (!this.isFinishing()) {
+                    replyed = true;
+                    loadData();
                 }
                 break;
         }
+        dismissProgress();
     }
 
     @Override
@@ -208,18 +209,34 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
                 JSONObject object = JSON.parseObject(message);
                 setVarStatus(object);
                 final List<Purchase> dataList = new ArrayList<>();
-                dataList.add(getPurchase(true, object));
                 JSONArray orderItems = JSONUtil.getJSONArray(object, "orderItems");
+
+                Purchase mainPurchase = getPurchase(true, object);
+                float top = 0;
                 if (!ListUtils.isEmpty(orderItems)) {
+                    Purchase purchase = null;
                     for (int i = 0; i < orderItems.size(); i++) {
-                        dataList.add(getPurchase(false, orderItems.getJSONObject(i)));
+                        purchase = getPurchase(false, orderItems.getJSONObject(i));
+                        dataList.add(purchase);
+                        try {
+                            top += Float.valueOf(purchase.getAmount());
+                        } catch (Exception e) {
+                            LogUtil.i("e=" + e.getMessage());
+                        }
                     }
                 }
+                mainPurchase.setTotal(String.valueOf(top));
+                dataList.add(0, mainPurchase);
                 OAHttpHelper.getInstance().post(new Runnable() {
                     @Override
                     public void run() {
                         setStatus();
-                        setData2Adapter(dataList);
+                        if (replyed) {
+                            Toast.makeText(MyApplication.getInstance(), "回复成功", Toast.LENGTH_SHORT).show();
+                            finish();
+                        } else {
+                            setData2Adapter(dataList);
+                        }
                     }
                 });
             }
@@ -254,38 +271,45 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
     private Purchase getPurchase(boolean first, JSONObject object) {
         Purchase purchase = new Purchase();
         int id = JSONUtil.getInt(object, "id");
-        String client = JSONUtil.getText(object, "receiveName");//客户
         String address = JSONUtil.getText(object, "shipAddress");//收货地址
-        String time = DateFormatUtil.long2Str(JSONUtil.getLong(object, "erpDate", "date"), DateFormatUtil.YMD_HMS);//单据时间
-        String number = JSONUtil.getText(object, "qty");//数量
+        String time = DateFormatUtil.long2Str(JSONUtil.getLong(object, "erpDate", "date"), DateFormatUtil.YMD);//单据时间
         String date = DateFormatUtil.long2Str(JSONUtil.getLong(object, "replyDelivery", "delivery"), DateFormatUtil.YMD);//交货日期
         String replyRemark = JSONUtil.getText(object, "replyRemark");//采购单号
         int status = JSONUtil.getInt(object, "status");//状态
-
-
         String code;//采购单号
         String remarks;//备注|产品
         String alls;//总额|产品规格
         if (first) {
+            String currency = JSONUtil.getText(object, "currency");//采购单号
             code = JSONUtil.getText(object, "code");//采购单号
             remarks = JSONUtil.getText(object, "remark");//备注
             alls = JSONUtil.getText(object, "amount");//总额
+            JSONObject enterprise = JSONUtil.getJSONObject(object, "enterprise");//客户
+            String client = JSONUtil.getText(enterprise, "enName");
+            purchase.setCurrency(currency);
+            purchase.setCustomer(client);
         } else {
             JSONObject product = JSONUtil.getJSONObject(object, "product");
-            code = JSONUtil.getText(product, "cmpCode");
+            code = JSONUtil.getText(product, "code");
             remarks = JSONUtil.getText(product, "title");
             alls = JSONUtil.getText(product, "spec");
+            String unit = JSONUtil.getText(product, "unit");
+            String amount = JSONUtil.getText(object, "amount");
+            String price = JSONUtil.getText(object, "price");
+            String number = JSONUtil.getText(object, "qty");//数量
+            purchase.setNumber(number);
+            purchase.setAmount(amount);
+            purchase.setPrice(price);
+            purchase.setUnit(unit);
         }
         purchase.setCanInput(status == 200);
         purchase.setId(id);
         purchase.setCode(code);
-        purchase.setCustomer(client);
         purchase.setAddress(address);
         purchase.setTime(time);
         purchase.setRemarks(remarks);
         purchase.setTotal(alls);
         purchase.setDate(date);
-        purchase.setNumber(number);
         purchase.setRemarksInput(replyRemark);
         return purchase;
     }
@@ -295,7 +319,7 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
     public boolean onOptionsItemSelected(MenuItem item) {
         if (item.getItemId() == android.R.id.home) {
             if (changeStatus) {
-                setResult(Constants.FLAG.RESULT_PURCHASE_ORDER, new Intent().putExtra(Constants.FLAG.KEY_PURCHASE_STATUS, varStatus));
+                setResult(Constants.FLAG.RESULT_PURCHASE_ORDER, new Intent().putExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE, varStatus));
             }
         }
         return super.onOptionsItemSelected(item);
@@ -304,7 +328,7 @@ public class PurchaseDetailsActivity extends BaseNetActivity implements OnSmartH
     @Override
     public boolean onKeyDown(int keyCode, KeyEvent event) {
         if (keyCode == KeyEvent.KEYCODE_BACK && changeStatus) {
-            setResult(Constants.FLAG.RESULT_PURCHASE_ORDER, new Intent().putExtra(Constants.FLAG.KEY_PURCHASE_STATUS, varStatus));
+            setResult(Constants.FLAG.RESULT_PURCHASE_ORDER, new Intent().putExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE, varStatus));
         }
         return super.onKeyDown(keyCode, event);
     }

+ 8 - 2
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/PurchaseDetailsAdapter.java

@@ -84,7 +84,7 @@ public class PurchaseDetailsAdapter extends RecyclerView.Adapter<RecyclerView.Vi
     }
 
     class ViewHolder extends RecyclerView.ViewHolder {
-        TextView timeTv, remarksTv, totalTv, dateEd;
+        TextView timeTv, remarksTv, totalTv, dateEd,amountTv,numberUnit;
         EditText numberEd, remarksInputEd;
 
         public ViewHolder(ViewGroup viewGroup) {
@@ -94,6 +94,8 @@ public class PurchaseDetailsAdapter extends RecyclerView.Adapter<RecyclerView.Vi
         public ViewHolder(View itemView) {
             super(itemView);
             timeTv = itemView.findViewById(R.id.timeTv);
+            numberUnit = itemView.findViewById(R.id.numberUnit);
+            amountTv = itemView.findViewById(R.id.amountTv);
             remarksTv = itemView.findViewById(R.id.remarksTv);
             totalTv = itemView.findViewById(R.id.totalTv);
             dateEd = itemView.findViewById(R.id.dateEd);
@@ -104,7 +106,7 @@ public class PurchaseDetailsAdapter extends RecyclerView.Adapter<RecyclerView.Vi
     }
 
     class TotalViewHolder extends RecyclerView.ViewHolder {
-        TextView customerTv, addressTv, codeTv, timeTv, remarksTv, totalTv;
+        TextView customerTv, addressTv, codeTv, timeTv, remarksTv, totalTv,currencyTv;
 
         public TotalViewHolder(ViewGroup viewGroup) {
             this(mInflater.inflate(R.layout.item_ls_purchase, viewGroup, false));
@@ -112,6 +114,7 @@ public class PurchaseDetailsAdapter extends RecyclerView.Adapter<RecyclerView.Vi
 
         public TotalViewHolder(View itemView) {
             super(itemView);
+            currencyTv = itemView.findViewById(R.id.currencyTv);
             addressTv = itemView.findViewById(R.id.addressTv);
             codeTv = itemView.findViewById(R.id.codeTv);
             timeTv = itemView.findViewById(R.id.timeTv);
@@ -142,6 +145,7 @@ public class PurchaseDetailsAdapter extends RecyclerView.Adapter<RecyclerView.Vi
         holder.codeTv.setText(purchase.getCode());
         holder.remarksTv.setText(TextUtils.isEmpty(purchase.getRemarks()) ? "无" : purchase.getRemarks());
         holder.timeTv.setText(purchase.getTime());
+        holder.currencyTv.setText(purchase.getCurrency());
     }
 
     private void onBindViewHolder(BtnViewHolder holder) {
@@ -164,9 +168,11 @@ public class PurchaseDetailsAdapter extends RecyclerView.Adapter<RecyclerView.Vi
         holder.totalTv.setText(purchase.getTotal());
         holder.remarksTv.setText(purchase.getRemarks());
         holder.timeTv.setText(purchase.getCode());
+        holder.amountTv.setText(purchase.getPrice());
         holder.dateEd.setText(purchase.getDate());
         holder.numberEd.setText(purchase.getNumber());
         holder.remarksInputEd.setText(purchase.getRemarksInput());
+        holder.numberUnit.setText(purchase.getUnit());
 
         if (canReply && purchase.isCanInput()) {
             holder.dateEd.setTag(position);

+ 42 - 7
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/model/Purchase.java

@@ -9,14 +9,49 @@ public class Purchase {
     private boolean canInput;
     private String customer;
     private String address;
-    private  String code;
-    private  String time;
-    private  String remarks;
-    private  String total;
-    private  String date;
-    private  String number;
-    private  String remarksInput;
+    private String code;
+    private String time;
+    private String remarks;
+    private String total;
+    private String date;
+    private String number;
+    private String remarksInput;
+    private String amount;//单价
+    private String currency;//币种
+    private String unit;//单位
+    private String price;//单位
 
+    public String getPrice() {
+        return price;
+    }
+
+    public void setPrice(String price) {
+        this.price = price;
+    }
+
+    public String getUnit() {
+        return unit==null?"PCS":unit;
+    }
+
+    public void setUnit(String unit) {
+        this.unit = unit;
+    }
+
+    public String getCurrency() {
+        return currency==null?"":currency;
+    }
+
+    public void setCurrency(String currency) {
+        this.currency = currency;
+    }
+
+    public String getAmount() {
+        return amount==null?"0":amount;
+    }
+
+    public void setAmount(String amount) {
+        this.amount = amount;
+    }
 
     public boolean isCanInput() {
         return canInput;

+ 8 - 6
app_modular/appworks/src/main/java/com/uas/appworks/activity/B2BBusinessMainActivity.java

@@ -175,8 +175,9 @@ public class B2BBusinessMainActivity extends BaseMVPActivity<WorkPlatPresenter>
                 mSelectPosition = i;
                 Intent intent = new Intent();
                 intent.setClass(mContext, PurchaseDetailsActivity.class);
-                intent.putExtra(Constants.FLAG.KEY_PURCHASE_ID, mPurchaseOrderBeans.get(i).getId());
-                intent.putExtra(Constants.FLAG.KEY_PURCHASE_STATUS, mPurchaseOrderBeans.get(i).getBillState());
+                intent.putExtra(Constants.FLAG.EXTRA_B2B_LIST_ID, mPurchaseOrderBeans.get(i).getId());
+                intent.putExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE, mPurchaseOrderBeans.get(i).getBillState());
+                intent.putExtra(Constants.FLAG.EXTRA_B2B_LIST_JSON, mPurchaseOrderBeans.get(i).getJsonData());
                 startActivityForResult(intent, REQUEST_PURCHASE_DETAIL);
             }
         });
@@ -213,7 +214,7 @@ public class B2BBusinessMainActivity extends BaseMVPActivity<WorkPlatPresenter>
                     params.put("user_tel", MyApplication.getInstance().mLoginUser.getTelephone());
                     params.put("id", mPublicInquiryBeans.get(position).getId());
 
-                    HttpRequest.getInstance().sendRequest("http://218.17.158.219:24000/",
+                    HttpRequest.getInstance().sendRequest("http://192.168.253.192:8080/",
                             new HttpParams.Builder()
                                     .url("inquiry/sale/quote")
                                     .method(Method.GET)
@@ -286,7 +287,7 @@ public class B2BBusinessMainActivity extends BaseMVPActivity<WorkPlatPresenter>
                 url = "mobile/sale/inquiry/info/search";
                 break;
             case OBTAIN_PUBLIC_INQUIRY_LIST:
-                host = "http://218.17.158.219:24000/";
+                host = "http://192.168.253.192:8080/";
                 url = "inquiry/public/mobile";
                 break;
         }
@@ -329,7 +330,7 @@ public class B2BBusinessMainActivity extends BaseMVPActivity<WorkPlatPresenter>
         super.onActivityResult(requestCode, resultCode, data);
         if (requestCode == REQUEST_PURCHASE_DETAIL
                 && resultCode == Constants.FLAG.RESULT_PURCHASE_ORDER && data != null) {
-            String purchaseStatus = data.getStringExtra(Constants.FLAG.KEY_PURCHASE_STATUS);
+            String purchaseStatus = data.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE);
             B2BBusinessListBean b2BBusinessListBean = mPurchaseOrderBeans.get(mSelectPosition);
             if (b2BBusinessListBean != null) {
                 b2BBusinessListBean.setBillState(purchaseStatus);
@@ -536,7 +537,8 @@ public class B2BBusinessMainActivity extends BaseMVPActivity<WorkPlatPresenter>
                     b2BBusinessListBean.setBillDate(DateFormatUtil.long2Str(date, DateFormatUtil.YMD));
                 }
                 b2BBusinessListBean.setBillNum(JSONUtil.getText(contentObject, "code"));
-                b2BBusinessListBean.setMaterialNum("ddd");
+                b2BBusinessListBean.setCurrency(JSONUtil.getText(contentObject, "currency"));
+
                 JSONArray orderItems = contentObject.getJSONArray("orderItems");
                 if (orderItems == null || orderItems.size() == 0) {
                     b2BBusinessListBean.setMoney("0");

+ 34 - 19
app_modular/appworks/src/main/java/com/uas/appworks/activity/CustomerInquiryDetailActivity.java

@@ -1,6 +1,7 @@
 package com.uas.appworks.activity;
 
 import android.content.Intent;
+import android.os.Handler;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.text.TextUtils;
@@ -47,6 +48,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
 
     private RecyclerView mDataRecyclerView, mQuoteRecyclerView;
     private ImageView mAddImageView;
+    private View mAddLine;
     private Button mQuoteButton;
     private B2BDetailListAdapter mB2BDetailListAdapter;
     private List<B2BDetailListBean> mB2BDetailListBeans;
@@ -63,11 +65,11 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
 
     @Override
     protected void initView() {
-        mEnuu = CommonUtil.getSharedPreferences(mContext, Constants.CACHE.B2B_BUSINESS_ENUU);
 
         mDataRecyclerView = $(R.id.customer_inquiry_detail_data_rv);
         mQuoteRecyclerView = $(R.id.customer_inquiry_detail_quote_rv);
         mAddImageView = $(R.id.customer_inquiry_detail_add_iv);
+        mAddLine = $(R.id.customer_inquiry_detail_add_line);
         mQuoteButton = $(R.id.customer_inquiry_detail_quote_btn);
 
         mDataRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
@@ -88,6 +90,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
             mId = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_ID);
             mState = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE);
             mJson = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_JSON);
+            mEnuu = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_ENUU);
 
             if (mState != null) {
                 switch (mState) {
@@ -104,6 +107,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
                             String overdue = JSONUtil.getText(inquiryObject, "overdue");
                             if (!"1".equals(checked) || "0".equals(overdue)) {
                                 initEditable(true, View.VISIBLE);
+                                mQuoteButton.setText(R.string.modify_quote_price);
                             } else {
                                 initEditable(false, View.GONE);
                             }
@@ -141,12 +145,18 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
                 }
             }
         }
+
+        if (TextUtils.isEmpty(mEnuu)) {
+            mEnuu = CommonUtil.getSharedPreferences(mContext, Constants.CACHE.B2B_BUSINESS_ENUU);
+        }
     }
 
     private void initEditable(boolean editable, int visible) {
         mB2BDetailListAdapter.setEditable(editable);
         mB2BQuotePriceAdapter.setEditable(editable);
-        mAddImageView.setEnabled(editable);
+
+        mAddImageView.setVisibility(visible);
+        mAddLine.setVisibility(visible);
 
         mQuoteButton.setVisibility(visible);
     }
@@ -180,7 +190,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
             String url = "mobile/sale/inquiry/" + mId + "/info";
             int flag = CUSTOMER_INQUIRY_DETAIL;
             if (Constants.FLAG.STATE_PUBLIC_INQUIRY_TODO.equals(mState)) {
-                host = "http://218.17.158.219:24000/";
+                host = "http://192.168.253.192:8080/";
                 url = "inquiry/sale/publicInquiry/detail";
                 flag = PUBLIC_INQUIRY_DETAIL;
             }
@@ -223,8 +233,8 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
                 String title = JSONUtil.getText(productObject, "title");
                 String spec = JSONUtil.getText(productObject, "spec");
                 String code = JSONUtil.getText(productObject, "code");
-                material = title + (TextUtils.isEmpty(spec) ? "" : (",\n" + spec)
-                        + (TextUtils.isEmpty(code) ? "" : (",\n" + code)));//物料
+                material = code + (TextUtils.isEmpty(title) ? "" : (",\n" + title)
+                        + (TextUtils.isEmpty(spec) ? "" : (",\n" + spec)));//物料
             }
 
             String currency = JSONUtil.getText(detailObject, "currency");//币别
@@ -263,7 +273,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
                     mB2BQuotePriceBeans.add(createB2BQuotePriceBean(id, amount, price));
                 }
             } else {
-                mB2BQuotePriceBeans.add(createB2BQuotePriceBean(0, "", ""));
+                mB2BQuotePriceBeans.add(createB2BQuotePriceBean(0, "0", ""));
             }
             mB2BQuotePriceAdapter.notifyDataSetChanged();
         }
@@ -368,7 +378,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
             String host = "http://192.168.253.102:8090/platform-b2b/";
             if (Constants.FLAG.STATE_PUBLIC_INQUIRY_TODO.equals(mState)) {
                 url = "inquiry/sale/mobile/quote";
-                host = "http://218.17.158.219:24000/";
+                host = "http://192.168.253.192:8080/";
             }
             HttpRequest.getInstance().sendRequest(host
                     , new HttpParams.Builder()
@@ -382,6 +392,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
 
     @Override
     public void onSuccess(int flag, Object o) {
+        hideLoading();
         String result = o.toString();
         LogUtil.prinlnLongMsg("customerdetailsuccess", result);
         if (flag == CUSTOMER_INQUIRY_REPLY) {
@@ -399,7 +410,15 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
                 setResult(Constants.FLAG.RESULT_CUSTOMER_INQUIRY);
             }
 
-            Map<String, Object> params = new HashMap<>();
+            initEditable(false, View.GONE);
+            new Handler().postDelayed(new Runnable() {
+                @Override
+                public void run() {
+                    finish();
+                }
+            }, 1000);
+
+            /*Map<String, Object> params = new HashMap<>();
             params.put("en_uu", mEnuu);
             params.put("user_tel", MyApplication.getInstance().mLoginUser.getTelephone());
             if (Constants.FLAG.STATE_PUBLIC_INQUIRY_TODO.equals(mState)) {
@@ -412,7 +431,7 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
             String host = "http://192.168.253.102:8090/platform-b2b/";
             if (Constants.FLAG.STATE_PUBLIC_INQUIRY_TODO.equals(mState)) {
                 url = "inquiry/sale/inquiry/detail";
-                host = "http://218.17.158.219:24000/";
+                host = "http://192.168.253.192:8080/";
             }
             HttpRequest.getInstance().sendRequest(host
                     , new HttpParams.Builder()
@@ -420,23 +439,20 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
                             .method(Method.GET)
                             .flag(CUSTOMER_INQUIRY_DETAIL)
                             .setHeaders(new HashMap<String, Object>())
-                            .setParams(params).build(), this);
+                            .setParams(params).build(), this);*/
         } else if (flag == CUSTOMER_INQUIRY_DETAIL) {
-            hideLoading();
 
             if (result != null && JSONUtil.validate(result)
                     && (Constants.FLAG.STATE_CUSTOMER_INQUIRY_TODO.equals(mState)
-                    || Constants.FLAG.STATE_CUSTOMER_INQUIRY_DONE.equals(mState)
-                    || Constants.FLAG.STATE_PUBLIC_INQUIRY_TODO.equals(mState))) {
+                    || Constants.FLAG.STATE_CUSTOMER_INQUIRY_DONE.equals(mState))) {
                 JSONObject contentObject = JSON.parseObject(result);
                 JSONObject inquiryObject = contentObject.getJSONObject("inquiry");
                 String checked = JSONUtil.getText(inquiryObject, "checked");
-                long endDate = inquiryObject.getLongValue("endDate");
-                long currentDate = System.currentTimeMillis();
-                if ("1".equals(checked) || currentDate > endDate) {
-                    initEditable(false, View.GONE);
-                } else {
+                String overdue = JSONUtil.getText(inquiryObject, "overdue");
+                if (!"1".equals(checked) || "0".equals(overdue)) {
                     initEditable(true, View.VISIBLE);
+                } else {
+                    initEditable(false, View.GONE);
                 }
             } else {
                 initEditable(false, View.GONE);
@@ -444,7 +460,6 @@ public class CustomerInquiryDetailActivity extends BaseMVPActivity<WorkPlatPrese
             initDetailData(result);
 
         } else if (flag == PUBLIC_INQUIRY_DETAIL) {
-            hideLoading();
 
             initEditable(true, View.VISIBLE);
             initDetailData(result);

+ 25 - 12
app_modular/appworks/src/main/java/com/uas/appworks/activity/CustomerInquiryListActivity.java

@@ -3,6 +3,7 @@ package com.uas.appworks.activity;
 import android.support.v4.app.Fragment;
 import android.support.v4.view.ViewPager;
 import android.support.v7.app.ActionBar;
+import android.text.TextUtils;
 
 import com.core.app.Constants;
 import com.core.base.activity.BaseMVPActivity;
@@ -37,6 +38,7 @@ public class CustomerInquiryListActivity extends BaseMVPActivity<WorkPlatPresent
     private SearchActionView mSearchActionView;
 
     private B2BBusinessListFragment mAllFragment, mWaitQuotedFragment, mQuotedPriceFragment, mQuotationAdoptedFragment, mInvalidFragment;
+    private String mKeyWord;
 
     @Override
     protected int getLayout() {
@@ -106,12 +108,8 @@ public class CustomerInquiryListActivity extends BaseMVPActivity<WorkPlatPresent
             @Override
             public void onEnterAction() {
                 if (CommonUtil.isNetWorkConnected(mContext)) {
-                    String text = mSearchActionView.getText();
-                    mAllFragment.getListData(1, text);
-                    mWaitQuotedFragment.getListData(1, text);
-                    mQuotedPriceFragment.getListData(1, text);
-                    mQuotationAdoptedFragment.getListData(1, text);
-                    mInvalidFragment.getListData(1, text);
+                    mKeyWord = mSearchActionView.getText();
+                    obtainListData();
                 } else {
                     toast(R.string.networks_out);
                 }
@@ -122,18 +120,33 @@ public class CustomerInquiryListActivity extends BaseMVPActivity<WorkPlatPresent
             @Override
             public void onVoiceComplete() {
                 if (CommonUtil.isNetWorkConnected(mContext)) {
-                    String text = mSearchActionView.getText();
-                    mAllFragment.getListData(1, text);
-                    mWaitQuotedFragment.getListData(1, text);
-                    mQuotedPriceFragment.getListData(1, text);
-                    mQuotationAdoptedFragment.getListData(1, text);
-                    mInvalidFragment.getListData(1, text);
+                    mKeyWord = mSearchActionView.getText();
+                    obtainListData();
                 } else {
                     toast(R.string.networks_out);
                 }
             }
         });
 
+        mSearchActionView.setOnTextChangedListener(new SearchActionView.OnTextChangedListener() {
+            @Override
+            public void onTextChanged(String text) {
+                if (TextUtils.isEmpty(text) && !TextUtils.isEmpty(mKeyWord)) {
+                    if (CommonUtil.isNetWorkConnected(mContext)) {
+                        mKeyWord = "";
+                        obtainListData();
+                    }
+                }
+            }
+        });
+    }
+
+    private void obtainListData() {
+        mAllFragment.getListData(1, mKeyWord);
+        mWaitQuotedFragment.getListData(1, mKeyWord);
+        mQuotedPriceFragment.getListData(1, mKeyWord);
+        mQuotationAdoptedFragment.getListData(1, mKeyWord);
+        mInvalidFragment.getListData(1, mKeyWord);
     }
 
     @Override

+ 61 - 4
app_modular/appworks/src/main/java/com/uas/appworks/activity/PublicInquiryDetailActivity.java

@@ -4,8 +4,11 @@ import android.Manifest;
 import android.content.Intent;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
+import android.text.TextUtils;
+import android.widget.TextView;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.common.LogUtil;
 import com.common.data.DateFormatUtil;
@@ -25,8 +28,10 @@ import com.me.network.app.http.HttpRequest;
 import com.me.network.app.http.Method;
 import com.uas.appworks.R;
 import com.uas.appworks.adapter.B2BDetailListAdapter;
+import com.uas.appworks.adapter.B2BQuotePriceAdapter;
 import com.uas.appworks.model.bean.B2BAttachBean;
 import com.uas.appworks.model.bean.B2BDetailListBean;
+import com.uas.appworks.model.bean.B2BQuotePriceBean;
 import com.uas.appworks.presenter.WorkPlatPresenter;
 
 import java.io.File;
@@ -44,9 +49,12 @@ import java.util.Map;
 public class PublicInquiryDetailActivity extends BaseMVPActivity<WorkPlatPresenter> implements HttpCallback {
     private final int PUBLIC_INQUIRY_DETAIL = 0x16;
 
-    private RecyclerView mInquiryRecyclerView, mMaterialRecyclerView;
+    private RecyclerView mInquiryRecyclerView, mMaterialRecyclerView, mQuoteRecyclerView;
+    private TextView mLeadTimeTextView, mMinOrderTextView, mMinPackTextView;
     private List<B2BDetailListBean> mInquiryListBeans, mMaterialListBeans;
     private B2BDetailListAdapter mInquiryListAdapter, mMaterialListAdapter;
+    private B2BQuotePriceAdapter mB2BQuotePriceAdapter;
+    private List<B2BQuotePriceBean> mB2BQuotePriceBeans;
 
     private String mId, mState, mJson;
     private String mEnuu;
@@ -60,15 +68,19 @@ public class PublicInquiryDetailActivity extends BaseMVPActivity<WorkPlatPresent
     protected void initView() {
         getSupportActionBar().setTitle(R.string.title_quoted_price);
 
-        mEnuu = CommonUtil.getSharedPreferences(mContext, Constants.CACHE.B2B_BUSINESS_ENUU);
-
         mInquiryRecyclerView = $(R.id.public_inquiry_detail_inquiry_information_rv);
         mMaterialRecyclerView = $(R.id.public_inquiry_detail_material_information_rv);
+        mQuoteRecyclerView = $(R.id.public_inquiry_detail_quote_rv);
+        mLeadTimeTextView = $(R.id.public_inquiry_detail_leadtime_tv);
+        mMinOrderTextView = $(R.id.public_inquiry_detail_min_order_tv);
+        mMinPackTextView = $(R.id.public_inquiry_detail_min_pack_tv);
 
         mInquiryRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
         mInquiryRecyclerView.setNestedScrollingEnabled(false);
         mMaterialRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
         mMaterialRecyclerView.setNestedScrollingEnabled(false);
+        mQuoteRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
+        mQuoteRecyclerView.setNestedScrollingEnabled(false);
 
         mInquiryListBeans = new ArrayList<>();
         mInquiryListAdapter = new B2BDetailListAdapter(mContext, mInquiryListBeans);
@@ -78,11 +90,21 @@ public class PublicInquiryDetailActivity extends BaseMVPActivity<WorkPlatPresent
         mMaterialListAdapter = new B2BDetailListAdapter(mContext, mMaterialListBeans);
         mMaterialRecyclerView.setAdapter(mMaterialListAdapter);
 
+        mB2BQuotePriceBeans = new ArrayList<>();
+        mB2BQuotePriceAdapter = new B2BQuotePriceAdapter(mContext, mB2BQuotePriceBeans);
+        mB2BQuotePriceAdapter.setEditable(false);
+        mQuoteRecyclerView.setAdapter(mB2BQuotePriceAdapter);
+
         Intent intent = getIntent();
         if (intent != null) {
             mId = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_ID);
             mState = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE);
             mJson = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_JSON);
+            mEnuu = intent.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_ENUU);
+        }
+
+        if (TextUtils.isEmpty(mEnuu)) {
+            mEnuu = CommonUtil.getSharedPreferences(mContext, Constants.CACHE.B2B_BUSINESS_ENUU);
         }
     }
 
@@ -108,7 +130,7 @@ public class PublicInquiryDetailActivity extends BaseMVPActivity<WorkPlatPresent
             params.put("user_tel", MyApplication.getInstance().mLoginUser.getTelephone());
             params.put("id", mId);
 
-            HttpRequest.getInstance().sendRequest("http://218.17.158.219:24000/",
+            HttpRequest.getInstance().sendRequest("http://192.168.253.192:8080/",
                     new HttpParams.Builder()
                             .url("inquiry/sale/publicInquiry/detail")
                             .flag(PUBLIC_INQUIRY_DETAIL)
@@ -127,6 +149,8 @@ public class PublicInquiryDetailActivity extends BaseMVPActivity<WorkPlatPresent
         String inquiryId = "", inquiryCompany = "", phone = "", contact = "", enddate = "", attachs = "", model = "", brand = "", spec = "", material = "", unit = "", amount = "";
 
         amount = JSONUtil.getText(contentObject, "needquantity");
+        contact = JSONUtil.getText(contentObject, "userName");
+        phone = JSONUtil.getText(contentObject, "userTel");
         if (productObject != null) {
             model = JSONUtil.getText(productObject, "cmpCode");
             brand = JSONUtil.getText(productObject, "brand");
@@ -192,6 +216,29 @@ public class PublicInquiryDetailActivity extends BaseMVPActivity<WorkPlatPresent
         mMaterialListBeans.add(createB2BDetailListBean(B2BDetailListBean.TYPE_DETAIL_TEXT_WHITE, getString(R.string.public_inquiry_amount), amount, "", "数量", ""));
 
         mMaterialListAdapter.notifyDataSetChanged();
+
+        String leadtime = JSONUtil.getText(contentObject, "leadtime");//交货周期
+        String minOrderQty = JSONUtil.getText(contentObject, "minOrderQty");//最小起订
+        String minPackQty = JSONUtil.getText(contentObject, "minPackQty");//最小包装
+
+        mLeadTimeTextView.setText(leadtime);
+        mMinOrderTextView.setText(minOrderQty);
+        mMinPackTextView.setText(minPackQty);
+
+        JSONArray replies = contentObject.getJSONArray("replies");
+        if (replies != null && replies.size() > 0) {
+            for (int i = 0; i < replies.size(); i++) {
+                JSONObject replyObject = replies.getJSONObject(i);
+                long id = JSONUtil.getLong(replyObject, "id");
+                String lapQty = JSONUtil.getText(replyObject, "lapQty");
+                String price = JSONUtil.getText(replyObject, "price");
+
+                mB2BQuotePriceBeans.add(createB2BQuotePriceBean(id, lapQty, price));
+            }
+        } else {
+            mB2BQuotePriceBeans.add(createB2BQuotePriceBean(0, "0", ""));
+        }
+        mB2BQuotePriceAdapter.notifyDataSetChanged();
     }
 
     private B2BDetailListBean createB2BDetailListBean(int itemType,
@@ -212,6 +259,16 @@ public class PublicInquiryDetailActivity extends BaseMVPActivity<WorkPlatPresent
         return b2BDetailListBean;
     }
 
+    private B2BQuotePriceBean createB2BQuotePriceBean(long id, String amount, String price) {
+        B2BQuotePriceBean b2BQuotePriceBean = new B2BQuotePriceBean();
+
+        b2BQuotePriceBean.setId(id);
+        b2BQuotePriceBean.setAmount(amount);
+        b2BQuotePriceBean.setPrice(price);
+
+        return b2BQuotePriceBean;
+    }
+
     @Override
     public void showLoading(String loadStr) {
         progressDialog.show();

+ 23 - 6
app_modular/appworks/src/main/java/com/uas/appworks/activity/PublicInquiryListActivity.java

@@ -3,6 +3,7 @@ package com.uas.appworks.activity;
 import android.support.v4.app.Fragment;
 import android.support.v4.view.ViewPager;
 import android.support.v7.app.ActionBar;
+import android.text.TextUtils;
 
 import com.core.base.activity.BaseMVPActivity;
 import com.core.utils.CommonUtil;
@@ -35,6 +36,7 @@ public class PublicInquiryListActivity extends BaseMVPActivity<WorkPlatPresenter
     private SearchActionView mSearchActionView;
 
     private B2BBusinessListFragment mAllFragment, mDoneFragment;
+    private String mKeyWord;
 
     @Override
     protected int getLayout() {
@@ -89,9 +91,8 @@ public class PublicInquiryListActivity extends BaseMVPActivity<WorkPlatPresenter
             @Override
             public void onEnterAction() {
                 if (CommonUtil.isNetWorkConnected(mContext)) {
-                    String text = mSearchActionView.getText();
-                    mAllFragment.getListData(1, text);
-                    mDoneFragment.getListData(1, text);
+                    mKeyWord = mSearchActionView.getText();
+                    obtainListData();
                 } else {
                     toast(R.string.networks_out);
                 }
@@ -102,14 +103,30 @@ public class PublicInquiryListActivity extends BaseMVPActivity<WorkPlatPresenter
             @Override
             public void onVoiceComplete() {
                 if (CommonUtil.isNetWorkConnected(mContext)) {
-                    String text = mSearchActionView.getText();
-                    mAllFragment.getListData(1, text);
-                    mDoneFragment.getListData(1, text);
+                    mKeyWord = mSearchActionView.getText();
+                    obtainListData();
                 } else {
                     toast(R.string.networks_out);
                 }
             }
         });
+
+        mSearchActionView.setOnTextChangedListener(new SearchActionView.OnTextChangedListener() {
+            @Override
+            public void onTextChanged(String text) {
+                if (TextUtils.isEmpty(text) && !TextUtils.isEmpty(mKeyWord)) {
+                    if (CommonUtil.isNetWorkConnected(mContext)) {
+                        mKeyWord = "";
+                        obtainListData();
+                    }
+                }
+            }
+        });
+    }
+
+    private void obtainListData() {
+        mAllFragment.getListData(1, mKeyWord);
+        mDoneFragment.getListData(1, mKeyWord);
     }
 
     @Override

+ 25 - 10
app_modular/appworks/src/main/java/com/uas/appworks/activity/PurchaseOrderListActivity.java

@@ -3,6 +3,7 @@ package com.uas.appworks.activity;
 import android.support.v4.app.Fragment;
 import android.support.v4.view.ViewPager;
 import android.support.v7.app.ActionBar;
+import android.text.TextUtils;
 
 import com.core.app.Constants;
 import com.core.base.activity.BaseMVPActivity;
@@ -36,6 +37,7 @@ public class PurchaseOrderListActivity extends BaseMVPActivity {
     private SearchActionView mSearchActionView;
 
     private B2BBusinessListFragment mAllFragment, mRepliedFragment, mWaitReplyFragment, mSettledFragment;
+    private String mKeyWord;
 
     @Override
     protected int getLayout() {
@@ -100,11 +102,8 @@ public class PurchaseOrderListActivity extends BaseMVPActivity {
             @Override
             public void onEnterAction() {
                 if (CommonUtil.isNetWorkConnected(mContext)) {
-                    String text = mSearchActionView.getText();
-                    mAllFragment.getListData(1, text);
-                    mRepliedFragment.getListData(1, text);
-                    mWaitReplyFragment.getListData(1, text);
-                    mSettledFragment.getListData(1, text);
+                    mKeyWord = mSearchActionView.getText();
+                    obtainListData();
                 } else {
                     toast(R.string.networks_out);
                 }
@@ -115,17 +114,33 @@ public class PurchaseOrderListActivity extends BaseMVPActivity {
             @Override
             public void onVoiceComplete() {
                 if (CommonUtil.isNetWorkConnected(mContext)) {
-                    String text = mSearchActionView.getText();
-                    mAllFragment.getListData(1, text);
-                    mRepliedFragment.getListData(1, text);
-                    mWaitReplyFragment.getListData(1, text);
-                    mSettledFragment.getListData(1, text);
+                    mKeyWord = mSearchActionView.getText();
+                    obtainListData();
                 } else {
                     toast(R.string.networks_out);
                 }
             }
         });
 
+        mSearchActionView.setOnTextChangedListener(new SearchActionView.OnTextChangedListener() {
+            @Override
+            public void onTextChanged(String text) {
+                if (TextUtils.isEmpty(text) && !TextUtils.isEmpty(mKeyWord)) {
+                    if (CommonUtil.isNetWorkConnected(mContext)) {
+                        mKeyWord = "";
+                        obtainListData();
+                    }
+                }
+            }
+        });
+
+    }
+
+    private void obtainListData() {
+        mAllFragment.getListData(1, mKeyWord);
+        mRepliedFragment.getListData(1, mKeyWord);
+        mWaitReplyFragment.getListData(1, mKeyWord);
+        mSettledFragment.getListData(1, mKeyWord);
     }
 
     @Override

+ 8 - 0
app_modular/appworks/src/main/java/com/uas/appworks/adapter/B2BQuotePriceAdapter.java

@@ -75,6 +75,9 @@ public class B2BQuotePriceAdapter extends RecyclerView.Adapter<B2BQuotePriceAdap
             holder.mAmountTextView.setVisibility(View.GONE);
             holder.mPriceTextView.setVisibility(View.GONE);
 
+            holder.mDeleteImageView.setVisibility(View.VISIBLE);
+            holder.mDeleteLine.setVisibility(View.VISIBLE);
+
             if (holder.mAmountEditText.getTag() instanceof TextWatcher) {
                 holder.mAmountEditText.removeTextChangedListener((TextWatcher) holder.mAmountEditText.getTag());
             }
@@ -143,6 +146,9 @@ public class B2BQuotePriceAdapter extends RecyclerView.Adapter<B2BQuotePriceAdap
             holder.mAmountTextView.setVisibility(View.VISIBLE);
             holder.mPriceTextView.setVisibility(View.VISIBLE);
 
+            holder.mDeleteImageView.setVisibility(View.GONE);
+            holder.mDeleteLine.setVisibility(View.GONE);
+
             holder.mAmountTextView.setText(b2BQuotePriceBean.getAmount());
             holder.mPriceTextView.setText(b2BQuotePriceBean.getPrice());
 
@@ -162,6 +168,7 @@ public class B2BQuotePriceAdapter extends RecyclerView.Adapter<B2BQuotePriceAdap
         private EditText mAmountEditText, mPriceEditText;
         private ImageView mDeleteImageView;
         private TextView mAmountTextView, mPriceTextView;
+        private View mDeleteLine;
 
         public QuotePriceViewHolder(View itemView) {
             super(itemView);
@@ -171,6 +178,7 @@ public class B2BQuotePriceAdapter extends RecyclerView.Adapter<B2BQuotePriceAdap
             mDeleteImageView = (ImageView) itemView.findViewById(R.id.list_subsection_quotation_delete_iv);
             mAmountTextView = (TextView) itemView.findViewById(R.id.list_subsection_quotation_amount_tv);
             mPriceTextView = (TextView) itemView.findViewById(R.id.list_subsection_quotation_price_tv);
+            mDeleteLine = itemView.findViewById(R.id.list_subsection_quotation_delete_line);
         }
     }
 }

+ 2 - 1
app_modular/appworks/src/main/java/com/uas/appworks/adapter/B2bBusinessListAdapter.java

@@ -132,7 +132,8 @@ public class B2bBusinessListAdapter extends BaseMultiItemQuickAdapter<B2BBusines
         holder.setText(R.id.list_purchase_order_company_tv, b2BBusinessListBean.getCompanyName());
         holder.setText(R.id.list_purchase_order_bill_date_tv, b2BBusinessListBean.getBillDate());
         holder.setText(R.id.list_purchase_order_bill_num_tv, b2BBusinessListBean.getBillNum());
-        holder.setText(R.id.list_purchase_order_money_tv, "¥" + b2BBusinessListBean.getMoney());
+        holder.setText(R.id.list_purchase_order_currency_tv, b2BBusinessListBean.getCurrency());
+        holder.setText(R.id.list_purchase_order_money_tv, b2BBusinessListBean.getMoney());
 
         String billState = b2BBusinessListBean.getBillState();
         if (billState != null) {

+ 7 - 5
app_modular/appworks/src/main/java/com/uas/appworks/fragment/B2BBusinessListFragment.java

@@ -134,8 +134,9 @@ public class B2BBusinessListFragment extends BaseMVPFragment<WorkPlatPresenter>
                     case B2BBusinessListBean.PURCHASE_ORDER_LIST:
                         intent = new Intent();
                         intent.setClass(mContext, PurchaseDetailsActivity.class);
-                        intent.putExtra(Constants.FLAG.KEY_PURCHASE_ID, mB2BBusinessListBeans.get(position).getId());
-                        intent.putExtra(Constants.FLAG.KEY_PURCHASE_STATUS, mB2BBusinessListBeans.get(position).getBillState());
+                        intent.putExtra(Constants.FLAG.EXTRA_B2B_LIST_ID, mB2BBusinessListBeans.get(position).getId());
+                        intent.putExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE, mB2BBusinessListBeans.get(position).getBillState());
+                        intent.putExtra(Constants.FLAG.EXTRA_B2B_LIST_JSON, mB2BBusinessListBeans.get(position).getJsonData());
                         startActivityForResult(intent, REQUEST_PURCHASE_DETAIL);
                         break;
                     case B2BBusinessListBean.CUSTOMER_INQUIRY_LIST:
@@ -163,7 +164,7 @@ public class B2BBusinessListFragment extends BaseMVPFragment<WorkPlatPresenter>
                             params.put("user_tel", MyApplication.getInstance().mLoginUser.getTelephone());
                             params.put("id", data.get(position).getId());
 
-                            HttpRequest.getInstance().sendRequest("http://218.17.158.219:24000/",
+                            HttpRequest.getInstance().sendRequest("http://192.168.253.192:8080/",
                                     new HttpParams.Builder()
                                             .url("inquiry/sale/quote")
                                             .flag(INQUIRY_SALE_QUOTE)
@@ -261,7 +262,7 @@ public class B2BBusinessListFragment extends BaseMVPFragment<WorkPlatPresenter>
 
         String host = "http://192.168.253.102:8090/platform-b2b/";
         if (mListType == B2BBusinessListBean.PUBLIC_INQUIRY_LIST) {
-            host = "http://218.17.158.219:24000/";
+            host = "http://192.168.253.192:8080/";
         }
         HttpRequest.getInstance().sendRequest(host,
                 new HttpParams.Builder()
@@ -298,7 +299,7 @@ public class B2BBusinessListFragment extends BaseMVPFragment<WorkPlatPresenter>
         if (b2BBusinessListBean != null) {
             if (requestCode == REQUEST_PURCHASE_DETAIL
                     && resultCode == Constants.FLAG.RESULT_PURCHASE_ORDER && data != null) {
-                String purchaseStatus = data.getStringExtra(Constants.FLAG.KEY_PURCHASE_STATUS);
+                String purchaseStatus = data.getStringExtra(Constants.FLAG.EXTRA_B2B_LIST_STATE);
                 if (!TextUtils.isEmpty(mListState) && Constants.FLAG.STATE_PURCHASE_ORDER_TODO.equals(mListState)) {
                     if (!Constants.FLAG.STATE_PURCHASE_ORDER_TODO.equals(purchaseStatus)) {
                         mB2BBusinessListBeans.remove(mSelectPosition);
@@ -507,6 +508,7 @@ public class B2BBusinessListFragment extends BaseMVPFragment<WorkPlatPresenter>
                     b2BBusinessListBean.setBillDate(DateFormatUtil.long2Str(date, DateFormatUtil.YMD));
                 }
                 b2BBusinessListBean.setBillNum(JSONUtil.getText(contentObject, "code"));
+                b2BBusinessListBean.setCurrency(JSONUtil.getText(contentObject, "currency"));
 
                 JSONArray orderItems = contentObject.getJSONArray("orderItems");
                 if (orderItems == null || orderItems.size() == 0) {

+ 9 - 0
app_modular/appworks/src/main/java/com/uas/appworks/model/bean/B2BBusinessListBean.java

@@ -21,6 +21,7 @@ public class B2BBusinessListBean implements MultiItemEntity {
     private String mMaterialNum;//物料编号
     private String mMaterialName;//物料名称
     private String mMaterialSpec;//物料规格
+    private String mCurrency;//币种
     private String mMoney;//金额
     private String mBillState;//单据状态
     private String mExpiryDate;//截止日期
@@ -96,6 +97,14 @@ public class B2BBusinessListBean implements MultiItemEntity {
         mMaterialSpec = materialSpec;
     }
 
+    public String getCurrency() {
+        return mCurrency;
+    }
+
+    public void setCurrency(String currency) {
+        mCurrency = currency;
+    }
+
     public String getMoney() {
         return mMoney;
     }

+ 1 - 0
app_modular/appworks/src/main/res/layout/activity_customer_inquiry_detail.xml

@@ -89,6 +89,7 @@
                     android:src="@drawable/ic_b2b_add" />
 
                 <View
+                    android:id="@+id/customer_inquiry_detail_add_line"
                     style="@style/expense_table_v_1dp"
                     />
             </LinearLayout>

+ 240 - 41
app_modular/appworks/src/main/res/layout/activity_public_inquiry_detail.xml

@@ -1,49 +1,248 @@
 <?xml version="1.0" encoding="utf-8"?>
-<LinearLayout
+<android.support.v4.widget.NestedScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="vertical">
+    android:layout_height="match_parent">
 
-    <TextView
+    <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:background="@color/b2b_tab_bg"
-        android:paddingLeft="12dp"
-        android:paddingTop="8dp"
-        android:paddingBottom="8dp"
-        android:text="@string/str_inquiry_information"
-        android:textColor="@color/black"
-        android:textSize="16sp" />
-
-    <android.support.v7.widget.RecyclerView
-        android:id="@+id/public_inquiry_detail_inquiry_information_rv"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:overScrollMode="never"
-        android:scrollbars="none" />
+        android:layout_height="match_parent"
+        android:focusable="true"
+        android:focusableInTouchMode="true"
+        android:orientation="vertical">
 
-    <View
-        android:layout_width="match_parent"
-        android:layout_height="8dp"
-        android:background="@color/gray_light" />
+        <TextView
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:background="@color/b2b_tab_bg"
+            android:paddingBottom="8dp"
+            android:paddingLeft="12dp"
+            android:paddingTop="8dp"
+            android:text="@string/str_inquiry_information"
+            android:textColor="@color/black"
+            android:textSize="16sp" />
 
-    <TextView
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:background="@color/b2b_tab_bg"
-        android:paddingLeft="12dp"
-        android:paddingTop="8dp"
-        android:paddingBottom="8dp"
-        android:text="@string/str_material_information"
-        android:textColor="@color/black"
-        android:textSize="16sp" />
-
-    <android.support.v7.widget.RecyclerView
-        android:id="@+id/public_inquiry_detail_material_information_rv"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:overScrollMode="never"
-        android:scrollbars="none" />
-</LinearLayout>
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/public_inquiry_detail_inquiry_information_rv"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:overScrollMode="never"
+            android:scrollbars="none" />
+
+        <View
+            android:layout_width="match_parent"
+            android:layout_height="8dp"
+            android:background="@color/gray_light" />
+
+        <TextView
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:background="@color/b2b_tab_bg"
+            android:paddingBottom="8dp"
+            android:paddingLeft="12dp"
+            android:paddingTop="8dp"
+            android:text="@string/str_quote_information"
+            android:textColor="@color/black"
+            android:textSize="16sp" />
+
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/public_inquiry_detail_material_information_rv"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:overScrollMode="never"
+            android:scrollbars="none" />
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="42dp"
+            android:background="@color/white"
+            android:gravity="center_vertical"
+            android:orientation="horizontal"
+            android:paddingBottom="6dp"
+            android:paddingLeft="12dp"
+            android:paddingTop="6dp">
+
+            <TextView
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:text="交货周期:"
+                android:textColor="@color/black"
+                tools:textSize="14sp" />
+
+
+            <TextView
+                android:id="@+id/public_inquiry_detail_leadtime_tv"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_weight="2"
+                android:background="@drawable/shape_b2b_detail_edittext"
+                android:gravity="right|center_vertical"
+                android:paddingLeft="10dp"
+                android:paddingRight="10dp"
+                android:textSize="14sp" />
+
+            <TextView
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="6dp"
+                android:layout_weight="1"
+                android:gravity="left|center_vertical"
+                android:textSize="14sp"
+                android:text="天" />
+        </LinearLayout>
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="42dp"
+            android:background="@color/white"
+            android:gravity="center_vertical"
+            android:orientation="horizontal"
+            android:paddingBottom="6dp"
+            android:paddingLeft="12dp"
+            android:paddingTop="6dp">
+
+            <TextView
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:text="最小起订:"
+                android:textColor="@color/black"
+                tools:textSize="14sp" />
+
+
+            <TextView
+                android:id="@+id/public_inquiry_detail_min_order_tv"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_weight="2"
+                android:background="@drawable/shape_b2b_detail_edittext"
+                android:gravity="right|center_vertical"
+                android:paddingLeft="10dp"
+                android:paddingRight="10dp"
+                android:textSize="14sp" />
+
+            <TextView
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="6dp"
+                android:layout_weight="1"
+                android:gravity="left|center_vertical"
+                android:textSize="14sp"
+                android:text="PCS" />
+        </LinearLayout>
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="42dp"
+            android:background="@color/white"
+            android:gravity="center_vertical"
+            android:orientation="horizontal"
+            android:paddingBottom="6dp"
+            android:paddingLeft="12dp"
+            android:paddingTop="6dp">
+
+            <TextView
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:text="最小包装:"
+                android:textColor="@color/black"
+                tools:textSize="14sp" />
+
+
+            <TextView
+                android:id="@+id/public_inquiry_detail_min_pack_tv"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_weight="2"
+                android:background="@drawable/shape_b2b_detail_edittext"
+                android:gravity="right|center_vertical"
+                android:paddingLeft="10dp"
+                android:paddingRight="10dp"
+                android:textSize="14sp" />
+
+            <TextView
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="6dp"
+                android:layout_weight="1"
+                android:gravity="left|center_vertical"
+                android:textSize="14sp"
+                android:text="PCS" />
+        </LinearLayout>
+
+        <TextView
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:padding="12dp"
+            android:text="分段报价"
+            android:textColor="@color/black" />
+
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginLeft="12dp"
+            android:layout_marginRight="12dp"
+            android:orientation="vertical">
+
+            <View
+                style="@style/expense_table_h_1dp" />
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:orientation="horizontal">
+
+                <View
+                    style="@style/expense_table_v_1dp" />
+
+                <TextView
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center_vertical"
+                    android:layout_weight="1"
+                    android:paddingLeft="10dp"
+                    android:text="@string/str_divisions_count" />
+
+                <View
+                    style="@style/expense_table_v_1dp" />
+
+                <TextView
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center_vertical"
+                    android:layout_weight="2"
+                    android:paddingLeft="10dp"
+                    android:text="@string/str_segments_amount"
+                    />
+
+                <View
+                    style="@style/expense_table_v_1dp" />
+
+                <TextView
+                    android:layout_width="0dp"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center_vertical"
+                    android:layout_weight="2"
+                    android:paddingLeft="10dp"
+                    android:text="@string/str_segments_price"
+                    />
+
+                <View
+                    style="@style/expense_table_v_1dp" />
+
+            </LinearLayout>
+
+            <View
+                style="@style/expense_table_h_1dp" />
+        </LinearLayout>
+
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/public_inquiry_detail_quote_rv"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginBottom="20dp" />
+    </LinearLayout>
+</android.support.v4.widget.NestedScrollView>

+ 28 - 7
app_modular/appworks/src/main/res/layout/item_ls_purchase.xml

@@ -26,9 +26,9 @@
     <android.support.v7.widget.AppCompatTextView
         android:id="@+id/addressTag"
         android:layout_width="80dp"
-        android:layout_marginTop="@dimen/padding"
         android:layout_height="wrap_content"
         android:layout_below="@id/customerTv"
+        android:layout_marginTop="@dimen/padding"
         android:text="收货地址:"
         android:textColor="@color/hintColor"
         android:textSize="@dimen/text_hine" />
@@ -46,9 +46,9 @@
     <android.support.v7.widget.AppCompatTextView
         android:id="@+id/codeTag"
         android:layout_width="80dp"
-        android:layout_marginTop="@dimen/padding"
         android:layout_height="wrap_content"
         android:layout_below="@id/addressTv"
+        android:layout_marginTop="@dimen/padding"
         android:text="订单号:"
         android:textColor="@color/hintColor"
         android:textSize="@dimen/text_hine" />
@@ -66,9 +66,9 @@
     <android.support.v7.widget.AppCompatTextView
         android:id="@+id/timeTag"
         android:layout_width="80dp"
-        android:layout_marginTop="@dimen/padding"
         android:layout_height="wrap_content"
         android:layout_below="@id/codeTv"
+        android:layout_marginTop="@dimen/padding"
         android:text="单据时间:"
         android:textColor="@color/hintColor"
         android:textSize="@dimen/text_hine" />
@@ -86,9 +86,9 @@
     <android.support.v7.widget.AppCompatTextView
         android:id="@+id/remarksTag"
         android:layout_width="80dp"
-        android:layout_marginTop="@dimen/padding"
         android:layout_height="wrap_content"
         android:layout_below="@id/timeTv"
+        android:layout_marginTop="@dimen/padding"
         android:text="备注:"
         android:textColor="@color/hintColor"
         android:textSize="@dimen/text_hine" />
@@ -104,12 +104,31 @@
         android:textSize="@dimen/text_hine" />
 
     <android.support.v7.widget.AppCompatTextView
-        android:id="@+id/totalTag"
-        android:layout_marginTop="@dimen/padding"
+        android:id="@+id/currencyTag"
         android:layout_width="80dp"
         android:layout_height="wrap_content"
         android:layout_below="@id/remarksTv"
-        android:text="总额:"
+        android:layout_marginTop="@dimen/padding"
+        android:text="币别:"
+        android:textColor="@color/hintColor"
+        android:textSize="@dimen/text_hine" />
+
+    <android.support.v7.widget.AppCompatTextView
+        android:id="@+id/currencyTv"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_alignTop="@id/currencyTag"
+        android:layout_toRightOf="@id/customerTag"
+        android:textColor="@color/text_main"
+        android:textSize="@dimen/text_hine" />
+
+    <android.support.v7.widget.AppCompatTextView
+        android:id="@+id/totalTag"
+        android:layout_width="80dp"
+        android:layout_height="wrap_content"
+        android:layout_below="@id/currencyTv"
+        android:layout_marginTop="@dimen/padding"
+        android:text="金额:"
         android:textColor="@color/hintColor"
         android:textSize="@dimen/text_hine" />
 
@@ -122,4 +141,6 @@
         android:text="客户:"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_hine" />
+
+
 </RelativeLayout>

+ 23 - 9
app_modular/appworks/src/main/res/layout/item_purchase.xml

@@ -39,7 +39,6 @@
         android:layout_height="wrap_content"
         android:layout_alignTop="@id/remarksTag"
         android:layout_toRightOf="@id/timeTag"
-        android:text="客户:"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_hine" />
 
@@ -59,16 +58,34 @@
         android:layout_height="wrap_content"
         android:layout_alignTop="@id/totalTag"
         android:layout_toRightOf="@id/timeTag"
-        android:text="客户:"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_hine" />
 
     <android.support.v7.widget.AppCompatTextView
-        android:id="@+id/dateTag"
+        android:id="@+id/amountTag"
         android:layout_width="80dp"
         android:layout_height="wrap_content"
         android:layout_below="@id/totalTv"
         android:layout_marginTop="@dimen/padding"
+        android:text="单价:"
+        android:textColor="@color/hintColor"
+        android:textSize="@dimen/text_hine" />
+
+    <android.support.v7.widget.AppCompatTextView
+        android:id="@+id/amountTv"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_alignTop="@id/amountTag"
+        android:layout_toRightOf="@id/timeTag"
+        android:textColor="@color/text_main"
+        android:textSize="@dimen/text_hine" />
+
+    <android.support.v7.widget.AppCompatTextView
+        android:id="@+id/dateTag"
+        android:layout_width="80dp"
+        android:layout_height="wrap_content"
+        android:layout_below="@id/amountTv"
+        android:layout_marginTop="@dimen/padding"
         android:text="交货日期:"
         android:textColor="@color/hintColor"
         android:textSize="@dimen/text_hine" />
@@ -81,7 +98,6 @@
         android:layout_toRightOf="@id/timeTag"
         android:background="@drawable/edit_white_right_angle"
         android:gravity="center_vertical"
-        android:text="客户:"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_hine" />
 
@@ -104,7 +120,6 @@
         android:background="@drawable/edit_white_right_angle"
         android:gravity="center_vertical"
         android:inputType="number"
-        android:text="客户:"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_main" />
 
@@ -113,11 +128,11 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignTop="@id/numberTag"
+        android:layout_marginLeft="@dimen/padding"
         android:layout_toRightOf="@id/numberEd"
         android:gravity="center_vertical"
-        android:padding="0.5dp"
-        android:layout_marginLeft="@dimen/padding"
         android:inputType="number"
+        android:padding="0.5dp"
         android:text="PCS"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_hine" />
@@ -136,12 +151,11 @@
         android:id="@+id/remarksInputEd"
         android:layout_width="140dp"
         android:layout_height="wrap_content"
-        android:minHeight="25dp"
         android:layout_alignTop="@id/remarksInputTag"
         android:layout_toRightOf="@id/timeTag"
         android:background="@drawable/edit_white_right_angle"
         android:gravity="center_vertical"
-        android:text="客户:"
+        android:minHeight="25dp"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_hine" />
 

+ 25 - 0
app_modular/appworks/src/main/res/layout/layout_list_purchase_order.xml

@@ -61,6 +61,31 @@
                 tools:text="2018-01-21" />
         </LinearLayout>
 
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="6dp"
+            android:gravity="center_vertical"
+            android:orientation="horizontal">
+
+            <TextView
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:text="@string/str_currency"
+                android:textSize="14sp" />
+
+            <TextView
+                android:id="@+id/list_purchase_order_currency_tv"
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="4dp"
+                android:layout_weight="3"
+                android:textColor="@color/black"
+                android:textSize="14sp"
+                tools:text="2018-01-21" />
+        </LinearLayout>
+
         <LinearLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"

+ 1 - 0
app_modular/appworks/src/main/res/layout/layout_list_subsection_quotation.xml

@@ -121,6 +121,7 @@
             android:src="@drawable/ic_b2b_delete" />
 
         <View
+            android:id="@+id/list_subsection_quotation_delete_line"
             style="@style/expense_table_v_1dp" />
     </LinearLayout>
 

+ 3 - 0
app_modular/appworks/src/main/res/values-en/strings.xml

@@ -122,4 +122,7 @@
     <string name="title_quoted_price">已转报价</string>
     <string name="str_material_name">物料名称:</string>
     <string name="str_material_spec">物料规格:</string>
+    <string name="modify_quote_price">修改报价</string>
+    <string name="str_currency">币别:</string>
+    <string name="str_quote_information">报价信息</string>
 </resources>

+ 3 - 0
app_modular/appworks/src/main/res/values-zh-rCN/strings.xml

@@ -121,4 +121,7 @@
     <string name="title_quoted_price">已转报价</string>
     <string name="str_material_name">物料名称:</string>
     <string name="str_material_spec">物料规格:</string>
+    <string name="modify_quote_price">修改报价</string>
+    <string name="str_currency">币别:</string>
+    <string name="str_quote_information">报价信息</string>
 </resources>

+ 3 - 0
app_modular/appworks/src/main/res/values-zh-rTW/strings.xml

@@ -121,4 +121,7 @@
     <string name="title_quoted_price">已转报价</string>
     <string name="str_material_name">物料名称</string>
     <string name="str_material_spec">物料规格</string>
+    <string name="modify_quote_price">修改报价</string>
+    <string name="str_currency">币别:</string>
+    <string name="str_quote_information">报价信息</string>
 </resources>

+ 3 - 0
app_modular/appworks/src/main/res/values/strings.xml

@@ -153,6 +153,9 @@
     <string name="title_quoted_price">已转报价</string>
     <string name="str_material_name">物料名称:</string>
     <string name="str_material_spec">物料规格:</string>
+    <string name="modify_quote_price">修改报价</string>
+    <string name="str_currency">币别:</string>
+    <string name="str_quote_information">报价信息</string>
 
 
 </resources>