From 07225d7972b98f3d9aa052fe0ad1d87173333035 Mon Sep 17 00:00:00 2001 From: gityjf <2211675158@qq.com> Date: Wed, 24 Mar 2021 09:15:43 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=9A=E8=81=94=E7=AD=BE=E7=BA=A6=E5=BD=95?= =?UTF-8?q?=E5=85=A5=E9=A1=B5=E9=9D=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WebContent/New_Sign_index.jsp | 268 ++++++++++++++++++ WebContent/js/jquery/register.js | 26 +- .../app/allinpay/servlet/AllinpayServlet.java | 155 +++++++--- 3 files changed, 392 insertions(+), 57 deletions(-) create mode 100644 WebContent/New_Sign_index.jsp diff --git a/WebContent/New_Sign_index.jsp b/WebContent/New_Sign_index.jsp new file mode 100644 index 000000000..3c92b30ce --- /dev/null +++ b/WebContent/New_Sign_index.jsp @@ -0,0 +1,268 @@ +<%@ page language="java" contentType="text/html; charset=GBK" + pageEncoding="GBK"%> + + + + + 通联卡扣签约 + + + + + + + + + + +
+
+
+
+
    +
  • + 1 + +

    验证身份信息

    +
  • +
  • + 2 + + +

    验证短信信息

    +
  • +
  • + 3 + +

    验证成功

    +
  • +
