Commit 04f1ea31 authored by zhangwanglin's avatar zhangwanglin

补卡列表审核

parent ce9e3c26
...@@ -145,6 +145,32 @@ public class AccountController { ...@@ -145,6 +145,32 @@ public class AccountController {
/** /**
* 补卡列表
*
* @param srvTaskReqVO 请求参数对象
* @return 返回
*/
@GetMapping("/getApplyCardList")
public Result<Page<SrvTaskRespVO>> getApplyCardList(@RequestHeader("Authorization") String token,SrvTaskReqVO srvTaskReqVO) {
long srvOrganId = TokenParsingUtil.TokenParsing(token, "srvOrganId");
if(srvOrganId != 0) {
srvTaskReqVO.setSrvOrganId(srvOrganId);
}
return Result.success(accountService.getSrvTaskCardList(srvTaskReqVO));
}
/**
* 补卡详情
*
* @param taskDetailId 请求参数对象
* @return 返回
*/
@GetMapping("/getApplyCardInfo")
public Result<SrvTaskCardRespDTO> getApplyCardInfo(String taskDetailId) {
return Result.success(accountService.getSrvTaskCardInfo(taskDetailId));
}
/**
* 查询机构结算审核列表 * 查询机构结算审核列表
* *
* @param srvOrganListReq 请求参数对象 * @param srvOrganListReq 请求参数对象
......
...@@ -18,6 +18,11 @@ public interface ChSrvTaskDetailMapper extends BaseMapper<ChSrvTaskDetail> { ...@@ -18,6 +18,11 @@ public interface ChSrvTaskDetailMapper extends BaseMapper<ChSrvTaskDetail> {
Page<SrvTaskRespVO> getSrvTaskList(Page page,SrvTaskReqVO req); Page<SrvTaskRespVO> getSrvTaskList(Page page,SrvTaskReqVO req);
Page<SrvTaskRespVO> getSrvTaskCardList(Page page,SrvTaskReqVO req);
List<SrvTaskRespVO> getSrvTaskCardInfo(String taskDetailId);
/** /**
*@desc 更新任务计划表状态为已完成 *@desc 更新任务计划表状态为已完成
**/ **/
......
...@@ -29,6 +29,8 @@ public interface AccountService extends IService<ChDisabAccounts> { ...@@ -29,6 +29,8 @@ public interface AccountService extends IService<ChDisabAccounts> {
Page<SrvTaskRespVO> getSrvTaskList(SrvTaskReqVO srvTaskReqVO); Page<SrvTaskRespVO> getSrvTaskList(SrvTaskReqVO srvTaskReqVO);
Page<SrvTaskRespVO> getSrvTaskCardList(SrvTaskReqVO srvTaskReqVO);
AccountOperVo getSrvOrganDetail(Long accountsId); AccountOperVo getSrvOrganDetail(Long accountsId);
ExpenseVo expenseSettlement(ExpenseSettlementReq req) throws ParseException; ExpenseVo expenseSettlement(ExpenseSettlementReq req) throws ParseException;
...@@ -51,6 +53,7 @@ public interface AccountService extends IService<ChDisabAccounts> { ...@@ -51,6 +53,7 @@ public interface AccountService extends IService<ChDisabAccounts> {
int updateChDisabAccounts(int id); int updateChDisabAccounts(int id);
SrvTaskCardRespDTO getSrvTaskCardInfo(String taskDetailId);
Result accountTaskExecute(List<AccountTaskExecuteReqVO> accountTaskExecuteReqVOS); Result accountTaskExecute(List<AccountTaskExecuteReqVO> accountTaskExecuteReqVOS);
......
...@@ -640,6 +640,39 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis ...@@ -640,6 +640,39 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
} }
@Override @Override
public Page<SrvTaskRespVO> getSrvTaskCardList(SrvTaskReqVO srvTaskReqVO){
Page<SrvTaskRespVO> srvTaskList = taskDetailMapper.getSrvTaskCardList(new Page<>(srvTaskReqVO.getPageNum(), srvTaskReqVO.getPageSize()), srvTaskReqVO);
return srvTaskList;
}
@Override
public SrvTaskCardRespDTO getSrvTaskCardInfo(String taskDetailId){
List<SrvTaskRespVO> records = taskDetailMapper.getSrvTaskCardInfo(taskDetailId);
SrvTaskCardRespDTO srvTaskCardRespDTO = new SrvTaskCardRespDTO();
List<String> collect = records.stream().map(SrvTaskRespVO::getItemName).collect(Collectors.toList());
String join = StringUtils.join(collect, ",");
srvTaskCardRespDTO.setItemName(join);
srvTaskCardRespDTO.setRealName(records.get(0).getRealName());
srvTaskCardRespDTO.setEmpName(records.get(0).getEmpName());
srvTaskCardRespDTO.setSrvModeName(records.get(0).getSrvModeName());
srvTaskCardRespDTO.setSrvOrganName(records.get(0).getSrvOrganName());
srvTaskCardRespDTO.setSrvDate(records.get(0).getSrvDate());
srvTaskCardRespDTO.setAuditor(records.get(0).getAuditor());
srvTaskCardRespDTO.setStatus(records.get(0).getStatus());
srvTaskCardRespDTO.setReason(records.get(0).getReason());
srvTaskCardRespDTO.setAuditRemark(records.get(0).getAuditRemark());
Result<List<ChFndAttach>> listResult = attachFeignService.selectAttachs(Long.valueOf(taskDetailId), AttachType.DISABLE.getUploadType());
if (listResult.getCode().equals(ResultCode.SUCCESS.getCode())) {
srvTaskCardRespDTO.setFileDataList(listResult.getData());
} else {
log.info("请求获取附件列表错误:错误码{},错误信息:{}", listResult.getCode(), listResult.getMsg());
}
return srvTaskCardRespDTO;
}
@Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Result accountTaskExecute(List<AccountTaskExecuteReqVO> accountTaskExecuteReqVOS) { public Result accountTaskExecute(List<AccountTaskExecuteReqVO> accountTaskExecuteReqVOS) {
log.info("organAccountTaskExecute.accountTaskExecuteReqVOS:{}",accountTaskExecuteReqVOS); log.info("organAccountTaskExecute.accountTaskExecuteReqVOS:{}",accountTaskExecuteReqVOS);
......
...@@ -45,6 +45,78 @@ ...@@ -45,6 +45,78 @@
</select> </select>
<select id="getSrvTaskCardList" resultType="com.hungraim.ltc.pojo.vo.account.SrvTaskRespVO">
select info.REAL_NAME realName,
plan.PLAN_ID planId,
plan.ITEM_ID itemId,
plan.TASK_DETAIL_ID taskDetailId,
plan.ITEM_NAME itemName,
emp.emp_name empName,
emp.emp_id empId,
info.DISAB_INFO_ID disabInfoId,
organ.SRV_ORGAN_NAME srvOrganName,
organ.SRV_ORGAN_ID srvOrganId,
DECODE(plan.MODE_ID, '1','医疗','2', '养老','3','上门', '4', '异地') srvModeName,
to_char(plan.SRV_PLAN_TIME,'yyyy-MM-dd') srvDate,
detail.check_status status
from ch_srv_plan plan
left join ch_disable_info info on plan.DISAB_INFO_ID = info.DISAB_INFO_ID
left join ch_srv_organ_emp emp on plan.emp_id = emp.emp_id
left join CH_SRV_TASK_DETAIL detail on detail.TASK_DETAIL_ID = plan.TASK_DETAIL_ID
left join CH_SRV_ORGAN organ on organ.SRV_ORGAN_ID = plan.SRV_ORGAN_ID
<where>
1=1 and detail.check_status in (1,2,3)
<if test="req.status != null and req.status != ''">
and detail.check_status = #{req.status}
</if>
<if test="req.realName != null and req.realName != ''">
AND info.real_name LIKE CONCAT('%',CONCAT(#{req.realName},'%'))
</if>
<if test="req.srvOrganName != null and req.srvOrganName != ''">
AND organ.SRV_ORGAN_NAME LIKE CONCAT('%',CONCAT(#{req.srvOrganName},'%'))
</if>
<if test="req.srvDate != null and req.srvDate != ''">
AND to_char(plan.SRV_PLAN_TIME,'yyyy-MM-dd') = #{req.srvDate}
</if>
<if test="req.srvOrganId != null and req.srvOrganId != '' and req.srvOrganId!=0">
AND organ.SRV_ORGAN_ID = #{req.srvOrganId}
</if>
</where>
order by plan.PLAN_ID desc
</select>
<select id="getSrvTaskCardInfo" resultType="com.hungraim.ltc.pojo.vo.account.SrvTaskRespVO">
select info.REAL_NAME realName,
plan.PLAN_ID planId,
plan.ITEM_ID itemId,
plan.TASK_DETAIL_ID taskDetailId,
plan.ITEM_NAME itemName,
emp.emp_name empName,
emp.emp_id empId,
info.DISAB_INFO_ID disabInfoId,
organ.SRV_ORGAN_NAME srvOrganName,
organ.SRV_ORGAN_ID srvOrganId,
DECODE(plan.MODE_ID, '1','医疗','2', '养老','3','上门', '4', '异地') srvModeName,
to_char(plan.SRV_PLAN_TIME,'yyyy-MM-dd') srvDate,
detail.check_status status,
detail.clock_reason reason,
detail.auditor,
detail.audit_remark auditRemark
from ch_srv_plan plan
left join ch_disable_info info on plan.DISAB_INFO_ID = info.DISAB_INFO_ID
left join ch_srv_organ_emp emp on plan.emp_id = emp.emp_id
left join CH_SRV_TASK_DETAIL detail on detail.TASK_DETAIL_ID = plan.TASK_DETAIL_ID
left join CH_SRV_ORGAN organ on organ.SRV_ORGAN_ID = plan.SRV_ORGAN_ID
<where>
1=1 and detail.check_status in (1,2,3)
<if test="taskDetailId != null and taskDetailId != ''">
and detail.TASK_DETAIL_ID = #{taskDetailId}
</if>
</where>
</select>
<update id="updateSrvPlanById"> <update id="updateSrvPlanById">
update CH_SRV_PLAN plan set plan.is_status= '4',plan.creation_time=sysdate where plan.plan_id = #{planId} update CH_SRV_PLAN plan set plan.is_status= '4',plan.creation_time=sysdate where plan.plan_id = #{planId}
</update> </update>
......
...@@ -205,6 +205,11 @@ public class ChSrvTaskDetail implements Serializable { ...@@ -205,6 +205,11 @@ public class ChSrvTaskDetail implements Serializable {
private Date auditDate; private Date auditDate;
/** /**
* 稽核时间
*/
private String auditor;
/**
* 违规类型(全部:0;基础护理:1;日常照护:2) * 违规类型(全部:0;基础护理:1;日常照护:2)
*/ */
private Short illegalType; private Short illegalType;
...@@ -246,6 +251,8 @@ public class ChSrvTaskDetail implements Serializable { ...@@ -246,6 +251,8 @@ public class ChSrvTaskDetail implements Serializable {
private Short isClock; private Short isClock;
private Short checkStatus;
private String clockReason; private String clockReason;
private String clockOperator; private String clockOperator;
......
package com.hungraim.ltc.pojo.vo.account;
import com.hungraim.ltc.pojo.entity.SysConfig.ChFndAttach;
import lombok.Data;
import java.util.List;
/**
* @author zwl
* @ClassName SrvTaskCardRespDTO
* @description
* @date 2023/8/3 14:03
**/
@Data
public class SrvTaskCardRespDTO {
// 失能人员姓名
private String realName;
// 护理机构
private String srvOrganName;
// 护理人员
private String empName;
// 任务时间
private String srvDate;
// 任务名称
private String itemName;
private Long status;
// 服务方式
private String srvModeName;
private String auditor;
private String reason;
private String auditRemark;
private List<ChFndAttach> fileDataList;
}
...@@ -12,6 +12,8 @@ public class SrvTaskReqVO extends BaseReq { ...@@ -12,6 +12,8 @@ public class SrvTaskReqVO extends BaseReq {
//失能人员姓名 //失能人员姓名
private String realName; private String realName;
private String taskDetailId;
// 任务时间 // 任务时间
private String srvDate; private String srvDate;
......
...@@ -44,4 +44,11 @@ public class SrvTaskRespVO { ...@@ -44,4 +44,11 @@ public class SrvTaskRespVO {
private String medicalArea; private String medicalArea;
private String auditor;
private String reason;
private String auditRemark;
} }
\ No newline at end of file
package com.hungraim.ltc.pojo.vo.governance;
import lombok.Data;
/**
* @author zwl
* @ClassName AuditingCardVO
* @description
* @date 2023/8/2 14:23
**/
@Data
public class AuditingCardVO {
private Long taskDetailId;
private String auditor;
private String auditRemark;
private short status;
}
package com.hungraim.ltc.pojo.vo.governance; package com.hungraim.ltc.pojo.vo.governance;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.hungraim.ltc.pojo.entity.SysConfig.ChFndAttach;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* @author zwl * @author zwl
...@@ -47,4 +50,10 @@ public class SrvPlanInputVO { ...@@ -47,4 +50,10 @@ public class SrvPlanInputVO {
private Long srvTaskId; private Long srvTaskId;
private Long taskDetailId;
@TableField(exist = false)
private List<ChFndAttach> fileDataList;
} }
...@@ -171,6 +171,11 @@ public class SrvTaskController { ...@@ -171,6 +171,11 @@ public class SrvTaskController {
return srvTaskService.saveApplyCard(srvPlanInputVO); return srvTaskService.saveApplyCard(srvPlanInputVO);
} }
@PostMapping("/auditingCard")
public Result auditingCard(AuditingCardVO auditingCardVO){
return srvTaskService.auditingCard(auditingCardVO);
}
/** /**
* 根据护理机构查询项目 * 根据护理机构查询项目
......
...@@ -41,5 +41,7 @@ public interface SrvTaskService { ...@@ -41,5 +41,7 @@ public interface SrvTaskService {
// 补卡 // 补卡
Result saveApplyCard(SrvPlanInputVO srvPlanInputVO); Result saveApplyCard(SrvPlanInputVO srvPlanInputVO);
Result auditingCard(AuditingCardVO auditingCardVO);
Result queryItemBySrvOrganId(Long srvOrganId); Result queryItemBySrvOrganId(Long srvOrganId);
} }
...@@ -2,6 +2,7 @@ package com.hungraim.ltc.governance.service.impl; ...@@ -2,6 +2,7 @@ package com.hungraim.ltc.governance.service.impl;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
...@@ -276,6 +277,7 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -276,6 +277,7 @@ public class SrvTaskServiceImpl implements SrvTaskService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public Result saveApplyCard(SrvPlanInputVO srvPlanInputVO){ public Result saveApplyCard(SrvPlanInputVO srvPlanInputVO){
log.info("SrvTaskServiceImpl=======saveApplyCard:{}",JSON.toJSONString(srvPlanInputVO));
Long taskDetailId = null; Long taskDetailId = null;
// 先查询是否有计划,有计划了不再生成计划 // 先查询是否有计划,有计划了不再生成计划
List<ChSrvTaskDetail> chSrvTaskDetailList = chSrvTaskDetailMapper.selectList(new LambdaQueryWrapper<ChSrvTaskDetail>() List<ChSrvTaskDetail> chSrvTaskDetailList = chSrvTaskDetailMapper.selectList(new LambdaQueryWrapper<ChSrvTaskDetail>()
...@@ -294,6 +296,7 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -294,6 +296,7 @@ public class SrvTaskServiceImpl implements SrvTaskService {
chSrvTaskDetailDTO.setTaskDetailId(taskDetailId); chSrvTaskDetailDTO.setTaskDetailId(taskDetailId);
// 补卡标识 // 补卡标识
chSrvTaskDetailDTO.setIsClock((short) 1); chSrvTaskDetailDTO.setIsClock((short) 1);
chSrvTaskDetailDTO.setCheckStatus((short) 1);
chSrvTaskDetailDTO.setClockReason(srvPlanInputVO.getClockReason()); chSrvTaskDetailDTO.setClockReason(srvPlanInputVO.getClockReason());
chSrvTaskDetailDTO.setClockOperator(srvPlanInputVO.getAdmin()); chSrvTaskDetailDTO.setClockOperator(srvPlanInputVO.getAdmin());
chSrvTaskDetailMapper.updateById(chSrvTaskDetailDTO); chSrvTaskDetailMapper.updateById(chSrvTaskDetailDTO);
...@@ -317,6 +320,7 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -317,6 +320,7 @@ public class SrvTaskServiceImpl implements SrvTaskService {
chSrvTaskDetail.setStatus((short) 0); chSrvTaskDetail.setStatus((short) 0);
// 补卡标识 // 补卡标识
chSrvTaskDetail.setIsClock((short) 1); chSrvTaskDetail.setIsClock((short) 1);
chSrvTaskDetail.setCheckStatus((short) 1);
chSrvTaskDetail.setClockReason(srvPlanInputVO.getClockReason()); chSrvTaskDetail.setClockReason(srvPlanInputVO.getClockReason());
chSrvTaskDetail.setClockOperator(srvPlanInputVO.getAdmin()); chSrvTaskDetail.setClockOperator(srvPlanInputVO.getAdmin());
chSrvTaskDetail.setFcd(new Date()); chSrvTaskDetail.setFcd(new Date());
...@@ -325,6 +329,7 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -325,6 +329,7 @@ public class SrvTaskServiceImpl implements SrvTaskService {
return Result.failed("补卡失败,请重新提交"); return Result.failed("补卡失败,请重新提交");
} }
taskDetailId = chSrvTaskDetail.getTaskDetailId(); taskDetailId = chSrvTaskDetail.getTaskDetailId();
} }
try { try {
log.info("=======SrvTaskServiceImpl.saveApplyCard.taskDetailId:{}",taskDetailId); log.info("=======SrvTaskServiceImpl.saveApplyCard.taskDetailId:{}",taskDetailId);
...@@ -345,12 +350,13 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -345,12 +350,13 @@ public class SrvTaskServiceImpl implements SrvTaskService {
chSrvPlan.setEmpId(srvPlanInputVO.getEmpId()); chSrvPlan.setEmpId(srvPlanInputVO.getEmpId());
chSrvPlan.setSrvPlanTime(srvPlanInputVO.getSrvPlanTime()); chSrvPlan.setSrvPlanTime(srvPlanInputVO.getSrvPlanTime());
chSrvPlan.setTaskDetailId(taskDetailId); chSrvPlan.setTaskDetailId(taskDetailId);
chSrvPlan.setIsStatus(Long.valueOf(0));
int insert1 = chSrvPlanMapper.insert(chSrvPlan); int insert1 = chSrvPlanMapper.insert(chSrvPlan);
if(insert1==0){ if(insert1==0){
return Result.failed("补卡失败,请重新提交"); return Result.failed("补卡失败,请重新提交");
} }
} }
srvPlanInputVO.setTaskDetailId(taskDetailId);
this.updateAttachs(srvPlanInputVO);
} catch (Exception e) { } catch (Exception e) {
log.error("=======SrvTaskServiceImpl error {}",e); log.error("=======SrvTaskServiceImpl error {}",e);
return Result.failed("补卡失败"); return Result.failed("补卡失败");
...@@ -359,6 +365,42 @@ public class SrvTaskServiceImpl implements SrvTaskService { ...@@ -359,6 +365,42 @@ public class SrvTaskServiceImpl implements SrvTaskService {
} }
@Override
public Result auditingCard(AuditingCardVO auditingCardVO){
log.info("SrvTaskServiceImpl=======auditingCard:{}",JSON.toJSONString(auditingCardVO));
ChSrvTaskDetail chSrvTaskDetailDTO = new ChSrvTaskDetail();
chSrvTaskDetailDTO.setTaskDetailId(auditingCardVO.getTaskDetailId());
chSrvTaskDetailDTO.setCheckStatus(auditingCardVO.getStatus());
chSrvTaskDetailDTO.setAuditRemark(auditingCardVO.getAuditRemark());
chSrvTaskDetailDTO.setAuditDate(new Date());
chSrvTaskDetailDTO.setAuditor(auditingCardVO.getAuditor());
int result = chSrvTaskDetailMapper.updateById(chSrvTaskDetailDTO);
if(result>0){
return Result.success();
}else {
return Result.failed("补卡审核失败!");
}
}
/**
* 调用feign api来修改附件数据
*
* @param srvPlanInputVO
*/
private void updateAttachs(SrvPlanInputVO srvPlanInputVO) {
// zhangch 20210525 新增附件修改逻辑
List<ChFndAttach> fileDataList = srvPlanInputVO.getFileDataList();
AttachUpdateVo attachUpdateVo = new AttachUpdateVo();
attachUpdateVo.setCtrlId(srvPlanInputVO.getTaskDetailId());
attachUpdateVo.setAttachType(AttachType.DISABLE.getUploadType());
attachUpdateVo.setChFndAttachs(fileDataList);
attachFeignService.updateAttachs(attachUpdateVo);
}
@Override @Override
public Result queryItemBySrvOrganId(Long srvOrganId){ public Result queryItemBySrvOrganId(Long srvOrganId){
List<ItemDTO> itemDTOS = chSrvPlanMapper.queryItem(srvOrganId); List<ItemDTO> itemDTOS = chSrvPlanMapper.queryItem(srvOrganId);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment