|
|
@@ -159,8 +159,7 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
ArrayList<Data> itemData = new ArrayList<>();
|
|
|
ArrayList<Data> itemDataNet = new ArrayList<>();//传输给配置界面
|
|
|
String value = iter.next();
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
for (int i = 0; i < forms.size(); i++) {
|
|
|
JSONObject items = forms.getJSONObject(i);
|
|
|
Data data = new Data();
|
|
|
@@ -168,6 +167,8 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
data.setReadonly(items.getString("fd_readonly"));
|
|
|
data.setField(items.getString("fd_field"));
|
|
|
data.setDetno(items.getIntValue("fd_detno"));
|
|
|
+ data.setFd_logictype(items.getString("fd_logictype"));
|
|
|
+ data.setFd_defaultvalue(items.getString("fd_defaultvalue"));
|
|
|
data.setMaxlength(String.valueOf(items.getIntValue("fd_maxlength")));
|
|
|
data.setFdid(items.getIntValue("fd_id"));
|
|
|
data.setValue(items.getString("fd_value"));
|
|
|
@@ -1039,9 +1040,7 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
final int itemViewType = getItemViewType(position);
|
|
|
switch (itemViewType) {
|
|
|
case TYPE_CATEGORY_ITEM:
|
|
|
- // if (null == convertView) {
|
|
|
convertView = inflater.inflate(R.layout.listview_item_header, null);
|
|
|
- // }
|
|
|
final TextView textView = (TextView) convertView.findViewById(R.id.tv_title);
|
|
|
TextView item_add = (TextView) convertView.findViewById(R.id.iv_item_add);
|
|
|
RelativeLayout header = (RelativeLayout) convertView.findViewById(R.id.rl_item_header);
|
|
|
@@ -1053,7 +1052,6 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
header.setVisibility(View.GONE);
|
|
|
} else {
|
|
|
// header.setVisibility(View.GONE);
|
|
|
- LogUtil.d("MainActivity:" + itemValue.getGroup());
|
|
|
if (itemValue.getGroup().contains("明细") && !itemValue.getGroup().equals("明细项1")) {
|
|
|
item_add.setVisibility(View.VISIBLE);
|
|
|
} else {
|
|
|
@@ -1096,13 +1094,13 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
//缓存问题
|
|
|
// model= (ViewModel) convertView.getTag();
|
|
|
}
|
|
|
-
|
|
|
final Data data = (Data) getItem(position);
|
|
|
HashMap<String, Object> results = isLastItem(position);
|
|
|
final Integer categoryIndex = (Integer) results.get("categoryIndex");
|
|
|
-
|
|
|
model.text.setText(data.getName());
|
|
|
- if ("F".equals(data.getReadonly()) || "necessaryField".equals(data.getReadonly())) {
|
|
|
+
|
|
|
+ if ("F".equals(data.getReadonly()) ||
|
|
|
+ "necessaryField".equals(data.getReadonly())) {
|
|
|
model.editText.setHint("请输入(必填)");
|
|
|
} else {
|
|
|
model.editText.setHint("请输入");
|
|
|
@@ -1111,7 +1109,9 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
data.getType().equals("C") ||
|
|
|
data.getType().equals("MF") ||
|
|
|
data.getType().equals("SF") ||
|
|
|
- data.getType().equals("DF")) {
|
|
|
+ data.getType().equals("DF")||
|
|
|
+ data.getType().equals("RG")||
|
|
|
+ data.getType().equals("CBG")) {
|
|
|
model.editText.setKeyListener(null);
|
|
|
model.editText.setFocusable(false);
|
|
|
model.editText.setHint("请选择(必选)");
|
|
|
@@ -1154,6 +1154,7 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
}
|
|
|
|
|
|
}
|
|
|
+ //下拉选择
|
|
|
if (data.getType().equals("C")) {
|
|
|
HashMap param = new HashMap<>();
|
|
|
param.put("caller", caller);
|
|
|
@@ -1174,53 +1175,29 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
startActivityForResult(intent, categoryIndex);
|
|
|
isLeave = true;
|
|
|
}
|
|
|
-
|
|
|
- if (data.getType().equals("MF") || data.getType().equals("SF")) {
|
|
|
- HashMap param = new HashMap<>();
|
|
|
- String[] fields = new String[]{"sa_custname"};
|
|
|
- if (caller.equals("StandbyApplication")) {
|
|
|
- fields = new String[]{"sa_custname"};
|
|
|
- }
|
|
|
- if (caller.equals("MaterielApply")) {
|
|
|
- fields = new String[]{"ama_customer"};
|
|
|
+ //单选,多选处理
|
|
|
+ if (data.getType().equals("MF") || data.getType().equals("SF")
|
|
|
+ ||data.getType().equals("RG")||
|
|
|
+ data.getType().equals("CBG")) {
|
|
|
+ ArrayList<SelectBean> formBeaan = new ArrayList<>();
|
|
|
+ String logicType= data.getFd_logictype();
|
|
|
+ String [] items=logicType.split(";");
|
|
|
+ for (int i = 0; i <items.length ; i++) {
|
|
|
+ SelectBean selectBean = new SelectBean();
|
|
|
+ selectBean.setName(items[i]);
|
|
|
+ formBeaan.add(selectBean);
|
|
|
}
|
|
|
- param.put("caller", caller);
|
|
|
- if (caller.equals("MainTain")) {
|
|
|
- if ("mt_custcode".equals(data.getField())) {
|
|
|
- fields = new String[]{"mt_custname"};
|
|
|
- }
|
|
|
- if ("mt_text1".equals(data.getField())) {
|
|
|
- fields = new String[]{"mt_text2"};
|
|
|
- }
|
|
|
- if ("mt_ckcode".equals(data.getField())) {
|
|
|
- fields = new String[]{"mt_row", "so_custname", "sod_jx", "sod_remark", "sod_unback"};
|
|
|
- }
|
|
|
- if ("mtd_procode".equals(data.getField())) {
|
|
|
- fields = new String[]{"mtd_proname", "mtd_remark", "mtd_unit"};
|
|
|
- param.put("caller", "sProduct");
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- param.put("page", "1");
|
|
|
- param.put("which", "form");
|
|
|
- param.put("condition", "1=1");
|
|
|
- param.put("pageSize", "30");
|
|
|
- param.put("field", data.getField());
|
|
|
- Bundle bundle = new Bundle();
|
|
|
- bundle.putSerializable("param", param);
|
|
|
Intent intent = new Intent(ct, SelectActivity.class);
|
|
|
- intent.putExtra("type", 1);
|
|
|
- if (data.getType().equals("SF")) {
|
|
|
+ intent.putExtra("type", 2);//本地数据加载
|
|
|
+ if (data.getType().equals("SF")||data.getType().equals("RG")) {
|
|
|
intent.putExtra("isSingle", true);
|
|
|
} else {
|
|
|
intent.putExtra("isSingle", false);
|
|
|
}
|
|
|
-
|
|
|
+ intent.putParcelableArrayListExtra("data", formBeaan);
|
|
|
intent.putExtra("reid", R.style.OAThemeMeet);
|
|
|
- intent.putExtras(bundle);
|
|
|
intent.putExtra("key", "combdatas");
|
|
|
intent.putExtra("showKey", data.getField());
|
|
|
- intent.putExtra("fields", fields);
|
|
|
intent.putExtra("action", "common/dbfind.action");
|
|
|
intent.putExtra("title", data.getName());
|
|
|
intent.putExtra("id", categoryIndex);
|
|
|
@@ -1431,15 +1408,16 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
b = data.getParcelableExtra("data");
|
|
|
}
|
|
|
if (requestCode == b.getId() && resultCode == 0x20) {
|
|
|
- if (b == null || StringUtil.isEmpty(b.getJson())) return;
|
|
|
- if (JSONUtil.validate(b.getJson())) {
|
|
|
+ //if (b == null || StringUtil.isEmpty(b.getJson())) return;
|
|
|
+ if (true) {
|
|
|
Data vaules = JSON.parseObject(b.getObject(), Data.class);
|
|
|
String value = null;
|
|
|
if ("C".equals(vaules.getType())) {
|
|
|
value = JSON.parseObject(b.getJson()).getString("VALUE");
|
|
|
muiltCallerMainTain(vaules, value);//维修申请单特殊处理
|
|
|
}
|
|
|
- if ("SF".equals(vaules.getType()) || "DF".equals(vaules.getType())) {
|
|
|
+ if ("SF".equals(vaules.getType()) || "DF".equals(vaules.getType())
|
|
|
+ ||"RG".equals(vaules.getType())||"CBG".equals(vaules.getType())) {
|
|
|
mulitSelectUpdate(b, vaules);//联动字段选择
|
|
|
}
|
|
|
mulitAsk4Leave(b, vaules, value);//请假单特殊处理
|
|
|
@@ -1481,6 +1459,7 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
case 0x21://多选
|
|
|
if (data == null) return;
|
|
|
ArrayList<SelectBean> muliData = data.getParcelableArrayListExtra("data");
|
|
|
+ LogUtil.d("HttpLogs","muliData:"+JSON.toJSONString(muliData));
|
|
|
int id = data.getIntExtra("id", 0);
|
|
|
if (requestCode == id && resultCode == 0x21) {//多选框
|
|
|
StringBuilder str = new StringBuilder("");
|
|
|
@@ -1496,15 +1475,10 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
}
|
|
|
}
|
|
|
LogUtil.d(str.toString());
|
|
|
-
|
|
|
- Toast.makeText(ct, "下拉项:" + datas.get(id - 1).getName() + "返回值:" + str.toString(), Toast.LENGTH_LONG).show();
|
|
|
+ mAdapter.getmListData().get(0).getDatas().get(id-1).setValue(str.toString());
|
|
|
+ //Toast.makeText(ct, "下拉项:" + datas.get(id - 1).getName() + "返回值:" + str.toString(), Toast.LENGTH_LONG).show();
|
|
|
+ // mAdapter.get
|
|
|
mAdapter.notifyDataSetChanged();
|
|
|
-// mHandler.postDelayed(new Runnable() {
|
|
|
-// @Override
|
|
|
-// public void run() {
|
|
|
-// isLeave=false;
|
|
|
-// }
|
|
|
-// },2000);
|
|
|
}
|
|
|
break;
|
|
|
case 0x25:
|
|
|
@@ -1703,7 +1677,10 @@ public class CommonDataFormActivity extends BaseActivity implements View.OnClick
|
|
|
*/
|
|
|
private void mulitSelectUpdate(SelectBean b, Data vaules) {
|
|
|
JSONObject jdata = JSON.parseObject(b.getJson());
|
|
|
+
|
|
|
Data tdata = JSON.parseObject(b.getObject(), Data.class);
|
|
|
+ mAdapter.getmListData().get(vaules.getGroupId()).getDatas().get(b.getId()-1).setValue(b.getName());
|
|
|
+
|
|
|
if (caller.equals("StandbyApplication")) {
|
|
|
String cu_name = jdata.getString("cu_name");
|
|
|
int sa_custname = 0;
|