/* * 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 java.util.* import java.lang.* import org.apache.tools.ant.taskdefs.Parallel.TaskList import org.apache.ofbiz.base.util.* import org.apache.ofbiz.entity.* import org.apache.ofbiz.base.util.UtilMisc import org.apache.ofbiz.base.util.UtilValidate import org.apache.ofbiz.base.util.UtilDateTime import org.apache.ofbiz.entity.util.* import org.apache.ofbiz.entity.condition.* import java.sql.Timestamp partyId = userLogin.partyId taskUnplanList = [] taskPlanList = [] taskPartyList = [] taskListDropdown = [] //${projectId} - ${projectName} - ${sprintName} - ${groovy:description.substring(0,Math.min(description.length(),30))}[${custRequestId}] - ${groovy:taskName.substring(0,Math.min(taskName.length(),20))}[${taskId}]"/> taskUnplanList = from("ProjectSprintBacklogTaskAndParty").where("partyId", partyId,"taskCurrentStatusId", "STS_CREATED","custRequestTypeId","RF_UNPLAN_BACKLOG").orderBy("taskTypeId").queryList() taskUnplanList.each { taskUnplanMap -> unplanMap=[:] custRequestId = taskUnplanMap.custRequestId productlist = from("CustRequestItem").where("custRequestId", custRequestId).orderBy("productId").queryList() productlist.each { productMap -> productId = productMap.productId product = from("Product").where("productId", productId).queryOne() productName = product.internalName unplanMap.taskId = taskUnplanMap.taskId unplanMap.taskName = taskUnplanMap.taskName unplanMap.projectId = taskUnplanMap.projectId unplanMap.projectName = taskUnplanMap.projectName unplanMap.sprintId = taskUnplanMap.sprintId unplanMap.sprintName = taskUnplanMap.sprintName unplanMap.custRequestId = custRequestId unplanMap.description = taskUnplanMap.description unplanMap.productId = productId unplanMap.productName = productName } taskPartyList.add(taskUnplanMap) taskListDropdown.add(unplanMap) } exprBldr = [] exprBldr.add(EntityCondition.makeCondition("custRequestTypeId", EntityOperator.EQUALS, "RF_PROD_BACKLOG")) exprBldr.add(EntityCondition.makeCondition("custRequestTypeId", EntityOperator.EQUALS, "RF_SCRUM_MEETINGS")) andExprs = [] andExprs.add(EntityCondition.makeCondition("taskCurrentStatusId", EntityOperator.EQUALS, "STS_CREATED")) andExprs.add(EntityCondition.makeCondition("partyId", EntityOperator.EQUALS, partyId)) andExprs.add(EntityCondition.makeCondition(exprBldr, EntityOperator.OR)) custRequestTypeCond = EntityCondition.makeCondition(andExprs, EntityOperator.AND) taskPlanList = from("ProjectSprintBacklogTaskAndParty").where(custRequestTypeCond).orderBy("taskTypeId","projectId","sprintId").queryList() taskPlanList.each { taskPlanMap -> planMap=[:] if ("RF_SCRUM_MEETINGS".equals(taskPlanMap.custRequestTypeId)) { workEffPartyAssignedList = from("WorkEffortPartyAssignment").where("partyId", partyId, "workEffortId", taskPlanMap.taskId).queryList() workEffPartyAssignedMap = workEffPartyAssignedList[0] if (!"SCAS_COMPLETED".equals(workEffPartyAssignedMap.statusId)) { taskPartyList.add(taskPlanMap) taskListDropdown.add(taskPlanMap) } } else { if (taskPlanMap.projectId) { taskPartyList.add(taskPlanMap) taskListDropdown.add(taskPlanMap) } else { custRequestId = taskPlanMap.custRequestId productlist = from("CustRequestItem").where("custRequestId", custRequestId).orderBy("productId").queryList() product = from("Product").where("productId", productlist[0].productId).queryOne() productName = product.internalName planMap.taskId = taskPlanMap.taskId planMap.taskTypeId = taskPlanMap.taskTypeId planMap.taskName = taskPlanMap.taskName planMap.projectId = taskPlanMap.projectId planMap.projectName = taskPlanMap.projectName planMap.sprintId = taskPlanMap.sprintId planMap.sprintName = taskPlanMap.sprintName planMap.custRequestId = custRequestId planMap.description = taskPlanMap.description planMap.productId = productlist[0].productId planMap.productName = productName taskPartyList.add(planMap) taskListDropdown.add(planMap) } } } if (taskPartyList){ context.taskPartyList = taskPartyList } if (taskListDropdown){ context.taskListDropdown = taskListDropdown }