Commit 3e3a8108 authored by suhuiguang's avatar suhuiguang

1.新增接口

parent 32bdcf26
...@@ -26,7 +26,7 @@ public interface DynamicFormInstanceMapper extends BaseMapper<DynamicFormInstanc ...@@ -26,7 +26,7 @@ public interface DynamicFormInstanceMapper extends BaseMapper<DynamicFormInstanc
* @param appKey 应用标识 * @param appKey 应用标识
* @param fieldCodes 列 * @param fieldCodes 列
* @param groupCode 分组code * @param groupCode 分组code
* @param params 查询参数map * @param params 查询参数map
* @return List<Map> * @return List<Map>
*/ */
List<Map<String, Object>> listAll( List<Map<String, Object>> listAll(
...@@ -39,17 +39,35 @@ public interface DynamicFormInstanceMapper extends BaseMapper<DynamicFormInstanc ...@@ -39,17 +39,35 @@ public interface DynamicFormInstanceMapper extends BaseMapper<DynamicFormInstanc
/** /**
* 分页查询 * 分页查询
* *
* @param page 分页信息 * @param page 分页信息
* @param appKey 应用 * @param appKey 应用
* @param fieldCodes 字段 * @param fieldCodes 字段
* @param groupCode 表单类型 * @param groupCode 表单类型
* @return IPage<Map<String, Object>> * @return IPage<Map < String, Object>>
*/ */
IPage<Map<String, Object>> pageList( IPage<Map<String, Object>> pageList(
Page page, Page page,
@Param("appKey") String appKey, @Param("appKey") String appKey,
@Param("fieldCodes") Map<String, Object> fieldCodes, @Param("fieldCodes") Map<String, Object> fieldCodes,
@Param("groupCode") String groupCode, @Param("groupCode") String groupCode,
@Param("params") Map<String,String> params @Param("params") Map<String, String> params
); );
/**
* 查询指定日期的值班信息
* @param dutyDay 值班日期
* @param shiftId 班次id
* @param fieldCodes 动态列
* @param appKey 应用标识
* @param groupCode 表单类型
* @param params 查询条件
* @return List<Map < String, Object>>
*/
List<Map<String, Object>> listOneDayDutyPerson(
@Param("dutyDate") String dutyDay,
@Param("shiftId") Long shiftId,
@Param("fieldCodes") Map<String, Object> fieldCodes,
@Param("appKey") String appKey,
@Param("groupCode") String groupCode,
@Param("params") Map<String, String> params);
} }
...@@ -91,4 +91,47 @@ ...@@ -91,4 +91,47 @@
</if> </if>
order by instanceId desc order by instanceId desc
</select> </select>
<select id="listOneDayDutyPerson" resultType="java.util.Map">
select
d.*,
ps.shift_id as shiftId,
ps.duty_date as dutyDate,
ds.name as shiftName
from
(
select
i.INSTANCE_ID instanceId,
i.GROUP_CODE groupCode,
<foreach collection="fieldCodes" item="value" index="key" separator=",">
MAX(CASE WHEN i.FIELD_CODE = #{key} THEN i.FIELD_VALUE END) as ${key}
</foreach>
from
cb_dynamic_form_instance i
where i.GROUP_CODE = #{groupCode}
and i.APP_KEY = #{appKey}
GROUP by
i.INSTANCE_ID ) d,
cb_duty_person_shift ps,
cb_duty_shift ds
where
d.instanceId = ps.instance_id
and ps.shift_id = ds.sequence_nbr
and ps.duty_date = #{dutyDate}
<if test="shiftId != null and shiftId != ''">
and ps.shift_id = #{shiftId}
</if>
<if test="params != null and params.size() > 0">
<foreach collection="params" index="key" item="value" separator="">
<choose>
<when test="fieldCodes[key] == 'like' and value !=null and value !=''">
and d.${key} like concat('%',#{value},'%')
</when>
<when test="fieldCodes[key] == 'eq' and value !=null and value !=''">
and d.${key} = #{value}
</when>
</choose>
</foreach>
</if>
order by instanceId desc
</select>
</mapper> </mapper>
...@@ -134,4 +134,13 @@ public class DutyCarController extends BaseController { ...@@ -134,4 +134,13 @@ public class DutyCarController extends BaseController {
public ResponseModel deleteDutyData(@PathVariable Long instanceId) { public ResponseModel deleteDutyData(@PathVariable Long instanceId) {
return ResponseHelper.buildResponse(iDutyCarService.deleteDutyData(instanceId)); return ResponseHelper.buildResponse(iDutyCarService.deleteDutyData(instanceId));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation("查询指定日期值班人信息列表")
@GetMapping("/person/{dutyDay}/list")
public ResponseModel listDutyPerson(@ApiParam(value = "值班日期",required = true) @PathVariable String dutyDay,
@ApiParam(value = "班次id") @RequestParam(required = false) Long shiftId,
@ApiParam(value = "岗位") @RequestParam(required = false) String postType){
return ResponseHelper.buildResponse(iDutyCarService.dayDutyPersonList(dutyDay,shiftId,postType));
}
} }
...@@ -33,7 +33,6 @@ public class DutyPersonController extends BaseController { ...@@ -33,7 +33,6 @@ public class DutyPersonController extends BaseController {
@Autowired @Autowired
IDutyPersonService iDutyPersonService; IDutyPersonService iDutyPersonService;
/** /**
* 值班列表视图--分页 * 值班列表视图--分页
* *
...@@ -120,4 +119,13 @@ public class DutyPersonController extends BaseController { ...@@ -120,4 +119,13 @@ public class DutyPersonController extends BaseController {
public ResponseModel deleteDutyData(@PathVariable Long instanceId) { public ResponseModel deleteDutyData(@PathVariable Long instanceId) {
return ResponseHelper.buildResponse(iDutyPersonService.deleteDutyData(instanceId)); return ResponseHelper.buildResponse(iDutyPersonService.deleteDutyData(instanceId));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation("查询指定日期值班人信息列表")
@GetMapping("/person/{dutyDay}/list")
public ResponseModel listDutyPerson(@ApiParam(value = "值班日期",required = true) @PathVariable String dutyDay,
@ApiParam(value = "班次id") @RequestParam(required = false) Long shiftId,
@ApiParam(value = "岗位") @RequestParam(required = false) String postType){
return ResponseHelper.buildResponse(iDutyPersonService.dayDutyPersonList(dutyDay,shiftId,postType));
}
} }
package com.yeejoin.amos.boot.module.common.biz.service; package com.yeejoin.amos.boot.module.common.biz.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.module.common.api.dto.DutyPersonDto;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.text.ParseException; import java.text.ParseException;
...@@ -62,4 +63,13 @@ public interface IDutyCommonService { ...@@ -62,4 +63,13 @@ public interface IDutyCommonService {
* @return Boolean * @return Boolean
*/ */
Boolean deleteDutyData(Long instanceId); Boolean deleteDutyData(Long instanceId);
/**
* 查询指定条件的值班人信息
* @param dutyDay 查询条件
* @param shiftId 班次
* @param postType 岗位
* @return List<Map<String, Object>>
*/
List<Map<String, Object>> dayDutyPersonList(String dutyDay,Long shiftId,String postType);
} }
...@@ -89,7 +89,8 @@ public class DutyCommonServiceImpl implements IDutyCommonService { ...@@ -89,7 +89,8 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
.le(endDate != null, DutyPersonShift::getDutyDate, endDate)).stream().map(e -> { .le(endDate != null, DutyPersonShift::getDutyDate, endDate)).stream().map(e -> {
DutyPersonShiftDto dto = new DutyPersonShiftDto(); DutyPersonShiftDto dto = new DutyPersonShiftDto();
Bean.copyExistPropertis(e, dto); Bean.copyExistPropertis(e, dto);
dto.setShiftName(keyNameMap.get(e.getShiftId())); //没值班信息,默认休
dto.setShiftName(e.getShiftId() != null ? keyNameMap.get(e.getShiftId()) : "休");
return dto; return dto;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
m.put("dutyShift", personShiftList); m.put("dutyShift", personShiftList);
...@@ -292,4 +293,16 @@ public class DutyCommonServiceImpl implements IDutyCommonService { ...@@ -292,4 +293,16 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
dutyPersonShiftService.remove(new LambdaQueryWrapper<DutyPersonShift>().eq(DutyPersonShift::getInstanceId, instanceId)); dutyPersonShiftService.remove(new LambdaQueryWrapper<DutyPersonShift>().eq(DutyPersonShift::getInstanceId, instanceId));
return true; return true;
} }
@Override
public List<Map<String, Object>> dayDutyPersonList(String dutyDay, Long shiftId, String postType) {
String groupCode = this.getGroupCode();
Map<String, String> params = new HashMap<>();
params.put("postType",postType);
List<DynamicFormColumn> columns = dynamicFormColumnService.list(new LambdaQueryWrapper<DynamicFormColumn>().eq(DynamicFormColumn::getGroupCode, groupCode));
Map<String, Object> fieldCodes = Bean.listToMap(columns, "fieldCode", "queryStrategy", DynamicFormColumn.class);
return dynamicFormInstanceService.getBaseMapper().listOneDayDutyPerson(dutyDay, shiftId,fieldCodes,RequestContext.getAppKey(),groupCode, params);
}
} }
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