|
@ -47,6 +47,7 @@ import com.yihu.jw.wechat.dao.BasePatientWechatDao;
|
|
|
import com.yihu.jw.wechat.dao.WechatDao;
|
|
|
import com.yihu.jw.wechat.dao.WxPayLogDao;
|
|
|
import com.yihu.mysql.query.BaseJpaService;
|
|
|
import com.ylzinfo.ehc.common.utils.DateUtils;
|
|
|
import org.apache.commons.collections.map.HashedMap;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
@ -626,6 +627,7 @@ public class BusinessOrderService extends BaseJpaService<BusinessOrderDO,Busines
|
|
|
if("SUCCESS".equals(wxrs.get("return_code").toString())){
|
|
|
// 我方 订单号+时间差
|
|
|
String seqNo = wxrs.get("out_trade_no")+"";
|
|
|
String totalFee=wxrs.get("total_fee")+"";
|
|
|
// 微信充值流水号
|
|
|
String wxSeqNo = wxrs.get("transaction_id")+"";
|
|
|
// 微信分配的终端设备号
|
|
@ -660,9 +662,22 @@ public class BusinessOrderService extends BaseJpaService<BusinessOrderDO,Busines
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
}
|
|
|
}else if (businessOrderDO!=null&&businessOrderDO.getOrderCategory().equalsIgnoreCase("5")){
|
|
|
String price = Integer.parseInt(totalFee)/100+"";
|
|
|
|
|
|
if (businessOrderDO.getOrderType()==10){
|
|
|
ykyyService.upRecharge4Jkzl(seqNo,Integer.parseInt(price),0);
|
|
|
}
|
|
|
if (businessOrderDO.getOrderType()==11){
|
|
|
ykyyService.upRecharge4Jkzl(seqNo,Integer.parseInt(price),1);
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
ykyyService.updateYktOrderStatus(businessOrderDO.getOrderNo(),businessOrderDO.getStatus().toString());
|
|
|
else if (businessOrderDO!=null&&!businessOrderDO.getOrderCategory().equalsIgnoreCase("5")){
|
|
|
ykyyService.updateYktOrderStatus(businessOrderDO.getOrderNo(),businessOrderDO.getStatus().toString());
|
|
|
}
|
|
|
|
|
|
//操作微信日志表记录
|
|
|
List<WxPayLogDO> wxPayLogDOs = wxPayLogDao.findBySeqNo(seqNo);
|
|
|
WxPayLogDO wxPayLogDO = wxPayLogDOs.get(0);
|
|
@ -1129,4 +1144,44 @@ public class BusinessOrderService extends BaseJpaService<BusinessOrderDO,Busines
|
|
|
return ykyyService.getPayCDATA4Jkzl(businessOrderDO.getRematk(),businessOrderDO.getOrderNo(),totalFee,serverIp,notifyUrl);
|
|
|
}
|
|
|
|
|
|
|
|
|
public Map yktMedicalCardTopUp(String mzhm,Double jkje,Integer type,Integer paymentType,String patientId,String wechatId){
|
|
|
BasePatientDO patientDO = patientDao.findById(patientId);
|
|
|
BusinessOrderDO businessOrderDO = new BusinessOrderDO();
|
|
|
businessOrderDO.setPatient(patientId);
|
|
|
businessOrderDO.setPatientName(patientDO.getName());
|
|
|
businessOrderDO.setCreateTime(DateUtil.getNowDate());
|
|
|
businessOrderDO.setOrderCategory("5");
|
|
|
businessOrderDO.setDescription("眼科就诊卡充值");
|
|
|
if (paymentType==1){
|
|
|
businessOrderDO.setPayType(2);
|
|
|
}
|
|
|
if (paymentType==2){
|
|
|
businessOrderDO.setPayType(1);
|
|
|
}
|
|
|
businessOrderDO.setPayPrice(jkje);
|
|
|
if (type==0){
|
|
|
businessOrderDO.setOrderType(10);
|
|
|
}
|
|
|
if (type==1){
|
|
|
businessOrderDO.setOrderType(11);
|
|
|
}
|
|
|
String rs = ykyyService.getNewSerialNumber(mzhm, jkje.intValue(), type, paymentType, patientDO.getUserId(), "");
|
|
|
|
|
|
businessOrderDO = businessOrderDao.save(businessOrderDO);
|
|
|
List<BasePatientWechatDo> patientWechatDoList = patientWechatDao.findByWechatIdAndPatientId(wechatId, patientId);
|
|
|
Map<String,Object> map=null;
|
|
|
if (patientWechatDoList.isEmpty()){
|
|
|
map.put("error","无opinId");
|
|
|
return map;
|
|
|
}
|
|
|
WxWechatDO wxWechatDO = wechatDao.findById(wechatId);
|
|
|
String url = wxWechatDO.getBaseUrl();
|
|
|
String notifyUrl =url;
|
|
|
String price = businessOrderDO.getPayPrice()*100+"";
|
|
|
// map = unifiedorder(wechatId,businessOrderDO.getDescription(),price,WeChatConfig.TRADE_TYPE_JSAPI,patientWechatDoList.get(0).getOpenid(),orderNo,notifyUrl);
|
|
|
|
|
|
return map;
|
|
|
}
|
|
|
|
|
|
}
|