raomeng 8 years ago
parent
commit
4316c66bdc
36 changed files with 543 additions and 325 deletions
  1. 16 19
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java
  2. 1 1
      WeiChat/src/main/res/layout/fragment_me.xml
  3. 3 3
      WeiChat/version.properties
  4. 8 0
      app_core/common/src/main/assets/work_menu.json
  5. 5 4
      app_core/common/src/main/java/com/core/app/MyApplication.java
  6. 4 4
      app_core/common/src/main/java/com/core/utils/NotificationManage.java
  7. 1 1
      app_core/common/src/main/java/com/core/utils/helper/AvatarHelper.java
  8. 33 36
      app_core/common/src/main/res/layout/activity_common_docui.xml
  9. 1 1
      app_core/common/src/main/res/values/strings.xml
  10. 8 2
      app_modular/appbooking/src/main/java/com/modular/booking/activity/services/BServiceAddActivity.java
  11. 1 1
      app_modular/appbooking/src/main/java/com/modular/booking/activity/services/BServicesActivity.java
  12. 1 1
      app_modular/appbooking/src/main/java/com/modular/booking/adapter/ItemBserviceListAdapter.java
  13. 17 13
      app_modular/appbooking/src/main/res/layout/activity_bservice_add.xml
  14. 3 2
      app_modular/appbooking/src/main/res/layout/activity_bservices.xml
  15. 3 1
      app_modular/appbooking/src/main/res/layout/include_add_bottom.xml
  16. 2 1
      app_modular/appbooking/src/main/res/layout/include_add_top.xml
  17. 1 1
      app_modular/appbooking/src/main/res/layout/item_bservice_header.xml
  18. 1 1
      app_modular/apputils/src/main/java/com/modular/apputils/utils/SwitchUtil.java
  19. 20 22
      app_modular/apputils/src/main/java/com/modular/apputils/utils/playsdk/WxPlay.java
  20. 6 9
      app_modular/appworks/src/main/AndroidManifest.xml
  21. 26 19
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceCycleCountAddActivity.java
  22. 5 5
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceDataFormAddActivity.java
  23. 1 1
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceManageActivity.java
  24. 9 0
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/ScanDetailActivity.java
  25. 1 1
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/model/CycleCountAdd.java
  26. 156 84
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/CommonDocDetailsActivity.java
  27. 8 12
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/activity/BusinessTravelActivity.java
  28. 60 1
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/ActivityAdapter.java
  29. 21 8
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/TypeAdapter.java
  30. 0 1
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/fragment/ActivityFragment.java
  31. 97 58
      app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/fragment/CharitableListFragment.java
  32. 1 1
      app_modular/appworks/src/main/java/com/uas/appworks/widget/SelectPlayPop.java
  33. 1 1
      app_modular/appworks/src/main/res/drawable/text_frame_hint_bg.xml
  34. 2 2
      app_modular/appworks/src/main/res/layout/device_scan_head.xml
  35. 18 7
      app_modular/appworks/src/main/res/layout/handler_charit_list.xml
  36. 2 1
      app_modular/appworks/src/main/res/layout/item_type_btn.xml

+ 16 - 19
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java

@@ -36,6 +36,7 @@ import com.core.app.MyApplication;
 import com.core.broadcast.MsgBroadcast;
 import com.core.net.http.ViewUtil;
 import com.core.utils.FlexJsonUtil;
+import com.core.utils.NotificationManage;
 import com.core.utils.ToastUtil;
 import com.core.utils.helper.AvatarHelper;
 import com.lidroid.xutils.view.annotation.ViewInject;
@@ -43,7 +44,6 @@ import com.uas.appme.other.model.Master;
 import com.uas.appme.settings.activity.BaseInfoActivity;
 import com.uas.appme.settings.activity.CheckWagesActivity;
 import com.uas.appme.settings.activity.SettingActivity;
-import com.uas.appme.settings.activity.SigatureActivity;
 import com.uas.appme.widget.MasterDialog;
 import com.uuzuche.lib_zxing.activity.CaptureActivity;
 import com.xzjmyk.pm.activity.CaptureResultActivity;
@@ -176,7 +176,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
                     Map<String, Object> results = FlexJsonUtil.fromJson(msg
                             .getData().getString("result"));
                     if ((Boolean) results.get("success")) {
-                        
+
                         ViewUtil.ToastMessage(ct, "账套切换成功!", Style.holoGreenLight, 3000);
                         String sessionId = results.get("sessionId").toString();
                         String master = msg.getData().getString("master");
@@ -224,18 +224,18 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
         }
         platform = ApiUtils.getApiModel() instanceof ApiPlatform;
         if (ApiUtils.getApiModel() instanceof ApiUAS) {
-            LogUtil.d(TAG,"uas 模式!");
+            LogUtil.d(TAG, "uas 模式!");
             //getChinaMaster();
             company_tv.setText(CommonUtil.getSharedPreferences(ct, "erp_commpany"));
             // 这样写的目的,是为了初始化本页面的时候,时时根据英文名字来查询当前的中文账套
             if (!StringUtil.isEmpty(CommonUtil.getSharedPreferences(ct, "Master_ch"))) {
                 master_tv.setText(CommonUtil.getSharedPreferences(ct, "Master_ch"));
-            }else{
+            } else {
                 master_tv.setText(CommonUtil.getSharedPreferences(ct, "erp_master"));
             }
             rl_master_change.setVisibility(View.VISIBLE);
         } else {
-            LogUtil.d(TAG,"b2b 模式!");
+            LogUtil.d(TAG, "b2b 模式!");
             company_tv.setText(CommonUtil.getSharedPreferences(ct, "companyName"));
             master_tv.setText(CommonUtil.getSharedPreferences(ct, "spaceId"));
             rl_master_change.setVisibility(View.GONE);
@@ -262,17 +262,18 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
         }
     }
 
-//    private String getImageUrl(int id) {
+    //    private String getImageUrl(int id) {
 //        return CommonUtil.getAppBaseUrl(ct) + "common/downloadbyId.action?id=" + id + "&sessionId=" +
 //                CommonUtil.getSharedPreferences(ct, "sessionId") +
 //                "&sessionUser=" + CommonUtil.getSharedPreferences(ct, "erp_username") +
 //                "&master=" + CommonUtil.getSharedPreferences(ct, "erp_master");
 //    }
     private static final String TAG = "MeFragment";
+
     private void initView() {
-        LogUtil.d(TAG,"initView()");
+        LogUtil.d(TAG, "initView()");
         ct = getActivity();
-        
+
 //       new Thread(new Runnable() {
 //           @Override
 //           public void run() {
@@ -293,11 +294,11 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
         mAvatarImg = (ImageView) findViewById(R.id.avatar_img);
         mNickNameTv = (TextView) findViewById(R.id.nick_name_tv);
         mPhoneNumTv = (TextView) findViewById(R.id.phone_number_tv);
-        
+
         IntentFilter loginFilter = new IntentFilter();
         loginFilter.addAction("com.app.home.update");
         LocalBroadcastManager.getInstance(ct).registerReceiver(updateLoginState, loginFilter);
-        
+
         String loginUserId = MyApplication.getInstance().mLoginUser.getUserId();
         AvatarHelper.getInstance().display(loginUserId, mAvatarImg, true, true);
         mNickNameTv.setText(MyApplication.getInstance().mLoginUser.getNickName());
@@ -314,7 +315,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
             }
         });
 
-       
+
         getChinaMaster();
         updateStatus();
 
@@ -364,12 +365,8 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
         picture_selector_rl.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-//                startActivity(new Intent(ct, PictureSelectorDemo.class));
