package com.ltkj.hosp.service.impl; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Map; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ltkj.common.core.domain.AjaxResult; import com.ltkj.common.core.domain.entity.SysUser; import com.ltkj.common.utils.DateUtils; import com.ltkj.hosp.domain.TjProject; import com.ltkj.hosp.vo.ProFcListVo; import com.ltkj.hosp.vodomain.ShenGaoTiZhongVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ltkj.hosp.mapper.TjOrderDetailMapper; import com.ltkj.hosp.domain.TjOrderDetail; import com.ltkj.hosp.service.ITjOrderDetailService; import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; /** * 体检项目明细Service业务层处理 * * @author ltkj * @date 2022-11-22 */ @Service public class TjOrderDetailServiceImpl extends ServiceImpl implements ITjOrderDetailService { @Autowired private TjOrderDetailMapper tjOrderDetailMapper; /** * 查询体检项目明细 * * @param orderDetailId 体检项目明细主键 * @return 体检项目明细 */ @Override public TjOrderDetail selectTjOrderDetailByOrderDetailId(String orderDetailId) { return tjOrderDetailMapper.selectTjOrderDetailByOrderDetailId(orderDetailId); } /** * 查询体检项目明细列表 * * @param tjOrderDetail 体检项目明细 * @return 体检项目明细 */ @Override public List selectTjOrderDetailList(TjOrderDetail tjOrderDetail) { return tjOrderDetailMapper.selectTjOrderDetailList(tjOrderDetail); } /** * 新增体检项目明细 * * @param tjOrderDetail 体检项目明细 * @return 结果 */ @Transactional @Override public int insertTjOrderDetail(TjOrderDetail tjOrderDetail) { tjOrderDetail.setCreateTime(DateUtils.getNowDate()); return tjOrderDetailMapper.insertTjOrderDetail(tjOrderDetail); } /** * 修改体检项目明细 * * @param tjOrderDetail 体检项目明细 * @return 结果 */ @Override public int updateTjOrderDetail(TjOrderDetail tjOrderDetail) { tjOrderDetail.setUpdateTime(DateUtils.getNowDate()); return tjOrderDetailMapper.updateTjOrderDetail(tjOrderDetail); } /** * 批量删除体检项目明细 * * @param orderDetailIds 需要删除的体检项目明细主键 * @return 结果 */ @Override public int deleteTjOrderDetailByOrderDetailIds(String[] orderDetailIds) { return tjOrderDetailMapper.deleteTjOrderDetailByOrderDetailIds(orderDetailIds); } /** * 删除体检项目明细信息 * * @param orderDetailId 体检项目明细主键 * @return 结果 */ @Override public int deleteTjOrderDetailByOrderDetailId(String orderDetailId) { return tjOrderDetailMapper.deleteTjOrderDetailByOrderDetailId(orderDetailId); } @Override public int deleteTjOrderDetailByOrderId(String orderId) { return tjOrderDetailMapper.deleteTjOrderDetailByOrderId(orderId); } @Override public List selectTjOrderDetailListByFlowingWaterIdIsNotNull(String orderId) { return tjOrderDetailMapper.selectTjOrderDetailListByFlowingWaterIdIsNotNull(orderId); } @Override public List selectTjOrderDetailListByFlowingWaterIdIsNotNullN(String orderId,String jxbz) { return tjOrderDetailMapper.selectTjOrderDetailListByFlowingWaterIdIsNotNullN(orderId,jxbz); } @Override public List selectTjOrderDetailListByFlowingWaterIdIsNotNullAndJxbzIsNull(String orderId) { return tjOrderDetailMapper.selectTjOrderDetailListByFlowingWaterIdIsNotNullAndJxbzIsNull(orderId); } @Override public List selectTjOrderDetailListByFlowingWaterIdIsNull(String orderId) { return tjOrderDetailMapper.selectTjOrderDetailListByFlowingWaterIdIsNull(orderId); } @Override public List selectTjOrderDetailListByFlowingWaterIdIsNullAndJxbzIsNull(String orderId) { return tjOrderDetailMapper.selectTjOrderDetailListByFlowingWaterIdIsNullAndJxbzIsNull(orderId); } @Override public List selectTjOrderDetailListByFlowingWaterIdIsNullN(String orderId, String jxbz) { return tjOrderDetailMapper.selectTjOrderDetailListByFlowingWaterIdIsNullN(orderId,jxbz); } @Override public List getTjOrderDetailListByOrderId(String orderId) { return tjOrderDetailMapper.getTjOrderDetailListByOrderId(orderId); } @Override public List getTjOrderDetailsByOrderId(String orderId) { return tjOrderDetailMapper.getTjOrderDetailsByOrderId(orderId); } @Override public TjOrderDetail getTjOrderDetailByOrderId(String orderId,String proId) { return tjOrderDetailMapper.getTjOrderDetailByOrderId(orderId,proId); } @Override public List getTjOrderDetailListByOrderIdAndStatus(String orderId) { return tjOrderDetailMapper.getTjOrderDetailListByOrderIdAndStatus(orderId); } @Override public List getTjOrderDetailListInProParentIdList(String orderId, List proParentIdList) { return tjOrderDetailMapper.getTjOrderDetailListInProParentIdList(orderId,proParentIdList); } @Override public List getTjOrderDetailList(String startDate,String endDate) { return tjOrderDetailMapper.getTjOrderDetailList(startDate,endDate); } @Override public boolean saveTjOrderDetailsByCusId(String cusId,String orderId, String userName, String userId,String cardId) { return tjOrderDetailMapper.saveTjOrderDetailsByCusId(cusId,orderId,userName,userId,cardId); } @Override public boolean saveJSYTjOrderDetailsByCusId(String cusId, String orderId, String userName, String userId,String cardId,String sl) { return tjOrderDetailMapper.saveJSYTjOrderDetailsByCusId(cusId,orderId,userName,userId,cardId,sl); } @Override public boolean saveTjPureToneTesByCusId(String cusId, String tjNum, String userName, String userId,String cardId) { return tjOrderDetailMapper.saveTjPureToneTesByCusId(cusId,tjNum,userName,userId,cardId); } @Override public boolean updateTjOrderDetailsByOrderId(String orderId, String userName, String userId,String ls) { return tjOrderDetailMapper.updateTjOrderDetailsByOrderId(orderId,userName,userId,ls); } @Override public List getDetailByOrderIdAndParId(Long orderId, Long proParentId) { return tjOrderDetailMapper.getDetailByOrderIdAndParId(orderId,proParentId); } @Override public List getDetailByOrderIdAndParIds(Long orderId, List proParentIds) { return tjOrderDetailMapper.getDetailByOrderIdAndParIds(orderId,proParentIds); } @Override public List addHuaYanTable(String tjnumber) { return tjOrderDetailMapper.addHuaYanTable(tjnumber); } @Override public List addHuaYanAndCgTable(String tjnumber) { return tjOrderDetailMapper.addHuaYanAndCgTable(tjnumber); } @Override public void deleteTjOrderDetailByjxbz(String jxbz) { tjOrderDetailMapper.deleteTjOrderDetailByjxbz(jxbz); } @Override public List getShenGaoTiZhongList(String tjNum) { return tjOrderDetailMapper.getShenGaoTiZhongList(tjNum); } @Override public List getCaiYangDengJi(Long orderId) { return tjOrderDetailMapper.getCaiYangDengJi(orderId); } @Override public List getCaiYangDengJiJxbz(Long orderId, String jxbz) { return tjOrderDetailMapper.getCaiYangDengJiJxbz(orderId,jxbz); } @Override public List getzongjianyishengchakanyichangxiangmu(int num, String tjNumber) { return tjOrderDetailMapper.getzongjianyishengchakanyichangxiangmu(tjNumber); } @Override public List getzongjianyishengchakanyichangxiangmu(String tjNumber) { return tjOrderDetailMapper.getzongjianyishengchakanyichangxiangmu(tjNumber); } @Override public void updateTjOrderDetailsFlowingWaterIdByJxbz(String orderId, String jxbz,String ls) { tjOrderDetailMapper.updateTjOrderDetailsFlowingWaterIdByJxbz(orderId,jxbz,ls); } @Override public void updateTjOrderDetailsFlowingWaterIdByJxbzisnull(String orderId,String ls) { tjOrderDetailMapper.updateTjOrderDetailsFlowingWaterIdByJxbzisnull(orderId,ls); } @Override public List getFcList(Long orderId, Integer type) { return tjOrderDetailMapper.getFcList(orderId,type); } @Transactional @Override public AjaxResult updFcPro(String json) { try { JSONObject entries = JSONUtil.parseObj(json); System.out.println(JSONUtil.toJsonStr(entries)); String orderId = entries.getStr("orderId"); JSONArray array = entries.getJSONArray("data"); ArrayList fcList = new ArrayList<>(); ArrayList notFcList = new ArrayList<>(); for (Object o : array) { JSONObject object = (JSONObject) o; String proId = object.getStr("proId"); Integer type = object.getInt("type"); if (type == 1) { fcList.add(proId); } else { notFcList.add(proId); } } // System.out.println("fcList = " + fcList); // System.out.println("notFcList = " + notFcList); // if (true) // return AjaxResult.error(); if (!fcList.isEmpty()){ LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); wrapper.set(TjOrderDetail::getIsReturn,1); wrapper.eq(TjOrderDetail::getOrderId,orderId); wrapper.in(TjOrderDetail::getProId,fcList); update(wrapper); } if (!notFcList.isEmpty()){ LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); wrapper.set(TjOrderDetail::getIsReturn,0); wrapper.eq(TjOrderDetail::getOrderId,orderId); wrapper.in(TjOrderDetail::getProId,notFcList); update(wrapper); } }catch (Exception e){ log.error(String.valueOf(e)+e.getMessage()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return AjaxResult.error(); } return AjaxResult.success(); } }