New file |
| | |
| | | package com.ltkj.web.controller.api; |
| | | |
| | | import cn.hutool.json.JSONArray; |
| | | import cn.hutool.json.JSONObject; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.ltkj.common.core.domain.AjaxResult; |
| | | import com.ltkj.hosp.mapper.TjCustomerMapper; |
| | | import com.ltkj.web.controller.system.TjCheckController; |
| | | import com.ltkj.web.controller.system.TjReportController; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * @Company: 西安路泰科技有限公司 |
| | | * @Author: zhaowenxuan |
| | | * @Date: 2025/2/18 10:59 |
| | | */ |
| | | @RequestMapping("/api") |
| | | @RestController |
| | | public class DefaultController { |
| | | |
| | | @Autowired |
| | | private TjReportController tjReportController; |
| | | @Autowired |
| | | private TjCheckController tjCheckController; |
| | | @Autowired |
| | | private TjCustomerMapper tjCustomerMapper; |
| | | |
| | | /** |
| | | * 提供给三方调用的报告查看接口 |
| | | * @param response |
| | | * @param json |
| | | */ |
| | | @PostMapping("/viewReport") |
| | | public void viewReport(HttpServletResponse response, @RequestBody String json){ |
| | | JSONObject entries = JSONUtil.parseObj(json); |
| | | String tjNum = entries.getStr("tjNum"); |
| | | tjReportController.preview(response,true,tjNum); |
| | | } |
| | | |
| | | /** |
| | | * 提供给三方调用的报告数据接口 |
| | | * @param json |
| | | * @return |
| | | */ |
| | | @PostMapping("/reportData") |
| | | public AjaxResult reportData(@RequestBody String json){ |
| | | String tjNum = JSONUtil.parseObj(json).getStr("tjNum"); |
| | | JSONObject entries = JSONUtil.parseObj(tjCheckController.updateCheckType(tjNum)); |
| | | removeNullFields(entries); |
| | | return JSONUtil.toBean(entries, AjaxResult.class); |
| | | } |
| | | |
| | | /** |
| | | * 对于HIS提供 |
| | | * 根据身份证号查询返回体检记录:包含姓名、身份证号、性别、出生日期、年龄、体检号、联系电话,体检日期,报告状态 |
| | | * @param json |
| | | * @return |
| | | */ |
| | | @PostMapping("/getInfo") |
| | | public AjaxResult getInfo(@RequestBody String json){ |
| | | JSONObject entries = JSONUtil.parseObj(json); |
| | | String card = entries.getStr("card"); |
| | | // TjCustomer customer = tjCustomerMapper.getCusInfo(card); |
| | | List<Map<String ,Object>> customer = tjCustomerMapper.getCusInfoList(card); |
| | | return AjaxResult.success(customer); |
| | | } |
| | | |
| | | /** |
| | | * 对于小程序提供 |
| | | * 根据身份证号查询返回体检记录:包含姓名、身份证号、性别、出生日期、年龄、体检号、联系电话,体检日期,报告状态 |
| | | * @param json |
| | | * @return |
| | | */ |
| | | @PostMapping("/getCusInfo") |
| | | public AjaxResult getInfoCus(@RequestBody String json){ |
| | | JSONObject entries = JSONUtil.parseObj(json); |
| | | String card = entries.getStr("card"); |
| | | String name = entries.getStr("name"); |
| | | List<Map<String ,Object>> customer = tjCustomerMapper.getCusInfoListByCardAndName(card,name); |
| | | return AjaxResult.success(customer); |
| | | } |
| | | |
| | | public static void removeNullFields(JSONObject jsonObject) { |
| | | ArrayList<String> strings = new ArrayList<>(); |
| | | strings.add("orderId"); |
| | | strings.add("updateTime"); |
| | | strings.add("orderDetailId"); |
| | | strings.add("flowingWaterId"); |
| | | strings.add("createBy"); |
| | | strings.add("deleted"); |
| | | strings.add("createTime"); |
| | | strings.add("updateBy"); |
| | | strings.add("createId"); |
| | | strings.add("prosId"); |
| | | strings.add("params"); |
| | | |
| | | List<String> keysToRemove = new ArrayList<>(); |
| | | jsonObject.forEach((key, value) -> { |
| | | if (strings.contains(key)) { |
| | | keysToRemove.add(key); |
| | | } else if (value == null) { |
| | | keysToRemove.add(key); |
| | | } else if (value instanceof JSONObject) { |
| | | removeNullFields((JSONObject) value); |
| | | } else if (value instanceof JSONArray) { |
| | | JSONArray jsonArray = (JSONArray) value; |
| | | for (Object arrayItem : jsonArray) { |
| | | if (arrayItem instanceof JSONObject) { |
| | | removeNullFields((JSONObject) arrayItem); |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | for (String key : keysToRemove) { |
| | | jsonObject.remove(key); |
| | | } |
| | | } |
| | | |
| | | } |