From 482f58537fa3f0cab93b88c6d0bcb803e0431cfc Mon Sep 17 00:00:00 2001 From: houruijun <411269194@kidgrow.com> Date: Wed, 23 Sep 2020 15:51:08 +0800 Subject: [PATCH] 1.增加后台开通医院/科室的单次支付功能,并自动充入指定套餐 2.新增查询医院科室是否开通单次支付功能的接口 3.新增查询医院科室的支付单价 4.修改扣费业务4个接口,增加支持单次支付的判断与处理 5.增加接口,查看某个诊断的支付状态 --- kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/SaasClientPayServiceImpl.java | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 115 insertions(+), 2 deletions(-) diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/SaasClientPayServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/SaasClientPayServiceImpl.java index c66c4ad..3233aa6 100644 --- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/SaasClientPayServiceImpl.java +++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/SaasClientPayServiceImpl.java @@ -1,15 +1,25 @@ package com.kidgrow.oprationcenter.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.kidgrow.common.model.PageResult; +import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.service.impl.SuperServiceImpl; import com.kidgrow.oprationcenter.mapper.SaasClientPayMapper; import com.kidgrow.oprationcenter.model.SaasClientPay; import com.kidgrow.oprationcenter.service.ISaasClientPayService; +import com.kidgrow.oprationcenter.vo.SaasClientPayExcel; +import com.kidgrow.oprationcenter.vo.SaasClientPayVo; +//import com.kidgrow.recordcenter.feign.ChildService; +import com.kidgrow.usercenter.feign.SysDoctorService; +import com.kidgrow.usercenter.model.SysDoctor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.MapUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cglib.beans.BeanCopier; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -30,11 +40,52 @@ * @param params * @return */ + @Autowired + private SysDoctorService sysDoctorService; +// @Autowired +// private ChildService childService; @Override - public PageResult<SaasClientPay> findList(Map<String, Object> params){ + public PageResult<SaasClientPayVo> findList(Map<String, Object> params){ + Long doctorId = MapUtils.getLong(params, "doctorId"); + if (doctorId!=null) { + ResultBody byId = sysDoctorService.findById(doctorId); + if (byId.getCode()==0) { + Object data = byId.getData(); + SysDoctor sysDoctor = JSON.parseObject(JSON.toJSONString(data), SysDoctor.class); + if (sysDoctor!=null) { + params.put("createUserId",sysDoctor.getUserId()); + } + } + params.remove("doctorId"); + } Page<SaasClientPay> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); List<SaasClientPay> list = baseMapper.findList(page, params); - return PageResult.<SaasClientPay>builder().data(list).code(0).count(page.getTotal()).build(); + List<SaasClientPayVo> listVo=null; + if (!list.isEmpty()) { + listVo=new ArrayList<>(); + for (SaasClientPay saasClientPay : list) { + SaasClientPayVo vo=new SaasClientPayVo(); + BeanCopier beanCopier = BeanCopier.create(SaasClientPay.class, SaasClientPayVo.class, false); + beanCopier.copy(saasClientPay,vo,null); + double v = Double.parseDouble(vo.getPayPrice().toString())/100; + vo.setPrice(v+""); +// if (StringUtils.isNotBlank(vo.getChildId())) { +// Map<String,Object> map=new HashMap<>(); +// map.put("id",vo.getChildId()); +// ResultBody byId = childService.findById(map); +// if(byId.getCode()==0){ +// Child parse = JSON.parseObject(JSON.toJSONString(byId.getData()), Child.class); +// if(parse!=null){ +// vo.setChildName(parse.getChildName()); +// vo.setChildSex(parse.getChildSex()); +// vo.setChildBirthday(parse.getChildBirthday()); +// } +// } +// } + listVo.add(vo); + } + } + return PageResult.<SaasClientPayVo>builder().data(listVo).code(0).count(page.getTotal()).build(); } /** @@ -46,4 +97,66 @@ public SaasClientPay findByObject(SaasClientPay saasClientPay){ return baseMapper.findByObject(saasClientPay); } + + /** + * 查看一个科室的某个诊断的支付状态 + * @param hospitalId + * @param departmentId + * @param diaId + * @return + */ + @Override + public SaasClientPay findModelByObject(Long hospitalId,Long departmentId,String diaId) { + SaasClientPay saasClientPay = new SaasClientPay(); + saasClientPay.setCreateHospitalDepartid(departmentId.toString()); + saasClientPay.setCreateHospitalId(hospitalId); + saasClientPay.setDiaId(diaId); + return baseMapper.findByObject(saasClientPay); + } + + @Override + public void updateTypeList(List<String> list) { + for (String s : list) { + SaasClientPay saasClientPay = this.baseMapper.selectById(s); + if(saasClientPay!=null){ + saasClientPay.setType(true); + this.saveOrUpdate(saasClientPay); + } + } + } + + @Override + public List<SaasClientPayExcel> export(Map<String, Object> params) { + List<SaasClientPay> list = baseMapper.findList(new Page<>(1, -1), params); + List<SaasClientPayExcel> listVo=null; + if (!list.isEmpty()) { + listVo=new ArrayList<>(); + for (SaasClientPay saasClientPay : list) { + SaasClientPayExcel vo=new SaasClientPayExcel(); + BeanCopier beanCopier = BeanCopier.create(SaasClientPay.class, SaasClientPayExcel.class, false); + beanCopier.copy(saasClientPay,vo,null); + Double v = Double.parseDouble(saasClientPay.getPayPrice().toString())/100; + vo.setPayPrice(v); + Double vc = Double.parseDouble(saasClientPay.getPayCustom().toString())/100; + vo.setPayCustom(vc); + Double vk = Double.parseDouble(saasClientPay.getPayKidgrow().toString())/100; + vo.setPayKidgrow(vk); +// if (StringUtils.isNotBlank(saasClientPay.getChildId())) { +// Map<String,Object> map=new HashMap<>(); +// map.put("id",saasClientPay.getChildId()); +// ResultBody byId = childService.findById(map); +// if(byId.getCode()==0){ +// Child parse = JSON.parseObject(JSON.toJSONString(byId.getData()), Child.class); +// if(parse!=null){ +// vo.setChildName(parse.getChildName()); +// vo.setChildSex(parse.getChildSex()); +// vo.setChildBirthday(parse.getChildBirthday()); +// } +// } +// } + listVo.add(vo); + } + } + return listVo; + } } -- Gitblit v1.8.0