zjh
2025-05-30 1356787741a823dde5ed40bb19dece59dd979511
zjh20250530
8个文件已修改
4个文件已添加
263 ■■■■ 已修改文件
ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysLoginController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java 84 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-common/src/main/java/com/ltkj/common/core/domain/model/LoginBody.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjBzPro.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjBzProMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/TjBzProService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjBzProServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/resources/mapper/DictCompMapper.xml 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/resources/mapper/hosp/TjOrderMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysLoginController.java
@@ -100,7 +100,7 @@
        if (loginBody.getMobile()) {
            token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getType(), loginBody.getCode(), loginBody.getUuid(),hospId);
        } else {
            token = loginService.Cuslogin(loginBody.getUsername(), loginBody.getPassword(), loginBody.getType(), loginBody.getCode(), loginBody.getUuid());
            token = loginService.Cuslogin(loginBody.getUsername(),loginBody.getSfzh(),loginBody.getPassword(), loginBody.getType(), loginBody.getCode(), loginBody.getUuid());
            LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>();
            wq.eq(TjCustomer::getCusPhone, loginBody.getUsername());
            TjCustomer tjCustomer = customerService.getOne(wq);
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjCheckController.java
@@ -1462,7 +1462,11 @@
                                } catch (NumberFormatException ignored) {
                                }
                            } else {
                                if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阴"))
                                tjOrderDetail.setYcbz("");
                                if (tjOrderDetail.getProResult() != null && tjOrderDetail.getProResult().contains("阳"))
                                    tjOrderDetail.setYcbz("↑");
                                tjOrderDetail.setProResult(tjOrderDetail.getProResult());
                            }
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjOrderController.java
@@ -1040,11 +1040,11 @@
            }
            tjReservation.setIsExpire(1);
            tjReservationService.updateById(tjReservation);
            if (null != tjReservation.getTeamNo() && tjOrder.getTjType().equals("1")) {
                tjOrder.setTjType("1");
            } else if (tjOrder.getTjType().equals("2")) {
                tjOrder.setTjType("2");
            }
