Browse Source

Merge branch 'master' of ssh://10.10.100.21/source/uu-android into feature

# Conflicts:
#	WeiChat/version.properties
Arison 6 years ago
parent
commit
c4e5a7987a
22 changed files with 216 additions and 169 deletions
  1. 4 2
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/WebViewLoadActivity.java
  2. 3 1
      WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java
  3. 0 72
      WeiChat/src/main/res/layout/activity_data_form_detail.xml
  4. 5 5
      WeiChat/version.properties
  5. 2 2
      app_core/common/src/main/java/com/core/model/Approval.java
  6. 3 1
      app_core/common/src/main/java/com/core/net/http/ViewUtil.java
  7. 22 7
      app_core/common/src/main/res/layout/activity_data_form_detail.xml
  8. 7 7
      app_core/common/src/main/res/layout/item_comdoc_am.xml
  9. 3 1
      app_modular/appmessages/src/main/java/com/modular/appmessages/activity/AppWebViewActivity.java
  10. 8 6
      app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/ApprovalAdapter.java
  11. 2 2
      app_modular/appmessages/src/main/java/com/modular/appmessages/presenter/ApprovaPresenter.java
  12. 15 2
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceCycleCountInfoActivity.java
  13. 2 0
      app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceDataFormAddActivity.java
  14. 71 24
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/DataFormDetailActivity.java
  15. 14 12
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/FormListSelectActivity.java
  16. 9 1
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/presenter/MissionPresenter.java
  17. 41 23
      app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/utils/AutoErpSigninUitl.java
  18. 1 1
      app_modular/appworks/src/main/java/com/uas/appworks/datainquiry/activity/PDFDownloadActivity.java
  19. 1 0
      app_modular/appworks/src/main/res/values-en/strings.xml
  20. 1 0
      app_modular/appworks/src/main/res/values-zh-rCN/strings.xml
  21. 1 0
      app_modular/appworks/src/main/res/values-zh-rTW/strings.xml
  22. 1 0
      app_modular/appworks/src/main/res/values/strings.xml

+ 4 - 2
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/erp/activity/WebViewLoadActivity.java

