WzHouseContracController.java 47 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995
  1. package com.example.controller;
  2. import com.example.config.annotation.IgnoreAuth;
  3. import com.example.entity.OtnAreaEntity;
  4. import com.example.entity.WzHouseArrearsManageEntity;
  5. import com.example.entity.WzHouseContracEntity;
  6. import com.example.entity.WzHouseContractOutEntity;
  7. import com.example.entity.WzHouseCustomerEntity;
  8. import com.example.entity.WzHouseMarketEntity;
  9. import com.example.service.WzHouseArrearsManageService;
  10. import com.example.service.WzHouseContracService;
  11. import com.example.service.WzHouseContractOutService;
  12. import com.example.service.WzHouseCustomerService;
  13. import com.example.service.WzHouseMarketService;
  14. import com.example.service.WzOtnAreaService;
  15. import com.example.utils.PageMap;
  16. import com.example.utils.PageUtils;
  17. import com.example.utils.Query;
  18. import com.example.utils.R;
  19. import com.example.utils.excel.ExcelExport;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.web.bind.annotation.GetMapping;
  22. import org.springframework.web.bind.annotation.RequestBody;
  23. import org.springframework.web.bind.annotation.RequestMapping;
  24. import org.springframework.web.bind.annotation.RestController;
  25. import javax.servlet.http.HttpServletResponse;
  26. import java.text.DateFormat;
  27. import java.text.DecimalFormat;
  28. import java.text.SimpleDateFormat;
  29. import java.util.ArrayList;
  30. import java.util.Date;
  31. import java.util.HashMap;
  32. import java.util.List;
  33. import java.util.Map;
  34. /**
  35. * 房屋出租(合同管理)
  36. */
  37. @RestController
  38. @RequestMapping("/house-car/house/dist/api/WzHouseContrac")
  39. public class WzHouseContracController {
  40. @Autowired
  41. private WzHouseContracService wzHouseContracService;
  42. @Autowired
  43. private WzHouseCustomerService wzHouseCustomerService;
  44. @Autowired
  45. private WzHouseArrearsManageService wzHouseArrearsManageService;
  46. @Autowired
  47. private WzHouseMarketService wzHouseMarketService;
  48. @Autowired
  49. private WzHouseContractOutService wzHouseContractOutService;
  50. @Autowired
  51. private WzOtnAreaService otnAreaService;
  52. @RequestMapping("/list")
  53. @IgnoreAuth
  54. public R list(@RequestBody PageMap pageMap) {
  55. //查询列表数据
  56. Query query = new Query(pageMap);
  57. List<WzHouseContracEntity> list = wzHouseContracService.queryList(pageMap.getMap());
  58. int total = wzHouseContracService.queryTotal(query);
  59. PageUtils pageUtil = new PageUtils(list, total, query.getLimit(), query.getPage());
  60. return R.ok().put("page", pageUtil);
  61. }
  62. @RequestMapping("/echartList")
  63. @IgnoreAuth
  64. public R echartList(@RequestBody PageMap pageMap) {
  65. //查询列表数据
  66. Query query = new Query(pageMap);
  67. List<WzHouseContracEntity> wzHouseContracEntityList = wzHouseContracService.queryList(pageMap.getMap());
  68. Map<String,List<WzHouseContracEntity>> cityMap=new HashMap<>();
  69. for (WzHouseContracEntity leaveUseVo : wzHouseContracEntityList) {
  70. List<WzHouseContracEntity> list;
  71. if(cityMap.get(leaveUseVo.getCity())!=null){
  72. list=cityMap.get(leaveUseVo.getCity());
  73. list.add(leaveUseVo);
  74. }else{
  75. list=new ArrayList<>();
  76. list.add(leaveUseVo);
  77. }
  78. cityMap.put(leaveUseVo.getCity(),list);
  79. }
  80. List<WzHouseContracEntity> resultList=new ArrayList<>();
  81. List<WzHouseContracEntity> cityList=new ArrayList<>();
  82. double allContractQuantity=0l;
  83. double allNoTaxContractAmount=0l;
  84. double allRentArea=0l;
  85. double allUnitPricePerSquareMeter=0l;
  86. int cityNum=0;
  87. for(Map.Entry<String,List<WzHouseContracEntity>> entry:cityMap.entrySet()){
  88. List<WzHouseContracEntity> list=entry.getValue();
  89. if (list.get(0).getCounty().equals("全省")) {
  90. continue;
  91. }
  92. //县的Map集合
  93. Map<String, List<WzHouseContracEntity>> countyMap = new HashMap<>();
  94. for (WzHouseContracEntity leaveUseVo : list) {
  95. if (leaveUseVo.getCounty() == null || leaveUseVo.getCounty().equals("")) {
  96. continue;
  97. }
  98. if (countyMap.get(leaveUseVo.getCounty()) != null) {
  99. list = countyMap.get(leaveUseVo.getCounty());
  100. list.add(leaveUseVo);
  101. } else {
  102. list = new ArrayList<>();
  103. list.add(leaveUseVo);
  104. }
  105. countyMap.put(leaveUseVo.getCounty(), list);
  106. }
  107. double cityContractQuantity=0l;
  108. double cityNoTaxContractAmount=0l;
  109. double cityRentArea=0l;
  110. double cityUnitPricePerSquareMeter=0l;
  111. List<WzHouseContracEntity> countyList=new ArrayList<>();
  112. for (Map.Entry<String, List<WzHouseContracEntity>> countyEntry : countyMap.entrySet()) {
  113. double contractQuantity=0l;
  114. double noTaxContractAmount=0l;
  115. double rentArea=0l;
  116. double unitPricePerSquareMeter=0l;
  117. for (WzHouseContracEntity leaveUseVo : countyEntry.getValue()) {
  118. contractQuantity+=leaveUseVo.getContractQuantity();
  119. noTaxContractAmount+=leaveUseVo.getNoTaxContractAmount();
  120. rentArea+=leaveUseVo.getRentArea();
  121. unitPricePerSquareMeter+=leaveUseVo.getUnitPricePerSquareMeter();
  122. cityContractQuantity+=leaveUseVo.getContractQuantity();
  123. cityNoTaxContractAmount+=leaveUseVo.getNoTaxContractAmount();
  124. cityRentArea+=leaveUseVo.getRentArea();
  125. cityUnitPricePerSquareMeter+=leaveUseVo.getUnitPricePerSquareMeter();
  126. allContractQuantity+=leaveUseVo.getContractQuantity();
  127. allNoTaxContractAmount+=leaveUseVo.getNoTaxContractAmount();
  128. allRentArea+=leaveUseVo.getRentArea();
  129. allUnitPricePerSquareMeter+=leaveUseVo.getUnitPricePerSquareMeter();
  130. }
  131. WzHouseContracEntity wzHouseInCustomerEntity = new WzHouseContracEntity();
  132. wzHouseInCustomerEntity.setContractQuantity(formatDouble(contractQuantity));
  133. wzHouseInCustomerEntity.setCity(countyEntry.getKey());
  134. wzHouseInCustomerEntity.setNoTaxContractAmount(formatDouble(noTaxContractAmount));
  135. wzHouseInCustomerEntity.setRentArea(formatDouble(rentArea));
  136. wzHouseInCustomerEntity.setUnitPricePerSquareMeter(formatDouble(unitPricePerSquareMeter));
  137. countyList.add(wzHouseInCustomerEntity);
  138. }
  139. List<WzHouseContracEntity> orderCountyList=new ArrayList<>();
  140. try{
  141. //对countList 进行排序
  142. String city=list.get(0).getCity();
  143. if(city.contains("市")){
  144. city=city.split("市")[0];
  145. }
  146. OtnAreaEntity area=otnAreaService.queryObject(city);
  147. List<OtnAreaEntity> countyAreaList=otnAreaService.getCityOption(area.getId());
  148. int i=0;
  149. for (OtnAreaEntity otnAreaEntity : countyAreaList) {
  150. for (WzHouseContracEntity wzCity : countyList) {
  151. if(wzCity.getCity().contains(otnAreaEntity.getName())){
  152. i++;
  153. wzCity.setFlag(i%2==0);
  154. orderCountyList.add(wzCity);
  155. }
  156. }
  157. }
  158. }catch (Exception e){
  159. orderCountyList=countyList;
  160. e.printStackTrace();
  161. }
  162. WzHouseContracEntity wzHouseInCustomerEntity = new WzHouseContracEntity();
  163. wzHouseInCustomerEntity.setCity(entry.getKey());
  164. wzHouseInCustomerEntity.setContractQuantity(formatDouble(cityContractQuantity));
  165. wzHouseInCustomerEntity.setNoTaxContractAmount(formatDouble(cityNoTaxContractAmount));
  166. wzHouseInCustomerEntity.setRentArea(formatDouble(cityRentArea));
  167. double num=cityUnitPricePerSquareMeter/countyMap.size();
  168. cityNum+=countyMap.size();
  169. wzHouseInCustomerEntity.setUnitPricePerSquareMeter(formatDouble(num));
  170. wzHouseInCustomerEntity.setChildren(orderCountyList);
  171. cityList.add(wzHouseInCustomerEntity);
  172. }
  173. //对cityList 进行排序
  174. List<OtnAreaEntity> areaList=otnAreaService.getCityOption(0l);
  175. List<WzHouseContracEntity> orderList=new ArrayList<>();
  176. int i=0;
  177. for (OtnAreaEntity otnAreaEntity : areaList) {
  178. for (WzHouseContracEntity wzCity : cityList) {
  179. if(wzCity.getCity().contains(otnAreaEntity.getName())){
  180. wzCity.setFlag(i%2==0);
  181. orderList.add(wzCity);
  182. i++;
  183. }
  184. }
  185. }
  186. WzHouseContracEntity province=new WzHouseContracEntity();
  187. province.setCity("全省");
  188. province.setContractQuantity(formatDouble(allContractQuantity));
  189. province.setNoTaxContractAmount(formatDouble(allNoTaxContractAmount));
  190. province.setRentArea(formatDouble(allRentArea));
  191. if(cityList.size()!=0){
  192. province.setUnitPricePerSquareMeter(formatDouble(allUnitPricePerSquareMeter/cityNum ));
  193. }
  194. province.setChildren(orderList);
  195. if(orderList.size()>0){
  196. resultList.add(province);
  197. }
  198. int total = wzHouseContracService.queryTotal(query);
  199. PageUtils pageUtil = new PageUtils(resultList, total, query.getLimit(), query.getPage());
  200. return R.ok().put("page", pageUtil);
  201. }
  202. /**
  203. * 清单excel
  204. */
  205. @GetMapping("/excel")
  206. @IgnoreAuth
  207. public void excel(String name,String buildingNameAlias,String city,String county, HttpServletResponse response) {
  208. Map<String,Object> map1=new HashMap<>();
  209. if(buildingNameAlias!=null){
  210. map1.put("buildingNameAlias",buildingNameAlias);
  211. }
  212. if(city!=null){
  213. map1.put("city",city);
  214. }
  215. if(county!=null){
  216. map1.put("county",county);
  217. }
  218. DateFormat df = new SimpleDateFormat("yyyyMMdd");
  219. ExcelExport ee1;
  220. //判定是闲置管理还是详情
  221. if(name.contains("合同管理")){
  222. ee1 = new ExcelExport("房屋对外出租_合同管理" + df.format(new Date()));
  223. responseTab1(df,ee1,map1);
  224. ee1.export(response);
  225. }else if(name.contains("客户管理")){
  226. ee1 = new ExcelExport("房屋对外出租_客户管理" + df.format(new Date()));
  227. responseTab2(df,ee1,map1);
  228. ee1.export(response);
  229. }else if(name.contains("出租欠费管理")){
  230. ee1 = new ExcelExport("房屋对外出租_出租欠费管理" + df.format(new Date()));
  231. responseTab3(df,ee1,map1);
  232. ee1.export(response);
  233. }else if(name.contains("市场调查")){
  234. ee1 = new ExcelExport("房屋对外出租_市场调查" + df.format(new Date()));
  235. responseTab4(df,ee1,map1);
  236. ee1.export(response);
  237. }else if(name.contains("出租合同详单")){
  238. ee1 = new ExcelExport("房屋对外出租_出租合同详情" + df.format(new Date()));
  239. responseTab5(df,ee1,map1);
  240. ee1.export(response);
  241. }
  242. }
  243. public void responseTab1(DateFormat df, ExcelExport ee1, Map<String, Object> map1){
  244. List<WzHouseContracEntity> wzHouseContracEntityList = wzHouseContracService.queryList(map1);
  245. Map<String,List<WzHouseContracEntity>> cityMap=new HashMap<>();
  246. for (WzHouseContracEntity leaveUseVo : wzHouseContracEntityList) {
  247. List<WzHouseContracEntity> list;
  248. if(cityMap.get(leaveUseVo.getCity())!=null){
  249. list=cityMap.get(leaveUseVo.getCity());
  250. list.add(leaveUseVo);
  251. }else{
  252. list=new ArrayList<>();
  253. list.add(leaveUseVo);
  254. }
  255. cityMap.put(leaveUseVo.getCity(),list);
  256. }
  257. List<WzHouseContracEntity> resultList=new ArrayList<>();
  258. List<WzHouseContracEntity> cityList=new ArrayList<>();
  259. double allContractQuantity=0l;
  260. double allNoTaxContractAmount=0l;
  261. double allRentArea=0l;
  262. double allUnitPricePerSquareMeter=0l;
  263. int cityNum=0;
  264. for(Map.Entry<String,List<WzHouseContracEntity>> entry:cityMap.entrySet()){
  265. List<WzHouseContracEntity> list=entry.getValue();
  266. if (list.get(0).getCounty().equals("全省")) {
  267. continue;
  268. }
  269. //县的Map集合
  270. Map<String, List<WzHouseContracEntity>> countyMap = new HashMap<>();
  271. for (WzHouseContracEntity leaveUseVo : list) {
  272. if (leaveUseVo.getCounty() == null || leaveUseVo.getCounty().equals("")) {
  273. continue;
  274. }
  275. if (countyMap.get(leaveUseVo.getCounty()) != null) {
  276. list = countyMap.get(leaveUseVo.getCounty());
  277. list.add(leaveUseVo);
  278. } else {
  279. list = new ArrayList<>();
  280. list.add(leaveUseVo);
  281. }
  282. countyMap.put(leaveUseVo.getCounty(), list);
  283. }
  284. double cityContractQuantity=0l;
  285. double cityNoTaxContractAmount=0l;
  286. double cityRentArea=0l;
  287. double cityUnitPricePerSquareMeter=0l;
  288. List<WzHouseContracEntity> countyList=new ArrayList<>();
  289. for (Map.Entry<String, List<WzHouseContracEntity>> countyEntry : countyMap.entrySet()) {
  290. double contractQuantity=0l;
  291. double noTaxContractAmount=0l;
  292. double rentArea=0l;
  293. double unitPricePerSquareMeter=0l;
  294. for (WzHouseContracEntity leaveUseVo : countyEntry.getValue()) {
  295. contractQuantity+=leaveUseVo.getContractQuantity();
  296. noTaxContractAmount+=leaveUseVo.getNoTaxContractAmount();
  297. rentArea+=leaveUseVo.getRentArea();
  298. unitPricePerSquareMeter+=leaveUseVo.getUnitPricePerSquareMeter();
  299. cityContractQuantity+=leaveUseVo.getContractQuantity();
  300. cityNoTaxContractAmount+=leaveUseVo.getNoTaxContractAmount();
  301. cityRentArea+=leaveUseVo.getRentArea();
  302. cityUnitPricePerSquareMeter+=leaveUseVo.getUnitPricePerSquareMeter();
  303. allContractQuantity+=leaveUseVo.getContractQuantity();
  304. allNoTaxContractAmount+=leaveUseVo.getNoTaxContractAmount();
  305. allRentArea+=leaveUseVo.getRentArea();
  306. allUnitPricePerSquareMeter+=leaveUseVo.getUnitPricePerSquareMeter();
  307. }
  308. WzHouseContracEntity wzHouseInCustomerEntity = new WzHouseContracEntity();
  309. wzHouseInCustomerEntity.setContractQuantity(formatDouble(contractQuantity));
  310. wzHouseInCustomerEntity.setCity(countyEntry.getKey());
  311. wzHouseInCustomerEntity.setNoTaxContractAmount(formatDouble(noTaxContractAmount));
  312. wzHouseInCustomerEntity.setRentArea(formatDouble(rentArea));
  313. wzHouseInCustomerEntity.setUnitPricePerSquareMeter(formatDouble(unitPricePerSquareMeter));
  314. countyList.add(wzHouseInCustomerEntity);
  315. }
  316. List<WzHouseContracEntity> orderCountyList=new ArrayList<>();
  317. try{
  318. //对countList 进行排序
  319. String city=list.get(0).getCity();
  320. if(city.contains("市")){
  321. city=city.split("市")[0];
  322. }
  323. OtnAreaEntity area=otnAreaService.queryObject(city);
  324. List<OtnAreaEntity> countyAreaList=otnAreaService.getCityOption(area.getId());
  325. int i=0;
  326. for (OtnAreaEntity otnAreaEntity : countyAreaList) {
  327. for (WzHouseContracEntity wzCity : countyList) {
  328. if(wzCity.getCity().contains(otnAreaEntity.getName())){
  329. i++;
  330. wzCity.setFlag(i%2==0);
  331. orderCountyList.add(wzCity);
  332. }
  333. }
  334. }
  335. }catch (Exception e){
  336. orderCountyList=countyList;
  337. e.printStackTrace();
  338. }
  339. WzHouseContracEntity wzHouseInCustomerEntity = new WzHouseContracEntity();
  340. wzHouseInCustomerEntity.setCity(entry.getKey());
  341. wzHouseInCustomerEntity.setContractQuantity(formatDouble(cityContractQuantity));
  342. wzHouseInCustomerEntity.setNoTaxContractAmount(formatDouble(cityNoTaxContractAmount));
  343. wzHouseInCustomerEntity.setRentArea(formatDouble(cityRentArea));
  344. double num=cityUnitPricePerSquareMeter/countyMap.size();
  345. cityNum+=countyMap.size();
  346. wzHouseInCustomerEntity.setUnitPricePerSquareMeter(formatDouble(num));
  347. wzHouseInCustomerEntity.setChildren(orderCountyList);
  348. cityList.add(wzHouseInCustomerEntity);
  349. }
  350. //对cityList 进行排序
  351. List<OtnAreaEntity> areaList=otnAreaService.getCityOption(0l);
  352. List<WzHouseContracEntity> orderList=new ArrayList<>();
  353. for (OtnAreaEntity otnAreaEntity : areaList) {
  354. for (WzHouseContracEntity wzCity : cityList) {
  355. if(wzCity.getCity().contains(otnAreaEntity.getName())){
  356. orderList.add(wzCity);
  357. }
  358. }
  359. }
  360. WzHouseContracEntity province=new WzHouseContracEntity();
  361. province.setCity("全省");
  362. province.setContractQuantity(formatDouble(allContractQuantity));
  363. province.setNoTaxContractAmount(formatDouble(allNoTaxContractAmount));
  364. province.setRentArea(formatDouble(allRentArea));
  365. if(cityList.size()!=0){
  366. province.setUnitPricePerSquareMeter(formatDouble(allUnitPricePerSquareMeter/cityNum ));
  367. }
  368. province.setChildren(orderList);
  369. resultList.add(province);
  370. List<Object> colList=new ArrayList();;
  371. List<Object[]> allList = new ArrayList();
  372. for (int i = 0; i < resultList.size(); i++) {
  373. if(resultList.get(i).getCity().contains("省")){
  374. colList = new ArrayList();
  375. colList.add(resultList.get(i).getCity());
  376. colList.add("");
  377. colList.add("");
  378. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getContractQuantity(),true));
  379. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getNoTaxContractAmount(),true));
  380. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getRentArea(),true));
  381. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getUnitPricePerSquareMeter(),true));
  382. allList.add(colList.toArray());
  383. //处理城市的
  384. List<WzHouseContracEntity> cityList1=resultList.get(i).getChildren();
  385. for (WzHouseContracEntity floorNoUserVo : cityList1) {
  386. colList = new ArrayList();
  387. colList.add("");
  388. colList.add(floorNoUserVo.getCity());
  389. colList.add("");
  390. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getContractQuantity(),true));
  391. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getNoTaxContractAmount(),true));
  392. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getRentArea(),true));
  393. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getUnitPricePerSquareMeter(),true));
  394. allList.add(colList.toArray());
  395. //处理县城的
  396. List<WzHouseContracEntity> countyList1 = floorNoUserVo.getChildren();
  397. for (WzHouseContracEntity noUserVo : countyList1) {
  398. colList = new ArrayList();
  399. colList.add("");
  400. colList.add("");
  401. colList.add(noUserVo.getCity());
  402. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getContractQuantity(),true));
  403. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getNoTaxContractAmount(),true));
  404. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getRentArea(),true));
  405. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getUnitPricePerSquareMeter(),true));
  406. allList.add(colList.toArray());
  407. }
  408. }
  409. }
  410. }
  411. String[] header = new String[]{
  412. "资产所属单位(一级)",
  413. "资产所属单位(二级)",
  414. "资产所属单位(三级)",
  415. "合同数量",
  416. "不含税合同额(元)",
  417. "出租面积(平米)",
  418. "每平米单价(元)"
  419. };
  420. ee1.addSheetByArray(df.format(new Date()) + "清单", allList, header);
  421. }
  422. public void responseTab2(DateFormat df, ExcelExport ee1, Map<String, Object> map1){
  423. //查询列表数据
  424. Query query = new Query(map1);
  425. List<WzHouseCustomerEntity> wzHouseContracEntityList = wzHouseCustomerService.queryList(query);
  426. WzHouseCustomerEntity province=new WzHouseCustomerEntity();
  427. province.setCity("全省");
  428. Map<String,List<WzHouseCustomerEntity>> map=new HashMap<>();
  429. for (WzHouseCustomerEntity leaveUseVo : wzHouseContracEntityList) {
  430. List<WzHouseCustomerEntity> list;
  431. if(map.get(leaveUseVo.getCity())!=null){
  432. list=map.get(leaveUseVo.getCity());
  433. list.add(leaveUseVo);
  434. }else{
  435. list=new ArrayList<>();
  436. list.add(leaveUseVo);
  437. }
  438. map.put(leaveUseVo.getCity(),list);
  439. }
  440. List<WzHouseCustomerEntity> resultList=new ArrayList<>();
  441. List<WzHouseCustomerEntity> cityList=new ArrayList<>();
  442. Integer allPerson=0;
  443. Integer allPersonPrivate=0;
  444. Integer allStateOwnedEnterprises=0;
  445. Integer allGovernment=0;
  446. Integer allAllNum=0;
  447. for(Map.Entry<String,List<WzHouseCustomerEntity>> entry:map.entrySet()){
  448. List<WzHouseCustomerEntity> list=entry.getValue();
  449. if(list.get(0).getCity().equals("全省")){
  450. continue;
  451. }
  452. Integer person=0;
  453. Integer personPrivate=0;
  454. Integer stateOwnedEnterprises=0;
  455. Integer government=0;
  456. Integer allNum=0;
  457. for (WzHouseCustomerEntity leaveUseVo : list) {
  458. if(leaveUseVo.getPerson()!=null){
  459. person+=leaveUseVo.getPerson();
  460. allPerson+=leaveUseVo.getPerson();
  461. }
  462. if(leaveUseVo.getPersonPrivate()!=null){
  463. personPrivate+=leaveUseVo.getPersonPrivate();
  464. allPersonPrivate+=leaveUseVo.getPersonPrivate();
  465. }
  466. if(leaveUseVo.getStateOwnedEnterprises()!=null){
  467. stateOwnedEnterprises+=leaveUseVo.getStateOwnedEnterprises();
  468. allStateOwnedEnterprises+=leaveUseVo.getStateOwnedEnterprises();
  469. }
  470. if(leaveUseVo.getGovernment()!=null){
  471. government+=leaveUseVo.getGovernment();
  472. allGovernment+=leaveUseVo.getGovernment();
  473. }
  474. allNum=person+personPrivate+stateOwnedEnterprises+government;
  475. allAllNum+=allNum;
  476. leaveUseVo.setAllNum(allNum);
  477. }
  478. cityList.add(list.get(0));
  479. }
  480. //对cityList 进行排序
  481. List<OtnAreaEntity> areaList=otnAreaService.getCityOption(0l);
  482. List<WzHouseCustomerEntity> orderList=new ArrayList<>();
  483. for (OtnAreaEntity otnAreaEntity : areaList) {
  484. for (WzHouseCustomerEntity wzCity : cityList) {
  485. if(wzCity.getCity().contains(otnAreaEntity.getName())){
  486. orderList.add(wzCity);
  487. }
  488. }
  489. }
  490. province.setPerson(allPerson);
  491. province.setPersonPrivate(allPersonPrivate);
  492. province.setStateOwnedEnterprises(allStateOwnedEnterprises);
  493. province.setGovernment(allGovernment);
  494. province.setChildren(orderList);
  495. province.setAllNum(allAllNum);
  496. resultList.add(province);
  497. List<Object> colList=new ArrayList();;
  498. List<Object[]> allList = new ArrayList();
  499. for (int i = 0; i < resultList.size(); i++) {
  500. if(resultList.get(i).getCity().contains("省")){
  501. colList = new ArrayList();
  502. colList.add(resultList.get(i).getCity());
  503. colList.add("");
  504. colList.add(resultList.get(i).getPerson());
  505. colList.add(resultList.get(i).getPersonPrivate());
  506. colList.add(resultList.get(i).getStateOwnedEnterprises());
  507. colList.add(resultList.get(i).getGovernment());
  508. colList.add(resultList.get(i).getAllNum());
  509. allList.add(colList.toArray());
  510. //处理城市的
  511. List<WzHouseCustomerEntity> cityList1=resultList.get(i).getChildren();
  512. for (WzHouseCustomerEntity floorNoUserVo : cityList1) {
  513. colList = new ArrayList();
  514. colList.add("");
  515. colList.add(floorNoUserVo.getCity());
  516. colList.add(floorNoUserVo.getPerson());
  517. colList.add(floorNoUserVo.getPersonPrivate());
  518. colList.add(floorNoUserVo.getStateOwnedEnterprises());
  519. colList.add(floorNoUserVo.getGovernment());
  520. colList.add(floorNoUserVo.getAllNum());
  521. allList.add(colList.toArray());
  522. }
  523. }
  524. }
  525. String[] header = new String[]{
  526. "一级单位",
  527. "二级单位",
  528. "个人",
  529. "私营",
  530. "国企",
  531. "政府",
  532. "总计"
  533. };
  534. ee1.addSheetByArray(df.format(new Date()) + "清单", allList, header);
  535. }
  536. public void responseTab3(DateFormat df, ExcelExport ee1, Map<String, Object> map1){
  537. //查询列表数据
  538. Query query = new Query(map1);
  539. List<WzHouseArrearsManageEntity> wzHouseContracEntityList = wzHouseArrearsManageService.queryList(query);
  540. WzHouseArrearsManageEntity province=new WzHouseArrearsManageEntity();
  541. province.setCity("全省");
  542. Map<String,List<WzHouseArrearsManageEntity>> map=new HashMap<>();
  543. for (WzHouseArrearsManageEntity leaveUseVo : wzHouseContracEntityList) {
  544. List<WzHouseArrearsManageEntity> list;
  545. if(map.get(leaveUseVo.getCity())!=null){
  546. list=map.get(leaveUseVo.getCity());
  547. list.add(leaveUseVo);
  548. }else{
  549. list=new ArrayList<>();
  550. list.add(leaveUseVo);
  551. }
  552. map.put(leaveUseVo.getCity(),list);
  553. }
  554. List<WzHouseArrearsManageEntity> resultList=new ArrayList<>();
  555. List<WzHouseArrearsManageEntity> cityList=new ArrayList<>();
  556. double allAccumulateArrears=0l;
  557. double allmoreThanThreeMonths=0l;
  558. double allmoreThanOneYears=0l;
  559. double allyearCumulativeNewAdditions=0l;
  560. double allyearCumulativeWithdrawal=0l;
  561. for(Map.Entry<String,List<WzHouseArrearsManageEntity>> entry:map.entrySet()){
  562. List<WzHouseArrearsManageEntity> list=entry.getValue();
  563. //县的Map集合
  564. Map<String,List<WzHouseArrearsManageEntity>> countyMap=new HashMap<>();
  565. for (WzHouseArrearsManageEntity leaveUseVo : list) {
  566. if (leaveUseVo.getCounty() == null || leaveUseVo.getCounty().equals("")) {
  567. continue;
  568. }
  569. if (countyMap.get(leaveUseVo.getCounty()) != null) {
  570. list = countyMap.get(leaveUseVo.getCounty());
  571. list.add(leaveUseVo);
  572. } else {
  573. list = new ArrayList<>();
  574. list.add(leaveUseVo);
  575. }
  576. countyMap.put(leaveUseVo.getCounty(), list);
  577. }
  578. double cityaccumulateArrears=0l;
  579. double citymoreThanThreeMonths=0l;
  580. double citymoreThanOneYears=0l;
  581. double cityyearCumulativeNewAdditions=0l;
  582. double cityyearCumulativeWithdrawal=0l;
  583. List<WzHouseArrearsManageEntity> countyList=new ArrayList<>();
  584. for (Map.Entry<String, List<WzHouseArrearsManageEntity>> countyEntry : countyMap.entrySet()) {
  585. double accumulateArrears=0l;
  586. double moreThanThreeMonths=0l;
  587. double moreThanOneYears=0l;
  588. double yearCumulativeNewAdditions=0l;
  589. double yearCumulativeWithdrawal=0l;
  590. for (WzHouseArrearsManageEntity leaveUseVo : countyEntry.getValue()) {
  591. if(leaveUseVo.getAccumulateArrears()!=null){
  592. accumulateArrears+=leaveUseVo.getAccumulateArrears();
  593. cityaccumulateArrears+=leaveUseVo.getAccumulateArrears();
  594. allAccumulateArrears+=leaveUseVo.getAccumulateArrears();
  595. }
  596. if(leaveUseVo.getMoreThanThreeMonths()!=null){
  597. moreThanThreeMonths+=leaveUseVo.getMoreThanThreeMonths();
  598. citymoreThanThreeMonths+=leaveUseVo.getMoreThanThreeMonths();
  599. allmoreThanThreeMonths+=leaveUseVo.getMoreThanThreeMonths();
  600. }
  601. if(leaveUseVo.getMoreThanOneYears()!=null){
  602. moreThanOneYears+=leaveUseVo.getMoreThanOneYears();
  603. citymoreThanOneYears+=leaveUseVo.getMoreThanOneYears();
  604. allmoreThanOneYears+=leaveUseVo.getMoreThanOneYears();
  605. }
  606. if(leaveUseVo.getYearCumulativeNewAdditions()!=null){
  607. yearCumulativeNewAdditions+=leaveUseVo.getYearCumulativeNewAdditions();
  608. cityyearCumulativeNewAdditions+=leaveUseVo.getYearCumulativeNewAdditions();
  609. allyearCumulativeNewAdditions+=leaveUseVo.getYearCumulativeNewAdditions();
  610. }
  611. if(leaveUseVo.getYearCumulativeWithdrawal()!=null){
  612. yearCumulativeWithdrawal+=leaveUseVo.getYearCumulativeWithdrawal();
  613. cityyearCumulativeWithdrawal+=leaveUseVo.getYearCumulativeWithdrawal();
  614. allyearCumulativeWithdrawal+=leaveUseVo.getYearCumulativeWithdrawal();
  615. }
  616. }
  617. WzHouseArrearsManageEntity countyEntity=new WzHouseArrearsManageEntity();
  618. countyEntity.setAccumulateArrears(formatDouble(accumulateArrears));
  619. countyEntity.setYearCumulativeNewAdditions(formatDouble(yearCumulativeNewAdditions));
  620. countyEntity.setYearCumulativeWithdrawal(formatDouble(yearCumulativeWithdrawal));
  621. countyEntity.setMoreThanOneYears(formatDouble(moreThanOneYears));
  622. countyEntity.setMoreThanThreeMonths(formatDouble(moreThanThreeMonths));
  623. countyEntity.setCity(countyEntry.getValue().get(0).getCounty());
  624. countyList.add(countyEntity);
  625. }
  626. List<WzHouseArrearsManageEntity> orderCountyList=new ArrayList<>();
  627. try{
  628. //对countList 进行排序
  629. String city=list.get(0).getCity();
  630. if(city.contains("市")){
  631. city=city.split("市")[0];
  632. }
  633. OtnAreaEntity area=otnAreaService.queryObject(city);
  634. List<OtnAreaEntity> countyAreaList=otnAreaService.getCityOption(area.getId());
  635. for (OtnAreaEntity otnAreaEntity : countyAreaList) {
  636. for (WzHouseArrearsManageEntity wzCity : countyList) {
  637. if(wzCity.getCity().contains(otnAreaEntity.getName())){
  638. orderCountyList.add(wzCity);
  639. }
  640. }
  641. }
  642. }catch (Exception e){
  643. orderCountyList=countyList;
  644. e.printStackTrace();
  645. }
  646. WzHouseArrearsManageEntity cityEntity=new WzHouseArrearsManageEntity();
  647. cityEntity.setAccumulateArrears(formatDouble(cityaccumulateArrears));
  648. cityEntity.setYearCumulativeNewAdditions(formatDouble(cityyearCumulativeNewAdditions));
  649. cityEntity.setYearCumulativeWithdrawal(formatDouble(cityyearCumulativeWithdrawal));
  650. cityEntity.setMoreThanOneYears(formatDouble(citymoreThanOneYears));
  651. cityEntity.setMoreThanThreeMonths(formatDouble(citymoreThanThreeMonths));
  652. cityEntity.setCity(list.get(0).getCity());
  653. cityEntity.setChildren(orderCountyList);
  654. cityList.add(cityEntity);
  655. }
  656. //对cityList 进行排序
  657. List<OtnAreaEntity> areaList=otnAreaService.getCityOption(0l);
  658. List<WzHouseArrearsManageEntity> orderList=new ArrayList<>();
  659. for (OtnAreaEntity otnAreaEntity : areaList) {
  660. for (WzHouseArrearsManageEntity wzCity : cityList) {
  661. if(wzCity.getCity().contains(otnAreaEntity.getName())){
  662. orderList.add(wzCity);
  663. }
  664. }
  665. }
  666. province.setAccumulateArrears(formatDouble(allAccumulateArrears));
  667. province.setMoreThanOneYears(formatDouble(allmoreThanOneYears));
  668. province.setMoreThanThreeMonths(formatDouble(allmoreThanThreeMonths));
  669. province.setYearCumulativeNewAdditions(formatDouble(allyearCumulativeNewAdditions));
  670. province.setYearCumulativeWithdrawal(formatDouble(allyearCumulativeWithdrawal));
  671. province.setChildren(orderList);
  672. resultList.add(province);
  673. List<Object> colList=new ArrayList();;
  674. List<Object[]> allList = new ArrayList();
  675. for (int i = 0; i < resultList.size(); i++) {
  676. if(resultList.get(i).getCity().contains("省")){
  677. colList = new ArrayList();
  678. colList.add(resultList.get(i).getCity());
  679. colList.add("");
  680. colList.add("");
  681. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getAccumulateArrears(),true));
  682. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getMoreThanThreeMonths(),true));
  683. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getMoreThanOneYears(),true));
  684. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getYearCumulativeNewAdditions(),true));
  685. colList.add(WzHouseMaintenaCostController.toThousands(resultList.get(i).getYearCumulativeWithdrawal(),true));
  686. allList.add(colList.toArray());
  687. //处理城市的
  688. List<WzHouseArrearsManageEntity> cityList1=resultList.get(i).getChildren();
  689. for (WzHouseArrearsManageEntity floorNoUserVo : cityList1) {
  690. colList = new ArrayList();
  691. colList.add("");
  692. colList.add(floorNoUserVo.getCity());
  693. colList.add("");
  694. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getAccumulateArrears(),true));
  695. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getMoreThanThreeMonths(),true));
  696. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getMoreThanOneYears(),true));
  697. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getYearCumulativeNewAdditions(),true));
  698. colList.add(WzHouseMaintenaCostController.toThousands(floorNoUserVo.getYearCumulativeWithdrawal(),true));
  699. allList.add(colList.toArray());
  700. //处理县城的
  701. List<WzHouseArrearsManageEntity> countyList1 = floorNoUserVo.getChildren();
  702. for (WzHouseArrearsManageEntity noUserVo : countyList1) {
  703. colList = new ArrayList();
  704. colList.add("");
  705. colList.add("");
  706. colList.add(noUserVo.getCity());
  707. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getAccumulateArrears(),true));
  708. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getMoreThanThreeMonths(),true));
  709. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getMoreThanOneYears(),true));
  710. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getYearCumulativeNewAdditions(),true));
  711. colList.add(WzHouseMaintenaCostController.toThousands(noUserVo.getYearCumulativeWithdrawal(),true));
  712. allList.add(colList.toArray());
  713. }
  714. }
  715. }
  716. }
  717. String[] header = new String[]{
  718. "资产所属单位(一级)",
  719. "资产所属单位(二级)",
  720. "资产所属单位(三级)",
  721. "累计欠费(万元)",
  722. "其中:3个月以上欠费",
  723. "其中:1年以上欠费",
  724. "本年累计新增欠费",
  725. "本年累计收回欠费"
  726. };
  727. ee1.addSheetByArray(df.format(new Date()) + "清单", allList, header);
  728. }
  729. public void responseTab4(DateFormat df, ExcelExport ee1, Map<String, Object> map1){
  730. Query query = new Query(map1);
  731. List<WzHouseMarketEntity> resultList = wzHouseMarketService.queryList(query);
  732. List<Object> colList=new ArrayList();;
  733. List<Object[]> allList = new ArrayList();
  734. for (int i = 0; i < resultList.size(); i++) {
  735. colList = new ArrayList();
  736. colList.add(resultList.get(i).getBuildingId());
  737. colList.add(resultList.get(i).getBuildingAlias());
  738. colList.add(resultList.get(i).getBuildingAddress());
  739. colList.add(resultList.get(i).getContractNumber());
  740. colList.add(resultList.get(i).getLeaseCategory());
  741. colList.add(resultList.get(i).getContractAmountExcludeTax());
  742. colList.add(resultList.get(i).getContractLeaseTerm());
  743. colList.add(resultList.get(i).getContractRentalArea());
  744. colList.add(resultList.get(i).getTotalMonthlyRent());
  745. colList.add(resultList.get(i).getUnitPriceMonth());
  746. colList.add(resultList.get(i).getSurveyTime());
  747. colList.add(resultList.get(i).getBuildingLongitude());
  748. colList.add(resultList.get(i).getBuildingDimension());
  749. colList.add(resultList.get(i).getHasNearbyProperty());
  750. colList.add(resultList.get(i).getNoNearbyPropertyReason());
  751. colList.add(resultList.get(i).getMarketBuildingName());
  752. colList.add(resultList.get(i).getDistanceBetweenBuildings());
  753. colList.add(resultList.get(i).getMarketContractLeaseTerm());
  754. colList.add(resultList.get(i).getMarketContractRentalArea());
  755. colList.add(resultList.get(i).getMonthlyRent());
  756. colList.add(resultList.get(i).getMarketUnitPriceMonth());
  757. colList.add(resultList.get(i).getMarketUnitPriceDay());
  758. colList.add(resultList.get(i).getMarketStandardAddress());
  759. colList.add(resultList.get(i).getHousingRentCollectionMethod());
  760. colList.add(resultList.get(i).getPropertyType());
  761. colList.add(resultList.get(i).getTotalNumberOfFloors());
  762. colList.add(resultList.get(i).getRenovationSituation());
  763. allList.add(colList.toArray());
  764. }
  765. String[] header = new String[]{
  766. "建筑ID",
  767. "建筑别名",
  768. "地址",
  769. "合同号",
  770. "租赁类别",
  771. "不含增值税合同额",
  772. "合同租期(月数)",
  773. "合同出租面积",
  774. "月租金(元)",
  775. "每平米单价(元/㎡/月)",
  776. "调查时间",
  777. "房屋经度",
  778. "房屋纬度",
  779. "1.5公里内是否有类似物业",
  780. "‘否’原因",
  781. "市场建筑名",
  782. "建筑之间距离m",
  783. "市场合同租期(月数)",
  784. "市场合同出租面积",
  785. "月租金(元)",
  786. "每平米单价 元/㎡/月",
  787. "每平米单价 元/㎡/天",
  788. "市场标准地址",
  789. "房屋租金收取方式",
  790. "物业类型",
  791. "楼层总数",
  792. "装修"
  793. };
  794. ee1.addSheetByArray(df.format(new Date()) + "清单", allList, header);
  795. }
  796. public void responseTab5(DateFormat df, ExcelExport ee1, Map<String, Object> map1){
  797. //查询列表数据
  798. Query query = new Query(map1);
  799. List<WzHouseContractOutEntity> resultList = wzHouseContractOutService.queryList(query);
  800. List<Object> colList=new ArrayList();;
  801. List<Object[]> allList = new ArrayList();
  802. for (int i = 0; i < resultList.size(); i++) {
  803. colList = new ArrayList();
  804. colList.add(resultList.get(i).getContractNumber());
  805. colList.add(resultList.get(i).getContractSerialNumber());
  806. colList.add(resultList.get(i).getCreateDate());
  807. colList.add(resultList.get(i).getContractStatus());
  808. colList.add(resultList.get(i).getContractName());
  809. colList.add(resultList.get(i).getUndertakingDepartment());
  810. colList.add(resultList.get(i).getUndertaker());
  811. colList.add(resultList.get(i).getContractNumber());
  812. colList.add(resultList.get(i).getOurSubject());
  813. colList.add(resultList.get(i).getFullNameOfThTenant());
  814. colList.add(resultList.get(i).getContractType());
  815. colList.add(resultList.get(i).getContractDescription());
  816. colList.add(resultList.get(i).getExcludingValueAddedTaxContractAmount());
  817. colList.add(resultList.get(i).getContractAmountIncludingVat());
  818. colList.add(resultList.get(i).getRate());
  819. colList.add(resultList.get(i).getPriceIncreaseMechanism());
  820. colList.add(resultList.get(i).getRenPaymentMethod());
  821. colList.add(resultList.get(i).getLeaseCategory());
  822. colList.add(resultList.get(i).getRentFreeStartDate());
  823. colList.add(resultList.get(i).getRentFreeEndDate());
  824. colList.add(resultList.get(i).getRentalStartDate());
  825. colList.add(resultList.get(i).getRentalEndDate());
  826. colList.add(resultList.get(i).getContractLeaseTerm());
  827. colList.add(resultList.get(i).getContractRentalArea());
  828. colList.add(resultList.get(i).getDebt());
  829. colList.add(resultList.get(i).getEndTime());
  830. colList.add(resultList.get(i).getEndReason());
  831. colList.add(resultList.get(i).getSubordinateUnits());
  832. colList.add(resultList.get(i).getResourceType());
  833. colList.add(resultList.get(i).getBuildingAlias());
  834. colList.add(resultList.get(i).getStandardAddress());
  835. colList.add(resultList.get(i).getFloor());
  836. colList.add(resultList.get(i).getRoomName());
  837. colList.add(resultList.get(i).getThisRentalBuildingArea());
  838. colList.add(resultList.get(i).getResourceType());
  839. colList.add(resultList.get(i).getBuildingAlias());
  840. colList.add(resultList.get(i).getStandardAddress());
  841. colList.add(resultList.get(i).getFloor());
  842. colList.add(resultList.get(i).getRoomName());
  843. colList.add(resultList.get(i).getThisRentalBuildingArea());
  844. colList.add(resultList.get(i).getTotalBuildingArea());
  845. colList.add(resultList.get(i).getSelfUseBuildingArea());
  846. colList.add(resultList.get(i).getIdleBuildingArea());
  847. colList.add(resultList.get(i).getRentalBuildingArea());
  848. colList.add(resultList.get(i).getUnusableBuildingArea());
  849. colList.add(resultList.get(i).getThisRentalUseArea());
  850. colList.add(resultList.get(i).getTotalUseArea());
  851. colList.add(resultList.get(i).getSelfUseArea());
  852. colList.add(resultList.get(i).getIdleArea());
  853. colList.add(resultList.get(i).getRentalUseArea());
  854. colList.add(resultList.get(i).getUnusableUseArea());
  855. colList.add(resultList.get(i).getStatisticalMonth());
  856. allList.add(colList.toArray());
  857. }
  858. String[] header = new String[]{
  859. "合同编号",
  860. "合同流水号",
  861. "创建日期",
  862. "合同状态",
  863. "合同名称",
  864. "承办部门",
  865. "承办人",
  866. "联系电话",
  867. "我方主体",
  868. "合同类型",
  869. "投资主体",
  870. "合同说明",
  871. "含增值税合同金额",
  872. "不含增值税合同额",
  873. "税率",
  874. "涨价机制",
  875. "交租方式",
  876. "租赁类别",
  877. "免租期起始日期",
  878. "免租期终止日期",
  879. "出租起始日期",
  880. "出租终止日期",
  881. "合同租期(月数)",
  882. "合同出租面积",
  883. "是否有欠款",
  884. "终止时间",
  885. "终止原因",
  886. "所属单位",
  887. "资源类型",
  888. "建筑/土地别名",
  889. "标准地址",
  890. "楼层",
  891. "房间名",
  892. "本次出租面积(建筑)",
  893. "总面积(建筑)",
  894. "自用面积(建筑)",
  895. "闲置面积(建筑)",
  896. "不可使用面积(建筑)",
  897. "本次出租面积(使用)",
  898. "总面积(使用)",
  899. "自用面积(使用)",
  900. "闲置面积(使用)",
  901. "出租面积(使用)",
  902. "不可使用面积(使用)",
  903. "账期"
  904. };
  905. ee1.addSheetByArray(df.format(new Date()) + "清单", allList, header);
  906. }
  907. public double formatDouble(double num){
  908. double avera=0l;
  909. try{
  910. DecimalFormat format2 = new DecimalFormat("#.00");
  911. String str2 = format2.format(num);
  912. avera = Double.parseDouble(str2);
  913. }catch (Exception e){
  914. e.printStackTrace();
  915. }
  916. return avera;
  917. }
  918. }