|
|
@@ -1143,6 +1143,105 @@ public class YidaServiceImpl implements YidaService {
|
|
|
return businessUserData;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<Map> queryConfirmedReceiptData() throws Exception {
|
|
|
+ /*
|
|
|
+ 参数定义
|
|
|
+ */
|
|
|
+ List<Map> confirmedReceiptData = new ArrayList<>(); // 确认收款数据
|
|
|
+ Map confirmedReceiptRecord; //确认收款记录
|
|
|
+ YDSearch ydSearch; //检索条件(单个)
|
|
|
+ List<YDSearch> ydSearchList = new ArrayList<>(); //检索条件(多个)
|
|
|
+ String searchCondition; //检索条件
|
|
|
+ YDParam yidaParam; //HTTP请求体
|
|
|
+ YDParam.YDParamBuilder ydParamBuilder; //宜搭参数构建
|
|
|
+ DDR_New yidaResult; //请求返回内容
|
|
|
+ List<Map> records; //每页记录数据
|
|
|
+ List<Map> allRecords = new ArrayList<>(); //所有记录数据
|
|
|
+ boolean hasMore; //是否还有下一页
|
|
|
+ int pageNo; //当前页码
|
|
|
+ int pageSize; //每页获取的数据量(上限100)
|
|
|
+ String formInstId; //表单实例ID
|
|
|
+ JSONObject fields; //字段数据
|
|
|
+ Long receiptDate; //收款日期
|
|
|
+ String customerCode; //客户编号
|
|
|
+
|
|
|
+ /*
|
|
|
+ 初始化参数值
|
|
|
+ */
|
|
|
+ ydSearch = new YDSearch(
|
|
|
+ "radioField_mqri33bx",
|
|
|
+ "否",
|
|
|
+ "测试使用",
|
|
|
+ YDSearch.Type.RADIO_FIELD,
|
|
|
+ YDSearch.Operator.EQ
|
|
|
+ );
|
|
|
+ ydSearchList.add(ydSearch);
|
|
|
+ searchCondition = JSONObject.toJSONString(ydSearchList);
|
|
|
+ hasMore = true; //第一页默认有数据
|
|
|
+ pageNo = 1;
|
|
|
+ pageSize = 100;
|
|
|
+ ydParamBuilder = YDParam.builder();
|
|
|
+ ydParamBuilder = ydParamBuilder.formUuid(EastarParam.YD_FORMUUID_CONFIRMED_RECEIPT);
|
|
|
+ ydParamBuilder = ydParamBuilder.instanceStatus("COMPLETED");
|
|
|
+ ydParamBuilder = ydParamBuilder.approvedResult("agree");
|
|
|
+ ydParamBuilder = ydParamBuilder.searchFieldJson(searchCondition);
|
|
|
+
|
|
|
+ /*
|
|
|
+ 翻页获取数据
|
|
|
+ */
|
|
|
+ while(hasMore){
|
|
|
+ ydParamBuilder = ydParamBuilder.pageNumber(pageNo);
|
|
|
+ ydParamBuilder = ydParamBuilder.pageSize(pageSize);
|
|
|
+ yidaParam = ydParamBuilder.build();
|
|
|
+ yidaResult = ydClient.queryData(yidaParam,YDConf.FORM_QUERY.retrieve_search_process);
|
|
|
+ log.info("当前第"+pageNo+"页");
|
|
|
+ records = (List<Map>) yidaResult.getData();
|
|
|
+ log.info("记录数="+records.size());
|
|
|
+ for (Map record : records){
|
|
|
+ allRecords.add(record);
|
|
|
+ }
|
|
|
+ if((pageNo*pageSize) < yidaResult.getTotalCount()){
|
|
|
+ pageNo++;
|
|
|
+ }else{
|
|
|
+ hasMore = false;
|
|
|
+ }
|
|
|
+ log.info("是否有更多数据:"+hasMore);
|
|
|
+ }
|
|
|
+
|
|
|
+ /*
|
|
|
+ 请求记录数据处理
|
|
|
+ */
|
|
|
+ log.info("所有记录数量="+allRecords.size());
|
|
|
+ for (Map record : allRecords){
|
|
|
+
|
|
|
+ receiptDate = null;
|
|
|
+ customerCode = null;
|
|
|
+ confirmedReceiptRecord = new HashMap<>();
|
|
|
+
|
|
|
+ //获取表单实例ID
|
|
|
+ formInstId = String.valueOf(record.get("formInstanceId"));
|
|
|
+
|
|
|
+ //解析字段数据
|
|
|
+ fields = JSONObject.parseObject(JSONObject.toJSONString(record.get("data")));
|
|
|
+
|
|
|
+ if(fields.get("dateField_mff079qz") != null){ //收款日期
|
|
|
+ receiptDate = Long.parseLong(fields.getString("dateField_mff079qz"));
|
|
|
+ }
|
|
|
+
|
|
|
+ if(fields.get("textField_mff079ra") != null){ //客户编号(主表)
|
|
|
+ customerCode = String.valueOf(fields.get("textField_mff079ra"));
|
|
|
+ }
|
|
|
+
|
|
|
+ confirmedReceiptRecord.put("receiptDate",receiptDate);
|
|
|
+ confirmedReceiptRecord.put("customerCode",customerCode);
|
|
|
+ confirmedReceiptData.add(confirmedReceiptRecord);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ return confirmedReceiptData;
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public void setLtcBusinessUserLeave(String formInstId) throws Exception {
|
|
|
/*
|
|
|
@@ -1239,6 +1338,11 @@ public class YidaServiceImpl implements YidaService {
|
|
|
String userIdText;
|
|
|
String establishStatus; //建联状态
|
|
|
String countryOrRegion; //国家或地区
|
|
|
+ JSONArray previousFollowerJSONArray; //前跟进人
|
|
|
+ List<String> previousFollowerUserIdList; //前跟进人userId列表
|
|
|
+ JSONArray previousFollowerGroupJSONArray; //前跟进团队
|
|
|
+ List<String> previousFollowerGroupList; //前跟进团队列表
|
|
|
+ String orderedStatus; //下过单客户
|
|
|
|
|
|
/*
|
|
|
初始化参数值
|
|
|
@@ -1283,6 +1387,7 @@ public class YidaServiceImpl implements YidaService {
|
|
|
customerCode = "";
|
|
|
establishStatus = null;
|
|
|
countryOrRegion = null;
|
|
|
+ orderedStatus = null;
|
|
|
|
|
|
//获取表单实例ID
|
|
|
formInstId = String.valueOf(ltcCustomerRecord.get("formInstanceId"));
|
|
|
@@ -1326,9 +1431,33 @@ public class YidaServiceImpl implements YidaService {
|
|
|
countryOrRegion = "尚不明确";
|
|
|
}
|
|
|
|
|
|
+ previousFollowerJSONArray = null;
|
|
|
+ previousFollowerUserIdList = new ArrayList<>();
|
|
|
+ if(fields.get("employeeField_mdo82twa_id") != null){
|
|
|
+ previousFollowerJSONArray = fields.getJSONArray("employeeField_mdo82twa_id");
|
|
|
+ if(!previousFollowerJSONArray.isEmpty()){
|
|
|
+ previousFollowerUserIdList = previousFollowerJSONArray.toJavaList(String.class);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ previousFollowerGroupJSONArray = null;
|
|
|
+ previousFollowerGroupList = new ArrayList<>();
|
|
|
+ if(fields.get("multiSelectField_msfo18mb") != null){
|
|
|
+ previousFollowerGroupJSONArray = fields.getJSONArray("multiSelectField_msfo18mb");
|
|
|
+ if(!previousFollowerGroupJSONArray.isEmpty()){
|
|
|
+ System.out.println(previousFollowerGroupJSONArray);
|
|
|
+ previousFollowerGroupList = previousFollowerGroupJSONArray.toJavaList(String.class);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //下过单客户
|
|
|
+ if(fields.get("radioField_ms43zj2s") != null){
|
|
|
+ orderedStatus = fields.get("radioField_ms43zj2s").toString();
|
|
|
+ }
|
|
|
+
|
|
|
//生成客户数据
|
|
|
customerRecord = UtilMap.map(
|
|
|
- "formInstId, customerName, customerNameUnique, customerCode, userId, userIdText, customerLevel, customerPotentialLevel, newOrOld, seaType, establishStatus, countryOrRegion, productTypes, testUseFlag, aiTableId",
|
|
|
+ "formInstId, customerName, customerNameUnique, customerCode, userId, userIdText, customerLevel, customerPotentialLevel, newOrOld, seaType, establishStatus, countryOrRegion, productTypes, previousFollowerUserIdList, previousFollowerGroupList, orderedStatus, testUseFlag, aiTableId",
|
|
|
formInstId, //表单实例ID
|
|
|
customerName, //客户公司名(英文名)
|
|
|
fields.getString("textField_meks6pjp"), //客户验重
|
|
|
@@ -1342,6 +1471,9 @@ public class YidaServiceImpl implements YidaService {
|
|
|
establishStatus, //建联状态
|
|
|
countryOrRegion, //国家或地区
|
|
|
fields.get("multiSelectField_md6q7ox7"), //主要品类
|
|
|
+ previousFollowerUserIdList, //前跟进人userId列表
|
|
|
+ previousFollowerGroupList, //前跟进团队列表
|
|
|
+ orderedStatus, //下过单客户
|
|
|
fields.getString("radioField_mnpdkss9"), //测试使用
|
|
|
fields.getString("textField_mno9nwip") //AI表格映射ID
|
|
|
);
|
|
|
@@ -2484,6 +2616,36 @@ public class YidaServiceImpl implements YidaService {
|
|
|
ydClient.operateData(yidaParam,YDConf.FORM_OPERATION.update);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void updateLtcCustomerPreviousFollower(String formInstId, List<String> previousFollowerUserIdList, List<String> previousFollowerGroupList) throws Exception {
|
|
|
+ /*
|
|
|
+ 参数定义
|
|
|
+ */
|
|
|
+ YDParam yidaParam; //HTTP请求体
|
|
|
+ YDParam.YDParamBuilder ydParamBuilder; //宜搭参数构建
|
|
|
+ String updateFormDataJson; //更新内容
|
|
|
+
|
|
|
+ /*
|
|
|
+ 初始化参数值
|
|
|
+ */
|
|
|
+ Map updateFormData = UtilMap.map(
|
|
|
+ "employeeField_mdo82twa, multiSelectField_msfo18mb",
|
|
|
+ previousFollowerUserIdList.toArray(new String[]{}),
|
|
|
+ previousFollowerGroupList.toArray(new String[]{})
|
|
|
+ );
|
|
|
+ updateFormDataJson = JSONObject.toJSONString(updateFormData);
|
|
|
+ System.out.println(updateFormDataJson);
|
|
|
+
|
|
|
+ /*
|
|
|
+ 更新数据
|
|
|
+ */
|
|
|
+ ydParamBuilder = YDParam.builder();
|
|
|
+ ydParamBuilder = ydParamBuilder.formInstId(formInstId);
|
|
|
+ ydParamBuilder = ydParamBuilder.updateFormDataJson(updateFormDataJson);
|
|
|
+ yidaParam = ydParamBuilder.build();
|
|
|
+ ydClient.operateData(yidaParam,YDConf.FORM_OPERATION.update);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public void updateCustomerCurrentLevel(String formInstId, String customerCurrentLevel) throws Exception {
|
|
|
/*
|