Commit 53cac85ca2cecbf6bf6dbf8e98e0835c0e7e8ceb

Authored by 廖磊
1 parent e1790793

路单数据报表重做

src/main/java/com/bsth/controller/forms/ExportController.java
@@ -214,7 +214,47 @@ public class ExportController { @@ -214,7 +214,47 @@ public class ExportController {
214 214
215 return resList; 215 return resList;
216 } 216 }
  217 + @RequestMapping(value = "/singledataExportTj", method = RequestMethod.GET)
  218 + public List<Map<String, Object>> singledataExportTj(@RequestParam Map<String, Object> map) {
  219 + SimpleDateFormat sdfMonth = new SimpleDateFormat("yyyy-MM-dd"), sdfSimple = new SimpleDateFormat("yyyyMMdd");
  220 + List<Iterator<?>> listI = new ArrayList<Iterator<?>>();
  221 + ReportUtils ee = new ReportUtils();
  222 + List<Singledata> singledata = formsService.singledatatj(map);
  223 + List<Map<String, Object>> resList = new ArrayList<Map<String, Object>>();
  224 + int i = 1;
  225 + for (Singledata l : singledata) {
  226 + Map<String, Object> m = new HashMap<String, Object>();
  227 + m.put("i", i);
  228 + m.put("rQ", l.getrQ());
  229 + m.put("gS", l.getgS());
  230 + m.put("xL", l.getXlmc());
  231 + m.put("clzbh", l.getClzbh());
  232 + m.put("jsy", l.getJsy());
  233 + m.put("jName", l.getjName());
  234 + m.put("sgh", l.getSgh());
  235 + m.put("sName", l.getsName());
  236 + m.put("jhlc", l.getJhlc());
  237 + m.put("emptMileage", l.getEmptMileage());
  238 + m.put("hyl", l.getHyl());
  239 + m.put("jzl", l.getJzl());
  240 + m.put("unyyyl", l.getUnyyyl());
  241 + m.put("jhjl", l.getJhjl());
  242 + resList.add(m);
  243 +
  244 + i++;
  245 + }
  246 +
  247 + try {
  248 + listI.add(resList.iterator());
  249 + String path = this.getClass().getResource("/").getPath() + "static/pages/forms/";
  250 + ee.excelReplace(listI, new Object[] { map }, path + "mould/singledata.xls",
  251 + path + "export/路单数据" + sdfSimple.format(sdfMonth.parse(map.get("startDate").toString())) + ".xls");
  252 + } catch (Exception e) {
  253 + e.printStackTrace();
  254 + }
217 255
  256 + return resList;
  257 + }
