Commit 9695109b authored by lisong's avatar lisong

添加项目资源查询接口

parent c712b4da
......@@ -12,6 +12,7 @@ import org.aspectj.weaver.ast.Test;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
......@@ -50,4 +51,9 @@ public interface ProjectResourceMapper extends BaseMapper<ProjectResource> {
String selectInstanceId(@Param("projectId") Long projectId, @Param("type") String type);
Page<Map<String, Object>> getWelders(@Param("page") Page<Map<String, Object>> page, @Param("projectId") Long projectId);
Page<Map<String, Object>> getEquipments(@Param("page") Page<Map<String, Object>> page, @Param("projectId") Long projectId);
Page<Map<String, Object>> getMaterials(@Param("page") Page<Map<String, Object>> page, @Param("projectId") Long projectId);
}
......@@ -215,4 +215,54 @@
and type = #{type}
and audit_status != '流程结束!' LIMIT 1
</select>
<select id="getWelders" resultType="java.util.Map">
SELECT tupr.resource_id AS sequenceNbr,
CASE
WHEN tupr.audit_status ISNULL THEN 1
ELSE tupr.status
END AS status
FROM tz_ugp_project_resource tupr
WHERE tupr.project_id = #{projectId}
and tupr.type = 'welder'
</select>
<select id="getEquipments" resultType="java.util.Map">
SELECT tue.sequence_nbr as sequenceNbr,
tue.name,
tue.type,
tue.manufacturer,
tue.code,
tue.manufacture_date as manufactureDate,
tue.service_life as service_Life,
tue.verify_status as verifyStatus,
tua.info as files,
CASE
WHEN tupr.audit_status ISNULL THEN 1
ELSE tupr.status
END AS status
FROM tz_ugp_project_resource tupr
left join tz_ugp_equipment tue on tupr.resource_id = tue.sequence_nbr
left join tz_ugp_attachment tua on tue.sequence_nbr = tua.source_id
WHERE tupr.project_id = #{projectId}
and tupr.type = 'equipment'
</select>
<select id="getMaterials" resultType="java.util.Map">
SELECT tum.sequence_nbr as sequenceNbr,
tum.name,
tum.type,
tum.spec,
tum.manufacturer,
tum.code,
tua.info as files,
CASE
WHEN tupr.audit_status ISNULL THEN 1
ELSE tupr.status
END AS status
FROM tz_ugp_project_resource tupr
left join tz_ugp_material tum on tupr.resource_id = tum.sequence_nbr
left join tz_ugp_attachment tua on tum.sequence_nbr = tua.source_id
WHERE tupr.project_id = #{projectId}
and tupr.type = 'material'
</select>
</mapper>
......@@ -14,6 +14,7 @@ import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import com.yeejoin.amos.boot.module.common.api.mapper.DynamicFormInstanceMapper;
import com.yeejoin.amos.boot.module.common.biz.utils.CommonResponseUtil;
import com.yeejoin.amos.boot.module.ugp.api.Enum.OrgEnum;
import com.yeejoin.amos.boot.module.ugp.api.Enum.TabLogoEnum;
......@@ -90,6 +91,9 @@ public class ProjectController extends BaseController {
@Autowired
ProjectResourceMapper projectResourceMapper;
@Autowired
DynamicFormInstanceMapper dynamicFormInstanceMapper;
/**
* 新增项目信息表
*
......@@ -860,5 +864,44 @@ public class ProjectController extends BaseController {
projectInitiationService.projectResourceExecute(instanceId, dto.getStatus(), dto.getType());
return ResponseHelper.buildResponse("ok");
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "GET", value = "查询项目绑定资源信息", notes = "查询项目绑定资源信息")
@GetMapping(value = "/getResourceByProjectId")
public ResponseModel<Object> getResourceByProjectId(@RequestParam("pageNumber") Long pageNumber, @RequestParam("size") Long size, @RequestParam("projectId") Long projectId, @RequestParam("type") String type) {
String columnKey = "column";
String valueKey = "value";
String sequenceNbrKey = "sequenceNbr";
Page<Map<String, Object>> page = new Page<>(pageNumber, size);
if ("welder".equals(type)) {
Page<Map<String, Object>> welders = projectResourceMapper.getWelders(page, projectId);
if (!ObjectUtils.isEmpty(welders.getRecords())) {
welders.getRecords().forEach(item -> {
List<Map<String, Object>> itemMessage = dynamicFormInstanceMapper.getMessageByInstanceId(String.valueOf(item.get(sequenceNbrKey)));
itemMessage.forEach(dataItem -> {
// if (String.valueOf(dataItem.get(columnKey)).equals("image") && !ObjectUtils.isEmpty(dataItem.get(columnKey)) && !ObjectUtils.isEmpty(dataItem.get(valueKey))) {
// String value1 = String.valueOf(dataItem.get(valueKey));
// List<Map<String, Object>> imageMap = (List<Map<String, Object>>) JSON.parse(value1);
// if (!ObjectUtils.isEmpty(imageMap)) {
// item.put("files", imageMap);
// }
// }else {
item.put(String.valueOf(dataItem.get(columnKey)), dataItem.get(valueKey));
// }
});
});
}
return ResponseHelper.buildResponse(welders);
} else if ("equipment".equals(type)) {
Page<Map<String, Object>> equipments = projectResourceMapper.getEquipments(page, projectId);
return ResponseHelper.buildResponse(equipments);
} else if ("material".equals(type)) {
Page<Map<String, Object>> materials = projectResourceMapper.getMaterials(page, projectId);
return ResponseHelper.buildResponse(materials);
}
return ResponseHelper.buildResponse(null);
}
}
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