zhaowenxuan
2025-02-28 4df7310436a3cdd87607fbd1458a63c03b475703
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjDiscardInspectionController.java
@@ -2,19 +2,29 @@
import java.util.List;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ltkj.framework.config.MatchUtils;
import com.ltkj.hosp.domain.TjCustomer;
import com.ltkj.hosp.domain.TjOrder;
import com.ltkj.hosp.domain.TjOrderRemark;
import com.ltkj.hosp.service.ITjOrderDetailService;
import com.ltkj.hosp.service.ITjOrderRemarkService;
import com.ltkj.hosp.service.ITjOrderService;
import com.sun.javafx.tk.TKClipboard;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import com.ltkj.common.core.controller.BaseController;
import com.ltkj.common.core.domain.AjaxResult;
import com.ltkj.hosp.domain.TjDiscardInspection;
import com.ltkj.hosp.service.ITjDiscardInspectionService;
import com.ltkj.common.core.page.TableDataInfo;
import javax.annotation.Resource;
/**
 * 弃检Controller
@@ -24,34 +34,96 @@
 */
@RestController
@RequestMapping("/hosp/inspection")
@Api(tags = "弃检记录接口")
public class TjDiscardInspectionController extends BaseController {
    @Autowired
    private ITjDiscardInspectionService tjDiscardInspectionService;
/**
 * 查询弃检列表
 */
@PreAuthorize("@ss.hasPermi('hosp:inspection:list')")
@GetMapping("/list")
    @Resource
    private ITjOrderService tjOrderService;
    @Resource
    private ITjOrderDetailService tjOrderDetailService;
    @Resource
    private ITjOrderRemarkService remarkService;
    /**
     * 查询弃检列表
     */
    @GetMapping("/list")
    public TableDataInfo list(TjDiscardInspection tjDiscardInspection) {
        startPage();
        List<TjDiscardInspection> list = tjDiscardInspectionService.selectTjDiscardInspectionList(tjDiscardInspection);
    if(null !=list && list.size()>0){
        for (TjDiscardInspection discardInspection : list) {
            discardInspection.setCusName(MatchUtils.hideCusName(discardInspection.getCusName()));
        }
    }
//        if (null != list && list.size() > 0) {
//            for (TjDiscardInspection discardInspection : list) {
//                discardInspection.setCusName(MatchUtils.hideCusName(discardInspection.getCusName()));
//            }
//        }
        return getDataTable(list);
    }
    /**
     * 获取弃检详细信息
     */
    @PreAuthorize("@ss.hasPermi('hosp:inspection:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return success(tjDiscardInspectionService.selectTjDiscardInspectionById(id));
    }
    /**
     * 恢复弃检
     */
    @PostMapping("/recall")
    public AjaxResult recall(@RequestBody List<TjDiscardInspection> tjDiscardInspection) {
        for (TjDiscardInspection discardInspection : tjDiscardInspection) {
            //判断是否审核
            LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>();
            wq.eq(TjOrder::getTjNumber,discardInspection.getTjNum());
            final TjOrder one = tjOrderService.getOne(wq);
            if (one==null){
                return error("无该体检号");
            }
            if (one.getStatus()==301){
                return error("初审已通过,不可撤回");
            }else if (one.getStatus()==401){
                return error("总检已通过,不可撤回");
            }else if (one.getStatus()==402){
                return error("报告已发布,不可撤回");
            }
            if (one.getHeshouStatus()==1){
                return error("报告已核收,不可撤回");
            }
            if (one.getCheckStatus()==1){
                return error("总检已审核,不可撤回");
            }
            //删除弃检记录
            final boolean b = tjDiscardInspectionService.removeById(discardInspection.getId());
            if(b){
                //将签离状态改回已签到
                one.setStatus(201);
                tjOrderService.updateById(one);
            }
        }
        return success("撤回成功");
    }
    @GetMapping("/csqijianhuifujiekou")
    @ApiOperation(value = "初审页面弃检恢复接口")
    @Transactional
    public AjaxResult chushenyemianqijianjiekou(@RequestParam String tjNUm, @RequestParam String proId) {
        TjOrder order = tjOrderService.getOrderByTjNum(tjNUm);
        if(null !=order && null !=order.getReportTime()){
            return AjaxResult.error("该人员报告已生成,不可恢复!");
        }
        LambdaQueryWrapper<TjOrderRemark> wq = new LambdaQueryWrapper<>();
        wq.eq(TjOrderRemark::getTjNumber, tjNUm);
        wq.eq(TjOrderRemark::getProId, proId);
        TjOrderRemark remark = remarkService.getOne(wq);
        remark.setType(0);
        remarkService.updateById(remark);
        return AjaxResult.success("操作成功!");
    }
}