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

Commit fb9f5279 authored by jiangxiulong's avatar jiangxiulong

importExpress

parent 4678160a
......@@ -347,6 +347,19 @@ public class PerformancesExpressController extends BaseController {
return excelUtil.exportExcel(excelList, "券码数据");
}
/**
* 下载导入模版
* @return
*/
@RequiresPermissions("kylin:performancesExpress:view")
@GetMapping("/importTemplate")
@ResponseBody
public AjaxResult importTemplate()
{
ExcelUtil<performancesExpressImportVo> util = new ExcelUtil<performancesExpressImportVo>(performancesExpressImportVo.class);
return util.importTemplateExcel("快递信息");
}
/**
* 导入外部快递信息
*/
......@@ -354,12 +367,11 @@ public class PerformancesExpressController extends BaseController {
@RequiresPermissions("kylin:performancesExpress:import")
@PostMapping("/importData")
@ResponseBody
public AjaxResult importData(MultipartFile file, boolean updateSupport) {
public AjaxResult importData(MultipartFile file) {
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);
String message = performancesExpressServiceImpl.importExpress(expressList);
return AjaxResult.success(message);
} catch (Exception e) {
logger.error("importDataException [e:{}]", e);
......
......@@ -87,7 +87,8 @@
shiro:hasPermission="kylin:performancesExpress:printExpress">
批量打印
</a>
<a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="kylin:performancesExpress:import">
<a class="btn btn-info" onclick="$.table.importExcel()"
shiro:hasPermission="kylin:performancesExpress:import">
<i class="fa fa-upload"></i> 导入
</a>
</div>
......@@ -368,6 +369,8 @@
getResultUrl: prefix + "/getResult",
listOrderRouteUrl: prefix + "/listOrderRoute",
generateImageUrl: prefix + "/generateImage",
importUrl: prefix + "/importData",
importTemplateUrl: prefix + "/importTemplate",
columns: [{
checkbox: true
},
......@@ -486,4 +489,20 @@
</script>
</body>
<!-- 导入区域 -->
<script id="importTpl" type="text/template">
<form enctype="multipart/form-data" class="mt20 mb10">
<div class="col-xs-offset-1">
<input type="file" id="file" name="file"/>
<div class="mt10 pt5">
&nbsp; <a onclick="$.table.importTemplate()" class="btn btn-default btn-xs"><i class="fa fa-file-excel-o"></i> 下载模板</a>
</div>
<font color="red" class="pull-left mt10">
提示:仅允许导入“xls”或“xlsx”格式文件!
</font>
</div>
</form>
</script>
</html>
\ No newline at end of file
......@@ -678,7 +678,7 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
return list;
}
public String importExpress(List<performancesExpressImportVo> expressList, boolean updateSupport, String operName) {
public String importExpress(List<performancesExpressImportVo> expressList) {
if (StringUtils.isNull(expressList) || expressList.size() == 0) {
throw new BusinessException("导入用户数据不能为空!");
}
......@@ -688,33 +688,40 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
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() + " 已存在");
}*/
KylinOrderTickets orderInfo = kylinOrderTicketsMapper.selectOne(
Wrappers.lambdaQuery(KylinOrderTickets.class)
.eq(KylinOrderTickets::getOrderCode, info.getOrderCode())
.select(KylinOrderTickets::getOrderTicketsId)
);
KylinOrderTicketRelations relations = kylinOrderTicketRelationsMapper.selectOne(
Wrappers.lambdaQuery(KylinOrderTicketRelations.class)
.eq(KylinOrderTicketRelations::getOrderId, orderInfo.getOrderTicketsId())
.select(KylinOrderTicketRelations::getPerformanceId)
);
// 生成快递单 防止因失败没办法再次发起也不能主动获取数据
KylinOrderExpress kylinOrderExpressPre = new KylinOrderExpress();
String orderExpressId = IDGenerator.nextSnowId();
kylinOrderExpressPre.setExpressStatus(30);
kylinOrderExpressPre.setOrderExpressId(orderExpressId);
kylinOrderExpressPre.setOrderTicketsId(orderInfo.getOrderTicketsId());
String OrderExpressCode = "NOW" + orderExpressId;
kylinOrderExpressPre.setOrderExpressCode(OrderExpressCode);
kylinOrderExpressPre.setCreatedAt(DateUtil.getNowTime());
kylinOrderExpressPre.setPerformancesId(relations.getPerformanceId());
kylinOrderExpressPre.setMailno(info.getMailno());
kylinOrderExpressMapper.insert(kylinOrderExpressPre);
KylinOrderExpressVo kylinOrderExpressVo = new KylinOrderExpressVo();
BeanUtils.copyProperties(kylinOrderExpressPre, kylinOrderExpressVo);
dataUtils.setOrderExpressInfo(orderInfo.getOrderTicketsId(), kylinOrderExpressVo);
successNum++;
successMsg.append("<br/>" + successNum + "、订单编号 " + info.getOrderCode() + " 导入成功");
} catch (Exception e) {
failureNum++;
// String msg = "<br/>" + failureNum + "、账号 " + user.getLoginName() + " 导入失败:";
// failureMsg.append(msg + e.getMessage());
// log.error(msg, e);
String msg = "<br/>" + failureNum + "、订单编号 " + info.getOrderCode() + " 导入失败:";
failureMsg.append(msg + e.getMessage());
log.error(msg, e);
}
}
if (failureNum > 0) {
......
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