|
@@ -24,6 +24,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
|
|
|
/**
|
|
@@ -95,61 +96,75 @@ public class BusinessOpportunityController {
|
|
|
JSONArray configObJSONArray = configOb.getJSONArray("list");
|
|
|
List<List<String>> dataList=new ArrayList<>();
|
|
|
List<String> titleList=new ArrayList<>();
|
|
|
+ List<String> modelList=new ArrayList<>();
|
|
|
for (int i = 0; i < configObJSONArray.size(); i++) {
|
|
|
JSONObject item = configObJSONArray.getJSONObject(i);
|
|
|
- titleList.add(item.getString("label"));
|
|
|
+ String type = item.getString("type");
|
|
|
+ if (type.equals("grid")){
|
|
|
+ JSONArray columns = item.getJSONArray("columns");
|
|
|
+ for (int j = 0; j < columns.size(); j++) {
|
|
|
+ JSONObject columnsJSONObject = columns.getJSONObject(j);
|
|
|
+ JSONArray listJsonArray = columnsJSONObject.getJSONArray("list");
|
|
|
+ for (int k = 0; k < listJsonArray.size(); k++) {
|
|
|
+ JSONObject listJsonArrayJSONObject = listJsonArray.getJSONObject(k);
|
|
|
+ titleList.add(listJsonArrayJSONObject.getString("label"));
|
|
|
+ modelList.add(listJsonArrayJSONObject.getString("model"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ titleList.add(item.getString("label"));
|
|
|
+ modelList.add(item.getString("model"));
|
|
|
+ }
|
|
|
}
|
|
|
dataList.add(titleList);
|
|
|
- HttpRespMsg msg = list(bo, request);
|
|
|
- Map<String, Object> msgData = (Map<String, Object>) msg.getData();
|
|
|
- List<BusinessOpportunity> bos = (List<BusinessOpportunity>) msgData.get("data");
|
|
|
- for (BusinessOpportunity bo1 : bos) {
|
|
|
+
|
|
|
+ HttpRespMsg respMsg = list(bo,request);
|
|
|
+ Map<String, Object> msgData = (Map<String, Object>) respMsg.getData();
|
|
|
+ List<BusinessOpportunity> list = (List<BusinessOpportunity>) msgData.get("data");
|
|
|
+
|
|
|
+ for (BusinessOpportunity data : list) {
|
|
|
List<String> item=new ArrayList<>();
|
|
|
- for (int i = 0; i < configObJSONArray.size(); i++) {
|
|
|
- JSONObject target = configObJSONArray.getJSONObject(i);
|
|
|
- if(target.getString("type").equals("grid")){
|
|
|
- JSONArray columns = target.getJSONArray("columns");
|
|
|
- for (int i1 = 0; i1 < columns.size(); i1++) {
|
|
|
- JSONObject columnsJSONObject = columns.getJSONObject(i1);
|
|
|
- JSONArray list = columnsJSONObject.getJSONArray("list");
|
|
|
- for (int i2 = 0; i2 < list.size(); i2++) {
|
|
|
- JSONObject object = list.getJSONObject(i2);
|
|
|
- String model = object.getString("model");
|
|
|
- String targetName = model.substring(0, 1).toUpperCase() + model.substring(1);
|
|
|
- Class<? extends BusinessOpportunity> aClass = bo1.getClass();
|
|
|
- String value = String.valueOf(aClass.getMethod("get" + targetName).invoke(bo1)==null?"":aClass.getMethod("get" + targetName).invoke(bo1));
|
|
|
- if(model.equals("inchargerId")){
|
|
|
- if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
- value = "$userName"+String.valueOf(aClass.getMethod("getInchargerName").invoke(bo1))+"$";
|
|
|
- }else {
|
|
|
- value = String.valueOf(aClass.getMethod("getInchargerName").invoke(bo1));
|
|
|
- }
|
|
|
- }
|
|
|
- item.add(value);
|
|
|
- }
|
|
|
+ for (int i = 0; i < modelList.size(); i++) {
|
|
|
+
|
|
|
+ String model = modelList.get(i);
|
|
|
+ String targetName = model.substring(0, 1).toUpperCase() + model.substring(1);
|
|
|
+ Class<? extends BusinessOpportunity> aClass = data.getClass();
|
|
|
+ String value = "";
|
|
|
+
|
|
|
+ if(model.equals("inchargerId")){
|
|
|
+ if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
+ value = "$userName"+String.valueOf(aClass.getMethod("getInchargerName").invoke(data))+"$";
|
|
|
+ }else {
|
|
|
+ value = String.valueOf(aClass.getMethod("getInchargerName").invoke(data)).equals("null") ? "" :String.valueOf(aClass.getMethod("getInchargerName").invoke(data));
|
|
|
}
|
|
|
}else {
|
|
|
- String model = target.getString("model");
|
|
|
- String targetName = model.substring(0, 1).toUpperCase() + model.substring(1);
|
|
|
- Class<? extends BusinessOpportunity> aClass = bo1.getClass();
|
|
|
- Object o = aClass.getMethod("get" + targetName).invoke(bo1) == null ? "" : aClass.getMethod("get" + targetName).invoke(bo1);
|
|
|
- String value = String.valueOf(o);
|
|
|
- if(model.equals("inchargerId")){
|
|
|
- if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
- value = "$userName"+String.valueOf(aClass.getMethod("getInchargerName").invoke(bo1))+"$";
|
|
|
- }else {
|
|
|
- value = String.valueOf(aClass.getMethod("getInchargerName").invoke(bo1));
|
|
|
- }
|
|
|
- }
|
|
|
- if(model.equals("contactsId")){
|
|
|
- if(wxCorpInfo!=null&&wxCorpInfo.getSaasSyncContact()==1){
|
|
|
- value = "$userName"+String.valueOf(aClass.getMethod("getContactsName").invoke(bo1))+"$";
|
|
|
- }else {
|
|
|
- value = String.valueOf(aClass.getMethod("getContactsName").invoke(bo1));
|
|
|
- }
|
|
|
- }
|
|
|
- item.add(value);
|
|
|
+ value= String.valueOf(aClass.getMethod("get" + targetName).invoke(data)==null?"":aClass.getMethod("get" + targetName).invoke(data));
|
|
|
+ }
|
|
|
+
|
|
|
+ if(model.equals("contactsId")){
|
|
|
+ value = String.valueOf(aClass.getMethod("getContactsName").invoke(data));
|
|
|
+ }
|
|
|
+ if(model.equals("customerId")){
|
|
|
+ value = String.valueOf(aClass.getMethod("getCustomerName").invoke(data));
|
|
|
}
|
|
|
+ if(model.equals("expectedTransactionDate")){
|
|
|
+ Date date = (Date) aClass.getMethod("getExpectedTransactionDate").invoke(data);
|
|
|
+ // 如果日期不为空,格式化日期
|
|
|
+ if (date != null) {
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ value = sdf.format(date);
|
|
|
+ } else {
|
|
|
+ value = "";
|
|
|
+ } }
|
|
|
+ if(model.equals("stageId")){
|
|
|
+ value = String.valueOf(aClass.getMethod("getStageValue").invoke(data));
|
|
|
+ }
|
|
|
+ if(model.equals("creatorId")){
|
|
|
+ value = String.valueOf(aClass.getMethod("getCreatorName").invoke(data));
|
|
|
+ }
|
|
|
+
|
|
|
+ item.add(value);
|
|
|
}
|
|
|
dataList.add(item);
|
|
|
}
|