|
@@ -5,15 +5,16 @@ import java.text.DateFormat;
|
|
|
import java.text.ParseException;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
|
|
|
import com.yijia.station.domain.PayOrder;
|
|
|
import com.yijia.station.domain.StationClassesSummary;
|
|
|
+import com.yijia.station.domain.StationDeviceManage;
|
|
|
import com.yijia.station.mapper.PayOrderMapper;
|
|
|
import com.yijia.station.service.IPayOrderService;
|
|
|
import com.yijia.station.service.IStationClassesSummaryService;
|
|
|
+import com.yijia.station.service.IStationDeviceManageService;
|
|
|
+import com.yijia.station.utils.FeiEPrinterUtil;
|
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.GetMapping;
|
|
@@ -49,6 +50,9 @@ public class StationClassStructureController extends BaseController
|
|
|
private IPayOrderService payOrderService;
|
|
|
@Autowired
|
|
|
private IStationClassesSummaryService stationClassesSummaryService;
|
|
|
+ @Autowired
|
|
|
+ private IStationDeviceManageService stationDeviceManageService;
|
|
|
+
|
|
|
/**
|
|
|
* 查询班结管理列表
|
|
|
*/
|
|
@@ -167,7 +171,7 @@ public class StationClassStructureController extends BaseController
|
|
|
//获取上次班结时间
|
|
|
PayOrder order=new PayOrder();
|
|
|
order.setStationId(stationId);
|
|
|
- order.setStatus("2");
|
|
|
+ order.setStatus("1");
|
|
|
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
beginTime= dateFormat.format(sss.getClassStructureDate());
|
|
|
order.setBeginTime(beginTime);
|
|
@@ -188,6 +192,71 @@ public class StationClassStructureController extends BaseController
|
|
|
stationclass.setConsumerId(payOrder.getConsumerId());
|
|
|
stationclass.setConsumer(payOrder.getConsumer());
|
|
|
stationclass.setAmt(payOrder.getAmt());
|
|
|
+ if(payOrder.getReceivableAmt()!=null){
|
|
|
+ stationclass.setReceivableAmt(payOrder.getReceivableAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setReceivableAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getReceivedAmt()!=null){
|
|
|
+ stationclass.setReceivedAmt(payOrder.getReceivedAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setReceivedAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getDiscountAmt()!=null){
|
|
|
+ stationclass.setDiscountAmt(payOrder.getDiscountAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setDiscountAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getDiscountCouponAmt()!=null){
|
|
|
+ stationclass.setDiscountCouponAmt(payOrder.getDiscountCouponAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setDiscountCouponAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getWxAmt()!=null){
|
|
|
+ stationclass.setWxAmt(payOrder.getWxAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setWxAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getZfbAmt()!=null){
|
|
|
+ stationclass.setZfbAmt(payOrder.getZfbAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setZfbAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getPosAmt()!=null){
|
|
|
+ stationclass.setPosAmt(payOrder.getPosAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setPosAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getXjAmt()!=null){
|
|
|
+ stationclass.setXjAmt(payOrder.getXjAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setXjAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getDidiAppAmt()!=null){
|
|
|
+ stationclass.setDidiAppAmt(payOrder.getDidiAppAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setDidiAppAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getTyAppAmt()!=null){
|
|
|
+ stationclass.setDidiAppAmt(payOrder.getTyAppAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setDidiAppAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getOtherAmt()!=null){
|
|
|
+ stationclass.setOtherAmt(payOrder.getOtherAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setOtherAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getDzkAmt()!=null){
|
|
|
+ stationclass.setDzkAmt(payOrder.getDzkAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setDzkAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(payOrder.getMemberAmt()!=null){
|
|
|
+ stationclass.setMemberAmt(payOrder.getMemberAmt());
|
|
|
+ }else{
|
|
|
+ stationclass.setMemberAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
stationclass.setOrderLiters(payOrder.getOrderLiters());
|
|
|
stationclass.setPayWay(payOrder.getPayWay());
|
|
|
stationclass.setPayType(payOrder.getPayType());
|
|
@@ -233,50 +302,147 @@ public class StationClassStructureController extends BaseController
|
|
|
scs.setClassStructureNo(no);
|
|
|
//汇总班结数据将汇总的数据插入到汇总数据中
|
|
|
StationClassStructure stationclass = stationClassStructureService.selectSummyClassStructure(scs);
|
|
|
- StationClassesSummary stationClassesSummary =new StationClassesSummary();
|
|
|
- stationClassesSummary.setClassesNo(stationclass.getClassStructureNo());
|
|
|
- if(stationclass.getClassStartDate()!=null){
|
|
|
- stationClassesSummary.setStartDate(stationclass.getClassStartDate());
|
|
|
- }
|
|
|
- if(stationclass.getClassStructureDate()!=null){
|
|
|
- stationClassesSummary.setEndDate(stationclass.getClassStructureDate());
|
|
|
- }
|
|
|
+ if(stationclass!=null){
|
|
|
+ StationClassesSummary stationClassesSummary =new StationClassesSummary();
|
|
|
+ stationClassesSummary.setClassesNo(stationclass.getClassStructureNo());
|
|
|
+ if(stationclass.getClassStartDate()!=null){
|
|
|
+ stationClassesSummary.setStartDate(stationclass.getClassStartDate());
|
|
|
+ }
|
|
|
+ if(stationclass.getClassStructureDate()!=null){
|
|
|
+ stationClassesSummary.setEndDate(stationclass.getClassStructureDate());
|
|
|
+ }
|
|
|
|
|
|
- stationClassesSummary.setStationName(stationclass.getStationName());
|
|
|
- if(stationclass.getStationId()!=null){
|
|
|
- stationClassesSummary.setStationId(stationclass.getStationId());
|
|
|
- }
|
|
|
- if(stationclass.getNum()!=null){
|
|
|
- stationClassesSummary.setOrderNum(Long.valueOf(stationclass.getNum()));
|
|
|
- }
|
|
|
- if(stationclass.getPrintNum()!=null){
|
|
|
- stationClassesSummary.setPrintNum(stationclass.getPrintNum());
|
|
|
- }
|
|
|
- if(stationclass.getOrderLiters()!=null){
|
|
|
- stationClassesSummary.setSaleLiters(stationclass.getOrderLiters());
|
|
|
- }
|
|
|
- if(stationclass.getAmt()!=null){
|
|
|
- stationClassesSummary.setSaleAmt(stationclass.getAmt());
|
|
|
- }
|
|
|
- if(stationclass.getDzkAmt()!=null){
|
|
|
- stationClassesSummary.setDzkAmt(stationclass.getDzkAmt());
|
|
|
- }else{
|
|
|
- stationClassesSummary.setDzkAmt(BigDecimal.valueOf(0));
|
|
|
- }
|
|
|
- if(stationclass.getZfbAmt()!=null){
|
|
|
- stationClassesSummary.setZfbAmt(stationclass.getZfbAmt());
|
|
|
- }else{
|
|
|
- stationClassesSummary.setZfbAmt(BigDecimal.valueOf(0));
|
|
|
- }
|
|
|
+ stationClassesSummary.setStationName(stationclass.getStationName());
|
|
|
+ if(stationclass.getStationId()!=null){
|
|
|
+ stationClassesSummary.setStationId(stationclass.getStationId());
|
|
|
+ }
|
|
|
+ if(stationclass.getNum()!=null){
|
|
|
+ stationClassesSummary.setOrderNum(Long.valueOf(stationclass.getNum()));
|
|
|
+ }
|
|
|
+ if(stationclass.getPrintNum()!=null){
|
|
|
+ stationClassesSummary.setPrintNum(stationclass.getPrintNum());
|
|
|
+ }
|
|
|
+ if(stationclass.getOrderLiters()!=null){
|
|
|
+ stationClassesSummary.setSaleLiters(stationclass.getOrderLiters());
|
|
|
+ }
|
|
|
+ if(stationclass.getAmt()!=null){
|
|
|
+ stationClassesSummary.setSaleAmt(stationclass.getAmt());
|
|
|
+ }
|
|
|
+ if(stationclass.getDzkAmt()!=null){
|
|
|
+ stationClassesSummary.setDzkAmt(stationclass.getDzkAmt());
|
|
|
+ }else{
|
|
|
+ stationClassesSummary.setDzkAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if(stationclass.getZfbAmt()!=null){
|
|
|
+ stationClassesSummary.setZfbAmt(stationclass.getZfbAmt());
|
|
|
+ }else{
|
|
|
+ stationClassesSummary.setZfbAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
|
|
|
- if(stationclass.getWxAmt()!=null){
|
|
|
- stationClassesSummary.setWxAmt(stationclass.getWxAmt());
|
|
|
- }else{
|
|
|
- stationClassesSummary.setWxAmt(BigDecimal.valueOf(0));
|
|
|
+ if(stationclass.getWxAmt()!=null){
|
|
|
+ stationClassesSummary.setWxAmt(stationclass.getWxAmt());
|
|
|
+ }else{
|
|
|
+ stationClassesSummary.setWxAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ stationClassesSummary.setClassesMan(stationclass.getClassStructureMan());
|
|
|
+ i=stationClassesSummaryService.insertStationClassesSummary(stationClassesSummary);
|
|
|
}
|
|
|
- stationClassesSummary.setClassesMan(stationclass.getClassStructureMan());
|
|
|
- i=stationClassesSummaryService.insertStationClassesSummary(stationClassesSummary);
|
|
|
+ if(i==1){
|
|
|
+ //班结成功,打印小票
|
|
|
+ //查询班结小票数据
|
|
|
+ StationClassStructure classStructure= new StationClassStructure();
|
|
|
+ classStructure.setClassStructureNo(no);
|
|
|
+ List<StationClassStructure> list= stationClassStructureService.listOilStructure(classStructure);
|
|
|
+ //查询出小票数据
|
|
|
+ String content;
|
|
|
+ DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ content = "<CB>班结小票</CB><BR>";
|
|
|
+ content += "--------------------------------<BR>";
|
|
|
+ if(list!=null && list.size()>0){
|
|
|
+ content += "开始时间:"+dateFormat.format(list.get(0).getClassStartDate())+" <BR>";
|
|
|
+ content += "班结时间:"+dateFormat.format(list.get(0).getClassStructureDate())+" <BR>";
|
|
|
+ content += "油品 升数 金额 单数 优惠 <BR>";
|
|
|
+ content += "--------------------------------<BR>";
|
|
|
|
|
|
+ BigDecimal sumAmt = new BigDecimal(0);
|
|
|
+ BigDecimal liters = new BigDecimal(0);
|
|
|
+ BigDecimal coupon = new BigDecimal(0);
|
|
|
+ BigDecimal ysAmt = new BigDecimal(0);
|
|
|
+ int num = 0;
|
|
|
+ int pageNum=0;
|
|
|
+ for(StationClassStructure str : list){
|
|
|
+ if( str.getOrderLiters()==null){
|
|
|
+ str.setOrderLiters(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ //实收金额
|
|
|
+ if( str.getAmt()==null){
|
|
|
+ str.setAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ //应付金额
|
|
|
+ if( str.getReceivableAmt()==null){
|
|
|
+ str.setReceivableAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if( str.getDiscountCouponAmt()==null){
|
|
|
+ str.setDiscountCouponAmt(BigDecimal.valueOf(0));
|
|
|
+ }
|
|
|
+ if( str.getOrderNo()==null){
|
|
|
+ str.setOrderNo(String.valueOf(0));
|
|
|
+ }
|
|
|
+ content += str.getOilName()+" "+str.getOrderLiters()+" "+str.getAmt()+" "+str.getOrderNo()+" "+str.getDiscountCouponAmt()+ " <BR>";
|
|
|
+ if(str.getAmt()!=null){
|
|
|
+ sumAmt=sumAmt.add(str.getAmt());
|
|
|
+ }
|
|
|
+ if(str.getReceivableAmt()!=null){
|
|
|
+ ysAmt=ysAmt.add(str.getReceivableAmt());
|
|
|
+ }
|
|
|
+ if(str.getOrderLiters()!=null){
|
|
|
+ liters=liters.add(str.getOrderLiters());
|
|
|
+ }
|
|
|
+ if(str.getOrderNo()!=null){
|
|
|
+ num= num+Integer.parseInt(str.getOrderNo());
|
|
|
+ }
|
|
|
+ if(str.getDiscountCouponAmt()!=null){
|
|
|
+ coupon=coupon.add(str.getDiscountCouponAmt());
|
|
|
+ }
|
|
|
+ if(str.getPrintNum()!=null){
|
|
|
+ pageNum += str.getPrintNum();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ content += "--------------------------------<BR>";
|
|
|
+ content += "合计 "+liters+" "+sumAmt+" "+num+" "+coupon+"<BR>";
|
|
|
+ content += "小票张数: "+pageNum+" 张<BR>";
|
|
|
+ content += "班结金额: "+sumAmt+" 元<BR>";
|
|
|
+ content += "优惠总额: "+coupon+" 元<BR>";
|
|
|
+ content += "实际支付: "+ysAmt +" 元<BR>";
|
|
|
+ content += "班结人: "+list.get(0).getClassStructureMan()+"<BR>";
|
|
|
+ }else{
|
|
|
+ content += "开始时间: <BR>";
|
|
|
+ content += "班结时间: <BR>";
|
|
|
+ content += "油站 升数 金额 单数 优惠 <BR>";
|
|
|
+ content += "--------------------------------<BR>";
|
|
|
+ content += "合计 <BR>";
|
|
|
+ content += "小票张数:<BR>";
|
|
|
+ content += "班结金额:<BR>";
|
|
|
+ content += "优惠总额:<BR>";
|
|
|
+ content += "实际支付: <BR>";
|
|
|
+ content += "班结人:<BR>";
|
|
|
+ }
|
|
|
+ content += "<BR>";
|
|
|
+ content += "--------------------------------<BR>";
|
|
|
+ content += "<BR>";
|
|
|
+ //查询打印机信息
|
|
|
+ Map params =new HashMap();
|
|
|
+ params.put("stationId", list.get(0).getStationId());
|
|
|
+ params.put("deviceType", "3");
|
|
|
+ Map mp = stationDeviceManageService.getPrinterSnByStationId(params);
|
|
|
+ System.out.println(mp);
|
|
|
+ if(mp.containsKey("device_no") && mp.get("device_no")!= null && mp.get("device_no")!=""){
|
|
|
+ String sn = mp.get("device_no").toString();
|
|
|
+ FeiEPrinterUtil.printReceipt(sn, content);
|
|
|
+ }else {
|
|
|
+ logger.info("请正确配置打印机");
|
|
|
+ }
|
|
|
+ }
|
|
|
return toAjax(i);
|
|
|
|
|
|
}
|
|
@@ -311,7 +477,7 @@ public class StationClassStructureController extends BaseController
|
|
|
public AjaxResult getAgeClassStructure(StationClassStructure stationClassStructure)
|
|
|
{
|
|
|
stationClassStructure.setStationId(Long.valueOf("1"));
|
|
|
- return AjaxResult.success(stationClassStructureService.selectDistnctClassStructure(stationClassStructure));
|
|
|
+ return AjaxResult.success(stationClassStructureService.selectStationClassStructureMax(stationClassStructure));
|
|
|
}
|
|
|
//初始化数据 根据员工汇总
|
|
|
@PreAuthorize("@ss.hasPermi('station:structure:selectPersonnelStructure')")
|
|
@@ -324,10 +490,9 @@ public class StationClassStructureController extends BaseController
|
|
|
List<StationClassStructure> list = new ArrayList<>();
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
if(structure!=null){
|
|
|
- System.out.println("日期:"+structure.getClassStructureDate());
|
|
|
PayOrder payOrder =new PayOrder();
|
|
|
payOrder.setStationId(structure.getStationId());
|
|
|
- payOrder.setStatus("2");
|
|
|
+ payOrder.setStatus("1");
|
|
|
payOrder.setBeginTime(sdf.format(structure.getClassStructureDate()));
|
|
|
List<PayOrder> payOrderList = payOrderService.selectPersonnelStructure(payOrder);
|
|
|
for(PayOrder order:payOrderList){
|
|
@@ -342,7 +507,7 @@ public class StationClassStructureController extends BaseController
|
|
|
}else{
|
|
|
//根据上次班结时间,和油站去订单表中查询数据,并按照人员汇总数据
|
|
|
PayOrder payOrder =new PayOrder();
|
|
|
- payOrder.setStatus("2");
|
|
|
+ payOrder.setStatus("1");
|
|
|
List<PayOrder> payOrderList = payOrderService.selectPersonnelStructure(payOrder);
|
|
|
for(PayOrder order:payOrderList){
|
|
|
StationClassStructure classStructure =new StationClassStructure();
|
|
@@ -374,7 +539,7 @@ public class StationClassStructureController extends BaseController
|
|
|
//根据上次班结时间,和油站去订单表中查询数据,并按照人员汇总数据
|
|
|
if(structure!=null){
|
|
|
PayOrder payOrder =new PayOrder();
|
|
|
- payOrder.setStatus("2");
|
|
|
+ payOrder.setStatus("1");
|
|
|
payOrder.setStationId(structure.getStationId());
|
|
|
System.out.println("日期:"+structure.getClassStructureDate());
|
|
|
payOrder.setBeginTime(sdf.format(structure.getClassStructureDate()));
|
|
@@ -390,7 +555,7 @@ public class StationClassStructureController extends BaseController
|
|
|
}
|
|
|
}else{
|
|
|
PayOrder payOrder =new PayOrder();
|
|
|
- payOrder.setStatus("2");
|
|
|
+ payOrder.setStatus("1");
|
|
|
List<PayOrder> payOrderList = payOrderService.selectOilStructure(payOrder);
|
|
|
for(PayOrder order:payOrderList){
|
|
|
StationClassStructure classStructure =new StationClassStructure();
|
|
@@ -423,7 +588,7 @@ public class StationClassStructureController extends BaseController
|
|
|
if(structure !=null){
|
|
|
PayOrder payOrder =new PayOrder();
|
|
|
payOrder.setStationId(structure.getStationId());
|
|
|
- payOrder.setStatus("2");
|
|
|
+ payOrder.setStatus("1");
|
|
|
System.out.println("日期:"+structure.getClassStructureDate());
|
|
|
payOrder.setBeginTime(sdf.format(structure.getClassStructureDate()));
|
|
|
List<PayOrder> payOrderList = payOrderService.selectPersonnelPayStructure(payOrder);
|
|
@@ -446,7 +611,7 @@ public class StationClassStructureController extends BaseController
|
|
|
}
|
|
|
}else{
|
|
|
PayOrder payOrder =new PayOrder();
|
|
|
- payOrder.setStatus("2");
|
|
|
+ payOrder.setStatus("1");
|
|
|
List<PayOrder> payOrderList = payOrderService.selectPersonnelPayStructure(payOrder);
|
|
|
for(PayOrder order:payOrderList){
|
|
|
StationClassStructure classStructure =new StationClassStructure();
|