-//                startActivity(new Intent(ct, PersonalRegActivity.class));
-//                startActivity(new Intent(ct,TemperatureActivity.class));
-//                startActivity(new Intent(ct,ToastDemoActivity.class));
-                startActivity(new Intent(ct, SigatureActivity.class));
-
+                NotificationManage notificationManage = new NotificationManage();
+                notificationManage.sendNotification(MyApplication.getInstance(), "UU互联通知测试消息!", MainActivity.class);
             }
         });
         picture_selector_rl.setOnLongClickListener(new View.OnLongClickListener() {
@@ -634,7 +631,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
             if (intent.getAction().equals("com.app.home.update")) {
                 String falg = intent.getStringExtra("falg");
                 platform = ApiUtils.getApiModel() instanceof ApiPlatform;
-                LogUtil.d(TAG,"falg="+falg);
+                LogUtil.d(TAG, "falg=" + falg);
                 if (!"home".equals(falg)) {
                     updateStatus();
                 }
@@ -644,7 +641,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
                     master_tv.setText(CommonUtil.getSharedPreferences(ct, "erp_master"));
                     rl_master_change.setVisibility(View.VISIBLE);
                 }
-                if ("B2B".equals(falg)){
+                if ("B2B".equals(falg)) {
                     company_tv.setText(CommonUtil.getSharedPreferences(ct, "companyName"));
                     master_tv.setText(CommonUtil.getSharedPreferences(ct, "spaceId"));
                     rl_master_change.setVisibility(View.GONE);

+ 1 - 1
WeiChat/src/main/res/layout/fragment_me.xml

@@ -18,7 +18,7 @@
                 android:id="@+id/avatar_img"
                 android:layout_width="60dp"
                 android:layout_height="60dp"
-
+                android:scaleType="fitXY"
                 android:layout_alignParentLeft="true"
                 android:layout_centerVertical="true"
                 android:contentDescription="@string/app_name"

+ 3 - 3
WeiChat/version.properties

@@ -1,5 +1,5 @@
-#Tue Dec 26 11:16:10 CST 2017
-debugName=244
+#Tue Dec 26 18:41:26 CST 2017
+debugName=277
 versionName=613
-debugCode=244
+debugCode=277
 versionCode=152

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

@@ -32,6 +32,14 @@
         "menuUrl": "",
         "caller": "",
         "isHide": false
+      } , {
+        "isLocalMenu": true,
+        "menuName": "str_work_charitable_donations",
+        "menuIcon": "ic_work_charitable_donations",
+        "menuActivity": "com.modular.work.CharitableActivity",
+        "menuUrl": "",
+        "caller": "",
+        "isHide": false
       }
     ]
   },

+ 5 - 4
app_core/common/src/main/java/com/core/app/MyApplication.java

@@ -335,11 +335,12 @@ public class MyApplication extends BaseApplication {
 
 		mAvatarRoundImageOptions = new DisplayImageOptions.Builder().bitmapConfig(Bitmap.Config.RGB_565).
 				cacheInMemory(true).cacheOnDisc(true)
-				.displayer(new RoundedBitmapDisplayer(10)).
-						resetViewBeforeLoading(true).
-						showImageForEmptyUri(R.drawable.avatar_normal)
+				.displayer(new RoundedBitmapDisplayer(10))
+				.resetViewBeforeLoading(true)
+				.showImageForEmptyUri(R.drawable.avatar_normal)
 				.showImageOnFail(R.drawable.avatar_normal)
-				.showImageOnLoading(R.drawable.avatar_normal).build();
+				.showImageOnLoading(R.drawable.avatar_normal)
+				.build();
 
 		mAvatarNormalImageOptions = new DisplayImageOptions.Builder()
 				.bitmapConfig(Bitmap.Config.RGB_565)

+ 4 - 4
app_core/common/src/main/java/com/core/utils/NotificationManage.java

@@ -39,11 +39,13 @@ public class NotificationManage {
     private void sendNotification(Context context, int icon, String title, String group, String content, Class<? extends Activity> clazz) {
         NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
         NotificationCompat.Builder builder = new NotificationCompat.Builder(context.getApplicationContext());
-        builder.setSmallIcon(icon);
         builder.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
         builder.setAutoCancel(true);
         builder.setContentTitle(title);
         builder.setContentText(content);
+        builder.setTicker(content);
+        builder.setSmallIcon(icon);
+        builder.setLargeIcon(BitmapFactory.decodeResource(context.getResources(), R.drawable.uuu));
         if (!StringUtil.isEmpty(group))
             builder.setGroup(group);
         Intent intent = new Intent(context, clazz);
@@ -70,9 +72,7 @@ public class NotificationManage {
         if (System.currentTimeMillis() - oldTime > minutes2time) {//如果当前时间大于上次时间2分钟
             sharePrefer.edit().putLong("SIGNIN_TIME", System.currentTimeMillis());
             sendNotification(context, R.drawable.uuu, context.getString(R.string.common_dialog_title), action, clazz);
-        } else {
-            //无效
-        }
+        } 
     }
 
     //update

+ 1 - 1
app_core/common/src/main/java/com/core/utils/helper/AvatarHelper.java

@@ -260,7 +260,7 @@ public class AvatarHelper {
         if (isThumb) {
             ImageLoader.getInstance().displayImage(url, imageView, MyApplication.mAvatarRoundImageOptions);
         } else {
-            ImageLoader.getInstance().displayImage(url, imageView, MyApplication.mAvatarRoundImageOptions);
+            ImageLoader.getInstance().displayImage(url, imageView, MyApplication.mAvatarNormalImageOptions);
         }
     }
 

+ 33 - 36
app_core/common/src/main/res/layout/activity_common_docui.xml

@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-              android:layout_width="match_parent"
-              android:layout_height="match_parent"
-              android:background="@color/bg_main"
-              android:focusableInTouchMode="true"
-              android:orientation="vertical">
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/bg_main"
+    android:focusableInTouchMode="true"
+    android:orientation="vertical">
 
     <com.core.widget.CustomerScrollView
         android:id="@+id/common_docui_sv"
@@ -21,16 +21,14 @@
             android:layout_height="wrap_content"
             android:focusable="true"
             android:focusableInTouchMode="true"
-            android:orientation="vertical"
-            >
+            android:orientation="vertical">
 
             <RelativeLayout
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="10dp"
                 android:layout_marginRight="10dp"
-                android:padding="5dp"
-                >
+                android:padding="5dp">
 
                 <ImageView
                     android:id="@+id/common_docui_photo_img"
@@ -87,8 +85,7 @@
                 android:layout_marginLeft="10dp"
                 android:layout_marginRight="10dp"
                 android:layout_marginTop="5dp"
-                android:focusableInTouchMode="false">
-            </com.core.widget.MyListView>
+                android:focusableInTouchMode="false"></com.core.widget.MyListView>
 
             <LinearLayout
                 android:id="@+id/common_docui_secondmsg_ll"
@@ -103,8 +100,7 @@
                     android:layout_width="match_parent"
                     android:layout_height="wrap_content"
                     android:layout_marginBottom="5dp"
-                    android:focusableInTouchMode="false">
-                </com.core.widget.MyListView>
+                    android:focusableInTouchMode="false"></com.core.widget.MyListView>
 
             </LinearLayout>
 
@@ -192,9 +188,7 @@
                 android:layout_marginBottom="10dp"
                 android:background="#ebe9e9"
                 android:focusableInTouchMode="false"
-                android:visibility="visible"
-                >
-            </com.core.widget.MyListView>
+                android:visibility="visible"></com.core.widget.MyListView>
 
         </LinearLayout>
 
@@ -225,8 +219,7 @@
                 android:paddingBottom="10dp"
                 android:text="重新提交"
                 android:textColor="@color/titleBlue"
-                android:textSize="18sp"
-                />
+                android:textSize="18sp" />
 
         </LinearLayout>
 
@@ -235,8 +228,7 @@
             android:layout_width="1dp"
             android:layout_height="20dp"
             android:layout_gravity="center_vertical"
-            android:background="@color/item_line"
-            />
+            android:background="@color/item_line" />
 
         <LinearLayout
             android:id="@+id/common_docui_delete_ll"
@@ -254,8 +246,7 @@
                 android:paddingBottom="10dp"
                 android:text="删除"
                 android:textColor="@color/titleBlue"
-                android:textSize="18sp"
-                />
+                android:textSize="18sp" />
         </LinearLayout>
 
     </LinearLayout>
@@ -276,15 +267,13 @@
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:background="@drawable/selector_me_menu_item_bg"
-            android:gravity="center_horizontal"
-            >
+            android:gravity="center_horizontal">
 
             <ImageView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center_vertical"
-                android:src="@drawable/icon_answer"
-                />
+                android:src="@drawable/icon_answer" />
 
             <TextView
                 android:id="@+id/common_docui_agree_tv"
@@ -296,16 +285,14 @@
                 android:gravity="center_horizontal"
                 android:text="同意"
                 android:textColor="@color/titleBlue"
-                android:textSize="18sp"
-                />
+                android:textSize="18sp" />
         </LinearLayout>
 
         <View
             android:layout_width="1dp"
             android:layout_height="20dp"
             android:layout_gravity="center_vertical"
-            android:background="@color/item_line"
-            />
+            android:background="@color/item_line" />
 
         <LinearLayout
             android:id="@+id/common_docui_disagree_ll"
@@ -319,8 +306,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center_vertical"
-                android:src="@drawable/icon_answer"
-                />
+                android:src="@drawable/icon_answer" />
 
             <TextView
                 android:id="@+id/common_docui_disagree_tv"
@@ -339,8 +325,7 @@
             android:layout_width="1dp"
             android:layout_height="20dp"
             android:layout_gravity="center_vertical"
-            android:background="@color/item_line"
-            />
+            android:background="@color/item_line" />
 
         <LinearLayout
             android:id="@+id/common_docui_change_dealman_ll"
@@ -354,8 +339,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center_vertical"
-                android:src="@drawable/icon_answer"
-                />
+                android:src="@drawable/icon_answer" />
 
             <TextView
                 android:id="@+id/common_docui_change_dealman_tv"
@@ -372,4 +356,17 @@
 
     </LinearLayout>
 
+    <TextView
+        android:id="@+id/sureTv"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="10dp"
+        android:gravity="center"
+        android:paddingBottom="10dp"
+        android:paddingTop="10dp"
+        android:text="@string/common_sure"
+        android:background="@drawable/selector_me_menu_item_bg"
+        android:textColor="@color/titleBlue"
+        android:visibility="gone"
+        android:textSize="18sp" />
 </LinearLayout>

+ 1 - 1
app_core/common/src/main/res/values/strings.xml

@@ -1873,7 +1873,7 @@
 
     <string name="schedule_title_must_input">日程标题为必填项</string>
     <string name="schedule_detail_must_input">日程详情为必填项</string>
-    <string name="not_camera_permission">应用没有获取到权限,请允许打开摄像头权限或到设置中打开摄像头权限</string>
+    <string name="not_camera_permission">摄像头权限被禁用,请到设置中开启权限!</string>
     <string name="give_up">放弃</string>
     <string name="app_time_selecting">选择时间</string>
     <string name="qzone_edit_weekly">编写周报</string>

+ 8 - 2
app_modular/appbooking/src/main/java/com/modular/booking/activity/services/BServiceAddActivity.java

@@ -274,7 +274,12 @@ public class BServiceAddActivity extends OABaseActivity implements View.OnClickL
                 llPanelBusiness.setVisibility(View.VISIBLE);
                 llPanelWait.setVisibility(View.GONE);
                 try {
-                    getSteatListStates(JSON.parseObject(dataService ).getString("sb_companyid"));//获取餐饮类别状态信息
+                    if (!isEdited){
+                        getSteatListStates(JSON.parseObject(dataService).getString("sb_companyid"));//获取餐饮类别状态信息
+                    }else{
+                        getSteatListStates(model.getCompanyid());//获取餐饮类别状态信息
+                    }
+                    
                 } catch (Exception e) {
                     e.printStackTrace();
                 }
@@ -1367,6 +1372,7 @@ public class BServiceAddActivity extends OABaseActivity implements View.OnClickL
                     tv_food_peoples.setVisibility(View.GONE);
                     addSubUtils.setVisibility(View.VISIBLE);
                     tvSeatsRight.setVisibility(View.GONE);
+               
                 } else {
                     if (StringUtil.isEmpty(data.getString("sb_starttime"))) {
                         tv_food_times.setText(data.getString("sb_endtime"));
@@ -1394,7 +1400,7 @@ public class BServiceAddActivity extends OABaseActivity implements View.OnClickL
                         }
                     }
 
-                    tvSeatsRight .setCompoundDrawables(null,null,null,null);
+                    tv_food_seats .setCompoundDrawables(null,null,null,null);
                     tv_food_peoples .setCompoundDrawables(null,null,null,null);
                     tv_food_times .setCompoundDrawables(null,null,null,null);
                     tv_food_rooms.setCompoundDrawables(null,null,null,null);

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

@@ -133,7 +133,7 @@ public class BServicesActivity extends OABaseActivity implements View.OnClickLis
         imgList.add("http://demo.sc.chinaz.com/Files/DownLoad/webjs1/201707/jiaoben5258/images/3-1.jpg");
         imgList.add("http://demo.sc.chinaz.com/Files/DownLoad/webjs1/201707/jiaoben5258/images/2-1.jpg");
         imgList.add("http://demo.sc.chinaz.com/Files/DownLoad/webjs1/201707/jiaoben5258/images/1-1.jpg");
-        imgList.add("http://demo.sc.chinaz.com/Files/DownLoad/webjs1/201707/jiaoben5258/images/4-1.jpg");
+        imgList.add("http://demo.sc.chinaz.com/Files/DownLoad/webjs1/201707/jiaoben5258/images/2-1.jpg");
         mBanner.update(imgList);
         mBanner.start();
         List<SBMenuModel> menuModels = new ArrayList<>();

+ 1 - 1
app_modular/appbooking/src/main/java/com/modular/booking/adapter/ItemBserviceListAdapter.java

@@ -75,7 +75,7 @@ public class ItemBserviceListAdapter extends BaseAdapter {
     }
 
     private void initializeViews(final SBListModel object, ViewHolder holder) {
-        AvatarHelper.getInstance().display(object.getUrl(),holder.ivIcon,true);
+        AvatarHelper.getInstance().display(object.getUrl(),holder.ivIcon,false);
         holder.tvTitle.setText(object.getName());
         holder.tvType.setText(object.getType());
         holder.tvDistance.setText(object.getDistance());

+ 17 - 13
app_modular/appbooking/src/main/res/layout/activity_bservice_add.xml

@@ -124,7 +124,7 @@
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_club_technician"
                     android:contentDescription="@string/service_club_list"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:ellipsize="end"
                     android:hint="@string/common_select" />
@@ -167,7 +167,7 @@
                     style="@style/item_menu_input"
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_club_peoples"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:hint="@string/common_select" />
             </RelativeLayout>
@@ -200,7 +200,7 @@
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_hospital_time"
                     android:contentDescription="@string/service_hospital_times"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:ellipsize="end"
                     android:hint="@string/common_select" />
@@ -242,7 +242,7 @@
                     style="@style/item_menu_input"
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_hospital_people"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:hint="@string/common_select" />
             </RelativeLayout>
@@ -274,7 +274,7 @@
                     style="@style/item_menu_input"
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_sport_time"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:ellipsize="end"
                     android:hint="@string/common_select" />
@@ -318,7 +318,7 @@
                     style="@style/item_menu_input"
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_sport_peoples"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:hint="@string/common_select" />
             </RelativeLayout>
@@ -353,7 +353,7 @@
                     android:layout_alignParentRight="true"
                     android:layout_alignParentTop="true"
                     android:layout_toRightOf="@id/tag_hair_times"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:ellipsize="end"
                     android:hint="@string/common_select" />
@@ -399,7 +399,7 @@
                     style="@style/item_menu_input"
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/company_tag"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:hint="@string/common_select" />
             </RelativeLayout>
@@ -429,7 +429,7 @@
                     style="@style/item_menu_input"
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_food_peoples"
-                    android:drawablePadding="6dp"
+                    
                     android:drawableRight="@drawable/oa_next"
                     android:hint="" />
 
@@ -468,7 +468,7 @@
                     style="@style/item_menu_input"
                     android:layout_width="290dp"
                     android:layout_toRightOf="@id/tag_food_times"
-                    android:drawablePadding="6dp"
+                  
                     android:drawableRight="@drawable/oa_next"
                     android:ellipsize="end"
                     android:hint="@string/common_select" />
@@ -550,7 +550,9 @@
                         android:id="@+id/tvSeatsLeft"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
-                        android:layout_margin="10dp"
+                        android:layout_marginBottom="10dp"
+                        android:layout_marginTop="10dp"
+                        android:layout_marginLeft="10dp"
                         android:textColor="@color/blue_seats_num"
                         android:textStyle="bold"
                         android:text="排队实况"/>
@@ -563,8 +565,10 @@
                         android:id="@+id/tvSeatsRight"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
-                        android:layout_margin="10dp"
-                       android:drawableLeft="@drawable/icon_line_v"
+                        android:layout_marginBottom="10dp"
+                        android:layout_marginTop="10dp"
+                        android:layout_marginLeft="3dp"
+                        android:drawableLeft="@drawable/icon_line_v"
                         android:textColor="@color/gray"
                         android:textStyle="bold"
                         android:text="商家释放"/>

+ 3 - 2
app_modular/appbooking/src/main/res/layout/activity_bservices.xml

@@ -5,11 +5,12 @@
     android:layout_height="match_parent"
     android:background="@drawable/bg_main"
     tools:context="com.modular.booking.activity.services.BServicesActivity">
+
     <com.handmark.pulltorefresh.library.PullToRefreshListView
         android:id="@+id/mListView"
+        style="@style/ListViewBasic"
         android:layout_below="@+id/voiceSearchView"
-        android:dividerHeight="0.1dp"
         android:background="@color/transparent"
         android:divider="@color/item_line"
-        style="@style/ListViewBasic" />
+        android:dividerHeight="0.1dp" />
 </RelativeLayout>

+ 3 - 1
app_modular/appbooking/src/main/res/layout/include_add_bottom.xml

@@ -96,10 +96,11 @@
             <EditText
                 android:id="@+id/et_book_phone"
                 style="@style/item_menu_input"
-                android:layout_width="110dp"
+                android:layout_width="wrap_content"
                 android:drawableLeft="@drawable/icon_tel"
                 android:drawablePadding="2dp"
                 android:ellipsize="end"
+            
                 android:hint="@string/common_input2"
                 android:inputType="phone"
                 android:textColor="#0CB88C" />
@@ -130,6 +131,7 @@
                 android:gravity="top|left"
                 android:layout_width="match_parent"
                 android:layout_height="100dp"
+                android:paddingTop="2dp"
                 android:layout_toRightOf="@id/tag_book_notes"
                 android:drawablePadding="6dp"
                 android:hint="请输入您的要求,我们会尽量满足" />

+ 2 - 1
app_modular/appbooking/src/main/res/layout/include_add_top.xml

@@ -50,6 +50,7 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_centerVertical="true"
+            android:gravity="center_vertical"
             android:layout_marginLeft="7dp"
             android:layout_toRightOf="@+id/sl_header"
             android:orientation="vertical">
@@ -72,7 +73,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:drawableLeft="@drawable/icon_map"
-                android:drawablePadding="3dp"
+                android:drawablePadding="6dp"
                 android:elevation="2dp"
                 android:gravity="center_vertical"
                 android:text="********"

+ 1 - 1
app_modular/appbooking/src/main/res/layout/item_bservice_header.xml

@@ -32,7 +32,7 @@
         android:layout_width="45dp"
         android:layout_height="45dp"
         android:layout_marginBottom="10dp"
-        android:background="@null"
+        
         android:src="@drawable/defaultpic">
     </de.hdodenhof.circleimageview.CircleImageView>
 </LinearLayout>

+ 1 - 1
app_modular/apputils/src/main/java/com/modular/apputils/utils/SwitchUtil.java

@@ -9,7 +9,7 @@ import com.common.config.BaseConfig;
 public class SwitchUtil {
 
     public static boolean showYiyuanjuan() {
-        return BaseConfig.isDebug() && false;
+        return BaseConfig.isDebug() && true;
     }
 
     public static boolean showShebeiguanli() {

+ 20 - 22
app_modular/apputils/src/main/java/com/modular/apputils/utils/playsdk/WxPlay.java

@@ -3,9 +3,11 @@ package com.modular.apputils.utils.playsdk;
 
 import android.content.Context;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.common.data.JSONUtil;
 import com.core.app.Constants;
-import com.tencent.mm.opensdk.constants.ConstantsAPI;
-import com.tencent.mm.opensdk.modelbase.BaseResp;
+import com.modular.apputils.listener.OnPlayListener;
 import com.tencent.mm.opensdk.modelpay.PayReq;
 import com.tencent.mm.opensdk.openapi.IWXAPI;
 import com.tencent.mm.opensdk.openapi.WXAPIFactory;
@@ -33,32 +35,28 @@ public class WxPlay {
 
     }
 
-
     public void init(Context context) {
         wxApi = WXAPIFactory.createWXAPI(context, Constants.WXPAY_APPID);
         wxApi.registerApp(Constants.WXPAY_APPID);
     }
 
 
-    public void ss() {
-        PayReq request = new PayReq();
-        request.appId = "wxd930ea5d5a258f4f";
-        request.partnerId = "1900000109";
-        request.prepayId = "1101000000140415649af9fc314aa427";
-        request.packageValue = "Sign=WXPay";
-        request.nonceStr = "1101000000140429eb40476f8896f4c9";
-        request.timeStamp = "1398746574";
-        request.sign = "7FFECB600D7157C5AA49810D2D8F28BC2811827B";
-        wxApi.sendReq(request);
-
-    }
-
-    public void onResp(BaseResp resp) {
-        if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
-//            Log.d(TAG,"onPayFinish,errCode="+resp.errCode);
-//            AlertDialog.Builderbuilder=newAlertDialog.Builder(this);
-//            builder.setTitle(R.string.app_tip);
+    public void wxPay(String orderInfo, OnPlayListener onPlayListener) {
+        if (JSONUtil.validate(orderInfo)) {
+            JSONObject orderObject = JSON.parseObject(orderInfo);
+
+            PayReq request = new PayReq();
+            request.appId = JSONUtil.getText(orderObject, "appid");
+            request.partnerId = JSONUtil.getText(orderObject, "partnerid");
+            request.prepayId = JSONUtil.getText(orderObject, "prepayid");
+            request.packageValue = JSONUtil.getText(orderObject, "package");
+            request.nonceStr = JSONUtil.getText(orderObject, "noncestr");
+            request.timeStamp = JSONUtil.getText(orderObject, "timestamp");
+            request.sign = JSONUtil.getText(orderObject, "sign");
+            wxApi.sendReq(request);
+        } else {
+            onPlayListener.onFailure("500", "订单信息获取异常");
         }
-    }
 
+    }
 }

+ 6 - 9
app_modular/appworks/src/main/AndroidManifest.xml

@@ -334,7 +334,8 @@
             android:label="@string/text_scan_device" />
         <activity
             android:name=".CRM.erp.activity.DeviceCycleCountActivity"
-            android:label="@string/title_device_manage" />        <activity
+            android:label="@string/title_device_manage"
+            android:windowSoftInputMode="adjustPan"/>        <activity
             android:name=".CRM.erp.activity.DeviceCycleCountInfoActivity"
             android:label="@string/text_cycle_count" />  <activity
             android:name=".CRM.erp.activity.DeviceDataFormAddActivity"
@@ -342,16 +343,12 @@
             android:name=".CRM.erp.activity.DeviceCycleCountDetailsActivity"
             android:label="@string/title_device_manage" /> <activity
             android:name=".CRM.erp.activity.DeviceCycleCountAddActivity"
-            android:label="@string/text_cycle_count_add" />
-        <activity android:name=".OA.platform.activity.BusinessTravelActivity">
-            <intent-filter>
-                <action android:name="com.modular.work.BusinessTravelActivity" />
-
-                <category android:name="android.intent.category.DEFAULT" />
-            </intent-filter>
-        </activity>
+            android:label="@string/text_cycle_count_add"
+        />
+        <activity android:name=".OA.platform.activity.BusinessTravelActivity"/>
 
         <activity android:name=".activity.DeviceQueryActivity"
+            android:launchMode="singleTask"
                   android:windowSoftInputMode="adjustPan">
             <intent-filter>
                 <action android:name="com.modular.work.DeviceQueryActivity" />

+ 26 - 19
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceCycleCountAddActivity.java

@@ -205,20 +205,21 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
         public List<CycleCountAdd> getModels() {
             return models;
         }
+
         public void updateValues(String message) {
             if (!StringUtil.isEmpty(message) && JSONUtil.validateJSONObject(message)) {
-                LogUtil.i("message="+message);
+                LogUtil.i("message=" + message);
                 JSONObject object = JSON.parseObject(message);
                 if (models != null) {
-                    for (int i=0;i<models.size();i++) {
-                        LogUtil.i("e="+JSON.toJSONString(models.get(i)));
-                        if (object.containsKey(models.get(i).getField())){
-                            LogUtil.i("Field="+models.get(i).getField());
-                            models.get(i).setValues(JSONUtil.getText(object,models.get(i).getField()));
+                    for (int i = 0; i < models.size(); i++) {
+                        LogUtil.i("e=" + JSON.toJSONString(models.get(i)));
+                        if (object.containsKey(models.get(i).getField())) {
+                            LogUtil.i("Field=" + models.get(i).getField());
+                            models.get(i).setValues(JSONUtil.getText(object, models.get(i).getField()));
+                            notifyItemChanged(i);
                         }
                     }
-                    notifyDataSetChanged();
-                    for (CycleCountAdd e:models){
+                    for (CycleCountAdd e : models) {
                         LogUtil.i(JSON.toJSONString(e));
                     }
                 }
@@ -258,19 +259,25 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
         @Override
         public void onBindViewHolder(ViewHodler holder, int position) {
             CycleCountAdd model = models.get(position);
-            holder.captionTv.setText(model.getCaption());
-            holder.valuesEd.setText(model.getValues());
+            int hint = R.string.common_input;
             if (model.getType().equals("DBFIND") || model.getType().equals("C")) {
                 holder.valuesEd.setFocusableInTouchMode(false);
                 holder.valuesEd.setTag(R.id.tag_key, position);
                 holder.valuesEd.setTag(model);
                 holder.valuesEd.setOnClickListener(onClickListener);
                 holder.valuesEd.setCompoundDrawablesWithIntrinsicBounds(null, null, drawable, null);
+                hint = model.isAllowblank() ? R.string.common_select : R.string.common_select_not_must;
             } else {
                 holder.valuesEd.setFocusableInTouchMode(true);
                 holder.valuesEd.setCompoundDrawablesWithIntrinsicBounds(null, null, null, null);
+                holder.valuesEd.addTextChangedListener(new TextChangListener(holder, position));
+                if (!model.isAllowblank()) {
+                    hint = R.string.common_input1;
+                }
             }
-            holder.valuesEd.addTextChangedListener(new TextChangListener(holder, position));
+            holder.valuesEd.setHint(hint);
+            holder.captionTv.setText(model.getCaption());
+            holder.valuesEd.setText(model.getValues());
         }
 
         @Override
@@ -311,8 +318,8 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
                         Intent intent = new Intent(ct, SelectActivity.class);
                         intent.putExtra("title", model.getCaption());
                         if (model.getType().equals("C")) {
-                            selectField=model.getField();
-                            LogUtil.i("selectField="+selectField);
+                            selectField = model.getField();
+                            LogUtil.i("selectField=" + selectField);
                             ArrayList<SelectBean> formBeaans = new ArrayList<>();
                             for (Approval.Data e : model.getDatas()) {
                                 formBeaans.add(new SelectBean(e.display));
@@ -336,20 +343,20 @@ public class DeviceCycleCountAddActivity extends BaseActivity implements View.On
         };
     }
 
-    private String  selectField;
+    private String selectField;
 
     @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
         if (data != null && popAdapter != null) {
-            if (0x21 == requestCode&&!StringUtil.isEmpty(selectField)) {
+            if (0x21 == requestCode && !StringUtil.isEmpty(selectField)) {
                 SelectBean b = data.getParcelableExtra("data");
                 LogUtil.d(JSON.toJSONString(b));
                 if (b == null) return;
-                Map<String,Object> map=new HashMap<>();
-                LogUtil.i("selectField="+selectField);
-                map.put(selectField,b.getName());
-                selectField=null;
+                Map<String, Object> map = new HashMap<>();
+                LogUtil.i("selectField=" + selectField);
+                map.put(selectField, b.getName());
+                selectField = null;
                 popAdapter.updateValues(JSONUtil.map2JSON(map));
             } else if (90 == requestCode) {
                 String json = data.getStringExtra("data");

+ 5 - 5
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceDataFormAddActivity.java

@@ -655,7 +655,7 @@ public class DeviceDataFormAddActivity extends BaseActivity implements View.OnCl
             if (caller.equals("DeviceChange!Use")) {
                 dc_class = "使用转移";
             } else if (caller.equals("DeviceChange!Scrap")) {
-                dc_class = "报废";
+                dc_class = "报废申请";
             } else if (caller.equals("DeviceChange!Maintain")) {
                 dc_class = "保养维护";
             } else if (caller.equals("DeviceChange!Inspect")) {
@@ -1014,7 +1014,7 @@ public class DeviceDataFormAddActivity extends BaseActivity implements View.OnCl
                             }
 
                             if (data.getType().equals("MF") || data.getType().equals("SF")) {
-                                //TODO 这边使用审批的接口
+
 //                                HashMap param = new HashMap<>();
 //                                String[] fields = new String[]{"sa_custname"};
 //                                if (caller.equals("StandbyApplication")) {
@@ -1065,10 +1065,10 @@ public class DeviceDataFormAddActivity extends BaseActivity implements View.OnCl
 //                                intent.putExtra("id", categoryIndex);
 //                                intent.putExtra("object", data);
 //                                startActivityForResult(intent, categoryIndex);
-
+                                //TODO 这边使用审批的接口
                                 startActivityForResult(new Intent(ct, SelectNetAcitivty.class)
                                                 .putExtra("fieldKey", data.getField())
-                                                .putExtra("caller", "DeviceBatch!Stock")
+                                                .putExtra("caller", caller)
                                                 .putExtra("isForm", true)
                                         , 90);
 
@@ -2047,7 +2047,7 @@ public class DeviceDataFormAddActivity extends BaseActivity implements View.OnCl
         progressDialog.show();
         click_btn.setEnabled(false);
         String url = null;
-        url = CommonUtil.getAppBaseUrl(ct) + "/mobile/oa/commonSaveAndSubmit.action";
+        url = CommonUtil.getAppBaseUrl(ct) + "/mobile/device/saveAndSubmitDeviceChange.action";
         Map<String, Object> params = new HashMap<>();
         params.put("caller", caller);
         params.put("formStore", formStore);

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceManageActivity.java

@@ -106,7 +106,7 @@ public class DeviceManageActivity extends BaseActivity {
                     if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_SUCCESS) {
                         String result = bundle.getString(CodeUtils.RESULT_STRING);
                         Log.d("scanurl", result);
-                        ToastUtil.showToast(ct, result);
+//                        ToastUtil.showToast(ct, result);
                         startActivityForResult(new Intent(ct, ScanDetailActivity.class).putExtra("decode", result), 0x22);
                     }
                 }

+ 9 - 0
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/ScanDetailActivity.java

@@ -19,6 +19,7 @@ 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;
 import com.common.data.StringUtil;
@@ -242,6 +243,7 @@ public class ScanDetailActivity extends BaseActivity implements View.OnClickList
     }
 
     private void handleData(String message) throws Exception {
+        LogUtil.prinlnLongMsg("gongpengming","message="+message);
         JSONObject json = JSON.parseObject(message);
         boolean success = JSONUtil.getBoolean(json, "success");
         JSONObject object = JSONUtil.getJSONObject(json, "data");
@@ -336,6 +338,13 @@ public class ScanDetailActivity extends BaseActivity implements View.OnClickList
                 case "LOSSED":
                     return "已盘亏";
             }
+        }else if ("datefield".equals(type) ){
+            try{
+                long time=Long.valueOf(values);
+                return DateFormatUtil.long2Str(time,DateFormatUtil.YMD);
+            }catch (Exception e){
+
+            }
         }
         return values;
     }

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/model/CycleCountAdd.java

@@ -38,7 +38,7 @@ public class CycleCountAdd {
                 datas.add(new Approval.Data(JSONUtil.getText(o, "DLC_VALUE"), JSONUtil.getText(o, "DLC_DISPLAY")));
             }
         }
-        setAllowblank(JSONUtil.getBoolean(object, "fd_allowblank"));
+        setAllowblank(JSONUtil.getText(object, "fd_allowblank").equals("T"));
         setId(JSONUtil.getInt(object, "fd_id"));
         setWhich("from");
     }

+ 156 - 84
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/CommonDocDetailsActivity.java

@@ -25,6 +25,7 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONException;
 import com.alibaba.fastjson.JSONObject;
 import com.common.LogUtil;
+import com.common.data.JSONUtil;
 import com.common.data.ListUtils;
 import com.common.data.StringUtil;
 import com.common.system.ActivityUtils;
@@ -79,6 +80,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
     private final static int COMMON_DOC_AF_REQUEST = 1125;
     private final static int COMMON_DOC_MSG_REQUEST = 1126;
     private static final int DELETE_DOC_REQUEST = 1127;
+    private final int SURE_DEVICE = 11251;
     private EmptyLayout mEmptyLayput_approvalflow;
     private CommonApprovalFlowBean mCommonApprovalFlowBean;
     private CommonDocAMBean mCommonDocAMBean;
@@ -107,6 +109,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
     private LinearLayout change_deal_man_ll;
     private LinearLayout disagree_ll;
     private LinearLayout resanddel_ll;
+    private TextView sureTv;
     private LinearLayout resubmit_ll;
     private LinearLayout delete_ll;
     private CustomerScrollView commondoc_sv;
@@ -116,7 +119,8 @@ public class CommonDocDetailsActivity extends BaseActivity {
     private GridViewAdapter mAdapter;
     private String last_status;
     private String update;
-    private Boolean platform; private String em_number;
+    private Boolean platform;
+    private String em_number;
     private String type_emcode;
     private String real_status;
     private String emCode;
@@ -134,11 +138,13 @@ public class CommonDocDetailsActivity extends BaseActivity {
         commondoc_sv.smoothScrollTo(0, 0);
         super.onResume();
     }
+
     private boolean device;
+
     public void initView() {
         Intent intent = getIntent();
-        if (intent!=null){
-            device=intent.getBooleanExtra("device",false);
+        if (intent != null) {
+            device = intent.getBooleanExtra("device", false);
         }
 
         platform = ApiUtils.getApiModel() instanceof ApiPlatform;
@@ -192,15 +198,16 @@ public class CommonDocDetailsActivity extends BaseActivity {
         second_msg_lv = (MyListView) findViewById(R.id.common_docui_second_msg_lv);
         secondmsg_ll = (LinearLayout) findViewById(R.id.common_docui_secondmsg_ll);
         approval_ll = (LinearLayout) findViewById(R.id.common_docui_agree_and_change_ll);
-        agree_ll  = (LinearLayout) findViewById(R.id.common_docui_agree_ll);
+        agree_ll = (LinearLayout) findViewById(R.id.common_docui_agree_ll);
         change_deal_man_ll = (LinearLayout) findViewById(R.id.common_docui_change_dealman_ll);
         disagree_ll = (LinearLayout) findViewById(R.id.common_docui_disagree_ll);
         resanddel_ll = (LinearLayout) findViewById(R.id.item_common_docui_res_and_del_ll);
+        sureTv = (TextView) findViewById(R.id.sureTv);
         resubmit_ll = (LinearLayout) findViewById(R.id.common_docui_resubmit_ll);
         delete_ll = (LinearLayout) findViewById(R.id.common_docui_delete_ll);
         commondoc_sv = (CustomerScrollView) findViewById(R.id.common_docui_sv);
         hide_above_af = findViewById(R.id.hide_above_af);
-        ex_invoice_ll  = (LinearLayout) findViewById(R.id.ex_invoice_ll);
+        ex_invoice_ll = (LinearLayout) findViewById(R.id.ex_invoice_ll);
         grid_view = (MyGridView) findViewById(R.id.grid_view);
 
     }
@@ -209,11 +216,26 @@ public class CommonDocDetailsActivity extends BaseActivity {
         final Intent intent = getIntent();
         mCaller = intent.getStringExtra("caller");
         mkeyValue = intent.getIntExtra("keyValue", -1);
+
         real_status = intent.getStringExtra("status");
-        update=  intent.getStringExtra("update");
-        Log.i("mCaller", mCaller+"");
+        update = intent.getStringExtra("update");
+        Log.i("mCaller", mCaller + "");
         Log.isLoggable("keyValue", mkeyValue);
-        Log.i("real_status", real_status+"");
+        Log.i("real_status", real_status + "");
+
+        if (mkeyValue == -1) {
+            LogUtil.i("mkeyValue==-1");
+            String keyValue = intent.getStringExtra("keyValue");
+            LogUtil.i("keyValue=" + keyValue);
+            if (!StringUtil.isEmpty(keyValue)) {
+                try {
+                    mkeyValue = Integer.valueOf(keyValue);
+                    LogUtil.i("mkeyValue=" + mkeyValue);
+                } catch (Exception e) {
+                    LogUtil.i("e=" + e.getMessage());
+                }
+            }
+        }
 
         //当获取到正确的单据caller和单据id时
         if (!TextUtils.isEmpty(mCaller) && mkeyValue != -1) {
@@ -221,24 +243,25 @@ public class CommonDocDetailsActivity extends BaseActivity {
                 getSupportActionBar().setTitle(getString(R.string.oavacation_apply) + getString(R.string.doc_detail));
             }
             if ("FeePlease!CCSQ!new".equals(mCaller)) {
-                getSupportActionBar().setTitle(getString(R.string.oatravel_apply)+ getString(R.string.doc_detail));
+                getSupportActionBar().setTitle(getString(R.string.oatravel_apply) + getString(R.string.doc_detail));
             }
             if ("Workovertime".equals(mCaller) || "ExtraWork$".equals(mCaller)) {
-                getSupportActionBar().setTitle(getString(R.string.oaovertime_apply)+ getString(R.string.doc_detail));
+                getSupportActionBar().setTitle(getString(R.string.oaovertime_apply) + getString(R.string.doc_detail));
             }
             if ("SpeAttendance".equals(mCaller)) {
-                getSupportActionBar().setTitle(getString(R.string.oaspecial_attendance_apply)+ getString(R.string.doc_detail));
-            }if ("MaterielApply".equals(mCaller)) {
-                getSupportActionBar().setTitle(getString(R.string.oamaterials_apply)+ getString(R.string.doc_detail));
+                getSupportActionBar().setTitle(getString(R.string.oaspecial_attendance_apply) + getString(R.string.doc_detail));
+            }
+            if ("MaterielApply".equals(mCaller)) {
+                getSupportActionBar().setTitle(getString(R.string.oamaterials_apply) + getString(R.string.doc_detail));
             } else if ("MainTain".equals(mCaller)) {
-                getSupportActionBar().setTitle(getString(R.string.oaservice_apply)+ getString(R.string.doc_detail));
-            }if ("StandbyApplication".equals(mCaller)) {
-                getSupportActionBar().setTitle(getString(R.string.oaStandby_machine_apply)+ getString(R.string.doc_detail));
-            } else
-            if (!StringUtil.isEmpty(intent.getStringExtra("title"))) {
-                getSupportActionBar().setTitle(intent.getStringExtra("title")+ getString(R.string.doc_detail));
+                getSupportActionBar().setTitle(getString(R.string.oaservice_apply) + getString(R.string.doc_detail));
             }
-            if ("FeePlease!FYBX".equals(mCaller)){
+            if ("StandbyApplication".equals(mCaller)) {
+                getSupportActionBar().setTitle(getString(R.string.oaStandby_machine_apply) + getString(R.string.doc_detail));
+            } else if (!StringUtil.isEmpty(intent.getStringExtra("title"))) {
+                getSupportActionBar().setTitle(intent.getStringExtra("title") + getString(R.string.doc_detail));
+            }
+            if ("FeePlease!FYBX".equals(mCaller)) {
                 getSupportActionBar().setTitle(getString(R.string.Expense_reimbursement) + getString(R.string.doc_detail));
             }
             //请求获取单据提交内容数据
@@ -275,7 +298,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
 
     @Override
     public boolean onCreateOptionsMenu(Menu menu) {
-        if (!"FeePlease!FYBX".equals(mCaller)&&!device){
+        if (!"FeePlease!FYBX".equals(mCaller) && !device) {
             getMenuInflater().inflate(R.menu.menu_add_icon, menu);
         }
         return super.onCreateOptionsMenu(menu);
@@ -285,7 +308,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
     public boolean onOptionsItemSelected(MenuItem item) {
         if (item.getItemId() == R.id.add_item) {
             startActivity(new Intent(activity, DataFormDetailActivity.class)
-            .putExtra("caller",mCaller));
+                    .putExtra("caller", mCaller));
             finish();
         }
         if (item.getItemId() == android.R.id.home) {
@@ -309,6 +332,13 @@ public class CommonDocDetailsActivity extends BaseActivity {
         @Override
         public void handleMessage(Message msg) {
             switch (msg.what) {
+                case SURE_DEVICE:
+                    String deviceResult = msg.getData().getString("result");
+                    boolean success = JSONUtil.getBoolean(deviceResult, "success");
+                    if (success) {
+                        //TODO 确定成功
+                    }
+                    break;
                 case COMMON_DOC_MSG_REQUEST:
                     String msg_result = msg.getData().getString("result");
                     AMshow(msg_result); //单据申请信息展示
@@ -324,17 +354,17 @@ public class CommonDocDetailsActivity extends BaseActivity {
                     Toast.makeText(getApplicationContext(), getString(R.string.common_delete), Toast.LENGTH_LONG).show();
                     progressDialog.dismiss();
                     FormListSelectActivity.isdelete = true;
-                    FormListSelectActivity.reload=false;
+                    FormListSelectActivity.reload = false;
                     finish();
                     break;
-                case  NEW_DELETE_DOC_REQUEST:
-                    if (msg.getData() != null){
+                case NEW_DELETE_DOC_REQUEST:
+                    if (msg.getData() != null) {
                         String new_delete_doc_result = msg.getData().getString("result");
                         LogUtil.prinlnLongMsg("new_delete_doc_result", new_delete_doc_result);
                         Toast.makeText(getApplicationContext(), getString(R.string.common_delete), Toast.LENGTH_LONG).show();
                         progressDialog.dismiss();
                         FormListSelectActivity.isdelete = true;
-                        FormListSelectActivity.reload=false;
+                        FormListSelectActivity.reload = false;
                         finish();
                     }
                     break;
@@ -348,7 +378,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                                     .putExtra("caller", mCaller)
                                     .putExtra("id", mkeyValue)
                                     .putExtra("submittype", "resubmit")
-                                    .putExtra("status","已提交"));
+                                    .putExtra("status", "已提交"));
 
                             finish();
                         }
@@ -364,17 +394,17 @@ public class CommonDocDetailsActivity extends BaseActivity {
                     }
                     break;
                 case NEW_DOC_RESUB_SUCCESSFUL:
-                    if (msg.getData() != null){
+                    if (msg.getData() != null) {
                         String new_doc_resub_result = msg.getData().getString("result");
                         LogUtil.prinlnLongMsg("new_doc_resub_result", new_doc_resub_result + "");
                         if (StringUtil.isEmpty(new_doc_resub_result)) return;
                         if (JSON.parseObject(new_doc_resub_result).containsKey("success")
-                                && JSON.parseObject(new_doc_resub_result).getBoolean("success")){
+                                && JSON.parseObject(new_doc_resub_result).getBoolean("success")) {
                             startActivity(new Intent(CommonDocDetailsActivity.this, DataFormDetailActivity.class)
                                     .putExtra("caller", mCaller)
                                     .putExtra("id", mkeyValue)
                                     .putExtra("submittype", "resubmit")
-                                    .putExtra("status","已提交"));
+                                    .putExtra("status", "已提交"));
 
                             finish();
                         }
@@ -383,7 +413,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                     break;
 
                 case New_DOC_REDELETE_SUCCESSFUL:
-                    if (msg.getData() != null){
+                    if (msg.getData() != null) {
                         String new_doc_redelete_result = msg.getData().getString("result");
                         LogUtil.prinlnLongMsg("new_doc_redelete_result", new_doc_redelete_result);
                         if (StringUtil.isEmpty(new_doc_redelete_result)) return;
@@ -397,14 +427,14 @@ public class CommonDocDetailsActivity extends BaseActivity {
                 case 0x01:
                     if (msg.getData() != null) {
                         String result = msg.getData().getString("result");
-                        LogUtil.prinlnLongMsg("0x01result",result);
-                        if (!StringUtil.isEmpty(result) && result.contains("success")&&
-                                JSON.parseObject(result).getBoolean("success")){
+                        LogUtil.prinlnLongMsg("0x01result", result);
+                        if (!StringUtil.isEmpty(result) && result.contains("success") &&
+                                JSON.parseObject(result).getBoolean("success")) {
                             startActivity(new Intent(CommonDocDetailsActivity.this, ExpenseReimbursementActivity.class)
                                     .putExtra("caller", mCaller)
                                     .putExtra("id", mkeyValue)
                                     .putExtra("submittype", "resubmit")
-                                    .putExtra("status","已提交"));
+                                    .putExtra("status", "已提交"));
                             finish();
                         }
                     }
@@ -412,7 +442,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                 case 0x02:
                     if (msg.getData() != null) {
                         String result = msg.getData().getString("result");
-                        LogUtil.prinlnLongMsg("0x02result",result);
+                        LogUtil.prinlnLongMsg("0x02result", result);
                         DeleteComDocRequest(mCaller, mkeyValue);
                     }
                     break;
@@ -442,10 +472,10 @@ public class CommonDocDetailsActivity extends BaseActivity {
         LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
         String url = "";
-        if ("ExtraWork$".equals(mCaller)){
+        if ("ExtraWork$".equals(mCaller)) {
             url = CommonUtil.getSharedPreferences(ct, "erp_baseurl") + "/hr/attendance/deleteExtraWork.action";
             ViewUtil.httpSendRequest(this, url, params, mHandler, headers, NEW_DELETE_DOC_REQUEST, null, null, "post");
-        }else {
+        } else {
             url = CommonUtil.getSharedPreferences(ct, "erp_baseurl") + "/mobile/commondelete.action";
             ViewUtil.httpSendRequest(this, url, params, mHandler, headers, DELETE_DOC_REQUEST, null, null, "get");
         }
@@ -505,7 +535,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                                     (!TextUtils.isEmpty(fd_field) && fd_field.equals("FP_PEOPLE2"))) {
                                 if (!fd_field.equals("null")) {
                                     em_number = formdataArray.getJSONObject(0).getString(fd_field);
-                                    Log.i("em_number", em_number+"");
+                                    Log.i("em_number", em_number + "");
                                 }
                             }
 
@@ -546,7 +576,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
             }
         } catch (JSONException e) {
             e.printStackTrace();
-        }catch (Exception e){
+        } catch (Exception e) {
             e.printStackTrace();
         }
 
@@ -562,6 +592,19 @@ public class CommonDocDetailsActivity extends BaseActivity {
 
     }
 
+    private void sureDevice() {
+        progressDialog.show();
+        //请求获取单据审批流数据
+        String url = CommonUtil.getAppBaseUrl(getApplicationContext()) + "mobile/device/confirmDeal.action";
+        Map<String, Object> param = new HashMap<>();
+        param.put("caller", mCaller);
+        param.put("id", mkeyValue);
+        LinkedHashMap headers = new LinkedHashMap();
+        headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(getApplicationContext(), "sessionId"));
+        ViewUtil.httpSendRequest(getApplicationContext(), url, param, mHandler, headers, SURE_DEVICE, null, null, "post");
+
+    }
+
     /**
      * 申请单据的审批,提交,录入状态
      */
@@ -574,11 +617,11 @@ public class CommonDocDetailsActivity extends BaseActivity {
                 resanddel_ll.setVisibility(View.GONE);
             } else if (real_status.equals("已提交")) {
 
-                if (!TextUtils.isEmpty(last_status) && last_status.equals("已审核")){
+                if (!TextUtils.isEmpty(last_status) && last_status.equals("已审核")) {
                     status_tv.setTextColor(getApplicationContext().getResources().getColor(R.color.approval));
                     status_tv.setText(getString(R.string.status_approved));
                     resanddel_ll.setVisibility(View.GONE);
-                }else {
+                } else {
                     status_tv.setTextColor(getApplicationContext().getResources().getColor(R.color.no_approval));
                     status_tv.setText(getString(R.string.status_pending));
                     resanddel_ll.setVisibility(View.VISIBLE);
@@ -590,8 +633,19 @@ public class CommonDocDetailsActivity extends BaseActivity {
                 resanddel_ll.setVisibility(View.VISIBLE);
             }
         }
-        if (device){
+        if (device) {
+            LogUtil.i("real_status=" + real_status);
             resanddel_ll.setVisibility(View.GONE);
+            if (real_status.equals("已审核")) {
+                sureTv.setVisibility(View.VISIBLE);
+                sureTv.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        sureDevice();
+                    }
+                });
+            }
+
         }
     }
 
@@ -606,7 +660,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
 
     public void AFshow(String af_result) {
         try {
-            JSONObject resultJsonObject =JSON.parseObject(af_result);
+            JSONObject resultJsonObject = JSON.parseObject(af_result);
             //JSONArray dailynodeArray = resultJsonObject.getJSONArray("nodes");
             if (resultJsonObject == null) {
                 appflow_lv.setVisibility(View.GONE);
@@ -691,7 +745,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                                 } catch (Exception e) {
                                     e.printStackTrace();
                                 }
-                            }else {
+                            } else {
                                 im_ids.add("");
                             }
 
@@ -710,7 +764,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                             //取process之后的审批人名字
                             if (!TextUtils.isEmpty(mCommonApprovalFlowBean.getData().get(j).getJP_NODEDEALMANNAME())) {
                                 afpeople_names.add(mCommonApprovalFlowBean.getData().get(j).getJP_NODEDEALMANNAME());
-                            }else{
+                            } else {
                                 afpeople_names.add("");
                             }
                             //取process之后的imid
@@ -737,7 +791,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                                 } catch (Exception e) {
                                     e.printStackTrace();
                                 }
-                            }else {
+                            } else {
                                 im_ids.add("");
                             }
                         }
@@ -801,13 +855,14 @@ public class CommonDocDetailsActivity extends BaseActivity {
             }
         } catch (JSONException e) {
             e.printStackTrace();
-        }catch (Exception e){
+        } catch (Exception e) {
             e.printStackTrace();
         }
 
         handlerNode(af_result);
         getemcodefromAF();
     }
+
     private void handlerNode(String message) {
         List<Approval> approvals = ApprovaNodeUtil.handlerNode(manager, message);
         if (!ListUtils.isEmpty(approvals)) {
@@ -818,6 +873,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
         }
         progressDialog.dismiss();
     }
+
     /**
      * 申请单据申请人emcode,从审批流数据获取
      */
@@ -850,7 +906,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                     } else {
                         name_tv.setText(MyApplication.getInstance().mLoginUser.getNickName());
                     }
-                }else {
+                } else {
                     String em_name = CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_emname");
                     name_tv.setText(em_name);
                     String loginUserId = MyApplication.getInstance().mLoginUser.getUserId();
@@ -898,14 +954,14 @@ public class CommonDocDetailsActivity extends BaseActivity {
                                         LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
                                         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
                                         String url = "";
-                                        if ("ExtraWork$".equals(mCaller)){ // 新的加班单反提交
+                                        if ("ExtraWork$".equals(mCaller)) { // 新的加班单反提交
                                             url = CommonUtil.getAppBaseUrl(ct) + "/hr/attendance/resSubmitExtraWork.action";
                                             ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, NEW_DOC_RESUB_SUCCESSFUL, null, null, "post");
 
-                                        }else if("FeePlease!FYBX".equals(mCaller)){ // 报销单
+                                        } else if ("FeePlease!FYBX".equals(mCaller)) { // 报销单
                                             url = CommonUtil.getAppBaseUrl(ct) + "oa/fee/resSubmitFeePlease.action";
                                             ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, 0x01, null, null, "post");
-                                        }else { // 通用老的反提交
+                                        } else { // 通用老的反提交
                                             url = CommonUtil.getAppBaseUrl(ct) + "/mobile/commonres.action";
                                             ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, COM_DOC_RESUB_SUCCESSFUL, null, null, "post");
                                         }
@@ -944,8 +1000,8 @@ public class CommonDocDetailsActivity extends BaseActivity {
                             .setNegativeButton(getString(R.string.common_cancel), null)
                             .setPositiveButton(getString(R.string.common_sure), new DialogInterface.OnClickListener() {
                                 @Override
-                                    public void onClick(DialogInterface dialog, int which) {  //反提交
-                                        progressDialog.show();
+                                public void onClick(DialogInterface dialog, int which) {  //反提交
+                                    progressDialog.show();
 
                                     Map<String, Object> params = new HashMap<>();
                                     params.put("caller", mCaller);
@@ -953,18 +1009,18 @@ public class CommonDocDetailsActivity extends BaseActivity {
                                     LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
                                     headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
                                     String url = "";
-                                    if ("ExtraWork$".equals(mCaller)){ // 新的加班单反提交
+                                    if ("ExtraWork$".equals(mCaller)) { // 新的加班单反提交
                                         url = CommonUtil.getAppBaseUrl(ct) + "/hr/attendance/resSubmitExtraWork.action";
                                         ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, New_DOC_REDELETE_SUCCESSFUL, null, null, "post");
-                                    }else if ("FeePlease!FYBX".equals(mCaller)){
+                                    } else if ("FeePlease!FYBX".equals(mCaller)) {
                                         url = CommonUtil.getAppBaseUrl(ct) + "oa/fee/resSubmitFeePlease.action";
                                         ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, 0x02, null, null, "post");
-                                    }else { // 通用老的反提交s
+                                    } else { // 通用老的反提交s
                                         url = CommonUtil.getAppBaseUrl(ct) + "/mobile/commonres.action";
                                         ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, COM_DOC_REDELETE_SUCCESSFUL, null, null, "post");
                                     }
-                                    }
-                                }).show();
+                                }
+                            }).show();
                 }
             }
         });
@@ -1017,24 +1073,24 @@ public class CommonDocDetailsActivity extends BaseActivity {
     @Override
     public boolean onKeyDown(int keyCode, KeyEvent event) {
         if ((keyCode == KeyEvent.KEYCODE_BACK)) {
-            if (device){
+            if (device) {
                 endDevice();
-            }else{
+            } else {
                 if (ActivityUtils.isExsitMianActivity(mContext, FormListSelectActivity.class)) {
                     LogUtil.d("正常返回...");
-                    if ("1".equals(update)){
+                    if ("1".equals(update)) {
                         startActivity(new Intent(mContext, FormListSelectActivity.class).putExtra("caller", mCaller)
                                 .putExtra("update", update));
                         finish();
-                    }else{
+                    } else {
                         onBackPressed();
                     }
                 } else {
-                    LogUtil.d("非正常返回..."+update);
-                    if ("1".equals(update)){
-                        FormListSelectActivity.reload=true;
-                    }else{
-                        FormListSelectActivity.reload=false;
+                    LogUtil.d("非正常返回..." + update);
+                    if ("1".equals(update)) {
+                        FormListSelectActivity.reload = true;
+                    } else {
+                        FormListSelectActivity.reload = false;
                     }
                     startActivity(
                             new Intent(mContext, FormListSelectActivity.class)
@@ -1048,20 +1104,26 @@ public class CommonDocDetailsActivity extends BaseActivity {
         }
 
     }
-    private void endDevice(){
+
+    private void endDevice() {
         String dc_class = null;
         if (mCaller.equals("DeviceChange!Use")) {
             dc_class = "使用转移";
         } else if (mCaller.equals("DeviceChange!Scrap")) {
-            dc_class = "报废";
+            dc_class = "报废申请";
         } else if (mCaller.equals("DeviceChange!Maintain")) {
             dc_class = "保养维护";
         } else if (mCaller.equals("DeviceChange!Inspect")) {
             dc_class = "故障送检";
         }
-        startActivity(new Intent(ct, DeviceQueryActivity.class).putExtra(Constants.FLAG.DEVICE_CALLER, mCaller)
-                .putExtra(Constants.FLAG.DEVICE_CLASS, dc_class));
-        finish();
+        if (ActivityUtils.isExsitMianActivity(mContext, DeviceQueryActivity.class)) {
+            onBackPressed();
+        } else {
+            startActivity(new Intent(ct, DeviceQueryActivity.class).putExtra(Constants.FLAG.DEVICE_CALLER, mCaller)
+                    .putExtra(Constants.FLAG.DEVICE_CLASS, dc_class)
+            );
+            finish();
+        }
     }
 
     /**
@@ -1079,19 +1141,25 @@ public class CommonDocDetailsActivity extends BaseActivity {
         }
 
         @Override
-        public int getCount() { return  getFb_attachs() == null ? 0 : getFb_attachs().length;}
+        public int getCount() {
+            return getFb_attachs() == null ? 0 : getFb_attachs().length;
+        }
+
         @Override
         public Object getItem(int position) {
             return position;
         }
+
         @Override
         public long getItemId(int position) {
             return position;
         }
+
         @Override
         public int getViewTypeCount() {
             return 1;
         }
+
         @Override
         public int getItemViewType(int position) {
             return position;
@@ -1099,27 +1167,30 @@ public class CommonDocDetailsActivity extends BaseActivity {
 
         @Override
         public View getView(final int position, View convertView, ViewGroup parent) {
-                SquareCenterImageView imageView = new SquareCenterImageView(ct);
-                imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
-                int id = CommonUtil.getNumByString(getFb_attachs()[position]);
-                ImageLoader.getInstance().displayImage(getImageUrl(id), imageView);
-                return imageView;
+            SquareCenterImageView imageView = new SquareCenterImageView(ct);
+            imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
+            int id = CommonUtil.getNumByString(getFb_attachs()[position]);
+            ImageLoader.getInstance().displayImage(getImageUrl(id), imageView);
+            return imageView;
         }
+
     }
 
     private String fb_attachs[] = {};
+
     /**
      * 获取报销单的发票并显示
+     *
      * @param formdataArray
      */
     private void showExP(JSONArray formdataArray) {
         if (formdataArray != null && "FeePlease!FYBX".equals(mCaller)) {
             try {
                 String fb_attach = formdataArray.getJSONObject(0).getString("fb_attach");
-                Log.i("fb_attachshow",fb_attach+"show");
-                if (fb_attach==null||"null".equals(fb_attach)||fb_attach.length()<=0) {
+                Log.i("fb_attachshow", fb_attach + "show");
+                if (fb_attach == null || "null".equals(fb_attach) || fb_attach.length() <= 0) {
                     ex_invoice_ll.setVisibility(View.GONE);
-                }else {
+                } else {
                     fb_attachs = fb_attach.split(";");
                     mAdapter.setFb_attachs(fb_attachs);
                     grid_view.deferNotifyDataSetChanged();
@@ -1128,7 +1199,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
             } catch (JSONException e) {
                 e.printStackTrace();
             }
-        }else {
+        } else {
             return;
         }
 
@@ -1140,10 +1211,11 @@ public class CommonDocDetailsActivity extends BaseActivity {
                 intent.putExtra(AppConstant.EXTRA_IMAGE_URI,
                         getImageUrl(CommonUtil.getNumByString(fb_attachs[position])));
                 startActivity(intent);
-                Log.i("P_position",mPosition+"");
+                Log.i("P_position", mPosition + "");
             }
         });
     }
+
     private String getImageUrl(int id) {
         return CommonUtil.getAppBaseUrl(ct) + "common/downloadbyId.action?id=" + id + "&sessionId=" +
                 CommonUtil.getSharedPreferences(ct, "sessionId") +

+ 8 - 12
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/activity/BusinessTravelActivity.java

@@ -9,6 +9,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.common.LogUtil;
 import com.common.config.BaseConfig;
 import com.common.data.JSONUtil;
+import com.common.data.ListUtils;
 import com.core.base.BaseActivity;
 import com.core.utils.CommonUtil;
 import com.core.utils.ToastUtil;
@@ -66,21 +67,12 @@ public class BusinessTravelActivity extends BaseActivity {
 
 
     public void loadData(int page) {
-        if (1 == 1) {
-            try {
-                handlerData(TestStr.FEEPLEASE);
-                mRefreshLayout.stopRefresh();
-            } catch (Exception e) {
-                e.printStackTrace();
-            }
-        } else {
             if (!mRefreshLayout.isRefreshing()) {
                 progressDialog.show();
             }
             httpClient.Api().send(new HttpClient.Builder()
-                    .url("mobile/getFeePlease.action")
+                    .url("mobile/getBussinessTrip.action")
                     .add("emcode", CommonUtil.getEmcode())
-                    .add("page", page)
                     .header("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(BaseConfig.getContext(), "sessionId"))
                     .method(Method.GET)
                     .build(), new ResultSubscriber<>(new ResultListener<Object>() {
@@ -100,8 +92,6 @@ public class BusinessTravelActivity extends BaseActivity {
                     progressDialog.dismiss();
                 }
             }));
-        }
-
     }
 
     private void handlerData(String message) throws Exception {
@@ -119,10 +109,16 @@ public class BusinessTravelActivity extends BaseActivity {
                 models.add(new BusinessTravel(reimbursements.getJSONObject(i)));
             }
         }
+
         setAdapter(models);
     }
 
     private void setAdapter(List<BusinessTravel> models) {
+        if (BaseConfig.isDebug()){
+            if (ListUtils.isEmpty(models)){
+
+            }
+        }
         if (mAdapter == null) {
             mAdapter = new BusinessTravelAdapter(ct, models, new BusinessTravelAdapter.OnItemClickListener() {
                 @Override

+ 60 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/ActivityAdapter.java

@@ -1,6 +1,7 @@
 package com.uas.appworks.OA.platform.adapter;
 
 import android.content.Context;
+import android.graphics.Bitmap;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -8,6 +9,7 @@ import android.widget.BaseAdapter;
 import android.widget.ImageView;
 import android.widget.TextView;
 
+import com.common.LogUtil;
 import com.common.config.BaseConfig;
 import com.common.data.DateFormatUtil;
 import com.common.data.ListUtils;
@@ -15,6 +17,10 @@ import com.common.data.StringUtil;
 import com.common.data.TextUtil;
 import com.core.app.MyApplication;
 import com.nostra13.universalimageloader.core.ImageLoader;
+import com.nostra13.universalimageloader.core.assist.FailReason;
+import com.nostra13.universalimageloader.core.assist.ImageLoadingListener;
+import com.nostra13.universalimageloader.core.imageaware.ImageAware;
+import com.nostra13.universalimageloader.core.imageaware.ImageViewAware;
 import com.uas.appworks.OA.platform.config.ImageConfig;
 import com.uas.appworks.OA.platform.model.CharitActModel;
 import com.uas.appworks.R;
@@ -81,7 +87,36 @@ public class ActivityAdapter extends BaseAdapter {
         } else {
             hoder = (ViewHoder) view.getTag();
         }
-        ImageLoader.getInstance().displayImage(model.getActImg(), hoder.contantImg, ImageConfig.getCharitableImageOptions());
+        final ViewHoder finalHoder=hoder;
+        final String  url=model.getActImg();
+        finalHoder.contantImg.setTag(url);
+        ImageLoader.getInstance().displayImage(model.getActImg(), finalHoder.contantImg, ImageConfig.getCharitableImageOptions(), new ImageLoadingListener() {
+            @Override
+            public void onLoadingStarted(String s, View view) {
+                LogUtil.i("onLoadingStarted view instanceof ImageView");
+                finalHoder.contantImg.setImageResource(R.drawable.charitable_def_image);
+            }
+
+            @Override
+            public void onLoadingFailed(String s, View view, FailReason failReason) {
+                LogUtil.i("onLoadingFailed view instanceof ImageView");
+                finalHoder.contantImg.setImageResource(R.drawable.charitable_def_image);
+            }
+
+            @Override
+            public void onLoadingComplete(String s, View view, Bitmap bitmap) {
+                LogUtil.i("onLoadingComplete view instanceof ImageView");
+                if (finalHoder.contantImg.getTag()!=null&& url.equals(finalHoder.contantImg.getTag())){
+                    finalHoder.contantImg.setImageBitmap(bitmap);
+                }
+            }
+
+            @Override
+            public void onLoadingCancelled(String s, View view) {
+                LogUtil.i("onLoadingCancelled view instanceof ImageView");
+                finalHoder.contantImg.setImageResource(R.drawable.charitable_def_image);
+            }
+        });
         StringBuilder str = new StringBuilder("");
         if (!ListUtils.isEmpty(model.getAwards())) {
             for (CharitActModel.AwardsBean b : model.getAwards()) {
@@ -124,4 +159,28 @@ public class ActivityAdapter extends BaseAdapter {
         TextView titleTv;
         TextView subTv;
     }
+
+//    private ImageLoadingListener imageLoadingListener = new ImageLoadingListener() {
+//        @Override
+//        public void onLoadingStarted(String s, View view) {
+//            if (view instanceof ImageView) {
+//                LogUtil.i("onLoadingStarted view instanceof ImageView");
+//            }
+//        }
+//
+//        @Override
+//        public void onLoadingFailed(String s, View view, FailReason failReason) {
+//            LogUtil.i("onLoadingFailed view instanceof ImageView");
+//        }
+//
+//        @Override
+//        public void onLoadingComplete(String s, View view, Bitmap bitmap) {
+//            LogUtil.i("onLoadingComplete view instanceof ImageView");
+//        }
+//
+//        @Override
+//        public void onLoadingCancelled(String s, View view) {
+//            LogUtil.i("onLoadingCancelled view instanceof ImageView");
+//        }
+//    };
 }

+ 21 - 8
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/adapter/TypeAdapter.java

@@ -10,6 +10,7 @@ import android.widget.BaseAdapter;
 import android.widget.Button;
 import android.widget.TextView;
 
+import com.common.LogUtil;
 import com.common.data.ListUtils;
 import com.uas.appworks.R;
 
@@ -26,20 +27,18 @@ public class TypeAdapter extends RecyclerView.Adapter<TypeAdapter.ViewHolder> im
     private int lastPosition = 0;
     private ChangeListener changeListener = null;
 
-    public void setAreaList(List<String> areaList) {
-        this.areaList = areaList;
-        notifyDataSetChanged();
-    }
 
-    public TypeAdapter(Context ct, List<String> areaList, ChangeListener changeListener) {
+
+    public TypeAdapter(Context ct, List<String> areaList,int lastPosition, ChangeListener changeListener) {
         this.ct = ct;
         this.areaList = areaList;
+        this.lastPosition = lastPosition;
         this.changeListener = changeListener;
     }
 
     @Override
     public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
-        return new ViewHolder(getLayoutInflater().inflate(R.layout.item_type_btn,parent,false));
+        return new ViewHolder(getLayoutInflater().inflate(R.layout.item_type_btn, parent, false));
     }
 
     @Override
@@ -53,13 +52,21 @@ public class TypeAdapter extends RecyclerView.Adapter<TypeAdapter.ViewHolder> im
             holder.typeBtn.setTextColor(ct.getResources().getColor(R.color.hintColor));
         }
         holder.typeBtn.setPadding(20, 10, 20, 10);
+        final ViewHolder finalHolder = holder;
+//        finalHolder.typeBtn.post(new Runnable() {
+//            @Override
+//            public void run() {
+//                int width = finalHolder.typeBtn.getWidth();
+//                LogUtil.i(finalHolder.typeBtn.getText().toString() + "==" + width);
+//            }
+//        });
         holder.itemView.setTag(position);
         holder.itemView.setOnClickListener(this);
     }
 
     @Override
     public int getItemCount() {
-        return  ListUtils.getSize(areaList);
+        return ListUtils.getSize(areaList);
     }
 
 
@@ -70,12 +77,18 @@ public class TypeAdapter extends RecyclerView.Adapter<TypeAdapter.ViewHolder> im
             lastPosition = (int) view.getTag();
             notifyItemChanged(upLast);
             notifyItemChanged(lastPosition);
-            if (changeListener!=null&&ListUtils.getSize(areaList)>lastPosition){
+            if (changeListener != null && ListUtils.getSize(areaList) > lastPosition) {
                 changeListener.change(areaList.get(lastPosition));
             }
         }
     }
 
+    public void clear() {
+        int pos = lastPosition;
+        lastPosition = -1;
+        notifyItemChanged(pos);
+    }
+
     class ViewHolder extends RecyclerView.ViewHolder {
         TextView typeBtn;
 

+ 0 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/fragment/ActivityFragment.java

@@ -219,7 +219,6 @@ public class ActivityFragment extends EasyFragment implements View.OnClickListen
             allModels = new ArrayList<>();
         }
         setAdapter(status, allModels);
-        PreferenceUtils.putString("activitys", message);
     }
 
     private void handlerData(final String message, final String status) throws Exception {

+ 97 - 58
app_modular/appworks/src/main/java/com/uas/appworks/OA/platform/fragment/CharitableListFragment.java

@@ -6,6 +6,8 @@ import android.graphics.Color;
 import android.os.Bundle;
 import android.support.v7.widget.DefaultItemAnimator;
 import android.support.v7.widget.GridLayoutManager;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.OrientationHelper;
 import android.support.v7.widget.RecyclerView;
 import android.view.Gravity;
 import android.view.LayoutInflater;
@@ -69,7 +71,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
             .readTimeout(5000)
             .isDebug(true).build();
     private CustomerBanner banner;
-    private RecyclerView typeGv;
+    private RecyclerView typeGv, typeGv2;
     private BaseActivity baseActivity;
     private PullToRefreshListView refreshListView;
 
@@ -133,6 +135,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
         moneyAmountLL = (LinearLayout) handlerView.findViewById(R.id.moneyAmountLL);
         banner = (CustomerBanner) handlerView.findViewById(R.id.banner);
         typeGv = (RecyclerView) handlerView.findViewById(R.id.typeGv);
+        typeGv2 = (RecyclerView) handlerView.findViewById(R.id.typeGv2);
         return handlerView;
     }
 
@@ -203,7 +206,6 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
                 char c = showTop.charAt(i);
                 TextView textView = new TextView(ct);
                 textView.setTextSize(textSize);
-                textView.setPadding(4, 2, 4, 2);
                 textView.setText(String.valueOf(c));
                 textView.setGravity(Gravity.CENTER_VERTICAL);
                 textView.setBackgroundResource(R.drawable.text_frame_hint_bg);
@@ -228,14 +230,19 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
         }
         setBannerData(list);
         List<String> areaList = new ArrayList<>();
+        List<String> areaList2 = new ArrayList<>();
         allArea.add(0, "全部");
         for (int i = 0; i < allArea.size(); i++) {
             String type = allArea.getString(i);
             if (!StringUtil.isEmpty(type)) {
-                areaList.add(type);
+                if (i < 4) {
+                    areaList.add(type);
+                } else {
+                    areaList2.add(type);
+                }
             }
         }
-        setTypeData(areaList);
+        setTypeData(areaList, areaList2);
         PreferenceUtils.putString("appIndex", message);
     }
 
@@ -295,73 +302,105 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
         }
     }
 
+    //TODO 我真是被这样的需求搞废了
     private TypeAdapter typeAdapter;
+    private TypeAdapter typeAdapter2;
+
+    private void setTypeData(final List<String> areaList, final List<String> areaList2) {
+        typeAdapter = new TypeAdapter(ct, areaList, 0, new TypeAdapter.ChangeListener() {
+            @Override
+            public void change(String type) {
+                typeAdapter2.clear();
+                loadProjects(type);
+            }
+        });
+        typeAdapter2 = new TypeAdapter(ct, areaList2, -1, new TypeAdapter.ChangeListener() {
+            @Override
+            public void change(String type) {
+                typeAdapter.clear();
+                loadProjects(type);
+            }
+        });
+
+        typeGv.setItemAnimator(new DefaultItemAnimator());
+        LinearLayoutManager layoutManager = new LinearLayoutManager(ct);
+        layoutManager.setOrientation(OrientationHelper.HORIZONTAL);
+        typeGv.setLayoutManager(layoutManager);
+        typeGv.setAdapter(typeAdapter);
+        LinearLayoutManager layoutManager2 = new LinearLayoutManager(ct);
+        layoutManager2.setOrientation(OrientationHelper.HORIZONTAL);
+        typeGv2.setItemAnimator(new DefaultItemAnimator());
+        typeGv2.setLayoutManager(layoutManager2);
+        typeGv2.setAdapter(typeAdapter2);
+//            GridLayoutManager layoutManager = new GridLayoutManager(ct, 782);
+//            layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
+//                @Override
+//                public int getSpanSize(int position) {
+//                    switch (position) {
+//                        case 0:
+//                            return 124;
+//                        case 1:
+//                            return 208;
+//                        case 2:
+//                            return 225;
+//                        case 3:
+//                            return 225;
+//                        case 4:
+//                            return 309;
+//                        case 6:
+//                            return 225;
+//                        case 7:
+//                            return 124;
+//                        default:
+//                            return 124;
+//                    }
+////
+//                }
+//            });
+
 
-    private void setTypeData(final List<String> areaList) {
-        if (typeAdapter == null) {
-            typeAdapter = new TypeAdapter(ct, areaList, new TypeAdapter.ChangeListener() {
-                @Override
-                public void change(String type) {
-                    loadProjects(type);
-                }
-            });
-            typeGv.setItemAnimator(new DefaultItemAnimator());
-            GridLayoutManager layoutManager = new GridLayoutManager(ct, 360);
-            layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
-                @Override
-                public int getSpanSize(int position) {
-                    int spanSize =32+(areaList.get(position).length())*14;
-                    LogUtil.i("spanSize="+spanSize);
-                    return spanSize;
-                }
-            });
-            typeGv.setLayoutManager(layoutManager);
-            typeGv.setAdapter(typeAdapter);
-        } else {
-            typeAdapter.setAreaList(areaList);
-        }
     }
 
     private CharitableAdapter charitableAdapter;
 
     private void setContantData(List<CharitModel> models) {
 //        if (charitableAdapter == null) {
-            charitableAdapter = new CharitableAdapter(ct, models, new CharitableAdapter.MyClickListener() {
-                @Override
-                public void myOnClick(int position, View v) {
-                    CharitModel model = charitableAdapter.getModels(position);
-                    if (!model.isEnded()) {
-                        SelectPlayPop.showPlay(getActivity(), charitableAdapter.getModels(position), new SelectPlayPop.OnSureListener() {
-                            @Override
-                            public void sure(double num, int type, CharitModel model) {
-                                if (type == 1) {
-                                    LogUtil.i("选择了微信支付");
-                                } else {
-                                    LogUtil.i("选择了支付宝支付");
-                                }
-                                loadOrderInfo(num, model);
+        charitableAdapter = new CharitableAdapter(ct, models, new CharitableAdapter.MyClickListener() {
+            @Override
+            public void myOnClick(int position, View v) {
+                CharitModel model = charitableAdapter.getModels(position);
+                if (!model.isEnded()) {
+                    SelectPlayPop.showPlay(getActivity(), charitableAdapter.getModels(position), new SelectPlayPop.OnSureListener() {
+                        @Override
+                        public void sure(double num, int type, CharitModel model) {
+                            if (type == 1) {
+                                LogUtil.i("选择了微信支付");
+                            } else {
+                                LogUtil.i("选择了支付宝支付");
                             }
-                        });
-                    }
+                            loadOrderInfo(num, model);
+                        }
+                    });
+                }
 
 
-                }
-            });
-            refreshListView.setAdapter(charitableAdapter);
-            refreshListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
-                @Override
-                public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
-                    if (charitableAdapter != null) {
-                        CharitModel model = charitableAdapter.getModels((int) l);
-                        if (model != null) {
-                            IntentUtils.linkCommonWeb(ct, Constants.BASE_CHARIT_PROJECT_URL
-                                            + model.getId() + "/" + MyApplication.getInstance().getLoginUserId()
-                                    , StringUtil.getMessage(R.string.charitable)
-                                    , model.getMobileImg(), model.getName());
-                        }
+            }
+        });
+        refreshListView.setAdapter(charitableAdapter);
+        refreshListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
+            @Override
+            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
+                if (charitableAdapter != null) {
+                    CharitModel model = charitableAdapter.getModels((int) l);
+                    if (model != null) {
+                        IntentUtils.linkCommonWeb(ct, Constants.BASE_CHARIT_PROJECT_URL
+                                        + model.getId() + "/" + MyApplication.getInstance().getLoginUserId()
+                                , StringUtil.getMessage(R.string.charitable)
+                                , model.getMobileImg(), model.getName());
                     }
                 }
-            });
+            }
+        });
 //        } else {
 //            charitableAdapter.setModels(models);
 //        }

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/widget/SelectPlayPop.java

@@ -161,7 +161,7 @@ public class SelectPlayPop {
         agreeNoteTv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
-                IntentUtils.linkCommonWeb(ct,"http://lj.ubtob.com/userAgreement");
+                IntentUtils.linkCommonWeb(ct,"http://lj.ubtob.com/mobile#/userAgreement");
             }
         });
         agreeCb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

+ 1 - 1
app_modular/appworks/src/main/res/drawable/text_frame_hint_bg.xml

@@ -4,7 +4,7 @@
         <shape>
             <solid android:color="@color/black_gray" />
             <stroke android:width="@dimen/line" android:color="@color/item_line" />
-            <padding android:bottom="2dp" android:left="2dp" android:right="2dp" android:top="2dp" />
+            <padding android:bottom="2dp" android:left="3dp" android:right="3dp" android:top="2dp" />
         </shape>
     </item>
 </selector>

+ 2 - 2
app_modular/appworks/src/main/res/layout/device_scan_head.xml

@@ -24,8 +24,8 @@
 
     <RadioGroup
         android:id="@+id/selectRg"
-        android:paddingTop="4dp"
-        android:paddingBottom="4dp"
+        android:layout_marginTop="4dp"
+        android:layout_marginBottom="4dp"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:layout_centerInParent="true"

+ 18 - 7
app_modular/appworks/src/main/res/layout/handler_charit_list.xml

@@ -7,7 +7,7 @@
 
     <LinearLayout
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
+        android:layout_height="30dp"
         android:background="@color/white">
 
         <TextView
@@ -30,9 +30,9 @@
             android:divider="@drawable/spacer_medium"
             android:gravity="center_vertical"
             android:orientation="horizontal"
-            android:showDividers="middle"
-            android:paddingTop="3dp"
             android:paddingBottom="3dp"
+            android:paddingTop="3dp"
+            android:showDividers="middle"
             android:visibility="visible" />
 
     </LinearLayout>
@@ -52,15 +52,26 @@
     <android.support.v7.widget.RecyclerView
         android:id="@+id/typeGv"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content"
+        android:layout_height="38dp"
+        android:layout_gravity="center"
+        android:background="@color/white"
+        android:paddingTop="@dimen/padding"
+        android:gravity="center"
+        android:horizontalSpacing="10dp"
+        android:paddingLeft="@dimen/padding"
+        android:paddingRight="@dimen/padding"
+        android:verticalSpacing="10dp" />
+
+    <android.support.v7.widget.RecyclerView
+        android:id="@+id/typeGv2"
+        android:layout_width="match_parent"
+        android:layout_height="38dp"
         android:layout_gravity="center"
-        android:layout_marginTop="10dp"
         android:background="@color/white"
         android:gravity="center"
         android:horizontalSpacing="10dp"
-        android:paddingBottom="10dp"
+        android:paddingBottom="@dimen/padding"
         android:paddingLeft="@dimen/padding"
         android:paddingRight="@dimen/padding"
-        android:paddingTop="10dp"
         android:verticalSpacing="10dp" />
 </LinearLayout>

+ 2 - 1
app_modular/appworks/src/main/res/layout/item_type_btn.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
+    android:layout_width="wrap_content"
     android:paddingTop="@dimen/paddingMin"
     android:paddingBottom="@dimen/paddingMin"
     android:layout_height="wrap_content">
@@ -17,6 +17,7 @@
         android:lines="1"
         android:ellipsize="end"
         android:paddingBottom="4dp"
+        android:layout_marginRight="15dp"
         android:paddingLeft="@dimen/padding"
         android:paddingRight="@dimen/padding"
         android:paddingTop="4dp"