|
@@ -17,19 +17,12 @@ import vip.xiaonuo.hr.modular.basedepartment.entity.HrBaseDepartment;
|
|
|
import vip.xiaonuo.hr.modular.basedepartment.service.HrBaseDepartmentService;
|
|
|
import vip.xiaonuo.hr.modular.baseemployeeinfo.entity.HrBaseEmployeeInfo;
|
|
|
import vip.xiaonuo.hr.modular.baseemployeeinfo.service.HrBaseEmployeeInfoService;
|
|
|
-import vip.xiaonuo.importData.entity.BalanceData;
|
|
|
-import vip.xiaonuo.importData.entity.HrData;
|
|
|
-import vip.xiaonuo.importData.entity.MoneyData;
|
|
|
-import vip.xiaonuo.importData.entity.OverdueData;
|
|
|
+import vip.xiaonuo.importData.entity.*;
|
|
|
import vip.xiaonuo.importData.service.ImportData;
|
|
|
import vip.xiaonuo.importData.utils.ExcelImportSheet;
|
|
|
-import vip.xiaonuo.money.entity.MoneyBusiness;
|
|
|
-import vip.xiaonuo.money.entity.MoneyCost;
|
|
|
-import vip.xiaonuo.money.entity.MoneyWriteOverdue;
|
|
|
+import vip.xiaonuo.money.entity.*;
|
|
|
import vip.xiaonuo.money.entity.vo.MoneyVo;
|
|
|
-import vip.xiaonuo.money.mapper.MoneyBusinessMapper;
|
|
|
-import vip.xiaonuo.money.mapper.MoneyCostMapper;
|
|
|
-import vip.xiaonuo.money.mapper.MoneyWriteOverdueMapper;
|
|
|
+import vip.xiaonuo.money.mapper.*;
|
|
|
import vip.xiaonuo.sys.modular.org.entity.SysOrg;
|
|
|
import vip.xiaonuo.sys.modular.org.mapper.SysOrgMapper;
|
|
|
|
|
@@ -56,6 +49,11 @@ public class ImportDataImpl implements ImportData {
|
|
|
private MoneyWriteOverdueMapper overdueMapper;
|
|
|
@Autowired
|
|
|
private MoneyBusinessMapper businessMapper;
|
|
|
+ @Autowired
|
|
|
+ private MoneyBorrowWarningMapper moneyBorrowWarningMapper;
|
|
|
+ @Autowired
|
|
|
+ private MoneyProduce0422Mapper moneyProduce0422Mapper;
|
|
|
+
|
|
|
|
|
|
@Override
|
|
|
@Transactional
|
|
@@ -260,13 +258,23 @@ public class ImportDataImpl implements ImportData {
|
|
|
public CommonResult importOverdue(HttpServletRequest httpServletRequest, String orgId, MultipartFile files) {
|
|
|
Map<String , String> map = new HashMap<>();
|
|
|
//表头与键值对的映射关系
|
|
|
- map.put("单据编号" , "documentNumber");
|
|
|
- map.put("单据类型" , "documentType");
|
|
|
- map.put("单据状态" , "documentStatus");
|
|
|
- map.put("客户" , "userName");
|
|
|
- map.put("创建时间" , "createTime");
|
|
|
- map.put("到期日" , "endTime");
|
|
|
- map.put("逾期金额" , "money");
|
|
|
+// map.put("单据编号" , "documentNumber");
|
|
|
+// map.put("单据类型" , "documentType");
|
|
|
+// map.put("单据状态" , "documentStatus");
|
|
|
+//
|
|
|
+// map.put("创建时间" , "createTime");
|
|
|
+// map.put("到期日" , "endTime");
|
|
|
+// map.put("逾期金额" , "money");
|
|
|
+
|
|
|
+ map.put("客户名称" , "userName");
|
|
|
+ map.put("币种" , "bz");
|
|
|
+ map.put("原币金额" , "ybje");
|
|
|
+ map.put("折人民币金额" , "rmbje");
|
|
|
+ map.put("销售日期" , "xsrq");
|
|
|
+ map.put("收款期限" , "skqx");
|
|
|
+ map.put("到期日期" , "endTime");
|
|
|
+ map.put("逾期天数" , "yqts");
|
|
|
+ map.put("合同号" , "documentNumber");
|
|
|
|
|
|
|
|
|
// SysOrg org = orgMapper.selectOne(new QueryWrapper<SysOrg>().eq("id", orgId));
|
|
@@ -280,17 +288,26 @@ public class ImportDataImpl implements ImportData {
|
|
|
Sheet sheet = workbook.getSheetAt(0);
|
|
|
List<OverdueData> list = ExcelImportSheet.getListFromExcel(sheet , OverdueData.class , map);
|
|
|
for (OverdueData overdueData : list) {
|
|
|
- if (null == overdueData.getCreateTime()) {
|
|
|
- } else {
|
|
|
+ if (StringUtils.isNotBlank( overdueData.getDocumentNumber())) {
|
|
|
MoneyWriteOverdue overdue = new MoneyWriteOverdue();
|
|
|
overdue.setOrgId(orgId);
|
|
|
- overdue.setCreateTime(overdueData.getCreateTime());
|
|
|
- overdue.setDocumentNumber(overdueData.getDocumentNumber());
|
|
|
- overdue.setDocumentType(overdueData.getDocumentType());
|
|
|
- overdue.setDocumentStatus(overdueData.getDocumentStatus());
|
|
|
- overdue.setEndTime(overdueData.getEndTime());
|
|
|
- overdue.setMoney(overdueData.getMoney());
|
|
|
+// overdue.setCreateTime(overdueData.getCreateTime());
|
|
|
+// overdue.setDocumentNumber(overdueData.getDocumentNumber());
|
|
|
+// overdue.setDocumentType(overdueData.getDocumentType());
|
|
|
+// overdue.setDocumentStatus(overdueData.getDocumentStatus());
|
|
|
+// overdue.setEndTime(overdueData.getEndTime());
|
|
|
+// overdue.setMoney(overdueData.getMoney());
|
|
|
+// overdue.setUserName(overdueData.getUserName());
|
|
|
+
|
|
|
overdue.setUserName(overdueData.getUserName());
|
|
|
+ overdue.setBz(overdueData.getBz());
|
|
|
+ overdue.setYbje(overdueData.getYbje());
|
|
|
+ overdue.setRmbje(overdueData.getRmbje());
|
|
|
+ overdue.setXsrq(overdueData.getXsrq());
|
|
|
+ overdue.setSkqx(overdueData.getSkqx());
|
|
|
+ overdue.setEndTime(overdueData.getEndTime());
|
|
|
+ overdue.setYqts(overdueData.getYqts());
|
|
|
+ overdue.setDocumentNumber(overdueData.getDocumentNumber());
|
|
|
overdueMapper.insert(overdue);
|
|
|
}
|
|
|
|
|
@@ -345,4 +362,121 @@ public class ImportDataImpl implements ImportData {
|
|
|
}
|
|
|
return CommonResult.ok();
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public CommonResult importBank(HttpServletRequest httpServletRequest, String orgId, MultipartFile files) {
|
|
|
+ Map<String , String> map = new HashMap<>();
|
|
|
+ //表头与键值对的映射关系
|
|
|
+
|
|
|
+ map.put("借款时间" , "borrowTime");
|
|
|
+ map.put("币种" , "moneyType");
|
|
|
+ map.put("借款金额(万元)" , "borrowPrice");
|
|
|
+ map.put("借款银行" , "bankName");
|
|
|
+ map.put("借款利率(%)" , "bankRank");
|
|
|
+ map.put("借款类型" , "bankType");
|
|
|
+ map.put("还款时间" , "repaymentTime");
|
|
|
+
|
|
|
+ SysOrg org = orgMapper.selectOne(new QueryWrapper<SysOrg>().eq("id", orgId));
|
|
|
+ try(
|
|
|
+ //这里面的对象会自动关闭
|
|
|
+ InputStream in = files.getInputStream();
|
|
|
+ Workbook workbook = ExcelImportSheet.getTypeFromExtends(in , files.getOriginalFilename())
|
|
|
+ ) {
|
|
|
+
|
|
|
+ //根据名称获取单张表对象 也可以使用getSheetAt(int index)获取单张表的对象 获取第一张表
|
|
|
+ Sheet sheet = workbook.getSheetAt(0);
|
|
|
+ List<BankData> list = ExcelImportSheet.getListFromExcel(sheet , BankData.class , map);
|
|
|
+ for (BankData bankData : list) {
|
|
|
+ if (StringUtils.isNotBlank( bankData.getBankName())) {
|
|
|
+ MoneyBorrowWarning moneyBorrowWarning = new MoneyBorrowWarning();
|
|
|
+ moneyBorrowWarning.setOrgId(orgId);
|
|
|
+ moneyBorrowWarning.setCompany(org.getName());
|
|
|
+ moneyBorrowWarning.setMoneyType(bankData.getMoneyType());
|
|
|
+ moneyBorrowWarning.setBorrowPrice(bankData.getBorrowPrice());
|
|
|
+ moneyBorrowWarning.setBorrowTime(bankData.getBorrowTime());
|
|
|
+ moneyBorrowWarning.setBankName(bankData.getBankName());
|
|
|
+ moneyBorrowWarning.setBankRank(bankData.getBankRank());
|
|
|
+ moneyBorrowWarning.setBankType(bankData.getBankType());
|
|
|
+ moneyBorrowWarning.setEndTime(bankData.getEndTime());
|
|
|
+ moneyBorrowWarning.setRepaymentTime(bankData.getRepaymentTime());
|
|
|
+
|
|
|
+ moneyBorrowWarningMapper.insert(moneyBorrowWarning);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return CommonResult.error();
|
|
|
+ }finally {
|
|
|
+ //写着好看的
|
|
|
+ }
|
|
|
+ return CommonResult.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public CommonResult importRemove(HttpServletRequest httpServletRequest, String orgId, MultipartFile files) {
|
|
|
+
|
|
|
+ Map<String , String> map = new HashMap<>();
|
|
|
+ //表头与键值对的映射关系
|
|
|
+ map.put("填报时间" , "createTime");
|
|
|
+ map.put("交易关联方", "customerName");
|
|
|
+ map.put("物料名称" , "materialName");
|
|
|
+ map.put("金额" , "materialAmount");
|
|
|
+
|
|
|
+ SysOrg org = orgMapper.selectOne(new QueryWrapper<SysOrg>().eq("id", orgId));
|
|
|
+ try(
|
|
|
+ //这里面的对象会自动关闭
|
|
|
+ InputStream in = files.getInputStream();
|
|
|
+ Workbook workbook = ExcelImportSheet.getTypeFromExtends(in , files.getOriginalFilename())
|
|
|
+ ) {
|
|
|
+
|
|
|
+ //根据名称获取单张表对象 也可以使用getSheetAt(int index)获取单张表的对象 获取第一张表
|
|
|
+ Sheet sheet = workbook.getSheetAt(0);
|
|
|
+ List<RemoveData> list = ExcelImportSheet.getListFromExcel(sheet , RemoveData.class , map);
|
|
|
+ for (RemoveData bankData : list) {
|
|
|
+ if (StringUtils.isNotBlank( bankData.getMaterialAmount())) {
|
|
|
+ MoneyProduce0422 produce0422= new MoneyProduce0422();
|
|
|
+ produce0422.setOrgId(orgId);
|
|
|
+ produce0422.setCreateTime(bankData.getCreateTime());
|
|
|
+ produce0422.setMaterialName(bankData.getMaterialName());
|
|
|
+ produce0422.setMaterialType(getMaterType(bankData.getMaterialName()));
|
|
|
+ produce0422.setMaterialAmount(String.format("%.2f", Double.parseDouble( bankData.getMaterialAmount()) * -1.0));
|
|
|
+ produce0422.setWriteMoney(bankData.getMaterialAmount());
|
|
|
+ produce0422.setOrgName(org.getName());
|
|
|
+ produce0422.setCustomerName(bankData.getCustomerName());
|
|
|
+ produce0422.setIsWrite(1);
|
|
|
+ moneyProduce0422Mapper.insert(produce0422);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return CommonResult.error();
|
|
|
+ }finally {
|
|
|
+ //写着好看的
|
|
|
+ }
|
|
|
+ return CommonResult.ok();
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private Integer getMaterType(String fname) {
|
|
|
+ if ("NF级胆固醇".equals(fname)){
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ if ("羊毛酸异丙酯".equals(fname)){
|
|
|
+ return 4;
|
|
|
+ }
|
|
|
+ if (fname.contains( "饲料级胆固醇")){
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+ if (fname.contains( "羊毛醇")){
|
|
|
+ return 2;
|
|
|
+ }
|
|
|
+ if (fname.contains( "羊毛酸")){
|
|
|
+ return 3;
|
|
|
+ }
|
|
|
+ return 5;
|
|
|
+ }
|
|
|
}
|