Преглед на файлове

Merge remote-tracking branch 'origin/2.0' into 2.0

LAPTOP-KB9HII50\70708 преди 1 година
родител
ревизия
9288751b14

+ 162 - 1
business/base-service/src/main/java/com/yihu/jw/hospital/prescription/service/DsyyPrescriptionService.java

@ -27,6 +27,7 @@ import com.yihu.jw.order.dao.BusinessOrderDao;
import com.yihu.jw.patient.dao.BasePatientDao;
import com.yihu.jw.patient.dao.BasePatientMedicareCardDao;
import com.yihu.jw.restmodel.hospital.prescription.*;
import com.yihu.jw.util.common.IdCardUtil;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.util.http.HttpClientUtil;
import com.yihu.jw.util.network.HttpResponse;
@ -72,6 +73,14 @@ public class DsyyPrescriptionService extends BaseJpaService<WlyyPrescriptionDO,
    private PatientRegisterDao patientRegisterDao;
    @Autowired
    private WlyyHttpLogDao wlyyHttpLogDao;
    @Autowired
    private PrescriptionEmrDao prescriptionEmrDao;
    @Autowired
    private BaseDoctorDao doctorDao;
    @Autowired
    private PrescriptionDiagnosisDao prescriptionDiagnosisDao;
    @Autowired
    private PrescriptionInfoDao prescriptionInfoDao;
    //请求内网服务
    public static String entranceUrl = "http://192.168.101.2:10024/dsyy/";
@ -394,7 +403,7 @@ public class DsyyPrescriptionService extends BaseJpaService<WlyyPrescriptionDO,
     * @param ApplyDept 执行科室
     * @param ApplyDoctor 开单医生
     * @param ExecuteDept 执行科室(药房)
     * @param infoJson 药品列表
     * @param wlyyPrescriptionInfoDOS 药品列表
     * @return
     * @throws Exception
     */
