更新发票

This commit is contained in:
liuzhao 2018-09-26 09:43:11 +08:00
parent f244b712d9
commit 803a16481f
3 changed files with 23 additions and 249 deletions

View File

@ -19,7 +19,6 @@
{"true","","Button","详情","详情","viewAndEdit()","","","","btn_icon_detail",""},
{"true","","Button","查询","查询","selectInvoice()","","","","",""},
{"true","","Button","批量下载","批量下载","lotdown()","","","","btn_icon_transfer",""},
{"true","","Button","打印发票","打印发票","printInvoice()","","","","",""},
{"true","","Button","删除","删除","if(confirm('确实要删除吗?'))as_delete(0)","","","","btn_icon_delete",""},
};
%><%@include file="/Frame/resources/include/ui/include_list.jspf"%>
@ -99,31 +98,7 @@
}
AsControl.OpenView(sUrl,'invoice_confirm_id=' +sPara ,'_self','');
}
function printInvoice(){
var sid = getItemValueArray(0,"sid");
if(typeof(sid) == "undefined" || sid.length == 0 )
{
alert("请选择查询数据!");
return;
}
//alert(sid);
var sids = "";
for(var i = 0;i < sid.length; i++){
sids += sid[i] +"@";
}
sids = sids.substr(0,sids.length-1);
//alert(sids);
spara = "sid="+sids+",CurUserID=<%=CurUser.getUserID()%>";
var returnValue = AsControl.RunJavaMethodTrans("com.tenwa.apzl.invoicemanager.rentplaninvoice.rentPlanInvoiceManager","printInvoice",spara);
alert(returnValue);
reloadSelf();
}
</script>
<%@ include file="/Frame/resources/include/include_end.jspf"%>

View File

@ -3754,5 +3754,27 @@
</managerProperties>
</manager>
</class>
<class name="LI_INVOICE_PRINT_RESULT" label="" keyAttributes="ID">
<attributes>
<attribute name="ID" label="标识" type="STRING" length="32"/>
<attribute name="fpdm" label="发票代码" type="STRING" length="8"/>
<attribute name="fphm" label="发票号码" type="STRING" length="12"/>
<attribute name="returncode" label="返回代码" type="STRING" length="50"/>
<attribute name="returnmsg" label="返回信息" type="STRING" length="11"/>
<attribute name="INPUTUSERID" label="INPUTUSERID" type="STRING" length="32"/>
<attribute name="INPUTORGID" label="INPUTORGID" type="STRING" length="32"/>
<attribute name="INPUTTIME" label="INPUTTIME" type="STRING" length="32"/>
<attribute name="UPDATEUSERID" label="UPDATEUSERID" type="STRING" length="32"/>
<attribute name="UPDATEORGID" label="UPDATEORGID" type="STRING" length="32"/>
<attribute name="UPDATETIME" label="UPDATETIME" type="STRING" length="32"/>
<attribute name="invoice_type" label="invoice_type" type="STRING" length="32"/>
</attributes>
<manager>
<managerProperties>
<property name="table" value="li_invoice_print_result" />
<property name="createKey" value="true" />
</managerProperties>
</manager>
</class>
</package>
</jbo>

View File

