Ver Fonte

2016/9/19-1 bug修复

Bitliker há 9 anos atrás
pai
commit
6f9cdfe2b7

+ 1 - 1
WeiChat/build.gradle

@@ -4,7 +4,7 @@ apply plugin: 'com.getkeepsafe.dexcount'
 android {
     signingConfigs {
         config {
-            storeFile file('E:/CompanyProject/applicationsignname[20150409]')
+            storeFile file('D:/config/applicationsignname[20150409]')
             storePassword '13237658359'
             keyAlias 'jie-20150409'
             keyPassword '13237658359'

+ 27 - 20
WeiChat/src/main/AndroidManifest.xml

@@ -62,21 +62,23 @@
     <uses-permission android:name="android.permission.INTERNET" />
     <uses-permission android:name="android.permission.GET_TASKS" />
     <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
-
-
-    <uses-permission android:name="android.permission.CAMERA"/>
-    <uses-permission android:name="android.permission.INTERNET"/>
-    <uses-permission android:name="android.permission.VIBRATE"/>
-    <uses-permission android:name="android.permission.FLASHLIGHT"/>
-    <uses-permission android:name="android.permission.READ_CONTACTS"/>
-    <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
-    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
-    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
-    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
-    <uses-permission android:name="android.permission.VIBRATE" /> <!-- 震动权限 -->
     <uses-permission android:name="android.permission.CAMERA" />
-    <uses-feature android:name="android.hardware.camera" /> <!-- 使用照相机权限 -->
-    <uses-feature android:name="android.hardware.camera.autofocus" /> <!-- 自动聚焦权限 -->
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.VIBRATE" />
+    <uses-permission android:name="android.permission.FLASHLIGHT" />
+    <uses-permission android:name="android.permission.READ_CONTACTS" />
+    <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
+    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
+    <uses-permission android:name="android.permission.VIBRATE" />
+    <!-- 震动权限 -->
+    <uses-permission android:name="android.permission.CAMERA" />
+
+    <uses-feature android:name="android.hardware.camera" />
+    <!-- 使用照相机权限 -->
+    <uses-feature android:name="android.hardware.camera.autofocus" />
+    <!-- 自动聚焦权限 -->
     <!-- 全局样式不要随意改动  @style/AppTheme -->
     <application
         android:name=".MyApplication"
@@ -210,8 +212,8 @@
         <activity
             android:name=".ui.me.BasicInfoEditActivity"
             android:windowSoftInputMode="stateHidden|stateAlwaysHidden" />
-        <activity android:name=".CaptureResultActivity"/>
-        <activity android:name=".CommonWebviewActivity"/>
+        <activity android:name=".CaptureResultActivity" />
+        <activity android:name=".CommonWebviewActivity" />
         <!-- Tool Activity -->
         <activity
             android:name=".ui.tool.MultiImagePreviewActivity"
@@ -426,7 +428,9 @@
         <activity android:name=".ui.erp.activity.crm.ClientActivity" />
         <activity
             android:name=".ui.erp.activity.oa.SigninActivity"
-            android:theme="@style/Theme.AppCompat.NoActionBar" />
+            android:label=""
+            android:theme="@style/OAThemeSignin" />
+        <!-- android:theme="@style/Theme.AppCompat.NoActionBar" /> -->
         <activity
             android:name=".ui.erp.activity.oa.AddMeetingActivity"
             android:label="新建会议"
@@ -511,7 +515,8 @@
         <activity android:name=".ui.erp.activity.oa.AddMeetMainActivity" />
         <activity
             android:name=".ui.erp.activity.oa.WorkLogsActivity"
-            android:label="工作日志" />
+            android:label="工作日志"
+            android:theme="@style/OAThemeSignin" />
         <activity android:name=".ui.erp.activity.oa.AddSigninActivity" />
         <activity android:name=".ui.erp.activity.oa.AddNextSigninActivity" />
         <activity android:name=".ui.erp.activity.oa.SigninTimeSetActivity" />
@@ -531,8 +536,8 @@
             android:label="地点微调" />
         <activity
             android:name=".ui.erp.activity.oa.AlarmaActivity"
-            android:theme="@style/OAThemeSignin"
-            android:label="签到提醒" />
+            android:label="签到提醒"
+            android:theme="@style/OAThemeSignin" />
         <activity
             android:name=".ui.erp.activity.oa.MeetingActivity"
             android:label="会议管理"
@@ -572,5 +577,7 @@
             android:label="外勤签到列表"
             android:theme="@style/OAThemeOutOffice" />
         <activity android:name=".ui.erp.activity.oa.OptionActivity" />
+        <activity android:name=".ui.erp.activity.oa.SelectListActivity"></activity>
     </application>
+
 </manifest>

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

@@ -384,6 +384,12 @@ public class TaskAddActivity extends BaseActivity implements View.OnClickListene
                 showNoticeDialog();
                 break;
             case R.id.tv_priority:
+//                Intent data = new Intent(ct, SelectListActivity.class);
+//                String[] str = new String[]{"特急",
+//                        "紧急", "一般", "不紧急"};
+//                data.putExtra("data", str);
+//                data.putExtra("type", 1);
+//                startActivityForResult(data, 0x20);
                 showPriorityDialog(tv_priority, 0x11);
                 break;
             case R.id.tv_executive:

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

@@ -191,6 +191,7 @@ public class AddMeetingActivity extends BaseActivity implements View.OnClickList
                 startActivityForResult(intent, request);
                 break;
             case R.id.tag_rl://点击会议标签
+//                startActivity(new Intent(ct, SelectListActivity.class));
                 showTagSelect();
                 break;
         }

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

@@ -1,5 +1,6 @@
 package com.xzjmyk.pm.activity.ui.erp.activity.oa;
 
+import android.content.Intent;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
@@ -19,6 +20,7 @@ import com.baidu.mapapi.model.LatLng;
 import com.lidroid.xutils.ViewUtils;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.nostra13.universalimageloader.core.ImageLoader;
+import com.xzjmyk.pm.activity.AppConstant;
 import com.xzjmyk.pm.activity.MyApplication;
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.helper.AvatarHelper;
@@ -27,6 +29,7 @@ import com.xzjmyk.pm.activity.ui.erp.net.ViewUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
 import com.xzjmyk.pm.activity.ui.erp.util.Constants;
 import com.xzjmyk.pm.activity.ui.erp.view.EmptyLayout;
+import com.xzjmyk.pm.activity.ui.tool.SingleImagePreviewActivity;
 import com.xzjmyk.pm.activity.util.BaiduMapUtil;
 import com.xzjmyk.pm.activity.util.CalendarUtils;
 import com.xzjmyk.pm.activity.util.StringUtils;
@@ -199,7 +202,7 @@ public class OAListActivity extends BaseActivity {
             } else {
                 holder = (ViewHolder) view.getTag();
             }
-            JSONObject object = json.getJSONObject(i);
+            final JSONObject object = json.getJSONObject(i);
             String str = getStrByJson(object, "mo_signtime");
             if (!StringUtils.isEmpty(str)) {
                 holder.time.setText(TimeUtils.long2str(TimeUtils.f_str_2_long(str), "HH:mm"));
@@ -211,6 +214,14 @@ public class OAListActivity extends BaseActivity {
             if (object.containsKey("mo_attachid") && object.getInteger("mo_attachid") > 1000) {
                 holder.image.setVisibility(View.VISIBLE);
                 ImageLoader.getInstance().displayImage(getImageUrl(object.getInteger("mo_attachid")), holder.image);
+                holder.image.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View view) {
+                        Intent intent = new Intent(ct, SingleImagePreviewActivity.class);
+                        intent.putExtra(AppConstant.EXTRA_IMAGE_URI, getImageUrl(object.getInteger("mo_attachid")));
+                        ct.startActivity(intent);
+                    }
+                });
             } else {
                 holder.image.setVisibility(View.GONE);
             }

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

@@ -0,0 +1,183 @@
+package com.xzjmyk.pm.activity.ui.erp.activity.oa;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.os.Parcel;
+import android.os.Parcelable;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.CheckBox;
+import android.widget.TextView;
+
+import com.baidu.cyberplayer.utils.T;
+import com.xzjmyk.pm.activity.R;
+import com.xzjmyk.pm.activity.ui.base.BaseActivity;
+import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 选择列表
+ * getIntent参数列表
+ * 1.actionbar主题   action
+ * 2.列表数据(与type比配) data (1.从练过来界面获取List<String>  2.从网络获取 Map<String,Object> (url:urlAction  param:参数) )
+ * 3.获取数据方式   type(1.从练过来界面获取 2.从网络获取)
+ * 4.是否单选(默认是) single(boolean)
+ * 返回 resultcode 0x20
+ * create by gongpengming 2016/09/19
+ */
+public class SelectListActivity extends BaseActivity {
+    private RecyclerView recycler;
+    private List<Bean> list;
+    private ListAdapter adapter;
+    private boolean isSingle = true;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        Log.i("gongpengming", "onCreate");
+        setActionTheme();
+        super.onCreate(savedInstanceState);
+        initIntent();
+        Log.i("gongpengming", "onCreate2");
+        setContentView(R.layout.activity_select_list);
+        init();
+    }
+
+    private void initIntent() {
+        Intent intent = getIntent();
+        if (intent == null) return;
+        isSingle = intent.getBooleanExtra("single", true);
+    }
+
+    @Override
+    public boolean onCreateOptionsMenu(Menu menu) {
+        if (!isSingle) {
+            getMenuInflater().inflate(R.menu.menu_visit_save, menu);
+        }
+        return super.onCreateOptionsMenu(menu);
+    }
+
+    @Override
+    public boolean onOptionsItemSelected(MenuItem item) {
+        if (!isSingle) {
+            endActivity();
+        }
+        return super.onOptionsItemSelected(item);
+    }
+
+    /*根据链过来的参数设置该界面actionbar的样式货颜色*/
+    private void setActionTheme() {
+
+    }
+
+    /*结束选定退出时候*/
+    private void endActivity() {
+        List<Bean> l = new ArrayList<>();
+        if (!ListUtils.isEmpty(list)) {
+            for (Bean e : list) {
+                if (e.isClick) {
+                    l.add(e);
+                }
+            }
+        }
+        Intent intent = new Intent();
+//        intent.putParcelableArrayListExtra("data", l);
+    }
+
+    private void init() {
+        recycler = (RecyclerView) findViewById(R.id.recycler);
+        adapter = new ListAdapter();
+        RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(ct);
+        recycler.setLayoutManager(layoutManager);
+        recycler.setAdapter(adapter);
+
+    }
+
+
+    private class ListAdapter extends RecyclerView.Adapter<ListAdapter.ViewHolder> {
+        private List<Bean> list;
+
+        private ListAdapter() {
+
+        }
+
+        public List<Bean> getList() {
+            return list;
+        }
+
+        public void setList(List<Bean> list) {
+            this.list = list;
+        }
+
+        @Override
+        public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+            View view = LayoutInflater.from(ct).inflate(R.layout.select_list_item, parent, false);
+            return new ViewHolder(view);
+        }
+
+        @Override
+        public void onBindViewHolder(ViewHolder holder, int position) {
+            Bean bean = list.get(position);
+            holder.select_scb.setChecked(bean.isClick);
+            holder.name_tv.setText(bean.name);
+        }
+
+        class ViewHolder extends RecyclerView.ViewHolder {
+            CheckBox select_scb;
+            TextView name_tv;
+
+            public ViewHolder(View itemView) {
+                super(itemView);
+                select_scb = (CheckBox) itemView.findViewById(R.id.select_scb);
+                name_tv = (TextView) itemView.findViewById(R.id.name_tv);
+            }
+        }
+
+        @Override
+        public int getItemCount() {
+            return ListUtils.isEmpty(list) ? 0 : list.size();
+        }
+    }
+
+    class Bean implements Parcelable {
+        String name;
+        T t;
+        boolean isClick = false;
+
+        protected Bean(Parcel in) {
+            name = in.readString();
+            isClick = in.readByte() != 0;
+        }
+
+        public final Creator<Bean> CREATOR = new Creator<Bean>() {
+            @Override
+            public Bean createFromParcel(Parcel in) {
+                return new Bean(in);
+            }
+
+            @Override
+            public Bean[] newArray(int size) {
+                return new Bean[size];
+            }
+        };
+
+        @Override
+        public int describeContents() {
+            return 0;
+        }
+
+        @Override
+        public void writeToParcel(Parcel parcel, int i) {
+            parcel.writeString(name);
+            parcel.writeByte((byte) (isClick ? 1 : 0));
+        }
+    }
+
+}