+
+
+
+
+ *卡号: +
+ + +
+
+ +
+ 银行名称: +
+ + +
+
+ +
+ *客户姓名: +
+ + +
+
+ +
+ *手机号: +
+ + +
+
+ +
+ *证件号码: +
+ + +
+
+ + + +
+   +
+ 下一步 +
+
+
+ + + + +
+
+
+
+ + + + + diff --git a/WebContent/js/jquery/register.js b/WebContent/js/jquery/register.js index 7b13547e7..67ad1b699 100644 --- a/WebContent/js/jquery/register.js +++ b/WebContent/js/jquery/register.js @@ -120,18 +120,23 @@ var flowunid = $.trim($("#flowunid").val()); var signType = $.trim($("#signType").val()); var signSource = $.trim($("#signSource").val()); + var inputPage = $.trim($("#inputPage").val()); + var data = { "method":"allinPaySendMessages", "projectId":projectId, "flowunid":flowunid, "signSource":signSource, "signType":signType}; + if(inputPage == 'increment'){ + var accountNo = $.trim($("#accountNo").val()); + var accountName = $.trim($("#accountName").val()); + var tel = $.trim($("#tel").val()); + var idCard = $.trim($("#idCard").val()); + data = {"method":"allinPaySendMessages","signSource":signSource,"signType":signType, + "accountNo":accountNo,"accountName":accountName, + "tel":tel,"idCard":idCard,"inputPage":inputPage}; + } $.ajax({ type : "POST", url : "sign", async : true, dataType: "json", - data : { - "method":"allinPaySendMessages", - "projectId":projectId, - "flowunid":flowunid, - "signSource":signSource, - "signType":signType - }, + data : data, success : function(data) { if("success" == data.message){ alert("短信验证码发送成功,请留意您的短信提示"); @@ -154,9 +159,10 @@ } $('body').on({ blur: function(a) { - d.formValidator($(this)); + var status = d.formValidator($(this)); if (b.phone && $(this).attr("id") === "phone") d._change($(this)); - b.onBlur ? b.onBlur($(this)) : '' + b.onBlur ? b.onBlur($(this)) : ''; + if (status && $(this).attr("id") === "accountNo") cardVerify(); }, focus: function(a) { b.onFocus ? b.onFocus($(this)) : $(this).parent().find("label.focus").not(".valid").removeClass("hide").siblings(".valid").addClass("hide") && $(this).parent().find(".blank").addClass("hide") && $(this).parent().find(".close").addClass("hide") @@ -491,4 +497,4 @@ var countdown; sendVerify() }, 1000) } -} \ No newline at end of file +} diff --git a/src/com/tenwa/lease/app/allinpay/servlet/AllinpayServlet.java b/src/com/tenwa/lease/app/allinpay/servlet/AllinpayServlet.java index 304c60e68..cb3af2f27 100644 --- a/src/com/tenwa/lease/app/allinpay/servlet/AllinpayServlet.java +++ b/src/com/tenwa/lease/app/allinpay/servlet/AllinpayServlet.java @@ -10,6 +10,7 @@ import com.amarsoft.app.lc.util.DateAssistant; 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.amarsoft.awe.util.ASResultSet; import com.amarsoft.awe.util.SqlObject; import com.amarsoft.awe.util.Transaction; @@ -36,28 +37,34 @@ public class AllinpayServlet extends BaseServlet { // 通联卡扣短信发送 public String allinPaySendMessages(HttpServletRequest request, HttpServletResponse response) throws Exception { String signType = request.getParameter("signType"); + String signSource = request.getParameter("signSource"); String projectId = request.getParameter("projectId"); String flowunid = request.getParameter("flowunid"); - String signSource = request.getParameter("signSource"); - + String inputPage = request.getParameter("inputPage");//录入页面标识 Map msg = new HashMap<>(); - SignDto signObj = getSignObj(projectId, flowunid); if (signType.equals("YCcollect")) { -// return new YCPaySignServlet().ycDXNotice(request, response, getSignObj(projectId)); msg.put("message", "渠道错误"); response.getWriter().write(JSON.toJSONString(msg)); return null; } - - String phoneNumber = signObj.getPhoneNumber(); - AllinpayProperties factory = new AllinpayProperties(signSource); + String phoneNumber = null; Map xmlMap = new HashMap<>(); - xmlMap.put("phoneNumber", phoneNumber); - xmlMap.put("userName", signObj.getUserName()); - xmlMap.put("accNumber", signObj.getAccNumber()); - xmlMap.put("certId", signObj.getCertId()); + if (StringUtils.isBlank(inputPage)) { + SignDto signObj = getSignObj(projectId, flowunid); + phoneNumber = signObj.getPhoneNumber(); + xmlMap.put("phoneNumber", phoneNumber); + xmlMap.put("userName", signObj.getUserName()); + xmlMap.put("accNumber", signObj.getAccNumber()); + xmlMap.put("certId", signObj.getCertId()); + } else { + phoneNumber = request.getParameter("tel"); + xmlMap.put("phoneNumber",phoneNumber); + xmlMap.put("userName", request.getParameter("accountName")); + xmlMap.put("accNumber", request.getParameter("accountNo")); + xmlMap.put("certId", request.getParameter("idCard")); + } + AllinpayProperties factory = new AllinpayProperties(signSource); Map map = factory.allinPaySendMessages(xmlMap); - if (!"success".equals(map.get("message"))) { logger.info("系统异常或通联反馈异常:" + map.get("msg")); throw new Exception(map.get("msg")); @@ -89,24 +96,24 @@ public class AllinpayServlet extends BaseServlet { msg.put("message", ret.getERR_MSG()); } } - - SqlObject sqlObject = null; - if (isSucc) { - String sql = "UPDATE LC_CARD_TLSIGN SET CUSTOMER_LAUNCH_TIME=:customerLaunchTime WHERE PROJECT_ID=:projectId"; - sqlObject = new SqlObject(sql); - sqlObject.setParameter("customerLaunchTime", time); - sqlObject.setParameter("projectId", projectId); - } else { - String sql = "UPDATE LC_CARD_TLSIGN SET CUSTOMER_LAUNCH_TIME=:customerLaunchTime,REQUEST_CONTENT=:requestContent,RESPONSE_CONTENT=:responseContent WHERE PROJECT_ID=:projectId"; - sqlObject = new SqlObject(sql); - sqlObject.setParameter("customerLaunchTime", time); - sqlObject.setParameter("requestContent", requestContent); - sqlObject.setParameter("responseContent", responseContent); - sqlObject.setParameter("projectId", projectId); + if (StringUtils.isBlank(inputPage)) { + SqlObject sqlObject = null; + if (isSucc) { + String sql = "UPDATE LC_CARD_TLSIGN SET CUSTOMER_LAUNCH_TIME=:customerLaunchTime WHERE PROJECT_ID=:projectId"; + sqlObject = new SqlObject(sql); + sqlObject.setParameter("customerLaunchTime", time); + sqlObject.setParameter("projectId", projectId); + } else { + String sql = "UPDATE LC_CARD_TLSIGN SET CUSTOMER_LAUNCH_TIME=:customerLaunchTime,REQUEST_CONTENT=:requestContent,RESPONSE_CONTENT=:responseContent WHERE PROJECT_ID=:projectId"; + sqlObject = new SqlObject(sql); + sqlObject.setParameter("customerLaunchTime", time); + sqlObject.setParameter("requestContent", requestContent); + sqlObject.setParameter("responseContent", responseContent); + sqlObject.setParameter("projectId", projectId); + } + allinpayService.update(sqlObject); } - allinpayService.update(sqlObject); } - String message = JSON.toJSONString(msg); response.getWriter().write(message); return null; @@ -118,10 +125,10 @@ public class AllinpayServlet extends BaseServlet { String signSource = request.getParameter("signSource"); String projectId = request.getParameter("projectId"); String phoneNumber = request.getParameter("phoneNumber"); + String inputPage = request.getParameter("inputPage"); Map msg = new HashMap<>(); msg.put("message", "error"); if (signType.equals("YCcollect")) { -// return new YCPaySignServlet().ycDXSign(request, response, getSignObj(projectId)); msg.put("message", "渠道错误"); response.getWriter().write(JSON.toJSONString(msg)); return null; @@ -171,25 +178,51 @@ public class AllinpayServlet extends BaseServlet { } else { msg.put("msg", infoRsp.getERR_MSG()); } - SqlObject sqlObject = null; - if (isSucc) { - String sql = "UPDATE LC_CARD_TLSIGN SET SIGN_TIME=:signTime,AGRMNO=:agrmno,SIGN_STATUS=:signStatus WHERE PROJECT_ID=:projectId"; - sqlObject = new SqlObject(sql); - sqlObject.setParameter("signTime", time); - sqlObject.setParameter("agrmno", agrmNo); - sqlObject.setParameter("signStatus", "sign_status2"); - sqlObject.setParameter("projectId", projectId); + if (StringUtils.isNotBlank(inputPage)) { + if (isSucc) { + String bankName = request.getParameter("bankName"); + String accountNo = request.getParameter("accountNo"); + String accountName = request.getParameter("accountName"); + String idCard = request.getParameter("idCard"); + String insertSql = "insert into customer_account_input (id,bank_name,acc_number,account,certid,tel,collect_type,sign_status,inputtime,subjectid,agrmno)" + + " values (replace(uuid(),'-',''),:bankName,:accountNo,:accountName,:idCard,:tel,'TLcollect','Y',DATE_FORMAT(now(),'%Y/%m/%d %H:%i:%s'),:signSource,:agrmNo)"; + sqlObject = new SqlObject(insertSql); + sqlObject.setParameter("bankName", bankName); + sqlObject.setParameter("accountNo", accountNo); + sqlObject.setParameter("accountName", accountName); + sqlObject.setParameter("idCard", idCard); + sqlObject.setParameter("tel", phoneNumber); + sqlObject.setParameter("signSource", signSource); + sqlObject.setParameter("agrmNo", agrmNo); + Transaction Sqlca = Transaction.createTransaction(JBOFactory.createJBOTransaction()); + try { + Sqlca.executeSQL(sqlObject); + Sqlca.commit(); + } catch (Exception e) { + Sqlca.rollback(); + throw e; + } + } } else { - String sql = "UPDATE LC_CARD_TLSIGN SET SIGN_TIME=:signTime,SIGN_STATUS=:signStatus,REQUEST_CONTENT=:requestContent,RESPONSE_CONTENT=:responseContent WHERE PROJECT_ID=:projectId"; - sqlObject = new SqlObject(sql); - sqlObject.setParameter("signTime", time); - sqlObject.setParameter("signStatus", "sign_status3"); - sqlObject.setParameter("requestContent", requestContent); - sqlObject.setParameter("responseContent", responseContent); - sqlObject.setParameter("projectId", projectId); + if (isSucc) { + String sql = "UPDATE LC_CARD_TLSIGN SET SIGN_TIME=:signTime,AGRMNO=:agrmno,SIGN_STATUS=:signStatus WHERE PROJECT_ID=:projectId"; + sqlObject = new SqlObject(sql); + sqlObject.setParameter("signTime", time); + sqlObject.setParameter("agrmno", agrmNo); + sqlObject.setParameter("signStatus", "sign_status2"); + sqlObject.setParameter("projectId", projectId); + } else { + String sql = "UPDATE LC_CARD_TLSIGN SET SIGN_TIME=:signTime,SIGN_STATUS=:signStatus,REQUEST_CONTENT=:requestContent,RESPONSE_CONTENT=:responseContent WHERE PROJECT_ID=:projectId"; + sqlObject = new SqlObject(sql); + sqlObject.setParameter("signTime", time); + sqlObject.setParameter("signStatus", "sign_status3"); + sqlObject.setParameter("requestContent", requestContent); + sqlObject.setParameter("responseContent", responseContent); + sqlObject.setParameter("projectId", projectId); + } + allinpayService.update(sqlObject); } - allinpayService.update(sqlObject); } String message = JSON.toJSONString(msg); response.getWriter().write(message); @@ -205,7 +238,7 @@ public class AllinpayServlet extends BaseServlet { String projectId = request.getParameter("con"); String flowunid = request.getParameter("flowunid"); SignDto signObj = getSignObj(projectId, flowunid); - String userName = "", phoneNumber = "", accNumber = "", certId = "", collectType = "", queryId = "",signSource =""; + String userName = "", phoneNumber = "", accNumber = "", certId = "", collectType = "", queryId = "", signSource = ""; if (signObj != null) { userName = signObj.getUserName(); phoneNumber = signObj.getPhoneNumber(); @@ -301,7 +334,7 @@ public class AllinpayServlet extends BaseServlet { String collectType = res.getString("collectType"); String subjectid = res.getString("subjectid"); String db_projectId = res.getString("project_id"); - signDto = new SignDto(userName, phoneNumber, certId, accNumber, collectType, db_projectId,subjectid); + signDto = new SignDto(userName, phoneNumber, certId, accNumber, collectType, db_projectId, subjectid); } Sqlca.commit(); } catch (Exception e) { @@ -310,4 +343,32 @@ public class AllinpayServlet extends BaseServlet { } return signDto; } + + // 签约页面(录入页面) + public String allinPaySignNew(HttpServletRequest request, HttpServletResponse response) { + return "/New_Sign_index.jsp"; + } + + //卡号前六位带出银行名称 + public String obtainBankName(HttpServletRequest request, HttpServletResponse response) throws Exception { + JBOTransaction tx = null; + try { + String accountNo = request.getParameter("accountNo"); + String shortCode = accountNo.substring(0, 6); + tx = JBOFactory.createJBOTransaction(); + String querySql = "select bank_name from bank_bin_config where bank_code = '" + shortCode + "'"; + String bankName = Transaction.createTransaction(tx).getString(querySql); + HashMap map = new HashMap<>(); + map.put("status", "error"); + if (bankName != null) { + map.put("status", "success"); + map.put("bankName", bankName.split("·")[0]); + } + String message = JSON.toJSONString(map); + response.getWriter().write(message); + } finally { + if (tx != null) tx.commit(); + } + return null; + } }