//            if (null != tjReservation.getTeamNo() && tjOrder.getTjType().equals("1")) {
//                tjOrder.setTjType("1");
//            } else if (tjOrder.getTjType().equals("2")) {
//                tjOrder.setTjType("2");
//            }
        }
        if (StringUtil.isBlank(tjOrder.getFirmId())) {
            tjOrder.setFirmId("0");
@@ -1506,6 +1506,10 @@
            List<TbTransition> list = tbTransitionService.list(wrapper);
            BigDecimal zongjia = new BigDecimal("0.0");
            String tjfhisxmbm = configService.selectConfigByKey("tjfhisxmbm");
            String lycdzjhmxj = configService.selectConfigByKey("lycdzjhmxj");
            for (TbTransition transition : list) {
                LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>();
                wrapper1.eq(TjProject::getProId, transition.getProId());
@@ -1530,7 +1534,24 @@
                array.add(obj);
                zongjia = zongjia.add(allPrice);
            }
            if(StringUtil.isNotBlank(lycdzjhmxj) && lycdzjhmxj.equalsIgnoreCase("N")){
            map.put("feiYongInfoList", array);
            }else {
                JSONArray zjarray = JSONUtil.createArray();
                JSONObject obj = JSONUtil.createObj();
                int sl = 1;
                obj.putOpt("danJia", zongjia);
                obj.putOpt("jieSuanJe", zongjia);
                obj.putOpt("shuliang", sl);
                obj.putOpt("zhiXingKs", "100");
                obj.putOpt("zhiXingKsMc","体检中心");
                obj.putOpt("shouFeiXmId", tjfhisxmbm);
                obj.putOpt("shouFeiXmMc", "体检费");
                zjarray.add(obj);
                map.put("feiYongInfoList", zjarray);
            }
            log.info("调用His接口前 收费总价:{}", zongjia.toString());
            String post = HttpClientUtils.sendPost(apiUrl + "/api/his/" + hospbm + "/creatCostInfo", map);
@@ -3214,13 +3235,14 @@
        TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
        if (null != order) {
//            String payByTjNum = tjOrderService.isPayByTjNum(String.valueOf(order.getOrderId()));
//            if (null != payByTjNum) {
//                return AjaxResult.error("该用户已收费不可撤销签到!");
//            }
            if (null != order.getFinishTime()) return AjaxResult.error("该人员已签离,不可撤销!!!");
            Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order);
            String username = SecurityUtils.getUsername();
            LambdaQueryWrapper<TjCustomer> wrapper = new LambdaQueryWrapper<>();
            wrapper.eq(TjCustomer::getCusId, order.getUserId());
            TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
            String s = configService.selectConfigByKey("is_request_common_his_api");
//            if (null != s && s.equals("Y") && "2".equals(order.getTjType())) {
@@ -3234,9 +3256,7 @@
                wrapper1.eq(TjFlowingWater::getOrderId, order.getOrderId());
                wrapper1.orderByDesc(TjFlowingWater::getJxbz);
                List<TjFlowingWater> list = tjFlowingWaterService.list(wrapper1);
                LambdaQueryWrapper<TjCustomer> wrapper = new LambdaQueryWrapper<>();
                wrapper.eq(TjCustomer::getCusId, order.getUserId());
                TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
                for (TjFlowingWater water : list) {
                    if (water.getPayStasus() == 0L) {
@@ -3246,11 +3266,18 @@
                    }
                }
                log.info("工号为: "+username+" 的用户即将撤销 体检号为:"+tjNum+" 的体检记录;" );
                AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order, true, tjNum);
                if (error != null && !error.get("code").toString().equals("200")) return error;
                if (error != null && !error.get("code").toString().equals("200")){
                    log.info("工号为: "+username+" 的用户正在撤销 体检号为:"+tjNum+" 并且未支付的体检记录;" );
                    return error;
                }
                AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, tjNum);
                if (error1 != null && !error.get("code").toString().equals("200")) return error1;
                if (error1 != null && !error.get("code").toString().equals("200"))
                {
                    log.info("工号为: "+username+" 的用户正在撤销 体检号为:"+tjNum+" 并且已支付的体检记录;" );
                    return error1;
                }
            } else {
                tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
                tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
@@ -3258,10 +3285,8 @@
                tjFlowingWaterService.deleteTjFlowingWaterByOrderId(String.valueOf(order.getOrderId()));
                transitionService.deletedTbTransitionByTjNum(tjNum);
                ycxmService.delOrderYcXmJyByTjh(tjNum);
                TjCustomer customer = tjCustomerService.getById(order.getUserId());
                customer.setCardId("0");
                tjCustomerService.updateById(customer);
                tjCustomer.setCardId("0");
                tjCustomerService.updateById(tjCustomer);
                xdPictureService.deleteTjXdPictureBytjNum(tjNum);
                tjSamplingMapper.deleteByTjNumAndCusId(tjNum, order.getUserId());
            }
