Commit 9367aa55 authored by hezhuozhi's avatar hezhuozhi

Merge remote-tracking branch 'origin/developer_bw' into developer_bw

parents d1da5cfc de93bf68
...@@ -14,41 +14,42 @@ public enum StatisicsHomePageEnum { ...@@ -14,41 +14,42 @@ public enum StatisicsHomePageEnum {
项目公司("regionalCompaniesName",2), 项目公司("regionalCompaniesName",2),
代理商("developerName",3), 代理商("developerName",3),
实际建设容量("realScale",4), 实际建设容量("realScale",4),
勘察未通过("kcwtg",5), 未勘察("wkc",5),
勘察未通过容量("kcwtgrl",6), 勘察未通过("kcwtg",6),
勘察进行中("kcjxz",7), 勘察未通过容量("kcwtgrl",7),
勘察进行中容量("kcjxzrl",8), 勘察进行中("kcjxz",8),
勘察已完成("kcywc",9), 勘察进行中容量("kcjxzrl",9),
勘察已完成容量("kcywcrl",10), 勘察已完成("kcywc",10),
备货未通过("bhwtg",11), 勘察已完成容量("kcywcrl",11),
备货未通过容量("bhwtgrl",12), 备货未通过("bhwtg",12),
备货进行中("bhjxz",13), 备货未通过容量("bhwtgrl",13),
备货进行中容量("bhjxzrl",14), 备货进行中("bhjxz",14),
备货已完成("bhywc",15), 备货进行中容量("bhjxzrl",15),
备货已完成容量("bhywcrl",16), 备货已完成("bhywc",16),
施工未通过("sgwtg",17), 备货已完成容量("bhywcrl",17),
施工未通过容量("sgwtgrl",18), 施工未通过("sgwtg",18),
施工进行中("sgjxz",19), 施工未通过容量("sgwtgrl",19),
施工进行中容量("sgjxzrl",20), 施工进行中("sgjxz",20),
施工已完成("sgywc",21), 施工进行中容量("sgjxzrl",21),
施工已完成容量("sgywcrl",22), 施工已完成("sgywc",22),
并网未通过("bwwtg",23), 施工已完成容量("sgywcrl",23),
并网未通过容量("bwwtgrl",24), 并网未通过("bwwtg",24),
并网进行中("bwjxz",25), 并网未通过容量("bwwtgrl",25),
并网进行中容量("bwjxzrl",26), 并网进行中("bwjxz",26),
并网已完成("bwywc",27), 并网进行中容量("bwjxzrl",27),
并网已完成容量("bwywcrl",28), 并网已完成("bwywc",28),
验收未通过("yswtg",29), 并网已完成容量("bwywcrl",29),
验收未通过容量("yswtgrl",30), 验收未通过("yswtg",30),
验收进行中("ysjxz",31), 验收未通过容量("yswtgrl",31),
验收进行中容量("ysjxzrl",32), 验收进行中("ysjxz",32),
验收已完成("ysywc",33), 验收进行中容量("ysjxzrl",33),
验收已完成容量("ysywcrl",34), 验收已完成("ysywc",34),
融资公司("rzgs",35), 验收已完成容量("ysywcrl",35),
融资户数("rzhs",36), 融资公司("rzgs",36),
融资容量("rzrl",37), 融资户数("rzhs",37),
融资单价("rzdj",38), 融资容量("rzrl",38),
放款金额("fkje",39); 融资单价("rzdj",39),
放款金额("fkje",40);
/** /**
* 名称,描述 * 名称,描述
*/ */
......
...@@ -384,14 +384,15 @@ ...@@ -384,14 +384,15 @@
ph.regional_companies_name AS regionalCompaniesName, ph.regional_companies_name AS regionalCompaniesName,
ph.developer_name AS developerName, ph.developer_name AS developerName,
ROUND(COALESCE(SUM(IFNULL(ei.real_scale, 0))/1000, 0), 2) AS realScale, ROUND(COALESCE(SUM(IFNULL(ei.real_scale, 0))/1000, 0), 2) AS realScale,
SUM(CASE WHEN ph.construction_state = '待勘察' THEN 1 ELSE 0 END) AS wkc,
SUM(CASE WHEN ps.process_status = '不通过' THEN 1 ELSE 0 END) AS kcwtg, SUM(CASE WHEN ps.process_status = '不通过' THEN 1 ELSE 0 END) AS kcwtg,
'' AS kcwtgrl, '' AS kcwtgrl,
SUM(CASE WHEN ps.process_status = '进行中' THEN 1 ELSE 0 END) AS kcjxz, SUM(CASE WHEN ps.process_status = '进行中' THEN 1 ELSE 0 END) AS kcjxz,
'' AS kcjxzrl, '' AS kcjxzrl,
SUM(CASE WHEN ps.process_status = '完成' THEN 1 ELSE 0 END) AS kcywc, SUM(CASE WHEN ps.process_status = '完成' THEN 1 ELSE 0 END) AS kcywc,
'' AS kcywcrl, ROUND(COALESCE(SUM(CASE WHEN ps.process_status = '完成' THEN ei.real_scale ELSE 0 END)/1000, 0), 2) AS kcywcrl,
SUM(CASE WHEN ph.preparation_money_state = '备货完成' THEN 1 ELSE 0 END) AS bhywc, SUM(CASE WHEN ph.preparation_money_state = '备货完成' THEN 1 ELSE 0 END) AS bhywc,
'' AS bhywcrl, ROUND(COALESCE(SUM(CASE WHEN ph.preparation_money_state = '备货完成' THEN ei.real_scale ELSE 0 END)/1000, 0), 2) AS bhywcrl,
SUM(CASE WHEN ph.preparation_money_state = '待发货' or ph.preparation_money_state = '暂存发货'or ph.preparation_money_state = '待补货' THEN 1 ELSE 0 END ) AS bhwtg, SUM(CASE WHEN ph.preparation_money_state = '待发货' or ph.preparation_money_state = '暂存发货'or ph.preparation_money_state = '待补货' THEN 1 ELSE 0 END ) AS bhwtg,
'' AS bhjxzrl, '' AS bhjxzrl,
SUM(CASE WHEN ph.preparation_money_state = '待收货' THEN 1 ELSE 0 END) AS bhjxz, SUM(CASE WHEN ph.preparation_money_state = '待收货' THEN 1 ELSE 0 END) AS bhjxz,
...@@ -563,11 +564,13 @@ ...@@ -563,11 +564,13 @@
SELECT SELECT
IFNULL( sum( CASE WHEN lc.STATUS = '已作废' THEN 1 ELSE 0 END ), 0 ) yzf, IFNULL( sum( CASE WHEN lc.STATUS = '已作废' THEN 1 ELSE 0 END ), 0 ) yzf,
IFNULL( sum( CASE WHEN lc.STATUS = '双方已签署' THEN 1 ELSE 0 END ), 0 ) sfyqs, IFNULL( sum( CASE WHEN lc.STATUS = '双方已签署' THEN 1 ELSE 0 END ), 0 ) sfyqs,
IFNULL( sum( CASE WHEN lc.STATUS = '双方已签署' THEN ei.real_scale ELSE 0 END ), 0 ) sfyqsrl,
IFNULL( sum( CASE WHEN lc.STATUS = '农户已签署' THEN 1 ELSE 0 END ), 0 ) nhyqs, IFNULL( sum( CASE WHEN lc.STATUS = '农户已签署' THEN 1 ELSE 0 END ), 0 ) nhyqs,
IFNULL( sum( CASE WHEN lc.STATUS = '未签署' THEN 1 ELSE 0 END ), 0 ) wqs, IFNULL( sum( CASE WHEN lc.STATUS = '未签署' THEN 1 ELSE 0 END ), 0 ) wqs,
IFNULL( SUM( CASE WHEN ps.process_status = '不通过' THEN 1 ELSE 0 END ), 0 ) AS kcwtg, IFNULL( SUM( CASE WHEN ps.process_status = '不通过' THEN 1 ELSE 0 END ), 0 ) AS kcwtg,
IFNULL( SUM( CASE WHEN ps.process_status = '进行中' THEN 1 ELSE 0 END ), 0 ) AS kcjxz, IFNULL( SUM( CASE WHEN ps.process_status = '进行中' THEN 1 ELSE 0 END ), 0 ) AS kcjxz,
IFNULL( SUM( CASE WHEN ps.process_status = '完成' THEN 1 ELSE 0 END ), 0 ) AS kcywc IFNULL( SUM( CASE WHEN ps.process_status = '完成' THEN 1 ELSE 0 END ), 0 ) AS kcywc,
IFNULL( SUM( CASE WHEN ps.process_status = '完成' THEN ei.real_scale ELSE 0 END ), 0 ) AS kcywcrl
FROM FROM
hygf_power_station ps hygf_power_station ps
LEFT JOIN ( LEFT JOIN (
...@@ -583,6 +586,8 @@ ...@@ -583,6 +586,8 @@
subq.rn = 1 subq.rn = 1
) lc ON lc.peasant_household_id = ps.peasant_household_id ) lc ON lc.peasant_household_id = ps.peasant_household_id
LEFT JOIN hygf_peasant_household ph ON ph.sequence_nbr = ps.peasant_household_id LEFT JOIN hygf_peasant_household ph ON ph.sequence_nbr = ps.peasant_household_id
LEFT JOIN hygf_work_order_power_station wops ON wops.peasant_household_id = ph.sequence_nbr
LEFT JOIN hygf_power_station_engineering_info ei ON ei.work_order_power_station_id = wops.sequence_nbr
WHERE WHERE
ps.is_delete = 0 ps.is_delete = 0
<if test="developerCode != null and developerCode != ''"> <if test="developerCode != null and developerCode != ''">
...@@ -607,9 +612,13 @@ ...@@ -607,9 +612,13 @@
SELECT SELECT
IFNULL(SUM( CASE WHEN preparation_money_state = '待发货' or preparation_money_state = '暂存发货' or preparation_money_state = '待补货' THEN 1 ELSE 0 END ), 0 ) AS dfh, IFNULL(SUM( CASE WHEN preparation_money_state = '待发货' or preparation_money_state = '暂存发货' or preparation_money_state = '待补货' THEN 1 ELSE 0 END ), 0 ) AS dfh,
IFNULL(SUM( CASE WHEN preparation_money_state = '备货完成' THEN 1 ELSE 0 END ), 0 ) AS ysh, IFNULL(SUM( CASE WHEN preparation_money_state = '备货完成' THEN 1 ELSE 0 END ), 0 ) AS ysh,
IFNULL(SUM( CASE WHEN preparation_money_state = '备货完成' THEN ei.real_scale ELSE 0 END ), 0 ) AS yshrl,
IFNULL(SUM( CASE WHEN preparation_money_state = '待收货' THEN 1 ELSE 0 END ), 0 ) AS yfh IFNULL(SUM( CASE WHEN preparation_money_state = '待收货' THEN 1 ELSE 0 END ), 0 ) AS yfh
FROM FROM
hygf_peasant_household hygf_peasant_household
LEFT JOIN hygf_work_order_power_station wops ON wops.peasant_household_id = hygf_peasant_household.sequence_nbr
LEFT JOIN hygf_power_station_engineering_info ei ON ei.work_order_power_station_id = wops.sequence_nbr
WHERE WHERE
preparation_money_state IS NOT NULL preparation_money_state IS NOT NULL
<if test="developerCode != null and developerCode != ''"> <if test="developerCode != null and developerCode != ''">
......
...@@ -305,14 +305,14 @@ public class PeasantHouseholdController extends BaseController { ...@@ -305,14 +305,14 @@ public class PeasantHouseholdController extends BaseController {
return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.deleteUser(sequenceNbr, peasantHouseholdNo)); return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.deleteUser(sequenceNbr, peasantHouseholdNo));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY) // @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST",value = "更新详情信息", notes = "更新详情信息") // @ApiOperation(httpMethod = "POST",value = "更新详情信息", notes = "更新详情信息")
@PostMapping(value = "/saveHistory") // @PostMapping(value = "/saveHistory")
public ResponseModel updateDetail(@RequestBody PowerStationEngineeringInfoAllDto powerStationEngineeringInfoAllDto,@RequestParam(value = "operationType") String operationType) { // public ResponseModel updateDetail(@RequestBody PowerStationEngineeringInfoAllDto powerStationEngineeringInfoAllDto,@RequestParam(value = "operationType") String operationType) {
//
peasantHouseholdServiceImpl.saveHistoryPeasantHousehold(powerStationEngineeringInfoAllDto,operationType); // peasantHouseholdServiceImpl.saveHistoryPeasantHousehold(powerStationEngineeringInfoAllDto,operationType);
return ResponseHelper.buildResponse(null); // return ResponseHelper.buildResponse(null);
} // }
/** /**
......
...@@ -105,7 +105,7 @@ public class StatisticsHomepageServiceImpl { ...@@ -105,7 +105,7 @@ public class StatisticsHomepageServiceImpl {
List<String> surveKeys = new ArrayList<>(Arrays.asList("未通过","未勘察","已完成(法务审核)","进行中(审核)")); List<String> surveKeys = new ArrayList<>(Arrays.asList("未通过","未勘察","已完成(法务审核)","进行中(审核)"));
List<String> contractKeys = new ArrayList<>(Arrays.asList("双方已签署","农户已签署","未发起","已作废")); List<String> contractKeys = new ArrayList<>(Arrays.asList("双方已签署","农户已签署","未签署","已作废"));
List<String> workOrder = new ArrayList<>(Arrays.asList("派工发料","未通过","施工资料已上传","完工登记","完工自审","审核中","已完成","整改待审核" ,"待整改")); List<String> workOrder = new ArrayList<>(Arrays.asList("派工发料","未通过","施工资料已上传","完工登记","完工自审","审核中","已完成","整改待审核" ,"待整改"));
List<String> preparationMoneyKeys = new ArrayList<>(Arrays.asList("待发货","已收货","已发货")); List<String> preparationMoneyKeys = new ArrayList<>(Arrays.asList("待发货","已收货","已发货"));
List<String> desionKeys = new ArrayList<>(Arrays.asList("施工图已上传","典设图已上传")); List<String> desionKeys = new ArrayList<>(Arrays.asList("施工图已上传","典设图已上传"));
...@@ -358,13 +358,13 @@ public class StatisticsHomepageServiceImpl { ...@@ -358,13 +358,13 @@ public class StatisticsHomepageServiceImpl {
//判断是不是区域公司存在还款计划 若不存在则给0 //判断是不是区域公司存在还款计划 若不存在则给0
for (Map<String, Object> stringObjectMap : rent) { for (Map<String, Object> stringObjectMap : rent) {
if (stringObjectMap.get("regionalCompaniesCode").equals(map.get("regionalCompaniesCode"))){ if (stringObjectMap.get("regionalCompaniesCode").equals(map.get("regionalCompaniesCode"))){
Cell cell3 = firstSheet.getRow(startNum).createCell(40); Cell cell3 = firstSheet.getRow(startNum).createCell(41);
cell3.setCellValue(stringObjectMap.get("yhk").toString()); cell3.setCellValue(stringObjectMap.get("yhk").toString());
applyBorder(cell3); applyBorder(cell3);
Cell cell1 = firstSheet.getRow(startNum).createCell(41); Cell cell1 = firstSheet.getRow(startNum).createCell(42);
cell1.setCellValue(stringObjectMap.get("jnwhk").toString()); cell1.setCellValue(stringObjectMap.get("jnwhk").toString());
applyBorder(cell1); applyBorder(cell1);
Cell cell2 = firstSheet.getRow(startNum).createCell(42); Cell cell2 = firstSheet.getRow(startNum).createCell(43);
cell2.setCellValue(stringObjectMap.get("sywhk").toString()); cell2.setCellValue(stringObjectMap.get("sywhk").toString());
applyBorder(cell2); applyBorder(cell2);
...@@ -373,23 +373,23 @@ public class StatisticsHomepageServiceImpl { ...@@ -373,23 +373,23 @@ public class StatisticsHomepageServiceImpl {
} }
if (flag){ if (flag){
Cell cell3 = firstSheet.getRow(startNum).createCell(40); Cell cell3 = firstSheet.getRow(startNum).createCell(41);
cell3.setCellValue(0); cell3.setCellValue(0);
applyBorder(cell3); applyBorder(cell3);
Cell cell1 = firstSheet.getRow(startNum).createCell(41); Cell cell1 = firstSheet.getRow(startNum).createCell(42);
cell1.setCellValue(0); cell1.setCellValue(0);
applyBorder(cell1); applyBorder(cell1);
Cell cell2 = firstSheet.getRow(startNum).createCell(42); Cell cell2 = firstSheet.getRow(startNum).createCell(43);
cell2.setCellValue(0); cell2.setCellValue(0);
applyBorder(cell2); applyBorder(cell2);
} }
//合并表格及设置样式 //合并表格及设置样式
CellRangeAddress cellRangeAddress2 = new CellRangeAddress(startNum, endNum, 1, 1); CellRangeAddress cellRangeAddress2 = new CellRangeAddress(startNum, endNum, 1, 1);
CellRangeAddress cellRangeAddress = new CellRangeAddress(startNum, endNum, 2, 2); CellRangeAddress cellRangeAddress = new CellRangeAddress(startNum, endNum, 2, 2);
CellRangeAddress cellRangeAddress1 = new CellRangeAddress(startNum, endNum, 35, 35); CellRangeAddress cellRangeAddress1 = new CellRangeAddress(startNum, endNum, 36, 36);
CellRangeAddress cellRangeAddress3 = new CellRangeAddress(startNum, endNum, 40, 40); CellRangeAddress cellRangeAddress3 = new CellRangeAddress(startNum, endNum, 41, 41);
CellRangeAddress cellRangeAddress4 = new CellRangeAddress(startNum, endNum, 41, 41); CellRangeAddress cellRangeAddress4 = new CellRangeAddress(startNum, endNum, 42, 42);
CellRangeAddress cellRangeAddress5 = new CellRangeAddress(startNum, endNum, 42, 42); CellRangeAddress cellRangeAddress5 = new CellRangeAddress(startNum, endNum, 43, 43);
firstSheet.addMergedRegion(cellRangeAddress); firstSheet.addMergedRegion(cellRangeAddress);
firstSheet.addMergedRegion(cellRangeAddress1); firstSheet.addMergedRegion(cellRangeAddress1);
firstSheet.addMergedRegion(cellRangeAddress2); firstSheet.addMergedRegion(cellRangeAddress2);
...@@ -419,13 +419,13 @@ public class StatisticsHomepageServiceImpl { ...@@ -419,13 +419,13 @@ public class StatisticsHomepageServiceImpl {
//判断是不是区域公司存在还款计划 若不存在则给0 //判断是不是区域公司存在还款计划 若不存在则给0
for (Map<String, Object> stringObjectMap : rent) { for (Map<String, Object> stringObjectMap : rent) {
if (stringObjectMap.get("regionalCompaniesCode").equals(map.get("regionalCompaniesCode"))){ if (stringObjectMap.get("regionalCompaniesCode").equals(map.get("regionalCompaniesCode"))){
Cell cell3 = firstSheet.getRow(startNum).createCell(40); Cell cell3 = firstSheet.getRow(startNum).createCell(41);
cell3.setCellValue(stringObjectMap.get("yhk").toString()); cell3.setCellValue(stringObjectMap.get("yhk").toString());
applyBorder(cell3); applyBorder(cell3);
Cell cell1 = firstSheet.getRow(startNum).createCell(41); Cell cell1 = firstSheet.getRow(startNum).createCell(42);
cell1.setCellValue(stringObjectMap.get("jnwhk").toString()); cell1.setCellValue(stringObjectMap.get("jnwhk").toString());
applyBorder(cell1); applyBorder(cell1);
Cell cell2 = firstSheet.getRow(startNum).createCell(42); Cell cell2 = firstSheet.getRow(startNum).createCell(43);
cell2.setCellValue(stringObjectMap.get("sywhk").toString()); cell2.setCellValue(stringObjectMap.get("sywhk").toString());
applyBorder(cell2); applyBorder(cell2);
flag = false; flag = false;
...@@ -433,13 +433,13 @@ public class StatisticsHomepageServiceImpl { ...@@ -433,13 +433,13 @@ public class StatisticsHomepageServiceImpl {
} }
if (flag){ if (flag){
Cell cell3 = firstSheet.getRow(startNum).createCell(40); Cell cell3 = firstSheet.getRow(startNum).createCell(41);
cell3.setCellValue(0); cell3.setCellValue(0);
applyBorder(cell3); applyBorder(cell3);
Cell cell1 = firstSheet.getRow(startNum).createCell(41); Cell cell1 = firstSheet.getRow(startNum).createCell(42);
cell1.setCellValue(0); cell1.setCellValue(0);
applyBorder(cell1); applyBorder(cell1);
Cell cell2 = firstSheet.getRow(startNum).createCell(42); Cell cell2 = firstSheet.getRow(startNum).createCell(43);
cell2.setCellValue(0); cell2.setCellValue(0);
applyBorder(cell2); applyBorder(cell2);
} }
...@@ -469,13 +469,13 @@ public class StatisticsHomepageServiceImpl { ...@@ -469,13 +469,13 @@ public class StatisticsHomepageServiceImpl {
Cell cell2 = row.createCell(2); Cell cell2 = row.createCell(2);
cell2.setCellValue(map.get("regionalCompaniesName").toString()); cell2.setCellValue(map.get("regionalCompaniesName").toString());
applyBorder(cell2); applyBorder(cell2);
Cell cell40= row.createCell(40); Cell cell40= row.createCell(41);
cell40.setCellValue(map.get("yhk").toString()); cell40.setCellValue(map.get("yhk").toString());
applyBorder(cell40); applyBorder(cell40);
Cell cell41 = row.createCell(41); Cell cell41 = row.createCell(42);
cell41.setCellValue(map.get("jnwhk").toString()); cell41.setCellValue(map.get("jnwhk").toString());
applyBorder(cell41); applyBorder(cell41);
Cell cell42 = row.createCell(42); Cell cell42 = row.createCell(43);
cell42.setCellValue(map.get("sywhk").toString()); cell42.setCellValue(map.get("sywhk").toString());
applyBorder(cell42); applyBorder(cell42);
...@@ -559,15 +559,22 @@ public class StatisticsHomepageServiceImpl { ...@@ -559,15 +559,22 @@ public class StatisticsHomepageServiceImpl {
case "survey": case "survey":
Map<String, Object> surveyMaps = statisticsHomepageMapper.statisticsPowerStation(developerCode, regionalCompaniesCode, province, city, district); Map<String, Object> surveyMaps = statisticsHomepageMapper.statisticsPowerStation(developerCode, regionalCompaniesCode, province, city, district);
for (String key : surveyMaps.keySet()) { for (String key : surveyMaps.keySet()) {
if (!key.contains("rl")){
resultMap.put(key,Arrays.asList(surveyMaps.get(key),"0")); resultMap.put(key,Arrays.asList(surveyMaps.get(key),"0"));
} }
}
resultMap.put("kcywc",Arrays.asList(surveyMaps.get("kcywc"),new BigDecimal((double)surveyMaps.get("kcywcrl")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
resultMap.put("sfyqs",Arrays.asList(surveyMaps.get("sfyqs"),new BigDecimal((double)surveyMaps.get("sfyqsrl")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
break; break;
case "preparationMoney": case "preparationMoney":
Map<String, Object> preparationMoney = statisticsHomepageMapper.statisticsPreparationMoney(developerCode, regionalCompaniesCode, province, city, district); Map<String, Object> preparationMoney = statisticsHomepageMapper.statisticsPreparationMoney(developerCode, regionalCompaniesCode, province, city, district);
for (String key : preparationMoney.keySet()) { for (String key : preparationMoney.keySet()) {
if (!key.contains("rl")){
resultMap.put(key,Arrays.asList(preparationMoney.get(key),"0")); resultMap.put(key,Arrays.asList(preparationMoney.get(key),"0"));
} }
}
resultMap.put("ysh",Arrays.asList(preparationMoney.get("ysh"),new BigDecimal((double)preparationMoney.get("yshrl")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
break; break;
case "workOrder": case "workOrder":
List<Map<String, Object>> workOrderMaps = statisticsHomepageMapper.workOrderTotal(developerCode, regionalCompaniesCode, province, city, district); List<Map<String, Object>> workOrderMaps = statisticsHomepageMapper.workOrderTotal(developerCode, regionalCompaniesCode, province, city, district);
......
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