grp报销单
This commit is contained in:
parent
c38307e79c
commit
3c2fbbcb6f
|
@ -1,5 +1,6 @@
|
|||
package com.hzya.frame.grpU8.nxproof.oerdjml.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity;
|
||||
|
||||
/**
|
||||
|
@ -15,4 +16,12 @@ public interface IOerDjmlExtService {
|
|||
* @return
|
||||
*/
|
||||
SysExtensionApiEntity saveExpensePre(SysExtensionApiEntity entity);
|
||||
|
||||
/**
|
||||
* 保存方法前,先调这个方法 组装参数
|
||||
* 插件方式执行用这个方法
|
||||
* @param jsonObject
|
||||
* @return
|
||||
*/
|
||||
String saveExpensePrePlugin(JSONObject jsonObject);
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import cn.hutool.core.date.DateUtil;
|
|||
import cn.hutool.core.io.FileUtil;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.hzya.frame.grpU8.nxproof.oerdjjsfs.entity.OerDjjsfsEntity;
|
||||
|
@ -33,6 +34,7 @@ import java.io.*;
|
|||
import java.net.URLDecoder;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.zip.ZipEntry;
|
||||
|
@ -74,15 +76,87 @@ public class OerDjmlExtServiceImpl implements IOerDjmlExtService {
|
|||
}
|
||||
}
|
||||
Map<String, String> headers = entity.getHeaders();
|
||||
JSONObject bodyObj = JSONObject.parseObject(bodys);
|
||||
String res = oerValuOf(bodyObj, headers, grpDataSourceCode);
|
||||
// String formmainTableName = headers.get("formmainTableName");
|
||||
// String forsonTableName = headers.get("forsonTableName");
|
||||
// String djlx = headers.get("djlx");
|
||||
// //事件类型
|
||||
// String eventType = bodyObj.getString("eventType");
|
||||
// //summaryId
|
||||
// String summaryId = bodyObj.getString("summaryId");
|
||||
// JSONObject seeyonData = bodyObj.getJSONObject("businessDataStr");
|
||||
// if (null != seeyonData){
|
||||
// /**
|
||||
// * 流程发起 保存/更新单据 要全部数据
|
||||
// * 流程撤销 只更新状态,传单号和状态就好了
|
||||
// * 流程终止 只更新状态,传单号和状态就好了
|
||||
// * 流程结束 更新状态 并上传附件
|
||||
// */
|
||||
// JSONObject formmainData = seeyonData.getJSONObject(formmainTableName);
|
||||
// JSONArray forsonData = seeyonData.getJSONArray(forsonTableName);
|
||||
// String res = "";
|
||||
// if (DjlxEnum.TRAVEL.type.equals(djlx)) {
|
||||
// //差旅报销 travel
|
||||
// res = travel(headers,eventType,summaryId,grpDataSourceCode,formmainData,forsonData);
|
||||
// }else if(DjlxEnum.EXPENSE.type.equals(djlx)){
|
||||
// //费用报销 expense
|
||||
// res = expense(headers,eventType,summaryId,grpDataSourceCode, formmainData, forsonData);
|
||||
// }else if (DjlxEnum.LABOR.type.equals(djlx)){
|
||||
// //劳务费 labor
|
||||
// }
|
||||
// if (StrUtil.isNotEmpty(res)){
|
||||
// entity.setBodys(res);
|
||||
// return entity;
|
||||
// }
|
||||
// }
|
||||
if (StrUtil.isNotEmpty(res)){
|
||||
entity.setBodys(res);
|
||||
return entity;
|
||||
}
|
||||
}catch (Exception ex ){
|
||||
logger.error("保存报销单之前组装参数出错",ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存方法前,先调这个方法 组装参数
|
||||
* 插件方式执行用这个方法
|
||||
*
|
||||
* @param jsonObject
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public String saveExpensePrePlugin(JSONObject jsonObject) {
|
||||
if (null != jsonObject){
|
||||
JSONObject jsonStr = jsonObject.getJSONObject("jsonStr");
|
||||
JSONObject bodyObj = jsonStr.getJSONObject("businessDataStr");
|
||||
Map<String, String> headers = JSON.parseObject(jsonObject.getString("headers"), new HashMap<String, String>().getClass());
|
||||
String dataSourceCode = jsonObject.getString("apiDataSourceCode");
|
||||
String res = oerValuOf(jsonStr, headers, dataSourceCode);
|
||||
return res;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 组装参数
|
||||
* @param jsonStr 请求体参数
|
||||
* @param headers 请求头参数
|
||||
* @param dataSourceCode 数据源编码
|
||||
* @return
|
||||
*/
|
||||
private String oerValuOf(JSONObject jsonStr,Map<String, String> headers,String dataSourceCode){
|
||||
if (null != jsonStr && null != headers && !headers.isEmpty()){
|
||||
String formmainTableName = headers.get("formmainTableName");
|
||||
String forsonTableName = headers.get("forsonTableName");
|
||||
String djlx = headers.get("djlx");
|
||||
JSONObject bodyObj = JSONObject.parseObject(bodys);
|
||||
//事件类型
|
||||
String eventType = bodyObj.getString("eventType");
|
||||
String eventType = jsonStr.getString("eventType");
|
||||
//summaryId
|
||||
String summaryId = bodyObj.getString("summaryId");
|
||||
JSONObject seeyonData = bodyObj.getJSONObject("businessDataStr");
|
||||
String summaryId = jsonStr.getString("summaryId");
|
||||
JSONObject seeyonData = jsonStr.getJSONObject("businessDataStr");
|
||||
if (null != seeyonData){
|
||||
/**
|
||||
* 流程发起 保存/更新单据 要全部数据
|
||||
|
@ -95,24 +169,18 @@ public class OerDjmlExtServiceImpl implements IOerDjmlExtService {
|
|||
String res = "";
|
||||
if (DjlxEnum.TRAVEL.type.equals(djlx)) {
|
||||
//差旅报销 travel
|
||||
res = travel(headers,eventType,summaryId,grpDataSourceCode,formmainData,forsonData);
|
||||
res = travel(headers,eventType,summaryId,dataSourceCode,formmainData,forsonData);
|
||||
}else if(DjlxEnum.EXPENSE.type.equals(djlx)){
|
||||
//费用报销 expense
|
||||
res = expense(headers,eventType,summaryId,grpDataSourceCode, formmainData, forsonData);
|
||||
res = expense(headers,eventType,summaryId,dataSourceCode, formmainData, forsonData);
|
||||
}else if (DjlxEnum.LABOR.type.equals(djlx)){
|
||||
//劳务费 labor
|
||||
}
|
||||
if (StrUtil.isNotEmpty(res)){
|
||||
entity.setBodys(res);
|
||||
return entity;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
}catch (Exception ex ){
|
||||
logger.error("保存报销单之前组装参数出错",ex);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 费用报销单
|
||||
* @param headers 请求头
|
||||
|
|
Loading…
Reference in New Issue