package com.tenwa.customer.controller.company; import com.amarsoft.are.jbo.BizObject; import com.amarsoft.are.jbo.BizObjectManager; import com.amarsoft.are.jbo.JBOFactory; import com.amarsoft.are.jbo.JBOTransaction; import com.tenwa.comm.util.date.DateAssistant; import com.tenwa.flow.util.FlowUtil; public class NewCustomerCompanyController{ private String certType=""; private String certId=""; private String nationCode=""; private String customerType=""; private String customerName=""; private String userId=""; private String orgId=""; private String customerId=""; private String status=""; private String customernum; public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public String getCertType() { return certType; } public void setCertType(String certType) { this.certType = certType; } public String getCertId() { return certId; } public void setCertId(String certId) { this.certId = certId; } public String getNationCode() { return nationCode; } public void setNationCode(String nationCode) { this.nationCode = nationCode; } public String getCustomerType() { return customerType; } public void setCustomerType(String customerType) { this.customerType = customerType; } public String getCustomerName() { return customerName; } public void setCustomerName(String customerName) { this.customerName = customerName; } public String getUserId() { return userId; } public void setUserId(String userId) { this.userId = userId; } public String getOrgId() { return orgId; } public void setOrgId(String orgId) { this.orgId = orgId; } public String getCustomerId() { return customerId; } public void setCustomerId(String customerId) { this.customerId = customerId; } public String getCustomernum() { return customernum; } public void setCustomernum(String customernum) { this.customernum = customernum; } /** * 新增客户校验 * @param tx * @return * @throws Exception */ public String checkCustomer(JBOTransaction tx)throws Exception { BizObjectManager custManager =JBOFactory.getFactory().getManager("jbo.app.tenwa.customer.CUSTOMER_INFO"); BizObjectManager attrManager =JBOFactory.getFactory().getManager("jbo.app.tenwa.customer.CUSTOMER_ATTRIBUTION"); BizObjectManager certManager =JBOFactory.getFactory().getManager("jbo.app.tenwa.customer.CUSTOMER_CERT"); BizObjectManager typeManager =JBOFactory.getFactory().getManager("jbo.app.tenwa.customer.CUSTOMER_TYPE"); BizObjectManager financeManager =JBOFactory.getFactory().getManager("jbo.app.tenwa.customer.CUSTOMER_FINANCE"); tx.join(custManager); tx.join(attrManager); tx.join(certManager); tx.join(typeManager); BizObject cert=null; //查询证件号是否存在 if(!((certType==null||"".equals(certType))||((certId==null||"".equals(certId))))){ cert = certManager.createQuery("certid=:certid ").setParameter("certid",certId).getSingleResult(false); } String certfrom="系统"; String scustomerid=""; if(cert!=null){//证件存在 scustomerid=cert.getAttribute("customerid").toString(); certfrom=typeManager.createQuery("customerid=:customerid and isoriginal='yes'").setParameter("customerid", scustomerid) .getSingleResult(false).getAttribute("custtype").toString(); if("cust_type.cust".equals(certfrom)){ certfrom="承租人"; }else if("cust_type.assuror".equals(certfrom)){ certfrom="担保人"; }else if("cust_type.manufacturer".equals(certfrom)){ certfrom="制造商"; }else if("cust_type.vndr".equals(certfrom)){ certfrom="供应商"; }else if("cust_type.othertype".equals(certfrom)){ certfrom="其他合作方"; } return "FAIl@客户证件号码\""+certId+"\"在"+certfrom+"中已注册,不能重复注册!"; }else{ //新增客户 BizObject newCustomer = custManager.newObject(); // newCustomer.setAttributeValue("customerid", "APZLC"+serin+serinum); newCustomer.setAttributeValue("nationcode", nationCode); newCustomer.setAttributeValue("customername", customerName); newCustomer.setAttributeValue("certtype", certType); newCustomer.setAttributeValue("certid", certId); newCustomer.setAttributeValue("customertype", customerType); newCustomer.setAttributeValue("inputuserid", userId); newCustomer.setAttributeValue("inputorgid", orgId); if(customernum!="" && customernum!=null && customernum.length()>0){ newCustomer.setAttributeValue("customer_num", customernum); }else{ newCustomer.setAttributeValue("customer_num", FlowUtil.getCustomer_Number(true,"C")); } newCustomer.setAttributeValue("inputtime", DateAssistant.getTodayNow()); custManager.saveObject(newCustomer); if(!((certType==null||"".equals(certType))||((certId==null||"".equals(certId))))){ //将注册证件添加到证件表中 BizObject newCert = certManager.newObject(); newCert.setAttributeValue("customerid", newCustomer.getAttribute("customerid").getString()); newCert.setAttributeValue("issuecountry",nationCode); newCert.setAttributeValue("certtype",certType); newCert.setAttributeValue("certid",certId); newCert.setAttributeValue("status","valid"); newCert.setAttributeValue("customername",customerName); newCert.setAttributeValue("inputuserid", userId); newCert.setAttributeValue("inputorgid", orgId); newCert.setAttributeValue("inputtime", DateAssistant.getTodayNow()); certManager.saveObject(newCert); } //将客户客户类别存入customer_type BizObject newCustomerType = typeManager.newObject(); newCustomerType.setAttributeValue("customerid",newCustomer.getAttribute("customerid").getString()); newCustomerType.setAttributeValue("custtype","cust_type.cust"); /*if("status01".equals(status)){ newCustomerType.setAttributeValue("custstatus", "status01");//潜在 }else if("status02".equals(status)){ newCustomerType.setAttributeValue("custstatus", "status02");//正式 }else{ newCustomerType.setAttributeValue("custstatus", "status04");//其他默认草稿 }*/ if("status02".equals(status)){ newCustomerType.setAttributeValue("custstatus", "status02");//正式 }else{ newCustomerType.setAttributeValue("custstatus", "status04");//其他默认正式 } newCustomerType.setAttributeValue("status","valid"); newCustomerType.setAttributeValue("isoriginal","yes"); newCustomerType.setAttributeValue("inputuserid", userId); newCustomerType.setAttributeValue("inputorgid", orgId); newCustomerType.setAttributeValue("inputtime", DateAssistant.getTodayNow()); typeManager.saveObject(newCustomerType); //将客户归属表 BizObject newAttribution = attrManager.newObject(); newAttribution.setAttributeValue("customerid", newCustomer.getAttribute("customerid").getString()); newAttribution.setAttributeValue("userid",userId); newAttribution.setAttributeValue("isMain","yes"); newAttribution.setAttributeValue("status","yes"); newAttribution.setAttributeValue("inputuserid", userId); newAttribution.setAttributeValue("inputorgid", orgId); newAttribution.setAttributeValue("inputtime", DateAssistant.getTodayNow()); attrManager.saveObject(newAttribution); //将客户存客户财务编码维护 BizObject newFinance = financeManager.newObject(); newFinance.setAttributeValue("customerid", newCustomer.getAttribute("customerid").getString()); newFinance.setAttributeValue("customername", newCustomer.getAttribute("customername").getString()); financeManager.saveObject(newFinance); return "SUCCESS@客户\""+customerName+"\"新增成功@"+newCustomer.getAttribute("customerid").getString(); } } public String checkCustomerNum(JBOTransaction tx)throws Exception { BizObjectManager custManager =JBOFactory.getFactory().getManager("jbo.app.tenwa.customer.CUSTOMER_INFO"); BizObjectManager cltManager =JBOFactory.getFactory().getManager("jbo.app.tenwa.customer.CUSTOMER_LIST"); BizObject cus = custManager.createQuery("customername=:customername").setParameter("customername", customerName).getSingleResult(false); if(cus!=null){ return "客户名称已存在,请重新选择或填写!!!"; }else{ BizObject cl = cltManager.createQuery("cust_name=:custname").setParameter("custname", customerName).getSingleResult(false); if(cl!=null){ return "customernum@"+cl.getAttribute("cust_id").getString(); } } return "SUCCESS"; } }