记得上下班打卡 | git大法好,push需谨慎

Commit 4678160a authored by jiangxiulong's avatar jiangxiulong

快递导入

parent 46ba35d6
......@@ -3,10 +3,13 @@ package com.liquidnet.client.admin.web.controller.zhengzai.kylin;
import com.liquidnet.client.admin.common.annotation.Log;
import com.liquidnet.client.admin.common.core.controller.BaseController;
import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.domain.entity.SysUser;
import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.common.enums.BusinessType;
import com.liquidnet.client.admin.common.utils.ShiroUtils;
import com.liquidnet.client.admin.common.utils.poi.ExcelUtil;
import com.liquidnet.client.admin.zhengzai.kylin.dto.OrderExpressExportExcelListDao;
import com.liquidnet.client.admin.zhengzai.kylin.dto.performancesExpressImportVo;
import com.liquidnet.client.admin.zhengzai.kylin.service.impl.PerformancesExpressServiceImpl;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.kylin.dao.OrderExpressExportListDao;
......@@ -20,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.List;
......@@ -343,4 +347,24 @@ public class PerformancesExpressController extends BaseController {
return excelUtil.exportExcel(excelList, "券码数据");
}
/**
* 导入外部快递信息
*/
@Log(title = "快递管理-演出列表", businessType = BusinessType.PRINT)
@RequiresPermissions("kylin:performancesExpress:import")
@PostMapping("/importData")
@ResponseBody
public AjaxResult importData(MultipartFile file, boolean updateSupport) {
try {
ExcelUtil<performancesExpressImportVo> util = new ExcelUtil<performancesExpressImportVo>(performancesExpressImportVo.class);
List<performancesExpressImportVo> expressList = util.importExcel(file.getInputStream());
String operName = ShiroUtils.getSysUser().getLoginName();
String message = performancesExpressServiceImpl.importExpress(expressList, updateSupport, operName);
return AjaxResult.success(message);
} catch (Exception e) {
logger.error("importDataException [e:{}]", e);
return AjaxResult.error(e.getMessage());
}
}
}
......@@ -87,6 +87,9 @@
shiro:hasPermission="kylin:performancesExpress:printExpress">
批量打印
</a>
<a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="kylin:performancesExpress:import">
<i class="fa fa-upload"></i> 导入
</a>
</div>
<div class="col-sm-12 select-table table-bordered">
......
package com.liquidnet.client.admin.zhengzai.kylin.dto;
import com.liquidnet.client.admin.common.annotation.Excel;
import lombok.Data;
@Data
public class performancesExpressImportVo {
@Excel(name = "订单编号", cellType = Excel.ColumnType.STRING)
private String orderCode;
@Excel(name = "运单号", cellType = Excel.ColumnType.STRING)
private String mailno;
@Excel(name = "运费", cellType = Excel.ColumnType.STRING)
private String freightPrice;
@Excel(name = "付款方式", cellType = Excel.ColumnType.NUMERIC)
private Integer payType;
@Excel(name = "快递公司", cellType = Excel.ColumnType.STRING)
private String companyName;
}
......@@ -4,9 +4,14 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.client.admin.common.core.domain.entity.SysUser;
import com.liquidnet.client.admin.common.exception.BusinessException;
import com.liquidnet.client.admin.common.utils.StringUtils;
import com.liquidnet.client.admin.common.utils.security.Md5Utils;
import com.liquidnet.client.admin.zhengzai.admin.service.impl.utils.CodeUtil;
import com.liquidnet.client.admin.zhengzai.admin.service.impl.utils.UploadUtil;
import com.liquidnet.client.admin.zhengzai.admin.service.impl.utils.ZipMultiFileUtil;
import com.liquidnet.client.admin.zhengzai.kylin.dto.performancesExpressImportVo;
import com.liquidnet.client.admin.zhengzai.kylin.utils.DataUtils;
import com.liquidnet.client.admin.zhengzai.kylin.utils.ShunfengSignUtils;
import com.liquidnet.commons.lang.util.*;
......@@ -672,4 +677,52 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
List<PerformancesTicketListDao> list = kylinTicketsMapper.getPerformancesTicketList(performanceId);
return list;
}
public String importExpress(List<performancesExpressImportVo> expressList, boolean updateSupport, String operName) {
if (StringUtils.isNull(expressList) || expressList.size() == 0) {
throw new BusinessException("导入用户数据不能为空!");
}
int successNum = 0;
int failureNum = 0;
StringBuilder successMsg = new StringBuilder();
StringBuilder failureMsg = new StringBuilder();
for (performancesExpressImportVo info : expressList) {
try {
/*// 验证是否存在这个用户
SysUser u = userMapper.selectUserByLoginName(user.getLoginName());
if (StringUtils.isNull(u))
{
user.setPassword(Md5Utils.hash(user.getLoginName() + password));
user.setCreateBy(operName);
this.insertUser(user);
successNum++;
successMsg.append("<br/>" + successNum + "、账号 " + user.getLoginName() + " 导入成功");
}
else if (isUpdateSupport)
{
user.setUpdateBy(operName);
this.updateUser(user);
successNum++;
successMsg.append("<br/>" + successNum + "、账号 " + user.getLoginName() + " 更新成功");
}
else
{
failureNum++;
failureMsg.append("<br/>" + failureNum + "、账号 " + user.getLoginName() + " 已存在");
}*/
} catch (Exception e) {
failureNum++;
// String msg = "<br/>" + failureNum + "、账号 " + user.getLoginName() + " 导入失败:";
// failureMsg.append(msg + e.getMessage());
// log.error(msg, e);
}
}
if (failureNum > 0) {
failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
throw new BusinessException(failureMsg.toString());
} else {
successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:");
}
return successMsg.toString();
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment