zjh
2024-06-19 6d09f4ac6ee4718acd131f234f24ad1ac3c2ce3c
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCustomerController.java
@@ -3,15 +3,19 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ltkj.common.annotation.Log;
import com.ltkj.common.enums.BusinessType;
import com.ltkj.common.enums.DataSourceType;
import com.ltkj.common.utils.SecurityUtils;
import com.ltkj.framework.config.MatchUtils;
import com.ltkj.framework.datasource.DynamicDataSourceContextHolder;
import com.ltkj.hosp.domain.HisApiConfig;
import com.ltkj.hosp.domain.TjCustomerBlack;
import com.ltkj.hosp.domain.TjReservation;
import com.ltkj.hosp.hisDto.OutpinregapplyDto;
@@ -56,10 +60,12 @@
public class TjCustomerController extends BaseController {
    @Resource
    private ITjCustomerService tjCustomerService;
    @Autowired
    private HisApiGetMethodService hisApiGetMethodService;
    @Resource
    private ITjReservationService tjReservationService;
    @Autowired
    private HisApiConfigService hisApiConfigService;
    @Resource
    private ISysConfigService sysConfigService;
@@ -147,7 +153,7 @@
            LambdaQueryWrapper<TjCustomer> customerLambdaQueryWrapper = new LambdaQueryWrapper<>();
            customerLambdaQueryWrapper.eq(TjCustomer::getCusIdcard, cusIdcard);
            TjCustomer tjCustomerServiceOne = tjCustomerService.getOne(customerLambdaQueryWrapper);
            if(null ==tjCustomerServiceOne){
            if (null == tjCustomerServiceOne) {
                return AjaxResult.error("该人员信息不存在请先进行登记!!!");
            }
            final String getInfoFromSqlData = sysConfigService.selectConfigByKey("getInfoFromSqlData");
@@ -211,11 +217,11 @@
//                controller.Outpincreateapply(tjCustomer);
                Date dates = new Date();
/*                Date dates = new Date();
                final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss");
                OutpinregapplyDto outpinregapplyDto = new OutpinregapplyDto();
                outpinregapplyDto.setPationid(tjCustomerServiceOne.getPationId());
                outpinregapplyDto.setSqysbm(SecurityUtils.getUsername());
                outpinregapplyDto.setSqysbm("00029");
                outpinregapplyDto.setMzksbm("0101");
                outpinregapplyDto.setCzybm("00029");
                outpinregapplyDto.setSfjz("0");
@@ -235,10 +241,12 @@
                        String hisRegistrationId = resultDatasss.get("his_registration_id").toString();
                        //门诊医生接诊
                        controller.Outpinconapply(hisRegistrationId, date, SecurityUtils.getUsername());
                        tjCustomerServiceOne.setCardId(hisRegistrationId);
                        tjCustomerService.updateById(tjCustomerServiceOne);
//                        tjCustomerServiceOne.setCardId(hisRegistrationId);
//                        tjCustomerServiceOne.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjCustomerServiceOne.getCusIdcard()),"yyyy-MM-dd"));
//                        tjCustomerService.updateById(tjCustomerServiceOne);
                        tjCustomerService.updateCardId(tjCustomerServiceOne.getCusId(),hisRegistrationId);
                    }
                }
                }*/
            }
            //end====2023.12.12
@@ -346,7 +354,10 @@
                tjCustomer.setDiscount(tjReservation.getDiscount());
                tjCustomer.setGroupingId(tjReservation.getGroupingId());
                return success(tjCustomer);
            }else {
            } else {
                LambdaQueryWrapper<TjCustomer> customerLambdaQueryWrapper1 = new LambdaQueryWrapper<>();
                customerLambdaQueryWrapper1.eq(TjCustomer::getCusIdcard, cusIdcard);
                TjCustomer one = tjCustomerService.getOne(customerLambdaQueryWrapper1);
                return AjaxResult.success("暂无预约信息", tjCustomerServiceOne);
            }
        }
@@ -475,20 +486,20 @@
        substring = DigestUtils.md5DigestAsHex(substring.getBytes());
        tjCustomer.setCusPassword(substring);
//        if (tjCustomer.getIdType().equals("1")) {
//            tjCustomer.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()), "yyyy-MM-dd"));
            tjCustomer.setCusBrithday(DateUtil.parse(MatchUtils.getBirthDayByIdCard(tjCustomer.getCusIdcard()), "yyyy-MM-dd"));