218 // 车辆加注 258 // 车辆加注
219 @RequestMapping(value = "/vehicleloadingExport", method = RequestMethod.GET) 259 @RequestMapping(value = "/vehicleloadingExport", method = RequestMethod.GET)
220 public List<Map<String, Object>> vehicleloadingExport(@RequestParam Map<String, Object> map) { 260 public List<Map<String, Object>> vehicleloadingExport(@RequestParam Map<String, Object> map) {
src/main/java/com/bsth/controller/forms/MCY_FormsController.java
@@ -83,9 +83,15 @@ public class MCY_FormsController { @@ -83,9 +83,15 @@ public class MCY_FormsController {
83 @RequestMapping(value = "/singledatanew", method = RequestMethod.GET) 83 @RequestMapping(value = "/singledatanew", method = RequestMethod.GET)
84 public List<Singledata> singledatanew(@RequestParam Map<String, Object> map) { 84 public List<Singledata> singledatanew(@RequestParam Map<String, Object> map) {
85 85
86 - return formsService.singledata(map); 86 + return formsService.singledatanew(map);
87 } 87 }
88 88
  89 + @RequestMapping(value = "/singledatatj", method = RequestMethod.GET)
  90 + public List<Singledata> singledatatj(@RequestParam Map<String, Object> map) {
  91 +
  92 + return formsService.singledatatj(map);
  93 + }
  94 +
89 // 车辆加注 95 // 车辆加注
90 @RequestMapping(value = "/vehicleloading", method = RequestMethod.GET) 96 @RequestMapping(value = "/vehicleloading", method = RequestMethod.GET)
91 public List<Vehicleloading> vehicleloading(@RequestParam String line, @RequestParam String data) { 97 public List<Vehicleloading> vehicleloading(@RequestParam String line, @RequestParam String data) {
src/main/java/com/bsth/repository/oil/YlbRepository.java
@@ -71,6 +71,11 @@ public interface YlbRepository extends BaseRepository&lt;Ylb, Integer&gt;{ @@ -71,6 +71,11 @@ public interface YlbRepository extends BaseRepository&lt;Ylb, Integer&gt;{
71 @Query(value="SELECT * FROM bsth_c_ylb where to_days(?1)=to_days(rq) and ssgsdm like %?2% " 71 @Query(value="SELECT * FROM bsth_c_ylb where to_days(?1)=to_days(rq) and ssgsdm like %?2% "
72 + " and fgsdm like %?3%" 72 + " and fgsdm like %?3%"
73 + " and xlbm = ?4 and nbbm like %?5% order by ?6 asc ",nativeQuery=true) 73 + " and xlbm = ?4 and nbbm like %?5% order by ?6 asc ",nativeQuery=true)
  74 + List<Ylb> obtainYlEq(String rq,String gsdm,String fgsdm,String xlbm,String nbbm,String px);
  75 +
  76 + @Query(value="SELECT * FROM bsth_c_ylb where to_days(?1)=to_days(rq) and ssgsdm like %?2% "
  77 + + " and fgsdm like %?3%"
  78 + + " and xlbm = ?4 and nbbm like %?5% order by ?6 asc ",nativeQuery=true)
74 List<Ylb> obtainYl_eq(String rq,String gsdm,String fgsdm,String xlbm,String nbbm,String px); 79 List<Ylb> obtainYl_eq(String rq,String gsdm,String fgsdm,String xlbm,String nbbm,String px);
75 80
76 81
src/main/java/com/bsth/service/forms/FormsService.java
@@ -31,6 +31,7 @@ public interface FormsService { @@ -31,6 +31,7 @@ public interface FormsService {
31 31
32 public List<Singledata> singledata(Map<String, Object> map); 32 public List<Singledata> singledata(Map<String, Object> map);
33 public List<Singledata> singledatanew(Map<String, Object> map); 33 public List<Singledata> singledatanew(Map<String, Object> map);
  34 + public List<Singledata> singledatatj(Map<String, Object> map);
34 35
35 public List<Vehicleloading> vehicleloading(String line,String data); 36 public List<Vehicleloading> vehicleloading(String line,String data);
36 37
src/main/java/com/bsth/service/forms/impl/FormsServiceImpl.java
@@ -633,6 +633,532 @@ public class FormsServiceImpl implements FormsService { @@ -633,6 +633,532 @@ public class FormsServiceImpl implements FormsService {
633 633
634 634
635 // 路单数据 635 // 路单数据
  636 + @Override
  637 + public List<Singledata> singledatatj(Map<String, Object> map) {
  638 + String gsdm="";
  639 + if(map.get("gsdmSing")!=null){
  640 + gsdm=map.get("gsdmSing").toString();
  641 + }
  642 + String fgsdm="";
  643 + if(map.get("fgsdmSing")!=null){
  644 + fgsdm=map.get("fgsdmSing").toString();
  645 + }
  646 +
  647 + String tjtype=map.get("tjtype").toString();
  648 + String xlbm=map.get("line").toString().trim();
  649 + startDate = map.get("startDate").toString();
  650 +
  651 + List<ScheduleRealInfo> listReal=new ArrayList<ScheduleRealInfo>();
  652 + if(xlbm.equals("")){
  653 + listReal=scheduleRealInfoRepository.scheduleByDateAndLineByGs_(gsdm, fgsdm, startDate);
  654 + }else{
  655 + listReal=scheduleRealInfoRepository.scheduleByDateAndLineQp(xlbm, startDate);
  656 + }
  657 + List<Singledata> list=new ArrayList<Singledata>();
  658 + List<Singledata> list_=new ArrayList<Singledata>();
  659 + if(tjtype.equals("jsy")){
  660 + //油统计
  661 + String sql="select r.j_gh, r.xl_bm,r.cl_zbh"
  662 + + " from bsth_c_s_sp_info_real r where "
  663 + + " r.schedule_date_str = '"+startDate+"'";
  664 + if(xlbm.equals("")){
  665 + sql +="and r.gs_bm='"+gsdm+"' "
  666 + + " and r.fgs_bm='"+fgsdm+"'";
  667 + }else{
  668 + sql += " and r.xl_bm = '"+xlbm+"'";
  669 + }
  670 + sql += " group by r.j_gh,r.xl_bm,r.cl_zbh order by r.xl_bm,r.cl_zbh";
  671 + list = jdbcTemplate.query(sql, new RowMapper<Singledata>() {
  672 + @Override
  673 + public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException {
  674 + Singledata sin = new Singledata();
  675 + sin.setxL(arg0.getString("xl_bm"));
  676 + sin.setJsy(arg0.getString("j_gh"));
  677 + sin.setClzbh(arg0.getString("cl_zbh"));
  678 + return sin;
  679 + }
  680 + });
  681 + String linesql="";
  682 + if(!xlbm.equals("")){
  683 + linesql +=" and xlbm ='"+xlbm+"' ";
  684 + }
  685 + String nysql="SELECT id,xlbm,nbbm, jsy,jzl as jzl,yh as yh,sh as sh FROM bsth_c_ylb "
  686 + + " WHERE rq = '"+startDate+"'"
  687 + + " AND ssgsdm = '"+gsdm+"' AND fgsdm = '"+fgsdm+"'" +linesql
  688 + + " union"
  689 + + " SELECT id,xlbm,nbbm,jsy,cdl as jzl,hd as yh,sh as sh FROM bsth_c_dlb"
  690 + + " WHERE rq = '"+startDate+"'"
  691 + + " AND ssgsdm = '"+gsdm+"' AND fgsdm = '"+fgsdm+"'"+linesql;
  692 + List<Singledata> listNy = jdbcTemplate.query(nysql, new RowMapper<Singledata>() {
  693 + @Override
  694 + public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException {
  695 + Singledata sin = new Singledata();
  696 + sin.setxL(arg0.getString("xlbm"));
  697 + sin.setJsy(arg0.getString("jsy"));
  698 + sin.setClzbh(arg0.getString("nbbm"));
  699 + sin.setJzl(arg0.getString("jzl"));
  700 + sin.setHyl(arg0.getString("yh"));
  701 + sin.setUnyyyl(arg0.getString("sh"));
  702 + return sin;
  703 + }
  704 + });
  705 + //统计油,电表中手动添加的或者有加注没里程的数据
  706 + for (int i = 0; i < listNy.size(); i++) {
  707 + Singledata sin_=listNy.get(i);
  708 + String jsy=sin_.getJsy();
  709 + String line=sin_.getxL();
  710 + String clzbh=sin_.getClzbh();
  711 + boolean fages=true;
  712 + for (int j = 0; j < list.size(); j++) {
  713 + Singledata sin=list.get(j);
  714 + String jsy_=sin.getJsy();
  715 + String line_=sin.getxL();
  716 + String clzbh_=sin.getClzbh();
  717 + if(jsy.equals(jsy_)
  718 + &&line.equals(line_)
  719 + &&clzbh.equals(clzbh_)){
  720 + fages=false;
  721 + }
  722 + }
  723 + if(fages){
  724 + Singledata s=new Singledata();
  725 + s.setJsy(jsy);
  726 + s.setjName(BasicData.allPerson.get(gsdm+"-"+jsy));
  727 + s.setClzbh(clzbh);
  728 + s.setSgh("");
  729 + s.setsName("");
  730 + s.setgS(BasicData.businessFgsCodeNameMap.get(fgsdm+"_"+gsdm));
  731 + s.setxL(line);
  732 + s.setXlmc(BasicData.lineCode2NameMap.get(line));
  733 + s.setJzl(sin_.getJzl());
  734 + s.setHyl(sin_.getHyl());
  735 + s.setUnyyyl(sin_.getUnyyyl());
  736 + s.setJhlc("0.0");
  737 + s.setEmptMileage("0.0");
  738 + s.setJhjl("0.0");
  739 + s.setrQ(startDate);
  740 + list_.add(s);
  741 + }
  742 + }
  743 + for (int i= 0; i < list.size(); i++) {
  744 + Singledata sin=list.get(i);
  745 + String jsy=sin.getJsy();
  746 + String line=sin.getxL();
  747 + String clzbh=sin.getClzbh();
  748 + double jzl=0.0;
  749 + double yh=0.0;
  750 + double sh=0.0;
  751 + for (int j = 0; j < listNy.size(); j++) {
  752 + Singledata y=listNy.get(j);
  753 + if(y.getJsy().equals(jsy)
  754 + &&y.getClzbh().equals(clzbh)
  755 + &&y.getxL().equals(line)){
  756 + jzl=Arith.add(jzl, y.getJzl());
  757 + yh=Arith.add(yh, y.getHyl());
  758 + sh=Arith.add(sh, y.getUnyyyl());
  759 + }
  760 + }
  761 + sin.setHyl(String.valueOf(yh));
  762 + sin.setJzl(String.valueOf(jzl));
  763 + sin.setUnyyyl(String.valueOf(sh));
  764 +
  765 + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>();
  766 + List<ScheduleRealInfo> newList_=new ArrayList<ScheduleRealInfo>();
  767 + for (int j = 0; j < listReal.size(); j++) {
  768 + ScheduleRealInfo s=listReal.get(j);
  769 + if(s.getjGh().equals(jsy)
  770 + && s.getClZbh().equals(clzbh)
  771 + &&s.getXlBm().equals(line)){
  772 + newList.add(s);
  773 + Set<ChildTaskPlan> cts = s.getcTasks();
  774 + if(cts != null && cts.size() > 0){
  775 + newList_.add(s);
  776 + }else{
  777 + if(s.getZdsjActual()!=null && s.getFcsjActual()!=null){
  778 + newList_.add(s);
  779 + }
  780 + }
  781 + }
  782 + }
  783 + double jhgl=culateMileageService.culateJhgl(newList);
  784 + double jhjcc=culateMileageService.culateJhJccgl(newList);
  785 + double yygl=culateMileageService.culateSjgl(newList_);
  786 + double ljgl=culateMileageService.culateLjgl(newList_);
  787 + double ksgl=culateMileageService.culateKsgl(newList_);
  788 + double jcgl=culateMileageService.culateJccgl(newList_);
  789 +
  790 + double zyygl=Arith.add(yygl, ljgl);
  791 + double zksgl=Arith.add(ksgl, jcgl);
  792 + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl)));
  793 + sin.setEmptMileage(String.valueOf(zksgl));
  794 + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc)));
  795 + sin.setXlmc(BasicData.lineCode2NameMap.get(line));
  796 + sin.setrQ(startDate);
  797 + sin.setjName(BasicData.allPerson.get(gsdm+"-"+jsy));
  798 + sin.setSgh("");
  799 + sin.setsName("");
  800 + sin.setgS(BasicData.businessFgsCodeNameMap.get(fgsdm+"_"+gsdm));
  801 + list_.add(sin);
  802 +
  803 + }
  804 + Collections.sort(list_,new SingledataByXlbm());
  805 + }else{
  806 + String sql="select r.s_gh,r.s_name, "
  807 + + " r.xl_bm,r.cl_zbh,r.gs_bm,r.fgs_bm"
  808 + + " from bsth_c_s_sp_info_real r where "
  809 + + " r.schedule_date_str = '"+startDate+"'"
  810 + + " and r.s_gh !='' and r.s_gh is not null ";
  811 + if(xlbm.equals("")){
  812 + sql +="and r.gs_bm='"+gsdm+"' "
  813 + + " and r.fgs_bm='"+fgsdm+"'";
  814 + }else{
  815 + sql += " and r.xl_bm = '"+xlbm+"'";
  816 + }
  817 + sql += " group by r.s_gh,r.s_name,"
  818 + + " r.xl_bm,r.cl_zbh,r.gs_bm,r.fgs_bm order by r.xl_bm,r.cl_zbh";
  819 +
  820 + list = jdbcTemplate.query(sql, new RowMapper<Singledata>() {
  821 + //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  822 + @Override
  823 + public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException {
  824 + Singledata sin = new Singledata();
  825 + sin.setrQ(startDate);
  826 + sin.setxL(arg0.getString("xl_bm"));
  827 + sin.setClzbh(arg0.getString("cl_zbh"));
  828 + sin.setSgh(arg0.getString("s_gh"));
  829 + sin.setsName(arg0.getString("s_name"));
  830 + return sin;
  831 + }
  832 + });
  833 +
  834 + for (int i = 0; i < list.size(); i++) {
  835 + Singledata sin=list.get(i);
  836 + String jsy=sin.getSgh();
  837 + String line=sin.getxL();
  838 + String clzbh=sin.getClzbh();
  839 + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>();
  840 + List<ScheduleRealInfo> newList_=new ArrayList<ScheduleRealInfo>();
  841 +
  842 + for (int j = 0; j < listReal.size(); j++) {
  843 + ScheduleRealInfo s=listReal.get(j);
  844 + if(s.getsGh().equals(jsy) && s.getClZbh().equals(clzbh)
  845 + &&s.getXlBm().equals(line)){
  846 + newList.add(s);
  847 + Set<ChildTaskPlan> cts = s.getcTasks();
  848 + if(cts != null && cts.size() > 0){
  849 + newList_.add(s);
  850 + }else{
  851 + if(s.getZdsjActual()!=null && s.getFcsjActual()!=null){
  852 + newList_.add(s);
  853 + }
  854 + }
  855 + }
  856 + }
  857 + double jhgl=culateMileageService.culateJhgl(newList);
  858 + double jhjcc=culateMileageService.culateJhJccgl(newList);
  859 + double yygl=culateMileageService.culateSjgl(newList_);
  860 + double ljgl=culateMileageService.culateLjgl(newList_);
  861 + double ksgl=culateMileageService.culateKsgl(newList_);
  862 + double jcgl=culateMileageService.culateJccgl(newList_);
  863 +
  864 + double zyygl=Arith.add(yygl, ljgl);
  865 + double zksgl=Arith.add(ksgl, jcgl);
  866 +
  867 + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl)));
  868 +
  869 + sin.setEmptMileage(String.valueOf(zksgl));
  870 + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc)));
  871 + sin.setxL(BasicData.lineCode2NameMap.get(line));
  872 + sin.setClzbh(clzbh);
  873 + sin.setJsy("");
  874 + sin.setjName("");
  875 + sin.setgS(BasicData.businessFgsCodeNameMap.get(fgsdm+"_"+gsdm));
  876 + sin.setHyl("");
  877 + sin.setJzl("");
  878 + sin.setUnyyyl("");
  879 + }
  880 + Collections.sort(list,new SingledataByXlbm());
  881 + }
  882 + return list_;
  883 + }
  884 +
  885 + /*// 路单数据
  886 + @Override
  887 + public List<Singledata> singledatatj(Map<String, Object> map) {
  888 +
  889 + String gsdm="";
  890 + if(map.get("gsdmSing")!=null){
  891 + gsdm=map.get("gsdmSing").toString();
  892 + }
  893 + String fgsdm="";
  894 + if(map.get("fgsdmSing")!=null){
  895 + fgsdm=map.get("fgsdmSing").toString();
  896 + }
  897 +
  898 + String tjtype=map.get("tjtype").toString();
  899 + String xlbm=map.get("line").toString().trim();
  900 + startDate = map.get("startDate").toString();
  901 +
  902 + List<ScheduleRealInfo> listReal=new ArrayList<ScheduleRealInfo>();
  903 + if(xlbm.equals("")){
  904 + listReal=scheduleRealInfoRepository.scheduleByDateAndLineByGs_(gsdm, fgsdm, startDate);
  905 + }else{
  906 + listReal=scheduleRealInfoRepository.scheduleByDateAndLineQp(xlbm, startDate);
  907 + }
  908 + List<Singledata> list=new ArrayList<Singledata>();
  909 + List<Singledata> listY=new ArrayList<Singledata>();
  910 + List<Singledata> listD=new ArrayList<Singledata>();
  911 +
  912 + if(tjtype.equals("jsy")){
  913 + //油统计
  914 + String sql="select xlbm,nbbm,jsy from bsth_c_ylb where rq='"+startDate+"'";
  915 + if(xlbm.equals("")){
  916 + sql += " and ssgsdm= '"+gsdm+"' and fgsdm= '"+fgsdm+"'";
  917 + }else{
  918 + sql +=" and xlbm= '"+xlbm+"'";
  919 + }
  920 + sql += " group by xlbm,nbbm,jsy";
  921 + listY = jdbcTemplate.query(sql, new RowMapper<Singledata>() {
  922 + @Override
  923 + public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException {
  924 + Singledata sin = new Singledata();
  925 + sin.setxL(arg0.getString("xlbm"));
  926 + sin.setJsy(arg0.getString("jsy"));
  927 + sin.setClzbh(arg0.getString("nbbm"));
  928 + return sin;
  929 + }
  930 + });
  931 +
  932 + List<Ylb> listYlb= ylbRepository.obtainYl(startDate, gsdm, fgsdm, xlbm, "", "xlbm");
  933 + for (int i = 0; i < listY.size(); i++) {
  934 + Singledata sin=listY.get(i);
  935 + String jsy=sin.getJsy();
  936 + String line=sin.getxL();
  937 + String clzbh=sin.getClzbh();
  938 +
  939 + double jzl=0.0;
  940 + double yh=0.0;
  941 + double sh=0.0;
  942 + for (int j = 0; j < listYlb.size(); j++) {
  943 + Ylb y=listYlb.get(j);
  944 + if(y.getJsy().equals(jsy)
  945 + &&y.getNbbm().equals(clzbh)
  946 + &&y.getXlbm().equals(line)){
  947 + jzl=Arith.add(jzl, y.getJzl());
  948 + yh=Arith.add(yh, y.getYh());
  949 + sh=Arith.add(sh, y.getSh());
  950 + }
  951 + }
  952 + sin.setHyl(String.valueOf(yh));
  953 + sin.setJzl(String.valueOf(jzl));
  954 + sin.setUnyyyl(String.valueOf(sh));
  955 +
  956 + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>();
  957 + List<ScheduleRealInfo> newList_=new ArrayList<ScheduleRealInfo>();
  958 + for (int j = 0; j < listReal.size(); j++) {
  959 + ScheduleRealInfo s=listReal.get(j);
  960 + if(s.getjGh().equals(jsy)
  961 + && s.getClZbh().equals(clzbh)
  962 + &&s.getXlBm().equals(line)){
  963 + newList.add(s);
  964 + Set<ChildTaskPlan> cts = s.getcTasks();
  965 + if(cts != null && cts.size() > 0){
  966 + newList_.add(s);
  967 + }else{
  968 + if(s.getZdsjActual()!=null && s.getFcsjActual()!=null){
  969 + newList_.add(s);
  970 + }
  971 + }
  972 + }
  973 + }
  974 + double jhgl=culateMileageService.culateJhgl(newList);
  975 + double jhjcc=culateMileageService.culateJhJccgl(newList);
  976 + double yygl=culateMileageService.culateSjgl(newList_);
  977 + double ljgl=culateMileageService.culateLjgl(newList_);
  978 + double ksgl=culateMileageService.culateKsgl(newList_);
  979 + double jcgl=culateMileageService.culateJccgl(newList_);
  980 +
  981 + double zyygl=Arith.add(yygl, ljgl);
  982 + double zksgl=Arith.add(ksgl, jcgl);
  983 + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl)));
  984 + sin.setEmptMileage(String.valueOf(zksgl));
  985 + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc)));
  986 + sin.setXlmc(BasicData.lineCode2NameMap.get(line));
  987 + sin.setrQ(startDate);
  988 + sin.setjName(BasicData.allPerson.get(gsdm+"-"+jsy));
  989 + sin.setSgh("");
  990 + sin.setsName("");
  991 + }
  992 +
  993 +
  994 + //电量计算
  995 + String sqldl="select xlbm,nbbm,jsy from bsth_c_dlb where rq='"+startDate+"'";
  996 + if(xlbm.equals("")){
  997 + sqldl += " and ssgsdm= '"+gsdm+"' and fgsdm= '"+fgsdm+"'";
  998 + }else{
  999 + sqldl +=" and xlbm= '"+xlbm+"'";
  1000 + }
  1001 + sqldl += " group by xlbm,nbbm,jsy";
  1002 + listD = jdbcTemplate.query(sqldl, new RowMapper<Singledata>() {
  1003 + @Override
  1004 + public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException {
  1005 + Singledata sin = new Singledata();
  1006 + sin.setxL(arg0.getString("xlbm"));
  1007 + sin.setJsy(arg0.getString("jsy"));
  1008 + sin.setClzbh(arg0.getString("nbbm"));
  1009 + return sin;
  1010 + }
  1011 + });
  1012 + List<Dlb> listDlb= dlbRepository.obtainDl(startDate, gsdm, fgsdm, xlbm, "", "xlbm");
  1013 +
  1014 + for (int i = 0; i < listD.size(); i++) {
  1015 + Singledata sin=listD.get(i);
  1016 + String jsy=sin.getJsy();
  1017 + String line=sin.getxL();
  1018 + String clzbh=sin.getClzbh();
  1019 +
  1020 + double jzl=0.0;
  1021 + double yh=0.0;
  1022 + double sh=0.0;
  1023 + for (int j = 0; j < listDlb.size(); j++) {
  1024 + Dlb d=listDlb.get(j);
  1025 + if(d.getJsy().equals(jsy)
  1026 + &&d.getNbbm().equals(clzbh)
  1027 + &&d.getXlbm().equals(line)){
  1028 + jzl=Arith.add(jzl, d.getCdl());
  1029 + yh=Arith.add(yh, d.getHd());
  1030 + sh=Arith.add(sh, d.getSh());
  1031 + }
  1032 + }
  1033 + sin.setHyl(String.valueOf(yh));
  1034 + sin.setJzl(String.valueOf(jzl));
  1035 + sin.setUnyyyl(String.valueOf(sh));
  1036 +
  1037 + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>();
  1038 + List<ScheduleRealInfo> newList_=new ArrayList<ScheduleRealInfo>();
  1039 + for (int j = 0; j < listReal.size(); j++) {
  1040 + ScheduleRealInfo s=listReal.get(j);
  1041 + if(s.getjGh().equals(jsy)
  1042 + && s.getClZbh().equals(clzbh)
  1043 + &&s.getXlBm().equals(line)){
  1044 + newList.add(s);
  1045 + Set<ChildTaskPlan> cts = s.getcTasks();
  1046 + if(cts != null && cts.size() > 0){
  1047 + newList_.add(s);
  1048 + }else{
  1049 + if(s.getZdsjActual()!=null && s.getFcsjActual()!=null){
  1050 + newList_.add(s);
  1051 + }
  1052 + }
  1053 + }
  1054 + }
  1055 + double jhgl=culateMileageService.culateJhgl(newList);
  1056 + double jhjcc=culateMileageService.culateJhJccgl(newList);
  1057 + double yygl=culateMileageService.culateSjgl(newList_);
  1058 + double ljgl=culateMileageService.culateLjgl(newList_);
  1059 + double ksgl=culateMileageService.culateKsgl(newList_);
  1060 + double jcgl=culateMileageService.culateJccgl(newList_);
  1061 +
  1062 + double zyygl=Arith.add(yygl, ljgl);
  1063 + double zksgl=Arith.add(ksgl, jcgl);
  1064 + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl)));
  1065 + sin.setEmptMileage(String.valueOf(zksgl));
  1066 + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc)));
  1067 + sin.setXlmc(BasicData.lineCode2NameMap.get(line));
  1068 + sin.setrQ(startDate);
  1069 + sin.setjName(BasicData.allPerson.get(gsdm+"-"+jsy));
  1070 + sin.setSgh("");
  1071 + sin.setsName("");
  1072 + }
  1073 +
  1074 +
  1075 + Collections.sort(listY,new SingledataByXlbm());
  1076 + Collections.sort(listD,new SingledataByXlbm());
  1077 + list.addAll(listY);
  1078 + list.addAll(listD);
  1079 + }else{
  1080 + String sql="select r.s_gh,r.s_name, "
  1081 + + " r.xl_bm,r.cl_zbh,r.gs_bm,r.fgs_bm"
  1082 + + " from bsth_c_s_sp_info_real r where "
  1083 + + " r.schedule_date_str = '"+startDate+"'"
  1084 + + " and r.s_gh !='' and r.s_gh is not null ";
  1085 + if(xlbm.equals("")){
  1086 + sql +="and r.gs_bm='"+gsdm+"' "
  1087 + + " and r.fgs_bm='"+fgsdm+"'";
  1088 + }else{
  1089 + sql += " and r.xl_bm = '"+xlbm+"'";
  1090 + }
  1091 + sql += " group by r.s_gh,r.s_name,"
  1092 + + " r.xl_bm,r.cl_zbh,r.gs_bm,r.fgs_bm order by r.xl_bm,r.cl_zbh";
  1093 +
  1094 + list = jdbcTemplate.query(sql, new RowMapper<Singledata>() {
  1095 + //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  1096 + @Override
  1097 + public Singledata mapRow(ResultSet arg0, int arg1) throws SQLException {
  1098 + Singledata sin = new Singledata();
  1099 + sin.setrQ(startDate);
  1100 + sin.setxL(arg0.getString("xl_bm"));
  1101 + sin.setClzbh(arg0.getString("cl_zbh"));
  1102 + sin.setSgh(arg0.getString("s_gh"));
  1103 + sin.setsName(arg0.getString("s_name"));
  1104 + return sin;
  1105 + }
  1106 + });
  1107 +
  1108 + for (int i = 0; i < list.size(); i++) {
  1109 + Singledata sin=list.get(i);
  1110 + String jsy=sin.getSgh();
  1111 + String line=sin.getxL();
  1112 + String clzbh=sin.getClzbh();
  1113 + List<ScheduleRealInfo> newList=new ArrayList<ScheduleRealInfo>();
  1114 + List<ScheduleRealInfo> newList_=new ArrayList<ScheduleRealInfo>();
  1115 +
  1116 + for (int j = 0; j < listReal.size(); j++) {
  1117 + ScheduleRealInfo s=listReal.get(j);
  1118 + if(s.getsGh().equals(jsy) && s.getClZbh().equals(clzbh)
  1119 + &&s.getXlBm().equals(line)){
  1120 + newList.add(s);
  1121 + Set<ChildTaskPlan> cts = s.getcTasks();
  1122 + if(cts != null && cts.size() > 0){
  1123 + newList_.add(s);
  1124 + }else{
  1125 + if(s.getZdsjActual()!=null && s.getFcsjActual()!=null){
  1126 + newList_.add(s);
  1127 + }
  1128 + }
  1129 + }
  1130 + }
  1131 + double jhgl=culateMileageService.culateJhgl(newList);
  1132 + double jhjcc=culateMileageService.culateJhJccgl(newList);
  1133 + double yygl=culateMileageService.culateSjgl(newList_);
  1134 + double ljgl=culateMileageService.culateLjgl(newList_);
  1135 + double ksgl=culateMileageService.culateKsgl(newList_);
  1136 + double jcgl=culateMileageService.culateJccgl(newList_);
  1137 +
  1138 + double zyygl=Arith.add(yygl, ljgl);
  1139 + double zksgl=Arith.add(ksgl, jcgl);
  1140 +
  1141 + sin.setJhlc(String.valueOf(Arith.add(zyygl,zksgl)));
  1142 +
  1143 + sin.setEmptMileage(String.valueOf(zksgl));
  1144 + sin.setJhjl(String.valueOf(Arith.add(jhgl,jhjcc)));
  1145 + sin.setxL(BasicData.lineCode2NameMap.get(line));
  1146 + sin.setClzbh(clzbh);
  1147 + sin.setJsy("");
  1148 + sin.setjName("");
  1149 + sin.setgS(BasicData.businessFgsCodeNameMap.get(fgsdm+"_"+gsdm));
  1150 + sin.setHyl("");
  1151 + sin.setJzl("");
  1152 + sin.setUnyyyl("");
  1153 + }
  1154 + Collections.sort(list,new SingledataByXlbm());
  1155 + }
  1156 +
  1157 + return list;
  1158 +
  1159 + }*/
  1160 +
  1161 + // 路单数据