@@ -66,7 +66,9 @@ public class WebViewLoadActivity extends BaseActivity {
                         String name = bundle.getString("name");
                         String masterId = bundle.getString("masterId");
                         //添加获取报表地址
-                        String extrajaSperurl = JSONUtil.getText(result,"EN_EXTRAJASPERURL");
+                        String en_admin = JSONUtil.getText(result, "EN_ADMIN");
+                        String extrajaSperurl = JSONUtil.getText(result,
+                                "jasper".equals(en_admin) ? "EN_URL" : "EN_EXTRAJASPERURL");
                         CommonUtil.setSharedPreferences(ct, "extrajaSperurl", extrajaSperurl);
                         CommonUtil.setSharedPreferences(WebViewLoadActivity.this, "sessionId", sessionId);
                         CommonUtil.setSharedPreferences(WebViewLoadActivity.this, "erp_username", erpaccount);
@@ -120,7 +122,7 @@ public class WebViewLoadActivity extends BaseActivity {
         title = "";// 动态改变文字显示
         title = intent.getStringExtra("p");
         if (title != null) {
-          setTitle(title);
+            setTitle(title);
         }
         if ("UAS".equals(title)) {
             setTitle("UAS管理系统");

+ 3 - 1
WeiChat/src/main/java/com/xzjmyk/pm/activity/ui/me/MeFragment.java

@@ -187,7 +187,9 @@ public class MeFragment extends EasyFragment implements View.OnClickListener, On
                         String master = msg.getData().getString("master");
                         String master_ch = msg.getData().getString("master_ch");
                         //添加获取报表地址
-                        String extrajaSperurl = JSONUtil.getText(message, "EN_EXTRAJASPERURL");
+                        String en_admin = JSONUtil.getText(message, "EN_ADMIN");
+                        String extrajaSperurl = JSONUtil.getText(message,
+                                "jasper".equals(en_admin) ? "EN_URL" : "EN_EXTRAJASPERURL");
                         CommonUtil.setSharedPreferences(ct, "extrajaSperurl", extrajaSperurl);
                         LogUtil.i("extrajaSperurl=" + extrajaSperurl);
                         CommonUtil.setSharedPreferences(ct, "erp_uu", String.valueOf(results.get("uu")));

+ 0 - 72
WeiChat/src/main/res/layout/activity_data_form_detail.xml

@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/sv_top"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:fillViewport="true"
-   >
-
-    <LinearLayout
-        android:id="@+id/ll_top"
-       
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:orientation="vertical">
-
-        <com.core.widget.view.ListViewInScroller
-            android:id="@+id/lv_datas"
-            android:layout_width="match_parent"
-            android:layout_height="match_parent"
-            android:divider="@color/item_line"
-            android:dividerHeight="0.1dp"
-            android:listSelector="@color/transparent" />
-
-        <LinearLayout
-            android:id="@+id/ll_item_add"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:background="@drawable/selector_me_menu_item_bg"
-            android:orientation="vertical"
-            android:visibility="gone">
-
-            <View
-                android:layout_width="match_parent"
-                android:layout_height="0.5dp"
-                android:background="@color/item_line" />
-
-            <TextView
-                android:id="@+id/tv_item_add"
-                android:layout_width="match_parent"
-                android:layout_height="40dp"
-                android:layout_gravity="center"
-                android:gravity="center"
-                android:text="+ 新增明细"
-                android:textColor="@color/titleBlue" />
-        </LinearLayout>
-
-        <Button
-            android:id="@+id/click_btn"
-            android:layout_below="@+id/info"
-            style="@style/commonButtonStyle"
-            android:layout_marginBottom="80dp"
-            android:layout_marginLeft="10dp"
-            android:layout_marginRight="10dp"
-            android:layout_marginTop="20dp"
-            android:text="提交"
-            android:visibility="gone"
-             />
-
-        <Button
-            android:id="@+id/btn_update"
-            style="@style/commonButtonStyle"
-            android:layout_below="@+id/info"
-            android:layout_marginBottom="80dp"
-            android:layout_marginLeft="10dp"
-            android:layout_marginRight="10dp"
-            android:layout_marginTop="20dp"
-            android:text="更新"
-            android:visibility="gone" />
-    </LinearLayout>
-</ScrollView>
-
-

+ 5 - 5
WeiChat/version.properties

@@ -1,5 +1,5 @@
-#Tue Jul 16 09:57:49 CST 2019
-debugName=990
-versionName=686
-debugCode=990
-versionCode=241
+#Sat Jul 20 17:37:53 CST 2019
+debugName=972
+versionName=692
+debugCode=972
+versionCode=247

+ 2 - 2
app_core/common/src/main/java/com/core/model/Approval.java

@@ -154,8 +154,8 @@ public class Approval {
                 int floatcolumn = floatcolumn();//保留小数后几位
                 LogUtil.i("gong", values + "=" + floatcolumn);
                 if (floatcolumn == 0) {
-                    if (v2.length() - 1 > 2) {
-                        builder.append(v2.substring(0, 2));
+                    if (v2.length() - 1 > 3) {
+                        builder.append(v2.substring(0, 3));
                     } else {
                         builder.append(v2);
                     }

+ 3 - 1
app_core/common/src/main/java/com/core/net/http/ViewUtil.java

@@ -467,7 +467,9 @@ public class ViewUtil {
             CommonUtil.setSharedPreferences(ct, "erp_uu", enuu);
             CommonUtil.setSharedPreferences(ct, "erp_masterId", erpMasterId);
             //添加获取报表地址
-            String extrajaSperurl = JSONUtil.getText(result,"EN_EXTRAJASPERURL");
+            String en_admin = JSONUtil.getText(result, "EN_ADMIN");
+            String extrajaSperurl = JSONUtil.getText(result,
+                    "jasper".equals(en_admin) ? "EN_URL" : "EN_EXTRAJASPERURL");
             LogUtil.i("gong","login extrajaSperurl="+extrajaSperurl);
             CommonUtil.setSharedPreferences(ct, "extrajaSperurl", extrajaSperurl);
             CommonUtil.setSharedPreferences(ct, "erp_login", true);

+ 22 - 7
app_core/common/src/main/res/layout/activity_data_form_detail.xml

@@ -8,7 +8,7 @@
 
     <LinearLayout
         android:id="@+id/ll_top"
-       
+
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:orientation="vertical">
@@ -45,37 +45,52 @@
         </LinearLayout>
 
         <Button
-            android:id="@+id/click_btn"
+            android:id="@+id/change_quality_btn"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_below="@+id/info"
-            android:layout_marginBottom="80dp"
             android:layout_marginLeft="10dp"
+            android:layout_marginTop="20dp"
             android:layout_marginRight="10dp"
+            android:background="@drawable/bg_bule_btn"
+            android:padding="10dp"
+            android:text="转生产品质异常单"
+            android:textColor="@color/white"
+            android:textSize="@dimen/text_main"
+            android:visibility="gone" />
+
+        <Button
+            android:id="@+id/click_btn"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_below="@+id/info"
+            android:layout_marginLeft="10dp"
             android:layout_marginTop="20dp"
+            android:layout_marginRight="10dp"
+            android:layout_marginBottom="80dp"
             android:background="@drawable/bg_bule_btn"
             android:padding="10dp"
             android:text="提交"
             android:textColor="@color/white"
             android:textSize="@dimen/text_main"
-            android:visibility="gone"
-             />
+            android:visibility="gone" />
 
         <Button
             android:id="@+id/btn_update"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_below="@+id/info"
-            android:layout_marginBottom="80dp"
             android:layout_marginLeft="10dp"
-            android:layout_marginRight="10dp"
             android:layout_marginTop="20dp"
+            android:layout_marginRight="10dp"
+            android:layout_marginBottom="80dp"
             android:background="@drawable/bg_bule_btn"
             android:padding="10dp"
             android:text="更新"
             android:textColor="@color/white"
             android:textSize="@dimen/text_main"
             android:visibility="gone" />
+
     </LinearLayout>
 </ScrollView>
 

+ 7 - 7
app_core/common/src/main/res/layout/item_comdoc_am.xml

@@ -1,26 +1,26 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout 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">
 
     <TextView
         android:id="@+id/item_comdoc_am_list_tv"
-        android:layout_marginTop="5dp"
         android:layout_width="0dp"
         android:layout_height="wrap_content"
-        android:layout_weight="1"
-        android:text="开始时间:"
+        android:layout_marginTop="5dp"
         android:layout_marginRight="10dp"
+        android:layout_weight="1"
         android:textColor="#6E6E6E"
-        />
+        tools:text="开始时间:" />
 
     <TextView
         android:id="@+id/item_comdoc_am_value_tv"
-        android:layout_marginTop="5dp"
         android:layout_width="0dp"
         android:layout_height="wrap_content"
+        android:layout_marginTop="5dp"
         android:layout_weight="2"
-        android:text="2016-11-25-21:22"
-        android:textColor="@color/done_approval"/>
+        android:textColor="@color/done_approval"
+        tools:text="2016-11-25-21:22" />
 
 </LinearLayout>

+ 3 - 1
app_modular/appmessages/src/main/java/com/modular/appmessages/activity/AppWebViewActivity.java

@@ -67,7 +67,9 @@ public class AppWebViewActivity extends SupportToolBarActivity {
                         String name = bundle.getString("name");
                         String masterId = bundle.getString("masterId");
                         //添加获取报表地址
-                        String extrajaSperurl = JSONUtil.getText(result,"EN_EXTRAJASPERURL");
+                        String en_admin = JSONUtil.getText(result, "EN_ADMIN");
+                        String extrajaSperurl = JSONUtil.getText(result,
+                                "jasper".equals(en_admin) ? "EN_URL" : "EN_EXTRAJASPERURL");
                         CommonUtil.setSharedPreferences(ct, "extrajaSperurl", extrajaSperurl);
                         CommonUtil.setSharedPreferences(ct, "sessionId", sessionId);
                         CommonUtil.setSharedPreferences(ct, "erp_username", erpaccount);

+ 8 - 6
app_modular/appmessages/src/main/java/com/modular/appmessages/adapter/ApprovalAdapter.java

@@ -23,6 +23,7 @@ import com.afollestad.materialdialogs.MaterialDialog;
 import com.common.LogUtil;
 import com.common.data.CalendarUtil;
 import com.common.data.ListUtils;
+import com.common.data.RegexUtil;
 import com.common.data.StringUtil;
 import com.core.app.AppConstant;
 import com.core.app.MyApplication;
@@ -508,7 +509,7 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
                     holder.valuesRG.setOnCheckedChangeListener(mOnCheckedChangeListener);
                     break;
                 case 1:
-                    holder.valueEt.setInputType(InputType.TYPE_CLASS_NUMBER);
+                    holder.valueEt.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);
                     holder.valueEt.addTextChangedListener(new TextChangListener(holder, position));
                     break;
                 default:
@@ -516,7 +517,7 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
                     holder.valueEt.addTextChangedListener(new TextChangListener(holder, position));
             }
         } else {
-            if (isWeb(approval.getValues())) {
+            if (isWeb(approval)) {
                 setViewShowAble(true, holder.valueWeb);
                 setViewShowAble(false, holder.valueEt, holder.valueTv);
                 LogUtil.i("isWeb" + approval.getValues());
@@ -526,13 +527,13 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
                 setViewShowAble(false, holder.valueEt, holder.valueWeb);
                 if (!StringUtil.isEmpty(approval.getOldValues())) {//存在变更
                     holder.oldValueTv.setVisibility(View.VISIBLE);
-                    holder.oldValueTv.setText(approval.getOldValues());
+                    holder.oldValueTv.setText(Html.fromHtml(approval.getOldValues()));
                     holder.valueTv.setText(getOldValues(approval.getOldValues(), approval.getValues()));
                 } else {
                     if (approval.isNumber()) {
                         holder.valueTv.setText(approval.getNumber());
                     } else {
-                        holder.valueTv.setText(approval.getValues());
+                        holder.valueTv.setText(Html.fromHtml(approval.getValues()));
 //                        holder.valueTv.setText(Html.fromHtml(approval.getValues()));
                     }
                 }
@@ -571,8 +572,9 @@ public class ApprovalAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
         return Html.fromHtml("<font color='#f10813'>" + values + "</font>");
     }
 
-    private boolean isWeb(String values) {
-        return values != null && values.length() > 100 && values.contains("<br>");
+    private boolean isWeb(Approval approval) {
+        String values = approval.getValues();
+        return "MS".equals(approval.getDfType()) && values != null && values.contains("table");
     }
 
     private void showTimeSelect(final TextView showView, final int position) {

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

@@ -1529,14 +1529,14 @@ public class ApprovaPresenter implements OnHttpResultListener {
         return CommonUtil.getAppBaseUrl(MyApplication.getInstance()) + "common/download.action?path=" + path + "&sessionId=" +
                 CommonUtil.getSharedPreferences(MyApplication.getInstance(), "sessionId") +
                 "&sessionUser=" + CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_username") +
-                "&master=" + CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_master");
+                "&master=" + master;
     }
 
     private String getImageUrl(int id) {
         return CommonUtil.getAppBaseUrl(MyApplication.getInstance()) + "common/downloadbyId.action?id=" + id + "&sessionId=" +
                 CommonUtil.getSharedPreferences(MyApplication.getInstance(), "sessionId") +
                 "&sessionUser=" + CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_username") +
-                "&master=" + CommonUtil.getSharedPreferences(MyApplication.getInstance(), "erp_master");
+                "&master=" + master;
     }
 
     private boolean canSubmit() {

+ 15 - 2
app_modular/appworks/src/main/java/com/uas/appworks/CRM/erp/activity/DeviceCycleCountInfoActivity.java

@@ -13,6 +13,7 @@ import android.view.Gravity;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.Button;
 import android.widget.ListView;
 import android.widget.PopupWindow;
 import android.widget.TextView;
@@ -59,6 +60,7 @@ public class DeviceCycleCountInfoActivity extends SupportToolBarActivity impleme
     private TextView centerTv;
     private TextView lineTv;
     private TextView kindTv;
+    private Button mObtainButton;
     private RecyclerView gridList;
     private SimpleRefreshLayout mSimpleRefreshLayout;
     private int page;
@@ -132,7 +134,13 @@ public class DeviceCycleCountInfoActivity extends SupportToolBarActivity impleme
         findViewById(R.id.actionqtyTv).setOnClickListener(this);
         findViewById(R.id.unactionqtyTv).setOnClickListener(this);
         findViewById(R.id.cycleBtn).setOnClickListener(this);
-        findViewById(R.id.deviceAttributeBtn).setOnClickListener(this);
+        mObtainButton = findViewById(R.id.deviceAttributeBtn);
+        if ("N_MALATA_ZZ".equals(CommonUtil.getMaster()) || "N_MALATA_ZZ_ZS".equals(CommonUtil.getMaster())) {
+            mObtainButton.setText("刷新");
+        } else {
+            mObtainButton.setText("获取明细");
+        }
+        mObtainButton.setOnClickListener(this);
         findViewById(R.id.lossDeviceBtn).setOnClickListener(this);
         mSimpleRefreshLayout.setEnabledPullUp(true);
         mSimpleRefreshLayout.setEnablePullDown(false);
@@ -468,7 +476,12 @@ public class DeviceCycleCountInfoActivity extends SupportToolBarActivity impleme
                 mPopupWindow.dismiss();
             }
         } else if (R.id.deviceAttributeBtn == id) {
-            deviceAttribute();
+            if ("N_MALATA_ZZ".equals(CommonUtil.getMaster()) || "N_MALATA_ZZ_ZS".equals(CommonUtil.getMaster())) {
+                loadData(true);
+                loadGridData(page = 1);
+            } else {
+                deviceAttribute();
+            }
         } else if (R.id.lossDeviceBtn == id) {
             lossDevice();
         }

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

@@ -1810,6 +1810,7 @@ public class DeviceDataFormAddActivity extends SupportToolBarActivity implements
         params.put("caller", caller);
         params.put("formStore", formStore);
         params.put("gridStore", gridStore);
+        params.put("id", formid);
         LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
         ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, Constants.HTTP_SUCCESS_INIT, null, null, "post");
@@ -2019,6 +2020,7 @@ public class DeviceDataFormAddActivity extends SupportToolBarActivity implements
         if (!"[]" .equals(gridStore)) {
             params.put("gridStore", gridStore);
         }
+        params.put("id", formid);
         LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
         headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
         ViewUtil.httpSendRequest(ct, url, params, mHandler, headers, 0x21, null, null, "post");

+ 71 - 24
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/DataFormDetailActivity.java

@@ -53,6 +53,10 @@ import com.core.widget.view.model.SelectAimModel;
 import com.core.widget.view.selectcalendar.SelectCalendarActivity;
 import com.core.widget.view.selectcalendar.bean.Data;
 import com.lidroid.xutils.ViewUtils;
+import com.me.network.app.base.HttpCallback;
+import com.me.network.app.base.HttpParams;
+import com.me.network.app.http.HttpRequest;
+import com.me.network.app.http.Method;
 import com.modular.apputils.activity.SelectNetAcitivty;
 import com.modular.apputils.model.BillGroupModel;
 import com.modular.apputils.utils.PopupWindowHelper;
@@ -90,7 +94,7 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
     private boolean isLeave = true;
     private ListViewInScroller lv_datas;
     private TextView tv_item_add;
-    private Button click_btn;
+    private Button click_btn, change_quality_btn;
     private Button btn_update;
     private LinearLayout ll_item_add;
     private LinearLayout ll_top;
@@ -128,6 +132,7 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
 
     private int va_id;//订单ID
     private int formid;//主表ID
+    private String ve_code;//不合格项目单,特殊处理,特殊取值
     private final Comparator<Object> mComparator = new Comparator<Object>() {
         @Override
         public int compare(Object t0, Object t1) {
@@ -197,11 +202,16 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
                                 data.setName(items.getString("fd_caption"));
                                 data.setReadonly(items.getString("fd_readonly"));
                                 data.setAllowblank(items.getString("fd_allowblank"));
-                                data.setField(items.getString("fd_field"));
+                                String fd_field = items.getString("fd_field");
+                                String fd_value = items.getString("fd_value");
+                                data.setField(fd_field);
+                                if ("ve_code".equals(fd_field)) {
+                                    ve_code = fd_value;
+                                }
+                                data.setValue(fd_value);
                                 data.setDetno(items.getIntValue("fd_detno"));
                                 data.setMaxlength(String.valueOf(items.getIntValue("fd_maxlength")));
                                 data.setFdid(items.getIntValue("fd_id"));
-                                data.setValue(items.getString("fd_value"));
 
                                 String dg_findfunctionname = items.getString("dg_findfunctionname");
                                 if (!TextUtils.isEmpty(dg_findfunctionname)) {
@@ -220,18 +230,18 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
                                 }
                                 String type = items.getString("fd_type");
                                 if (!TextUtils.isEmpty(type) && type.equals("D")) {
-                                    data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
+//                                    data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
                                 }
-                                if (startDate.equals(items.getString("fd_field"))) {
-                                    if (StringUtil.isEmpty(data.getValue())) {
-                                        data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
-                                    }
+                                if (startDate.equals(fd_field)) {
+//                                    if (StringUtil.isEmpty(data.getValue())) {
+//                                        data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
+//                                    }
                                     startDate_v = data.getValue();
                                 }
-                                if (endDate.equals(items.getString("fd_field"))) {
-                                    if (StringUtil.isEmpty(data.getValue())) {
-                                        data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
-                                    }
+                                if (endDate.equals(fd_field)) {
+//                                    if (StringUtil.isEmpty(data.getValue())) {
+//                                        data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
+//                                    }
                                     endDate_v = data.getValue();
                                 }
 
@@ -311,23 +321,27 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
                                     for (int i = 0; i < grids.size(); i++) {
                                         JSONObject items = grids.getJSONObject(i);
                                         Data data = new Data();
-                                        if (detailkey_did.equals(items.getString("dg_field"))) {
+                                        String dg_field = items.getString("dg_field");
+                                        String dg_value = items.getString("dg_value");
+                                        if (detailkey_did.equals(dg_field)) {
                                             //关联id
-                                            if (StringUtil.isEmpty(items.getString("dg_value"))) {
+                                            if (StringUtil.isEmpty(dg_value)) {
                                                 key_did = String.valueOf(formid);
                                             } else {
-                                                key_did = items.getString("dg_value");
+                                                key_did = dg_value;
                                             }
-
+                                        }
+                                        if ("ve_code".equals(dg_field)) {
+                                            ve_code = dg_value;
                                         }
                                         data.setMaxlength(String.valueOf(items.getIntValue("dg_maxlength")));
                                         data.setName(items.getString("dg_caption"));
                                         data.setAllowblank(items.getString("dg_logictype"));
                                         data.setReadonly(items.getString("dg_editable"));
-                                        data.setField(items.getString("dg_field"));
+                                        data.setField(dg_field);
                                         data.setDetno(items.getIntValue("dg_sequence"));
                                         data.setFdid(items.getIntValue("gd_id"));
-                                        data.setValue(items.getString("dg_value"));
+                                        data.setValue(dg_value);
 
                                         String dg_findfunctionname = items.getString("dg_findfunctionname");
                                         if (!TextUtils.isEmpty(dg_findfunctionname)) {
@@ -344,15 +358,15 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
                                             data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
                                         }
 
-                                        if (d_startDate.equals(items.getString("dg_field"))) {
-                                            if (StringUtil.isEmpty(items.getString("dg_value"))) {
+                                        if (d_startDate.equals(dg_field)) {
+                                            if (StringUtil.isEmpty(dg_value)) {
                                                 data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
                                             }
                                             d_startDate_v = data.getValue();
                                         }
 
-                                        if (d_endDate.equals(items.getString("dg_field"))) {
-                                            if (StringUtil.isEmpty(items.getString("dg_value"))) {
+                                        if (d_endDate.equals(dg_field)) {
+                                            if (StringUtil.isEmpty(dg_value)) {
                                                 data.setValue(DateFormatUtil.getStrDate4Date(new Date(), "yyyy-MM-dd HH:mm:ss"));
                                             }
                                             d_endDate_v = data.getValue();
@@ -383,9 +397,9 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
 
                                             }
                                             //更新的时候一定要加上明细项id
-                                            if (detailkey_id.equals(items.getString("dg_field"))) {
+                                            if (detailkey_id.equals(dg_field)) {
                                                 //明细id
-                                                key_id = items.getString("dg_value");
+                                                key_id = dg_value;
                                                 values.put(items.getInteger("dg_group"), key_id);
                                                 if (!ListUtils.isEmpty(itemData)) {
                                                     // itemData.get(itemData.size() - 1).setDetailId(key_id);
@@ -532,15 +546,21 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
                         if (formid == 0) {
                             if (btn_update != null) btn_update.setVisibility(View.GONE);
                             if (click_btn != null) click_btn.setVisibility(View.VISIBLE);
+                            change_quality_btn.setVisibility(View.GONE);
                         } else {
                             if (btn_update != null) btn_update.setVisibility(View.VISIBLE);
                             if (click_btn != null) click_btn.setVisibility(View.GONE);
+                            //针对高登电器的生产品质异常单的特殊处理,显示转单按钮
+                            if ("VerifyApplyDetail!FQC".equals(caller)) {
+                                change_quality_btn.setVisibility(View.VISIBLE);
+                            }
                         }
                         if (mDatas.size() == 0) {
                             click_btn.setVisibility(View.GONE);
                         }
                     } else {
                         click_btn.setVisibility(View.GONE);
+                        change_quality_btn.setVisibility(View.GONE);
                     }
 
 
@@ -770,6 +790,7 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
         lv_datas = findViewById(R.id.lv_datas);
         tv_item_add = findViewById(R.id.tv_item_add);
         click_btn = findViewById(R.id.click_btn);
+        change_quality_btn = findViewById(R.id.change_quality_btn);
         btn_update = findViewById(R.id.btn_update);
         ll_item_add = findViewById(R.id.ll_item_add);
         ll_top = findViewById(R.id.ll_top);
@@ -779,6 +800,7 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
         ll_item_add.setOnClickListener(this);
         click_btn.setOnClickListener(this);
         btn_update.setOnClickListener(this);
+        change_quality_btn.setOnClickListener(this);
     }
 
 
@@ -910,6 +932,31 @@ public class DataFormDetailActivity extends BaseActivity implements View.OnClick
                 commit();
         } else if (v.getId() == R.id.btn_update) {
             updata();
+        } else if (v.getId() == R.id.change_quality_btn) {
+            progressDialog.show();
+            HttpRequest.getInstance().sendRequest(CommonUtil.getAppBaseUrl(ct),
+                    new HttpParams.Builder()
+                            .url("scm/qc/turnQualityYC.action")
+                            .method(Method.GET)
+                            .flag(0)
+                            .addParam("id", formid)
+                            .addParam("code", ve_code)
+                            .addParam("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"))
+                            .addParam("master", CommonUtil.getMaster())
+                            .addHeader("Cookie", CommonUtil.getErpCookie(ct))
+                            .build(), new HttpCallback() {
+                        @Override
+                        public void onSuccess(int flag, Object o) throws Exception {
+                            progressDialog.dismiss();
+                            toast("转单成功");
+                        }
+
+                        @Override
+                        public void onFail(int flag, String failStr) throws Exception {
+                            progressDialog.dismiss();
+                            toast(failStr);
+                        }
+                    });
         }
     }
 

+ 14 - 12
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/activity/form/FormListSelectActivity.java

@@ -233,7 +233,7 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                 } else if ("FeePlease!FYBX".equals(caller)) {
 
                     condition = "fp_pleasemancode='" + CommonUtil.getSharedPreferences(ct, "erp_username") + "'";
-                } else if("ProdInOut!Sale".equals(caller)){
+                } else if ("ProdInOut!Sale".equals(caller)) {
                     condition = "pi_invostatuscode='AUDITED' and pi_transport='自提' and pi_signstatus='未签名'";
                 }
                 if (condition != null) {
@@ -273,7 +273,7 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                 } else if ("FeePlease!FYBX".equals(caller)) {
 
                     condition = "fp_pleasemancode='" + CommonUtil.getSharedPreferences(ct, "erp_username") + "'";
-                } else if("ProdInOut!Sale".equals(caller)){
+                } else if ("ProdInOut!Sale".equals(caller)) {
                     condition = "pi_invostatuscode='AUDITED' and pi_transport='自提' and pi_signstatus='未签名'";
                 }
                 if (condition != null) {
@@ -361,12 +361,12 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                 if (itemMap.get(keyField) != null) {
                     keyId = Integer.valueOf(itemMap.get(keyField).toString());
                 }
-                if (itemMap.get(statusKey) == null ) {
+                if (itemMap.get(statusKey) == null) {
                     ToastMessage("单据状态为空!");
-                    status="已提交";//修复报销单bug
-                   // return;
-                }else {
-                    LogUtil.d("状态:" + itemMap.get(statusKey).toString()+"");
+                    status = "已提交";//修复报销单bug
+                    // return;
+                } else {
+                    LogUtil.d("状态:" + itemMap.get(statusKey).toString() + "");
                     status = itemMap.get(statusKey).toString();
                 }
                 Intent it_detail = null;
@@ -391,7 +391,7 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                 it_detail.putExtra("caller", caller);
                 LogUtil.d("caller:" + caller + "  id:" + id);
 
-                if ("在录入".equals(status)) {
+                if ("在录入".equals(status) || "未审核".equals(status)) {
                     if ("FeePlease!FYBX".equals(caller)) {
                         startActivity(new Intent(mContext,
                                 ExpenseReimbursementActivity.class)
@@ -406,14 +406,14 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                                 .putExtra("id", keyId));
                     }
                 } else {
-                    if("ProdInOut!Sale".equals(caller)){
+                    if ("ProdInOut!Sale".equals(caller)) {
                         startActivity(new Intent(mContext,
                                 ZeTianDocDetailsActivity.class)
                                 .putExtra("caller", caller)
                                 .putExtra("title", getToolBarTitle().toString())
                                 .putExtra("keyValue", keyId)
                                 .putExtra("status", status));
-                    }else {
+                    } else {
                         startActivity(new Intent(mContext,
                                 CommonDocDetailsActivity.class)
                                 .putExtra("caller", caller)
@@ -450,7 +450,7 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                 condition = "FP_PEOPLE2='" + CommonUtil.getSharedPreferences(ct, "erp_username") + "'";
             } else if ("FeePlease!FYBX".equals(caller)) {
                 condition = "fp_pleasemancode='" + CommonUtil.getSharedPreferences(ct, "erp_username") + "'";
-            } else if("ProdInOut!Sale".equals(caller)){
+            } else if ("ProdInOut!Sale".equals(caller)) {
                 condition = "pi_invostatuscode='AUDITED' and pi_transport='自提' and pi_signstatus='未签名'";
             }
             if (condition != null) {
@@ -750,7 +750,9 @@ public class FormListSelectActivity extends BaseActivity implements View.OnClick
                 // if ((Integer)map.get("width")==0)continue;
                 if ((Integer) map.get("width") == 0)
                     continue;
-                tViews[1][j].setText(dmap.get(map.get("dataIndex")).toString());
+                if (tViews[1][j] != null && map.get("dataIndex") != null && dmap.get(map.get("dataIndex")) != null) {
+                    tViews[1][j].setText(dmap.get(map.get("dataIndex")).toString());
+                }
             }
             if (tViews[0][0] != null) {
                 // tViews[0][0].setText((position + 1) + "");

+ 9 - 1
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/presenter/MissionPresenter.java

@@ -24,6 +24,7 @@ import com.core.app.AppConfig;
 import com.core.app.AppConstant;
 import com.core.app.MyApplication;
 import com.core.broadcast.MsgBroadcast;
+import com.core.dao.MessageDao;
 import com.core.model.MissionModel;
 import com.core.model.SelectBean;
 import com.core.net.http.http.OAHttpHelper;
@@ -41,6 +42,7 @@ import com.me.network.app.http.Method;
 import com.uas.applocation.UasLocationHelper;
 import com.uas.applocation.utils.LocationDistanceUtils;
 import com.uas.appworks.OA.erp.model.IMission;
+import com.uas.appworks.OA.erp.utils.AutoErpSigninUitl;
 import com.uas.appworks.R;
 import com.uas.appworks.dao.MissionDao;
 
@@ -598,6 +600,9 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
                             if (bundle != null) {
                                 MissionModel mission = bundle.getParcelable("data");
                                 if (mission != null) {
+                                    //数据库插入手动外勤记录
+                                    MessageDao.getInstance().instartSignin(getString(R.string.manual_mission_alert)
+                                            , AutoErpSigninUitl.getMissionSubTitle(mission));
                                     if (mission.getStatus() == 2) {//签退
                                         iMission.showToast("手动签退成功", R.color.load_error);
                                         endMission(mission, false);
@@ -606,7 +611,6 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
                                         loadMissionPlan();
                                     }
 
-
                                     String faceBase64 = bundle.getString("faceBase64", null);
                                     if (!TextUtils.isEmpty(faceBase64)) {
                                         iMission.faceUpload(mission, faceBase64);
@@ -822,4 +826,8 @@ public class MissionPresenter implements IMissionPresenter, OnHttpResultListener
             return false;
         }
     }
+
+    private String getString(int id) {
+        return MyApplication.getInstance().getString(id);
+    }
 }

+ 41 - 23
app_modular/appworks/src/main/java/com/uas/appworks/OA/erp/utils/AutoErpSigninUitl.java

@@ -115,9 +115,9 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
         if (isB2b) {
             signinWork(bundle, "");
         } else {
-            if(SwitchUtil.needMacForSign()){
+            if (SwitchUtil.needMacForSign()) {
                 validatorMac(model, SystemUtil.getMac(MyApplication.getInstance()));  // 关闭mac地址验证
-            }else{
+            } else {
                 CommonInterface.getInstance().getCodeByNet("CardLog", new CommonInterface.OnResultListener() {
                     @Override
                     public void result(boolean isOk, int result, String message) {
@@ -262,18 +262,18 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
             form.put("cl_address", address);
             form.put("cl_location", "android " + MyApplication.getInstance().getString(R.string.auto_work_signin_log));
 //            int comDistance = PreferenceUtils.getInt("distance", 0);
-            float distance =-1;
+            float distance = -1;
             List<WorkLocationModel> beanList = WorkLocationDao.getInstance().queryByEnCode();
             if (!ListUtils.isEmpty(beanList)) {
                 for (WorkLocationModel bean : beanList) {
-                    float dis=LocationDistanceUtils.distanceMeBack(bean.getLocation());
-                    if ( dis< bean.getValidrange()) {
-                        distance=dis;
+                    float dis = LocationDistanceUtils.distanceMeBack(bean.getLocation());
+                    if (dis < bean.getValidrange()) {
+                        distance = dis;
                         break;
                     }
                 }
             }
-            if (distance==-1) {
+            if (distance == -1) {
                 //判断是否有外勤
                 boolean isOutPlan = PreferenceUtils.getBoolean(AppConfig.HAVE_OUT_PLAN, false);
                 return false;
@@ -454,13 +454,13 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
                             LocalBroadcastManager.getInstance(MyApplication.getInstance()).sendBroadcast(intent);
                             PreferenceUtils.putBoolean("hasAutoSign", true);
                             int isWork = bundle == null ? -1 : bundle.getInt("isWork", -1);
-                            int rawId=R.raw.voice_work;
+                            int rawId = R.raw.voice_work;
                             switch (isWork) {
                                 case 0:
-                                    rawId=R.raw.voice_off;
+                                    rawId = R.raw.voice_off;
                                     break;
                                 case 1:
-                                    rawId=R.raw.voice_work;
+                                    rawId = R.raw.voice_work;
                                     break;
                             }
                             VoiceUtils.signVoice(rawId);
@@ -481,7 +481,7 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
                             if (bundle == null) return;
                             MissionModel mission = bundle.getParcelable("data");
                             if (mission == null) return;
-                            updataMissonDB(mission);
+                            updataMissonDB(mission, true);
                         }
                     }
                     break;
@@ -589,7 +589,7 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
      * @throws Exception
      */
 
-    private void updataMissonDB(MissionModel mission) throws Exception {
+    public void updataMissonDB(MissionModel mission, boolean isAuto) throws Exception {
         //更新数据库
         if (mission == null) return;//如果数据库没有,一般不会出现这样的情况
         if (StringUtil.isEmpty(mission.getRealTime()))
@@ -598,21 +598,23 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
         String title = "";
         String subTitle = "";
         if (mission.getStatus() == 2) {//签退
-            title = MyApplication.getInstance().getString(R.string.auto_mission_alert);
-            if (StringUtil.isEmpty(mission.getCompanyName()))
-                subTitle = MyApplication.getInstance().getString(R.string.uu_auto_signined_down);
-            else
-                subTitle = MyApplication.getInstance().getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_down);
+            if (isAuto) {
+                title = getString(R.string.auto_mission_alert);
+            } else {
+                title = getString(R.string.manual_mission_alert);
+            }
+            subTitle = getMissionSubTitle(mission);
 
             CommonInterface.getInstance().endMission(mission.getId(), false);
             loadIsMission(mission);
         } else {//签到
             if (mission.getStatus() < 1) {
-                title = getString(R.string.auto_mission_alert);
-                if (StringUtil.isEmpty(mission.getCompanyName()))
-                    subTitle = getString(R.string.uu_auto_signined_up);
-                else
-                    subTitle = getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_up);
+                if (isAuto) {
+                    title = getString(R.string.auto_mission_alert);
+                } else {
+                    title = getString(R.string.manual_mission_alert);
+                }
+                subTitle = getMissionSubTitle(mission);
                 mission.setStatus(1);//说明没有打过卡
                 boolean saveOk = MissionDao.getInstance().updata(mission);
                 if (saveOk)//XXX公司自动外勤签到成功
@@ -626,6 +628,22 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
             MessageDao.getInstance().instartSignin(title, subTitle);
     }
 
+    public static String getMissionSubTitle(MissionModel mission) {
+        String subTitle;
+        if (mission.getStatus() == 2) {
+            if (StringUtil.isEmpty(mission.getCompanyName()))
+                subTitle = MyApplication.getInstance().getString(R.string.uu_auto_signined_down);
+            else
+                subTitle = MyApplication.getInstance().getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_down);
+        } else {
+            if (StringUtil.isEmpty(mission.getCompanyName()))
+                subTitle = getString(R.string.uu_auto_signined_up);
+            else
+                subTitle = getString(R.string.visit) + mission.getCompanyName() + getString(R.string.success_signin_up);
+        }
+        return subTitle;
+    }
+
     /**
      * 外勤签退后判断时候还有外勤计划,如果没有,判断是否符合返回公司  返回提示请返回公司签到
      *
@@ -930,7 +948,7 @@ public class AutoErpSigninUitl implements OnHttpResultListener {
         return (int) (time2 / 1000);
     }
 
-    private String getString(int id) {
+    private static String getString(int id) {
         return MyApplication.getInstance().getString(id);
     }
 

+ 1 - 1
app_modular/appworks/src/main/java/com/uas/appworks/datainquiry/activity/PDFDownloadActivity.java

@@ -203,7 +203,6 @@ public class PDFDownloadActivity extends BaseActivity implements View.OnClickLis
 
             }
         }
-        Log.d("pdfurl", replace == null ? "" : replace);
 
         mStateTextView = (TextView) findViewById(R.id.pdf_download_state_tv);
         mRemainTextView = (TextView) findViewById(R.id.pdf_download_remain_tv);
@@ -281,6 +280,7 @@ public class PDFDownloadActivity extends BaseActivity implements View.OnClickLis
         } catch (IOException e) {
             e.printStackTrace();
         }
+        Log.d("pdfurl", downloadUrl == null ? "" : downloadUrl);
         mDownloader = new ProgressDownloader(downloadUrl, file, PDFDownloadActivity.this);
         mDownloader.download(0L);
     }

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

@@ -210,4 +210,5 @@
     <string name="project_business_chance">项目商机</string>
     <string name="oem_business_chance">OEM商机</string>
     <string name="no_fields_to_update">没有可更新的字段</string>
+    <string name="manual_mission_alert">手动外勤提醒</string>
 </resources>

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

@@ -209,4 +209,5 @@
     <string name="project_business_chance">项目商机</string>
     <string name="oem_business_chance">OEM商机</string>
     <string name="no_fields_to_update">没有可更新的字段</string>
+    <string name="manual_mission_alert">手动外勤提醒</string>
 </resources>

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

@@ -209,4 +209,5 @@
     <string name="project_business_chance">项目商机</string>
     <string name="oem_business_chance">OEM商机</string>
     <string name="no_fields_to_update">没有可更新的字段</string>
+    <string name="manual_mission_alert">手动外勤提醒</string>
 </resources>

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

@@ -253,4 +253,5 @@
     <string name="project_business_chance">项目商机</string>
     <string name="oem_business_chance">OEM商机</string>
     <string name="no_fields_to_update">没有可更新的字段</string>
+    <string name="manual_mission_alert">手动外勤提醒</string>
 </resources>