//        }
        tjCustomer.setCusNumber(0L);
        String config = sysConfigService.selectConfigByKey("sfkqdyhis");
        if(null !=config && config.equals("Y")){
        if (null != config && config.equals("Y")) {
            AjaxResult tjCustomer1 = suijieHisXinXi(tjCustomer, date);
            if (tjCustomer1 != null) return tjCustomer1;
        }else {
        } else {
            if (tjCustomerService.save(tjCustomer)) {
                return AjaxResult.success(tjCustomer);
            }
        }
        return AjaxResult.error();
}
    }
    private AjaxResult suijieHisXinXi(TjCustomer tjCustomer, String date) {
        AjaxResult result = controller.Outpincreateapply(tjCustomer);
@@ -501,10 +512,18 @@
            if (null != resultData && resultData.size() > 0) {
                String pationid = resultData.get("PationId").toString();
                if (null != pationid) {
                        OutpinregapplyDto outpinregapplyDto = new OutpinregapplyDto();
                    tjCustomer.setPationId(pationid);
                    tjCustomerService.updateById(tjCustomer);
                    //保存注册入参出参
                    resultData.put("cardId",pationid);
                    JSONObject object4 = JSONUtil.parseObj(resultData);
                    LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>();
                    lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Outpincreateapply");
                    HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper);
                    hisApiGetMethodService.save(object4, "Outpincreateapply", hisApiConfig, JSONUtil.toJsonStr(BeanUtil.beanToMap(tjCustomer)));
                    /*                        OutpinregapplyDto outpinregapplyDto = new OutpinregapplyDto();
                        outpinregapplyDto.setPationid(pationid);
//                    outpinregapplyDto.setHisRegistrationId(pationid);
                        outpinregapplyDto.setSqysbm(SecurityUtils.getUsername());
                        outpinregapplyDto.setSqysbm("00029");
                        outpinregapplyDto.setMzksbm("0101");
                        outpinregapplyDto.setCzybm("00029");
                        outpinregapplyDto.setSfjz("0");
@@ -537,8 +556,8 @@
                                    }
                                }
                            }
                        }
                    }
                        }*/
                }
            }
            if (tjCustomerService.save(tjCustomer)) {
@@ -552,10 +571,15 @@
     * 修改客户信息
     */
    //@PreAuthorize("@ss.hasPermi('hosp:customer:edit')")
    //@Log(title = "客户信息", businessType = BusinessType.UPDATE)
    @Log(title = "客户信息", businessType = BusinessType.UPDATE)
    @PutMapping
    @ApiOperation(value = "修改客户信息")
    public AjaxResult edit(@RequestBody @ApiParam(value = "客户对象") TjCustomer tjCustomer) {
        TjCustomer customer = tjCustomerService.getById(tjCustomer.getCusId());
        if(null==customer){
            return AjaxResult.error("该人员不存在!");
        }
        String cusPhone = tjCustomer.getCusPhone();
        if (null == cusPhone) {
@@ -568,7 +592,37 @@
            return AjaxResult.error("该手机号已被使用!");
        }*/
        tjCustomer.setCusPhone(cusPhone);
        return toAjax(tjCustomerService.updateTjCustomer(tjCustomer));
        if (tjCustomerService.updateById(tjCustomer)) {
            String config = sysConfigService.selectConfigByKey("sfkqdyhis");
            if (null != config && config.equals("Y")) {
                tjCustomer.setPationId(customer.getPationId());
                AjaxResult result = controller.Outpincreateapply(tjCustomer);
                String result1 = getAjaxResult(result);
                JSONObject object = getJSONObject(result1);
                String code = object.getStr("ResultCode");
                if (code.equals("0")) {
                    /*               JSONArray resultDatass = object.getJSONArray("ResultData");
                    Map<String, Object> resultData = (Map<String, Object>) resultDatass.get(0);
                    if (null != resultData && resultData.size() > 0) {
                        String pationid = resultData.get("PationId").toString();
                        if (null != pationid) {
                            tjCustomer.setPationId(pationid);
                            tjCustomerService.updateById(tjCustomer);
                        }
                    }*/
                    //保存修改入参出参
//                    object.putOpt("cardId",customer.getPationId());
//                    LambdaQueryWrapper<HisApiConfig> lambdaQueryWrapper = new LambdaQueryWrapper<>();
//                    lambdaQueryWrapper.eq(HisApiConfig::getApiMethod, "Outpincreateapply");
//                    HisApiConfig hisApiConfig = hisApiConfigService.getOne(lambdaQueryWrapper);
//                    hisApiGetMethodService.save(object, "Outpincreateapply", hisApiConfig, JSONUtil.toJsonStr(BeanUtil.beanToMap(tjCustomer)));
                    return AjaxResult.success();
                }
                return AjaxResult.error();
            }
            return AjaxResult.success();
        }
       return AjaxResult.error();
    }
    /**