636 @Override 1162 @Override
637 public List<Singledata> singledatanew(Map<String, Object> map) { 1163 public List<Singledata> singledatanew(Map<String, Object> map) {
638 1164
src/main/resources/static/pages/mforms/singledatas/singledata.html
@@ -192,7 +192,7 @@ @@ -192,7 +192,7 @@
192 var tjtype=$("#tjtype").val(); 192 var tjtype=$("#tjtype").val();
193 var params = {}; 193 var params = {};
194 var i = layer.load(2); 194 var i = layer.load(2);
195 - $get("/mcy_forms/singledata",{ gsdmSing:gsdmSing,fgsdmSing:fgsdmSing, line:line,startDate:startDate,lpName:lpName,tjtype:tjtype},function(result){ 195 + $get("/mcy_forms/singledatatj",{ gsdmSing:gsdmSing,fgsdmSing:fgsdmSing, line:line,startDate:startDate,lpName:lpName,tjtype:tjtype},function(result){
196 layer.close(i); 196 layer.close(i);
197 var singledata = template('singledata',{list:result}); 197 var singledata = template('singledata',{list:result});
198 // 把渲染好的模版html文本追加到表格中 198 // 把渲染好的模版html文本追加到表格中
@@ -209,7 +209,7 @@ @@ -209,7 +209,7 @@
209 var gsdmSing = $("#gsdmSing").val(); 209 var gsdmSing = $("#gsdmSing").val();
210 var fgsdmSing = $("#fgsdmSing").val(); 210 var fgsdmSing = $("#fgsdmSing").val();
211 var tjtype=$("#tjtype").val(); 211 var tjtype=$("#tjtype").val();
212 - $get('/mcy_export/singledataExport',{gsdmSing:gsdmSing,fgsdmSing:fgsdmSing,line:line,startDate:startDate,endDate:endDate,tjtype:tjtype,type:'export'},function(result){ 212 + $get('/mcy_export/singledataExportTj',{gsdmSing:gsdmSing,fgsdmSing:fgsdmSing,line:line,startDate:startDate,endDate:endDate,tjtype:tjtype,type:'export'},function(result){
213 window.open("/downloadFile/download?fileName=路单数据"+moment(startDate).format("YYYYMMDD")); 213 window.open("/downloadFile/download?fileName=路单数据"+moment(startDate).format("YYYYMMDD"));
214 }); 214 });
215 }); 215 });