差旅报销单

2024年8月15日 17:27:26
This commit is contained in:
xiang2lin 2024-08-15 17:27:36 +08:00
parent 58f18f6ac1
commit 47d8ae286f
3 changed files with 70 additions and 32 deletions

View File

@ -16,6 +16,7 @@ public class OerDjjsfsEntity extends BaseEntity {
private String kjnd;//会计年度
private String djlxId;
private String mlId;
private String bnxid;
private String xh;//序号
private String jsfsdm;//结算方式编码
private String jsfsmc;//结算方式名称
@ -228,4 +229,12 @@ public class OerDjjsfsEntity extends BaseEntity {
public void setSkrbz(String skrbz) {
this.skrbz = skrbz;
}
public String getBnxid() {
return bnxid;
}
public void setBnxid(String bnxid) {
this.bnxid = bnxid;
}
}

View File

@ -1,5 +1,8 @@
package com.hzya.frame.grpU8.nxproof.oerdjml.entity;
import com.hzya.frame.grpU8.nxproof.gbizbsyrec.entity.GbiZbsyrecEntity;
import com.hzya.frame.grpU8.nxproof.oerdjnr.entity.OerDjnrEntity;
import com.hzya.frame.grpU8.nxproof.oeryszb.entity.OerYszbEntity;
import com.hzya.frame.web.entity.BaseEntity;
import lombok.*;
@ -69,9 +72,9 @@ public class OerDjmlEntity extends BaseEntity {
private String ssrid;
//送审人
private String ssr;
private List<GbiZbsyrecAllEntity> gbiZbsyrecAllEntitylist;
private List<OerDjnrAllEntity> oerDjnrAllEntityList;
private List<OerYszbAllEntity> oerYszbAllEntityList;
private List<GbiZbsyrecEntity> gbiZbsyrecEntitylist;
private List<OerDjnrEntity> oerDjnrEntityList;
private List<OerYszbEntity> oerYszbEntityList;
@ -347,28 +350,28 @@ public class OerDjmlEntity extends BaseEntity {
this.lclb = lclb;
}
public List<GbiZbsyrecAllEntity> getGbiZbsyrecAllEntitylist() {
return gbiZbsyrecAllEntitylist;
public List<GbiZbsyrecEntity> getGbiZbsyrecEntitylist() {
return gbiZbsyrecEntitylist;
}
public void setGbiZbsyrecAllEntitylist(List<GbiZbsyrecAllEntity> gbiZbsyrecAllEntitylist) {
this.gbiZbsyrecAllEntitylist = gbiZbsyrecAllEntitylist;
public void setGbiZbsyrecEntitylist(List<GbiZbsyrecEntity> gbiZbsyrecEntitylist) {
this.gbiZbsyrecEntitylist = gbiZbsyrecEntitylist;
}
public List<OerDjnrAllEntity> getOerDjnrAllEntityList() {
return oerDjnrAllEntityList;
public List<OerDjnrEntity> getOerDjnrEntityList() {
return oerDjnrEntityList;
}
public void setOerDjnrAllEntityList(List<OerDjnrAllEntity> oerDjnrAllEntityList) {
this.oerDjnrAllEntityList = oerDjnrAllEntityList;
public void setOerDjnrEntityList(List<OerDjnrEntity> oerDjnrEntityList) {
this.oerDjnrEntityList = oerDjnrEntityList;
}
public List<OerYszbAllEntity> getOerYszbAllEntityList() {
return oerYszbAllEntityList;
public List<OerYszbEntity> getOerYszbEntityList() {
return oerYszbEntityList;
}
public void setOerYszbAllEntityList(List<OerYszbAllEntity> oerYszbAllEntityList) {
this.oerYszbAllEntityList = oerYszbAllEntityList;
public void setOerYszbEntityList(List<OerYszbEntity> oerYszbEntityList) {
this.oerYszbEntityList = oerYszbEntityList;
}
public String getXmdm() {

View File

@ -34,6 +34,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@ -78,7 +79,7 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
if(StrUtil.isEmpty(jsonObject.getString("djdate"))){
throw new BaseSystemException("单据日期不能为空请排查参数djdate");
}
logger.info("国子系统传递过来的发票号为:------>"+jsonObject.getString("fph"));
/* logger.info("国子系统传递过来的发票号为:------>"+jsonObject.getString("fph"));
if(StrUtil.isEmpty(jsonObject.getString("fph")) || "".equals(jsonObject.getString("fph"))){
jsonObject.put("fph","");
}else{
@ -97,7 +98,7 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
stringBuffer.append(jsonObject.getString("zcmc"));
}
jsonObject.put("zy",stringBuffer);
}
}*/
logger.info("主表摘要为:{}",jsonObject.getString("zy"));
OerDjmlEntity oerDjmlEntity=new OerDjmlEntity();
oerDjmlEntity.setGsdm(gsdm);
@ -712,7 +713,8 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
String forsonTableName = headers.get("forsonTableName");
String djlxid = headers.get("djlxid");
String flowcode = headers.get("flowcode");
JSONObject seeyonData = JSONObject.parseObject(bodys);
JSONObject bodyObj = JSONObject.parseObject(bodys);
JSONObject seeyonData = bodyObj.getJSONObject("businessDataStr");
if (null != seeyonData){
/**
* 流程发起 保存/更新单据 要全部数据
@ -731,7 +733,7 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
djml.setKjnd(forjsonData0.getString("field0082"));
djml.setDjlxId(djlxid);
djml.setZt("2");
djml.setCrerdm("");
djml.setCrerdm(formmainData.getString("field0107"));
djml.setCrermc("");
djml.setCrerdate(formmainData.getString("startDate"));
djml.setDjdate(formmainData.getString("field0002"));
@ -744,12 +746,12 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
djml.setZy( formmainData.getString("field0009"));
//部门代码
djml.setBmdm( formmainData.getString("field0006"));
djml.setBmdm( formmainData.getString("field0006"));
djml.setBmmc( formmainData.getString("field0006"));
//项目代码
djml.setXmdm(forjsonData0.getString("field0074"));
djml.setXmmc(forjsonData0.getString("field0075"));
//个人代码
djml.setGrdm("");
djml.setGrdm(formmainData.getString("field0108"));
djml.setGrmc("");
//经济代码
djml.setJjdm("");
@ -758,22 +760,25 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
djml.setYhzh(forjsonData0.getString("field0079"));
djml.setKhyh(forjsonData0.getString("field0078"));
//当前审核节点下个审核节点 ,不在grp审批是不是不用填了
djml.setCurshjd("");
djml.setNextshjd("");
djml.setCurshjd("-9");
djml.setNextshjd("999");
djml.setFlowcode(flowcode);
djml.setJsfs(spliceStr(forjsonData0.getString("field0095"),forjsonData0.getString("field0094")));
//电话oa上没有
djml.setTel("");
djml.setTel(formmainData.getString("field0110"));
djml.setClf_ccr(formmainData.getString("field0010"));
//送审日期
djml.setSsrq( DateUtil.format(formmainData.getDate("startDate"),"yyyyMMddHHmmssSSS"));
djml.setSsrid("");
djml.setSsr("");
//明细
//报销明细
List<OerDjnrEntity> djnrList = new ArrayList<>();
//结算方式
List<OerDjjsfsEntity> jsfsList = new ArrayList<>();
//预算指标
List<OerYszbEntity> yszbList = new ArrayList<>();
//指标记录
int xh = 1;
for (int i=0; i<forsonData.size();i++) {
JSONObject forson = forsonData.getJSONObject(i);
@ -786,8 +791,7 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
djnr.setGsdm(gsdm);
djnr.setKjnd(kjnd);
djnr.setDjlxId(djlxid);
//表内项id 不知道存什么
djnr.setBnxId("");
djnr.setBnxId(headers.get("bxmx_bnxid"));
djnr.setJe(je);
djnr.setBmdm(forson.getString("field0088"));
djnr.setBmmc(forson.getString("field0087"));
@ -815,10 +819,11 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
djnr.setClf_jtf(forson.getString("field0024"));
djnr.setClf_zsbz(forson.getString("field0077"));
djnr.setClf_zsf(forson.getString("field0025"));
//伙食补助是 标准金额
djnr.setCLF_HSBZ(forson.getString("field0026"));
//oa没有要加
djnr.setClf_hsf("");
djnr.setClf_jtbz("");
//伙食费是 实际报销的金额
djnr.setClf_hsf(forson.getString("field0026"));
djnr.setClf_jtbz(forson.getString("field0024"));
djnr.setClf_qtf(forson.getString("field0028"));
djnr.setFjs(djml.getFjs());
djnrList.add(djnr);
@ -827,6 +832,7 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
jsfs.setGsdm(gsdm);
jsfs.setKjnd(kjnd);
jsfs.setDjlxId(djlxid);
jsfs.setBnxid(headers.get("jsfs_bnxid"));
jsfs.setXh(String.valueOf(xh));
jsfs.setJsfsdm(forson.getString("field0095"));
jsfs.setJsfsmc(forson.getString("field0094"));
@ -843,14 +849,34 @@ public class OerDjmlServiceImpl implements IOerDjmlService {
//支付方式为个人公务卡时 可以选择 经办人负责人其他
jsfs.setRytype("");
//oa没有
jsfs.setYt(forson.getString(""));
jsfs.setYt(forson.getString("field0030"));
jsfsList.add(jsfs);
//预算指标
OerYszbEntity yszb = new OerYszbEntity();
BeanUtil.copyProperties(djnr,yszb);
yszb.setBnxId(headers.get("yszb_bnxid"));
yszb.setZbdm(forson.getString("field0085"));
yszb.setZy(forson.getString("field0111"));
yszb.setKmdm(forson.getString("field0089"));
yszb.setKmmc(forson.getString("field0066"));
yszbList.add(yszb);
xh++;
}
logger.info("报销单主表:{}",JSONObject.toJSONString(djml));
logger.info("报销单明细表:{}",JSONObject.toJSONString(djnrList));
logger.info("报销单结算方式:{}",JSONObject.toJSONString(jsfsList));
System.out.println("11");
logger.info("报销单预算指标:{}",JSONObject.toJSONString(yszbList));
djml.setOerDjnrEntityList(djnrList);
djml.setOerYszbEntityList(yszbList);
String djmlStr = JSONObject.toJSONString(djml);
JSONObject param = new JSONObject(new LinkedHashMap<>());
param = JSONObject.parseObject(djmlStr);
param.put("lclb",eventType);
param.put("oerDjnrEntityList",djnrList);
param.put("oerYszbEntityList",yszbList);
param.put("oerDjjsfsEntityList",jsfsList);
//param.put("gbiZbsyrecEntitylist",null);
logger.info("差旅报销单报文:{}",param.toString());
}
}
}catch (Exception ex ){