parent
1191470f6e
commit
22d2759d1f
|
|
@ -27,6 +27,7 @@ import org.apache.http.util.EntityUtils;
|
|||
import shkd.sys.sys.mservice.ApiService;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.math.BigDecimal;
|
||||
import java.net.URI;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
|
@ -46,6 +47,8 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
|
|||
private static final Log logger = LogFactory.getLog(tsgxApiMappingBillPlugin.class);
|
||||
// 日期格式化器
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
|
||||
|
||||
String sourcebillnumber = "";
|
||||
@Override
|
||||
public void registerListener(EventObject e) {
|
||||
Toolbar tbmain = this.getView().getControl("tbmain");
|
||||
|
|
@ -76,7 +79,10 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
|
|||
dzhdqFilter=dzhdqFilter.and(zdyqFilter);
|
||||
}
|
||||
logger.info("dzhdqFilter:"+dzhdqFilter);
|
||||
DynamicObject[] bei_elecreceiptids = BusinessDataServiceHelper.load("bei_elecreceipt", "id", dzhdqFilter.toArray());
|
||||
DynamicObject shkd_sourcebill = shkd_apimapping.getDynamicObject("shkd_sourcebill");
|
||||
sourcebillnumber = shkd_sourcebill.getString("number");
|
||||
|
||||
DynamicObject[] bei_elecreceiptids = BusinessDataServiceHelper.load(sourcebillnumber, "id", dzhdqFilter.toArray());
|
||||
logger.info("符合推送条件数据有:{}条", bei_elecreceiptids.length);
|
||||
|
||||
String shkd_url = shkd_apimapping.getString("shkd_url");
|
||||
|
|
@ -88,7 +94,7 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
|
|||
DynamicObjectCollection shkd_mapping = shkd_apimapping.getDynamicObjectCollection("shkd_mapping");
|
||||
|
||||
for (DynamicObject bei_elecreceiptid : bei_elecreceiptids) {
|
||||
DynamicObject bei_elecreceipt = BusinessDataServiceHelper.loadSingle(bei_elecreceiptid.getLong("id"), "bei_elecreceipt");
|
||||
DynamicObject bei_elecreceipt = BusinessDataServiceHelper.loadSingle(bei_elecreceiptid.getLong("id"), sourcebillnumber);
|
||||
String saveRequestBody=getJSON(bei_elecreceipt,shkd_mapping);//请求json
|
||||
logger.info("单据"+bei_elecreceipt.getString("billno")+"推送json:"+saveRequestBody);
|
||||
Map<String, Object> resultMap = new HashMap<>();
|
||||
|
|
@ -314,13 +320,16 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
|
|||
}else {
|
||||
IFormView viewByDynamicObj = ApiService.createViewByDynamicObj(bei_elecreceipt);
|
||||
List<String> errMsgList = new ArrayList<>();
|
||||
DynamicObjectCollection receipts = QueryServiceHelper.query("bei_elecreceipt", "id,bank," +
|
||||
DynamicObjectCollection receipts = QueryServiceHelper.query(sourcebillnumber, "id,bank," +
|
||||
"fileflag,filepath,biztype,bankcheckflag,fileserverurl,tcpurl,uploadfilename,username,password," +
|
||||
"bank.bank_cate bankcate", new QFilter[]{new QFilter("id", QCP.equals, bei_elecreceipt.getPkValue())});
|
||||
value = ApiService.getPdfUrl(viewByDynamicObj.getPageId(), receipts, errMsgList);
|
||||
logger.info("单据编号:"+bei_elecreceipt.getString("billno")+"对应url:"+value);
|
||||
}
|
||||
break;
|
||||
case "特殊处理":
|
||||
value=tscl(bei_elecreceipt,shkd_jsontartype,shkd_djzdms,shkd_mrz);
|
||||
break;
|
||||
case "默认值":
|
||||
value=shkd_mrz;
|
||||
break;
|
||||
|
|
@ -332,6 +341,24 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
|
|||
return value;
|
||||
}
|
||||
|
||||
private String tscl(DynamicObject bei_elecreceipt, String shkd_jsontartype, String shkd_djzdms, String shkd_mrz) {
|
||||
String value = null;
|
||||
switch (shkd_djzdms){
|
||||
case "incomeOrExpenditure":
|
||||
BigDecimal debitamount = bei_elecreceipt.getBigDecimal("debitamount");//付款金额
|
||||
if (debitamount.compareTo(BigDecimal.ZERO)>0){
|
||||
value="1";
|
||||
}else {
|
||||
value="2";
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* 根据字段类型或默认值获取字段
|
||||
* */
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ import shkd.sys.sys.mservice.ApiService;
|
|||
import shkd.sys.sys.utils.EmptyUtil;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.math.BigDecimal;
|
||||
import java.net.URI;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
|
@ -46,6 +47,7 @@ public class SharePushTaskPlugin extends AbstractTask {
|
|||
private static final Log logger = LogFactory.getLog(SharePushTaskPlugin.class);
|
||||
// 日期格式化器
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
|
||||
String sourcebillnumber = "";
|
||||
@Override
|
||||
public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException {
|
||||
//获取司库电子回单推送共享系统的对应映射
|
||||
|
|
@ -72,7 +74,10 @@ public class SharePushTaskPlugin extends AbstractTask {
|
|||
dzhdqFilter=dzhdqFilter.and(zdyqFilter);
|
||||
}
|
||||
logger.info("dzhdqFilter:"+dzhdqFilter);
|
||||
DynamicObject[] bei_elecreceiptids = BusinessDataServiceHelper.load("bei_elecreceipt", "id", dzhdqFilter.toArray());
|
||||
DynamicObject shkd_sourcebill = shkd_apimapping.getDynamicObject("shkd_sourcebill");
|
||||
sourcebillnumber = shkd_sourcebill.getString("number");
|
||||
|
||||
DynamicObject[] bei_elecreceiptids = BusinessDataServiceHelper.load(sourcebillnumber, "id", dzhdqFilter.toArray());
|
||||
logger.info("符合推送条件数据有:{}条", bei_elecreceiptids.length);
|
||||
|
||||
String shkd_url = shkd_apimapping.getString("shkd_url");
|
||||
|
|
@ -84,7 +89,7 @@ public class SharePushTaskPlugin extends AbstractTask {
|
|||
DynamicObjectCollection shkd_mapping = shkd_apimapping.getDynamicObjectCollection("shkd_mapping");
|
||||
|
||||
for (DynamicObject bei_elecreceiptid : bei_elecreceiptids) {
|
||||
DynamicObject bei_elecreceipt = BusinessDataServiceHelper.loadSingle(bei_elecreceiptid.getLong("id"), "bei_elecreceipt");
|
||||
DynamicObject bei_elecreceipt = BusinessDataServiceHelper.loadSingle(bei_elecreceiptid.getLong("id"), sourcebillnumber);
|
||||
String saveRequestBody=getJSON(bei_elecreceipt,shkd_mapping);//请求json
|
||||
logger.info("单据"+bei_elecreceipt.getString("billno")+"推送json:"+saveRequestBody);
|
||||
Map<String, Object> resultMap = new HashMap<>();
|
||||
|
|
@ -309,13 +314,15 @@ public class SharePushTaskPlugin extends AbstractTask {
|
|||
}else {
|
||||
IFormView viewByDynamicObj = ApiService.createViewByDynamicObj(bei_elecreceipt);
|
||||
List<String> errMsgList = new ArrayList<>();
|
||||
DynamicObjectCollection receipts = QueryServiceHelper.query("bei_elecreceipt", "id,bank," +
|
||||
DynamicObjectCollection receipts = QueryServiceHelper.query(sourcebillnumber, "id,bank," +
|
||||
"fileflag,filepath,biztype,bankcheckflag,fileserverurl,tcpurl,uploadfilename,username,password," +
|
||||
"bank.bank_cate bankcate", new QFilter[]{new QFilter("id", QCP.equals, bei_elecreceipt.getPkValue())});
|
||||
value = ApiService.getPdfUrl(viewByDynamicObj.getPageId(), receipts, errMsgList);
|
||||
logger.info("单据编号:"+bei_elecreceipt.getString("billno")+"对应url:"+value);
|
||||
}
|
||||
break;
|
||||
case "特殊处理":
|
||||
value=tscl(bei_elecreceipt,shkd_jsontartype,shkd_djzdms,shkd_mrz);
|
||||
case "默认值":
|
||||
value=shkd_mrz;
|
||||
break;
|
||||
|
|
@ -327,6 +334,22 @@ public class SharePushTaskPlugin extends AbstractTask {
|
|||
return value;
|
||||
}
|
||||
|
||||
private String tscl(DynamicObject bei_elecreceipt, String shkd_jsontartype, String shkd_djzdms, String shkd_mrz) {
|
||||
String value = null;
|
||||
switch (shkd_djzdms){
|
||||
case "incomeOrExpenditure":
|
||||
BigDecimal debitamount = bei_elecreceipt.getBigDecimal("debitamount");//付款金额
|
||||
if (debitamount.compareTo(BigDecimal.ZERO)>0){
|
||||
value="1";
|
||||
}else {
|
||||
value="2";
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return value;
|
||||
}
|
||||
/*
|
||||
* 根据字段类型或默认值获取字段
|
||||
* */
|
||||
|
|
|
|||
Loading…
Reference in New Issue