apzl_leasing/src_tenwa/com/tenwa/apzl/invoicemanager/rentplaninvoice/rentPlanInvoiceDirectManager.java
2021-01-12 16:18:49 +08:00

1798 lines
73 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.tenwa.apzl.invoicemanager.rentplaninvoice;
import java.io.File;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import org.apache.commons.lang.StringUtils;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestTemplate;
import jbo.app.tenwa.calc.LC_RENT_INCOME;
import jbo.app.tenwa.calc.LC_RENT_PLAN;
import jbo.app.tenwa.calc.LI_INVOICE_CONFIRM;
import jbo.app.tenwa.calc.LI_INVOICE_CONFIRM_DETAIL;
import jbo.app.tenwa.calc.LI_INVOICE_INVALID;
import jbo.app.tenwa.calc.LI_INVOICE_PRINT_RESULT;
import jbo.app.tenwa.calc.LI_INVOICE_RESULT;
import jbo.app.tenwa.calc.VI_INVOICE_RENT_INCOME_CONFIRM;
import jbo.app.tenwa.calc.VI_INVOICE_RENT_INCOME_CONFIRM_E;
import jbo.app.tenwa.calc.VI_INVOICE_RENT_PLAN_CONFIRM;
import jbo.app.tenwa.calc.VI_LI_INVOICE_OTHERS;
import jbo.app.tenwa.calc.VI_LI_INVOICE_RENT_DIRECT;
import jbo.app.tenwa.customer.CUSTOMER_FAMILY;
import jbo.app.tenwa.customer.CUSTOMER_PERSON;
import jbo.awe.USER_INFO;
import jbo.com.tenwa.entity.comm.invoice.LI_RENT_INVOICE_INFO;
import jbo.com.tenwa.entity.comm.own.OWN_ACCOUNT;
import jbo.com.tenwa.entity.comm.own.OWN_INFO;
import jbo.com.tenwa.lease.comm.LB_CONTRACT_INFO;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.are.jbo.BizObjectManager;
import com.amarsoft.are.jbo.JBOException;
import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.are.jbo.JBOTransaction;
import com.amarsoft.awe.Configure;
import com.amarsoft.awe.util.Transaction;
import com.tenwa.app.invoice.action.InvoiceRequest;
import com.tenwa.app.invoice.data.ResponseEnum;
import com.tenwa.app.invoice.pojo.ResultPojo;
import com.tenwa.app.invoice.request.InvoiceRequestBase;
import com.tenwa.app.invoice.request.InvoiceRequestBody;
import com.tenwa.app.invoice.request.InvoiceRequestGroup;
import com.tenwa.app.invoice.request.InvoiceRequestHead;
import com.tenwa.app.invoice.request.InvoiceRequestInput;
import com.tenwa.app.invoice.utils.DownloadPdfUtil;
import com.tenwa.app.invoice.utils.JaxbUtil;
import com.tenwa.app.invoice.utils.MathUtil;
import com.tenwa.app.invoice.utils.Num2ChineseUtil;
import com.tenwa.app.invoice.utils.PasswordGenerateUtil;
import com.tenwa.app.invoice.utils.ResultUtil;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
import com.tenwa.flow.action.comm.BaseTable;
import com.tenwa.util.SecurityUtil;
public class rentPlanInvoiceDirectManager extends BaseTable{
private String planIds;
private String ids;
private String moneyTypes;
private String sid;
private String newSids;
private String userid;
public String getUserid() {
return userid;
}
public void setUserid(String userid) {
this.userid = userid;
}
public String getNewSids() {
return newSids;
}
public void setNewSids(String newSids) {
this.newSids = newSids;
}
public String getPlanIds() {
return planIds;
}
public void setPlanIds(String planIds) {
this.planIds = planIds;
}
public String getIds() {
return ids;
}
public void setIds(String ids) {
this.ids = ids;
}
public String getMoneyTypes() {
return moneyTypes;
}
public void setMoneyTypes(String moneyTypes) {
this.moneyTypes = moneyTypes;
}
public String getSid() {
return sid;
}
public void setSid(String sid) {
this.sid = sid;
}
/**
* ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD>뿪Ʊ<EBBFAA><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--ֱ<><D6B1><><D6BD>
* @param tx
* @return
* @throws Exception
*/
public String ApplyRentInvoice(JBOTransaction tx) throws Exception{
BizObjectManager lriiManager = JBOFactory.getBizObjectManager(LI_RENT_INVOICE_INFO.CLASS_NAME);
BizObjectManager viInvoiceDirectRentManager = JBOFactory.getBizObjectManager(VI_LI_INVOICE_RENT_DIRECT.CLASS_NAME);
tx.join(lriiManager);
//tx.join(viInvoiceRentManager);
String[] planIds = this.getPlanIds().split("@");
String invoice_status = "1";
String bill_type = "special";//ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-רƱ
String invoice_money = "";
String tax_type = "";
String plan_id = "";
String PAYMENT_NUMBER = "";
String TAX_REG_CODE="";
String TAX_BANK="";
String TAX_ACC="";
String contract_id="";
String invoice_object= "direct_rent";//ֱ<><D6B1>
for(int i=0;i<planIds.length;i++){
String planId = planIds[i];
BizObject viInvoiceDirectRent = viInvoiceDirectRentManager.createQuery("plan_id=:plan_id").setParameter("plan_id", planId).getSingleResult(false);
String id=UUID.randomUUID().toString().replaceAll("-", "");
invoice_money = viInvoiceDirectRent.getAttribute("plan_money").toString();
plan_id = viInvoiceDirectRent.getAttribute("plan_id").toString();
PAYMENT_NUMBER = viInvoiceDirectRent.getAttribute("payment_number").toString();
TAX_REG_CODE = viInvoiceDirectRent.getAttribute("cert_id").toString();
TAX_BANK = viInvoiceDirectRent.getAttribute("bank_name").toString();
TAX_ACC = viInvoiceDirectRent.getAttribute("acc_number").toString();
contract_id = viInvoiceDirectRent.getAttribute("contract_id").toString();
tax_type = viInvoiceDirectRent.getAttribute("tax_types").toString();
BizObject lriiObject = lriiManager.createQuery("plan_id=:plan_id and tax_type=:tax_type").setParameter("plan_id", planId).setParameter("tax_type", tax_type).getSingleResult(false);
if(lriiObject!=null){
lriiManager.createQuery("update o set invoice_status='1' where plan_id=:plan_id").setParameter("plan_id", planId).executeUpdate();
}else{
BizObject rentInvoiceInfo = lriiManager.newObject();
rentInvoiceInfo.setAttributeValue("id", id);
rentInvoiceInfo.setAttributeValue("invoice_status", invoice_status);
rentInvoiceInfo.setAttributeValue("bill_type", bill_type);
rentInvoiceInfo.setAttributeValue("invoice_money", invoice_money);
rentInvoiceInfo.setAttributeValue("invoice_object", invoice_object);
if("".equals(tax_type) || tax_type==null){
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>";
}else{
rentInvoiceInfo.setAttributeValue("tax_type", tax_type);
}
rentInvoiceInfo.setAttributeValue("TEMPORARY_NOINVOICE", "0.00");
rentInvoiceInfo.setAttributeValue("NOINVOICE", "0.00");
rentInvoiceInfo.setAttributeValue("plan_id", plan_id);
rentInvoiceInfo.setAttributeValue("PAYMENT_NUMBER", PAYMENT_NUMBER);
rentInvoiceInfo.setAttributeValue("TAX_REG_CODE", TAX_REG_CODE);// <20><>˰<EFBFBD><CBB0>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
rentInvoiceInfo.setAttributeValue("TAX_BANK", TAX_BANK);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
rentInvoiceInfo.setAttributeValue("TAX_ACC", TAX_ACC);//<2F><><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>
rentInvoiceInfo.setAttributeValue("contract_id", contract_id);
rentInvoiceInfo = this.initTabeUserInfo(rentInvoiceInfo);
lriiManager.saveObject(rentInvoiceInfo);
}
}
return "<EFBFBD><EFBFBD><EFBFBD>뿪Ʊ<EFBFBD>ɹ<EFBFBD>";
}
/**
* ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD>뿪Ʊ<EBBFAA><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--ֱ<><D6B1>-<2D><><EFBFBD><EFBFBD>
* @param tx
* @return
* @throws Exception
*/
public String ApplyRentInvoiceE(JBOTransaction tx) throws Exception{
BizObjectManager lriiManager = JBOFactory.getBizObjectManager(LI_RENT_INVOICE_INFO.CLASS_NAME);
BizObjectManager viInvoiceDirectRentManager = JBOFactory.getBizObjectManager(VI_LI_INVOICE_RENT_DIRECT.CLASS_NAME);
tx.join(lriiManager);
//tx.join(viInvoiceRentManager);
String[] planIds = this.getPlanIds().split("@");
String invoice_status = "1";
String bill_type = "electronic";//ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>
String invoice_money = "";
String tax_type = "";
String plan_id = "";
String PAYMENT_NUMBER = "";
String TAX_REG_CODE="";
String TAX_BANK="";
String TAX_ACC="";
String contract_id="";
String invoice_object= "direct_rent";//ֱ<><D6B1>
for(int i=0;i<planIds.length;i++){
String planId = planIds[i];
BizObject viInvoiceDirectRent = viInvoiceDirectRentManager.createQuery("plan_id=:plan_id").setParameter("plan_id", planId).getSingleResult(false);
String id=UUID.randomUUID().toString().replaceAll("-", "");
invoice_money = viInvoiceDirectRent.getAttribute("plan_money").toString();
plan_id = viInvoiceDirectRent.getAttribute("plan_id").toString();
PAYMENT_NUMBER = viInvoiceDirectRent.getAttribute("payment_number").toString();
TAX_REG_CODE = viInvoiceDirectRent.getAttribute("cert_id").toString();
TAX_BANK = viInvoiceDirectRent.getAttribute("bank_name").toString();
TAX_ACC = viInvoiceDirectRent.getAttribute("acc_number").toString();
contract_id = viInvoiceDirectRent.getAttribute("contract_id").toString();
tax_type = viInvoiceDirectRent.getAttribute("tax_types").toString();
BizObject lriiObject = lriiManager.createQuery("plan_id=:plan_id and tax_type=:tax_type").setParameter("plan_id", planId).setParameter("tax_type", tax_type).getSingleResult(false);
if(lriiObject!=null){
lriiManager.createQuery("update o set invoice_status='1' where plan_id=:plan_id").setParameter("plan_id", planId).executeUpdate();
}else{
BizObject rentInvoiceInfo = lriiManager.newObject();
rentInvoiceInfo.setAttributeValue("id", id);
rentInvoiceInfo.setAttributeValue("invoice_status", invoice_status);
rentInvoiceInfo.setAttributeValue("bill_type", bill_type);
rentInvoiceInfo.setAttributeValue("invoice_money", invoice_money);
rentInvoiceInfo.setAttributeValue("invoice_object", invoice_object);
if("".equals(tax_type) || tax_type==null){
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>";
}else{
rentInvoiceInfo.setAttributeValue("tax_type", tax_type);
}
rentInvoiceInfo.setAttributeValue("TEMPORARY_NOINVOICE", "0.00");
rentInvoiceInfo.setAttributeValue("NOINVOICE", "0.00");
rentInvoiceInfo.setAttributeValue("plan_id", plan_id);
rentInvoiceInfo.setAttributeValue("PAYMENT_NUMBER", PAYMENT_NUMBER);
rentInvoiceInfo.setAttributeValue("TAX_REG_CODE", TAX_REG_CODE);// <20><>˰<EFBFBD><CBB0>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>
rentInvoiceInfo.setAttributeValue("TAX_BANK", TAX_BANK);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
rentInvoiceInfo.setAttributeValue("TAX_ACC", TAX_ACC);//<2F><><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>
rentInvoiceInfo.setAttributeValue("contract_id", contract_id);
rentInvoiceInfo = this.initTabeUserInfo(rentInvoiceInfo);
lriiManager.saveObject(rentInvoiceInfo);
}
}
return "<EFBFBD><EFBFBD><EFBFBD>뿪Ʊ<EFBFBD>ɹ<EFBFBD>";
}
/**
* <20><>Ʊȷ<C6B1><C8B7><EFBFBD>ύ-ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param tx
* @return
* @throws Exception
*/
public String invoiceConfirmSubmitE(JBOTransaction tx) throws Exception{
//Transaction Sqlca = null;
/*BizObjectManager ownAccountManager = JBOFactory.getBizObjectManager(OWN_ACCOUNT.CLASS_NAME);
BizObject ownAccount = ownAccountManager.createQuery("state_=:state and acc_type=:acc_type and money_type=:money_type and account_type=:account_type")
.setParameter("state", "0010").setParameter("acc_type", "0010")
.setParameter("money_type", "01")
.setParameter("account_type", "invoice").getSingleResult(false);
if (ownAccount == null || "".equals(ownAccount)) {
return "<22><><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>";
}*/
String[] rentInvoiceids = this.getIds().split("@");
List<String> rentPlanIdList = new ArrayList<String>();
for (int i = 0; i < rentInvoiceids.length; i++) {
rentPlanIdList.add("'" + rentInvoiceids[i] + "'");
}
String customerid = "";
String customerName = "";
String xhdwyhzh = "";
String xhdwdzdh = "";
String rentPlanstr = StringUtils.join(rentPlanIdList.toArray(), ",");
BizObjectManager invoiceManager = JBOFactory.getBizObjectManager(VI_INVOICE_RENT_INCOME_CONFIRM_E.CLASS_NAME);
@SuppressWarnings("unchecked")
List<BizObject> checkInvoiceList = (List<BizObject>) invoiceManager.createQuery("SELECT O.contract_id,O.customer_name,O.CUSTOMER_ID FROM O WHERE O.id IN ("+ rentPlanstr + ") GROUP BY O.contract_id").getResultList(false);
//ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ
for (BizObject bizObject : checkInvoiceList) {
String contract_id = bizObject.getAttribute("contract_id").toString();
//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺ź͵<C5BA>ַ<EFBFBD>
BizObject rent = JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_RENT_INCOME", "SELECT O.own_number,oi.lease_tel FROM O LEFT JOIN jbo.com.tenwa.entity.comm.own.OWN_INFO oi ON O.own_account=oi.own_name WHERE O.contract_id =:contract_id GROUP BY O.contract_id")
.setParameter("contract_id", contract_id).getSingleResult(false);
if(rent==null){
return "<EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>";
}else{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>
xhdwyhzh = rent.getAttribute("own_number")==null? "" : rent.getAttribute("own_number").toString();
//<2F><>ַ<EFBFBD>
xhdwdzdh = rent.getAttribute("lease_tel")==null? "" : rent.getAttribute("lease_tel").toString();
}
customerid = bizObject.getAttribute("CUSTOMER_ID").toString();
customerName = bizObject.getAttribute("customer_name").toString();
List<BizObject> boList = invoiceManager.createQuery("contract_id=:contract_id and id IN ("+rentPlanstr+")")
.setParameter("contract_id", contract_id).getResultList(false);
List<String> list = new ArrayList<String>();
for (BizObject bizObject2 : boList) {
String id = bizObject2.getAttribute("id").toString();
list.add(id);
}
// String[] ids = (String[]) list.toArray();
String[] ids = new String[list.size()];
list.toArray(ids);
String confirmId = UUID.randomUUID().toString().replaceAll("-", "");
Double hjje = 0.00;
Double hjse = 0.00;
Double jshj = 0.00;
List<BizObject> confirmDetailList = new ArrayList<BizObject>();
DecimalFormat df2 = new DecimalFormat(".00");
DecimalFormat df6 = new DecimalFormat(".000000");
BizObjectManager invoiceRentManager = JBOFactory.getBizObjectManager(LI_RENT_INVOICE_INFO.CLASS_NAME);
//˰<><CBB0>
Double sl = 0.00;
for (int i = 0; i < ids.length; i++) {
String invoiceId = ids[i];// li_rent_invoice_info<66><6F>id
BizObjectManager confirmDetailManager = JBOFactory.getBizObjectManager(LI_INVOICE_CONFIRM_DETAIL.CLASS_NAME);
tx.join(confirmDetailManager);
BizObject confirmDetailBizObject = confirmDetailManager.newObject();
Double invoiceMoney = 0.00;
String planid = "";
String planList = "";
String TAX_TYPE = "";
String spbm = "";
String spmc = "";
String taxType = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>";//˰<>ʺ<EFBFBD><CABA><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBBAAF><EFBFBD><EFBFBD>д<EFBFBD><D0B4>һ<EFBFBD><D2BB>
spmc = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
BizObject invoiceRentBizObject = invoiceRentManager.createQuery("ID=:id ").setParameter("id", invoiceId).getSingleResult(false);
//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
invoiceMoney = new BigDecimal(invoiceRentBizObject.getAttribute("INVOICE_MONEY").getString()).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
TAX_TYPE = invoiceRentBizObject.getAttribute("TAX_TYPE").getString();
planid = invoiceRentBizObject.getAttribute("plan_id").toString();
if (planid != null && !"".equals(planid)) {
BizObjectManager rentIncomeManager = JBOFactory.getBizObjectManager(LC_RENT_PLAN.CLASS_NAME);
//<2F><><EFBFBD><EFBFBD>planid<69><64>ȡ<EFBFBD>ڴ<EFBFBD>
BizObject rentIncome = rentIncomeManager.createQuery("id=:plan_id").setParameter("plan_id", planid).getSingleResult(false);
planList = rentIncome.getAttribute("plan_list").toString();
planList = Num2ChineseUtil.format(planList);
}
String sql = "SELECT getTaxs('01','"+taxType+"',O.inputtime) AS tax FROM lb_contract_info O WHERE O.id=:contract_id";
Map conditon = new HashMap<String,String>();
conditon.put("contract_id", contract_id);
List<Map<String,String>> data = DataOperatorUtil.getDataBySql(tx, sql, conditon);
sl = Double.parseDouble(data.get(0).get("tax"));
conditon.clear();
Double se = Double.valueOf(df2.format(invoiceMoney * sl));
confirmDetailBizObject.setAttributeValue("dj", "");
confirmDetailBizObject.setAttributeValue("je", invoiceMoney);
hjje = MathUtil.add(hjje, invoiceMoney);
hjse = MathUtil.add(hjse, se);
confirmDetailBizObject.setAttributeValue("invoice_type",TAX_TYPE);
confirmDetailBizObject.setAttributeValue("invoice_id",invoiceId);
confirmDetailBizObject.setAttributeValue("spsl", "");
confirmDetailBizObject.setAttributeValue("dw", "");
confirmDetailBizObject.setAttributeValue("fphxz", "0");
confirmDetailBizObject.setAttributeValue("spmc", spmc);
confirmDetailBizObject.setAttributeValue("spsm", "");
confirmDetailBizObject.setAttributeValue("ggxh", planList);
confirmDetailBizObject.setAttributeValue("invoice_confirm_id",confirmId);
confirmDetailBizObject.setAttributeValue("sl", sl);
confirmDetailBizObject.setAttributeValue("se", se);
confirmDetailBizObject.setAttributeValue("hsbz", "0");
Configure config = Configure.getInstance();
try {
spbm = config.getConfigure("INVOICE_SPBM");
} catch (Exception e) {
e.printStackTrace();
return "<EFBFBD><EFBFBD>ȡa3web<EFBFBD>Ŀ<EFBFBD>Ʊ<EFBFBD>ӿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʧ<EFBFBD><EFBFBD>";
}
confirmDetailBizObject.setAttributeValue("spbm", spbm);
confirmDetailBizObject.setAttributeValue("zxbm", "");
confirmDetailBizObject.setAttributeValue("yhzcbs", "0");
confirmDetailBizObject.setAttributeValue("slbs", "");
confirmDetailBizObject.setAttributeValue("zzstsgl", "");
confirmDetailBizObject = this.initTabeUserInfo(confirmDetailBizObject);
confirmDetailManager.saveObject(confirmDetailBizObject);
confirmDetailList.add(confirmDetailBizObject);
}
if (confirmDetailList.size() > 0) {
BizObjectManager confirmManager = JBOFactory.getBizObjectManager(LI_INVOICE_CONFIRM.CLASS_NAME);
tx.join(confirmManager);
BizObject confirmBizObject = confirmManager.newObject();
/*String ownId = ownAccount.getAttribute("own_id").toString();
BizObjectManager ownInfoManager = JBOFactory.getBizObjectManager(OWN_INFO.CLASS_NAME);
BizObject ownInfo = ownInfoManager.createQuery("OWN_NUMBER=:OWN_NUMBER").setParameter("OWN_NUMBER", ownId).getSingleResult(false);
String xhdwdzdh = ownInfo.getAttribute("LEASE_TEL").toString();// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ַ<EFBFBD>
*/
BizObjectManager customerPersonManager = JBOFactory.getBizObjectManager(CUSTOMER_PERSON.CLASS_NAME);
BizObjectManager customerFamilyManager = JBOFactory.getBizObjectManager(CUSTOMER_FAMILY.CLASS_NAME);
BizObject customerPerson = customerPersonManager.createQuery("SELECT o.certid,caa.fulladdress,o.mobile,ca.acc_number,ca.bank_name from o JOIN jbo.app.tenwa.customer.CUSTOMER_ACCOUNT ca ON ca.customerid=o.customerid JOIN jbo.app.tenwa.customer.CUSTOMER_ADDRESS caa ON caa.customerid=ca.customerid where o.customerid=:customerid").setParameter("customerid", customerid).getSingleResult(false);
BizObject customerFamily = customerFamilyManager.createQuery("customerid=:customerid").setParameter("customerid", customerid).getSingleResult(false);
String familyTel = "";
if (customerFamily != null) {
familyTel = customerFamily.getAttribute("tel").toString();
}
String certid = "";
String fulladdress = "";
String mobile = "";
String acc_number = "";
String bank_name = "";
String acc_bank = "";
String address_tel = "";
if (customerPerson != null) {
certid = customerPerson.getAttribute("certid").toString();
fulladdress = customerPerson.getAttribute("fulladdress").toString();
mobile = customerPerson.getAttribute("mobile").toString();
acc_number = customerPerson.getAttribute("acc_number").toString();
bank_name = customerPerson.getAttribute("bank_name").toString();
acc_bank = "[" + bank_name + "][" + acc_number + "]";
address_tel = "[" + mobile + "][" + fulladdress + "]";
}
BizObjectManager contractInfoManager = JBOFactory.getBizObjectManager(LB_CONTRACT_INFO.CLASS_NAME);
BizObject contractInfo = contractInfoManager
.createQuery(
"SELECT o.leas_form,lul.customer_id,ci.customertype FROM o JOIN jbo.com.tenwa.lease.comm.LB_UNION_LESSEE lul ON o.id=lul.contract_id JOIN jbo.app.tenwa.customer.CUSTOMER_INFO ci ON ci.customerid=lul.customer_id WHERE O.businesstype='1' AND lul.customer_id=:customerid")
.setParameter("customerid", customerid)
.getSingleResult(false);
String customertype = contractInfo.getAttribute("customertype").toString();// <20>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>Ȼ<EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>
BizObjectManager userInfoManager = JBOFactory.getBizObjectManager(USER_INFO.CLASS_NAME);
BizObject userInfo = userInfoManager.createQuery("userid=:userid")
.setParameter("userid", CurUserID)
.getSingleResult(false);
String username = userInfo.getAttribute("username").toString();// <20><>Ʊ<EFBFBD><C6B1>
confirmBizObject.setAttributeValue("id", confirmId);
confirmBizObject.setAttributeValue("sid",PasswordGenerateUtil.getRandom(64,PasswordGenerateUtil.TYPE.LETTER_CAPITAL));
confirmBizObject.setAttributeValue("yylxdm", "1");
confirmBizObject.setAttributeValue("fplxdm", "026");//ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD>Ʊ
confirmBizObject.setAttributeValue("kplx", "0");
confirmBizObject.setAttributeValue("tspz", "00");
confirmBizObject.setAttributeValue("xhdwdzdh", xhdwdzdh);
confirmBizObject.setAttributeValue("xhdwyhzh", xhdwyhzh);
confirmBizObject.setAttributeValue("ghdwsbh", certid);
confirmBizObject.setAttributeValue("ghdwmc", customerName);
confirmBizObject.setAttributeValue("ghdwdzdh", address_tel);
confirmBizObject.setAttributeValue("ghdwyhzh", acc_bank);
confirmBizObject.setAttributeValue("hsslbs", "0");
confirmBizObject.setAttributeValue("zhsl", "");
confirmBizObject.setAttributeValue("hjje", hjje);
confirmBizObject.setAttributeValue("hjse", hjse);
confirmBizObject.setAttributeValue("jshj",MathUtil.add(hjje, hjse));
confirmBizObject.setAttributeValue("fhr", "");
confirmBizObject.setAttributeValue("kpr", username);
confirmBizObject.setAttributeValue("zyspmc", "");
confirmBizObject.setAttributeValue("spsm", "");
confirmBizObject.setAttributeValue("ssyf", "");
confirmBizObject.setAttributeValue("tzdbh", "");
confirmBizObject.setAttributeValue("yfpdm", "");
confirmBizObject.setAttributeValue("yfphm", "");
confirmBizObject.setAttributeValue("GMF_DZYX", "");
confirmBizObject.setAttributeValue("FIELD3", "direct_rent");//ֱ<><D6B1>
if ("01".equals(customertype)) {
confirmBizObject.setAttributeValue("GMF_SJHM", familyTel);
} else {
confirmBizObject.setAttributeValue("GMF_SJHM", mobile);
}
confirmBizObject.setAttributeValue("GMF_OPENID", "");
confirmBizObject = this.initTabeUserInfo(confirmBizObject);
confirmManager.saveObject(confirmBizObject);
InvoiceRequest invoiceRequest = new InvoiceRequest();
ResultPojo result = invoiceRequest.send(confirmBizObject,confirmDetailList);
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
String returncode = responseBase.getBody().getReturncode();
String returnmsg = responseBase.getBody().getReturnmsg();
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
if ("0".equals(returncode)) {
System.out.println("[OK][SUCCESS]");
for (BizObject confirmDetailBizObject : confirmDetailList) {
String invoiceId = confirmDetailBizObject.getAttribute("invoice_id").toString();
invoiceRentManager.createQuery("update o set INVOICE_STATUS=:invoicestatus where ID=:id ")
.setParameter("id",invoiceId).setParameter("invoicestatus","3").executeUpdate();
}
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
} else {
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>";
}
// ===================================================
}
return "<EFBFBD><EFBFBD>Ʊȷ<EFBFBD>ϳɹ<EFBFBD>";
}
/**
* <20><>Ʊȷ<C6B1><C8B7><EFBFBD>ύ-ֱ<><D6B1>ֽ<EFBFBD><D6BD>
* @param tx
* @return
* @throws Exception
*/
public String invoiceConfirmSubmit(JBOTransaction tx) throws Exception{
Transaction Sqlca = null;
/*BizObjectManager ownAccountManager = JBOFactory.getBizObjectManager(OWN_ACCOUNT.CLASS_NAME);
BizObject ownAccount = ownAccountManager.createQuery("state_=:state and acc_type=:acc_type and money_type=:money_type and account_type=:account_type")
.setParameter("state", "0010").setParameter("acc_type", "0010")
.setParameter("money_type", "01")
.setParameter("account_type", "invoice").getSingleResult(false);
if (ownAccount == null || "".equals(ownAccount)) {
return "<22><><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>";
}*/
String[] rentInvoiceids = this.getIds().split("@");
List<String> rentPlanIdList = new ArrayList<String>();
for (int i = 0; i < rentInvoiceids.length; i++) {
rentPlanIdList.add("'" + rentInvoiceids[i] + "'");
}
String customerid = "";
String customerName = "";
String xhdwyhzh = "";
String xhdwdzdh = "";
String rentPlanstr = StringUtils.join(rentPlanIdList.toArray(), ",");
BizObjectManager invoiceManager = JBOFactory.getBizObjectManager(VI_INVOICE_RENT_INCOME_CONFIRM.CLASS_NAME);
// tx.join(invoiceManager);
@SuppressWarnings("unchecked")
List<BizObject> checkInvoiceList = (List<BizObject>) invoiceManager.createQuery("SELECT O.contract_id,O.customer_name,O.CUSTOMER_ID FROM O WHERE O.id IN ("+ rentPlanstr + ") GROUP BY O.contract_id").getResultList(false);
//ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ
for (BizObject bizObject : checkInvoiceList) {
String contract_id = bizObject.getAttribute("contract_id").toString();
//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺ź͵<C5BA>ַ<EFBFBD>
BizObject rent = JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_RENT_INCOME", "SELECT O.own_number,oi.lease_tel FROM O LEFT JOIN jbo.com.tenwa.entity.comm.own.OWN_INFO oi ON O.own_account=oi.own_name WHERE O.contract_id =:contract_id GROUP BY O.contract_id")
.setParameter("contract_id", contract_id).getSingleResult(false);
if(rent==null){
return "<EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>";
}else{
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD>
xhdwyhzh = rent.getAttribute("own_number")==null? "" : rent.getAttribute("own_number").toString();
//<2F><>ַ<EFBFBD>
xhdwdzdh = rent.getAttribute("lease_tel")==null? "" : rent.getAttribute("lease_tel").toString();
}
customerid = bizObject.getAttribute("CUSTOMER_ID").toString();
customerName = bizObject.getAttribute("customer_name").toString();
List<BizObject> boList = invoiceManager.createQuery("contract_id=:contract_id and id IN ("+rentPlanstr+")")
.setParameter("contract_id", contract_id).getResultList(false);
List<String> list = new ArrayList<String>();
for (BizObject bizObject2 : boList) {
String id = bizObject2.getAttribute("id").toString();
list.add(id);
}
// String[] ids = (String[]) list.toArray();
String[] ids = new String[list.size()];
list.toArray(ids);
String confirmId = UUID.randomUUID().toString().replaceAll("-", "");
Double hjje = 0.00;
Double hjse = 0.00;
Double jshj = 0.00;
List<BizObject> confirmDetailList = new ArrayList<BizObject>();
DecimalFormat df2 = new DecimalFormat(".00");
DecimalFormat df6 = new DecimalFormat(".000000");
BizObjectManager invoiceRentManager = JBOFactory.getBizObjectManager(LI_RENT_INVOICE_INFO.CLASS_NAME);
//˰<><CBB0>
Double sl = 0.00;
for (int i = 0; i < ids.length; i++) {
String invoiceId = ids[i];// li_rent_invoice_info<66><6F>id
BizObjectManager confirmDetailManager = JBOFactory.getBizObjectManager(LI_INVOICE_CONFIRM_DETAIL.CLASS_NAME);
tx.join(confirmDetailManager);
BizObject confirmDetailBizObject = confirmDetailManager.newObject();
Double invoiceMoney = 0.00;
String planid = "";
String planList = "";
String TAX_TYPE = "";
String spbm = "";
String spmc = "";
String taxType = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>";//˰<>ʺ<EFBFBD><CABA><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EBBAAF><EFBFBD><EFBFBD>д<EFBFBD><D0B4>һ<EFBFBD><D2BB>
spmc = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
BizObject invoiceRentBizObject = invoiceRentManager.createQuery("ID=:id ").setParameter("id", invoiceId).getSingleResult(false);
//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
invoiceMoney = new BigDecimal(invoiceRentBizObject.getAttribute("INVOICE_MONEY").getString()).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
TAX_TYPE = invoiceRentBizObject.getAttribute("TAX_TYPE").getString();
planid = invoiceRentBizObject.getAttribute("plan_id").toString();
if (planid != null && !"".equals(planid)) {
BizObjectManager rentIncomeManager = JBOFactory.getBizObjectManager(LC_RENT_PLAN.CLASS_NAME);
//<2F><><EFBFBD><EFBFBD>planid<69><64>ȡ<EFBFBD>ڴ<EFBFBD>
BizObject rentIncome = rentIncomeManager.createQuery("id=:plan_id").setParameter("plan_id", planid).getSingleResult(false);
planList = rentIncome.getAttribute("plan_list").toString();
planList = Num2ChineseUtil.format(planList);
}
String sql = "SELECT getTaxs('01','"+taxType+"',O.inputtime) AS tax FROM lb_contract_info O WHERE O.id=:contract_id";
Map conditon = new HashMap<String,String>();
conditon.put("contract_id", contract_id);
List<Map<String,String>> data = DataOperatorUtil.getDataBySql(tx, sql, conditon);
sl = Double.parseDouble(data.get(0).get("tax"));
conditon.clear();
Double se = Double.valueOf(df2.format(invoiceMoney * sl));
confirmDetailBizObject.setAttributeValue("dj", "");
confirmDetailBizObject.setAttributeValue("je", invoiceMoney);
hjje = MathUtil.add(hjje, invoiceMoney);
hjse = MathUtil.add(hjse, se);
confirmDetailBizObject.setAttributeValue("invoice_type",TAX_TYPE);
confirmDetailBizObject.setAttributeValue("invoice_id",invoiceId);
confirmDetailBizObject.setAttributeValue("spsl", "");
confirmDetailBizObject.setAttributeValue("dw", "");
confirmDetailBizObject.setAttributeValue("fphxz", "0");
confirmDetailBizObject.setAttributeValue("spmc", spmc);
confirmDetailBizObject.setAttributeValue("spsm", "");
confirmDetailBizObject.setAttributeValue("ggxh", planList);
confirmDetailBizObject.setAttributeValue("invoice_confirm_id",
confirmId);
confirmDetailBizObject.setAttributeValue("sl", sl);
confirmDetailBizObject.setAttributeValue("se", se);
confirmDetailBizObject.setAttributeValue("hsbz", "0");
Configure config = Configure.getInstance();
try {
spbm = config.getConfigure("INVOICE_SPBM");
} catch (Exception e) {
e.printStackTrace();
return "<EFBFBD><EFBFBD>ȡa3web<EFBFBD>Ŀ<EFBFBD>Ʊ<EFBFBD>ӿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʧ<EFBFBD><EFBFBD>";
}
confirmDetailBizObject.setAttributeValue("spbm", spbm);
confirmDetailBizObject.setAttributeValue("zxbm", "");
confirmDetailBizObject.setAttributeValue("yhzcbs", "0");
confirmDetailBizObject.setAttributeValue("slbs", "");
confirmDetailBizObject.setAttributeValue("zzstsgl", "");
confirmDetailBizObject = this.initTabeUserInfo(confirmDetailBizObject);
confirmDetailManager.saveObject(confirmDetailBizObject);
confirmDetailList.add(confirmDetailBizObject);
}
if (confirmDetailList.size() > 0) {
BizObjectManager confirmManager = JBOFactory.getBizObjectManager(LI_INVOICE_CONFIRM.CLASS_NAME);
tx.join(confirmManager);
BizObject confirmBizObject = confirmManager.newObject();
/*String ownId = ownAccount.getAttribute("own_id").toString();
BizObjectManager ownInfoManager = JBOFactory.getBizObjectManager(OWN_INFO.CLASS_NAME);
BizObject ownInfo = ownInfoManager.createQuery("OWN_NUMBER=:OWN_NUMBER").setParameter("OWN_NUMBER", ownId).getSingleResult(false);
String xhdwdzdh = ownInfo.getAttribute("LEASE_TEL").toString();// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ַ<EFBFBD>
*/
BizObjectManager customerPersonManager = JBOFactory.getBizObjectManager(CUSTOMER_PERSON.CLASS_NAME);
BizObjectManager customerFamilyManager = JBOFactory.getBizObjectManager(CUSTOMER_FAMILY.CLASS_NAME);
BizObject customerPerson = customerPersonManager.createQuery(
"SELECT o.certid,caa.fulladdress,o.mobile,ca.acc_number,ca.bank_name from o JOIN jbo.app.tenwa.customer.CUSTOMER_ACCOUNT ca ON ca.customerid=o.customerid JOIN jbo.app.tenwa.customer.CUSTOMER_ADDRESS caa ON caa.customerid=ca.customerid where o.customerid=:customerid")
.setParameter("customerid", customerid).getSingleResult(false);
BizObject customerFamily = customerFamilyManager.createQuery("customerid=:customerid")
.setParameter("customerid", customerid).getSingleResult(false);
String familyTel = "";
if (customerFamily != null) {
familyTel = customerFamily.getAttribute("tel").toString();
}
String certid = "";
String fulladdress = "";
String mobile = "";
String acc_number = "";
String bank_name = "";
String acc_bank = "";
String address_tel = "";
if (customerPerson != null) {
certid = customerPerson.getAttribute("certid").toString();
fulladdress = customerPerson.getAttribute("fulladdress").toString();
mobile = customerPerson.getAttribute("mobile").toString();
acc_number = customerPerson.getAttribute("acc_number").toString();
bank_name = customerPerson.getAttribute("bank_name").toString();
acc_bank = "[" + bank_name + "][" + acc_number + "]";
address_tel = "[" + mobile + "][" + fulladdress + "]";
}
BizObjectManager contractInfoManager = JBOFactory.getBizObjectManager(LB_CONTRACT_INFO.CLASS_NAME);
BizObject contractInfo = contractInfoManager
.createQuery(
"SELECT o.leas_form,lul.customer_id,ci.customertype FROM o JOIN jbo.com.tenwa.lease.comm.LB_UNION_LESSEE lul ON o.id=lul.contract_id JOIN jbo.app.tenwa.customer.CUSTOMER_INFO ci ON ci.customerid=lul.customer_id WHERE O.businesstype='1' AND lul.customer_id=:customerid")
.setParameter("customerid", customerid)
.getSingleResult(false);
String customertype = contractInfo.getAttribute("customertype").toString();// <20>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>Ȼ<EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>
BizObjectManager userInfoManager = JBOFactory.getBizObjectManager(USER_INFO.CLASS_NAME);
BizObject userInfo = userInfoManager.createQuery("userid=:userid")
.setParameter("userid", CurUserID)
.getSingleResult(false);
String username = userInfo.getAttribute("username").toString();// <20><>Ʊ<EFBFBD><C6B1>
confirmBizObject.setAttributeValue("id", confirmId);
confirmBizObject.setAttributeValue("sid",
PasswordGenerateUtil.getRandom(64,
PasswordGenerateUtil.TYPE.LETTER_CAPITAL));
confirmBizObject.setAttributeValue("yylxdm", "1");
confirmBizObject.setAttributeValue("fplxdm", "004");
confirmBizObject.setAttributeValue("kplx", "0");
confirmBizObject.setAttributeValue("tspz", "00");
confirmBizObject.setAttributeValue("xhdwdzdh", xhdwdzdh);
confirmBizObject.setAttributeValue("xhdwyhzh", xhdwyhzh);
confirmBizObject.setAttributeValue("ghdwsbh", certid);
confirmBizObject.setAttributeValue("ghdwmc", customerName);
confirmBizObject.setAttributeValue("ghdwdzdh", address_tel);
confirmBizObject.setAttributeValue("ghdwyhzh", acc_bank);
confirmBizObject.setAttributeValue("hsslbs", "0");
confirmBizObject.setAttributeValue("zhsl", "");
confirmBizObject.setAttributeValue("hjje", hjje);
confirmBizObject.setAttributeValue("hjse", hjse);
confirmBizObject.setAttributeValue("jshj",MathUtil.add(hjje, hjse));
confirmBizObject.setAttributeValue("fhr", "");
confirmBizObject.setAttributeValue("kpr", username);
confirmBizObject.setAttributeValue("zyspmc", "");
confirmBizObject.setAttributeValue("spsm", "");
confirmBizObject.setAttributeValue("ssyf", "");
confirmBizObject.setAttributeValue("tzdbh", "");
confirmBizObject.setAttributeValue("yfpdm", "");
confirmBizObject.setAttributeValue("yfphm", "");
confirmBizObject.setAttributeValue("GMF_DZYX", "");
confirmBizObject.setAttributeValue("FIELD3", "direct_rent");//ֱ<><D6B1>
if ("01".equals(customertype)) {
confirmBizObject.setAttributeValue("GMF_SJHM", familyTel);
} else {
confirmBizObject.setAttributeValue("GMF_SJHM", mobile);
}
confirmBizObject.setAttributeValue("GMF_OPENID", "");
confirmBizObject = this.initTabeUserInfo(confirmBizObject);
confirmManager.saveObject(confirmBizObject);
InvoiceRequest invoiceRequest = new InvoiceRequest();
ResultPojo result = invoiceRequest.send(confirmBizObject,confirmDetailList);
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
String returncode = responseBase.getBody().getReturncode();
String returnmsg = responseBase.getBody().getReturnmsg();
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
if ("0".equals(returncode)) {
System.out.println("[OK][SUCCESS]");
for (BizObject confirmDetailBizObject : confirmDetailList) {
String invoiceId = confirmDetailBizObject.getAttribute("invoice_id").toString();
invoiceRentManager.createQuery("update o set INVOICE_STATUS=:invoicestatus where ID=:id ")
.setParameter("id",invoiceId).setParameter("invoicestatus","3").executeUpdate();
}
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
} else {
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>";
}
// ===================================================
}
return "<EFBFBD><EFBFBD>Ʊȷ<EFBFBD>ϳɹ<EFBFBD>";
}
/**
* <20>˻<EFBFBD><CBBB><EFBFBD><EFBFBD>뿪Ʊ
*
* @param tx
* @return
* @throws Exception
*/
public String backInvoice(JBOTransaction tx) throws Exception {
BizObjectManager lriiManager = JBOFactory.getBizObjectManager(LI_RENT_INVOICE_INFO.CLASS_NAME);
tx.join(lriiManager);
String[] rentPlanids = this.getIds().split("@");
for (int i = 0; i < rentPlanids.length; i++) {
lriiManager.createQuery("update o set INVOICE_STATUS='2' where ID=:id ")
.setParameter("id", rentPlanids[i]).executeUpdate();
}
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>";
}
/**
* ֱ<><D6B1><>ʲ<EFBFBD>ѯ
* @param tx
* @return
* @throws JBOException
*/
public String selectConfirm(JBOTransaction tx) throws JBOException {
Configure config = Configure.getInstance();
//String INVOICE_LOCAL_PATH = "";
String appId = "";
try {
//INVOICE_LOCAL_PATH = config.getConfigure("INVOICE_LOCAL_PATH");
appId = config.getConfigure("INVOICE_APPID");
} catch (Exception e) {
e.printStackTrace();
return "a3web->[INVOICE_LOCAL_PATH]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
String[] sids = this.getSid().split("@");
String sid = "";
for (int i = 0; i < sids.length; i++) {
sid = sids[i];
InvoiceRequestBase invoiceRequestBase = new InvoiceRequestBase();
InvoiceRequestHead invoiceRequestHead = new InvoiceRequestHead();
invoiceRequestHead.setAppid(appId);
invoiceRequestHead.setSid(sid);
invoiceRequestBase.setHead(invoiceRequestHead);
invoiceRequestBase.setComment("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
invoiceRequestBase.setId("CXKPJG");
invoiceRequestBase.setVersion("1.0");
String xml = JaxbUtil.convertToXml(invoiceRequestBase);
ResultPojo result = doPost(xml);
// <20><><EFBFBD><EFBFBD>sid<69>õ<EFBFBD>LI_INVOICE_CONFIRM<52><4D><EFBFBD><EFBFBD>id(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>id<69>ʹ˱<CDB4>id<69><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>LI_INVOICE_CONFIRM_Detail<69><6C><EFBFBD><EFBFBD>)
BizObjectManager confirmManager = JBOFactory
.getBizObjectManager(LI_INVOICE_CONFIRM.CLASS_NAME);
BizObject confirm = confirmManager.createQuery("sid=:sid")
.setParameter("sid", sid).getSingleResult(false);
String invoice_confirm_id = confirm.getAttribute("id").toString();
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();
String fplxdm = responseBase.getBody().getFplxdm();
String fpdm = responseBase.getBody().getFpdm();
String fphm = responseBase.getBody().getFphm();
String kprq = responseBase.getBody().getKprq();
String hjje = responseBase.getBody().getHjje();
String skm = responseBase.getBody().getSkm();
String jym = responseBase.getBody().getJym();
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 "<22><><EFBFBD><EFBFBD>PDFʧ<46><CAA7>";
}
}
}*/
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]");
// <20>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>״̬
BizObjectManager 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();
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
}
return "<EFBFBD><EFBFBD>ѯ<EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>";
/*
* if(result.getCode().toString()!="0"){ return "<22><>ѯʧ<D1AF><CAA7>"; }
*
* System.out.println("result=>>>"+JSONObject.toJSONString(result));
* showResult(result); return "<22><>ѯ<EFBFBD>ɹ<EFBFBD>";
*/
}
/**
* ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ
* @param tx
* @return
* @throws JBOException
*/
public String selectConfirmE(JBOTransaction tx) throws JBOException {
Configure config = Configure.getInstance();
String INVOICE_LOCAL_PATH = "";
String appId = "";
try {
INVOICE_LOCAL_PATH = config.getConfigure("INVOICE_LOCAL_PATH");
appId = config.getConfigure("INVOICE_APPID");
} catch (Exception e) {
e.printStackTrace();
return "a3web->[INVOICE_LOCAL_PATH]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
String[] sids = this.getSid().split("@");
String sid = "";
for (int i = 0; i < sids.length; i++) {
sid = sids[i];
InvoiceRequestBase invoiceRequestBase = new InvoiceRequestBase();
InvoiceRequestHead invoiceRequestHead = new InvoiceRequestHead();
invoiceRequestHead.setAppid(appId);
invoiceRequestHead.setSid(sid);
invoiceRequestBase.setHead(invoiceRequestHead);
invoiceRequestBase.setComment("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
invoiceRequestBase.setId("CXKPJG");
invoiceRequestBase.setVersion("1.0");
String xml = JaxbUtil.convertToXml(invoiceRequestBase);
ResultPojo result = doPost(xml);
// <20><><EFBFBD><EFBFBD>sid<69>õ<EFBFBD>LI_INVOICE_CONFIRM<52><4D><EFBFBD><EFBFBD>id(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>id<69>ʹ˱<CDB4>id<69><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>LI_INVOICE_CONFIRM_Detail<69><6C><EFBFBD><EFBFBD>)
BizObjectManager confirmManager = JBOFactory.getBizObjectManager(LI_INVOICE_CONFIRM.CLASS_NAME);
BizObject confirm = confirmManager.createQuery("sid=:sid").setParameter("sid", sid).getSingleResult(false);
String invoice_confirm_id = confirm.getAttribute("id").toString();
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();
String fplxdm = responseBase.getBody().getFplxdm();
String fpdm = responseBase.getBody().getFpdm();
String fphm = responseBase.getBody().getFphm();
String kprq = responseBase.getBody().getKprq();
String hjje = responseBase.getBody().getHjje();
String skm = responseBase.getBody().getSkm();
String jym = responseBase.getBody().getJym();
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 "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>PDFʧ<EFBFBD><EFBFBD>";
}
}
}
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]");
// <20>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>״̬
BizObjectManager 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();
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
}
return "<EFBFBD><EFBFBD>ѯ<EFBFBD>ɹ<EFBFBD><EFBFBD><EFBFBD>";
/*
* if(result.getCode().toString()!="0"){ return "<22><>ѯʧ<D1AF><CAA7>"; }
*
* System.out.println("result=>>>"+JSONObject.toJSONString(result));
* showResult(result); return "<22><>ѯ<EFBFBD>ɹ<EFBFBD>";
*/
}
public ResultPojo doPost(String xml) {
Configure config = Configure.getInstance();
String url = "";
try {
url = config.getConfigure("INVOICE_URL");
} catch (Exception e1) {
e1.printStackTrace();
}
HttpHeaders httpHeaders = new HttpHeaders();
MultiValueMap<String, Object> param = new LinkedMultiValueMap<>();
httpHeaders.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
param.add("bw", xml);
RestTemplate restTemplate = new RestTemplate();
HttpEntity<MultiValueMap<String, Object>> entity = new HttpEntity<>(
param, httpHeaders);
ResponseEntity<String> response = null;
try {
response = restTemplate.exchange(url, HttpMethod.POST, entity,
String.class);
} catch (Exception e) {
return ResultUtil.error(ResponseEnum.NETWORK.getMsg());
}
System.out.println(response.getBody());
InvoiceRequestBase r = JaxbUtil.converyToJavaBean(response.getBody(),
InvoiceRequestBase.class);
return ResultUtil.success(r);
}
//<2F><>ӡ<EFBFBD><D3A1>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
public ResultPojo doPostPrint(String xml) {
Configure config = Configure.getInstance();
String url = "";
try {
url = config.getConfigure("INVOICE_URL");
} catch (Exception e1) {
e1.printStackTrace();
}
HttpHeaders httpHeaders = new HttpHeaders();
MultiValueMap<String, Object> param = new LinkedMultiValueMap<>();
httpHeaders.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
param.add("bw", xml);
RestTemplate restTemplate = new RestTemplate();
HttpEntity<MultiValueMap<String, Object>> entity = new HttpEntity<>(
param, httpHeaders);
ResponseEntity<String> response = null;
try {
response = restTemplate.exchange(url, HttpMethod.POST, entity,
String.class);
} catch (Exception e) {
return ResultUtil.error(ResponseEnum.NETWORK.getMsg());
}
System.out.println(response.getBody());
InvoiceRequestBase r = JaxbUtil.converyToJavaBean(response.getBody(),InvoiceRequestBase.class);
return ResultUtil.success(r);
}
private void showResult(ResultPojo result) {
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
String returncode = responseBase.getBody().getReturncode();
String returnmsg = responseBase.getBody().getReturnmsg();
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
if ("0".equals(returncode)) {
System.out.println("[OK][SUCCESS]");
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
}
}
/**
* ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӡ<EFBFBD><D3A1>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
* @return
*/
public String printInvoice(JBOTransaction tx){
Configure config = Configure.getInstance();
String appId = "";
try {
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>appid
appId = config.getConfigure("INVOICE_APPID");
} catch (Exception e) {
e.printStackTrace();
return "a3web->[INVOICE_LOCAL_PATH]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
String[] sids = this.getSid().split("@");
String sid = "";
String fpdm = "";
String fphm = "";
String newSid ="";
String invoice_confirm_id = "";
String ghdwmc = "";
String invoice_type = "direct_rent";
String returnmsg = "";
String returncode = "";
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);
if(invoiceResult==null){
return "<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD>ѯ<EFBFBD>ķ<EFBFBD>Ʊ<EFBFBD><EFBFBD>";
}else{
fpdm = invoiceResult.getAttribute("fpdm").toString();
fphm = invoiceResult.getAttribute("fphm").toString();
// <20><>ֹ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>Ʊ<EFBFBD><C6B1>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD> field2(returncode)
String a = invoiceResult.getAttribute("field2")==null?"":invoiceResult.getAttribute("field2").toString();
if("0".equals(a)){
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD>ӡ<EFBFBD><EFBFBD><EFBFBD>";
}
}
} catch (JBOException e) {
e.printStackTrace();
}
newSid = PasswordGenerateUtil.getRandom(64,PasswordGenerateUtil.TYPE.LETTER_CAPITAL);
InvoiceRequestBase invoiceRequestBase = new InvoiceRequestBase();
InvoiceRequestHead invoiceRequestHead = new InvoiceRequestHead();
InvoiceRequestBody invoiceRequestBody = new InvoiceRequestBody();
InvoiceRequestInput invoiceRequestInput = new InvoiceRequestInput();
invoiceRequestHead.setAppid(appId);
invoiceRequestHead.setSid(newSid);
invoiceRequestInput.setFplxdm("004");
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("<EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD>ӡ");
invoiceRequestBase.setId("FPDY");
invoiceRequestBase.setVersion("1.0");
String xml = JaxbUtil.convertToXml(invoiceRequestBase);
System.out.println(xml);
ResultPojo result = doPostPrint(xml);
// <20><><EFBFBD><EFBFBD>sid<69>õ<EFBFBD>LI_INVOICE_CONFIRM<52><4D><EFBFBD><EFBFBD>id(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>id<69>ʹ˱<CDB4>id<69><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>LI_INVOICE_CONFIRM_Detail<69><6C><EFBFBD><EFBFBD>)
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();
ghdwmc = confirm.getAttribute("ghdwmc").toString();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
} catch (JBOException e) {
e.printStackTrace();
}
String id = UUID.randomUUID().toString().replaceAll("-", "");
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
returncode = responseBase.getBody().getReturncode();
returnmsg = responseBase.getBody().getReturnmsg();
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
//<2F><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>LI_INVOICE_RESULT
try {
BizObjectManager invoiceResultManger = JBOFactory.getBizObjectManager(LI_INVOICE_RESULT.CLASS_NAME, tx);
invoiceResultManger.createQuery("UPDATE O SET field1=:returnmsg,field2=:returncode WHERE sid=:sid ").setParameter("returnmsg", returnmsg)
.setParameter("returncode", returncode).setParameter("sid", sid).executeUpdate();
} catch (JBOException e1) {
e1.printStackTrace();
}
if ("0".equals(returncode)) {
// <20>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>״̬
BizObjectManager confirmDetailManager;
BizObjectManager invoicePrintResultManager;
try {
//<2F><>Ʊ<EFBFBD><C6B1>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>뵽li_invoice_print_result
invoicePrintResultManager = JBOFactory.getBizObjectManager(LI_INVOICE_PRINT_RESULT.CLASS_NAME, tx);
BizObject invoicePrintResult = invoicePrintResultManager.newObject();
invoicePrintResult.setAttributeValue("ID", id);
invoicePrintResult.setAttributeValue("fpdm", fpdm);
invoicePrintResult.setAttributeValue("fphm", fphm);
invoicePrintResult.setAttributeValue("ghdwmc", ghdwmc);
invoicePrintResult.setAttributeValue("new_sid", newSid);
invoicePrintResult.setAttributeValue("invoice_type", invoice_type);
try {
invoicePrintResult = this.initTabeUserInfo(invoicePrintResult);
} catch (Exception e) {
e.printStackTrace();
}
invoicePrintResultManager.saveObject(invoicePrintResult);
//<2F><>ȡli_rent_invoice_info<66><6F>id<69><64><EFBFBD>޸<EFBFBD><DEB8><EFBFBD>״̬
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", "7").executeUpdate();
} catch (JBOException e) {
e.printStackTrace();
}
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
}
return returnmsg;
}
/**
* ֱ<><D6B1>ֽ<EFBFBD>ʷ<EFBFBD>Ʊ<EFBFBD><C6B1>ӡ
* @param tx
* @return
*/
public String print(JBOTransaction tx){
Configure config = Configure.getInstance();
String appId = "";
try {
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>appid
appId = config.getConfigure("INVOICE_APPID");
} catch (Exception e) {
e.printStackTrace();
return "a3web->[INVOICE_LOCAL_PATH]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
String[] newSids = this.newSids.split("@");
String newSid ="";
String returnmsg = "";
String checkReturncode = "";
//ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD>е<EFBFBD>sid
for (int i = 0; i < newSids.length; i++) {
newSid = newSids[i];
//<2F><>ֹ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>ӡ LI_INVOICE_PRINT_RESULT
try {
BizObject PrintResutBizObject = JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LI_INVOICE_PRINT_RESULT", "new_sid=:new_sid")
.setParameter("new_sid", newSid).getSingleResult(false);
checkReturncode = PrintResutBizObject.getAttribute("returncode").toString();
if("0".equals(checkReturncode)){
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD>ӡ<EFBFBD><EFBFBD>";
}
} catch (JBOException e1) {
e1.printStackTrace();
}
//ƴxml
InvoiceRequestBase invoiceRequestBase = new InvoiceRequestBase();
InvoiceRequestHead invoiceRequestHead = new InvoiceRequestHead();
invoiceRequestHead.setAppid(appId);
invoiceRequestHead.setSid(newSid);
invoiceRequestBase.setHead(invoiceRequestHead);
invoiceRequestBase.setComment("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
invoiceRequestBase.setId("CXJG");
invoiceRequestBase.setVersion("1.0");
String xml = JaxbUtil.convertToXml(invoiceRequestBase);
System.out.println(xml);
ResultPojo result = doPostPrint(xml);
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ص<EFBFBD>xml<6D><6C><EFBFBD><EFBFBD>
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
String returncode = responseBase.getBody().getReturncode();
returnmsg = responseBase.getBody().getReturnmsg();
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
BizObjectManager invoicePrintResultManager;
try {
//<2F><>Ʊ<EFBFBD><C6B1>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>뵽li_invoice_print_result
invoicePrintResultManager = JBOFactory.getBizObjectManager(LI_INVOICE_PRINT_RESULT.CLASS_NAME, tx);
invoicePrintResultManager.createQuery("update O set returncode=:returncode,returnmsg=:returnmsg where new_sid=:new_sid and invoice_type='direct_rent'")
.setParameter("returncode", returncode).setParameter("returnmsg", returnmsg)
.setParameter("new_sid", newSid).executeUpdate();
} catch (JBOException e) {
e.printStackTrace();
}
if ("0".equals(returncode)) {
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
}
return returnmsg;
}
/**
* ֱ<><D6B1>רƱ<D7A8><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
public String InvoiceInvalid (JBOTransaction tx){
Configure config = Configure.getInstance();
String appId = "";
try {
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>appid
appId = config.getConfigure("INVOICE_APPID");
} catch (Exception e) {
e.printStackTrace();
return "a3web->[INVOICE_LOCAL_PATH]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
String[] sids = this.getSid().split("@");
String sid = "";
String fpdm = "";
String fphm = "";
String newSid ="";
String invoice_confirm_id = "";
String ghdwmc = "";
String lease_form = "direct_rent";//ֱ<><D6B1>
String fplxdm = "004";//רƱ
String returnmsg = "";
String hjje = "";
//ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><EFBFBD><E6B4AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
for (int i = 0; i < sids.length; i++) {
sid = sids[i];
try {
BizObjectManager invoicePrintResultManager = JBOFactory.getBizObjectManager(LI_INVOICE_PRINT_RESULT.CLASS_NAME, tx);
String sql = "SELECT O.fpdm,O.fphm,lir.hjje,lir.sid,O.field1 FROM O "+
"LEFT JOIN jbo.app.tenwa.calc.LI_INVOICE_RESULT lir ON O.fpdm=lir.fpdm AND O.fphm=lir.fphm "+
"WHERE lir.sid=:sid";
BizObject invoicePrintResult = invoicePrintResultManager.createQuery(sql).setParameter("sid", sid).getSingleResult(false);
fpdm = invoicePrintResult.getAttribute("fpdm").toString();
fphm = invoicePrintResult.getAttribute("fphm").toString();
hjje = invoicePrintResult.getAttribute("hjje").toString();
// <20><>ֹ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> field1(returncode)
String a = invoicePrintResult.getAttribute("field1")==null?"":invoicePrintResult.getAttribute("field1").toString();
if("0".equals(a)){
return "<EFBFBD>÷<EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѳɹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
} catch (JBOException e) {
e.printStackTrace();
}
newSid = PasswordGenerateUtil.getRandom(64,PasswordGenerateUtil.TYPE.LETTER_CAPITAL);
InvoiceRequestBase invoiceRequestBase = new InvoiceRequestBase();
InvoiceRequestHead invoiceRequestHead = new InvoiceRequestHead();
InvoiceRequestBody invoiceRequestBody = new InvoiceRequestBody();
InvoiceRequestInput invoiceRequestInput = new InvoiceRequestInput();
invoiceRequestHead.setAppid(appId);
invoiceRequestHead.setSid(newSid);
invoiceRequestInput.setFplxdm(fplxdm);//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD>
invoiceRequestInput.setZflx("1");//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
invoiceRequestInput.setFpdm(fpdm);//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
invoiceRequestInput.setFphm(fphm);//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
invoiceRequestInput.setHjje(hjje);//<2F>ϼƽ<CFBC><C6BD><EFBFBD>
invoiceRequestInput.setZfr(this.getUserid().toString());//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
invoiceRequestBody.setYylxdm("1");
invoiceRequestBody.setInput(invoiceRequestInput);
invoiceRequestBase.setHead(invoiceRequestHead);
invoiceRequestBase.setBody(invoiceRequestBody);
invoiceRequestBase.setComment("<EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
invoiceRequestBase.setId("FPZF");
invoiceRequestBase.setVersion("1.0");
String xml = JaxbUtil.convertToXml(invoiceRequestBase);
System.out.println(xml);
ResultPojo result = doPostPrint(xml);
// <20><><EFBFBD><EFBFBD>sid<69>õ<EFBFBD>LI_INVOICE_CONFIRM<52><4D><EFBFBD><EFBFBD>id(li_rent_invoice_info<66><6F><EFBFBD><EFBFBD>id<69>ʹ˱<CDB4>id<69><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>LI_INVOICE_CONFIRM_Detail<69><6C><EFBFBD><EFBFBD>)
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();
ghdwmc = confirm.getAttribute("ghdwmc").toString();//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
} catch (JBOException e) {
e.printStackTrace();
}
String id = UUID.randomUUID().toString().replaceAll("-", "");
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
String returncode = responseBase.getBody().getReturncode();
returnmsg = responseBase.getBody().getReturnmsg();
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
//<2F><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>LI_INVOICE_PRINT_RESULT
try {
BizObjectManager invoiceResultManger = JBOFactory.getBizObjectManager(LI_INVOICE_PRINT_RESULT.CLASS_NAME, tx);
invoiceResultManger.createQuery("UPDATE O SET invalid_apply=:returnmsg,field1=:returncode WHERE fpdm=:fpdm and fphm=:fphm ")
.setParameter("returnmsg", returnmsg).setParameter("returncode", returncode)
.setParameter("fpdm", fpdm).setParameter("fphm", fphm).executeUpdate();
} catch (JBOException e1) {
e1.printStackTrace();
}
if ("0".equals(returncode)) {
// <20>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>״̬
BizObjectManager confirmDetailManager;
BizObjectManager invoiceInvalidManager;
try {
//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>뵽li_invoice_invalid
invoiceInvalidManager = JBOFactory.getBizObjectManager(LI_INVOICE_INVALID.CLASS_NAME, tx);
BizObject invoiceInvalid = invoiceInvalidManager.newObject();
invoiceInvalid.setAttributeValue("ID", id);
invoiceInvalid.setAttributeValue("fpdm", fpdm);
invoiceInvalid.setAttributeValue("fphm", fphm);
invoiceInvalid.setAttributeValue("ghdwmc", ghdwmc);
invoiceInvalid.setAttributeValue("new_sid", newSid);
invoiceInvalid.setAttributeValue("lease_form", lease_form);
invoiceInvalid.setAttributeValue("fplxdm", fplxdm);
invoiceInvalid.setAttributeValue("field1", hjje);//hjje field1 <20>ϼƽ<CFBC><C6BD><EFBFBD>
try {
invoiceInvalid = this.initTabeUserInfo(invoiceInvalid);
} catch (Exception e) {
e.printStackTrace();
}
invoiceInvalidManager.saveObject(invoiceInvalid);
//<2F><>ȡli_rent_invoice_info<66><6F>id<69><64><EFBFBD>޸<EFBFBD><DEB8><EFBFBD>״̬
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", "9").executeUpdate();//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>״̬Ϊ9
} catch (JBOException e) {
e.printStackTrace();
}
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
}
return returnmsg;
}
/**
* ֱ<><D6B1>רƱ<D7A8><C6B1><EFBFBD>ϲ<EFBFBD>ѯ
* @param tx
* @return
*/
public String InvalidQuery(JBOTransaction tx){
Configure config = Configure.getInstance();
String appId = "";
try {
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>appid
appId = config.getConfigure("INVOICE_APPID");
} catch (Exception e) {
e.printStackTrace();
return "a3web->[INVOICE_LOCAL_PATH]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
}
String[] newSids = this.newSids.split("@");
String newSid ="";
String returnmsg = "";
String checkReturncode = "";
//ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD>е<EFBFBD>sid
for (int i = 0; i < newSids.length; i++) {
newSid = newSids[i];
//<2F><>ֹ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>ѯ li_invoice_invalid
try {
BizObject queryResutBizObject = JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LI_INVOICE_INVALID", "new_sid=:new_sid")
.setParameter("new_sid", newSid).getSingleResult(false);
checkReturncode = queryResutBizObject.getAttribute("returncode").toString();
if("0".equals(checkReturncode)){
return "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD>";
}
} catch (JBOException e1) {
e1.printStackTrace();
}
//ƴxml
InvoiceRequestBase invoiceRequestBase = new InvoiceRequestBase();
InvoiceRequestHead invoiceRequestHead = new InvoiceRequestHead();
invoiceRequestHead.setAppid(appId);
invoiceRequestHead.setSid(newSid);
invoiceRequestBase.setHead(invoiceRequestHead);
invoiceRequestBase.setComment("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
invoiceRequestBase.setId("CXJG");
invoiceRequestBase.setVersion("1.0");
String xml = JaxbUtil.convertToXml(invoiceRequestBase);
System.out.println(xml);
ResultPojo result = doPostPrint(xml);
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ص<EFBFBD>xml<6D><6C><EFBFBD><EFBFBD>
if (result.getCode() == 0) {
InvoiceRequestBase responseBase = (InvoiceRequestBase) result.getData();
String returncode = responseBase.getBody().getReturncode();
returnmsg = responseBase.getBody().getReturnmsg();
System.out.println("[OK][returncode]=>>>" + returncode);
System.out.println("[OK][returnmsg]=>>>" + returnmsg);
BizObjectManager invoiceQuereyResultManager;
try {
//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>뵽li_invoice_invalid
invoiceQuereyResultManager = JBOFactory.getBizObjectManager(LI_INVOICE_INVALID.CLASS_NAME, tx);
invoiceQuereyResultManager.createQuery("update O set returncode=:returncode,returnmsg=:returnmsg where new_sid=:new_sid and lease_form='direct_rent'")
.setParameter("returncode", returncode).setParameter("returnmsg", returnmsg)
.setParameter("new_sid", newSid).executeUpdate();
} catch (JBOException e) {
e.printStackTrace();
}
if ("0".equals(returncode)) {
} else {
return returnmsg;
}
} else {
System.out.println("[FAIL]=>>>" + result.getMsg());
return result.getMsg();
}
}
return returnmsg;
}
}