@ -521,6 +530,158 @@ public class DsyyPrescriptionService extends BaseJpaService<WlyyPrescriptionDO,
        return object;
    }
    /**
     * 数据哈希计算接口
     *
     * @param contentJson
     * @return
     * @throws Exception
     */
    public JSONObject computeDigestForAlg(String contentJson) throws Exception {
        String url = entranceUrl +"computeDigestForAlg";
        JSONObject object = new JSONObject();
        Map<String,Object> params = new HashedMap();
        params.put("content",contentJson);
        HttpResponse response = HttpUtils.doPost(url,params);
        String content = response.getContent();
        logger.info("response:"+content);
        JSONObject rs = JSON.parseObject(content);
        Integer status = rs.getInteger("status");
        if (status==200){
            object = rs.getJSONObject("obj");
        }
        return object;
    }
    /**
     * 数据签名接口
     * @param templateId 模板ID签名数据摘要数据类型
     * @param urId 签名流水ID
     * @param patientName 患者姓名
     * @param patientAge 患者年龄
     * @param patientSex 患者性别
     * @param patientCardType  证件类型
     * @param recipeTime 开具时间
     * @param hashValue Hash原文(从签名指纹接口结果中得到的)
     * @param hashType Hash算法(从签名指纹接口结果中得到的)
     */
    public JSONObject synRecipeInfo(String templateId,String urId,String patientName,String patientAge,
                                    String patientSex,String patientCardType,String recipeTime,
                                    String hashValue,String hashType,String openId,String patientCard) throws Exception {
        String url = entranceUrl +"synRecipeInfo";
        JSONObject object = new JSONObject();
        Map<String,Object> params = new HashedMap();
        params.put("templateId",templateId);
        params.put("urId",urId);
        params.put("patientName",patientName);
        params.put("patientAge",patientAge);
        params.put("patientSex",patientSex);
        params.put("patientCardType",patientCardType);
        params.put("recipeTime",recipeTime);
        params.put("hashValue",hashValue);
        params.put("hashType",hashType);
        params.put("openId",openId);
        params.put("patientCard",patientCard);
        HttpResponse response = HttpUtils.doPost(url,params);
        String content = response.getContent();
        logger.info("response:"+content);
        JSONObject rs = JSON.parseObject(content);
        Integer status = rs.getInteger("status");
        if (status==200){
            object = rs.getJSONObject("obj");
        }
        return object;
    }
    /**
     * 处方签名
     * @param prescriptionDO
     * @throws Exception
     */
    public String SOF_SignDataWithExtraInfo(WlyyPrescriptionDO prescriptionDO) throws Exception {
        WlyyOutpatientDO outpatientDO = outpatientDao.findById(prescriptionDO.getOutpatientId()).orElse(null);
        List<WlyyPrescriptionInfoDO> infoDOS = prescriptionInfoDao.findByPrescriptionId(prescriptionDO.getId(), 1);
        List<WlyyPrescriptionDiagnosisDO> diagnosisDOS = prescriptionDiagnosisDao.findByPrescriptionId(prescriptionDO.getId(),1);
        JSONObject object = new JSONObject();
        String baseSign="";
        object.put("infos",infoDOS);
        object.put("registerSn",outpatientDO.getRegisterNo());
        object.put("diagnosiss",diagnosisDOS);
        JSONObject jsonObject = computeDigestForAlg(object.toJSONString());
        String hashValue = null;
        String hashType = null;
        if (jsonObject.getString("status").equalsIgnoreCase("0")){
            JSONObject data = jsonObject.getJSONObject("data");
            hashValue= data.getString("hashValue");
            hashType = data.getString("hashType");
        }
        BasePatientDO patientDO = patientDao.findById(outpatientDO.getPatient()).orElse(null);
        BaseDoctorDO doctorDO = doctorDao.findByIdAndDel(outpatientDO.getDoctor());
        if (patientDO!=null&&doctorDO!=null){
            String patientName = patientDO.getName();
            Integer patientAge = IdCardUtil.getAgeForIdcard(patientDO.getIdcard());
            String patientSex = IdCardUtil.getSexForIdcard(patientDO.getIdcard());
            String recipeTime = DateUtil.dateToStrLong(prescriptionDO.getCreateTime());
            String openId = doctorDO.getOpenid();
            String idcard = patientDO.getIdcard();
            if (hashType!=null&&hashValue!=null){
                JSONObject object1 = synRecipeInfo("hash_004",getCode(),patientName,patientAge.toString(),patientSex,"SF",recipeTime,hashValue,hashType,openId,idcard);
                if (object1.getString("status").equalsIgnoreCase("0")){
                    logger.info("西药处方签名成功"+object1);
                    JSONObject jsonObject1 = JSONObject.parseObject(object1.getString("data"));
                    if (jsonObject1!=null){
                        baseSign=jsonObject1.getString("stamp");
                    }
                }
            }
        }
        return baseSign;
    }
    /**
     * 病历签名
     * @param prescriptionDO
     * @throws Exception
     */
    public void SOF_SignDataWithExtraInfoEmr(WlyyPrescriptionDO prescriptionDO) throws Exception {
        WlyyOutpatientDO outpatientDO = outpatientDao.findById(prescriptionDO.getOutpatientId()).orElse(null);
        WlyyPrescriptionEmrDO prescriptionEmrDO = prescriptionEmrDao.findEmrByPrescriptionId(prescriptionDO.getId());
        JSONObject object = new JSONObject();
        object.put("emr",prescriptionEmrDO);
        object.put("registerSn",outpatientDO.getRegisterNo());
        object.put("doctorName",outpatientDO.getDoctorName());
        object.put("patientName",outpatientDO.getPatientName());
        JSONObject jsonObject = computeDigestForAlg(object.toJSONString());
        String hashValue = null;
        String hashType = null;
        if (jsonObject.getString("status").equalsIgnoreCase("0")){
            JSONObject data = jsonObject.getJSONObject("data");
            hashValue= data.getString("hashValue");
            hashType = data.getString("hashType");
        }
        BasePatientDO patientDO = patientDao.findById(outpatientDO.getPatient()).orElse(null);
        BaseDoctorDO doctorDO = doctorDao.findByIdAndDel(outpatientDO.getDoctor());
        if (patientDO!=null&&doctorDO!=null){
            String patientName = patientDO.getName();
            Integer patientAge = IdCardUtil.getAgeForIdcard(patientDO.getIdcard());
            String patientSex = IdCardUtil.getSexForIdcard(patientDO.getIdcard());
            String recipeTime = DateUtil.dateToStrLong(prescriptionDO.getCreateTime());
            String openId = doctorDO.getOpenid();
            String idcard = patientDO.getIdcard();
            if (hashType!=null&&hashValue!=null){
                JSONObject object1 = synRecipeInfo("hash_002",getCode(),patientName,patientAge.toString(),patientSex,"SF",recipeTime,hashValue,hashType,openId,idcard);
                if (object1.getString("status").equalsIgnoreCase("0")){
                    logger.info("门诊病历签名成功"+object1);
                }
            }
        }
    }
    //========================调用内网服务结束===================
    //============================业务服务调用================================

