| | |
| | | |
| | | import cc.mrbird.febs.common.annotation.ControllerEndpoint; |
| | | import cc.mrbird.febs.common.controller.BaseController; |
| | | import cc.mrbird.febs.common.entity.DeptTree; |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | | import cc.mrbird.febs.common.entity.QueryRequest; |
| | | import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; |
| | | import cc.mrbird.febs.common.enumerates.OrderDeliveryStateEnum; |
| | | import cc.mrbird.febs.common.enumerates.OrderStatusEnum; |
| | | import cc.mrbird.febs.common.exception.FebsException; |
| | | import cc.mrbird.febs.common.utils.FebsUtil; |
| | | import cc.mrbird.febs.common.utils.RedisUtils; |
| | | import cc.mrbird.febs.common.utils.SpringContextHolder; |
| | | import cc.mrbird.febs.common.utils.excl.ExcelSheetPO; |
| | | import cc.mrbird.febs.common.utils.excl.ExcelUtil; |
| | |
| | | import cc.mrbird.febs.common.utils.excl.ResponseHeadUtil; |
| | | import cc.mrbird.febs.mall.dto.*; |
| | | import cc.mrbird.febs.mall.entity.*; |
| | | import cc.mrbird.febs.mall.mapper.*; |
| | | import cc.mrbird.febs.mall.service.IAdminMallGoodsService; |
| | | import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; |
| | | import cc.mrbird.febs.mall.mapper.MallMemberMapper; |
| | | import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper; |
| | | import cc.mrbird.febs.mall.mapper.MallTeamLeaderMapper; |
| | | import cc.mrbird.febs.mall.service.IAdminMallOrderService; |
| | | import cc.mrbird.febs.mall.service.IApiMallTeamLeaderService; |
| | | import cc.mrbird.febs.mall.service.MallInvoiceService; |
| | | import cc.mrbird.febs.mall.vo.AdminAddAddressTreeVo; |
| | | import cc.mrbird.febs.mall.vo.AdminMallOrderRefundAddressVo; |
| | | import cc.mrbird.febs.pay.model.OrderStateDto; |
| | | import cc.mrbird.febs.pay.service.IXcxPayService; |
| | | import cc.mrbird.febs.pay.util.WechatConfigure; |
| | | import cc.mrbird.febs.system.entity.Dept; |
| | | import cc.mrbird.febs.system.entity.User; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.date.DateTime; |
| | | import cn.hutool.core.date.DateUtil; |
| | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import javax.validation.Valid; |
| | | import javax.validation.constraints.NotNull; |
| | | import java.io.*; |
| | | import java.io.File; |
| | | import java.io.IOException; |
| | | import java.io.OutputStream; |
| | | import java.net.URLEncoder; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | |
| | | private final MallTeamLeaderMapper mallTeamLeaderMapper; |
| | | private final MallMemberMapper mallMemberMapper; |
| | | private final DataDictionaryCustomMapper dataDictionaryCustomMapper; |
| | | private final RedisUtils redisUtils; |
| | | |
| | | private final IApiMallTeamLeaderService apiMallTeamLeaderService; |
| | | |
| | | |
| | | |
| | |
| | | @ControllerEndpoint(operation = "订单列表-发货", exceptionMessage = "操作失败") |
| | | public FebsResponse deliverGoods(@Valid DeliverGoodsDto deliverGoodsDto) { |
| | | return adminMallOrderService.deliverGoods(deliverGoodsDto); |
| | | } |
| | | |
| | | /** |
| | | * 订单列表-修改物流编号 |
| | | */ |
| | | @PostMapping("deliverGoodsUpdate") |
| | | @ControllerEndpoint(operation = "订单列表-修改物流编号", exceptionMessage = "操作失败") |
| | | public FebsResponse deliverGoodsUpdate(@Valid DeliverGoodsDto deliverGoodsDto) { |
| | | return adminMallOrderService.deliverGoodsUpdate(deliverGoodsDto); |
| | | } |
| | | |
| | | /** |
| | |
| | | @ControllerEndpoint(operation = "订单退款-拒绝", exceptionMessage = "操作失败") |
| | | public FebsResponse disagreeRefund(@NotNull(message = "{required}") @PathVariable Long id) { |
| | | return adminMallOrderService.disagreeRefund(id); |
| | | } |
| | | |
| | | /** |
| | | * 退款操作 |
| | | * @return |
| | | */ |
| | | @PostMapping(value = "/refundOperation") |
| | | @ControllerEndpoint(operation = "订单退款", exceptionMessage = "操作失败") |
| | | public FebsResponse refundOperation(ApiLeaderRefundOrderDto apiLeaderRefundOrderDto) { |
| | | apiLeaderRefundOrderDto.setAgreeType(2); |
| | | return apiMallTeamLeaderService.leaderRefundOrder(apiLeaderRefundOrderDto); |
| | | } |
| | | |
| | | /** |
| | |
| | | String title = "订单列表"; |
| | | orderSheet.setSheetName(title); |
| | | orderSheet.setTitle(title); |
| | | String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品名称", "订单状态", "物流单号", "物流公司", "物流公司码"}; |
| | | // String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品名称", "订单状态", "物流单号", "物流公司", "物流公司码"}; |
| | | // String[] header = {"订单编号", "订单金额", "下单时间", "配送方式", "收货姓名", "收货电话", "收货地址", "商品详情", "物流单号", "物流公司", "物流公司码"}; |
| | | // String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "物流单号", "物流公司", "物流公司码"}; |
| | | String[] header = {"订单编号", "收货姓名", "收货电话", "收货地址", "商品详情", "备注", "物流单号", "物流公司", "物流公司码"}; |
| | | orderSheet.setHeaders(header); |
| | | |
| | | QueryRequest request = new QueryRequest(); |
| | | request.setPageNum(1); |
| | | request.setPageSize(9999); |
| | | List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords(); |
| | | List<MallOrderInfo> dataList = new ArrayList<>(); |
| | | String orderIds = mallOrderInfo.getOrderIds(); |
| | | List<String> ids = StrUtil.splitTrim(orderIds, ","); |
| | | for(String id : ids){ |
| | | long orderId = Long.parseLong(id); |
| | | MallOrderInfo mallOrderInfo1 = mallOrderInfoMapper.selectAllOrderInfoByIdAndTakeUniqueCode(orderId,mallOrderInfo.getTakeUniqueCode()); |
| | | if(ObjectUtil.isNotEmpty(mallOrderInfo1)){ |
| | | dataList.add(mallOrderInfo1); |
| | | } |
| | | } |
| | | // List<MallOrderInfo> dataList = adminMallOrderService.findOrderListInPage(mallOrderInfo, request).getRecords(); |
| | | List<List<Object>> list = new ArrayList<>(); |
| | | if (dataList.size() > 0) { |
| | | for (MallOrderInfo item : dataList) { |
| | | List<Object> temp = new ArrayList<>(); |
| | | temp.add(item.getOrderNo()); |
| | | temp.add(item.getAmount()); |
| | | temp.add(DateUtil.format(item.getOrderTime(), "yyyy-MM-dd HH:mm:ss")); |
| | | temp.add("快递配送"); |
| | | // temp.add(item.getAmount()); |
| | | // temp.add(DateUtil.format(item.getOrderTime(), "yyyy-MM-dd HH:mm:ss")); |
| | | // temp.add("快递配送"); |
| | | temp.add(item.getName()); |
| | | temp.add(item.getPhone()); |
| | | temp.add(item.getAddress()); |
| | |
| | | |
| | | for (MallOrderItem itemItem : item.getItems()) { |
| | | if (StrUtil.isNotBlank(sb)) { |
| | | sb.append(";" + itemItem.getGoodsName() + "*" + itemItem.getCnt()); |
| | | sb.append(";" + itemItem.getGoodsName()+"-"+itemItem.getSkuName() + "*" + itemItem.getCnt()); |
| | | } else { |
| | | sb.append(itemItem.getGoodsName() + "*" + itemItem.getCnt()); |
| | | sb.append(itemItem.getGoodsName()+"-"+itemItem.getSkuName() + "*" + itemItem.getCnt()); |
| | | } |
| | | } |
| | | temp.add(sb.toString()); |
| | |
| | | temp.add(""); |
| | | } |
| | | |
| | | temp.add(item.getStatus()); |
| | | temp.add(item.getRemark()); |
| | | // temp.add(item.getStatus()); |
| | | list.add(temp); |
| | | } |
| | | } |
| | |
| | | mallOrderInfo.setDeliveryState(OrderDeliveryStateEnum.DELIVERY_FINISH.getValue()); |
| | | mallOrderInfoMapper.updateById(mallOrderInfo); |
| | | |
| | | OrderStateDto orderStateDto = new OrderStateDto(); |
| | | String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId()); |
| | | orderStateDto.setGoodsName(StrUtil.sub(productNames,0,15)+"..."); |
| | | String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); |
| | | MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); |
| | | orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); |
| | | orderStateDto.setDetailAddress(StrUtil.sub(mallTeamLeader.getDetailAddress(),0,20)+"..."); |
| | | orderStateDto.setRemark("果蔬等生鲜,请尽快取货"); |
| | | orderStateDto.setLeaderPhone(mallTeamLeader.getPhone()); |
| | | orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId()); |
| | | DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getCode()); |
| | | orderStateDto.setTemplateId(dataDictionaryCustom.getValue()); |
| | | iXcxPayService.pushOrderToAddress(orderStateDto); |
| | | // OrderStateDto orderStateDto = new OrderStateDto(); |
| | | // String productNames = getProductNames(mallOrderInfo.getMemberId(), mallOrderInfo.getId()); |
| | | // orderStateDto.setGoodsName(StrUtil.sub(productNames,0,15)+"..."); |
| | | // String takeUniqueCode = mallOrderInfo.getTakeUniqueCode(); |
| | | // MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(takeUniqueCode); |
| | | // orderStateDto.setAddressArea(mallTeamLeader.getAddressArea()); |
| | | // orderStateDto.setDetailAddress(StrUtil.sub(mallTeamLeader.getDetailAddress(),0,20)+"..."); |
| | | // orderStateDto.setRemark("果蔬等生鲜,请尽快取货"); |
| | | // orderStateDto.setLeaderPhone(mallTeamLeader.getPhone()); |
| | | // orderStateDto.setOpenId(mallMemberMapper.selectById(mallOrderInfo.getMemberId()).getOpenId()); |
| | | // DataDictionaryCustom dataDictionaryCustom = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getType(), DataDictionaryEnum.WX_TEMPLATE_ID_THREE.getCode()); |
| | | // orderStateDto.setTemplateId(dataDictionaryCustom.getValue()); |
| | | // iXcxPayService.pushOrderToAddress(orderStateDto); |
| | | // iXcxPayService.uniformMessageSend(orderStateDto); |
| | | } |
| | | return new FebsResponse().success(); |
| | |
| | | for(String id : ids){ |
| | | long orderId = Long.parseLong(id); |
| | | MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectByIdAndTakeUniqueCode(orderId,mallOrderInfoDto.getTakeUniqueCode()); |
| | | if(ObjectUtil.isEmpty(mallOrderInfo)){ |
| | | return new FebsResponse().fail().message("请确认订单是否属于该团长"); |
| | | } |
| | | // if(ObjectUtil.isEmpty(mallOrderInfo)){ |
| | | // return new FebsResponse().fail().message("请确认订单是否属于该团长"); |
| | | // } |
| | | Integer status = mallOrderInfo.getStatus() == null ? 0 : mallOrderInfo.getStatus(); |
| | | Integer deliveryState = mallOrderInfo.getDeliveryState() == null ? 0 : mallOrderInfo.getDeliveryState(); |
| | | if(OrderStatusEnum.WAIT_SHIPPING.getValue() != status){ |
| | |
| | | } |
| | | |
| | | String fileName = file.getOriginalFilename(); |
| | | String dirPath = "/Users/helius/Documents/"; |
| | | String dirPath = "/home/javaweb/webresource/blnka/"; |
| | | |
| | | File saveFile = new File(new File(dirPath).getAbsolutePath() + File.separator + fileName); |
| | | if (!saveFile.exists()) { |
| | |
| | | if (parentId == null) { |
| | | ViewMallOrderController.orderIdsStr = ""; |
| | | } |
| | | long[] longs = StrUtil.splitToLong(ViewMallOrderController.orderIdsStr, ','); |
| | | String existToken = redisUtils.getString("ADMIN_GOODS_CNT"); |
| | | long[] longs = StrUtil.splitToLong(existToken, ','); |
| | | mallOrderItem.setOrderIdsStr(longs); |
| | | Map<String, Object> data = getDataTable(adminMallOrderService.goodsStatistics(mallOrderItem,request)); |
| | | return new FebsResponse().success().data(data); |
| | | } |
| | | |
| | | |
| | | private final MallInvoiceService mallInvoiceService; |
| | | /** |
| | | * 发票列表 |
| | | * @param mallInvoiceDto |
| | | * @param request |
| | | * @return |
| | | */ |
| | | @GetMapping("invoiceList") |
| | | public FebsResponse invoiceList(AdminMallInvoiceDto mallInvoiceDto, QueryRequest request) { |
| | | Map<String, Object> data = getDataTable(mallInvoiceService.getInvoiceList(mallInvoiceDto, request)); |
| | | return new FebsResponse().success().data(data); |
| | | } |
| | | |
| | | /** |
| | | * 发票列表-订单子表 |
| | | */ |
| | | @GetMapping(value = "/invoiceItemList") |
| | | public FebsResponse invoiceItemList() { |
| | | return new FebsResponse().success().data(mallInvoiceService.invoiceItemList()); |
| | | } |
| | | |
| | | /** |
| | | * 发票列表-上传发票 |
| | | */ |
| | | @PostMapping("addInvoiceUrl") |
| | | @ControllerEndpoint(operation = " 发票列表-上传发票", exceptionMessage = "操作失败") |
| | | public FebsResponse addInvoiceUrl(@Valid MallInvoice mallInvoice) { |
| | | return mallInvoiceService.addInvoiceUrl(mallInvoice); |
| | | } |
| | | |
| | | /** |
| | | * 发票列表-更新抬头 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @GetMapping("updateInvoiceDetail/{id}") |
| | | @ControllerEndpoint(operation = "发票列表-更新抬头", exceptionMessage = "操作失败") |
| | | public FebsResponse updateInvoiceDetail(@NotNull(message = "{required}") @PathVariable Long id) { |
| | | return mallInvoiceService.updateInvoiceDetail(id); |
| | | } |
| | | |
| | | /** |
| | | * 发票列表-更新订单状态 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @GetMapping("updateOrderDetail/{id}") |
| | | @ControllerEndpoint(operation = "发票列表-更新订单状态", exceptionMessage = "操作失败") |
| | | public FebsResponse updateOrderDetail(@NotNull(message = "{required}") @PathVariable Long id) { |
| | | return mallInvoiceService.updateOrderDetail(id); |
| | | } |
| | | |
| | | } |