@@ -3471,11 +3496,9 @@
    public AjaxResult revokeTjOrderByTjh(@RequestParam @ApiParam(value = "体检号") String tjNum) {
        TjOrder order = tjOrderService.getOrderByTjNum(tjNum);
        String username = SecurityUtils.getUsername();
        log.info("工号为: "+username+" 的用户即将强制撤销 体检号为:"+tjNum+" 的体检记录;" );
        if (null != order) {
//            String payByTjNum = tjOrderService.isPayByTjNum(String.valueOf(order.getOrderId()));
//            if (null != payByTjNum) {
//                return AjaxResult.error("该用户已收费不可撤销签到!");
//            }
            //这里删除的是这个人所有项目包括补录项目
            tjOrderService.deleteTjOrderByOrderId(order.getOrderId());
            tjOrderDetailService.deleteTjOrderDetailByOrderDetailId(String.valueOf(order.getOrderId()));
@@ -3533,7 +3556,10 @@
        }
        TjOrder order = tjOrderService.getOrderByTjNum(dto.getTjh());
        String username = SecurityUtils.getUsername();
        if (null != order) {
            log.info("工号为: "+username+" 的用户即将撤销 体检号为:"+dto.getTjh()+"补录单号为: " + dto.getBldhs()+ " 的 补录体检记录;" );
            String configByKey = configService.selectConfigByKey("sfkqdyhis");
            if (null != configByKey && configByKey.equals("Y")) {
                log.info("dto的数据是" + JSONUtil.toJsonStr(dto));
@@ -3595,10 +3621,18 @@
                wrapper.eq(TjCustomer::getCusId, order.getUserId());
                TjCustomer tjCustomer = tjCustomerService.getOne(wrapper);
                AjaxResult error = zuofeiWeiZhifu(weizhifu, tjCustomer, apiUrl, hospbm, order, true, dto.getTjh());
                if (error != null && !error.get("code").toString().equals("200")) return error;
                if (error != null && !error.get("code").toString().equals("200"))
                {
                    log.info("工号为: "+username+" 的用户正在撤销 体检号为:"+dto.getTjh()+"补录单号为: " + dto.getBldhs()+ " 并且未支付的补录体检记录;" );
                    return error;
                }
                AjaxResult error1 = zuofeiYiZhifu(yizhifu, tjCustomer, order, apiUrl, hospbm, false, dto.getTjh());
                if (error1 != null && !error.get("code").toString().equals("200")) return error1;
                if (error1 != null && !error.get("code").toString().equals("200"))
                {
                    log.info("工号为: "+username+" 的用户正在撤销 体检号为:"+dto.getTjh()+"补录单号为: " + dto.getBldhs()+ " 并且已支付的补录体检记录;" );
                    return error1;
                }
                return AjaxResult.success();
            } else {
                try {
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjProjectController.java
@@ -27,6 +27,7 @@
import jodd.util.StringUtil;
import lombok.extern.slf4j.Slf4j;
import net.sf.ehcache.constructs.scheduledrefresh.OverseerJob;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.session.SqlSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -73,6 +74,8 @@
    private RedisCache redisCache;
    @Autowired
    private TjProjectXgjlService xgjlService;
    @Autowired
    private TjBzProService bzProService;
    @GetMapping("/getTjHyBgList")
@@ -761,5 +764,52 @@
    }
    @PostMapping("/addOrupdateProByBz")
    @ApiOperation(value = "新增或修改所选项目的对应病种信息")
    @Transactional
    public AjaxResult addOrupdateProByBz(@ApiParam(value = "项目ID集合")@RequestParam(required = false) List<String> proIds,
                                      @ApiParam(value = "病种ID")@RequestParam(required = false)String bz) {
        try {
            if(null !=  proIds && !proIds.isEmpty()){
                bzProService.remove(new LambdaQueryWrapper<>(TjBzPro.class).eq(TjBzPro::getBzId,bz));
                for (String proId : proIds) {
                    TjBzPro bzPro=new TjBzPro();
                    bzPro.setBzId(Long.valueOf(bz));
                    bzPro.setProId(Long.valueOf(proId));
                    bzProService.save(bzPro);
                }
            }
            return AjaxResult.success();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    @GetMapping("/getProByBz")
    @ApiOperation(value = "查询病种对应项目")
    public AjaxResult getProByBz(@ApiParam(value = "病种ID")@RequestParam(required = false)String bz) {
        try {
            List<TjBzPro> list = bzProService.list(new LambdaQueryWrapper<>(TjBzPro.class).eq(TjBzPro::getBzId, bz));
            return AjaxResult.success(list);
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    @DeleteMapping("/delProByBz")
    @ApiOperation(value = "删除病种对应项目")
    public AjaxResult delProByBz(@ApiParam(value = "病种ID")@RequestParam(required = false)String bz,
                                 @ApiParam(value = "项目ID")@RequestParam(required = false)String proId) {
        try {
            bzProService.remove(new LambdaQueryWrapper<>(TjBzPro.class).eq(TjBzPro::getBzId,bz).eq(TjBzPro::getProId,proId));
            return AjaxResult.success();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
}
ltkj-common/src/main/java/com/ltkj/common/core/domain/model/LoginBody.java
@@ -24,6 +24,10 @@
    @ApiModelProperty(value = "密码")
    private String password;
    @ApiModelProperty(value = "密码")
    private String sfzh;
    /**
     * 验证码
     */
ltkj-framework/src/main/java/com/ltkj/framework/web/service/SysLoginService.java
@@ -231,7 +231,7 @@
     * @param password 密码
     * @return 结果
     */
    public String Cuslogin(String username, String password, Boolean type,String code,String uuid) {
    public String Cuslogin(String username,String sfzh, String password, Boolean type,String code,String uuid) {
        String aSwitch = configService.selectConfigByKey("captcha_switch");
        if(null !=aSwitch && aSwitch.equalsIgnoreCase("Y")){
@@ -251,7 +251,7 @@
        }
        LoginUser loginUser = loadCusByCusname(username, password);
        LoginUser loginUser = loadCusByCusname(username,sfzh, password);
        if (loginUser == null) {
            return "用户名或密码错误";
        }
@@ -273,11 +273,12 @@
        return tokenService.createToken(loginUser);
    }
    public LoginUser loadCusByCusname(String username, String password) {
    public LoginUser loadCusByCusname(String username,String sfzh, String password) {
        LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>();
        wq.eq(TjCustomer::getCusPhone, username);
        wq.eq(TjCustomer::getCusIdcard, sfzh);
        List<TjCustomer> customerList = customerService.list(wq);
        if (null == customerList || customerList.size() == 0) {
        if (null == customerList || customerList.isEmpty()) {
            //throw new ServiceException("登录用户:" + username + " 不存在");
            throw new ServiceException("账号或密码错误,请检查!");
        }
ltkj-hosp/src/main/java/com/ltkj/hosp/domain/TjBzPro.java
New file
@@ -0,0 +1,48 @@
package com.ltkj.hosp.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ltkj.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.File;
/**
 * ClassName: TjBzPro <br/>
 * Description: <br/>
 * date: 2025/5/27 17:55<br/>
 *
 * @author zjh<br />
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value = "体检项目对应病种对象")
public class TjBzPro extends BaseEntity {
    /**
     * 主键id
     */
    @TableId(type = IdType.AUTO)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    @ApiModelProperty(value = "项目ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long proId;
    @ApiModelProperty(value = "病种ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long bzId;
}
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjBzProMapper.java
New file
@@ -0,0 +1,16 @@
package com.ltkj.hosp.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ltkj.hosp.domain.TjBzPro;
import org.apache.ibatis.annotations.Mapper;
/**
 * ClassName: TjBzProMapper <br/>
 * Description: <br/>
 * date: 2025/5/28 16:15<br/>
 *
 * @author zjh<br />
 */
@Mapper
public interface TjBzProMapper extends BaseMapper<TjBzPro> {
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/TjBzProService.java
New file
@@ -0,0 +1,15 @@
package com.ltkj.hosp.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ltkj.hosp.domain.TjBzPro;
/**
 * ClassName: TjBzProService <br/>
 * Description: <br/>
 * date: 2025/5/28 16:15<br/>
 *
 * @author zjh<br />
 */
public interface TjBzProService extends IService<TjBzPro> {
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjBzProServiceImpl.java
New file
@@ -0,0 +1,18 @@
package com.ltkj.hosp.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ltkj.hosp.domain.TjBzPro;
import com.ltkj.hosp.mapper.TjBzProMapper;
import com.ltkj.hosp.service.TjBzProService;
import org.springframework.stereotype.Service;
/**
 * ClassName: TjBzProServiceImpl <br/>
 * Description: <br/>
 * date: 2025/5/28 16:16<br/>
 *
 * @author zjh<br />
 */
@Service
public class TjBzProServiceImpl extends ServiceImpl<TjBzProMapper, TjBzPro> implements TjBzProService {
}
ltkj-hosp/src/main/resources/mapper/DictCompMapper.xml
@@ -83,7 +83,14 @@
               valid_time,
               wbm,
               deleted,
               count_num
               count_num,
               dwlx,
               ssdq,
               lsgx,
               jjlx,
               qygm,
               hyfl,
               fxpg
        from dict_comp
    </sql>
ltkj-hosp/src/main/resources/mapper/hosp/TjOrderMapper.xml
@@ -328,8 +328,8 @@
    <delete id="deleteTjOrderByOrderId" parameterType="Long">
        delete
        from tj_order
        update  tj_order
        set deleted = 1
        where order_id = #{orderId}
    </delete>