HighwayReserveFeeController.java 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. package com.zhcs.dt.controller.information.annualPlan;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;
  6. import java.util.Set;
  7. import javax.annotation.Resource;
  8. import net.sf.json.JSONArray;
  9. import net.sf.json.JSONObject;
  10. import org.apache.commons.lang.StringUtils;
  11. import org.springframework.stereotype.Controller;
  12. import org.springframework.web.bind.annotation.RequestMapping;
  13. import org.springframework.web.bind.annotation.ResponseBody;
  14. import org.springframework.web.servlet.ModelAndView;
  15. import com.zhcs.dt.controller.base.BaseController;
  16. import com.zhcs.dt.service.information.annualPlan.AnnualPlanManager;
  17. import com.zhcs.dt.service.information.annualPlan.impl.AnnualDailyCompService;
  18. import com.zhcs.dt.service.information.annualPlan.impl.HighwayReserveFeeCompService;
  19. import com.zhcs.dt.util.AppUtil;
  20. import com.zhcs.dt.util.Jurisdiction;
  21. import com.zhcs.dt.util.PageData;
  22. /**
  23. * 类名称:高速预备费使用情况
  24. */
  25. @Controller
  26. @RequestMapping(value="/HighwayReserveFeeComp")
  27. class HighwayReserveFeeController extends BaseController {
  28. @Resource(name="highwayReserveFeeCompService")
  29. private HighwayReserveFeeCompService highwayReserveFeeCompService;
  30. // @Resource(name="annualDailyCompService")
  31. // private AnnualDailyCompService annualDailyCompService;
  32. @Resource(name="annualPlanService")
  33. private AnnualPlanManager annualPlanService;
  34. private ShowTableRecodUtil showTableRecodUtil = new ShowTableRecodUtil();
  35. /**显示、编辑子表格
  36. * @param
  37. * @throws Exception
  38. */
  39. /* @RequestMapping(value="/showTableRecod")
  40. public ModelAndView showTableRecod()throws Exception{
  41. ModelAndView mv = this.getModelAndView();
  42. PageData pd = new PageData();
  43. pd = this.getPageData();
  44. //int viewType = setViewType(pd.getString("TABLETYPE"));
  45. List<PageData> varList = new ArrayList<PageData>();
  46. String name = pd.getString("NAME");
  47. String projectName = "";
  48. if(name.contains("---")){
  49. projectName = name.split("---")[1];
  50. }
  51. pd.put("PROJECT_NAME", projectName);
  52. //varList = showTableRecodUtil.showTableRecod(annualDailyCompService, pd);
  53. varList = highwayReserveFeeCompService.getAllRecords(pd);
  54. String mode = "edit";
  55. mv.addObject("dataMap", JSONObject.fromObject(varList.get(0)));
  56. JSONArray arr = JSONArray.fromObject(varList);
  57. mv.addObject("varList", arr);
  58. pd.put("mode", mode);
  59. mv.setViewName("information/annualPlan/annualTableRecord/"+pd.getString("TABLETYPE"));
  60. mv.addObject("pd", pd);
  61. mv.addObject("QX",Jurisdiction.getHC()); //按钮权限
  62. return mv;
  63. }*/
  64. @RequestMapping(value="/saveData")
  65. @ResponseBody
  66. public Object saveData() throws Exception{
  67. ModelAndView mv = this.getModelAndView();
  68. PageData pd = new PageData();
  69. pd = this.getPageData();
  70. JSONArray jsonarray = JSONArray.fromObject(pd.get("data"));
  71. List<PageData> varList = new ArrayList<PageData>();
  72. varList = highwayReserveFeeCompService.hasTableRecod2(pd);
  73. Map<String,Object> map = dealWithData(pd,varList,jsonarray);
  74. return AppUtil.returnObject(new PageData(), map);
  75. }
  76. /**
  77. * 处理新增编辑数据
  78. */
  79. @ResponseBody
  80. public Map<String,Object> dealWithData(PageData pd,List<PageData> varList,JSONArray jsonarray) throws Exception{
  81. for (Object object : jsonarray) {
  82. JSONObject arrMap = JSONObject.fromObject(object);
  83. Set entryarray = arrMap.entrySet();
  84. ArrayList<Object> keyarray = new ArrayList<Object>();
  85. ArrayList<Object> valuearray = new ArrayList<Object>();
  86. for (Object entry : entryarray) {
  87. Object[] arr = entry.toString().split("=");
  88. boolean saveFlag = true;
  89. //编辑
  90. if (varList != null && varList.size() != 0){
  91. saveFlag = !"ROAD".equals(arr[0])&&!"YEAR".equals(arr[0])&&!"COMPANY".equals(arr[0])
  92. &&!"ROAD_ID".equals(arr[0])&&!"COMPANY_ID".equals(arr[0])&&!"PROJECT_NAME".equals(arr[0]);
  93. saveFlag = saveFlag && !"STATUS".equals(arr[0]);
  94. }
  95. if (saveFlag) {
  96. keyarray.add(arr[0]);
  97. if (arr.length > 1) {
  98. valuearray.add(arr[1]);
  99. }else {
  100. valuearray.add(null);
  101. }
  102. }
  103. }
  104. pd.put("KEYS", StringUtils.join(keyarray.toArray(), ","));
  105. pd.put("KEYARRAY", keyarray);
  106. pd.put("VALUEARRAY", valuearray);
  107. //pd.put("ROAD_ID", arrMap.get("ROAD_ID"));
  108. //pd.put("PROJECT_NAME", arrMap.get("PROJECT_NAME"));
  109. //新增
  110. if (varList == null || varList.size() == 0) highwayReserveFeeCompService.saveTableRecod(pd);
  111. //编辑
  112. else if (keyarray.size() > 0) highwayReserveFeeCompService.editTableRecod(pd);
  113. }
  114. Map<String,Object> map = new HashMap<String,Object>();
  115. map.put("msg","success");
  116. return map;
  117. }
  118. }