+ 15 - 11
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/fragment/SigninFragment.java

@@ -5,11 +5,12 @@ import android.content.Intent;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
+import android.support.v7.app.ActionBar;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.Toolbar;
 import android.text.Html;
 import android.text.Spanned;
+import android.view.LayoutInflater;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
@@ -61,17 +62,11 @@ import java.util.Map;
  * Created by gongpengming on 2016/9/1.
  */
 public class SigninFragment extends EasyFragment implements View.OnClickListener {
-    private static final long DAY_TIME = 1000 * 60 * 60 * 24;
-    @ViewInject(R.id.listview)
-    private RecyclerView listview;
-    @ViewInject(R.id.seting)
     private ImageView seting;
-    @ViewInject(R.id.title)
     private TextView title;
-    @ViewInject(R.id.toobar)
-    private Toolbar toolbar;
-    @ViewInject(R.id.back)
     private ImageView back;
+    @ViewInject(R.id.listview)
+    private RecyclerView listview;
     @ViewInject(R.id.signin_btn)
     private ImageView signin_btn;
     @ViewInject(R.id.office_addr)
@@ -94,6 +89,7 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
     private String code;//账号员工编号
     private boolean isToday = true;
     private long time = System.currentTimeMillis();
+    private long signinTime = -1;
     private Handler handler = new Handler() {
         @Override
         public void handleMessage(Message msg) {
@@ -221,7 +217,14 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
     @Override
     protected void onCreateView(Bundle savedInstanceState, boolean createView) {
         ViewUtils.inject(getmRootView());
-        ct.setSupportActionBar(toolbar);
+        setHasOptionsMenu(true);
+        View view = LayoutInflater.from(ct).inflate(R.layout.signin_header, null);
+        ActionBar bar = ct.getSupportActionBar();
+        bar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
+        seting= (ImageView) view.findViewById(R.id.seting);
+        back= (ImageView) view.findViewById(R.id.back);
+        title= (TextView) view.findViewById(R.id.title);
+        bar.setCustomView(view);
         init();
         initView();
         listener();
@@ -239,6 +242,7 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
                     URLConnection uc = url.openConnection();
                     uc.connect();
                     long id = uc.getDate();
+                    signinTime = id;
                     date = new Date(id);// 转换为标准时间对象
                 } catch (MalformedURLException e) {
                     e.printStackTrace();
@@ -338,7 +342,7 @@ public class SigninFragment extends EasyFragment implements View.OnClickListener
     //签到成功
     private void signinOK() {
         ArrayList<Bean> beans = getDataByAdapter();
-        String time = TimeUtils.long2str(System.currentTimeMillis(), "HH:mm");
+        String time = TimeUtils.long2str(signinTime == -1 ? System.currentTimeMillis() : selectTime, "HH:mm");
         for (int i = 0; i < beans.size(); i++) {
             Bean b = beans.get(i);
             if (!StringUtils.isEmpty(b.startSignin) && !StringUtils.isEmpty(b.endSignnin) && time.compareTo(b.startSignin) > 0 && time.compareTo(b.endSignnin) < 0) {

+ 0 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/tool/SingleImagePreviewActivity.java

@@ -46,7 +46,6 @@ public class SingleImagePreviewActivity extends ActionBackActivity {
 		}
 		getSupportActionBar().hide();
 		setContentView(R.layout.activity_single_image_preview);
-
 		initView();
 	}
 
@@ -87,7 +86,6 @@ public class SingleImagePreviewActivity extends ActionBackActivity {
 			ImageLoader.getInstance().displayImage(mImageUri, mImageView, mImageLoadingListener);
 		} else {
 			ImageLoader.getInstance().displayImage(mImageUri, mImageView, mImageLoadingListener);
-
 		}
 
 		mImageView.setOnClickListener(new View.OnClickListener() {

+ 15 - 0
WeiChat/src/main/res/layout/activity_select_list.xml

@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    tools:context="com.xzjmyk.pm.activity.ui.erp.activity.oa.SelectListActivity">
+
+    <android.support.v7.widget.RecyclerView
+        android:id="@+id/recycler"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:divider="@color/item_line"
+        android:dividerHeight="1px"
+        android:padding="5dp" />
+</RelativeLayout>

+ 0 - 39
WeiChat/src/main/res/layout/fragment_signin.xml

@@ -4,44 +4,6 @@
     android:layout_height="match_parent"
     android:background="@color/oa_main">
 
-    <android.support.v7.widget.Toolbar
-        android:id="@+id/toobar"
-        android:layout_width="match_parent"
-        android:layout_height="?attr/actionBarSize"
-        android:background="#7292f8">
-
-        <RelativeLayout
-            android:id="@+id/top"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent">
-
-            <ImageView
-                android:id="@+id/back"
-                android:layout_width="wrap_content"
-                android:layout_height="match_parent"
-                android:padding="10dp"
-                android:src="@drawable/back" />
-
-            <TextView
-                android:id="@+id/title"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_centerInParent="true"
-                android:drawableRight="@drawable/down"
-                android:textColor="@color/white"
-                android:textSize="@dimen/text_main" />
-
-            <ImageView
-                android:id="@+id/seting"
-                android:layout_width="40dp"
-                android:layout_height="match_parent"
-                android:layout_alignParentRight="true"
-                android:padding="8dp"
-                android:src="@drawable/setting" />
-        </RelativeLayout>
-    </android.support.v7.widget.Toolbar>
-
-
     <LinearLayout
         android:id="@+id/oa_range_addr_rl"
         android:layout_width="match_parent"
@@ -49,7 +11,6 @@
         android:layout_alignParentBottom="true"
         android:layout_marginBottom="15dp"
         android:orientation="vertical"
-
         android:padding="5dp">
 
         <TextView

+ 27 - 0
WeiChat/src/main/res/layout/select_list_item.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="@dimen/item_height"
+    android:background="@color/bg_main"
+    android:padding="8dp">
+
+    <CheckBox
+        android:id="@+id/select_scb"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:button="@null"
+        android:checked="false"
+        android:drawableLeft="@drawable/oa_rb_button_bg"
+        android:padding="10dp" />
+
+
+    <TextView
+        android:id="@+id/name_tv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_centerVertical="true"
+        android:layout_marginLeft="10dp"
+        android:layout_toRightOf="@+id/select_scb"
+        android:textColor="@color/text_main"
+        android:textSize="@dimen/text_main" />
+</RelativeLayout>

+ 29 - 0
WeiChat/src/main/res/layout/signin_header.xml

@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/top"
+    android:layout_width="match_parent"
+    android:layout_height="?attr/actionBarSize">
+    <ImageView
+        android:id="@+id/back"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:padding="10dp"
+        android:src="@drawable/back" />
+
+    <TextView
+        android:id="@+id/title"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_centerInParent="true"
+        android:drawableRight="@drawable/down"
+        android:textColor="@color/white"
+        android:textSize="@dimen/text_main" />
+
+    <ImageView
+        android:id="@+id/seting"
+        android:layout_width="40dp"
+        android:layout_height="match_parent"
+        android:layout_alignParentRight="true"
+        android:padding="8dp"
+        android:src="@drawable/setting" />
+</RelativeLayout>

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

@@ -93,7 +93,7 @@
 
     <style name="IMActionBar.TitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
         <item name="android:textSize">@dimen/BigTextSize</item>
-        <item name="android:textColor">@color/action_bar_tittle_color</item>
+        <item name="android:textColor">@color/white</item>
     </style>
 
     <style name="IMActionBar.SubTitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">