Browse Source

通用单据审批流部分基本完成:备份2

FANGLH 9 years ago
parent
commit
ff478ef94e

+ 8 - 4
WeiChat/src/main/java/com/xzjmyk/pm/activity/adapter/CommonDocApprovalFlowAdapter.java

@@ -15,7 +15,7 @@ import com.xzjmyk.pm.activity.ui.erp.db.DBManager;
 
 /**
  * 通用适配器
- * 考勤单据里面的所有单据详情界面都会用到
+ * 考勤单据里面的所有单据详情界面单据都会用到这里
  * Created by FANGlh on 2016/11/16.
  */
 public class CommonDocApprovalFlowAdapter extends BaseAdapter {
@@ -79,9 +79,12 @@ public class CommonDocApprovalFlowAdapter extends BaseAdapter {
         viewHolder.AppFlowName.setText(mCommonApprovalFlowBean.getData().get(position).getJP_NODEDEALMANNAME());
         //当审批流为空时默认第一个审批人为审批节点
         if(mCommonApprovalFlowBean.getNodes() == null ||nodesnum <= 0){
-           viewHolder.AppFlowTime.setText(null);
+            viewHolder.AppFlowTime.setText(null);
             viewHolder.AppFlowStatus.setText(null);
-            viewHolder.AppFlowName.setText(mCommonApprovalFlowBean.getData().get(position).getJP_NODEDEALMANNAME());
+            if (mCommonApprovalFlowBean.getData().size() > 0){
+                viewHolder.AppFlowName.setText(mCommonApprovalFlowBean.getData().get(position).getJP_NODEDEALMANNAME());
+            }
+            //当审批流程开始时
             if(position == 0){
                 viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.no_approval));
                 viewHolder.AppFlowStatus.setText("待审批");
@@ -91,7 +94,7 @@ public class CommonDocApprovalFlowAdapter extends BaseAdapter {
             if (position < nodesnum && datanum > 0){
                 String approval_status = mCommonApprovalFlowBean.getNodes().get(position).getJn_dealResult();
                 if (!approval_status.isEmpty() && approval_status.equals("同意")) {
-                    viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.approval_flow));
+                    viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.done_approval));
                     viewHolder.AppFlowStatus.setText("已审批");
                     viewHolder.AppFlowNode.setImageResource(R.drawable.node_finished3);
                     viewHolder.AppFlowTime.setText(mCommonApprovalFlowBean.getNodes().get(position).getJn_dealTime());
@@ -125,6 +128,7 @@ public class CommonDocApprovalFlowAdapter extends BaseAdapter {
                 viewHolder.AppFlowNode.setImageResource(R.drawable.node_wait3);
             }
 
+
             //TODO 从im获取头像
        /* try {
             if (manager == null) manager = new DBManager(mContext);

+ 7 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/adapter/DailyDetailsApprovalFlowAdapter.java

@@ -7,10 +7,12 @@ import android.widget.BaseAdapter;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
+import android.widget.Toast;
 
 import com.xzjmyk.pm.activity.R;
 import com.xzjmyk.pm.activity.bean.oa.CommonApprovalFlowBean;
 import com.xzjmyk.pm.activity.ui.erp.db.DBManager;
+import com.xzjmyk.pm.activity.util.ToastUtil;
 
 
 /**
@@ -79,7 +81,10 @@ public class DailyDetailsApprovalFlowAdapter extends BaseAdapter {
         if(mCommonApprovalFlowBean.getNodes() == null ||nodesnum <= 0){
            viewHolder.AppFlowTime.setText(null);
             viewHolder.AppFlowStatus.setText(null);
-            viewHolder.AppFlowName.setText(mCommonApprovalFlowBean.getData().get(position).getJP_NODEDEALMANNAME());
+            if (mCommonApprovalFlowBean.getData().size() > 0){
+                viewHolder.AppFlowName.setText(mCommonApprovalFlowBean.getData().get(position).getJP_NODEDEALMANNAME());
+            }
+            //当审批流程开始时
             if(position == 0){
                 viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.no_approval));
                 viewHolder.AppFlowStatus.setText("待审批");
@@ -89,7 +94,7 @@ public class DailyDetailsApprovalFlowAdapter extends BaseAdapter {
             if (position < nodesnum && datanum > 0){
                 String approval_status = mCommonApprovalFlowBean.getNodes().get(position).getJn_dealResult();
                 if (!approval_status.isEmpty() && approval_status.equals("同意")) {
-                    viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.approval_flow));
+                    viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.done_approval));
                     viewHolder.AppFlowStatus.setText("已审批");
                     viewHolder.AppFlowNode.setImageResource(R.drawable.node_finished3);
                     viewHolder.AppFlowTime.setText(mCommonApprovalFlowBean.getNodes().get(position).getJn_dealTime());

+ 1 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/adapter/WorkDailyApprovalFlowAdapter.java

@@ -89,7 +89,7 @@ public class WorkDailyApprovalFlowAdapter extends BaseAdapter {
             if (position < nodesnum && datanum > 0){
                 String approval_status = mCommonApprovalFlowBean.getNodes().get(position).getJn_dealResult();
                 if (!approval_status.isEmpty() && approval_status.equals("同意")) {
-                    viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.approval_flow));
+                    viewHolder.AppFlowStatus.setTextColor(mContext.getResources().getColor(R.color.done_approval));
                     viewHolder.AppFlowStatus.setText("已审批");
                     viewHolder.AppFlowNode.setImageResource(R.drawable.node_finished3);
                     viewHolder.AppFlowTime.setText(mCommonApprovalFlowBean.getNodes().get(position).getJn_dealTime());

+ 59 - 22
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/CommonDocDetailsActivity.java

@@ -31,6 +31,8 @@ import java.util.LinkedHashMap;
 import java.util.Map;
 
 /**
+ * 通用界面
+ * 考勤单据里面的所有单据详情界面都会用到
  * Created by FANGlh on 2016/11/16.
  */
 public class CommonDocDetailsActivity extends BaseActivity {
@@ -49,8 +51,6 @@ public class CommonDocDetailsActivity extends BaseActivity {
     private CommonApprovalFlowBean mCommonApprovalFlowBean;
     private CommonApprovalFlowBean.CurrentnodeBean currentnode;
 
-
-
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -80,12 +80,24 @@ public class CommonDocDetailsActivity extends BaseActivity {
         final Intent intent = getIntent();
         mCaller = intent.getStringExtra("caller");
         mkeyValue = intent.getIntExtra("keyValue", -1);
-        Log.i("mCaller",mCaller);
-        Log.isLoggable("keyValue",mkeyValue);
-
+        Log.i("mCaller", mCaller);
+        Log.isLoggable("keyValue", mkeyValue);
 
-        //当获取到正确的单据caller和单据id时请求URL
+        //当获取到正确的单据caller和单据id时
         if(!TextUtils.isEmpty(mCaller)&& mkeyValue != -1){
+            if ("Ask4Leave".equals(mCaller)){
+                getSupportActionBar().setTitle("请假申请");
+            }
+            if ("FeePlease!CCSQ".equals(mCaller)){
+                getSupportActionBar().setTitle("出差申请");
+            }
+            if ("Workovertime".equals(mCaller)){
+                getSupportActionBar().setTitle("加班申请");
+            }
+            if ("SpeAttendance".equals(mCaller)){
+                getSupportActionBar().setTitle("特殊考勤申请");
+            }
+
             String url = Constants.getAppBaseUrl(getApplicationContext()) + "common/getCurrentJnodes.action";
             Map<String, Object> param = new HashMap<>();
             param.put("caller", mCaller);
@@ -106,22 +118,7 @@ public class CommonDocDetailsActivity extends BaseActivity {
                 case COMMON_DOC_REQUEST:
                     String result = msg.getData().getString("result");
                     LogUtil.prinlnLongMsg("Travelurl", result);
-
-                    try{
-                        JSONObject resultJsonObject = new JSONObject(result);
-                        //JSONArray dailynodeArray = resultJsonObject.getJSONArray("nodes");
-                        if(resultJsonObject == null){
-                            mEmptyLayput_approvalflow.showEmpty();
-                        }else{
-                            mCommonApprovalFlowBean = JSON.parseObject(resultJsonObject.toString(), CommonApprovalFlowBean.class);
-                            LogUtil.prinlnLongMsg("mCommonApprovalFlowBean",mCommonApprovalFlowBean.toString());
-                            //TODO 设置数据之前先通过数据库获取到所有的imid保存到内存中
-                            mCommonDocApprovalFlowAdapter.setmCommonApprovalFlowBean(mCommonApprovalFlowBean);
-                            appflow_lv.setAdapter(mCommonDocApprovalFlowAdapter);
-                        }
-                    }catch (JSONException e){
-                        e.printStackTrace();
-                    }
+                    Datadealandshow(result);
                     break;
                 case Constants.APP_SOCKETIMEOUTEXCEPTION:
                 Toast.makeText(CommonDocDetailsActivity.this, msg.getData().getString("result"), Toast.LENGTH_SHORT).show();
@@ -129,5 +126,45 @@ public class CommonDocDetailsActivity extends BaseActivity {
             }
         }
     };
+    public void Datadealandshow(String result){
+        try{
+            JSONObject resultJsonObject = new JSONObject(result);
+            //JSONArray dailynodeArray = resultJsonObject.getJSONArray("nodes");
+            if(resultJsonObject == null){
+                mEmptyLayput_approvalflow.showEmpty();
+            }else{
+                mCommonApprovalFlowBean = JSON.parseObject(resultJsonObject.toString(), CommonApprovalFlowBean.class);
+                LogUtil.prinlnLongMsg("mCommonApprovalFlowBean",mCommonApprovalFlowBean.toString());
+                //TODO 设置数据之前先通过数据库获取到所有的imid保存到内存中
+                mCommonDocApprovalFlowAdapter.setmCommonApprovalFlowBean(mCommonApprovalFlowBean);
+                appflow_lv.setAdapter(mCommonDocApprovalFlowAdapter);
+            }
+        }catch (JSONException e){
+            e.printStackTrace();
+        }
+        //如果这三个列表都为空 则显示空盒子,否则仍然可以显示部分数据
+        if(mCommonApprovalFlowBean.getNodes().size()<= 0 && mCommonApprovalFlowBean.getData().size()<=0
+                && mCommonApprovalFlowBean.getProcesss().size()<=0){
+            mEmptyLayput_approvalflow.showEmpty();
+        }
+        //申请人头像、姓名、部门、审批状态信息显示
+        if (mCommonApprovalFlowBean.getProcesss().size() > 0){
+            String em_number = mCommonApprovalFlowBean.getProcesss().get(0).getJp_launcherId();
+            name_tv.setText(mCommonApprovalFlowBean.getProcesss().get(0).getJp_launcherName());
+
+            int currentnodes_num  = mCommonApprovalFlowBean.getNodes().size();
+            if (currentnodes_num > 0){
+                if(mCommonApprovalFlowBean.getNodes().get(currentnodes_num-1).getJn_dealResult().equals("同意")){
+                    status_tv.setTextColor(mContext.getResources().getColor(R.color.done_approval));
+                    status_tv.setText("已审批");
+                }else{
+                    status_tv.setTextColor(mContext.getResources().getColor(R.color.no_approval));
+                    status_tv.setText("待审批");
+                }
+            }
+        }else{
+            return;
+        }
+    }
 
 }

+ 6 - 6
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/SaleSelectActivity.java

@@ -317,18 +317,18 @@ public class SaleSelectActivity extends BaseActivity implements OnClickListener
                     }
                     if ("SpeAttendance".equals(caller)) {
                         it_detail = new Intent(SaleSelectActivity.this,
-                                ExtraLeaveActivity.class);
-                        //                              CommonDocDetailsActivity.class);
+//                                ExtraLeaveActivity.class);
+                                                      CommonDocDetailsActivity.class);
                     }
                     if ("FeePlease!CCSQ".equals(caller)) {
                         it_detail = new Intent(SaleSelectActivity.this,
-                               TravelActivity.class);
-                        //                CommonDocDetailsActivity.class);
+//                               TravelActivity.class);
+                                        CommonDocDetailsActivity.class);
                     }
                     if ("Workovertime".equals(caller)) {
                         it_detail = new Intent(SaleSelectActivity.this,
-                                WorkExtraActivity.class);
-                        //                             CommonDocDetailsActivity.class);
+//                                WorkExtraActivity.class);
+                                                     CommonDocDetailsActivity.class);
                     }
                 } else {
                     it_detail = new Intent(SaleSelectActivity.this,

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

@@ -187,6 +187,10 @@ public class DailydetailsActivity extends BaseActivity {
                           //TODO 设置数据之前先通过数据库获取到所有的imid保存到内存中
                            mDailyDetailsApprovalFlowAdapter.setmCommonApprovalFlowBean(mCommonApprovalFlowBean);
                            approval_flowlv.setAdapter(mDailyDetailsApprovalFlowAdapter);
+
+                           if(mCommonApprovalFlowBean.getNodes().size()<= 0 && mCommonApprovalFlowBean.getData().size()<=0){
+                               mEmptyLayput_approvalflow.showEmpty();
+                           }
                        }
                    }catch (JSONException e){
                        e.printStackTrace();

+ 5 - 6
WeiChat/src/main/res/layout/activity_common_docui.xml

@@ -22,7 +22,9 @@
         <RelativeLayout
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-           android:padding="5dp"
+            android:padding="5dp"
+            android:layout_marginLeft="10dp"
+            android:layout_marginRight="10dp"
             >
 
             <ImageView
@@ -31,8 +33,8 @@
                 android:layout_height="40dp"
                 android:background="@drawable/avatar_normal"
                 android:contentDescription="@string/app_name"
-                android:layout_marginTop="15dp"
-                android:layout_marginBottom="15dp" />
+                android:layout_marginTop="5dp"
+                android:layout_marginBottom="5dp" />
 
             <TextView
                 android:id="@+id/common_docui_name_tv"
@@ -40,7 +42,6 @@
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="5dp"
                 android:layout_toRightOf="@+id/common_docui_photo_img"
-                android:text="方龙海"
                 android:textColor="#575757"
                 android:textSize="@dimen/text_hine"
                 android:layout_marginTop="10dp"
@@ -53,7 +54,6 @@
                 android:layout_marginLeft="5dp"
                 android:layout_toRightOf="@+id/common_docui_photo_img"
                 android:layout_below="@id/common_docui_name_tv"
-                android:text="移动终端部>xx"
                 android:textColor="@color/text_main"
                 android:textSize="@dimen/text_hine"
                 android:layout_marginTop="4dp"/>
@@ -61,7 +61,6 @@
                 android:id="@+id/common_docui_status_tv"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="待审批"
                 android:layout_alignParentRight="true"
                 android:layout_marginTop="5dp"
                 android:layout_marginBottom="0dp"

+ 0 - 3
WeiChat/src/main/res/layout/item_common_doc_approval_flow.xml

@@ -39,7 +39,6 @@
         android:layout_width="120dp"
         android:layout_height="wrap_content"
         android:layout_marginLeft="5dp"
-        android:text="方龙海,方龙海,方龙海,"
         android:singleLine="true"
         android:ellipsize="end"
         android:textColor="#575757"
@@ -57,7 +56,6 @@
         android:layout_marginLeft="5dp"
         android:layout_marginTop="4dp"
         android:layout_toRightOf="@+id/item_common_doc_approval_flow_photo_img"
-        android:text="待审批"
         android:textColor="@color/text_main"
         android:textSize="@dimen/text_hine" />
 
@@ -102,7 +100,6 @@
         android:layout_alignParentRight="true"
         android:layout_marginRight="10dp"
         android:layout_marginTop="10dp"
-        android:text="2016-11-4 19:40"
         android:textColor="#9F9595"
         android:textSize="@dimen/text_hine" />
 

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

@@ -2,7 +2,7 @@
 <resources>
     <color name="no_approval">#f10813</color>
     <color name="approval">#268509</color>
-    <color name="approval_flow">#969595</color>
+    <color name="done_approval">#969595</color>
     <!--umeng-->
     <color name="umeng_socialize_comments_bg">#F4F4F4</color>
     <color name="umeng_socialize_color_group">#2c3035</color>