| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| import org.apache.ofbiz.base.util.UtilMisc; |
| import org.apache.ofbiz.base.util.Debug; |
| import org.apache.ofbiz.entity.util.*; |
| import org.apache.ofbiz.entity.condition.*; |
| |
| custRequestList = []; |
| custAndWorkEffortList = []; |
| revisionList = []; |
| listIt = []; |
| //for productId and custRequestId |
| if ((parameters.productId != null)||(parameters.custRequestId != null)||(parameters.workEffortId != null)||(viewIndex > 0)) { |
| orList = []; |
| orList.add(EntityCondition.makeCondition("custRequestTypeId", EntityOperator.EQUALS, "RF_PROD_BACKLOG")); |
| orList.add(EntityCondition.makeCondition("custRequestTypeId", EntityOperator.EQUALS, "RF_UNPLAN_BACKLOG")); |
| andList = []; |
| if (parameters.productId) { |
| andList.add(EntityCondition.makeCondition("productId", EntityOperator.LIKE, parameters.productId + "%")); |
| } |
| if (parameters.custRequestId) { |
| andList.add(EntityCondition.makeCondition("custRequestId", EntityOperator.LIKE, parameters.custRequestId + "%")); |
| } |
| andList.add(EntityCondition.makeCondition(orList, EntityOperator.OR)); |
| custRequestCond = EntityCondition.makeCondition(andList, EntityOperator.AND); |
| custRequestList = from("CustRequestAndCustRequestItem").where(custRequestCond).queryList(); |
| |
| custRequestIds = EntityUtil.getFieldListFromEntityList(custRequestList, "custRequestId", true); |
| taskOrList = []; |
| taskOrList.add(EntityCondition.makeCondition("workEffortTypeId", EntityOperator.EQUALS, "SCRUM_TASK_ERROR")); |
| taskOrList.add(EntityCondition.makeCondition("workEffortTypeId", EntityOperator.EQUALS, "SCRUM_TASK_TEST")); |
| taskOrList.add(EntityCondition.makeCondition("workEffortTypeId", EntityOperator.EQUALS, "SCRUM_TASK_IMPL")); |
| taskOrList.add(EntityCondition.makeCondition("workEffortTypeId", EntityOperator.EQUALS, "SCRUM_TASK_INST")); |
| taskAndList = []; |
| taskAndList.add(EntityCondition.makeCondition("custRequestId", EntityOperator.IN, custRequestIds)); |
| taskAndList.add(EntityCondition.makeCondition(taskOrList, EntityOperator.OR)); |
| custAndWorkEffortCond = EntityCondition.makeCondition(taskAndList, EntityOperator.AND); |
| custAndWorkEffortList = from("CustRequestAndWorkEffort").where(custAndWorkEffortCond).queryList(); |
| |
| //for workEffortId |
| workEffortIds = EntityUtil.getFieldListFromEntityList(custAndWorkEffortList, "workEffortId", true); |
| revisionAndList = []; |
| if (parameters.workEffortId) { |
| revisionAndList.add(EntityCondition.makeCondition("workEffortId", EntityOperator.LIKE, parameters.workEffortId + "%")); |
| } else { |
| revisionAndList.add(EntityCondition.makeCondition("workEffortId", EntityOperator.IN, workEffortIds)); |
| } |
| revisionAndList.add(EntityCondition.makeCondition("workEffortContentTypeId", EntityOperator.EQUALS, "TASK_SUB_INFO")); |
| revisionCond = EntityCondition.makeCondition(revisionAndList, EntityOperator.AND); |
| revisionList = from("WorkEffortAndContentDataResource").where(revisionCond).orderBy("-fromDate").queryList(); |
| |
| if (revisionList) { |
| revisionList.each { revisionMap -> |
| inputMap = [:]; |
| inputMap.workEffortId = revisionMap.workEffortId; |
| inputMap.contentId = revisionMap.contentId; |
| inputMap.fromDate = revisionMap.fromDate; |
| inputMap.contentName = revisionMap.contentName; |
| inputMap.description = revisionMap.description; |
| inputMap.drObjectInfo = revisionMap.drObjectInfo; |
| custAndWorkEfffList = from("CustRequestAndWorkEffort").where("workEffortId", revisionMap.workEffortId).queryList(); |
| if (custAndWorkEfffList) { |
| custAndWorkEfffMap = custAndWorkEfffList[0]; |
| custAndCustItemList = from("CustRequestAndCustRequestItem").where("custRequestId", custAndWorkEfffMap.custRequestId).queryList(); |
| if (custAndCustItemList) { |
| custAndCustItemMap = custAndCustItemList[0]; |
| inputMap.productId = custAndCustItemMap.productId; |
| inputMap.custRequestId = custAndCustItemMap.custRequestId; |
| } |
| } |
| listIt.add(inputMap); |
| } |
| context.listIt = listIt; |
| } |
| } |