some2list
#function some2list ($some)
#if ($vs.util.isNull($some))
return null
#else
#if ($vs.util.isList($some))
return $some
#else
return $vs.util.newList($some)
#end
#end
#end
#set($list = @some2list($some))
transformList
#function transformList ($list, $fieldMap)
#if ($vs.util.isList($list) && $vs.util.isMap($fieldMap))
#foreach ($row in $list)
#foreach ($key in $vs.util.getMapKeys($fieldMap))
$row.put($fieldMap.get($key), $row.get($key))
#end
#end
#end
return $list
#end
list2map
#function list2map ($list, $keyField, $valueField)
#if ($vs.util.isList($list))
#set($map = $vs.util.newMap())
#foreach($row in $list)
#set($value = $row)
#if (!$vs.util.isNull($valueField))
#set($value = $row.get($valueField))
#end
$map.put($row.get($keyField), $value)
#end
return $map
#end
return null
#end
#set($map = @list2map($list, $keyField, $valueField))
list2mapByScript
#function list2mapByScript ($list, $key)
#set($map = $vs.util.newMap())
#foreach($row in $list)
#set($script = 'return $row.' + $key)
$map.put($vs.proc.executeScript($script, $vs.util.newMap('row', $row)), $row)
#end
return $map
#end
list2page
#function list2page ($list, $pageNumber, $pageSize)
#if ($vs.util.isList($list) && $vs.util.isNumeric($pageNumber) && $vs.util.isNumeric($pageSize))
#if ($pageNumber < 1)
#set($pageNumber = 1)
#end
#if ($pageSize < 1)
#set($pageSize = 1)
#end
#set($size = $list.size())
#set($page = $vs.util.newMap())
#set($page.pageNo = $pageNumber)
#set($page.pageNumber = $pageNumber)
#set($page.pageSize = $pageSize)
#set($page.totalCount = $size)
#set($totalPage = $size / $pageSize)
#if ($size > ($totalPage * $pageSize))
#set($totalPage = $totalPage + 1)
#end
#set($page.totalPage = $totalPage)
#set($start = ($pageNumber - 1) * $pageSize)
#set($end = $start + $pageSize)
#if ($start > $size)
#set($start = $size)
#end
#if ($end > $size)
#set($end = $size)
#end
#set($page.result = $list.subList($start, $end))
return $page
#end
#end