Commit 9888c057 by 彭祥礼

融合套餐提交订单,另外有去掉了orderView实体类的get,set;改为注入

parent 40600f97
......@@ -26,11 +26,11 @@ import org.apache.http.util.EntityUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.*;
......@@ -46,34 +46,24 @@ import java.util.*;
@RestController
@RequestMapping("/dankuan")
public class DankuanController {
private static ProductMapper productMapper;
private static SchoolMapper schoolMapper;
private static AppMapper appMapper;
private static UniversityInfoMapper universityInfoMapper;
private static OrderViewMapper orderViewMapper;
private static OrderMapper orderMapper;
private static SysUserMapper sysUserMapper;
@Autowired
public DankuanController(ProductMapper productMapper, SchoolMapper schoolMapper, AppMapper appMapper,
UniversityInfoMapper universityInfoMapper, OrderViewMapper orderViewMapper,
OrderMapper orderMapper, SysUserMapper sysUserMapper) {
DankuanController.productMapper = productMapper;
DankuanController.schoolMapper = schoolMapper;
DankuanController.appMapper = appMapper;
DankuanController.universityInfoMapper = universityInfoMapper;
DankuanController.orderViewMapper = orderViewMapper;
DankuanController.orderMapper = orderMapper;
DankuanController.sysUserMapper = sysUserMapper;
}
private ProductMapper productMapper;
@Autowired
private SchoolMapper schoolMapper;
@Autowired
private UserSchoolMapper userSchoolMapper;
@Autowired
private AppMapper appMapper;
@Autowired
private UniversityInfoMapper universityInfoMapper;
@Autowired
private OrderViewMapper orderViewMapper;
@Autowired
private OrderMapper orderMapper;
@Autowired
private OrderHistoryMapper historyMapper;
@Autowired
private SysUserMapper sysUserMapper;
/**
* 查询单宽办理接口
......@@ -96,6 +86,34 @@ public class DankuanController {
return ResponseData.success(product);
}
/**
* 跟据合伙人id查找融合套餐信息
*
* @param hhrId
* @return
*/
@RequestMapping("/rhData")
public ResponseData<Map<String, Object>> getRhData(@RequestParam("hhrId") String hhrId) {
//空,直接返回
if (StringUtils.isEmpty(hhrId)) {
return ResponseData.error("请输入合伙人id");
}
UserSchool userSchool = userSchoolMapper.selectById(hhrId);
School school = schoolMapper.selectById(userSchool.getSchoolId());
String bandproductId = school.getBandproductId();
if (StringUtils.isBlank(bandproductId)) {
return ResponseData.error("敬请期待");
}
Product product = productMapper.selectById(bandproductId);
UniversityInfo universityInfo = universityInfoMapper.selectById(product.getUniversityId());
Map<String, Object> objMap = new HashMap<>();
objMap.put("product", product);
objMap.put("universityInfo", universityInfo);
return ResponseData.success(objMap);
}
@RequestMapping("/selectUniversity")
public ResponseData<UniversityInfo> selectUniversity(@RequestParam("universityId") String universityId) {
UniversityInfo universityInfo = universityInfoMapper.selectById(universityId);
......@@ -122,90 +140,90 @@ public class DankuanController {
if (orderViews.size() != 0) {
if (StringUtils.isNotBlank(orderViews.get(0).getUptranseq())) {
Wrapper<Order> wrapperO = new EntityWrapper<>();
wrapperO.eq("order_number", orderViews.get(0).getOrderseq());
wrapperO.eq("order_number", orderViews.get(0).getOrderSeq());
wrapperO.eq("user_type", "5");
List<Order> orders = orderMapper.selectList(wrapperO);
if (orders.size() == 0) {
return ResponseData.error("当前身份证号订单异常,请联系客服!");
}
orderV.setOrderseq(orders.get(0).getId());
orderV.setOrderSeq(orders.get(0).getId());
orderV.setUptranseq(orderViews.get(0).getUptranseq());
return ResponseData.error(orderV, "当前身份证号订单已存在并完成支付!");
}
if ("0".equals(orderViews.get(0).getWeborderamount())) {
if ("0".equals(orderViews.get(0).getWebOrderAmount())) {
Wrapper<Order> wrapperO = new EntityWrapper<>();
wrapperO.eq("order_number", orderViews.get(0).getOrderseq());
wrapperO.eq("order_number", orderViews.get(0).getOrderSeq());
wrapperO.eq("user_type", "5");
List<Order> orders = orderMapper.selectList(wrapperO);
if (orders.size() == 0) {
return ResponseData.error("当前身份证号订单异常,请联系客服!");
}
orderV.setOrderseq(orders.get(0).getId());
orderV.setOrderSeq(orders.get(0).getId());
orderV.setUptranseq(orderViews.get(0).getOrderId().toString());
return ResponseData.error(orderV, "当前身份证号订单已存在!");
}
orderV.setOrderId(orderViews.get(0).getOrderId());
orderV.setOrderseq(orderViews.get(0).getOrderseq());
orderV.setOrderSeq(orderViews.get(0).getOrderSeq());
return ResponseData.error(orderV, "当前身份证号已有订单存在!");
}
String orderSeq = "YRYM" + ProduceIdUtil.getId();
Product product = productMapper.selectById(productId);
OrderView orderView = new OrderView();
orderView.setOrdername(orderName);
orderView.setOrderphone(orderPhone);
orderView.setOrdernumber(orderNumber);
orderView.setOrderName(orderName);
orderView.setOrderPhone(orderPhone);
orderView.setOrderNumber(orderNumber);
orderView.setOrderCustomerStudentId(orderCustomerStudentId);
orderView.setOrderCustomerAccount(orderCustomerAccount);
orderView.setOrderCustomerPwd(orderCustomerPwd);
orderView.setOrderSetMeal(orderSetMeal);
orderView.setOrderseq(orderSeq);
orderView.setProductname(product.getProductTitle());
orderView.setOrderdate(new Date());
orderView.setOrderSeq(orderSeq);
orderView.setProductName(product.getProductTitle());
orderView.setOrderDate(new Date());
orderView.setOrderUniversityName(product.getProductUniversity());
orderView.setStatus(OrderStatus.NOTPAID.getId());
orderView.setOrderRegion(product.getProductRegion());
orderView.setPaytype("1");
orderView.setWeborderamount(webOrderAmount);
orderView.setPayType("1");
orderView.setWebOrderAmount(webOrderAmount);
if (webOrderAmount.equals("0")) {
orderView.setIpay("0");
orderView.setIPay("0");
} else {
orderView.setIpay("1");
orderView.setIPay("1");
}
orderView.setCustomerid("xyzxyql");
orderView.setCustomerId("xyzxyql");
orderView.setOrderCustomerType("学生");
Integer insert = orderViewMapper.insert(orderView);
if(webOrderAmount.equals("0")){
if (webOrderAmount.equals("0")) {
ResponseData<OrderView> res = createOrder(orderView, partner, orderSeq);
if(!res.isSuccess()){
if (!res.isSuccess()) {
return res;
}
}
if (insert == 1) {
orderV.setOrderId(orderView.getOrderId());
orderV.setOrderseq(orderView.getOrderseq());
orderV.setOrderSeq(orderView.getOrderSeq());
return ResponseData.success(orderV, "订单提交完成!");
}
return ResponseData.error("提交失败!");
}
public static ResponseData<OrderView> createOrder(OrderView orderView, String userId, String orderseq) throws Exception {
public ResponseData<OrderView> createOrder(OrderView orderView, String userId, String orderseq) throws Exception {
String uuid = UUID.randomUUID().toString();
String id = uuid.split("-")[0] + uuid.split("-")[1];
Order order = new Order();
order.setId(id);
order.setOrderNumber(orderView.getOrderseq());
order.setOrderNumber(orderView.getOrderSeq());
order.setOrderStatus(OrderStatus.NOTPAID.getName());
order.setHehuorenId(userId);
order.setCustomerName(orderView.getOrdername());
order.setContactNumber(orderView.getOrderphone());
order.setIdCard(orderView.getOrdernumber());
order.setCustomerName(orderView.getOrderName());
order.setContactNumber(orderView.getOrderPhone());
order.setIdCard(orderView.getOrderNumber());
order.setCreateTime(new Date());
order.setUserType("5");
order.setNetNumber(orderView.getOrderCustomerAccount());
order.setNetPassword(orderView.getOrderCustomerPwd());
order.setUserSchool(orderView.getOrderUniversityName());
order.setExpenses(orderView.getOrderSetMeal());
order.setKdOrderId(orderView.getOrderseq());
order.setKdOrderId(orderView.getOrderSeq());
SysUser sysUser = sysUserMapper.selectById(userId);
order.setHehuorenPhone(sysUser.getPhone());
String schoolId = appMapper.selectSchoolId(userId);
......@@ -249,7 +267,7 @@ public class DankuanController {
JSONArray saleList = saleJsonObject.getJSONArray("list");
JSONObject itmeJson = JSONObject.parseObject(saleList.get(0).toString());
saleId = itmeJson.getString("saleId");*/
JSONObject submitOrderJsonObject = getOrderInfo(schoolMap, orderView, currentTimeStr,productId,saleId,"","","","" );
JSONObject submitOrderJsonObject = getOrderInfo(schoolMap, orderView, currentTimeStr, productId, saleId, "", "", "", "");
String orderNum = (String) submitOrderJsonObject.get("orderNumber");
if (StringUtils.isNotBlank(orderNum)) {
Wrapper<OrderView> wrapper = new EntityWrapper<>();
......@@ -262,15 +280,761 @@ public class DankuanController {
order.setOrderId(orderNum);
order.setThStatus(submitOrderJsonObject.get("status").toString());
orderMapper.insert(order);
appMapper.inserOrderHis(id, "待审核!", new Date(), orderView.getOrdername());
appMapper.inserOrderHis(id, "待审核!", new Date(), orderView.getOrderName());
} else {
return ResponseData.error("智能平台订单创建失败,如有疑问请联系客服!");
}
return ResponseData.success(orderView,"智能平台订单创建成功");
return ResponseData.success(orderView, "智能平台订单创建成功");
}
/**
* 支付平台异步更新后台地址,主要对订单进去保存和提交订单到智能平台上
*/
@RequestMapping(value = "createRongHeOrder", method = RequestMethod.POST)
@ResponseBody
public ResponseData<OrderView> createRongHeOrder(
@RequestParam("orderName") String orderName, @RequestParam("orderPhone") String orderPhone,
@RequestParam("orderNumber") String orderNumber, @RequestParam("orderCustomerStudentId") String orderCustomerStudentId,
@RequestParam("orderCustomerAccount") String orderCustomerAccount, @RequestParam("orderCustomerPwd") String orderCustomerPwd,
@RequestParam("orderSetMeal") String orderSetMeal, @RequestParam("productId") String productId,
@RequestParam("webOrderAmount") String webOrderAmount, @RequestParam("partner") String partner,
@RequestParam("banLiPhone") String banLiPhone) throws Exception {
if (!IDCardUtil.IDCardValidate(orderNumber)) {
return ResponseData.error("您的身份证输入有误,请重新输入!");
}
if (orderPhone.length() != 11) {
return ResponseData.error("联系号码有误,请重新输入");
}
Wrapper<OrderView> orderViewWrapper = new EntityWrapper<>();
orderViewWrapper.eq(StringUtils.isNotBlank(orderNumber), "orderNumber", orderNumber);
orderViewWrapper.ne("status", OrderStatus.INVALID.getId());
List<OrderView> orderViews = orderViewMapper.selectList(orderViewWrapper);
OrderView orderV = new OrderView();
if (orderViews.size() != 0) {
if (StringUtils.isNotBlank(orderViews.get(0).getUptranseq())) {
Wrapper<Order> wrapperO = new EntityWrapper<>();
wrapperO.eq("order_number", orderViews.get(0).getOrderSeq());
wrapperO.eq("user_type", "5");
List<Order> orders = orderMapper.selectList(wrapperO);
if (orders.size() == 0) {
return ResponseData.error("当前身份证号订单异常,请联系客服!");
}
orderV.setOrderSeq(orders.get(0).getId());
orderV.setUptranseq(orderViews.get(0).getUptranseq());
return ResponseData.error(orderV, "当前身份证号订单已存在并完成支付!");
}
if ("0".equals(orderViews.get(0).getWebOrderAmount())) {
Wrapper<Order> wrapperO = new EntityWrapper<>();
wrapperO.eq("order_number", orderViews.get(0).getOrderSeq());
wrapperO.eq("user_type", "5");
List<Order> orders = orderMapper.selectList(wrapperO);
if (orders.size() == 0) {
return ResponseData.error("当前身份证号订单异常,请联系客服!");
}
orderV.setOrderSeq(orders.get(0).getId());
orderV.setUptranseq(orderViews.get(0).getOrderId().toString());
return ResponseData.error(orderV, "当前身份证号订单已存在!");
}
orderV.setOrderId(orderViews.get(0).getOrderId());
orderV.setOrderSeq(orderViews.get(0).getOrderSeq());
return ResponseData.error(orderV, "当前身份证号已有订单存在!");
}
String orderSeq = "YRYM" + ProduceIdUtil.getId();
Product product = productMapper.selectById(productId);
OrderView orderView = new OrderView();
orderView.setOrderSeq(orderSeq); // 订单号码
orderView.setOrderName(orderName); // 姓名
orderView.setOrderPhone(orderPhone); // 联系电话
orderView.setOrderNumber(orderNumber); // 身份证号码
orderView.setOrderCustomerStudentId(orderCustomerStudentId);// 学生证号
orderView.setOrderCustomerAccount(orderCustomerAccount);// 多媒体账号
orderView.setOrderCustomerPwd(orderCustomerPwd);// 多媒体密码
orderView.setOrderSetMeal(orderSetMeal);// 套餐
orderView.setOrderSeq(orderSeq);
orderView.setProductName(product.getProductTitle());// 产品名称
orderView.setOrderDate(new Date()); // 提交时间
orderView.setOrderUniversityName(product.getProductUniversity()); // 学校
orderView.setStatus(OrderStatus.NOTPAID.getId());
orderView.setOrderRegion(product.getProductRegion()); // 区域
orderView.setPayType("1"); // 支付方式
orderView.setWebOrderAmount(webOrderAmount); // 产品价格
if (webOrderAmount.equals("0")) {
orderView.setIPay("0"); // 支付平台
} else {
orderView.setIPay("1"); // 支付平台
}
orderView.setCustomerId("xyzxyql"); // 接入商
orderView.setOrderCustomerType("学生"); // 用户类别
Integer insert = orderViewMapper.insert(orderView);
if (webOrderAmount.equals("0")) {
ResponseData<OrderView> res = null;
res = getOrderViewZeroResponseData(productId, partner, banLiPhone, orderSeq, orderView);
if (!res.isSuccess()) {
return res;
}
}else{
//res = getOrderViewResponseData(productId, partner, banLiPhone, orderV, orderSeq, orderView, insert);
}
if (insert == 1) {
orderV.setOrderId(orderView.getOrderId());
orderV.setOrderSeq(orderSeq);
return ResponseData.success(orderV, "订单提交完成!");
}
return ResponseData.error("提交失败!");
}
private ResponseData<OrderView> getOrderViewZeroResponseData(@RequestParam("productId") String productId, @RequestParam("partner") String partner, @RequestParam("banLiPhone") String banLiPhone, String orderSeq, OrderView orderView) throws Exception {
/**/
Map<String, Object> schoolMap = null;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String currentTimeStr = simpleDateFormat.format(new Date());
// 根据订单号,获取该订单信息
// 根据学校名称,获取该学校信息
Product product = productMapper.selectById(productId);
Wrapper<UniversityInfo> uiWrapper = new EntityWrapper<>();
uiWrapper.eq("order_university_name",orderView.getOrderUniversityName());
uiWrapper.eq("universityRegion",product.getProductRegion());
List<Map<String, Object>> list1 = universityInfoMapper.selectMaps(uiWrapper);
schoolMap = list1.get(0);
if (orderView.getOrderUniversityName().equals("广州华立科技职业学院")) {
if ("中国电信校园高速宽带".equals(product.getProductTitle())) {
schoolMap.put("university_package_number", "56119011");
} else {
schoolMap.put("university_package_number", "56119015");
}
} else if (orderView.getOrderUniversityName().equals("广州大学华软软件学院")) {
if ("中国电信校园高速宽带".equals(product.getProductTitle())) {
schoolMap.put("university_package_number", "16001253");
} else {
schoolMap.put("university_package_number", "16001405");
}
}
//String productId = "1329"; // 产品id
//单宽带
String saleId1 = "4907";
//提速包
String saleId2 = null;
String productName = "校园融合套餐";
log.info("----------根据返回参数获取产品ID:" + productId);
String saleId = null; // 销售id
JSONObject saleJsonObject = getSaleId(productId, currentTimeStr); // 获取销售ID
log.info("----------调用智能平台的获取销售品接口返回值:" + saleJsonObject);
System.out.println("----111--" + (saleJsonObject.toString().indexOf("list") == -1));
if (saleJsonObject.toString().indexOf("list") == -1) {
return ResponseData.error("没有找到销售品接口返回值");
}
String expenses = "";
if (schoolMap.get("identifying") != null) {
expenses = schoolMap.get("identifying").toString();
}
JSONArray saleList = saleJsonObject.getJSONArray("list");
log.info("----saleList---:" + saleList);
for (int i = 0; i < saleList.size(); i++) {
JSONObject itmeJson = saleList.getJSONObject(i);
// 判断获取的全部产品与订单产品符合的拿取对应的ID
if (itmeJson.getString("propertyName").indexOf("提速包") != -1) {
if (itmeJson.getString("name").equals(expenses)) {
// 获取对应产品ID
saleId2 = itmeJson.getString("saleId");
}
} else if (itmeJson.getString("propertyName").indexOf("增值业务") != -1) {
if (itmeJson.getString("name").equals(expenses)) {
// 获取对应产品ID
saleId2 = itmeJson.getString("saleId");
}
}
}
log.info("----saleId1---prices---:" + saleId1 + "------" + saleId2);
// 3、提交订单到智能平台
JSONObject submitOrderJsonObject = getOrderRHInfo(schoolMap,orderView, currentTimeStr, productId, saleId1, saleId2,orderSeq,"", "", "");
log.info("----------调用融合接口(提交订单至智能平台)并返回参数信息---status:" + submitOrderJsonObject.get("status") + " msg:" + submitOrderJsonObject.get("msg") + " orderNum:" + submitOrderJsonObject.get("orderNumber"));
/* 4、查询智能订单是否存在 */
String orderNum = (String) submitOrderJsonObject.get("orderNumber");
if (StringUtils.isNotBlank(orderNum)) {
Wrapper<Order> orderWrapper = new EntityWrapper<>();
orderWrapper.eq("order_number",orderNum);
List<Order> list = orderMapper.selectList(orderWrapper);
log.info("----------调用查询智能订单接口并返回参数信息:");
/* 5、插入数据到数据库 */
saveOrderInfo(orderView,partner,orderSeq,banLiPhone);
}
return ResponseData.error("订单提交完成");
}
private ResponseData<OrderView> getOrderViewResponseData(@RequestParam("productId") String productId, @RequestParam("partner") String partner, @RequestParam("banLiPhone") String banLiPhone, OrderView orderV, String orderSeq, OrderView orderView, Integer insert) throws Exception {
Map<String, Object> schoolMap = null;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
String currentTimeStr = simpleDateFormat.format(new Date());
/*// 根据订单号,获取该订单信息
updatePaymentOrderInfo(request, ORDERSEQ, UPTRANSEQ, ORDERAMOUNT, ORDERREQTRANSEQ);
// 根据学校名称,获取该学校信息
List<Map<String, Object>> list1 = universityService.QueryUniversity((String) orderMap.get("order_university_name"), (String) orderMap.get("order_region"));*/
Product product = productMapper.selectById(productId);
Wrapper<UniversityInfo> uiWrapper = new EntityWrapper<>();
uiWrapper.eq("order_university_name",orderView.getOrderUniversityName());
uiWrapper.eq("universityRegion",product.getProductRegion());
List<Map<String, Object>> list1 = universityInfoMapper.selectMaps(uiWrapper);
schoolMap = list1.get(0);
if (orderView.getOrderUniversityName().equals("广州华立科技职业学院")) {
if ("中国电信校园高速宽带".equals(product.getProductTitle())) {
schoolMap.put("university_package_number", "56119011");
} else {
schoolMap.put("university_package_number", "56119015");
}
} else if (orderView.getOrderUniversityName().equals("广州大学华软软件学院")) {
if ("中国电信校园高速宽带".equals(product.getProductTitle())) {
schoolMap.put("university_package_number", "16001253");
} else {
schoolMap.put("university_package_number", "16001405");
}
}
if (orderView.getOrderseqThd() == null) {
//String productId = "1329"; // 产品id
//单宽带
String saleId1 = null;
//提速包
String saleId2 = null;
String productName = "校园融合套餐";
log.info("----------根据返回参数获取产品ID:" + productId);
String saleId = null; // 销售id
JSONObject saleJsonObject = getSaleId(productId, currentTimeStr); // 获取销售ID
log.info("----------调用智能平台的获取销售品接口返回值:" + saleJsonObject);
log.info("----111--" + (saleJsonObject.toString().indexOf("list") == -1));
if (saleJsonObject.toString().indexOf("list") == -1) {
return ResponseData.error("无销售品接口返回值");
}
String prices = orderView.getWebOrderAmount();
prices = prices.replace("元", "") + ".000";
String expenses = "";
if (schoolMap.get("identifying") != null) {
expenses = schoolMap.get("identifying").toString();
}
log.info("----expenses---prices---:" + expenses + "------" + prices);
JSONArray saleList = saleJsonObject.getJSONArray("list");
log.info("----saleList---:" + saleList);
for (int i = 0; i < saleList.size(); i++) {
JSONObject itmeJson = saleList.getJSONObject(i);
// 判断获取的全部产品与订单产品符合的拿取对应的ID
if (itmeJson.getString("propertyName").indexOf("提速包") != -1) {
if (itmeJson.getString("name").equals(expenses)) {
// 获取对应产品ID
saleId2 = itmeJson.getString("saleId");
}
} else if (itmeJson.getString("propertyName").indexOf("增值业务") != -1) {
if (itmeJson.getString("name").equals(expenses)) {
// 获取对应产品ID
saleId2 = itmeJson.getString("saleId");
}
}
}
log.info("----saleId1---prices---:" + saleId1 + "------" + saleId2);
// 3、提交订单到智能平台
JSONObject submitOrderJsonObject = getOrderRHInfo(schoolMap, orderView, currentTimeStr, productId, saleId1, saleId2, orderSeq, "", "", "");
log.info("----------调用融合接口(提交订单至智能平台)并返回参数信息---status:" + submitOrderJsonObject.get("status") + " msg:" + submitOrderJsonObject.get("msg") + " orderNum:" + submitOrderJsonObject.get("orderNumber"));
/* 4、查询智能订单是否存在 */
String orderNum = (String) submitOrderJsonObject.get("orderNumber");
if (StringUtils.isNotBlank(orderNum)) {
Wrapper<Order> orderWrapper = new EntityWrapper<>();
orderWrapper.eq("order_number", orderNum);
List<Order> list = orderMapper.selectList(orderWrapper);
/* 5、插入数据到数据库 */
saveOrderInfo(orderView, partner, orderSeq, banLiPhone);
log.info("----------将智能订单状态更新至数据库");
}
if (insert == 1) {
orderV.setOrderId(orderView.getOrderId());
orderV.setOrderSeq(orderSeq);
return ResponseData.success(orderV, "订单提交完成!");
}
return ResponseData.error("订单提交失败");
}else {
log.info("---融合支付接口推送---");
return ResponseData.error("融合支付接口已存在该订单");
}
}
/**
* 保存订单到数据库
*/
private void saveOrderInfo(OrderView orderView,String partner,String orderSeq,String banLiPhone) throws Exception {
log.info("支付操作后保存数据到数据库");
UserSchool userSchool = userSchoolMapper.selectById(partner);
School school = schoolMapper.selectById(userSchool.getSchoolId());
SysUser sysUser = sysUserMapper.selectById(userSchool.getUserId());
if (orderView.getStatus().equals("1")) {
Order order = new Order();
String uuid = UUID.randomUUID().toString().replaceAll("-", "");
uuid = uuid.substring(1, 12);
SimpleDateFormat df2 = new SimpleDateFormat("yyyyMMdd");//设置日期格式
order.setId(uuid);
order.setOrderNumber("YRYM" + ProduceIdUtil.getId());
order.setNetNumber(orderView.getOrderCustomerAccount());
order.setNetPassword(orderView.getOrderCustomerPwd());
order.setUserSchool(orderView.getOrderUniversityName());
order.setHehuorenId(partner);
order.setKdOrderId(orderSeq);
order.setUserType("3");
order.setBusinessNumber(banLiPhone);
order.setCustomerName(orderView.getOrderName());
order.setOrderStatus("审核中");
order.setContactNumber(orderView.getOrderPhone());
order.setIdCard(orderView.getOrderNumber());
order.setExpenses(orderView.getExpenses());
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
order.setCreateTime(new Date());
if (!school.equals(null)) {
order.setHehuorenArea(school.getSubName());
order.setHehuorenSchool(school.getSchoolName());
order.setLzgh(school.getLzgh());
order.setHehuorenName(sysUser.getName());
order.setHehuorenPhone(sysUser.getPhone());
order.setSupervisorName(sysUser.getName());
}
orderMapper.insert(order);
OrderHistory history = new OrderHistory();
history.setOrderId(uuid);
history.setCreateDate(new Date());
history.setStatus("资料已提交");
historyMapper.insert(history);
} else if (orderView.getStatus().equals("2")) {
} else {
Order order = new Order();
String uuid = UUID.randomUUID().toString().replaceAll("-", "");
uuid = uuid.substring(1, 12);
order.setId(uuid);
order.setOrderNumber("YRYM" + ProduceIdUtil.getId());
order.setNetNumber(orderView.getOrderCustomerAccount());
order.setNetPassword(orderView.getOrderCustomerPwd());
order.setUserSchool(orderView.getOrderUniversityName());
order.setHehuorenId(partner);
order.setKdOrderId(orderSeq);
order.setUserType("5");
order.setBusinessNumber("");
order.setCustomerName(orderView.getOrderName());
order.setOrderStatus("审核中");
order.setContactNumber(orderView.getOrderPhone());
order.setIdCard(orderView.getOrderNumber());
order.setExpenses("");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
order.setCreateTime(sdf.parse(new Date().toString()));
if (!school.equals(null)) {
order.setHehuorenArea(school.getSubName());
order.setHehuorenSchool(school.getSchoolName());
order.setLzgh(school.getLzgh());
order.setHehuorenName(sysUser.getName());
order.setHehuorenPhone(sysUser.getPhone());
order.setSupervisorName(sysUser.getName());
}
orderMapper.insert(order);
OrderHistory history = new OrderHistory();
history.setOrderId(uuid);
history.setCreateDate(new Date());
history.setStatus("资料已提交");
historyMapper.insert(history);
}
}
/**
* @Description:提交融合
* @param schoolMap
* @param orderView
* @param currentTimeStr
* @param productId
* @param saleId1
* @param saleId2
* @param ORDERSEQ
* @param UPTRANSEQ
* @param ORDERAMOUNT
* @param ORDERREQTRANSEQ
* @return
* @throws Exception
*/
private JSONObject getOrderRHInfo(Map<String, Object> schoolMap, OrderView orderView, String currentTimeStr, String productId, String saleId1, String saleId2
, String ORDERSEQ, String UPTRANSEQ, String ORDERAMOUNT, String ORDERREQTRANSEQ) throws Exception {
List<NameValuePair> qParams = new ArrayList<NameValuePair>();
HttpHost proxy = new HttpHost("172.18.101.170", 3128);
RequestConfig defaultRequestConfig = RequestConfig.custom().setSocketTimeout(500000)
.setConnectTimeout(500000).setConnectionRequestTimeout(500000).setProxy(proxy).build();
CloseableHttpClient httpclient = HttpClients.custom().setDefaultRequestConfig(defaultRequestConfig)
.build();
HttpEntity entity = null;
HttpPost httpPost = new HttpPost(Constant.ZHANGSHIURL + "create-order.action");
RequestConfig requestConfig = RequestConfig.copy(defaultRequestConfig).build();
httpPost.setConfig(requestConfig);
Map<String, String> signMap = new HashMap<String, String>();
qParams.add(new BasicNameValuePair("service", "order.combined.create"));// api标识,必填且唯一
signMap.put("service", "order.combined.create");
qParams.add(new BasicNameValuePair("userName", Constant.ZHENGSHIAUCCON));//用户名,必填
signMap.put("userName", Constant.ZHENGSHIAUCCON);
qParams.add(new BasicNameValuePair("timeStamp", currentTimeStr));//时间戳(YYYYMMDDHHMMSS) ,必填
signMap.put("timeStamp", currentTimeStr);
qParams.add(new BasicNameValuePair("productCategory", "融合产品"));// 业务类型,必填且唯一
signMap.put("productCategory", "融合产品");
qParams.add(new BasicNameValuePair("transactType", "新宽旧移"));// 办理类型,必填[新宽新移][新宽旧移][旧宽新移][旧宽旧移]
signMap.put("transactType", "新宽旧移");
/* */
qParams.add(new BasicNameValuePair("ctNumber", orderView.getOrderPhone()));// 电信号码,办理类型,若选择[新宽旧移]或[旧宽旧移],此项必填
signMap.put("ctNumber", orderView.getOrderPhone());
/* */
qParams.add(new BasicNameValuePair("addressProvince", "广东省"));// 报装地址-省 办理类型,若选择[新宽新移][新宽旧移],此项必填
signMap.put("addressProvince", "广东省");
qParams.add(new BasicNameValuePair("addressCity", "广州市"));// 报装地址-市 办理类型,若选择[新宽新移][新宽旧移],此项必填
signMap.put("addressCity", "广州市");
String addressDistrict = null;
String address = null;
String addressID = null;
String landId = null;
String universityTerminalType = null;
String universityUserCategory = null;
String universityUserType = null;
String universityMonthlyRentType = null;
String universityChargingAttribute = null;
String universityOnlineNumber = null;
String universityOneManTerminal = null;
String universityIsFtthHub = null;
String universityExteriorLines = null;
String universityChargeMode = null;
if (BeanUtil.isNotBlank(schoolMap)) {
addressDistrict = (String) schoolMap.get("university_region");
address = (String) schoolMap.get("university_installed_address");
addressID = (String) schoolMap.get("university_installed_address_ID");
landId = (String) schoolMap.get("university_package_number");
universityTerminalType = (String) schoolMap.get("university_terminal_type");
universityUserCategory = (String) schoolMap.get("university_user_category");
universityUserType = (String) schoolMap.get("university_user_type");
universityMonthlyRentType = (String) schoolMap.get("university_monthly_rent_type");
universityChargingAttribute = (String) schoolMap.get("university_charging_attribute");
universityOnlineNumber = (String) schoolMap.get("university_online_number");
universityOneManTerminal = (String) schoolMap.get("university_one_man_terminal");
universityIsFtthHub = (String) schoolMap.get("university_is_ftth_hub");
universityExteriorLines = (String) schoolMap.get("university_exterior_lines");
universityChargeMode = (String) schoolMap.get("university_charge_mode");
} else {
addressDistrict = "测试区";
address = "广东省广州市测试区测试街道1号";
addressID = "00000";
landId = "20180621";
universityTerminalType = "测试";
universityUserCategory = "测试";
universityUserType = "测试";
universityMonthlyRentType = "测试";
universityChargingAttribute = "测试";
universityOnlineNumber = "0";
universityOneManTerminal = "否";
universityIsFtthHub = "否";
universityExteriorLines = "测试";
universityChargeMode = "测试";
}
qParams.add(new BasicNameValuePair("addressDistrict", addressDistrict));// 报装地址-区 办理类型,若选择[新宽新移][新宽旧移],此项必填
signMap.put("addressDistrict", addressDistrict);
qParams.add(new BasicNameValuePair("address", address));// 报装地址-详细地址 办理类型,若选择[新宽新移][新宽旧移],此项必填
signMap.put("address", address);
qParams.add(new BasicNameValuePair("addressId", addressID));// 报装地址-地址ID,选填
signMap.put("addressId", addressID);
qParams.add(new BasicNameValuePair("govEntCustomer", "0"));//是否政企客户下单 0:否 1:是,必填
signMap.put("govEntCustomer", "0");
qParams.add(new BasicNameValuePair("agentName", ""));//若是政企客户下单,代办人姓名,必填
signMap.put("agentName", "");
qParams.add(new BasicNameValuePair("agentCardNum", ""));//若是政企客户下单,代办人身份证号码,必填
signMap.put("agentCardNum", "");
qParams.add(new BasicNameValuePair("customerName", orderView.getOrderName()));// 客户姓名,必填
signMap.put("customerName", orderView.getOrderName());
qParams.add(new BasicNameValuePair("customerPhone", orderView.getOrderPhone()));// 客户电话|代办人电话,必填
signMap.put("customerPhone", orderView.getOrderPhone());
qParams.add(new BasicNameValuePair("customerCardType", "身份证"));// 证件类型,必填且只能为身份证
signMap.put("customerCardType", "身份证");
qParams.add(new BasicNameValuePair("customerCardNum", orderView.getOrderNumber()));// 证件号码,必填
signMap.put("customerCardNum", orderView.getOrderNumber());
qParams.add(new BasicNameValuePair("landId", landId));// 揽装工号,必填
signMap.put("landId", landId);
qParams.add(new BasicNameValuePair("comarketingLanId", ""));// 协销工号,选填
signMap.put("comarketingLanId", "");
qParams.add(new BasicNameValuePair("groupComarketingLanId", ""));//集团协销工号,选填
signMap.put("groupComarketingLanId", "");
qParams.add(new BasicNameValuePair("orderOutNum", ORDERSEQ));//外部订单编号,选填!;
//通过API接口下单,必须传入一个外部接入商的订单编号,该编号与智能营销系统编号一一对应
signMap.put("orderOutNum", ORDERSEQ);
qParams.add(new BasicNameValuePair("orderSource", "校园宽带自助受理"));// 订单来源 ,选填
signMap.put("orderSource", "校园宽带自助受理");
qParams.add(new BasicNameValuePair("orderSourceNum", ORDERSEQ));// 订单来源单号,选填;与订单来源对应,用于业务上记录订单的来源订单编号
signMap.put("orderSourceNum", ORDERSEQ);
qParams.add(new BasicNameValuePair("salePointCode", ""));// 销售点编码,选填
signMap.put("salePointCode", "");
qParams.add(new BasicNameValuePair("personCode", ""));// 人员编码,必填
signMap.put("personCode", "");
qParams.add(new BasicNameValuePair("deliveryProvince", "广东省"));// 配送地址-省,必填
signMap.put("deliveryProvince", "广东省");
qParams.add(new BasicNameValuePair("deliveryCity", "广州市"));// 配送地址-市,必填
signMap.put("deliveryCity", "广州市");
qParams.add(new BasicNameValuePair("deliveryDistrict", addressDistrict));// 配送地址-区,必填
signMap.put("deliveryDistrict", addressDistrict);
qParams.add(new BasicNameValuePair("deliveryAddress", address));// 配送地址-详细地址,必填
signMap.put("deliveryAddress", address);
qParams.add(new BasicNameValuePair("deliveryContact", orderView.getOrderName()));// 联系人,必填
signMap.put("deliveryContact", orderView.getOrderNumber());
qParams.add(new BasicNameValuePair("deliveryContactPhone", orderView.getOrderName()));// 联系电话,必填
signMap.put("deliveryContactPhone", orderView.getOrderName());
qParams.add(new BasicNameValuePair("deliveryContactPhone2", ""));// 联系电话2,选填
signMap.put("deliveryContactPhone2", "");
qParams.add(new BasicNameValuePair("invoiced", "0"));// 是否需要发票,必填
// 0:不需要;1:一次性发票;2:分月发票
signMap.put("invoiced", "0");
qParams.add(new BasicNameValuePair("invoiceTitle", ""));// 发票抬头,若需要发票必填
signMap.put("invoiceTitle", "");
qParams.add(new BasicNameValuePair("invoiceDeliveryAddress", ""));// 电子邮箱,若需要发票必填
signMap.put("invoiceDeliveryAddress", "");
qParams.add(new BasicNameValuePair("deliveryType", "不需配送"));// 发货类型,必填,填写[同德仓发货][不需配送][代理商自行发货]
signMap.put("deliveryType", "不需配送");
qParams.add(new BasicNameValuePair("deliveryCompany", ""));// 配送公司,选填,同德仓发货必填;填写只能填顺丰速运或者如风达或者京东快递或者EMS
signMap.put("deliveryCompany", "");
qParams.add(new BasicNameValuePair("gift", ""));// 礼品,选填,请通过礼品列表接口获取
signMap.put("gift", "");
qParams.add(new BasicNameValuePair("giftNum", ""));// 礼品数量,选填,若礼品填写则必填且为正整数
signMap.put("giftNum", "");
qParams.add(new BasicNameValuePair("acceptPriority", "7"));//受理优先级 为0-10范围内的整数! 选填
signMap.put("acceptPriority", "7");
List<Map<String, Object>> productList = new ArrayList<Map<String, Object>>();// 产品信息
List<Map<String, Object>> inPropertyList = new ArrayList<Map<String, Object>>();// 产品属性
List<Map<String, Object>> paymentList = new ArrayList<Map<String, Object>>();// 销售品信息(费用项)
List<Map<String, Object>> addPropertyList = new ArrayList<Map<String, Object>>();// 自定义产品属性
// 下单产品
Map<String, Object> productMap = new HashMap<String, Object>();
// 产品(一个订单只能有一种产品且数量为1)
productMap.put("productId", productId);// 产品id,必填,请通过产品列表接口获取
// 产品都必须传一个产品对应的唯一的收费项
Map<String, Object> paymentListMap = new HashMap<String, Object>();
paymentListMap.put("id", "4455");// 收费项ID,选填;请通过销售品列表接口获取,若不填表示终端补收款
paymentListMap.put("saleName", "校园融合套餐");// 销售品名称,选填,若id不填写此项必填写,且只能为终端补收款
paymentListMap.put("payType", "2");// 缴费方式,
//必填(例:payType:3)1:银行划账2:现金支付3:代理商打款4:穗易付6:支付宝划扣7:货到付款8:装维上门收取9:第三方托收11:代理商代扣
//单宽带
Map<String, Object> paymentListMap2 = new HashMap<String, Object>();
paymentListMap2.put("id", saleId1);// 收费项ID,选填;请通过销售品列表接口获取,若不填表示终端补收款
paymentListMap2.put("saleName", "");// 销售品名称,选填,若id不填写此项必填写,且只能为终端补收款
paymentListMap2.put("payType", "2");// 缴费方式,必填(例:payType:3)3:代理商打款4:穗易付7:货到付款
paymentListMap2.put("payAmount", ORDERAMOUNT);// 打款金额(支付金额),若选择代理商打款、者穗易付、货到付款,此项必填
String payPlatform = orderView.getIPay();
if (StringUtils.isNotBlank(payPlatform)) {
if ("1".equals(payPlatform)) {
paymentListMap2.put("payPlatform", "支付宝");//支付平台,缴费方式为“穗易付”时必填
} else {
paymentListMap2.put("payPlatform", "微信");//支付平台,缴费方式为“穗易付”时必填
}
} else {
paymentListMap2.put("payPlatform", "穗易付");//支付平台,缴费方式为“穗易付”时必填
}
paymentListMap2.put("electronicPayNumber", UPTRANSEQ);// 支付流水号,若选择穗易付,此项必填
paymentListMap2.put("payOrderNumber", ORDERREQTRANSEQ);// 穗易付订单号,若选择穗易付,此项必填
//提速包
Map<String, Object> paymentListMap3 = new HashMap<String, Object>();
paymentListMap3.put("id", saleId2);// 收费项ID,选填;请通过销售品列表接口获取,若不填表示终端补收款
paymentListMap3.put("saleName", "");// 销售品名称,选填,若id不填写此项必填写,且只能为终端补收款
paymentListMap3.put("saleAmount", "");// 售价,选填
paymentListMap3.put("payType", "2");// 缴费方式,必填(例:payType:3)3:代理商打款4:穗易付7:货到付款
paymentListMap3.put("payAmount", "0");// 打款金额(支付金额),若选择代理商打款、者穗易付、货到付款,此项必填
paymentList.add(paymentListMap);
paymentList.add(paymentListMap2);
paymentList.add(paymentListMap3);
productMap.put("payment", paymentList);
// 产品属性 必填主卡号码属性,name=主卡号码,value=11位数字或者随机;
Map<String, Object> inPropertyListMap = new HashMap<String, Object>();
inPropertyListMap.put("name", "主卡号码");
inPropertyListMap.put("value", orderView.getOrderPhone());
inPropertyList.add(inPropertyListMap);
productMap.put("inpProperties", inPropertyList);
Map<String, Object> propertyMap = new HashMap<String, Object>();
propertyMap.put("name", "宽带速率");
String setMeal = orderView.getOrderSetMeal();
if (StringUtils.isNotBlank(setMeal)) {
setMeal = setMeal.replace("包月", "");
setMeal = setMeal.replace("包年", "");
}
propertyMap.put("value", setMeal);
Map<String, Object> propertyMap1 = new HashMap<String, Object>();
propertyMap1.put("name", "学校名称");
propertyMap1.put("value", orderView.getOrderUniversityName());
Map<String, Object> propertyMap2 = new HashMap<String, Object>();
propertyMap2.put("name", "允许上网终端类型");
propertyMap2.put("value", universityTerminalType);
Map<String, Object> propertyMap3 = new HashMap<String, Object>();
propertyMap3.put("name", "用户类别");
propertyMap3.put("value", universityUserCategory);
Map<String, Object> propertyMap4 = new HashMap<String, Object>();
propertyMap4.put("name", "用户类型");
propertyMap4.put("value", universityUserType);
Map<String, Object> propertyMap5 = new HashMap<String, Object>();
propertyMap5.put("name", "月租类型");
propertyMap5.put("value", universityMonthlyRentType);
Map<String, Object> propertyMap6 = new HashMap<String, Object>();
propertyMap6.put("name", "计费属性");
propertyMap6.put("value", universityChargingAttribute);
Map<String, Object> propertyMap7 = new HashMap<String, Object>();
propertyMap7.put("name", "一人一号多终端");
propertyMap7.put("value", universityOneManTerminal);
Map<String, Object> propertyMap8 = new HashMap<String, Object>();
propertyMap8.put("name", "外线方式");
propertyMap8.put("value", universityExteriorLines);
Map<String, Object> propertyMap9 = new HashMap<String, Object>();
propertyMap9.put("name", "是否FTTH+HUB");
propertyMap9.put("value", universityIsFtthHub);
Map<String, Object> propertyMap16 = new HashMap<String, Object>();
propertyMap16.put("name", "宽带提速速率");
propertyMap16.put("value", schoolMap.get("speed"));
Map<String, Object> propertyMap10 = new HashMap<String, Object>();
propertyMap10.put("name", "多媒体账号");
propertyMap10.put("value", orderView.getOrderCustomerAccount());
Map<String, Object> propertyMap11 = new HashMap<String, Object>();
propertyMap11.put("name", "多媒体账号密码");
propertyMap11.put("value", orderView.getOrderCustomerPwd());
Map<String, Object> propertyMap12 = new HashMap<String, Object>();
propertyMap12.put("name", "学生证号");
propertyMap12.put("value", orderView.getOrderCustomerStudentId());
Map<String, Object> propertyMap13 = new HashMap<String, Object>();
propertyMap13.put("name", "宽带首月费用类型");
propertyMap13.put("value", universityChargeMode);
Map<String, Object> propertyMap14 = new HashMap<String, Object>();
propertyMap14.put("name", "最大在线数");
propertyMap14.put("value", universityOnlineNumber);
Map<String, Object> propertyMap15 = new HashMap<String, Object>();
propertyMap15.put("name", "地址ID");
propertyMap15.put("value", addressID);
addPropertyList.add(propertyMap);
addPropertyList.add(propertyMap1);
addPropertyList.add(propertyMap2);
addPropertyList.add(propertyMap3);
addPropertyList.add(propertyMap4);
addPropertyList.add(propertyMap5);
addPropertyList.add(propertyMap6);
addPropertyList.add(propertyMap7);
addPropertyList.add(propertyMap8);
addPropertyList.add(propertyMap9);
addPropertyList.add(propertyMap10);
addPropertyList.add(propertyMap11);
addPropertyList.add(propertyMap12);
addPropertyList.add(propertyMap13);
addPropertyList.add(propertyMap14);
addPropertyList.add(propertyMap15);
addPropertyList.add(propertyMap16);
productMap.put("addProperties", addPropertyList);
productList.add(productMap);
// 将对象装换为json字符串
String productJson = JSONObject.toJSONString(productList);
try {
qParams.add(new BasicNameValuePair("productJson", URLEncoder.encode(productJson, "UTF-8")));// 产品信息,必填
signMap.put("productJson", URLEncoder.encode(productJson, "UTF-8"));
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
List<String> keys = new ArrayList<String>();
keys.addAll(signMap.keySet());
Collections.sort(keys);// key按字符串升序
String value, plaintext = "";
for (String key : keys) {
value = signMap.get(key);
plaintext = plaintext.concat(value);
}
plaintext = plaintext.concat(Constant.ZHANGSHIKEY);
log.info("---------plaintext---------:" + plaintext);
String sign = MD5Utils.md5(plaintext).toUpperCase();//md5加密
qParams.add(new BasicNameValuePair("sign", sign));//签名,必填
log.info("---------sign---------:" + sign );
JSONObject resultDataJson = null;
try {
httpPost.setHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");
httpPost.setEntity(new UrlEncodedFormEntity(qParams, "UTF-8"));
log.info("提交参数:" + EntityUtils.toString(httpPost.getEntity(), "UTF-8"));
HttpResponse response = httpclient.execute(httpPost);
entity = response.getEntity();
String httpResult = EntityUtils.toString(entity, "UTF-8");
log.info("融合下单接口,返回信息:" + httpResult);
resultDataJson = JSONObject.parseObject(httpResult);
} catch (Exception e) {
System.out.println("融合下单接口接口异常");
e.printStackTrace();
} finally {
httpPost.releaseConnection();
}
return resultDataJson;
}
@RequestMapping(value = "toSubmisOrderPreser", method = {RequestMethod.GET, RequestMethod.POST}, produces = "text/plain;charset=UTF-8")
......@@ -312,7 +1076,7 @@ public class DankuanController {
wrapper1.eq("university_region", orderMap.getOrderRegion());
schoolMap = universityInfoMapper.selectMaps(wrapper1).get(0);
if (StringUtils.isBlank(orderMap.getOrderseqthd())) {
if (StringUtils.isBlank(orderMap.getOrderseqThd())) {
// 1、获取产品ID
JSONObject productJsonObject = getProductId(currentTimeStr);
log.info("----------调用智能平台的产品接口返回参数:" + productJsonObject);
......@@ -332,7 +1096,7 @@ public class DankuanController {
productName = "校园宽带300元";
}
log.info("------" + productName);
// productName = "校园宽带30元";
//productName = "校园宽带30元";
for (int i = 0; i < list.size(); i++) {
JSONObject itmeJson = JSONObject.parseObject(list.get(i).toString());
// 判断获取的全部产品与订单产品符合的拿取对应的ID
......@@ -404,20 +1168,20 @@ public class DankuanController {
Map<String, String> map = new HashMap<String, String>();
//给MAP数组添加数据
map.put("CLIENTNUMBER", Constant.CLIENTNUMBER);//商户标识,由穗易付平台统一分配
map.put("ORDERSEQ", orderView.getOrderseq());//订单号
log.info("----------宽带价格prices:" + orderView.getWeborderamount());
if (Constant.PRODUCTSKU479Str.indexOf(orderView.getWeborderamount()) != -1) {
map.put("ORDERSEQ", orderView.getOrderSeq());//订单号
log.info("----------宽带价格prices:" + orderView.getWebOrderAmount());
if (Constant.PRODUCTSKU479Str.indexOf(orderView.getWebOrderAmount()) != -1) {
map.put("PRODUCTSKU", Constant.PRODUCTSKU479);//商户产品
} else {
map.put("PRODUCTSKU", Constant.PRODUCTSKU481);
}
Date orderdate = orderView.getOrderdate();
Date orderdate = orderView.getOrderDate();
SimpleDateFormat ft = new SimpleDateFormat("yyyyMMdd");
map.put("ORDERDATE", ft.format(orderdate));
map.put("ORDERAMOUNT", orderView.getWeborderamount());//价格
map.put("ORDERNAME", orderView.getOrdername());//用户名
map.put("ORDERPHONE", orderView.getOrderphone());//支付宝账号(电话)
map.put("ORDERNUMBER", orderView.getOrdernumber());//身份证
map.put("ORDERAMOUNT", orderView.getWebOrderAmount());//价格
map.put("ORDERNAME", orderView.getOrderName());//用户名
map.put("ORDERPHONE", orderView.getOrderPhone());//支付宝账号(电话)
map.put("ORDERNUMBER", orderView.getOrderNumber());//身份证
if (Constant.Payment1.equals(ipay)) {
......@@ -432,7 +1196,7 @@ public class DankuanController {
map.put("BACKDROPURL", "http://yrym.winsun-aly.com/gdtel-xyzx-hhr/paymentCon/toSubmisOrderPreser.do");
String str = "ORDERSEQ=" + orderView.getOrderseq() + "&ORDERDATE=" + ft.format(orderdate) + "&ORDERAMOUNT=" + orderView.getWeborderamount() + "&KEY=" + Constant.KEY;//商户标识
String str = "ORDERSEQ=" + orderView.getOrderSeq() + "&ORDERDATE=" + ft.format(orderdate) + "&ORDERAMOUNT=" + orderView.getWebOrderAmount() + "&KEY=" + Constant.KEY;//商户标识
//* 将值转换为大写 *//*
map.put("MAC", MD5Utils.md5(str).toUpperCase());
int PAYTYPE = 1; // 支付类型
......@@ -467,19 +1231,19 @@ public class DankuanController {
orderViewMapper.updateForSet(MyBatisPlusUpdateUtils.toUpdateSet(dataMapping), wrapper);
Order order = new Order();
order.setId(id);
order.setOrderNumber(orderView.getOrderseq());
order.setOrderNumber(orderView.getOrderSeq());
order.setOrderStatus(OrderStatus.NOTPAID.getName());
order.setHehuorenId(userId);
order.setCustomerName(orderView.getOrdername());
order.setContactNumber(orderView.getOrderphone());
order.setIdCard(orderView.getOrdernumber());
order.setCustomerName(orderView.getOrderName());
order.setContactNumber(orderView.getOrderPhone());
order.setIdCard(orderView.getOrderNumber());
order.setCreateTime(new Date());
order.setUserType("5");
order.setNetNumber(orderView.getOrderCustomerAccount());
order.setNetPassword(orderView.getOrderCustomerPwd());
order.setUserSchool(orderView.getOrderUniversityName());
order.setExpenses(orderView.getOrderSetMeal());
order.setKdOrderId(orderView.getOrderseq());
order.setKdOrderId(orderView.getOrderSeq());
SysUser sysUser = sysUserMapper.selectById(userId);
order.setHehuorenPhone(sysUser.getPhone());
String schoolId = appMapper.selectSchoolId(userId);
......@@ -492,7 +1256,7 @@ public class DankuanController {
order.setSupervisorName(user.getName());
order.setLzgh(school.getLzgh());
orderMapper.insert(order);
appMapper.inserOrderHis(id, "支付请求提交!", new Date(), orderView.getOrdername());
appMapper.inserOrderHis(id, "支付请求提交!", new Date(), orderView.getOrderName());
response.sendRedirect(result);
}
}
......@@ -660,14 +1424,14 @@ public class DankuanController {
signMap.put("agentName", "");
qParams.add(new BasicNameValuePair("agentCardNum", "")); //若是政企客户下单,代办人身份证号码,必填
signMap.put("agentCardNum", "");
qParams.add(new BasicNameValuePair("customerName", orderMap.getOrdername())); //客户姓名,必填
signMap.put("customerName", orderMap.getOrdername());
qParams.add(new BasicNameValuePair("customerPhone", orderMap.getOrderphone())); //客户电话,必填
signMap.put("customerPhone", orderMap.getOrderphone());
qParams.add(new BasicNameValuePair("customerName", orderMap.getOrderName())); //客户姓名,必填
signMap.put("customerName", orderMap.getOrderName());
qParams.add(new BasicNameValuePair("customerPhone", orderMap.getOrderPhone())); //客户电话,必填
signMap.put("customerPhone", orderMap.getOrderPhone());
qParams.add(new BasicNameValuePair("customerCardType", "身份证")); //证件类型,必填
signMap.put("customerCardType", "身份证");
qParams.add(new BasicNameValuePair("customerCardNum", orderMap.getOrdernumber())); //证件号码,必填
signMap.put("customerCardNum", orderMap.getOrdernumber());
qParams.add(new BasicNameValuePair("customerCardNum", orderMap.getOrderNumber())); //证件号码,必填
signMap.put("customerCardNum", orderMap.getOrderNumber());
qParams.add(new BasicNameValuePair("addressProvince", "广东省")); //报装地址省份,必填
signMap.put("addressProvince", "广东省");
qParams.add(new BasicNameValuePair("addressCity", "广州市")); //报装地址城市,必填
......@@ -736,10 +1500,10 @@ public class DankuanController {
signMap.put("deliveryAddress", address);
qParams.add(new BasicNameValuePair("deliveryContact", orderMap.getOrdername())); //报装联系人,必填
signMap.put("deliveryContact", orderMap.getOrdername());
qParams.add(new BasicNameValuePair("deliveryContactPhone", orderMap.getOrderphone())); //报装联系电话,必填
signMap.put("deliveryContactPhone", orderMap.getOrderphone());
qParams.add(new BasicNameValuePair("deliveryContact", orderMap.getOrderName())); //报装联系人,必填
signMap.put("deliveryContact", orderMap.getOrderName());
qParams.add(new BasicNameValuePair("deliveryContactPhone", orderMap.getOrderPhone())); //报装联系电话,必填
signMap.put("deliveryContactPhone", orderMap.getOrderPhone());
qParams.add(new BasicNameValuePair("invoiced", "0")); //是否需要发票 0:否 1:是,必填
......@@ -756,12 +1520,12 @@ public class DankuanController {
signMap.put("comarketingLanId", "");
qParams.add(new BasicNameValuePair("groupComarketingLanId", "")); //集团协销工号,选填
signMap.put("groupComarketingLanId", "");
qParams.add(new BasicNameValuePair("orderOutNum", orderMap.getOrderseq())); //外部订单编号,选填!;通过API接口下单,必须传入一个外部接入商的订单编号,该编号与智能营销系统编号一一对应
signMap.put("orderOutNum", orderMap.getOrderseq());
qParams.add(new BasicNameValuePair("orderOutNum", orderMap.getOrderSeq())); //外部订单编号,选填!;通过API接口下单,必须传入一个外部接入商的订单编号,该编号与智能营销系统编号一一对应
signMap.put("orderOutNum", orderMap.getOrderSeq());
qParams.add(new BasicNameValuePair("orderSource", "校园宽带自助受理")); //订单来源 ,选填
signMap.put("orderSource", "校园宽带自助受理");
qParams.add(new BasicNameValuePair("orderSourceNum", orderMap.getOrderseq())); //订单来源单号,选填; 与订单来源对应,用于业务上记录订单的来源订单编号
signMap.put("orderSourceNum", orderMap.getOrderseq());
qParams.add(new BasicNameValuePair("orderSourceNum", orderMap.getOrderSeq())); //订单来源单号,选填; 与订单来源对应,用于业务上记录订单的来源订单编号
signMap.put("orderSourceNum", orderMap.getOrderSeq());
qParams.add(new BasicNameValuePair("salePointCode", "")); //销售点编码,选填
signMap.put("salePointCode", "");
qParams.add(new BasicNameValuePair("personCode", "")); //人员编码,选填
......@@ -772,8 +1536,8 @@ public class DankuanController {
signMap.put("agent", "");
qParams.add(new BasicNameValuePair("copyied", "0")); //是否收取复印件(0:否 1:是),必填
signMap.put("copyied", "0");
qParams.add(new BasicNameValuePair("deliveryContactPhone", orderMap.getOrderphone())); //联系人电话 ,必填
signMap.put("deliveryContactPhone", orderMap.getOrderphone());
qParams.add(new BasicNameValuePair("deliveryContactPhone", orderMap.getOrderPhone())); //联系人电话 ,必填
signMap.put("deliveryContactPhone", orderMap.getOrderPhone());
qParams.add(new BasicNameValuePair("deliveryContactPhone2", "")); //联系人电话2,选填
signMap.put("deliveryContactPhone2", "");
......@@ -790,7 +1554,7 @@ public class DankuanController {
paymentMap.put("bank", "");//缴费银行,缴费方式为“银行划账”时必填 :[中国银行|中国工商银行|中国农业银行|民生银行|招商银行|中信银行|商业银行|广东发展银行|光大银行|华夏银行|兴业银行|浦发银行|广州农村商业银行|广州银行|深圳发展银行|交通银行|中国建设银行|邮政储蓄]
paymentMap.put("bankNumber", "");//银行账号,缴费方式为“银行划账”时必填
paymentMap.put("bankOwner", "");////银行账号持有人,缴费方式为“银行划账”时必填
String payPlatform = orderMap.getIpay();
String payPlatform = orderMap.getIPay();
if (StringUtils.isNotBlank(payPlatform)) {
if ("1".equals(payPlatform)) {
paymentMap.put("payPlatform", "支付宝");//支付平台,缴费方式为“穗易付”时必填
......@@ -800,19 +1564,19 @@ public class DankuanController {
} else {
paymentMap.put("payPlatform", "穗易付");//支付平台,缴费方式为“穗易付”时必填
}
if(StringUtils.isNotBlank(UPTRANSEQ)){
if (StringUtils.isNotBlank(UPTRANSEQ)) {
paymentMap.put("electronicPayNumber", UPTRANSEQ);//支付流水号,缴费方式为“穗易付”时必填
}else {
} else {
paymentMap.put("electronicPayNumber", "");//支付流水号,缴费方式为“穗易付”时必填
}
if(StringUtils.isNotBlank(ORDERREQTRANSEQ)){
if (StringUtils.isNotBlank(ORDERREQTRANSEQ)) {
paymentMap.put("payOrderNumber", ORDERREQTRANSEQ);// 穗易付订单号,若选择穗易付,此项必填
}else {
} else {
paymentMap.put("payOrderNumber", "");// 穗易付订单号,若选择穗易付,此项必填
}
if(StringUtils.isNotBlank(ORDERAMOUNT)){
if (StringUtils.isNotBlank(ORDERAMOUNT)) {
paymentMap.put("payAmount", ORDERAMOUNT);//缴费金额(打款金额),缴费方式为“代理商打款”或“穗易付”时必填
}else {
} else {
paymentMap.put("payAmount", "");//缴费金额(打款金额),缴费方式为“代理商打款”或“穗易付”时必填
}
paymentMap.put("alipayUserid", "");//用户ID,缴费方式为“支付宝支付”时必填
......
package com.winsun.bean;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
......@@ -26,311 +27,127 @@ public class OrderView implements Serializable {
/**
* 订单号码
*/
private String orderseq;
@TableField(value = "orderSeq")
private String orderSeq;
/**
* 产品名称
*/
private String productname;
@TableField(value = "productName")
private String productName;
/**
* 套餐
*/
@TableField(value = "order_set_meal")
private String orderSetMeal;
/**
* 学校
*/
@TableField(value = "order_university_name")
private String orderUniversityName;
/**
* 姓名
*/
private String ordername;
@TableField(value = "orderName")
private String orderName;
/**
* 提交时间
*/
private Date orderdate;
@TableField(value = "orderDate")
private Date orderDate;
/**
* 订单状态
*/
@TableField(value = "status")
private String status;
/**
* 区域
*/
@TableField(value = "order_region")
private String orderRegion;
/**
* 支付平台:翼支付网厅|支付宝|微信
*/
private String ipay;
@TableField(value = "ipay")
private String iPay;
/**
* 支付方式:电脑支付|手机WAY支付|微信扫码支付|公众号支付|支付宝扫码
*/
private String paytype;
@TableField(value = "payType")
private String payType;
/**
* 产品价格
*/
private String weborderamount;
@TableField(value = "webOrderAmount")
private String webOrderAmount;
/**
* 支付时间
*/
@TableField(value = "order_payment_time")
private Date orderPaymentTime;
/**
* 穗易付订单号
*/
private String orderreqtranseq;
@TableField(value = "orderReqtranSeq")
private String orderReqtranSeq;
/**
* 接入商
*/
private String customerid;
@TableField(value = "customeRid")
private String customerId;
/**
* 联系电话
*/
private String orderphone;
@TableField(value = "orderPhone")
private String orderPhone;
/**
* 身份证号码
*/
private String ordernumber;
@TableField(value = "orderNumber")
private String orderNumber;
/**
* 用户类别
*/
@TableField(value = "order_customer_type")
private String orderCustomerType;
/**
* 学生证号
*/
@TableField(value = "order_customer_student_id")
private String orderCustomerStudentId;
/**
* 备注
*/
@TableField(value = "order_customer_remarks")
private String orderCustomerRemarks;
/**
* 多媒体账号
*/
@TableField(value = "order_customer_account")
private String orderCustomerAccount;
/**
* 多媒体密码
*/
@TableField(value = "order_customer_pwd")
private String orderCustomerPwd;
/**
* 支付平台流水号
*/
@TableField(value = "uptranseq")
private String uptranseq;
/**
* 用户显示的速率
*/
@TableField(value = "expenses")
private String expenses;
/**
* 预留字段2
*/
@TableField(value = "order_rf2")
private String orderRf2;
/**
* 智能平台订单号
*/
private String orderseqthd;
public Integer getOrderId() {
return orderId;
}
public void setOrderId(Integer orderId) {
this.orderId = orderId;
}
public String getOrderseq() {
return orderseq;
}
public void setOrderseq(String orderseq) {
this.orderseq = orderseq;
}
public String getProductname() {
return productname;
}
public void setProductname(String productname) {
this.productname = productname;
}
public String getOrderSetMeal() {
return orderSetMeal;
}
public void setOrderSetMeal(String orderSetMeal) {
this.orderSetMeal = orderSetMeal;
}
public String getOrderUniversityName() {
return orderUniversityName;
}
public void setOrderUniversityName(String orderUniversityName) {
this.orderUniversityName = orderUniversityName;
}
public String getOrdername() {
return ordername;
}
public void setOrdername(String ordername) {
this.ordername = ordername;
}
public Date getOrderdate() {
return orderdate;
}
public void setOrderdate(Date orderdate) {
this.orderdate = orderdate;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getOrderRegion() {
return orderRegion;
}
public void setOrderRegion(String orderRegion) {
this.orderRegion = orderRegion;
}
public String getIpay() {
return ipay;
}
public void setIpay(String ipay) {
this.ipay = ipay;
}
public String getPaytype() {
return paytype;
}
public void setPaytype(String paytype) {
this.paytype = paytype;
}
public String getWeborderamount() {
return weborderamount;
}
public void setWeborderamount(String weborderamount) {
this.weborderamount = weborderamount;
}
public Date getOrderPaymentTime() {
return orderPaymentTime;
}
public void setOrderPaymentTime(Date orderPaymentTime) {
this.orderPaymentTime = orderPaymentTime;
}
public String getOrderreqtranseq() {
return orderreqtranseq;
}
public void setOrderreqtranseq(String orderreqtranseq) {
this.orderreqtranseq = orderreqtranseq;
}
public String getCustomerid() {
return customerid;
}
public void setCustomerid(String customerid) {
this.customerid = customerid;
}
public String getOrderphone() {
return orderphone;
}
public void setOrderphone(String orderphone) {
this.orderphone = orderphone;
}
public String getOrdernumber() {
return ordernumber;
}
public void setOrdernumber(String ordernumber) {
this.ordernumber = ordernumber;
}
public String getOrderCustomerType() {
return orderCustomerType;
}
public void setOrderCustomerType(String orderCustomerType) {
this.orderCustomerType = orderCustomerType;
}
public String getOrderCustomerStudentId() {
return orderCustomerStudentId;
}
public void setOrderCustomerStudentId(String orderCustomerStudentId) {
this.orderCustomerStudentId = orderCustomerStudentId;
}
public String getOrderCustomerRemarks() {
return orderCustomerRemarks;
}
public void setOrderCustomerRemarks(String orderCustomerRemarks) {
this.orderCustomerRemarks = orderCustomerRemarks;
}
public String getOrderCustomerAccount() {
return orderCustomerAccount;
}
public void setOrderCustomerAccount(String orderCustomerAccount) {
this.orderCustomerAccount = orderCustomerAccount;
}
public String getOrderCustomerPwd() {
return orderCustomerPwd;
}
public void setOrderCustomerPwd(String orderCustomerPwd) {
this.orderCustomerPwd = orderCustomerPwd;
}
public String getUptranseq() {
return uptranseq;
}
public void setUptranseq(String uptranseq) {
this.uptranseq = uptranseq;
}
public String getExpenses() {
return expenses;
}
public void setExpenses(String expenses) {
this.expenses = expenses;
}
public String getOrderRf2() {
return orderRf2;
}
public void setOrderRf2(String orderRf2) {
this.orderRf2 = orderRf2;
}
public String getOrderseqthd() {
return orderseqthd;
}
public void setOrderseqthd(String orderseqthd) {
this.orderseqthd = orderseqthd;
}
@TableField(value = "orderSeqTHD")
private String orderseqThd;
}
\ No newline at end of file
......@@ -6,16 +6,17 @@ import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@TableName("sys_user")
@Data
public class SysUser {
public class SysUser implements Serializable {
/**
* 主键
*/
@TableId(type = IdType.AUTO)
@TableId(value = "id",type = IdType.AUTO)
private String id;
/**
......
......@@ -2,7 +2,6 @@ package com.winsun.bean;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import lombok.Data;
import java.io.Serializable;
......@@ -18,11 +17,10 @@ public class UserSchool implements Serializable {
/**
* 主键
*/
@TableId(value = "user_id", type = IdType.AUTO)
@TableId(value = "user_id")
private String userId;
/**
*
*/
@TableId(value = "school_id")
private String schoolId;
}
......@@ -74,40 +74,6 @@ public class StartSelectController {
}
/**
*跟据合伙人id查找融合套餐信息
* @param hhrId
* @return
*/
@RequestMapping("/getTcInfoByHhrId")
public ResponseData<Map<String, Object>> getTcInfoByHhrId(@RequestParam("hhrId") String hhrId){
if (StringUtils.isEmpty(hhrId)){
return ResponseData.error("请输入合伙人id");
}
Map<String,Object> objMap = new HashMap<>();
Wrapper<UserSchool> usWrapper = new EntityWrapper<>();
usWrapper.setSqlSelect(" school_id AS schoolId ");
usWrapper.addFilter(" user_id = '" + hhrId +"'");
Map<String,Object> usMap = userSchoolMapper.selectMaps(usWrapper).get(0);
Wrapper<School> schoolWrapper = new EntityWrapper<>();
schoolWrapper.setSqlSelect(" id,sub_name AS subName,bandproduct_id AS bandproductId ");
schoolWrapper.addFilter(" id = '" + usMap.get("schoolId") +"'");
Map<String,Object> schoolMap = schoolMapper.selectMaps(schoolWrapper).get(0);
Wrapper<Product> productWrapper = new EntityWrapper<>();
productWrapper.setSqlSelect(" product_id,product_title,product_region,university_id ");
productWrapper.addFilter(" product_id = '" + schoolMap.get("bandproductId") +"'");
Map<String,Object> productMap = productMapper.selectMaps(productWrapper).get(0);
/*if (CollectionUtils.isEmpty(mapList)){
return ResponseData.error("没有查询相关的合伙人id的信息");
}
Map<String, Object> map = mapList.get(0);*/
objMap.put("userMap",usMap);
objMap.put("schoolMap",schoolMap);
objMap.put("productMap",productMap);
return ResponseData.success(objMap);
}
/**
*通过学生ID,name和身份证查询学生信息
* @param stuId 学生ID
* @param name 用户名
......@@ -214,9 +180,7 @@ public class StartSelectController {
JSONObject queryOrderJsonObject = null;
if (StringUtils.isNotBlank(orderNum)) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Map<String, String> orderMap = new HashMap<>();
OrderView orderView = new OrderView();
orderMap.put("orderSeq", orderSeq);
orderMap.put("productTitle", "中国电信校园高速宽带");
orderMap.put("order_set_meal", "毕业生融合套餐");
......@@ -495,21 +459,21 @@ public class StartSelectController {
log.info("支付操作后保存数据到数据库");
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
OrderView orderView = new OrderView();
orderView.setOrderseq(ProduceIdUtil.getId()+"");// 订单号码
orderView.setProductname(orderMap.get("productTitle")); // 产品名称
orderView.setOrderSeq(ProduceIdUtil.getId()+"");// 订单号码
orderView.setProductName(orderMap.get("productTitle")); // 产品名称
orderView.setOrderSetMeal(orderMap.get("order_set_meal")); // 套餐
orderView.setOrderUniversityName(orderMap.get("order_university_name")); // 学校
orderView.setOrdername(orderMap.get("orderName")); // 姓名
orderView.setOrderName(orderMap.get("orderName")); // 姓名
String orderDatetime = orderMap.get("orderDatetime");
orderView.setOrderdate(df.parse(orderDatetime)); // 提交时间
orderView.setOrderDate(df.parse(orderDatetime)); // 提交时间
orderView.setStatus(orderMap.get("Status")); // 订单状态
orderView.setOrderRegion(orderMap.get("universityRegion")); // 区域
orderView.setIpay(orderMap.get("ipay")); // 支付平台
orderView.setPaytype(orderMap.get("payType")); // 支付方式
orderView.setWeborderamount(orderMap.get("prices").replace("元", "")); // 产品价格
orderView.setCustomerid("xyzxyql"); // 接入商
orderView.setOrderphone(orderMap.get("orderPhone")); // 联系电话
orderView.setOrdernumber(orderMap.get("orderNumber")); // 身份证号码
orderView.setIPay(orderMap.get("ipay")); // 支付平台
orderView.setPayType(orderMap.get("payType")); // 支付方式
orderView.setWebOrderAmount(orderMap.get("prices").replace("元", "")); // 产品价格
orderView.setCustomerId("xyzxyql"); // 接入商
orderView.setOrderPhone(orderMap.get("orderPhone")); // 联系电话
orderView.setOrderNumber(orderMap.get("orderNumber")); // 身份证号码
if (StringUtils.isBlank(orderMap.get("order_customer_student_id"))) {
orderView.setOrderCustomerType("老师"); // 用户类别
} else {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment