zjh
2025-03-24 30616665503726b49cb627cf59a9460e59523bee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package com.ltkj.web.controller.system;
 
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.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
 *
 * @author ltkj_赵佳豪&李格
 * @date 2023-03-24
 */
@RestController
@RequestMapping("/hosp/inspection")
@Api(tags = "弃检记录接口")
public class TjDiscardInspectionController extends BaseController {
    @Autowired
    private ITjDiscardInspectionService tjDiscardInspectionService;
 
    @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()));
//            }
//        }
        return getDataTable(list);
    }
 
    /**
     * 获取弃检详细信息
     */
    @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("操作成功!");
    }
}