+ 10 - 2
business/base-service/src/main/java/com/yihu/jw/hospital/prescription/service/PrescriptionService.java

@ -10367,12 +10367,14 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres
                    }
                    //同步处方
                    String applyDoctor = doctorMappingDO.getDoctorName()+"/"+doctorMappingDO.getMappingCode();
                    com.alibaba.fastjson.JSONObject object = dsyyPrescriptionService.savePrescriptionToHospital("0",outpatientDO.getCardNo(),outpatientDO.getRegisterNo(),outpatientDO.getDept(),applyDoctor,"50400",infoDOS);
                    com.alibaba.fastjson.JSONObject object = dsyyPrescriptionService.savePrescriptionToHospital("0",outpatientDO.getCardNo(),outpatientDO.getRegisterNo(),outpatientDO.getDept(),applyDoctor,"50105",infoDOS);
                    logger.info("成功上传处方"+object);
                    //{"msg":"交易成功","code":"0","data":{"PresDetail":{"PresNo":"16151365"}},"success":"True"}
                    if (object!=null){
                        if (object.getString("returnCode").equalsIgnoreCase("0")){
                            String realOrder = object.getString("PresNo");
                            com.alibaba.fastjson.JSONObject jsonObject = object.getJSONObject("data");
                            com.alibaba.fastjson.JSONObject jsonObject1 = jsonObject.getJSONObject("PresDetail");
                            String realOrder = jsonObject1.getString("PresNo");
                            wlyyPrescriptionDO.setAdmNo(outpatientDO.getAdmNo());
                            wlyyPrescriptionDO.setSerialNo(outpatientDO.getAdmNo());
                            wlyyPrescriptionDO.setRealOrder(realOrder);
@ -10380,6 +10382,12 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres
                            throw new Exception(object.getString("msg"));
                        }
                    }
                    logger.info("进入处方签名");
                    try {
                        String baseSign=dsyyPrescriptionService.SOF_SignDataWithExtraInfo(wlyyPrescriptionDO);
                    }catch (Exception e){
                        e.printStackTrace();
                    }
                /*    logger.info("进入处方签名");
                    //电子病例签名
                    String baseSign=hcyyEntranceService.initiateDataSign(wlyyPrescriptionDO.getId(),2,ip);

+ 161 - 2
business/base-service/src/main/java/com/yihu/jw/hospital/prescription/service/entrance/DsyyEntranceService.java

@ -8,6 +8,7 @@ import com.yihu.jw.dict.dao.DictHospitalDeptDao;
import com.yihu.jw.doctor.dao.BaseDoctorDao;
import com.yihu.jw.doctor.dao.BaseDoctorHospitalDao;
import com.yihu.jw.doctor.dao.BaseDoctorRoleDao;
import com.yihu.jw.entity.base.ca.OauthCaConfigDO;
import com.yihu.jw.entity.base.dict.DictHospitalDeptDO;
import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
import com.yihu.jw.entity.base.doctor.BaseDoctorHospitalDO;
@ -119,6 +120,8 @@ public class DsyyEntranceService {
    private JdbcTemplate jdbcTemplate;
    @Autowired
    private HibenateUtils hibenateUtils;
    @Autowired
    private OauthCaConfigDao oauthCaConfigDao;
    private static String key="bvvsf3JA0mUXMU+mVnMaOQ==";
@ -1027,6 +1030,7 @@ public class DsyyEntranceService {
        if (StringUtils.isNoneBlank(chargeCode)){
            sql+=" and charge_code = '"+chargeCode+"' ";
        }
        sql +=" and group_no ='50105' ";
        JSONArray array = new JSONArray();
        Map<String,Object> params = new HashedMap();
        params.put("sql",sql);
@ -1496,6 +1500,43 @@ public class DsyyEntranceService {
    }
    /**
     * 获取患者待结算信息
     *
     * @param
     * @return
     */
    public String getSettlement(String cardNo,String registerNo) throws  Exception{
        String api = "getSettlement";
        String msgHeader ="<?xml version=\"1.0\" encoding=\"utf-8\"?> " +
                "<root> " +
                "   <serverName>"+api+"</serverName>  " +
                "   <format>xml</format>" +
                "   <callOperator></callOperator> " +
                "   <certificate>"+key+"</certificate> " +
                "</root>";
        String condition ="";
        if (StringUtils.isNoneBlank(cardNo)){
            condition += "<cardNo>"+cardNo+"</cardNo>";
        }
        if (StringUtils.isNoneBlank(registerNo)){
            condition += "<registerNo>"+registerNo+"</registerNo>";
        }
        String msgBody ="<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
                "<root>"+condition+"</root>";
        Map<String,String> params = new HashedMap();
        params.put("msgHeader",msgHeader);
        params.put("msgBody",msgBody);
        logger.info("getSettlement params:"+params.toString());
        String xml = getDsyyWebServiceInfo("CallInterface",params,getOperateUrl());
        XMLSerializer xmlSerializer = new XMLSerializer();
        String json = xmlSerializer.read(xml).toString();
        logger.info(" getSettlement json:"+json);
        return json;
    }
    //=============his webservice 调用结束=========================
    //========================集成平台调用开始===========================
