123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- package com.fdkankan.sale.controller;
- import java.math.BigDecimal;
- import java.util.ArrayList;
- import java.util.List;
- import com.alibaba.fastjson.JSONArray;
- import com.fdkankan.sale.entity.PriceList;
- import com.fdkankan.sale.util.StatusUtil;
- import com.fdkankan.sale.vo.response.PriceListExcelVo;
- import com.google.common.collect.Lists;
- import com.fdkankan.sale.common.ResultCode;
- import com.fdkankan.sale.common.ResultData;
- import com.fdkankan.sale.exception.BusinessException;
- import com.fdkankan.sale.service.IRepairService;
- import com.fdkankan.sale.service.impl.RepairInfoService;
- import com.fdkankan.sale.util.MyExcelUtil;
- import com.fdkankan.sale.util.OrderListVo;
- import com.fdkankan.sale.vo.request.RepairInfoListParam;
- import com.fdkankan.sale.vo.response.RepairDetailVo;
- import lombok.Data;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- @RestController
- @RequestMapping("/sale/repairInfo")
- public class RepairInfoController extends BaseController{
- @Autowired
- RepairInfoService repairInfoService;
- @Autowired
- MyExcelUtil excelUtil;
- @GetMapping("/details")
- public ResultData details(@RequestParam(required = false) String repairId){
- if(StringUtils.isBlank(repairId)){
- throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
- }
- return ResultData.ok(repairInfoService.getDetailsByRepairId(repairId));
- }
- @GetMapping("/process")
- public ResultData process(@RequestParam(required = false) String repairId){
- if(StringUtils.isBlank(repairId)){
- throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
- }
- return ResultData.ok(repairInfoService.getProcessByRepairId(repairId));
- }
- @PostMapping("/list")
- public ResultData list(@RequestBody RepairInfoListParam param){
- return ResultData.ok(repairInfoService.pageList(param));
- }
- /**
- * 0 四维时代服务清单(模板)
- * 1 维修服务工作单(模板)
- */
- @GetMapping("/exportExcel")
- public void exportExcel(@RequestParam(required = false) String repairId,
- @RequestParam(required = false) Integer type){
- RepairDetailVo repairDetailVo = repairInfoService.getDetailsByRepairId(repairId);
- OrderListVo vo = new OrderListVo();
- vo.setCompanyName(repairDetailVo.getCustomer().getCompanyName());
- vo.setCustomerName(repairDetailVo.getCustomer().getCustomerName());
- vo.setCustomerPhone(repairDetailVo.getCustomer().getPhone());
- vo.setCustomerAddress(repairDetailVo.getCustomerAddress().getGetAddress());
- vo.setCameraName(StatusUtil.getCameraName(repairDetailVo.getRepairerVo().getCameraType()));
- vo.setCameraSnCode(repairDetailVo.getRepairerVo().getCameraSnCode());
- vo.setSendDate(repairDetailVo.getRepairerVo().getCreateTime());
- vo.setWarrantyType(StatusUtil.getWarrantyType(repairDetailVo.getOrderReceivingVo().getWarrantyType()));
- vo.setFaultMsg(repairDetailVo.getRepairerVo().getFaultMsg());
- vo.setCheckDate(repairDetailVo.getRepairRegisterVo().getCreateTime());
- vo.setOrderFaultMsg(repairDetailVo.getOrderReceivingVo().getOrderFaultMsg());
- vo.setCheckResult(repairDetailVo.getRepairRegisterVo().getCheckResult());
- vo.setCheckImg(JSONArray.toJSONString(repairDetailVo.getRepairRegisterVo().getCheckImg()));
- vo.setSaleName(repairDetailVo.getOrderReceivingVo().getSysUserName());
- vo.setSaleDate(repairDetailVo.getOrderReceivingVo().getCreateTime());
- vo.setRepairMan(repairDetailVo.getRepairRegisterVo().getSysUserName());
- vo.setRepairOverTime(repairDetailVo.getRepairRegisterVo().getOverTime());
- List<PriceList> priceList = repairDetailVo.getPriceList();
- BigDecimal totalAmount = BigDecimal.ZERO;
- List<PriceListExcelVo> excelVos = new ArrayList<>();
- for (PriceList list : priceList) {
- PriceListExcelVo excelVo = new PriceListExcelVo();
- BeanUtils.copyProperties(list,excelVo);
- excelVo.setAmount(list.getPrice().multiply(new BigDecimal(list.getCount())));
- excelVos.add(excelVo);
- totalAmount = totalAmount.add(excelVo.getAmount());
- }
- vo.setTotalCount(totalAmount);
- excelUtil.listFill(response,"四维时代服务清单",vo,excelVos,type);
- }
- }
|