@ -871,228 +871,5 @@ public class rentPlanInvoiceManager extends BaseTable {
System.out.println("[FAIL]=>>>" + result.getMsg());
}
}
/**
* 打印发票
* @return
*/
public String printInvoice(JBOTransaction tx){
Configure config = Configure.getInstance();
String appId = "";
try {
//获取配置文件中appid
appId = config.getConfigure("INVOICE_APPID");
} catch (Exception e) {
e.printStackTrace();
return "a3web->[INVOICE_LOCAL_PATH]不存在";
}
String[] sids = this.getSid().split("@");
String sid = "";
String fpdm = "";
String fphm = "";
String invoice_confirm_id = "";
for (int i = 0; i < sids.length; i++) {
sid = sids[i];
BizObject invoiceResult;
try {
invoiceResult = JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LI_INVOICE_RESULT", "sid=:sid").setParameter("sid", sid).getSingleResult(false);
fpdm = invoiceResult.getAttribute("fpdm").toString();
fphm = invoiceResult.getAttribute("fphm").toString();
} catch (JBOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
InvoiceRequestBase invoiceRequestBase = new InvoiceRequestBase();
InvoiceRequestHead invoiceRequestHead = new InvoiceRequestHead();
InvoiceRequestBody invoiceRequestBody = new InvoiceRequestBody();
InvoiceRequestInput invoiceRequestInput = new InvoiceRequestInput();
invoiceRequestHead.setAppid(appId);
invoiceRequestHead.setSid(sid);
invoiceRequestInput.setFplxdm("007");
invoiceRequestInput.setFpdm(fpdm);
invoiceRequestInput.setFphm(fphm);
invoiceRequestInput.setDylx("9");
invoiceRequestInput.setDyfs("1");
invoiceRequestInput.setDyjmc("");
invoiceRequestBody.setYylxdm("1");
invoiceRequestBody.setInput(invoiceRequestInput);
invoiceRequestBase.setHead(invoiceRequestHead);
invoiceRequestBase.setBody(invoiceRequestBody);
invoiceRequestBase.setComment("发票打印");
invoiceRequestBase.setId("FPDY");
invoiceRequestBase.setVersion("1.0");
String xml = JaxbUtil.convertToXml(invoiceRequestBase);
System.out.println(xml);
ResultPojo result = doPost(xml);
// 根据sid拿到LI_INVOICE_CONFIRM表的id(租金发票表的id和此表id都保存在LI_INVOICE_CONFIRM_Detail表中)
BizObjectManager confirmManager;
try {
confirmManager = JBOFactory.getBizObjectManager(LI_INVOICE_CONFIRM.CLASS_NAME);
BizObject confirm = confirmManager.createQuery("sid=:sid").setParameter("sid", sid).getSingleResult(false);
invoice_confirm_id = confirm.getAttribute("id").toString();
} catch (JBOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String id = UUID.randomUUID().toString().replaceAll("-", "");
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
String returncode = responseBase.getBody().getReturncode();
String returnmsg = responseBase.getBody().getReturnmsg();
/*InvoiceRequestGroup invoiceRequestGroup = new InvoiceRequestGroup();
List<InvoiceRequestGroup> invoiceRequestGroupList = responseBase.getBody().getOutput().getDyfpfs().getGroupList();
for (InvoiceRequestGroup invoiceRequestGroup2 : invoiceRequestGroupList) {
fpdm =invoiceRequestGroup2.getFpdm().toString();
fphm = invoiceRequestGroup2.getFphm();
}*/
/*String pdfurl = "";
String localFile = "";
String path = "";
String localF = "";
BizObjectManager confirmResultManager = JBOFactory.getBizObjectManager(LI_INVOICE_RESULT.CLASS_NAME);
BizObject confirmResult = confirmResultManager
.createQuery("sid=:sid").setParameter("sid", sid)
.getSingleResult(false);
if (confirmResult != null) {
localF = confirmResult.getAttribute("localFile").toString();
}*/
/*if ("0".equals(returncode)) {
pdfurl = responseBase.getBody().getPdfurl();
if (confirmResult == null || "".equals(localF)
|| localF == null) {
SimpleDateFormat dateFormat = new SimpleDateFormat(
"YYYYMMdd");
String ydm = dateFormat.format(new Date());
path = File.separator + ydm.substring(0, 4)
+ File.separator + ydm.substring(4, 6)
+ File.separator + ydm.substring(6, 8);
path = path
+ File.separator
+ PasswordGenerateUtil
.getRandom(
50,
PasswordGenerateUtil.TYPE.LETTER_CAPITAL)
+ ".pdf";
localFile = INVOICE_LOCAL_PATH + path;
try {
DownloadPdfUtil.go(pdfurl, localFile);
path = SecurityUtil.encrypt(path, "invoice");
} catch (Exception e) {
e.printStackTrace();
return "下载PDF失败";
}
}
}*/
/*
if (confirmResult == null) {
BizObject confirmResultNew = confirmResultManager
.newObject();
confirmResultNew.setAttributeValue("ID", id);
confirmResultNew.setAttributeValue("sid", sid);
confirmResultNew.setAttributeValue("fplxdm", fplxdm);
confirmResultNew.setAttributeValue("fpdm", fpdm);
confirmResultNew.setAttributeValue("fphm", fphm);
confirmResultNew.setAttributeValue("kprq", kprq);
confirmResultNew.setAttributeValue("hjje", hjje);
confirmResultNew.setAttributeValue("skm", skm);
confirmResultNew.setAttributeValue("jym", jym);
confirmResultNew.setAttributeValue("pdfurl", pdfurl);
confirmResultNew.setAttributeValue("localFile", path);
confirmResultNew
.setAttributeValue("returncode", returncode);
confirmResultNew.setAttributeValue("returnmsg", returnmsg);
confirmResultManager.saveObject(confirmResultNew);
} else {
String slocalFile = confirmResult.getAttribute("localFile")
.toString();
if ("".equals(slocalFile)) {
confirmResultManager
.createQuery(
"update o set fplxdm=:fplxdm,fpdm=:fpdm,fphm=:fphm,kprq=:kprq,hjje=:hjje,skm=:skm,jym=:jym,pdfurl=:pdfurl,localFile=:localFile,returncode=:returncode,returnmsg=:returnmsg where sid=:sid ")
.setParameter("sid", sid)
.setParameter("fplxdm", fplxdm)
.setParameter("fpdm", fpdm)
.setParameter("fphm", fphm)
.setParameter("kprq", kprq)
.setParameter("hjje", hjje)
.setParameter("skm", skm)
.setParameter("jym", jym)
.setParameter("returncode", returncode)
.setParameter("returnmsg", returnmsg)
.setParameter("pdfurl", pdfurl)
.setParameter("localFile", path)
.executeUpdate();
} else {
confirmResultManager
.createQuery(
"update o set fplxdm=:fplxdm,fpdm=:fpdm,fphm=:fphm,kprq=:kprq,hjje=:hjje,skm=:skm,jym=:jym,returncode=:returncode,returnmsg=:returnmsg where sid=:sid ")
.setParameter("sid", sid)
.setParameter("fplxdm", fplxdm)
.setParameter("fpdm", fpdm)
.setParameter("fphm", fphm)
.setParameter("kprq", kprq)
.setParameter("hjje", hjje)
.setParameter("skm", skm)
.setParameter("jym", jym)
.setParameter("returncode", returncode)
.setParameter("returnmsg", returnmsg)
.executeUpdate();
}
}*/
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
if ("0".equals(returncode)) {
// System.out.println("[OK][SUCCESS]");
// 修改租金发票信息表的状态
BizObjectManager confirmDetailManager;
try {
confirmDetailManager = JBOFactory.getBizObjectManager(LI_INVOICE_CONFIRM_DETAIL.CLASS_NAME);
BizObject confirmDetail = confirmDetailManager
.createQuery(
"invoice_confirm_id=:invoice_confirm_id")
.setParameter("invoice_confirm_id",
invoice_confirm_id).getSingleResult(false);
String invoiceId = confirmDetail.getAttribute("invoice_id").toString();
BizObjectManager invoiceRentManager = JBOFactory.getBizObjectManager(LI_RENT_INVOICE_INFO.CLASS_NAME, tx);
invoiceRentManager.createQuery("update o set INVOICE_STATUS=:invoicestatus where ID=:id ")
.setParameter("id", invoiceId)
.setParameter("invoicestatus", "5").executeUpdate();
// return "开票申请成功";
} catch (JBOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
}
return "打印成功!";
}
}