Commit 45f22a15 by wukaiqiang

项目专题及部分合同专题查询组件

parent 52c001fe
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>2d11cb4d-a82a-4ac3-8959-3c711ee15365</id>
<name>com.xyst.dinas.statistics.advanquery.ContractAmountStatisticsAdvQuery</name>
<title>区域公司合同额统计</title>
<description>区域公司合同额统计</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
SUM(contract.amount) AS amount,
contract.regionalCompanyName AS regionalCompanyName
FROM
Contract AS contract
WHERE 1=1
AND contract.approveState = 2
AND contract.contractState &lt;&gt; 'MODIFIED'
GROUP BY contract.regionalCompany
</sql>
</template>
</content>
</metadata>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>2a9f879d-1131-49d3-ac29-4d081a803d9e</id>
<name>com.xyst.dinas.statistics.advanquery.ContractAmountStatisticsQueryView</name>
<title>区域公司合同额统计</title>
<description>区域公司合同额统计</description>
<define>advanced.query.view</define>
<define-version>1.0</define-version>
<content>
<view>
{
"name": "区域公司合同额统计",
"title": "区域公司合同额统计",
"description": "区域公司合同额统计",
"actions": [],
"scenes" : {
"isShowScenes" : true
},
"fuzzySearch": [
],
"isShowTabCountZero": true,
"groups": [
{
"name": "all",
"title": "全部",
"content": {
"datasource": "com.xyst.dinas.statistics.advanquery.ContractAmountStatisticsAdvQuery"
}
}
],
"content": {
"isShowView": "table",
"datasource": "com.xyst.dinas.statistics.advanquery.ContractAmountStatisticsAdvQuery",
"arguments": {
"items": [
]
},
"actions": [
],
"table": {
"selectType": "MULTI",
"serialNumber": "series",
"pageSize": 10,
"orders":[
],
"expand": false,
"columns": [
{
"type": "VALUE",
"title": "区域公司",
"key": "regionalCompanyName",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "合同总额",
"key": "amount",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
]
}
}
}
</view>
</content>
</metadata>
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>3a5c86cc-946e-43b5-94ca-d8c37331dedc</id>
<name>com.xyst.dinas.statistics.advanquery.ContractDinasAmountStatisticsAdvQuery</name>
<title>区域公司合同量统计</title>
<description>区域公司合同量统计</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
SUM(contract.dinasAmount) AS dinasAmount,
contract.regionalCompanyName AS regionalCompanyName
FROM
Contract AS contract
WHERE 1=1
AND contract.approveState = 2
AND contract.contractState &lt;&gt; 'MODIFIED'
GROUP BY contract.regionalCompany
</sql>
</template>
</content>
</metadata>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>f69f18d8-4624-4e7c-8af6-b9107bb8b2a1</id>
<name>com.xyst.dinas.statistics.advanquery.ContractDinasAmountStatisticsQueryView</name>
<title>区域公司合同量统计</title>
<description>区域公司合同量统计</description>
<define>advanced.query.view</define>
<define-version>1.0</define-version>
<content>
<view>
{
"name": "区域公司合同量统计",
"title": "区域公司合同量统计",
"description": "区域公司合同量统计",
"actions": [],
"scenes" : {
"isShowScenes" : true
},
"fuzzySearch": [
],
"isShowTabCountZero": true,
"groups": [
{
"name": "all",
"title": "全部",
"content": {
"datasource": "com.xyst.dinas.statistics.advanquery.ContractDinasAmountStatisticsAdvQuery"
}
}
],
"content": {
"isShowView": "table",
"datasource": "com.xyst.dinas.statistics.advanquery.ContractDinasAmountStatisticsAdvQuery",
"arguments": {
"items": [
]
},
"actions": [
],
"table": {
"selectType": "MULTI",
"serialNumber": "series",
"pageSize": 10,
"orders":[
],
"expand": false,
"columns": [
{
"type": "VALUE",
"title": "区域公司",
"key": "regionalCompanyName",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "合同总量",
"key": "dinasAmount",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
]
}
}
}
</view>
</content>
</metadata>
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>40b86917-b139-4f81-8099-2d1fed22df3a</id>
<name>com.xyst.dinas.statistics.advanquery.ContractDinasTypeStatisticsAdvQuery</name>
<title>砂石种类统计</title>
<description>砂石种类统计</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
dinasType.type AS type ,
dinasType.dinasTypeName AS dinasTypeName,
contractAssociatedcontractDetail.purchaseAmount AS purchaseAmount
FROM
ContractAssociatedcontractDetail AS contractAssociatedcontractDetail
LEFT JOIN DinasType AS dinasType ON contractAssociatedcontractDetail.dinasType = dinasType.id
GROUP BY contractAssociatedcontractDetail.dinasType
</sql>
</template>
</content>
</metadata>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>455a724a-ef32-4ad6-b1e4-9fb894b6fcde</id>
<name>com.xyst.dinas.statistics.advanquery.ContractDinasTypeStatisticsQueryView</name>
<title>砂石种类统计</title>
<description>砂石种类统计</description>
<define>advanced.query.view</define>
<define-version>1.0</define-version>
<content>
<view>
{
"name": "砂石种类统计",
"title": "砂石种类统计",
"description": "砂石种类统计",
"actions": [],
"scenes" : {
"isShowScenes" : true
},
"fuzzySearch": [
],
"isShowTabCountZero": true,
"groups": [
{
"name": "all",
"title": "全部",
"content": {
"datasource": "com.xyst.dinas.statistics.advanquery.ContractDinasTypeStatisticsAdvQuery"
}
}
],
"content": {
"isShowView": "table",
"datasource": "com.xyst.dinas.statistics.advanquery.ContractDinasTypeStatisticsAdvQuery",
"arguments": {
"items": [
]
},
"actions": [
],
"table": {
"selectType": "MULTI",
"serialNumber": "series",
"pageSize": 10,
"orders":[
],
"expand": false,
"columns": [
{
"type": "VALUE",
"title": "类型0砂1石",
"key": "type",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "砂石名称",
"key": "dinasTypeName",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "砂石采购量(吨)",
"key": "purchaseAmount",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
]
}
}
}
</view>
</content>
</metadata>
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>1ef54e7a-dfa3-4c75-8b92-276a97bd9b77</id>
<name>com.xyst.dinas.statistics.advanquery.ContractStatisticsAdvQuery</name>
<title>合同分析</title>
<description>合同分析</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
SUM(contract.amount) as amount,
SUM(contract.dinasAmount) as dinasAmount
FROM
Contract AS contract
WHERE 1=1
AND contract.approveState = 2
AND contract.contractState &lt;&gt; 'MODIFIED'
</sql>
</template>
</content>
</metadata>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>f0dbed72-1518-4f85-a22e-01901a1d7c2b</id>
<name>com.xyst.dinas.statistics.advanquery.ContractStatisticsQueryView</name>
<title>合同分析</title>
<description>合同分析</description>
<define>advanced.query.view</define>
<define-version>1.0</define-version>
<content>
<view>
{
"name": "合同分析",
"title": "合同分析",
"description": "合同分析",
"actions": [],
"scenes" : {
"isShowScenes" : true
},
"fuzzySearch": [
],
"isShowTabCountZero": true,
"groups": [
{
"name": "all",
"title": "全部",
"content": {
"datasource": "com.xyst.dinas.statistics.advanquery.ContractStatisticsAdvQuery"
}
}
],
"content": {
"isShowView": "table",
"datasource": "com.xyst.dinas.statistics.advanquery.ContractStatisticsAdvQuery",
"arguments": {
"items": [
]
},
"actions": [
],
"table": {
"selectType": "MULTI",
"serialNumber": "series",
"pageSize": 10,
"orders":[
],
"expand": false,
"columns": [
{
"type": "VALUE",
"title": "合同总量",
"key": "dinasAmount",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "合同总额",
"key": "amount",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
]
}
}
}
</view>
</content>
</metadata>
......@@ -12,15 +12,20 @@
<sql-type>SQL</sql-type>
<sql>
SELECT
sum( projectFiledDinasDetail.weight ) AS weight,
CASE WHEN dinasType.type = 0 THEN '砂'
ELSE '石'
END AS dinasTypeName
sum( contractDetail.purchaseAmount ) AS weight,
CASE
WHEN dinasType.type = 0 THEN
'砂' ELSE '石'
END AS dinasTypeName
FROM
ProjectFiled AS projectFiled
LEFT JOIN ProjectFiledAssociatedProjectFiledDinasDetail AS projectFiledDinasDetail ON projectFiledDinasDetail.master = projectFiled.id
LEFT JOIN DinasType AS dinasType ON projectFiledDinasDetail.dinasType = dinasType.id
WHERE 1=1 and projectFiled.regionalCompany = :?regionalCompany
LEFT JOIN Contract AS contract ON contract.project = projectFiled.id
AND contract.approveState = 2
AND contract.contractState &lt;&gt; 'MODIFIED'
LEFT JOIN ContractAssociatedcontractDetail AS contractDetail ON contractDetail.master = contract.id
LEFT JOIN DinasType AS dinasType ON contractDetail.dinasType = dinasType.id
WHERE 1=1 AND dinasType.type IS NOT NULL
AND projectFiled.regionalCompany = :?regionalCompany
GROUP BY
dinasType.type
</sql>
......
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>361ebecb-4757-43cd-8d71-9d607203d7b0</id>
<name>com.xyst.dinas.statistics.advanquery.ProjectDistrictStatisticsAdvQuery</name>
<title>市区项目统计</title>
<description>市区项目统计</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
count(0) as projectNumber,
projectFiledDetial.district as projectDiscard
FROM(
SELECT
projectFiled.id as projectNumber,
CASE
WHEN projectFiled.district is null THEN
'未知地区'
ELSE
projectFiled.district
END as district
FROM
ProjectFiled AS projectFiled
WHERE 1=1
AND projectFiled.regionalCompany = :?regionalCompany
) AS projectFiledDetial
GROUP BY projectFiledDetial.district
</sql>
</template>
</content>
</metadata>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>969a646c-37bf-4612-be2d-bcd71aaaf47e</id>
<name>com.xyst.dinas.statistics.advanquery.ProjectDistrictStatisticsQueryView</name>
<title>市区项目统计</title>
<description>市区项目统计</description>
<define>advanced.query.view</define>
<define-version>1.0</define-version>
<content>
<view>
{
"name": "市区项目统计",
"title": "市区项目统计",
"description": "市区项目统计",
"actions": [],
"scenes" : {
"isShowScenes" : true
},
"fuzzySearch": [
],
"isShowTabCountZero": true,
"groups": [
{
"name": "all",
"title": "全部",
"content": {
"datasource": "com.xyst.dinas.statistics.advanquery.ProjectDistrictStatisticsAdvQuery"
}
}
],
"content": {
"isShowView": "table",
"datasource": "com.xyst.dinas.statistics.advanquery.ProjectDistrictStatisticsAdvQuery",
"arguments": {
"items": [
]
},
"actions": [
],
"table": {
"selectType": "MULTI",
"serialNumber": "series",
"pageSize": 10,
"orders":[
],
"expand": false,
"columns": [
{
"type": "VALUE",
"title": "项目数量",
"key": "projectNumber",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "项目地区",
"key": "projectDiscard",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
]
}
}
}
</view>
</content>
</metadata>
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>440d16c3-2d60-4a6c-9bcd-140d690f5ce3</id>
<name>com.xyst.dinas.statistics.advanquery.ProjectNumberTrendStatisticsAdvQuery</name>
<title>项目数据趋势</title>
<description>项目数据趋势</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
count(0) as projectNumber,
monthof(projectFiled.createTime) as projectTime
FROM
ProjectFiled AS projectFiled
WHERE 1=1
AND projectFiled.createTime &gt;= :?startDate
AND projectFiled.createTime &lt;= :?endDate
AND projectFiled.regionalCompany = :?regionalCompany
GROUP BY monthof(projectFiled.createTime)
</sql>
</template>
</content>
</metadata>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>67fabc23-1f94-40de-b588-f787ad910eb6</id>
<name>com.xyst.dinas.statistics.advanquery.ProjectNumberTrendStatisticsQueryView</name>
<title>项目数据趋势</title>
<description>项目统计</description>
<define>advanced.query.view</define>
<define-version>1.0</define-version>
<content>
<view>
{
"name": "项目数据趋势",
"title": "项目数据趋势",
"description": "项目数据趋势",
"actions": [],
"scenes" : {
"isShowScenes" : true
},
"fuzzySearch": [
],
"isShowTabCountZero": true,
"groups": [
{
"name": "all",
"title": "全部",
"content": {
"datasource": "com.xyst.dinas.statistics.advanquery.ProjectNumberTrendStatisticsAdvQuery"
}
}
],
"content": {
"isShowView": "table",
"datasource": "com.xyst.dinas.statistics.advanquery.ProjectNumberTrendStatisticsAdvQuery",
"arguments": {
"items": [
]
},
"actions": [
],
"table": {
"selectType": "MULTI",
"serialNumber": "series",
"pageSize": 10,
"orders":[
],
"expand": false,
"columns": [
{
"type": "VALUE",
"title": "项目数量",
"key": "projectNumber",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "项目时间",
"key": "projectTime",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
]
}
}
}
</view>
</content>
</metadata>
......@@ -17,23 +17,47 @@
FROM
(
SELECT
project.projectName,
project.contractState
project.projectName as projectName,
project.contractState as contractState,
project.regionalCompany as regionalCompany
FROM
(
SELECT
projectFiled.id,
projectFiled.projectName AS projectName,
contract.contractState AS contractState
case
when
contract.contractState is null
THEN 'UN_EXECUTE'
ELSE
contract.contractState end AS contractState ,
contract.createtime AS createtime,
ProjectFiled.regionalCompany as regionalCompany
FROM
ProjectFiled AS projectFiled
LEFT JOIN ProjectType AS projectType ON projectFiled.projectType = projectType.id
LEFT JOIN Contract AS contract ON contract.project = projectFiled.id
ORDER BY
contract.startDate DESC
LEFT JOIN Contract AS contract ON contract.project = projectFiled.id
) AS project
LEFT JOIN (
SELECT
projectFiled.id,
projectFiled.projectName AS projectName,
contract.contractState AS contractState,
contract.createtime AS createtime,
ProjectFiled.regionalCompany as regionalCompany
FROM
ProjectFiled AS projectFiled
LEFT JOIN ProjectType AS projectType ON projectFiled.projectType = projectType.id
LEFT JOIN Contract AS contract ON contract.project = projectFiled.id
) AS project1 ON project.id = project1.id
AND project.createtime &lt; project1.createtime
WHERE
project1.id IS NULL
GROUP BY
project.projectName
) AS projectResult
where 1=1
and projectResult.regionalCompany = :?regionalCompany
GROUP BY
projectResult.contractState
</sql>
......
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>070b7136-2bbf-451e-99a2-1ef5c41530f3</id>
<name>com.xyst.dinas.statistics.advanquery.RegionalCompanyProjectStatisticsAdvQuery</name>
<title>区域公司项目统计</title>
<description>区域公司项目统计</description>
<define>advanced.query.template</define>
<define-version>1.0</define-version>
<content>
<template>
<sql-type>SQL</sql-type>
<sql>
SELECT
count( 1 ) AS projectNumber,
projectResult.contractState AS contractState ,
projectResult.regionalCompany as regionalCompany,
projectResult.regionalCompanyName as regionalCompanyName
FROM
(
SELECT
project.projectName as projectName,
project.contractState as contractState,
project.regionalCompany as regionalCompany,
project.regionalCompanyName as regionalCompanyName
FROM
(
SELECT
projectFiled.ID,
projectFiled.projectName AS projectName,
CASE
WHEN contract.contractState IS NULL THEN
'UN_EXECUTE' ELSE contract.contractState
END AS contractState,
contract.createTime AS createTime ,
projectFiled.regionalCompany as regionalCompany,
xystOrganization.name as regionalCompanyName
FROM
ProjectFiled AS projectFiled
LEFT JOIN ProjectType AS projectType ON projectFiled.projectType = projectType.id
LEFT JOIN Contract AS contract ON contract.project = projectFiled.id
LEFT JOIN xystOrganization AS xystOrganization ON xystOrganization.id = projectFiled.regionalCompany
) AS project
LEFT JOIN (
SELECT
projectFiled.ID,
projectFiled.projectName AS projectName,
contract.contractState AS contractState,
contract.createTime AS createTime ,
projectFiled.regionalCompany as regionalCompany,
xystOrganization.name as regionalCompanyName
FROM
ProjectFiled AS projectFiled
LEFT JOIN ProjectType AS projectType ON projectFiled.projectType = projectType.id
LEFT JOIN Contract AS contract ON contract.project = projectFiled.id
LEFT JOIN xystOrganization AS xystOrganization ON xystOrganization.id = projectFiled.regionalCompany
) AS project1 ON project.ID = project1.ID
AND project.createTime &lt; project1.createTime
WHERE
project1.ID IS NULL
GROUP BY
project.projectName
) AS projectResult
where 1=1
and projectResult.regionalCompany = :?regionalCompany
GROUP BY
projectResult.contractState,
projectResult.regionalCompany
</sql>
</template>
</content>
</metadata>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://www.beecode.cn/schema/amino-metadata">
<specification>1.0</specification>
<id>6432f23c-9f05-4604-ae5e-0d5d9a497e19</id>
<name>com.xyst.dinas.statistics.advanquery.RegionalCompanyProjectStatisticsQueryView</name>
<title>区域公司项目统计</title>
<description>区域公司项目统计</description>
<define>advanced.query.view</define>
<define-version>1.0</define-version>
<content>
<view>
{
"name": "区域公司项目统计",
"title": "区域公司项目统计",
"description": "区域公司项目统计",
"actions": [],
"scenes" : {
"isShowScenes" : true
},
"fuzzySearch": [
],
"isShowTabCountZero": true,
"groups": [
{
"name": "all",
"title": "全部",
"content": {
"datasource": "com.xyst.dinas.statistics.advanquery.RegionalCompanyProjectStatisticsAdvQuery"
}
}
],
"content": {
"isShowView": "table",
"datasource": "com.xyst.dinas.statistics.advanquery.RegionalCompanyProjectStatisticsAdvQuery",
"arguments": {
"items": [
]
},
"actions": [
],
"table": {
"selectType": "MULTI",
"serialNumber": "series",
"pageSize": 10,
"orders":[
],
"expand": false,
"columns": [
{
"type": "VALUE",
"title": "项目状态",
"key": "contractState",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "项目数量",
"key": "projectNumber",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
},
{
"type": "VALUE",
"title": "区域公司名称",
"key": "regionalCompanyName",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
,
{
"type": "VALUE",
"title": "区域公司ID",
"key": "regionalCompany",
"columnType": {
"name": "select",
"data": {
"selected": true
}
}
}
]
}
}
}
</view>
</content>
</metadata>
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