wangzhinan %!s(int64=2) %!d(string=hai) anos
pai
achega
86dcc725ce

+ 12 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/a1entity/Mediicinedevice.java

@ -240,6 +240,18 @@ public class Mediicinedevice extends UuidIdentityEntityWithOperator{
     * 最后一次记录时间
     * 最后一次记录时间
     */
     */
    private Date logTime;
    private Date logTime;
    /**
     * 首页菜单开启模块
     */
    private String modules;
    public String getModules() {
        return modules;
    }
    public void setModules(String modules) {
        this.modules = modules;
    }
    public Mediicinedevice() {
    public Mediicinedevice() {
    }
    }

+ 20 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/a4endpoint/MedicineOrderDrugsEndpoint.java

@ -287,6 +287,26 @@ public class MedicineOrderDrugsEndpoint extends EnvelopRestEndpoint {
        }
        }
    }
    }
    @GetMapping("/open/selectSettlementList")
    @ApiOperation(value = "历史结算记录", notes = "历史结算记录")
    public Envelop selectSettlementList(
            @ApiParam(name="ssc",value="社保卡号",defaultValue = "")
            @RequestParam(value = "ssc",required = true) String ssc,
            @ApiParam(name="equNum",value="设备编码",defaultValue = "")
            @RequestParam(value = "equNum",required = true) String equNum,
            @ApiParam(name="page",value="页码",required = false)
            @RequestParam(value = "page",required = false) Integer page,
            @ApiParam(name="size",value="size",required = false)
            @RequestParam(value = "size",required = false) Integer size
    ){
        try {
            return success("操作成功", medOrderService.selectSettlementList(ssc,equNum,page,size));
        } catch (Exception e) {
            e.printStackTrace();
            return Envelop.getError(e.getMessage());
        }
    }
    @RequestMapping(value = "/open/hlwyyRechargeNotify", method = RequestMethod.POST)
    @RequestMapping(value = "/open/hlwyyRechargeNotify", method = RequestMethod.POST)
    @ApiOperation(value = "智能药柜预缴金充值回调数据接收")
    @ApiOperation(value = "智能药柜预缴金充值回调数据接收")
    public void hlwyyRechargeNotify(String responsStr) throws Exception {
    public void hlwyyRechargeNotify(String responsStr) throws Exception {

+ 83 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedOrderService.java

@ -24,6 +24,7 @@ import com.yihu.jw.hospital.healthCare.YlzMedicailRelationDao;
import com.yihu.jw.hospital.healthCare.YlzMedicalResponseDao;
import com.yihu.jw.hospital.healthCare.YlzMedicalResponseDao;
import com.yihu.jw.hospital.httplog.dao.WlyyHttpLogDao;
import com.yihu.jw.hospital.httplog.dao.WlyyHttpLogDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.utils.hibernate.HibenateUtils;
import com.yihu.jw.wlyy.wlyyhttp.WlyyHttpService;
import com.yihu.jw.wlyy.wlyyhttp.WlyyHttpService;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.Logger;
@ -80,6 +81,8 @@ public class MedOrderService {
    private MedicineDevicePrintMessageDao medicineDevicePrintMessageDao;
    private MedicineDevicePrintMessageDao medicineDevicePrintMessageDao;
    @Autowired
    @Autowired
    private MediicineDeviceDao deviceDao;
    private MediicineDeviceDao deviceDao;
    @Autowired
    private HibenateUtils hibenateUtils;
    /**
    /**
     * 获取续方订单及药方
     * 获取续方订单及药方
@ -1351,6 +1354,86 @@ public class MedOrderService {
        return list;
        return list;
    }
    }
    public List<Map<String,Object>> selectSettlementList(String cardNo,String equNum,Integer page,Integer size){
        String sql = "select id,name,apply_time as applyTime,total_amount as totalAmount from base_ylz_medical_relation where status=1 and state =1 and card_no ='"+cardNo+"' and equ_num ='"+equNum+"' ";
        List<Map<String,Object>> mapList = hibenateUtils.createSQLQuery(sql,page,size);
        for (Map<String,Object> jsonObject:mapList){
            String relationId= jsonObject.get("id").toString();
            YlzMedicalRelationDO ylzMedicalRelationDO = ylzMedicailRelationDao.findOne(relationId);
            MedicineDevicePrintMessage medicineDevicePrintMessage = medicineDevicePrintMessageDao.findDeviceId(equNum);
            if (medicineDevicePrintMessage==null){
                jsonObject.put("status","500");
                jsonObject.put("data","此药柜尚未设置打印模板!");
            }else {
                jsonObject.put("status","200");
                JSONObject object = new JSONObject();
                String feeInfo = medicineDevicePrintMessage.getFeeInfo();
                object.put("feeRemark",medicineDevicePrintMessage.getFeeRemark());
                Mediicinedevice mediicinedevice = deviceDao.findMediicinedeviceByEquNum(equNum);
                if (feeInfo.contains("hospital")){
                    object.put("hospital",mediicinedevice.getCommunity());
                }
                if (feeInfo.contains("cardno")){
                    object.put("cardno",ylzMedicalRelationDO.getCardNo());
                }
                if (feeInfo.contains("name")){
                    object.put("name",ylzMedicalRelationDO.getName());
                }
                if (feeInfo.contains("deptName")){
                    object.put("deptName",ylzMedicalRelationDO.getDeptName());
                }
                if (feeInfo.contains("doctorName")){
                    object.put("doctorName",ylzMedicalRelationDO.getDrName());
                }
                if (feeInfo.contains("hisSettleNo")){
                    object.put("hisSettleNo",ylzMedicalRelationDO.getRelationCode()==null?"无":ylzMedicalRelationDO.getRelationCode());
                }
                if (feeInfo.contains("applyTime")){
                    object.put("applyTime",ylzMedicalRelationDO.getApplyTime());
                }
                if (feeInfo.contains("total")){
                    object.put("total",ylzMedicalRelationDO.getTotalAmount());
                }
                if (feeInfo.contains("personAccount")){
                    object.put("personAccount",ylzMedicalRelationDO.getPersonAccount());
                }
                if (feeInfo.contains("medicarePrice")){
                    object.put("medicarePrice",ylzMedicalRelationDO.getMedicalPrice());
                }
                if (feeInfo.contains("tcjjPay")){
                    object.put("tcjjPay",ylzMedicalRelationDO.getTcjjPay()==null?0:ylzMedicalRelationDO.getTcjjPay());
                }
                if (feeInfo.contains("personCash")){
                    object.put("personCash",ylzMedicalRelationDO.getPersonCash());
                }
                if (feeInfo.contains("balance")){
                    object.put("balance",ylzMedicalRelationDO.getBalance());
                }
                if (feeInfo.contains("accountBalance")){
                    object.put("accountBalance",ylzMedicalRelationDO.getAccountBalance()==null?"0":ylzMedicalRelationDO.getAccountBalance());
                }
                if (feeInfo.contains("drugName")){
                    List<YlzMedicalMxDO> medicalMxDOS = ylzMedicailMxDao.findByMedicalId(ylzMedicalRelationDO.getId());
                    JSONArray array = new JSONArray();
                    for (YlzMedicalMxDO mxDO:medicalMxDOS){
                        JSONObject mxObj = new JSONObject();
                        mxObj.put("drugName",mxDO.getHisItemName());
                        mxObj.put("money",mxDO.getTotalMoney());
                        mxObj.put("count",mxDO.getAmount());
                        mxObj.put("unit",mxDO.getChargeUnitName());
                        mxObj.put("specification",mxDO.getSpecificationType()==null?"无":mxDO.getSpecificationType());
                        array.add(mxObj);
                    }
                    object.put("itemList",array);
                }else {
                    object.put("itemList",null);
                }
                jsonObject.put("data",object);
            }
        }
        return mapList;
    }
    @Transactional(propagation= Propagation.NOT_SUPPORTED)
    @Transactional(propagation= Propagation.NOT_SUPPORTED)
    public void saveHttpLog(String code,String name,String patient,String request,String response){
    public void saveHttpLog(String code,String name,String patient,String request,String response){
        WlyyHttpLogDO logDO = new WlyyHttpLogDO();
        WlyyHttpLogDO logDO = new WlyyHttpLogDO();

+ 1 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineOrderService.java

@ -2289,6 +2289,7 @@ public class MedicineOrderService extends BaseJpaService<Mediicineorder, Mediici
            map.put("num", order.getPrescribeNum());
            map.put("num", order.getPrescribeNum());
            map.put("date", DateUtil.dateToStr(new Date(), "yyyy-MM-dd"));
            map.put("date", DateUtil.dateToStr(new Date(), "yyyy-MM-dd"));
            map.put("time", DateUtil.dateToStr(new Date(), "HH:mm:ss"));
            map.put("time", DateUtil.dateToStr(new Date(), "HH:mm:ss"));
            map.put("name",order.getName());
            if ("1".equals(order.getSellState())) {
            if ("1".equals(order.getSellState())) {
                map.put("status", 1);
                map.put("status", 1);
                map.put("statusName", "已取药");
                map.put("statusName", "已取药");

+ 10 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/service/a3service/MedicineServive.java

@ -153,19 +153,28 @@ public class MedicineServive {
    /**
    /**
     * socket发送事件
     * socket发送事件
     * @param equNum
     * @param equNum
     * @param type
     * @param type indexFuncManage首页功能管理
     * @param message
     * @param message
     * @throws Exception
     * @throws Exception
     */
     */
    public String systemUpdate(String equNum, String type,String message) throws Exception {
    public String systemUpdate(String equNum, String type,String message) throws Exception {
        int i=0;
        int i=0;
        if (StringUtils.isNoneBlank(equNum)){
        if (StringUtils.isNoneBlank(equNum)){
            if (type.equalsIgnoreCase("indexFuncManage")){
                Mediicinedevice mediicinedevice = deviceDao.findMediicinedeviceByEquNum(equNum);
                mediicinedevice.setModules(message);
                deviceDao.save(mediicinedevice);
            }
            String res = sendSocketMessage(equNum+"_T",type,message);
            String res = sendSocketMessage(equNum+"_T",type,message);
            logger.info("更新设备"+res);
            logger.info("更新设备"+res);
            i++;
            i++;
        }else {
        }else {
            List<Mediicinedevice> mediicinedeviceList =deviceDao.selectByBelongComminity();
            List<Mediicinedevice> mediicinedeviceList =deviceDao.selectByBelongComminity();
            for (Mediicinedevice mediicinedevice:mediicinedeviceList){
            for (Mediicinedevice mediicinedevice:mediicinedeviceList){
                if (type.equalsIgnoreCase("indexFuncManage")){
                    mediicinedevice.setModules(message);
                    deviceDao.save(mediicinedevice);
                }
                String res = sendSocketMessage(mediicinedevice.getEquNum()+"_T",type,message);
                String res = sendSocketMessage(mediicinedevice.getEquNum()+"_T",type,message);
                logger.info("更新设备"+res);
                logger.info("更新设备"+res);
                i++;
                i++;