Commit 30bbcec8 authored by zhangwanglin's avatar zhangwanglin

多个护理人员

parent 1eaba346
......@@ -224,6 +224,8 @@ public class AccountController {
if(srvOrganId !=0) {
srvOrganListReq.setSrvOrganId(srvOrganId);
}
// 不展示异地
srvOrganListReq.setFlag("1");
Page<ChDisabDetailAccountsResp> chAssessDetailAccounts = accountService.queryOrganAccountsDetail(pageNum,pageSize,srvOrganListReq);
return Result.success(chAssessDetailAccounts);
}
......@@ -378,13 +380,8 @@ public class AccountController {
@RequestMapping("/placeOtherApply")
public Result placeOtherApply(Integer disabInfoId, String otherApplyTime) {
int result = accountService.placeOtherApply(disabInfoId, otherApplyTime);
if (result > 0) {
return Result.success();
}else {
return Result.failed("申请失败");
}
Result result = accountService.placeOtherApply(disabInfoId, otherApplyTime);
return result;
}
......
......@@ -38,6 +38,7 @@ public interface ChDisabAccountsDetailMapper extends BaseMapper<ChDisabDetailAcc
List<OrganAccountsVO> queryPlanInfoByDetailId(String taskDetailId);
int queryPlanByTaskDetailId(String taskDetailId);
int updateByPlanId(String planId);
......
......@@ -62,7 +62,7 @@ public interface AccountService extends IService<ChDisabAccounts> {
Page<ChDisabDetailAccountsResp> queryOrganAccountsDetail(Integer pageNum, Integer pageSize,SrvOrganListReq srvOrganListReq);
int placeOtherApply(Integer disabInfoId, String otherApplyTime);
Result placeOtherApply(Integer disabInfoId, String otherApplyTime);
Page<PlaceOtherVO> placeOtherQuery(Page page, String name, String certiCode);
......
......@@ -70,6 +70,7 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
chDisabAccounts.setReviewRemark(accountOperVo.getReviewRemark());
Short accountsStatus = accountOperVo.getAccountsStatus();
String accountsId = String.valueOf(accountOperVo.getAccountsId());
String modeName = accountOperVo.getModeName();
// 驳回
if(accountsStatus == 0) {
chDisabAccountsDetailMapper.updateByAccountsId(accountsId,0);
......@@ -80,7 +81,9 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
chDisabAccounts.setDeductionAmountTotal(BigDecimal.valueOf(0));
HashMap map = new HashMap();
map.put("ACCOUNTS_ID",accountsId);
// 删除对应扣减历史数据
chDisabFreeRdInfoMapper.deleteByMap(map);
}
// 已结算
if(accountsStatus == 4) {
......@@ -611,6 +614,12 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
List<OrganAccountsVO> accountsList = chDisabAccountsDetailMapper.queryPlanInfoByDetailId(taskDetailId);
if (CollectionUtil.isNotEmpty(accountsList)) {
return;
}else {
// 不同的护理人员同一天对同一个失能人员服务项目只计一条费用
int count = chDisabAccountsDetailMapper.queryPlanByTaskDetailId(taskDetailId);
if(count>0){
return;
}
}
ChSrvTaskDetail ca = new ChSrvTaskDetail();
ca.setStatus((short) 4);
......@@ -647,7 +656,6 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
chDisabDetailAccounts.setAccountsPersonalCost(personalCost);
chDisabDetailAccounts.setModeName(accountsVO.getSrvModeName());
chDisabDetailAccounts.setSrvOrganId(srvOrganId);
chDisabDetailAccounts.setEmpId(accountsVO.getEmpId());
chDisabDetailAccounts.setCreationTime(new Date());
chDisabDetailAccounts.setAccountsTime(accountsTime);
chDisabDetailAccounts.setAccountsStartTime(DateUtils.getFirstDayOfMonth(DateUtils.strToDate(accountsVO.getSrvDate())));
......@@ -874,18 +882,23 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
}
@Override
public int placeOtherApply(Integer disabInfoId, String otherApplyTime) {
public Result placeOtherApply(Integer disabInfoId, String otherApplyTime) {
int result = taskDetailMapper.placeOtherApply(disabInfoId,otherApplyTime);
Result result1 =Result.success();
if (result > 0) {
Date date = DateUtils.strToDate(otherApplyTime);
boolean now = DateUtils.isNow(date);
if (now) {
placeFreeHandler(disabInfoId, otherApplyTime);
result1 = placeFreeHandler(disabInfoId, otherApplyTime);
}
return result1;
}else {
return Result.failed("申请失败");
}
return result;
}
private void placeFreeHandler(Integer disabInfoId, String otherApplyTime) {
private Result placeFreeHandler(Integer disabInfoId, String otherApplyTime) {
BigDecimal limit = BigDecimal.valueOf(20);
BigDecimal zero = BigDecimal.valueOf(0);
ChDisabDetailAccounts chDisabDetailAccountsDTO = chDisabAccountsDetailMapper.queryDisabDetailAccounts("471", otherApplyTime, String.valueOf(disabInfoId), "异地");
......@@ -920,8 +933,8 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
}else {
BigDecimal allCost1 = chDisabAccounts.getAllCost();
BigDecimal overallCost1 = chDisabAccounts.getOverallCost();
allCost1 = allCost1.add(chDisabDetailAccountsDTO.getAccountsAllCost());
overallCost1 = overallCost1.add(chDisabDetailAccountsDTO.getAccountsAllCost());
allCost1 = allCost1.add(limit);
overallCost1 = overallCost1.add(limit);
ChDisabAccounts chDisabAccount = new ChDisabAccounts();
chDisabAccount.setAllCost(allCost1);
chDisabAccount.setOverallCost(overallCost1);
......@@ -932,6 +945,13 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
chDisabDetailAccounts.setAccountsId(chDisabAccounts.getAccountsId());
chDisabAccountsDetailMapper.insert(chDisabDetailAccounts);
} else {
Long accountsId = chDisabDetailAccountsDTO.getAccountsId();
ChDisabAccounts chDisabAccountDTO = disabAccountsMapper.selectById(accountsId);
Short accountsStatus = chDisabAccountDTO.getAccountsStatus();
if(accountsStatus > 1){
log.info("{},已完成审核",accountsId);
Result.failed("提交月份已完成审核,请联系管理员");;
}
BigDecimal accountsAllCost = chDisabDetailAccountsDTO.getAccountsAllCost();
BigDecimal accountsOverallCost = chDisabDetailAccountsDTO.getAccountsOverallCost();
chDisabDetailAccountsDTO.setAccountsAllCost(accountsAllCost.add(limit));
......@@ -939,6 +959,7 @@ public class AccountServiceImpl extends ServiceImpl<ChDisabAccountsMapper, ChDis
chDisabDetailAccountsDTO.setAccountsPersonalCost(zero);
chDisabAccountsDetailMapper.updateById(chDisabDetailAccountsDTO);
}
return Result.success();
}
@Override
......
......@@ -7,7 +7,6 @@
to_char(d.ACCOUNTS_START_TIME,'yyyy-MM-dd') accountsStartTime,
to_char(d.ACCOUNTS_END_TIME,'yyyy-MM-dd') accountsEndTime,
to_char(d.ACCOUNTS_TIME,'yyyy-MM') accountsTime,
emp.EMP_NAME empName,
d.ACCOUNTS_ALL_COST accountsAllCost,
d.ACCOUNTS_OVERALL_COST accountsOverallCost,
d.ACCOUNTS_PERSONAL_COST accountsPersonalCost,
......@@ -25,9 +24,11 @@
left join CH_DISABLE_INFO info on d.DISAB_INFO_ID = info.DISAB_INFO_ID
left join CH_DISABLE_APPLY apply on info.APPLY_ID=apply.APPLY_ID
left join CH_SRV_ORGAN o on d.SRV_ORGAN_ID = o.SRV_ORGAN_ID
left join ch_srv_organ_emp emp on d.emp_id = emp.emp_id
<where>
1=1 and d.mode_name in ('医疗','养老','上门')
1=1
<if test="req.flag != null and req.flag != ''">
and d.mode_name <![CDATA[ <>]]> '异地'
</if>
<if test="req.accountsId != null and req.accountsId != ''">
and d.ACCOUNTS_ID = #{req.accountsId}
</if>
......@@ -62,9 +63,11 @@
to_char(plan.SRV_PLAN_TIME,'yyyy-MM-dd') srvPlanTime,
DECODE(plan.MODE_ID, '1','医疗','2', '养老','3','上门') modeName,
to_char(plan.CREATION_TIME,'yyyy-MM-dd HH24:mi:ss') executionTime,
plan.item_name itemName
plan.item_name itemName,
emp.EMP_NAME empName
from CH_SRV_PLAN plan
left join CH_SRV_ORGAN organ on organ.SRV_ORGAN_ID = plan.SRV_ORGAN_ID
left join ch_srv_organ_emp emp on plan.emp_id = emp.emp_id
where plan.DISAB_INFO_ID = #{req.disabInfoId}
and plan.SRV_ORGAN_ID = #{req.srvOrganId}
and plan.MODE_ID = #{req.modeId}
......@@ -80,7 +83,8 @@
to_char(item.FCD,'yyyy-MM-dd HH24:mi:ss') executionTime,
service.SERVICE_TYPE_DETAILED_NAME itemName,
to_char(detail.SRV_START_TIME,'yyyy-MM-dd HH24:mi:ss') srvStartTime,
to_char(detail.SRV_END_TIME,'yyyy-MM-dd HH24:mi:ss') srvEndTime
to_char(detail.SRV_END_TIME,'yyyy-MM-dd HH24:mi:ss') srvEndTime,
m.EMP_NAME empName
from CH_SRV_TASK_FINISH_ITEM item
left join CH_SRV_TASK_DETAIL detail on detail.TASK_DETAIL_ID = item.TASK_DETAIL_ID
left join CH_SRV_TASK task on task.SRV_TASK_ID = detail.SRV_TASK_ID
......@@ -165,6 +169,11 @@ and organ.SRV_ORGAN_ID = #{req.srvOrganId} order by detail.SRV_DATE desc
where deatil.STATUS = '4' and plan.TASK_DETAIL_ID = #{taskDetailId}
</select>
<select id="queryPlanByTaskDetailId" resultType="java.lang.Integer">
select count(1) from CH_SRV_PLAN p where p.DISAB_INFO_ID
in (select DISAB_INFO_ID from CH_SRV_PLAN where TASK_DETAIL_ID = #{taskDetailId}) and p.IS_STATUS = '4'
</select>
<!--查询评估信息-->
......
......@@ -70,6 +70,7 @@
left join ch_apr_organ aprOrgan on task.apr_organ_id = aprOrgan.apr_organ_id
LEFT JOIN CH_CFG_SRV_DISABLE_LEVEL lev ON report.DISABLE_LEVEL_ID = lev.DISABLE_LEVEL_ID
where info.SRV_MODE_ID ='4' and sysdate <![CDATA[ > ]]> report.PUBLICITY_END_TIME
and report.DISABLE_LEVEL_ID in (3,4,5)
<if test="name != null and name != ''">
and info.REAL_NAME like CONCAT(CONCAT('%',#{name}) ,'%')
</if>
......
......@@ -84,10 +84,7 @@ public class ChDisabDetailAccounts implements Serializable {
*/
private String taskDetailId;
/**
* 护理人员id
*/
private Long empId;
/**
* 统筹区
......
......@@ -37,5 +37,7 @@ public class NursingRecordsRespVO {
private String srvEndTime;
private String empName;
}
......@@ -15,6 +15,11 @@ public class AccountOperVo extends ChDisabAccounts {
private String organId;
/**
* 服务方式
**/
private String modeName;
/**
* 文件列表数据对象
*/
private List<ChFndAttach> fileDataList;
......
......@@ -44,5 +44,7 @@ public class SrvOrganListReq extends BaseReq {
private String realName;
private List<String> accountsStatusList;
// 是否展示异地 1 不展示
private String flag;
}
......@@ -182,6 +182,13 @@ public class BuildBedController {
if (StrUtil.isBlankIfStr(disableInfoId)) {
return Result.failed("失能人员ID 为空!");
}
ChDisableInfo chDisableInfo = disableInfoServie.querySrvModeId(Long.valueOf(disableInfoId));
Integer exitReasonId = chDisableInfo.getExitReasonId();
if(exitReasonId != null && 1 == exitReasonId){
return Result.failed("该失能人员已死亡退出,不能进行操作");
}
DisableInfoTaskVO disableInfoTaskVO = sendService.selectTaskById(disableInfoId, srvOrganId);
List<DisableInfoTaskVO> disableInfoTaskVO1 = sendService.selectBydisableInfoId(disableInfoId);
Map map = new HashMap<>();
......@@ -242,17 +249,17 @@ public class BuildBedController {
}
ChDisableInfo chDisableInfo = disableInfoServie.querySrvModeId(disabInfoId);
Integer srvModeId = chDisableInfo.getSrvModeId();
Integer exitReasonId = chDisableInfo.getExitReasonId();
/* Integer exitReasonId = chDisableInfo.getExitReasonId();
if(exitReasonId!= null && 1 == exitReasonId){
return Result.failed("该失能人员已死亡退出,不能进行操作");
}
*/
List<ChSrvSend> chSrvSendsList = chSrvSendMapper.selectList(new LambdaQueryWrapper<ChSrvSend>()
.eq(ChSrvSend::getDisabInfoId, disabInfoId)
.eq(ChSrvSend::getStatus, (short) 1));
if (chSrvSendsList.size() > 0) {
/* if (chSrvSendsList.size() > 0) {
return Result.failed("已分配护理机构,请先终止或退出再操作");
}
}*/
Long srvModeId1 = chSrvSend.getSrvModeId();
if(srvModeId != srvModeId1.intValue()){
......
......@@ -170,12 +170,12 @@ public class SrvProgramController {
return Result.failed(ResultCode.REQUEST_PARAM_ERROR);
}
// 添加的话,需要校验其它服务方案是否已终止
if (programDetailVo.getProgramId() == null) {
/* if (programDetailVo.getProgramId() == null) {
List<ChSrvProgram> srvPrograms = srvProgramService.getProgramSetCountByProgStatus(programDetailVo.getDisabInfoId(), programDetailVo.getSrvOrganId(), "2");
if (srvPrograms.size() > 0) {
return Result.failed(ResultCode.REQUEST_PROGRAM_ADD_ERROR);
}
}
}*/
// 进行添加或者修改操作
srvProgramService.addProgramAndProgramSetList(programDetailVo);
return Result.success();
......
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