@ -1506,7 +1547,8 @@ public class DsyyEntranceService {
     * @throws Exception
     */
    public String authorize()throws Exception{
        String condition ="{\"clientId\":\"2019111513540975\",\"responseType\":\"code\"}";
        OauthCaConfigDO oauthCaConfigDO = oauthCaConfigDao.findById("oauth_ca_config").get();
        String condition ="{\"clientId\":\""+oauthCaConfigDO.getClientId()+"\",\"responseType\":\"code\"}";
        WritebackCvalueInterfaceLocator locator = new WritebackCvalueInterfaceLocator();
        String returnStr = locator.getWritebackCvalueInterfaceSoap().authorize(condition);
        return returnStr;
@ -1518,12 +1560,129 @@ public class DsyyEntranceService {
     * @throws Exception
     */
    public String tokeninfo(String requestId)throws Exception{
        String condition ="{\"clientId\":\"2019111513540975\",\"requestId\":\""+requestId+"\"}";
        OauthCaConfigDO oauthCaConfigDO = oauthCaConfigDao.findById("oauth_ca_config").get();
        String condition ="{\"clientId\":\""+oauthCaConfigDO.getClientId()+"\",\"requestId\":\""+requestId+"\"}";
        WritebackCvalueInterfaceLocator locator = new WritebackCvalueInterfaceLocator();
        String returnStr = locator.getWritebackCvalueInterfaceSoap().tokeninfo(condition);
        return returnStr;
    }
    /**
     * 数据哈希计算接口
     * @param content
     * @return
     */
    public JSONObject computeDigestForAlg(String content){
        try {
            WritebackCvalueInterfaceLocator locator = new WritebackCvalueInterfaceLocator();
            JSONObject object = new JSONObject();
            object.put("originData",content);
            String response = locator.getWritebackCvalueInterfaceSoap().computeDigestForAlg(object.toJSONString());
            logger.info("数据哈希计算接口 :"+response);
            return JSONObject.parseObject(response);
        }catch (Exception e){
            e.printStackTrace();
        }
        return null;
    }
    /***
     * 数据签名接口
     * @param templateId 模板ID签名数据摘要数据类型
     * @param urId 签名流水ID
     * @param patientName 患者姓名
     * @param patientAge 患者年龄
     * @param patientSex 患者性别
     * @param patientCardType  证件类型
     * @param recipeTime 开具时间
     * @param hashValue Hash原文(从签名指纹接口结果中得到的)
     * @param hashType Hash算法(从签名指纹接口结果中得到的)
     * @return
     */
    public JSONObject synRecipeInfo(String templateId,String urId,String patientName,String patientAge,String patientSex,String patientCardType,String recipeTime,String hashValue,String hashType,String openId,String patientCard){
        try {
            OauthCaConfigDO oauthCaConfigDO = oauthCaConfigDao.findById("oauth_ca_config").orElse(null);
            String clientId= "";
            String clientSecret = "";
            if (oauthCaConfigDO!=null){
                clientId=oauthCaConfigDO.getClientId();
                clientSecret=oauthCaConfigDO.getClientSecret();
            }
            JSONObject object = new JSONObject();
            JSONObject msg = new JSONObject();
            JSONObject head = new JSONObject();
            head.put("clientId",clientId);
            head.put("templateId",templateId);
            head.put("clientSecret",clientSecret);
            head.put("selfSign",true);
            msg.put("head",head);
            JSONObject body = new JSONObject();
            body.put("urId",urId);
            body.put("patientName",patientName);
            body.put("patientAge",patientAge);
            body.put("patientSex",patientSex);
            body.put("patientCardType",patientCardType);
            body.put("recipeTime",recipeTime);
            body.put("hashValue",hashValue);
            body.put("hashType",hashType);
            body.put("patientCard",patientCard);
            body.put("openId",openId);
            msg.put("body",body);
            object.put("msg",msg);
            object.put("signType",0);
            logger.info("请求参数:"+object);
            WritebackCvalueInterfaceLocator locator = new WritebackCvalueInterfaceLocator();
            String response = locator.getWritebackCvalueInterfaceSoap().synRecipeInfo(object.toJSONString());
            logger.info("数据签名接口 :"+response);
            return JSONObject.parseObject(response);
        }catch (Exception e){
            e.printStackTrace();
        }
        return null;
    }
    /***
     * 获取签名结果接口
     * uniqueId 签名数据唯一标识
     * @return
     */
    public JSONObject synSignDataSearch(String uniqueId){
        try {
            OauthCaConfigDO oauthCaConfigDO = oauthCaConfigDao.findById("oauth_ca_config").orElse(null);
            String clientId= "";
            String clientSecret = "";
            if (oauthCaConfigDO!=null){
                clientId=oauthCaConfigDO.getClientId();
                clientSecret=oauthCaConfigDO.getClientSecret();
            }
            JSONObject object = new JSONObject();
            JSONObject head = new JSONObject();
            head.put("clientId",clientId);
            head.put("clientSecret",clientSecret);
            object.put("head",head);
            JSONObject body = new JSONObject();
            body.put("uniqueId",uniqueId);
            object.put("body",body);
            logger.info("请求参数:"+object);
            WritebackCvalueInterfaceLocator locator = new WritebackCvalueInterfaceLocator();
            String response = locator.getWritebackCvalueInterfaceSoap().synSignDataSearch(object.toJSONString());
            logger.info("数据签名接口 :"+response);
            return JSONObject.parseObject(response);
        }catch (Exception e){
            e.printStackTrace();
        }
        return null;
    }
    /**
     * 发送短信
     * @param strDllModel
     * @param strPhoneNO
     * @param strMsgContent
     * @return
     * @throws Exception
     */
    public String sendMessage(String strDllModel,String strPhoneNO,String strMsgContent)throws Exception{
        SendMessge_ServiceLocator locator = new SendMessge_ServiceLocator();
        String returnStr = locator.getSendMessgeSoap().sendMessge(strDllModel,strPhoneNO,strMsgContent);

+ 66 - 0
svr/svr-internet-hospital-entrance/src/main/java/com/yihu/jw/entrance/controller/DsyyController.java

@ -156,6 +156,16 @@ public class DsyyController extends EnvelopRestEndpoint {
                ApplyDept,ApplyDoctor,inspectionDOList));
    }
    @PostMapping(value = "/getSettlement")
    @ApiOperation(value = "获取患者待结算信息")
    public ObjEnvelop getSettlement(@ApiParam(name = "cardNo", value = "卡号", required = false)
                                    @RequestParam(value = "cardNo",required = false)String cardNo,
                                    @ApiParam(name = "registerNo", value = "挂号号", required = false)
                                    @RequestParam(value = "registerNo",required = false)String registerNo) throws Exception {
        return success("请求成功",dsyyEntranceService.getSettlement(cardNo,registerNo));
    }
    @GetMapping(value = "/authorize")
    @ApiOperation(value = "ca认证")
    public Envelop authorize() throws Exception {
@ -169,6 +179,62 @@ public class DsyyController extends EnvelopRestEndpoint {
        return success(dsyyEntranceService.tokeninfo(requestId));
    }
    @PostMapping(value = "/computeDigestForAlg")
    @ApiOperation(value = "数据哈希计算接口")
    public Envelop computeDigestForAlg(@ApiParam(name = "content", value = "内容", required = false)
                                           @RequestParam(value = "content",required = false)String content) throws Exception {
        return success(dsyyEntranceService.computeDigestForAlg(content));
    }
    /**
     *
     * @param templateId 模板ID签名数据摘要数据类型
     * @param urId 签名流水ID
     * @param patientName 患者姓名
     * @param patientAge 患者年龄
     * @param patientSex 患者性别
     * @param patientCardType  证件类型
     * @param recipeTime 开具时间
     * @param hashValue Hash原文(从签名指纹接口结果中得到的)
     * @param hashType Hash算法(从签名指纹接口结果中得到的)
     * @return
     * @throws Exception
     */
    @PostMapping(value = "/synRecipeInfo")
    @ApiOperation(value = "数据签名接口")
    public Envelop synRecipeInfo( @ApiParam(name = "templateId", value = "模板ID签名数据摘要数据类型", required = false)
                              @RequestParam(value = "templateId",required = false)String templateId,
                                  @ApiParam(name = "urId", value = "签名流水ID", required = false)
                                  @RequestParam(value = "urId",required = false)String urId,
                                  @ApiParam(name = "patientName", value = "患者姓名", required = false)
                                      @RequestParam(value = "patientName",required = false)String patientName,
                                  @ApiParam(name = "patientAge", value = "患者年龄", required = false)
                                      @RequestParam(value = "patientAge",required = false)String patientAge,
                                  @ApiParam(name = "patientSex", value = "患者性别", required = false)
                                      @RequestParam(value = "patientSex",required = false)String patientSex,
                                  @ApiParam(name = "patientCardType", value = "证件类型", required = false)
                                      @RequestParam(value = "patientCardType",required = false)String patientCardType,
                                  @ApiParam(name = "recipeTime", value = "开具时间", required = false)
                                      @RequestParam(value = "recipeTime",required = false)String recipeTime,
                                  @ApiParam(name = "hashValue", value = "Hash原文(从签名指纹接口结果中得到的)", required = false)
                                      @RequestParam(value = "hashValue",required = false)String hashValue,
                                  @ApiParam(name = "hashType", value = "Hash算法(从签名指纹接口结果中得到的)", required = false)
                                      @RequestParam(value = "hashType",required = false)String hashType,
                                  @ApiParam(name = "openId", value = "openid", required = false)
                                      @RequestParam(value = "openId",required = false)String openId,
                                  @ApiParam(name = "patientCard", value = "患者身份证", required = false)
                                      @RequestParam(value = "patientCard",required = false)String patientCard) throws Exception {
        return success(dsyyEntranceService.synRecipeInfo(templateId,urId,patientName,patientAge,patientSex,patientCardType,
                recipeTime,hashValue,hashType,openId,patientCard));
    }
    @PostMapping(value = "/synSignDataSearch")
    @ApiOperation(value = "获取签名结果接口")
    public Envelop synSignDataSearch(@ApiParam(name = "uniqueId", value = "签名数据唯一标识", required = false)
                                       @RequestParam(value = "uniqueId",required = false)String uniqueId) throws Exception {
        return success(dsyyEntranceService.synSignDataSearch(uniqueId));
    }
    @GetMapping(value = "/sendMessage")
    @ApiOperation(value = "发短信")
    public Envelop SendMessage(String strDllModel,String strPhoneNO,String strMsgContent) throws Exception {

+ 2 - 2
svr/svr-internet-hospital/src/main/resources/application.yml

@ -1119,8 +1119,8 @@ qywx:
express:
  sf_url: http://mrds-admin-ci.sit.sf-express.com:45478
  sf_code: HD000001
  sf_check_word: AAAABBBBCCCCDDDD
  sf_code: WH000698
  sf_check_word: TGFHKAUIGFyjtWH000698
---
spring:
  profiles: hcyyProd