package com.kmall.admin.controller.compared; import java.util.*; import com.kmall.admin.dto.AliPaymentOrderDto; import com.kmall.admin.dto.GoodsDto; import com.kmall.admin.dto.PayOrderDto; import com.kmall.admin.dto.WxPaymentOrderDto; import com.kmall.admin.entity.compared.ImportPayOrderRecordEntity; import com.kmall.admin.entity.compared.PayOrderInfoEntity; import com.kmall.admin.fromcomm.entity.SysUserEntity; import com.kmall.admin.service.compared.ImportPayOrderRecordService; import com.kmall.admin.service.compared.PayOrderInfoService; import com.kmall.admin.utils.ShiroUtils; import com.kmall.common.constant.Dict; import com.kmall.common.constant.JxlsXmlTemplateName; import com.kmall.common.utils.DateUtils; import com.kmall.common.utils.PageUtils; import com.kmall.common.utils.Query; import com.kmall.common.utils.R; import com.kmall.common.utils.excel.ExcelUtil; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; /** * Controller * * @author emato * @email admin@qhdswl.com * @date 2020-11-26 10:16:58 */ @Controller @RequestMapping("payorderinfo") public class PayOrderInfoController { private static String ISO = "iso-8859-1"; private static String UTF = "utf-8"; @Autowired private PayOrderInfoService payOrderInfoService; @Autowired private ExcelUtil excelUtil; @Autowired private ImportPayOrderRecordService importPayOrderRecordService; /** * 查看列表 */ @RequestMapping("/list") // @RequiresPermissions("payorderinfo:list") @ResponseBody public R list(@RequestParam Map params) { //查询列表数据 Query query = new Query(params); List payOrderInfoList = payOrderInfoService.queryList(query); int total = payOrderInfoService.queryTotal(query); PageUtils pageUtil = new PageUtils(payOrderInfoList, total, query.getLimit(), query.getPage()); return R.ok().put("page", pageUtil); } /** * 查看信息 */ @RequestMapping("/info/{mpoiId}") // @RequiresPermissions("payorderinfo:info") @ResponseBody public R info(@PathVariable("mpoiId") Integer mpoiId) { PayOrderInfoEntity payOrderInfo = payOrderInfoService.queryObject(mpoiId); return R.ok().put("payOrderInfo", payOrderInfo); } /** * 保存 */ @RequestMapping("/save") // @RequiresPermissions("payorderinfo:save") @ResponseBody public R save(@RequestBody PayOrderInfoEntity payOrderInfo) { payOrderInfoService.save(payOrderInfo); return R.ok(); } /** * 修改 */ @RequestMapping("/update") // @RequiresPermissions("payorderinfo:update") @ResponseBody public R update(@RequestBody PayOrderInfoEntity payOrderInfo) { payOrderInfoService.update(payOrderInfo); return R.ok(); } /** * 删除 */ @RequestMapping("/delete") // @RequiresPermissions("payorderinfo:delete") @ResponseBody public R delete(@RequestBody Integer[]mpoiIds) { payOrderInfoService.deleteBatch(mpoiIds); return R.ok(); } /** * 查看所有列表 */ @RequestMapping("/queryAll") @ResponseBody public R queryAll(@RequestParam Map params) { List list = payOrderInfoService.queryList(params); return R.ok().put("list", list); } /** * 上传文件 */ @RequestMapping("/uploadAlipayOrder") @ResponseBody public R uploadAlipayOrder(@RequestParam("file") MultipartFile file) { // List payOrderDtoList = new ArrayList<>();// 支付订单信息 List aliPaymentOrderDtoList = new ArrayList<>(); AliPaymentOrderDto aliPaymentOrderDto = new AliPaymentOrderDto(); try { Map beans = new HashMap(); // beans.put("PayOrderDtoList", payOrderDtoList); if (file.isEmpty()) { return R.error("文件不能为空!"); } beans.put("AliPaymentOrderDto", aliPaymentOrderDto); beans.put("AliPaymentOrderDtoList", aliPaymentOrderDtoList); excelUtil.readExcel(JxlsXmlTemplateName.ALI_PAYMENT_ORDER_DTO_List, beans, file.getInputStream()); // excelUtil.readExcel(JxlsXmlTemplateName.ALIPAY_PAY_ORDER_DTO_LIST, beans, file.getInputStream()); } catch (Exception e) { e.printStackTrace(); return R.error("导入失败!"); } if(aliPaymentOrderDtoList == null || aliPaymentOrderDtoList.size() == 0){ return R.error("报表格式有误"); } try { saveRecord(file); } catch (Exception e) { e.printStackTrace(); } // payOrderInfoService.uploadExcel(payOrderDtoList,Dict.payFlag.item_alipay.getItem()); payOrderInfoService.uploadExceAli(aliPaymentOrderDtoList,Dict.payFlag.item_alipay.getItem()); //上传文件 return R.ok(); } private void saveRecord(MultipartFile file) { SysUserEntity user = ShiroUtils.getUserEntity(); ImportPayOrderRecordEntity importPayOrderRecordEntity = new ImportPayOrderRecordEntity(); importPayOrderRecordEntity.setImporter(user.getUserId()+""); importPayOrderRecordEntity.setImportTime(new Date()); importPayOrderRecordEntity.setCreaterSn(user.getUserId()+""); importPayOrderRecordEntity.setCreateTime(new Date()); importPayOrderRecordEntity.setImportFileName(file.getOriginalFilename()); importPayOrderRecordService.save(importPayOrderRecordEntity); } @RequestMapping("/uploadWXOrder") @ResponseBody public R uploadWXOrder(@RequestParam("file") MultipartFile file) { // List payOrderDtoList = new ArrayList<>();// 支付订单信息 List wxPaymentOrderDtoList = new ArrayList<>(); try { WxPaymentOrderDto wxPaymentOrderDto = new WxPaymentOrderDto(); Map beans = new HashMap(); // beans.put("PayOrderDtoList", payOrderDtoList); beans.put("WxPaymentOrderDto", wxPaymentOrderDto); beans.put("WxPaymentOrderDtoList", wxPaymentOrderDtoList); if (file.isEmpty()) { return R.error("文件不能为空!"); } // excelUtil.readExcel(JxlsXmlTemplateName.WX_PAY_ORDER_DTO_LIST, beans, file.getInputStream()); excelUtil.readExcel(JxlsXmlTemplateName.WX_PAYMENT_ORDER_DTO_List, beans, file.getInputStream()); } catch (Exception e) { e.printStackTrace(); return R.error("导入失败!"); } if(wxPaymentOrderDtoList == null || wxPaymentOrderDtoList.size() == 0){ return R.error("报表格式有误"); } try { saveRecord(file); } catch (Exception e) { e.printStackTrace(); } // payOrderInfoService.uploadExcel(payOrderDtoList,Dict.payFlag.item_weixin.getItem()); payOrderInfoService.uploadExceWx(wxPaymentOrderDtoList,Dict.payFlag.item_weixin.getItem()); //上传文件 return R.ok(); } @RequestMapping("/comparedTime/{comparedDate}") @ResponseBody public R comparedTime( @PathVariable("comparedDate") String comparedDate) { if(org.apache.commons.lang.StringUtils.isNotEmpty(comparedDate)) { try { comparedDate = new String(comparedDate.getBytes(ISO), UTF); } catch (Exception e) { e.printStackTrace(); } comparedDate = DateUtils.getDate(comparedDate); } try { String returnMsg = payOrderInfoService.comparedTime(comparedDate); return R.ok().put("msg",returnMsg); } catch (Exception e) { e.printStackTrace(); return R.error(e.getMessage()); } } }