From 83438cb4716784fd0a05604b5630d498b1614e38 Mon Sep 17 00:00:00 2001 From: 17602169347 Date: Tue, 7 Mar 2023 17:34:22 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=87=E8=B4=AD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/jnpf/filter/WebFilterConfig.java | 2 + .../controller/InvoicesController.java | 109 ++- .../invoices/entity/InvoicesItem0Entity.java | 10 + .../model/invoices/InvoicesItem0Model.java | 3 + .../service/InvoicesItem0Service.java | 12 +- .../impl/InvoicesItem0ServiceImpl.java | 74 +++ .../payment/controller/PaymentController.java | 14 +- .../jnpf/payment/entity/PaymentEntity.java | 4 + .../payment/model/payment/PaymentCrForm.java | 5 + .../payment/model/payment/PaymentInfoVO.java | 4 + .../payment/model/payment/PaymentListVO.java | 4 +- .../payment/model/payment/PaymentUpForm.java | 4 + .../service/impl/PaymentServiceImpl.java | 2 +- .../controller/PoundlistController.java | 21 - .../poundlist/mapper/PoundlistMapper.java | 4 +- .../model/poundlist/PoundlistPagination.java | 4 + .../service/impl/PoundlistServiceImpl.java | 121 +--- .../controller/PurchaseorderController.java | 626 ++++++++++-------- .../entity/PurchaseorderitemEntity.java | 5 + .../service/PurchaseorderitemService.java | 2 + .../controller/ReceiptinController.java | 19 +- .../main/resources/mapper/PoundlistMapper.xml | 22 - .../mapper/poundlist/PoundlistMapper.xml | 56 ++ SC-web/src/api/scm/invoices.js | 25 + SC-web/src/api/scm/purchaseorder.js | 25 + SC-web/src/views/extend/order/Detail.vue | 2 +- .../scm/basicInformation/invoices/Detail.vue | 63 +- .../scm/basicInformation/invoices/Form.vue | 161 +++-- .../scm/basicInformation/invoices/index.vue | 53 +- .../scm/basicInformation/payment/Detail.vue | 10 + .../scm/basicInformation/payment/Form.vue | 30 +- .../scm/basicInformation/payment/index.vue | 2 +- .../paymentdoc/paymentForm.vue | 60 +- .../scm/basicInformation/poundlist/Detail.vue | 34 +- .../scm/basicInformation/poundlist/Form.vue | 40 +- .../scm/basicInformation/poundlist/index.vue | 151 +++-- .../purchaseorder/ImportForm.vue | 247 +++++++ .../purchaseorder/InvoicesForm.vue | 61 +- .../purchaseorder/PurchaseorderImportForm.vue | 299 +++++++++ .../basicInformation/purchaseorder/index.vue | 99 ++- .../scm/basicInformation/receiptin/index.vue | 59 +- .../basicInformation/tradeupload/Detail.vue | 54 +- .../scm/basicInformation/tradeupload/Form.vue | 54 +- .../basicInformation/tradeupload/Form2.vue | 50 +- .../basicInformation/tradeupload/index.vue | 77 ++- 45 files changed, 1905 insertions(+), 878 deletions(-) delete mode 100644 SC-boot/linkage-scm/src/main/resources/mapper/PoundlistMapper.xml create mode 100644 SC-web/src/api/scm/invoices.js create mode 100644 SC-web/src/api/scm/purchaseorder.js create mode 100644 SC-web/src/views/scm/basicInformation/purchaseorder/ImportForm.vue create mode 100644 SC-web/src/views/scm/basicInformation/purchaseorder/PurchaseorderImportForm.vue diff --git a/SC-boot/linkage-admin/src/main/java/jnpf/filter/WebFilterConfig.java b/SC-boot/linkage-admin/src/main/java/jnpf/filter/WebFilterConfig.java index ee584192..579a85ac 100644 --- a/SC-boot/linkage-admin/src/main/java/jnpf/filter/WebFilterConfig.java +++ b/SC-boot/linkage-admin/src/main/java/jnpf/filter/WebFilterConfig.java @@ -82,6 +82,8 @@ public class WebFilterConfig implements WebMvcConfigurer { list.add("/api/oauth/getConfig/{account}"); list.add("/error"); list.add("/favicon.ico"); + + list.add("/api/info/exportPdf/**"); return list; } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/controller/InvoicesController.java b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/controller/InvoicesController.java index 88e11ff4..cb173e8c 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/controller/InvoicesController.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/controller/InvoicesController.java @@ -15,6 +15,7 @@ import jnpf.base.UserInfo; import jnpf.base.vo.DownloadVO; import jnpf.config.ConfigValueUtil; import jnpf.exception.DataException; +import jnpf.model.EmployeeModel; import jnpf.poundlist.entity.PoundlistEntity; import jnpf.poundlist.service.PoundlistService; import jnpf.purchaseback.entity.PurchaseorderEntity; @@ -50,10 +51,13 @@ import org.springframework.web.bind.annotation.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; +import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import jnpf.util.GeneraterSwapUtil; + +import java.math.BigDecimal; import java.util.*; import jnpf.util.file.UploadUtil; @@ -160,12 +164,28 @@ public class InvoicesController { purchaseorderEntity.setInvoiceAmount(entity.getInvoiceAmount()); purchaseorderEntity.setInvoiceNum(entity.getInvoiceQuantity()); purchaseorderService.updateById(purchaseorderEntity); - List jg_purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(entity.getPurchaseorderId()); - for (Purchaseorder_item0Entity purchaseorder_item0Entity: jg_purchaseorder_item0List) { - PoundlistEntity poundlistEntity = poundlistService.getById(purchaseorder_item0Entity.getPoundlistId()); - poundlistEntity.setPurchaseStatus("1"); - poundlistEntity.setIsInvoicing("1"); - poundlistService.updateById(poundlistEntity); + List Purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(entity.getPurchaseorderId()); + List poundlistEntityList = purchaseorderitemService.getPoundList(entity.getPurchaseorderId()); + Purchaseorder_item0Entity orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistEntityList.get(0).getId())).findAny().get(); + BigDecimal total = orderItem.getAmount(); + int i = 0; + while (entity.getInvoiceAmount().compareTo(total) >= 0){ + i++; + if(i < poundlistEntityList.size()){ + String poundlistId = poundlistEntityList.get(i).getId(); + orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistId)).findAny().get(); + total = total.add(orderItem.getAmount()); + }else{ + break; + } + } + for (int j = 0;j jg_invoices_item0List = invoicesService.GetInvoicesItem0List(id); List jg_invoices_item0ModelList = JsonUtil.getJsonToList(jg_invoices_item0List,InvoicesItem0Model.class); for(InvoicesItem0Model jg_invoices_item0Model : jg_invoices_item0ModelList){ + jg_invoices_item0Model.setInvoiceAttachment(generaterSwapUtil.getFileNameInJson(jg_invoices_item0Model.getInvoiceAttachment())); } vo.setInvoicesItem0List(jg_invoices_item0ModelList); @@ -423,17 +444,43 @@ public class InvoicesController { invoicesItem0Service.save(entitys); } //更新采购订单状态 - PurchaseorderEntity purchaseorderEntity = purchaseorderService.getById(entity.getPurchaseorderId()); + PurchaseorderEntity purchaseorderEntity = purchaseorderService.getById(subentity.getPurchaseorderId()); purchaseorderEntity.setStatus("1");//开票中 purchaseorderEntity.setInvoiceAmount(subentity.getInvoiceAmount()); purchaseorderEntity.setInvoiceNum(subentity.getInvoiceQuantity()); purchaseorderService.updateById(purchaseorderEntity); - List jg_purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(entity.getPurchaseorderId()); + /*List jg_purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(entity.getPurchaseorderId()); for (Purchaseorder_item0Entity purchaseorder_item0Entity: jg_purchaseorder_item0List) { PoundlistEntity poundlistEntity = poundlistService.getById(purchaseorder_item0Entity.getPoundlistId()); poundlistEntity.setPurchaseStatus("1"); poundlistEntity.setIsInvoicing("1"); poundlistService.updateById(poundlistEntity); + }*/ + List Purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(subentity.getPurchaseorderId()); + List poundlistEntityList = purchaseorderitemService.getPoundList(subentity.getPurchaseorderId()); + Purchaseorder_item0Entity orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistEntityList.get(0).getId())).findAny().get(); + BigDecimal total = orderItem.getAmount(); + int i = 0; + while (entity.getInvoiceAmount().compareTo(total) >= 0){ + i++; + if(i < poundlistEntityList.size()){ + String poundlistId = poundlistEntityList.get(i).getId(); + orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistId)).findAny().get(); + total = total.add(orderItem.getAmount()); + }else{ + break; + } + } + for (int j = 0;j personList = ExcelUtil.importExcel(temporary, 0, 4, InvoicesItem0Entity.class); + //预览数据 + Map map = invoicesItem0Service.importPreview(personList); + return ActionResult.success(map); + } + /** + * 上传文件(excel) + * + * @return + */ + @ApiOperation("上传文件") + @PostMapping("/Uploader") + public ActionResult Uploader() { + List list = UpUtil.getFileAll(); + MultipartFile file = list.get(0); + if (file.getOriginalFilename().endsWith(".xlsx") || file.getOriginalFilename().endsWith(".xls")) { + String filePath = configValueUtil.getTemporaryFilePath(); + String fileName = RandomUtil.uuId() + "." + UpUtil.getFileType(file); + fileName = XSSEscape.escape(fileName); + //上传文件 + FileUtil.upFile(file, filePath, fileName); + DownloadVO vo = DownloadVO.builder().build(); + vo.setName(fileName); + return ActionResult.success(vo); + } else { + return ActionResult.fail("选择文件不符合导入"); + } - - - + } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/entity/InvoicesItem0Entity.java b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/entity/InvoicesItem0Entity.java index 3322d534..53aa9c48 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/entity/InvoicesItem0Entity.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/entity/InvoicesItem0Entity.java @@ -1,5 +1,6 @@ package jnpf.invoices.entity; +import cn.afterturn.easypoi.excel.annotation.Excel; import com.alibaba.fastjson.annotation.JSONField; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; @@ -32,6 +33,7 @@ public class InvoicesItem0Entity { @TableField("CREATOR_USER_ID") private String creatorUserId; + @Excel(name = "购方企业名称") @TableField("CREATOR_USER_NAME") private String creatorUserName; @@ -65,21 +67,27 @@ public class InvoicesItem0Entity { @TableField("DEPARTMENT_ID") private String departmentId; + @Excel(name = "发票代码") @TableField("INVOICE_CODE") private String invoiceCode; + @Excel(name = "发票号码") @TableField("INVOICE_NO") private String invoiceNo; + @Excel(name = "数量") @TableField("INVOICE_QUANTITY") private BigDecimal invoiceQuantity; + @Excel(name = "金额") @TableField("INVOICE_AMOUNT") private BigDecimal invoiceAmount; + @Excel(name = "税率") @TableField("TAX_RATE") private String taxRate; + @Excel(name = "税额") @TableField("TAX_AMOUNT") private BigDecimal taxAmount; @@ -92,6 +100,7 @@ public class InvoicesItem0Entity { @TableField("INVOICE_ATTACHMENT") private String invoiceAttachment; + @Excel(name = "开票日期") @TableField("INVOICING_DATE") private Date invoicingDate; @@ -101,6 +110,7 @@ public class InvoicesItem0Entity { @TableField("INVOICES_ID") private String invoicesId; + @Excel(name = "商品名称") @TableField("MATERIAL_NAME") private String materialName; diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/model/invoices/InvoicesItem0Model.java b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/model/invoices/InvoicesItem0Model.java index cb343ffc..05c1e515 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/model/invoices/InvoicesItem0Model.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/model/invoices/InvoicesItem0Model.java @@ -62,4 +62,7 @@ public class InvoicesItem0Model { @JsonProperty("invoicingDate") private Long invoicingDate; + /** 发票附件 **/ + @JsonProperty("invoiceAttachment") + private String invoiceAttachment; } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/InvoicesItem0Service.java b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/InvoicesItem0Service.java index 168138a6..2cb0eb94 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/InvoicesItem0Service.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/InvoicesItem0Service.java @@ -2,6 +2,10 @@ package jnpf.invoices.service; import jnpf.invoices.entity.InvoicesItem0Entity; import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; +import java.util.Map; + /** * * jg_invoices_item0 @@ -11,5 +15,11 @@ import com.baomidou.mybatisplus.extension.service.IService; * 日期: 2023-02-22 */ public interface InvoicesItem0Service extends IService { - + /** + * 导入预览 + * + * @param personList 实体对象 + * @return + */ + Map importPreview(List personList); } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/impl/InvoicesItem0ServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/impl/InvoicesItem0ServiceImpl.java index 890a6476..1e98ddc9 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/impl/InvoicesItem0ServiceImpl.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/invoices/service/impl/InvoicesItem0ServiceImpl.java @@ -38,4 +38,78 @@ import java.util.*; public class InvoicesItem0ServiceImpl extends ServiceImpl implements InvoicesItem0Service{ + /*@Override + public Map importPreview(List personList) { + return null; + }*/ + + @Override + public Map importPreview(List personList) { + List> dataRow = new ArrayList<>(); + List> columns = new ArrayList<>(); + if(personList != null) { + for (int i = 0; i < personList.size(); i++) { + Map dataRowMap = new HashMap<>(); + InvoicesItem0Entity model = personList.get(i); + dataRowMap.put("materialName", model.getMaterialName()); + dataRowMap.put("invoiceCode", model.getInvoiceCode()); + dataRowMap.put("invoiceNo", model.getInvoiceNo()); + dataRowMap.put("invoiceQuantity", model.getInvoiceQuantity()); + dataRowMap.put("invoiceAmount", model.getInvoiceAmount()); + dataRowMap.put("taxRate", model.getTaxRate()); + dataRowMap.put("taxAmount", model.getTaxAmount()); + dataRowMap.put("amountNotTax", model.getInvoiceAmount().subtract(model.getTaxAmount())); + dataRowMap.put("invoiceStatus", "0"); + dataRowMap.put("creatorUserName", model.getCreatorUserName()); + dataRowMap.put("invoicingDate", model.getInvoicingDate()); + dataRow.add(dataRowMap); + } + for (int i = 1; i < 12; i++) { + Map columnsMap = new HashMap<>(); + columnsMap.put("AllowDBNull", true); + columnsMap.put("AutoIncrement", false); + columnsMap.put("AutoIncrementSeed", 0); + columnsMap.put("AutoIncrementStep", 1); + columnsMap.put("Caption", this.getColumns(i)); + columnsMap.put("ColumnMapping", 1); + columnsMap.put("ColumnName", this.getColumns(i)); + columnsMap.put("Container", null); + columnsMap.put("DataType", "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"); + columnsMap.put("DateTimeMode", 3); + columnsMap.put("DefaultValue", null); + columnsMap.put("DesignMode", false); + columnsMap.put("Expression", ""); + columnsMap.put("ExtendedProperties", ""); + columnsMap.put("MaxLength", -1); + columnsMap.put("Namespace", ""); + columnsMap.put("Ordinal", 0); + columnsMap.put("Prefix", ""); + columnsMap.put("ReadOnly", false); + columnsMap.put("Site", null); + columnsMap.put("Table", personList); + columnsMap.put("Unique", false); + columns.add(columnsMap); + } + } + Map map = new HashMap<>(); + map.put("dataRow", dataRow); + map.put("columns", columns); + return map; + } + + private String getColumns(Integer key) { + Map map = new HashMap<>(); + map.put(1, "物料名称"); + map.put(2, "发票代码"); + map.put(3, "发票号码"); + map.put(4, "发票数量"); + map.put(5, "发票金额"); + map.put(6, "税率"); + map.put(7, "税额"); + map.put(8, "不含税金额"); + map.put(9, "发票状态"); + map.put(10, "开票人"); + map.put(11, "开票日期"); + return map.get(key); + } } \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/payment/controller/PaymentController.java b/SC-boot/linkage-scm/src/main/java/jnpf/payment/controller/PaymentController.java index 983add67..1fd43c41 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/payment/controller/PaymentController.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/payment/controller/PaymentController.java @@ -140,13 +140,7 @@ public class PaymentController { purchaseorderitemEntity.setPayPrice(purchaseorderitemEntity.getPayPrice().add(paymentdocItem0Entity.getAmount())); purchaseorderitemService.updateById(purchaseorderitemEntity); List Purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(purchaseorderitemEntity.getId()); - List poundlistIds = new ArrayList<>(); - for (Purchaseorder_item0Entity purchaseorder_item0Entity: Purchaseorder_item0List) { - poundlistIds.add(purchaseorder_item0Entity.getPoundlistId()); - } - QueryWrapper poundlistQueryWrapper=new QueryWrapper<>(); - poundlistQueryWrapper.lambda().in(PoundlistEntity::getId, poundlistIds).orderByAsc(PoundlistEntity::getPoundDate); - List poundlistEntityList = poundlistService.list(poundlistQueryWrapper); + List poundlistEntityList = purchaseorderitemService.getPoundList(paymentdocItem0Entity.getPurchaseorderId()); Purchaseorder_item0Entity orderItem = Purchaseorder_item0List.stream().filter(item0 -> ObjectUtil.equals(item0.getPoundlistId(), poundlistEntityList.get(0).getId())).findAny().get(); BigDecimal total = orderItem.getAmount(); int i = 0; @@ -179,6 +173,7 @@ public class PaymentController { List list= paymentService.getList(paymentPagination); //处理id字段转名称,若无需转或者为空可删除 for(PaymentEntity entity:list){ + entity.setVoucher(generaterSwapUtil.getFileNameInJson(entity.getVoucher())); } List listVO=JsonUtil.getJsonToList(list,PaymentListVO.class); for(PaymentListVO paymentVO:listVO){ @@ -263,6 +258,7 @@ public class PaymentController { List list= paymentService.getTypeList(paymentPagination,paymentPaginationExportModel.getDataType()); //处理id字段转名称,若无需转或者为空可删除 for(PaymentEntity entity:list){ + entity.setVoucher(generaterSwapUtil.getFileNameInJson(entity.getVoucher())); } List listVO=JsonUtil.getJsonToList(list,PaymentListVO.class); for(PaymentListVO paymentVO:listVO){ @@ -327,6 +323,8 @@ public class PaymentController { case "status" : entitys.add(new ExcelExportEntity("单据状态" ,"status")); break; + case "voucher" : + entitys.add(new ExcelExportEntity("付款凭证" ,"voucher")); default: break; } @@ -444,7 +442,7 @@ public class PaymentController { //附表数据转换 //添加到详情表单对象中 - + vo.setVoucher(generaterSwapUtil.getFileNameInJson(vo.getVoucher())); return ActionResult.success(vo); } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/payment/entity/PaymentEntity.java b/SC-boot/linkage-scm/src/main/java/jnpf/payment/entity/PaymentEntity.java index fd03f309..5981f003 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/payment/entity/PaymentEntity.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/payment/entity/PaymentEntity.java @@ -114,4 +114,8 @@ public class PaymentEntity { @TableField("PAYMENTBANK") private String paymentbank; + @TableField("voucher") + private String voucher; + + } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentCrForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentCrForm.java index 31a9625b..7f834960 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentCrForm.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentCrForm.java @@ -2,6 +2,7 @@ package jnpf.payment.model.payment; +import com.baomidou.mybatisplus.annotation.TableField; import jnpf.payment.model.payment.Payment_item0Model; import lombok.Data; import java.util.List; @@ -80,6 +81,10 @@ public class PaymentCrForm { @JsonProperty("status") private String status; + /** 付款凭证 **/ + @JsonProperty("voucher") + private String voucher; + /** 子表数据 **/ @JsonProperty("payment_item0List") private List payment_item0List; diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentInfoVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentInfoVO.java index 40430926..9e4af6ac 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentInfoVO.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentInfoVO.java @@ -84,6 +84,10 @@ public class PaymentInfoVO{ @JsonProperty("status") private String status; + /** 付款凭证 **/ + @JsonProperty("voucher") + private String voucher; + /** 子表数据 **/ @JsonProperty("payment_item0List") private List payment_item0List; diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentListVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentListVO.java index 5a0e445a..63bef600 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentListVO.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentListVO.java @@ -99,5 +99,7 @@ public class PaymentListVO{ @JsonProperty("status") private String status; - + /** 付款凭证 **/ + @JsonProperty("voucher") + private String voucher; } \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentUpForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentUpForm.java index f4bf0adc..976d522d 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentUpForm.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/payment/model/payment/PaymentUpForm.java @@ -100,6 +100,10 @@ public class PaymentUpForm{ @JsonProperty("status") private String status; + /** 付款凭证 **/ + @JsonProperty("voucher") + private String voucher; + /** 子表数据 **/ @JsonProperty("payment_item0List") private List payment_item0List; diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/payment/service/impl/PaymentServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/payment/service/impl/PaymentServiceImpl.java index 5d9fff59..d04acd84 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/payment/service/impl/PaymentServiceImpl.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/payment/service/impl/PaymentServiceImpl.java @@ -136,7 +136,7 @@ public class PaymentServiceImpl extends ServiceImpl materialIdMap = new HashMap<>(); - entity.setMaterialName(generaterSwapUtil.getPopupSelectValue("381037852907038533","id","item_name",entity.getMaterialId(),materialIdMap)); - Map customerIdMap = new HashMap<>(); - entity.setCustomerName(generaterSwapUtil.getPopupSelectValue("395936123471343749","id","supplier_nm",entity.getCustomerId(),customerIdMap)); - Map salesIdMap = new HashMap<>(); - entity.setSalesName(generaterSwapUtil.getPopupSelectValue("381038993740949317","id","contract_name",entity.getSalesId(),salesIdMap)); - Map vehicleIdMap = new HashMap<>(); - entity.setVehicleName(generaterSwapUtil.getPopupSelectValue("381432451370615173","id","ticketno",entity.getVehicleId(),vehicleIdMap)); entity.setVehiclePictures(generaterSwapUtil.getFileNameInJson(entity.getVehiclePictures())); - Map businessIdMap = new HashMap<>(); - entity.setBusinessName(generaterSwapUtil.getPopupSelectValue("ebcc44be142e43b795c0d769abd6d25a","F_Id","F_RealName",entity.getBusinessId(),businessIdMap)); - Map naturalIdMap = new HashMap<>(); - entity.setNaturalName(generaterSwapUtil.getPopupSelectValue("395933800510599301","id","name",entity.getNaturalId(),naturalIdMap)); - Map purchaseIdMap = new HashMap<>(); - entity.setPurchaseName(generaterSwapUtil.getPopupSelectValue("397408984857931205","id","contract_name",entity.getPurchaseId(),purchaseIdMap)); - Map supplierIdMap = new HashMap<>(); - entity.setSupplierName(generaterSwapUtil.getPopupSelectValue("382494924156735557","id","supplier_name",entity.getSupplierId(),supplierIdMap)); entity.setOriginPlace(generaterSwapUtil.provinceData(entity.getOriginPlace())); - entity.setPurchaseContractNo(generaterSwapUtil.getPopupSelectValue("397408984857931205","id","contract_no",entity.getPurchaseId(),purchaseIdMap)); } List listVO=JsonUtil.getJsonToList(list,PoundlistListVO.class); - for(PoundlistListVO poundlistVO:listVO){ - } - - PageListVO vo=new PageListVO(); vo.setList(listVO); PaginationVO page=JsonUtil.getJsonToBean(poundlistPagination,PaginationVO.class); diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/mapper/PoundlistMapper.java b/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/mapper/PoundlistMapper.java index b3463466..89498cbd 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/mapper/PoundlistMapper.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/mapper/PoundlistMapper.java @@ -7,6 +7,8 @@ import jnpf.poundlist.entity.PoundlistEntity; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import jnpf.poundlist.entity.PoundlistSEntity; import jnpf.poundlist.entity.PoundlistTwoEntity; +import jnpf.poundlist.model.poundlist.PoundlistListVO; +import jnpf.poundlist.model.poundlist.PoundlistPagination; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -21,7 +23,7 @@ import java.util.List; */ public interface PoundlistMapper extends BaseMapper { - IPage queryByKeyword(@Param("page") Page page, @Param("keyword") String keyword); + IPage queryByKeyword(@Param("page") Page page, @Param("poundlistPagination") PoundlistPagination poundlistPagination); //销售毛利表 List qureylist(PoundlistSEntity poundlistSEntity); //废钢采购销售统计明细表(按磅单) diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/model/poundlist/PoundlistPagination.java b/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/model/poundlist/PoundlistPagination.java index bbe53324..d0c26565 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/model/poundlist/PoundlistPagination.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/model/poundlist/PoundlistPagination.java @@ -3,6 +3,8 @@ package jnpf.poundlist.model.poundlist; import lombok.Data; import jnpf.base.Pagination; + +import java.util.Date; import java.util.List; /** @@ -33,6 +35,8 @@ public class PoundlistPagination extends Pagination { private String isPay; private String isCollection; private String isExpense; + private Date startDate; + private Date endDate; /** * 菜单id */ diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/service/impl/PoundlistServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/service/impl/PoundlistServiceImpl.java index fcf9dda0..a215b3f6 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/service/impl/PoundlistServiceImpl.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/poundlist/service/impl/PoundlistServiceImpl.java @@ -8,6 +8,7 @@ import jnpf.materialvo.entity.MaterialEntity; import jnpf.materialvo.service.MaterialService; import jnpf.poundlist.entity.*; import jnpf.poundlist.mapper.PoundlistMapper; +import jnpf.poundlist.model.poundlist.PoundlistListVO; import jnpf.poundlist.service.*; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import jnpf.supplier.entity.SupplierEntity; @@ -104,114 +105,15 @@ public class PoundlistServiceImpl extends ServiceImpl PoundDateList = poundlistPagination.getPoundDate(); Long fir = Long.valueOf(PoundDateList.get(0)); Long sec = Long.valueOf(PoundDateList.get(1)); - - poundlistQueryWrapper.lambda().ge(PoundlistEntity::getPoundDate, new Date(fir)) - .le(PoundlistEntity::getPoundDate, DateUtil.stringToDate(DateUtil.daFormatYmd(sec) + " 23:59:59")); - - } - - if(StringUtil.isNotEmpty(poundlistPagination.getPoundlistNo())){ - poundlistNum++; - poundlistQueryWrapper.lambda().like(PoundlistEntity::getPoundlistNo,poundlistPagination.getPoundlistNo()); - } - if(StringUtil.isNotEmpty(poundlistPagination.getIsInvoicing())){ - poundlistNum++; - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getIsInvoicing,poundlistPagination.getIsInvoicing()); - } - if(StringUtil.isNotEmpty(poundlistPagination.getIsPay())){ - poundlistNum++; - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getIsPay,poundlistPagination.getIsPay()); - } - if(StringUtil.isNotEmpty(poundlistPagination.getIsCollection())){ - poundlistNum++; - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getIsCollection,poundlistPagination.getIsCollection()); - } - if(StringUtil.isNotEmpty(poundlistPagination.getIsExpense())){ - poundlistNum++; - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getIsExpense,poundlistPagination.getIsExpense()); - } - if(StringUtil.isNotEmpty(poundlistPagination.getMaterialName())){ - QueryWrapper materialQueryWrapper =new QueryWrapper<>(); - materialQueryWrapper.lambda().like(MaterialEntity::getItemName, poundlistPagination.getMaterialName()); - materialQueryWrapper.lambda().select(MaterialEntity::getId); - List materialIdList = materialService.listObjs(materialQueryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); - poundlistNum++; - if(materialIdList.size() > 0){ - poundlistQueryWrapper.lambda().in(PoundlistEntity::getMaterialId,materialIdList); - }else{ - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getMaterialId, poundlistPagination.getMaterialName()); - } - } - if(StringUtil.isNotEmpty(poundlistPagination.getVehicleName())){ - QueryWrapper vehicleQueryWrapper =new QueryWrapper<>(); - vehicleQueryWrapper.lambda().like(VehicleEntity::getTicketno, poundlistPagination.getVehicleName()); - vehicleQueryWrapper.lambda().select(VehicleEntity::getId); - List customerIdList = vehicleService.listObjs(vehicleQueryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); - poundlistNum++; - if(customerIdList.size() > 0){ - poundlistQueryWrapper.lambda().in(PoundlistEntity::getVehicleId,customerIdList); - }else{ - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getVehicleId, poundlistPagination.getVehicleName()); - } - } - if(StringUtil.isNotEmpty(poundlistPagination.getPurchaseName())){ - QueryWrapper contractFileQueryWrapper =new QueryWrapper<>(); - contractFileQueryWrapper.lambda().like(ContractFileEntity::getContractName, poundlistPagination.getPurchaseName()); - contractFileQueryWrapper.lambda().select(ContractFileEntity::getId); - List customerIdList = contractFileService.listObjs(contractFileQueryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); - poundlistNum++; - if(customerIdList.size() > 0){ - poundlistQueryWrapper.lambda().in(PoundlistEntity::getPurchaseId,customerIdList); - }else{ - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getPurchaseId, poundlistPagination.getPurchaseName()); - } - } - if(StringUtil.isNotEmpty(poundlistPagination.getSalesName())){ - QueryWrapper contractFileQueryWrapper =new QueryWrapper<>(); - contractFileQueryWrapper.lambda().like(ContractFileEntity::getContractName, poundlistPagination.getSalesName()); - contractFileQueryWrapper.lambda().select(ContractFileEntity::getId); - List customerIdList = contractFileService.listObjs(contractFileQueryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); - poundlistNum++; - if(customerIdList.size() > 0){ - poundlistQueryWrapper.lambda().in(PoundlistEntity::getSalesId,customerIdList); - }else{ - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getSalesId, poundlistPagination.getSalesName()); - } - } - if(StringUtil.isNotEmpty(poundlistPagination.getCustomerName())){ - QueryWrapper customerQueryWrapper =new QueryWrapper<>(); - customerQueryWrapper.lambda().like(CustomerEntity::getSupplierNm, poundlistPagination.getCustomerName()); - customerQueryWrapper.lambda().select(CustomerEntity::getId); - List customerIdList = customerService.listObjs(customerQueryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); - poundlistNum++; - if(customerIdList.size() > 0){ - poundlistQueryWrapper.lambda().in(PoundlistEntity::getCustomerId,customerIdList); - }else{ - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getCustomerId, poundlistPagination.getCustomerName()); - } + poundlistPagination.setStartDate(new Date(fir)); + poundlistPagination.setEndDate(DateUtil.stringToDate(DateUtil.daFormatYmd(sec) + " 23:59:59")); } - if(StringUtil.isNotEmpty(poundlistPagination.getSupplierName())){ - QueryWrapper customerQueryWrapper =new QueryWrapper<>(); - customerQueryWrapper.lambda().like(SupplierEntity::getSupplierName, poundlistPagination.getSupplierName()); - customerQueryWrapper.lambda().select(SupplierEntity::getId); - List customerIdList = supplierService.listObjs(customerQueryWrapper).stream().map(o -> (String) o).collect(Collectors.toList()); - poundlistNum++; - if(customerIdList.size() > 0){ - poundlistQueryWrapper.lambda().in(PoundlistEntity::getSupplierId,customerIdList); - }else{ - poundlistQueryWrapper.lambda().eq(PoundlistEntity::getSupplierId, poundlistPagination.getSupplierName()); - } - } - if(AllIdList.size()>0){ - poundlistQueryWrapper.lambda().in(PoundlistEntity::getId, AllIdList); - } - //排序 if(StringUtil.isEmpty(poundlistPagination.getSidx())){ - poundlistQueryWrapper.lambda().orderByDesc(PoundlistEntity::getId); + poundlistPagination.setSidx("CREATOR_TIME"); + poundlistPagination.setSort("DESC"); }else{ try { String sidx = poundlistPagination.getSidx(); @@ -219,19 +121,14 @@ public class PoundlistServiceImpl extends ServiceImpl0 && AllIdList.size()>0) || total==0){ - Page page=new Page<>(poundlistPagination.getCurrentPage(), poundlistPagination.getPageSize()); - IPage userIPage=this.page(page, poundlistQueryWrapper); - return poundlistPagination.setData(userIPage.getRecords(),userIPage.getTotal()); - }else{ - List list = new ArrayList(); - return poundlistPagination.setData(list, list.size()); - } + Page page=new Page<>(poundlistPagination.getCurrentPage(), poundlistPagination.getPageSize()); + IPage iPage = poundlistMapper.queryByKeyword(page, poundlistPagination); + return poundlistPagination.setData(iPage.getRecords(),iPage.getTotal()); } @Override public List getTypeList(PoundlistPagination poundlistPagination,String dataType){ diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java index 60a2258e..d3a23f65 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/controller/PurchaseorderController.java @@ -16,20 +16,32 @@ import jnpf.base.vo.DownloadVO; import jnpf.base.vo.PageListVO; import jnpf.base.vo.PaginationVO; import jnpf.config.ConfigValueUtil; +import jnpf.contractfile.entity.ContractFileEntity; +import jnpf.contractfile.service.ContractFileService; import jnpf.exception.DataException; +import jnpf.materialvo.entity.MaterialEntity; +import jnpf.materialvo.service.MaterialService; import jnpf.mobilePort.utils.FileCopy; import jnpf.payment.model.payment.PaymentListVO; +import jnpf.payment.service.PaymentService; +import jnpf.poundlist.entity.PoundlistEntity; +import jnpf.poundlist.service.PoundlistService; import jnpf.purchaseback.entity.PurchasebackEntity; import jnpf.purchaseback.entity.PurchaseorderEntity; +import jnpf.purchaseback.service.PurchasebackService; import jnpf.purchaseback.service.PurchaseorderService; import jnpf.purchaseorder.entity.*; import jnpf.purchaseorder.model.purchaseorder.*; import jnpf.purchaseorder.service.*; +import jnpf.reservoirarea.entity.ReservoirareaEntity; +import jnpf.reservoirarea.service.ReservoirareaService; import jnpf.util.*; import jnpf.util.enums.FileTypeEnum; import jnpf.util.file.UploadUtil; +import jnpf.warehouse.service.WareHouseService; import lombok.Cleanup; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.factory.annotation.Autowired; @@ -71,10 +83,12 @@ public class PurchaseorderController { @Autowired private UserProvider userProvider; - + @Autowired + private PaymentService paymentService; @Autowired private PurchaseorderitemService purchaseorderitemService; - + @Autowired + private PurchasebackService purchasebackService; @Autowired private Purchaseorder_item0Service purchaseorder_item0Service; @Autowired @@ -91,7 +105,16 @@ public class PurchaseorderController { private InvoicesitemService invoicesitemService; @Autowired private PurchaseorderService purchaseorderService; - + @Autowired + private PoundlistService poundlistService; + @Autowired + private MaterialService materialService; + @Autowired + private ReservoirareaService reservoirareaService; + @Autowired + private WareHouseService wareHouseService; + @Autowired + private ContractFileService contractFileService; /** * 归档 @@ -106,6 +129,11 @@ public class PurchaseorderController { if (purchaseorder.getInvoiceAmount().equals(purchaseorder.getAmount()) && purchaseorder.getInvoiceAmount().equals(purchaseorder.getPayPrice())){ purchaseorder.setStatus("3"); purchaseorderitemService.updateById(purchaseorder); + List poundlistEntityList = purchaseorderitemService.getPoundList(purchaseorder.getId()); + for (PoundlistEntity poundlistEntity : poundlistEntityList) { + poundlistEntity.setPurchaseStatus("3"); + poundlistService.updateById(poundlistEntity); + } return ActionResult.success("归档成功!"); }else{ return ActionResult.fail("发票金额、金额、已付款金额三者不一致!"); @@ -150,20 +178,20 @@ public class PurchaseorderController { * @param purchaseorderPagination * @return */ - @PostMapping("/getList") + @PostMapping("/getList") public ActionResult list(@RequestBody PurchaseorderPagination purchaseorderPagination)throws IOException{ List list= purchaseorderitemService.getList(purchaseorderPagination); //处理id字段转名称,若无需转或者为空可删除 - for(PurchaseorderitemEntity entity:list){ - Map contractNameMap = new HashMap<>(); - entity.setContractName(generaterSwapUtil.getPopupSelectValue("390143765857220229","contract_name","contract_name",entity.getContractName(),contractNameMap)); + for(PurchaseorderitemEntity entity:list){ + Map contractCodeMap = new HashMap<>(); + entity.setContractName(generaterSwapUtil.getPopupSelectValue("390143765857220229","id","contract_name",entity.getContractCode(),contractCodeMap)); + Map supplierIdMap = new HashMap<>(); + entity.setSupplierName(generaterSwapUtil.getPopupSelectValue("397751667988199621","id","supplier_name",entity.getSupplierId(),supplierIdMap)); entity.setCreatorUserName(generaterSwapUtil.userSelectValue(entity.getCreatorUserName())); - } - List listVO=JsonUtil.getJsonToList(list,PurchaseorderListVO.class); - for(PurchaseorderListVO purchaseorderVO:listVO){ - } - - + } + List listVO=JsonUtil.getJsonToList(list,PurchaseorderListVO.class); + for(PurchaseorderListVO purchaseorderVO:listVO){ + } PageListVO vo=new PageListVO(); vo.setList(listVO); PaginationVO page=JsonUtil.getJsonToBean(purchaseorderPagination,PaginationVO.class); @@ -186,16 +214,24 @@ public class PurchaseorderController { purchaseorderCrForm.setDocumentNo(generaterSwapUtil.getBillNumber("cgdj", false)); purchaseorderCrForm.setCreatorUserName(userInfo.getUserId()); purchaseorderCrForm.setCreatorTime(DateUtil.getNow()); + purchaseorderCrForm.setStatus("0");//待开票 + purchaseorderCrForm.setSourceSystem("0");//人工创建 + purchaseorderCrForm.setIsSettle("0");//未结算 + purchaseorderCrForm.setIsTransfer("0");//未转销售 PurchaseorderitemEntity entity = JsonUtil.getJsonToBean(purchaseorderCrForm, PurchaseorderitemEntity.class); - entity.setId(mainId); - entity.setStatus(null); - purchaseorderitemService.save(entity); - List Purchaseorder_item0List = JsonUtil.getJsonToList(purchaseorderCrForm.getPurchaseorder_item0List(),Purchaseorder_item0Entity.class); - for(Purchaseorder_item0Entity entitys : Purchaseorder_item0List){ - entitys.setId(RandomUtil.uuId()); - entitys.setPurchaseorderId(entity.getId()); - purchaseorder_item0Service.save(entitys); - } + entity.setId(mainId); + purchaseorderitemService.save(entity); + List Purchaseorder_item0List = JsonUtil.getJsonToList(purchaseorderCrForm.getPurchaseorder_item0List(),Purchaseorder_item0Entity.class); + for(Purchaseorder_item0Entity entitys : Purchaseorder_item0List){ + entitys.setId(RandomUtil.uuId()); + entitys.setPurchaseorderId(entity.getId()); + purchaseorder_item0Service.save(entitys); + PoundlistEntity poundlistEntity = poundlistService.getById(entitys.getPoundlistId()); + poundlistEntity.setSettlement(entitys.getSettlement()); + poundlistEntity.setPurchasePrice(entitys.getPrice()); + poundlistEntity.setPurchaseStatus("0"); + poundlistService.updateById(poundlistEntity); + } // // List Invoices_item0itemList = JsonUtil.getJsonToList(purchaseorderCrForm.getInvoices_item0itemList(),Invoices_item0itemEntity.class); // for(Invoices_item0itemEntity entitys : Invoices_item0itemList){ @@ -225,15 +261,15 @@ public class PurchaseorderController { // collectionpoService.save(entitys); // } return ActionResult.success("创建成功"); -} + } /** - * 模板下载 - * - * @return - */ + * 模板下载 + * + * @return + */ @ApiOperation("模板下载") @GetMapping("/templateDownload") public ActionResult TemplateDownload(){ @@ -331,14 +367,14 @@ public class PurchaseorderController { PurchaseorderPagination purchaseorderPagination=JsonUtil.getJsonToBean(purchaseorderPaginationExportModel, PurchaseorderPagination.class); List list= purchaseorderitemService.getTypeList(purchaseorderPagination,purchaseorderPaginationExportModel.getDataType()); //处理id字段转名称,若无需转或者为空可删除 - for(PurchaseorderitemEntity entity:list){ - Map contractNameMap = new HashMap<>(); + for(PurchaseorderitemEntity entity:list){ + Map contractNameMap = new HashMap<>(); entity.setContractName(generaterSwapUtil.getPopupSelectValue("390143765857220229","contract_name","contract_name",entity.getContractName(),contractNameMap)); entity.setCreatorUserName(generaterSwapUtil.userSelectValue(entity.getCreatorUserName())); - } - List listVO=JsonUtil.getJsonToList(list,PurchaseorderListVO.class); - for(PurchaseorderListVO purchaseorderVO:listVO){ - } + } + List listVO=JsonUtil.getJsonToList(list,PurchaseorderListVO.class); + for(PurchaseorderListVO purchaseorderVO:listVO){ + } //转换为map输出 List>mapList=JsonUtil.getJsonToListMap(JsonUtil.getObjectToStringDateFormat(listVO,"yyyy-MM-dd HH:mm:ss")); @@ -350,84 +386,84 @@ public class PurchaseorderController { //导出表格 public DownloadVO creatModelExcel(String path,List>list,String[]keys,UserInfo userInfo){ DownloadVO vo=DownloadVO.builder().build(); - List entitys=new ArrayList<>(); - if(keys.length>0){ - for(String key:keys){ - switch(key){ + List entitys=new ArrayList<>(); + if(keys.length>0){ + for(String key:keys){ + switch(key){ case "documentNo" : - entitys.add(new ExcelExportEntity("单据编号" ,"documentNo")); - break; + entitys.add(new ExcelExportEntity("单据编号" ,"documentNo")); + break; case "contractName" : - entitys.add(new ExcelExportEntity("合同名称" ,"contractName")); - break; + entitys.add(new ExcelExportEntity("合同名称" ,"contractName")); + break; case "supplierName" : - entitys.add(new ExcelExportEntity("供应商名称" ,"supplierName")); - break; + entitys.add(new ExcelExportEntity("供应商名称" ,"supplierName")); + break; case "currency" : - entitys.add(new ExcelExportEntity("币种" ,"currency")); - break; + entitys.add(new ExcelExportEntity("币种" ,"currency")); + break; case "contractNo" : - entitys.add(new ExcelExportEntity("对方合同号" ,"contractNo")); - break; + entitys.add(new ExcelExportEntity("对方合同号" ,"contractNo")); + break; case "advanceAmount" : - entitys.add(new ExcelExportEntity("垫资金额" ,"advanceAmount")); - break; + entitys.add(new ExcelExportEntity("垫资金额" ,"advanceAmount")); + break; case "num" : - entitys.add(new ExcelExportEntity("重量" ,"num")); - break; + entitys.add(new ExcelExportEntity("重量" ,"num")); + break; case "amount" : - entitys.add(new ExcelExportEntity("金额" ,"amount")); - break; + entitys.add(new ExcelExportEntity("金额" ,"amount")); + break; case "notAmount" : - entitys.add(new ExcelExportEntity("不含税金额" ,"notAmount")); - break; + entitys.add(new ExcelExportEntity("不含税金额" ,"notAmount")); + break; case "remark" : - entitys.add(new ExcelExportEntity("备注信息" ,"remark")); - break; + entitys.add(new ExcelExportEntity("备注信息" ,"remark")); + break; case "creatorUserName" : - entitys.add(new ExcelExportEntity("制单人" ,"creatorUserName")); - break; + entitys.add(new ExcelExportEntity("制单人" ,"creatorUserName")); + break; case "creatorTime" : - entitys.add(new ExcelExportEntity("制单时间" ,"creatorTime")); - break; + entitys.add(new ExcelExportEntity("制单时间" ,"creatorTime")); + break; case "erpNo" : - entitys.add(new ExcelExportEntity("ERP订单号" ,"erpNo")); - break; + entitys.add(new ExcelExportEntity("ERP订单号" ,"erpNo")); + break; case "payPrice" : - entitys.add(new ExcelExportEntity("已付款金额" ,"payPrice")); - break; + entitys.add(new ExcelExportEntity("已付款金额" ,"payPrice")); + break; case "invoiceNum" : - entitys.add(new ExcelExportEntity("发票数量" ,"invoiceNum")); - break; + entitys.add(new ExcelExportEntity("发票数量" ,"invoiceNum")); + break; case "invoiceAmount" : - entitys.add(new ExcelExportEntity("发票金额" ,"invoiceAmount")); - break; + entitys.add(new ExcelExportEntity("发票金额" ,"invoiceAmount")); + break; case "status" : - entitys.add(new ExcelExportEntity("单据状态 " ,"status")); - break; - default: - break; - } + entitys.add(new ExcelExportEntity("单据状态 " ,"status")); + break; + default: + break; } } + } ExportParams exportParams = new ExportParams(null, "表单信息"); exportParams.setType(ExcelType.XSSF); try{ - @Cleanup Workbook workbook = new HSSFWorkbook(); - if (entitys.size()>0){ - workbook = ExcelExportUtil.exportExcel(exportParams, entitys, list); - } - String name = "表单信息" + DateUtil.dateNow("yyyyMMdd") + "_" + RandomUtil.uuId() + ".xlsx"; + @Cleanup Workbook workbook = new HSSFWorkbook(); + if (entitys.size()>0){ + workbook = ExcelExportUtil.exportExcel(exportParams, entitys, list); + } + String name = "表单信息" + DateUtil.dateNow("yyyyMMdd") + "_" + RandomUtil.uuId() + ".xlsx"; - String fileName = configValueUtil.getTemporaryFilePath() + name; - @Cleanup FileOutputStream output = new FileOutputStream(XSSEscape.escapePath(fileName)); - workbook.write(output); - //上传文件 - UploadUtil.uploadFile(configValueUtil.getFileType(), fileName, FileTypeEnum.TEMPORARY, name); + String fileName = configValueUtil.getTemporaryFilePath() + name; + @Cleanup FileOutputStream output = new FileOutputStream(XSSEscape.escapePath(fileName)); + workbook.write(output); + //上传文件 + UploadUtil.uploadFile(configValueUtil.getFileType(), fileName, FileTypeEnum.TEMPORARY, name); - vo.setName(name); - vo.setUrl(UploaderUtil.uploaderFile(userInfo.getId() + "#" + name + "#" + "Temporary")); + vo.setName(name); + vo.setUrl(UploaderUtil.uploaderFile(userInfo.getId() + "#" + name + "#" + "Temporary")); } catch (Exception e) { log.error("信息导出Excel错误:{}", e.getMessage()); e.printStackTrace(); @@ -446,7 +482,7 @@ public class PurchaseorderController { @Transactional public ActionResult batchRemove(@PathVariable("ids") String ids){ String[] idList = ids.split(","); - int i =0; + int i =0; for (String allId : idList){ this.delete(allId); i++; @@ -454,89 +490,131 @@ public class PurchaseorderController { if (i == 0 ){ return ActionResult.fail("删除失败"); } - return ActionResult.success("删除成功"); + return ActionResult.success("删除成功"); } /** - * 信息 - * - * @param id - * @return - */ + * 批量查询采购订单信息 + * + * @param ids + * @return + */ + @GetMapping("/batchQueryPurchaseorder/{ids}") + @Transactional + public ActionResult> batchQueryPurchaseorder(@PathVariable("ids") String ids){ + List list = new ArrayList<>(); + String[] idList = ids.split(","); + for (String id: idList) { + PurchaseorderitemEntity entity= purchaseorderitemService.getInfo(id); + List poundlistEntityList = purchaseorderitemService.getPoundList(id); + entity.setPoundlistEntityList(poundlistEntityList); + if(entity != null && StringUtils.isNotEmpty(entity.getContractCode())){ + ContractFileEntity contractFileEntity = contractFileService.getById(entity.getContractCode()); + if(contractFileEntity != null && StringUtils.isNotEmpty(contractFileEntity.getContractName())){ + entity.setContractNo(contractFileEntity.getContractCode()); + } + } + list.add(entity); + } + return ActionResult.success(list); + } + + /** + * 信息 + * + * @param id + * @return + */ @GetMapping("/{id}") public ActionResult info(@PathVariable("id") String id){ PurchaseorderitemEntity entity= purchaseorderitemService.getInfo(id); PurchaseorderInfoVO vo=JsonUtil.getJsonToBean(entity, PurchaseorderInfoVO.class); - vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); + vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); if(vo.getCreatorTime()!=null){ vo.setCreatorTime(vo.getCreatorTime()); } - //子表 - List Purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(id); - for(Purchaseorder_item0Entity purchaseorder_item0Entity : Purchaseorder_item0List){ - } - vo.setPurchaseorder_item0List(JsonUtil.getJsonToList(Purchaseorder_item0List,Purchaseorder_item0Model.class )); - QueryWrapper invoicesitemWrapper = new QueryWrapper<>(); - invoicesitemWrapper.lambda().eq(InvoicesitemEntity::getPurchaseorderId,id); - List invoicesitemList = invoicesitemService.list(invoicesitemWrapper); - List Invoices_item0itemList = new ArrayList<>(); - for (InvoicesitemEntity invoicesitemEntity : invoicesitemList){ + //子表 + List Purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(id); + for(Purchaseorder_item0Entity purchaseorder_item0Entity : Purchaseorder_item0List){ + if(StringUtils.isNotEmpty(purchaseorder_item0Entity.getMaterialId())){ + MaterialEntity materialEntity = materialService.getById(purchaseorder_item0Entity.getMaterialId()); + if(materialEntity != null && StringUtils.isNotEmpty(materialEntity.getInArea())){ + purchaseorder_item0Entity.setReservoirareaId(materialEntity.getInArea()); + ReservoirareaEntity reservoirareaEntity = reservoirareaService.getById(materialEntity.getInArea()); + if(reservoirareaEntity != null && StringUtils.isNotEmpty(reservoirareaEntity.getWarehouseId())){ + purchaseorder_item0Entity.setWarehouseId(reservoirareaEntity.getWarehouseId()); + } + } + } + } + vo.setPurchaseorder_item0List(JsonUtil.getJsonToList(Purchaseorder_item0List,Purchaseorder_item0Model.class )); + QueryWrapper invoicesitemWrapper = new QueryWrapper<>(); + invoicesitemWrapper.lambda().eq(InvoicesitemEntity::getPurchaseorderId,id); + List invoicesitemList = invoicesitemService.list(invoicesitemWrapper); + List Invoices_item0itemList = new ArrayList<>(); + for (InvoicesitemEntity invoicesitemEntity : invoicesitemList){ List invoices_item0itemList = purchaseorderitemService.GetInvoices_item0itemList(invoicesitemEntity.getId()); Invoices_item0itemList.addAll(invoices_item0itemList); } - for(Invoices_item0itemEntity invoices_item0itemEntity : Invoices_item0itemList){ - } - vo.setInvoices_item0itemList(JsonUtil.getJsonToList(Invoices_item0itemList,Invoices_item0itemModel.class )); - - QueryWrapper PaymentdocpoWrapper = new QueryWrapper<>(); - PaymentdocpoWrapper.lambda().eq(PaymentdocpoEntity::getPurchaseOrderNo,entity.getDocumentNo()); - List paymentdocList = paymentdocpoService.list(PaymentdocpoWrapper); - List PaymentitemList = new ArrayList<>(); - for (PaymentdocpoEntity paymentdocpoEntity : paymentdocList) { - List paymentitemlist = purchaseorderitemService.GetPaymentitemList(paymentdocpoEntity.getDocumentNo()); - PaymentitemList.addAll(paymentitemlist); + for(Invoices_item0itemEntity invoices_item0itemEntity : Invoices_item0itemList){ + } + vo.setInvoices_item0itemList(JsonUtil.getJsonToList(Invoices_item0itemList,Invoices_item0itemModel.class )); + List paymentList = paymentService.queryByPurchaseorderId(id); + vo.setPaymentList(paymentList); + QueryWrapper purchasebackWrapper = new QueryWrapper<>(); + purchasebackWrapper.lambda().eq(PurchasebackEntity::getPurchaseOrderId, id); + List PurchasebackList = purchasebackService.list(purchasebackWrapper); + vo.setPurchasebackList(PurchasebackList); + List CollectionitemList = purchaseorderitemService.GetCollectionitemList(entity.getDocumentNo()); + for(CollectionpoEntity collectionpoEntity : CollectionitemList){ } - for(PaymentitemEntity paymentitemEntity : PaymentitemList){ - } - vo.setPaymentList(JsonUtil.getJsonToList(PaymentitemList, PaymentListVO.class )); - List PurchasebackitemList = purchaseorderitemService.GetPurchasebackitemList(id); - for(PurchasebackitemEntity purchasebackitemEntity : PurchasebackitemList){ - } - vo.setPurchasebackList(JsonUtil.getJsonToList(PurchasebackitemList, PurchasebackEntity.class )); - List CollectionitemList = purchaseorderitemService.GetCollectionitemList(entity.getDocumentNo()); - for(CollectionpoEntity collectionpoEntity : CollectionitemList){ - } - vo.setCollectionitemList(JsonUtil.getJsonToList(CollectionitemList,CollectionitemModel.class )); - //副表 + vo.setCollectionitemList(JsonUtil.getJsonToList(CollectionitemList,CollectionitemModel.class )); + //副表 return ActionResult.success(vo); } /** - * 表单信息(详情页) - * - * @param id - * @return - */ + * 归档 + * + * @param id + * @return + */ + @GetMapping("guidang/{id}") + public ActionResult guidang(@PathVariable("id") String id){ + PurchaseorderitemEntity entity= purchaseorderitemService.getInfo(id); + entity.setStatus("3"); + purchaseorderitemService.updateById(entity); + return ActionResult.success("归档成功"); + } + + /** + * 表单信息(详情页) + * + * @param id + * @return + */ @GetMapping("/detail/{id}") public ActionResult detailInfo(@PathVariable("id") String id) throws IOException { PurchaseorderitemEntity entity= purchaseorderitemService.getInfo(id); PurchaseorderInfoVO vo=JsonUtil.getJsonToBean(entity, PurchaseorderInfoVO.class); - //子表数据转换 - List jg_purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(id); - List jg_purchaseorder_item0ModelList = JsonUtil.getJsonToList(jg_purchaseorder_item0List,Purchaseorder_item0Model.class); - for(Purchaseorder_item0Model jg_purchaseorder_item0Model : jg_purchaseorder_item0ModelList){ -// Map licenseNumMap = new HashMap<>(); -// jg_purchaseorder_item0Model.setLicenseNum(generaterSwapUtil.getPopupSelectValue("389754644018016581","license_no","license_no",jg_purchaseorder_item0Model.getLicenseNum(),licenseNumMap)); + //子表数据转换 + List jg_purchaseorder_item0List = purchaseorderitemService.GetPurchaseorder_item0List(id); + List jg_purchaseorder_item0ModelList = JsonUtil.getJsonToList(jg_purchaseorder_item0List,Purchaseorder_item0Model.class); + for(Purchaseorder_item0Model jg_purchaseorder_item0Model : jg_purchaseorder_item0ModelList){ + Map vehicleIdMap = new HashMap<>(); + jg_purchaseorder_item0Model.setVehicleId(generaterSwapUtil.getPopupSelectValue("389754644018016581","vehicle_id","ticketno",jg_purchaseorder_item0Model.getVehicleId(),vehicleIdMap)); + Map materialIdMap = new HashMap<>(); + jg_purchaseorder_item0Model.setMaterialId(generaterSwapUtil.getPopupSelectValue("397736371898382533","id","item_name",jg_purchaseorder_item0Model.getMaterialId(),materialIdMap)); + } + vo.setPurchaseorder_item0List(jg_purchaseorder_item0ModelList); + List jg_invoices_item0List = purchaseorderitemService.GetInvoices_item0itemList(id); + List jg_invoices_item0ModelList = JsonUtil.getJsonToList(jg_invoices_item0List,Invoices_item0itemModel.class); + for(Invoices_item0itemModel jg_invoices_item0Model : jg_invoices_item0ModelList){ } - vo.setPurchaseorder_item0List(jg_purchaseorder_item0ModelList); -// List jg_invoices_item0List = purchaseorderitemService.GetInvoices_item0itemList(id); -// List jg_invoices_item0ModelList = JsonUtil.getJsonToList(jg_invoices_item0List,Invoices_item0itemModel.class); -// for(Invoices_item0itemModel jg_invoices_item0Model : jg_invoices_item0ModelList){ -// } -// vo.setInvoices_item0itemList(jg_invoices_item0ModelList); + vo.setInvoices_item0itemList(jg_invoices_item0ModelList); QueryWrapper invoicesitemWrapper = new QueryWrapper<>(); invoicesitemWrapper.lambda().eq(InvoicesitemEntity::getPurchaseorderId,id); @@ -550,121 +628,111 @@ public class PurchaseorderController { } vo.setInvoices_item0itemList(JsonUtil.getJsonToList(Invoices_item0itemList,Invoices_item0itemModel.class )); -// List jg_paymentList = purchaseorderitemService.GetPaymentitemList(id); -// List jg_paymentModelList = JsonUtil.getJsonToList(jg_paymentList,PaymentitemModel.class); -// for(PaymentitemModel jg_paymentModel : jg_paymentModelList){ -// } -// vo.setPaymentitemList(jg_paymentModelList); - - QueryWrapper PaymentdocpoWrapper = new QueryWrapper<>(); - PaymentdocpoWrapper.lambda().eq(PaymentdocpoEntity::getPurchaseOrderNo,entity.getDocumentNo()); - List paymentdocList = paymentdocpoService.list(PaymentdocpoWrapper); - List PaymentitemList = new ArrayList<>(); - for (PaymentdocpoEntity paymentdocpoEntity : paymentdocList) { - List paymentitemlist = purchaseorderitemService.GetPaymentitemList(paymentdocpoEntity.getDocumentNo()); - PaymentitemList.addAll(paymentitemlist); - } - for(PaymentitemEntity paymentitemEntity : PaymentitemList){ - } - vo.setPaymentList(JsonUtil.getJsonToList(PaymentitemList,PaymentListVO.class )); - - List jg_purchasebackList = purchaseorderitemService.GetPurchasebackitemList(id); - List jg_purchasebackModelList = JsonUtil.getJsonToList(jg_purchasebackList,PurchasebackEntity.class); - for(PurchasebackEntity jg_purchasebackModel : jg_purchasebackModelList){ + List paymentList = paymentService.queryByPurchaseorderId(id); + vo.setPaymentList(paymentList); + QueryWrapper purchasebackWrapper = new QueryWrapper<>(); + purchasebackWrapper.lambda().eq(PurchasebackEntity::getPurchaseOrderId, id); + List PurchasebackList = purchasebackService.list(purchasebackWrapper); + vo.setPurchasebackList(PurchasebackList); + List jg_collectionList = purchaseorderitemService.GetCollectionitemList(id); + List jg_collectionModelList = JsonUtil.getJsonToList(jg_collectionList,CollectionitemModel.class); + for(CollectionitemModel jg_collectionModel : jg_collectionModelList){ } - vo.setPurchasebackList(jg_purchasebackModelList); -// List jg_collectionList = purchaseorderitemService.GetCollectionitemList(id); -// List jg_collectionModelList = JsonUtil.getJsonToList(jg_collectionList,CollectionitemModel.class); -// for(CollectionitemModel jg_collectionModel : jg_collectionModelList){ -// } -// vo.setCollectionitemList(jg_collectionModelList); + vo.setCollectionitemList(jg_collectionModelList); List CollectionitemList = purchaseorderitemService.GetCollectionitemList(entity.getDocumentNo()); for(CollectionpoEntity collectionpoEntity : CollectionitemList){ } vo.setCollectionitemList(JsonUtil.getJsonToList(CollectionitemList,CollectionitemModel.class )); - //附表数据转换 + //附表数据转换 //添加到详情表单对象中 - Map contractNameMap = new HashMap<>(); -// vo.setContractName(generaterSwapUtil.getPopupSelectValue("390143765857220229","contract_name","contract_name",vo.getContractName(),contractNameMap)); - vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); + Map contractCodeMap = new HashMap<>(); + vo.setContractCode(generaterSwapUtil.getPopupSelectValue("390143765857220229","id","contract_name",vo.getContractCode(),contractCodeMap)); + Map supplierIdMap = new HashMap<>(); + vo.setSupplierId(generaterSwapUtil.getPopupSelectValue("397751667988199621","id","supplier_name",vo.getSupplierId(),supplierIdMap)); + vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); return ActionResult.success(vo); - } + } - /** - * 更新 - * - * @param id - * @return - */ - @PutMapping("/{id}") - @Transactional - public ActionResult update(@PathVariable("id") String id, @RequestBody @Valid PurchaseorderUpForm purchaseorderUpForm) throws DataException { - UserInfo userInfo = userProvider.get(); - PurchaseorderitemEntity entity = purchaseorderitemService.getInfo(id); - if(!entity.getStatus().equals("0")){ - String info = ""; - switch (entity.getStatus()) { - case "1": - info = "开票中"; - break; - case "2": - info = "付款中"; - break; - case "3": - info = "归档"; - break; - } - return ActionResult.fail("已"+info+",无法编辑!"); - } - if (entity != null) { - PurchaseorderitemEntity subentity = JsonUtil.getJsonToBean(purchaseorderUpForm, PurchaseorderitemEntity.class); - subentity.setCreatorUserName(entity.getCreatorUserName()); - subentity.setCreatorTime(entity.getCreatorTime()); - purchaseorderitemService.update(id, subentity); - - QueryWrapper Purchaseorder_item0queryWrapper = new QueryWrapper<>(); - Purchaseorder_item0queryWrapper.lambda().eq(Purchaseorder_item0Entity::getPurchaseorderId, entity.getId()); - purchaseorder_item0Service.remove(Purchaseorder_item0queryWrapper); - - List Purchaseorder_item0List = JsonUtil.getJsonToList(purchaseorderUpForm.getPurchaseorder_item0List(), Purchaseorder_item0Entity.class); - for (Purchaseorder_item0Entity entitys : Purchaseorder_item0List) { - entitys.setId(RandomUtil.uuId()); - entitys.setPurchaseorderId(entity.getId()); - purchaseorder_item0Service.save(entitys); - } - QueryWrapper Invoices_item0itemqueryWrapper = new QueryWrapper<>(); - Invoices_item0itemqueryWrapper.lambda().eq(Invoices_item0itemEntity::getPurchaseorderId, entity.getId()); - invoices_item0itemService.remove(Invoices_item0itemqueryWrapper); - - List Invoices_item0itemList = JsonUtil.getJsonToList(purchaseorderUpForm.getInvoices_item0itemList(), Invoices_item0itemEntity.class); - for (Invoices_item0itemEntity entitys : Invoices_item0itemList) { - entitys.setId(RandomUtil.uuId()); - entitys.setPurchaseorderId(entity.getId()); - invoices_item0itemService.save(entitys); - } - QueryWrapper PaymentdocpoWrapper = new QueryWrapper<>(); - PaymentdocpoWrapper.lambda().eq(PaymentdocpoEntity::getPurchaseOrderNo,entity.getDocumentNo()); - List paymentdocList = paymentdocpoService.list(PaymentdocpoWrapper); - - for (PaymentdocpoEntity paymentdocpoEntity : paymentdocList) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.lambda().eq(PaymentitemEntity::getPaymentno,paymentdocpoEntity.getDocumentNo()); - paymentitemService.remove(queryWrapper); - } - - List PaymentitemList = JsonUtil.getJsonToList(purchaseorderUpForm.getPaymentList(), PaymentitemEntity.class); - for (PaymentitemEntity entitys : PaymentitemList) { - entitys.setId(RandomUtil.uuId()); - entitys.setPaymentno(entitys.getPaymentno()); - paymentitemService.save(entitys); - } + /** + * 更新 + * + * @param id + * @return + */ + @PutMapping("/{id}") + @Transactional + public ActionResult update(@PathVariable("id") String id, @RequestBody @Valid PurchaseorderUpForm purchaseorderUpForm) throws DataException { + UserInfo userInfo = userProvider.get(); + PurchaseorderitemEntity entity = purchaseorderitemService.getInfo(id); + if(!entity.getStatus().equals("0")){ + String info = ""; + switch (entity.getStatus()) { + case "1": + info = "开票中"; + break; + case "2": + info = "付款中"; + break; + case "3": + info = "归档"; + break; + } + return ActionResult.fail("已"+info+",无法编辑!"); + } + if (entity != null) { + PurchaseorderitemEntity subentity = JsonUtil.getJsonToBean(purchaseorderUpForm, PurchaseorderitemEntity.class); + subentity.setCreatorUserName(entity.getCreatorUserName()); + subentity.setCreatorTime(entity.getCreatorTime()); + purchaseorderitemService.update(id, subentity); + + QueryWrapper Purchaseorder_item0queryWrapper = new QueryWrapper<>(); + Purchaseorder_item0queryWrapper.lambda().eq(Purchaseorder_item0Entity::getPurchaseorderId, entity.getId()); + purchaseorder_item0Service.remove(Purchaseorder_item0queryWrapper); + + List Purchaseorder_item0List = JsonUtil.getJsonToList(purchaseorderUpForm.getPurchaseorder_item0List(), Purchaseorder_item0Entity.class); + for (Purchaseorder_item0Entity entitys : Purchaseorder_item0List) { + entitys.setId(RandomUtil.uuId()); + entitys.setPurchaseorderId(entity.getId()); + purchaseorder_item0Service.save(entitys); + + PoundlistEntity poundlistEntity = poundlistService.getById(entitys.getPoundlistId()); + poundlistEntity.setSettlement(entitys.getSettlement()); + poundlistEntity.setPurchasePrice(entitys.getPrice()); + poundlistService.updateById(poundlistEntity); + } + QueryWrapper Invoices_item0itemqueryWrapper = new QueryWrapper<>(); + Invoices_item0itemqueryWrapper.lambda().eq(Invoices_item0itemEntity::getPurchaseorderId, entity.getId()); + invoices_item0itemService.remove(Invoices_item0itemqueryWrapper); + + List Invoices_item0itemList = JsonUtil.getJsonToList(purchaseorderUpForm.getInvoices_item0itemList(), Invoices_item0itemEntity.class); + for (Invoices_item0itemEntity entitys : Invoices_item0itemList) { + entitys.setId(RandomUtil.uuId()); + entitys.setPurchaseorderId(entity.getId()); + invoices_item0itemService.save(entitys); + } + QueryWrapper PaymentdocpoWrapper = new QueryWrapper<>(); + PaymentdocpoWrapper.lambda().eq(PaymentdocpoEntity::getPurchaseOrderNo,entity.getDocumentNo()); + List paymentdocList = paymentdocpoService.list(PaymentdocpoWrapper); + + for (PaymentdocpoEntity paymentdocpoEntity : paymentdocList) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(PaymentitemEntity::getPaymentno,paymentdocpoEntity.getDocumentNo()); + paymentitemService.remove(queryWrapper); + } + + /*List PaymentitemList = JsonUtil.getJsonToList(purchaseorderUpForm.getPaymentitemList(), PaymentitemEntity.class); + for (PaymentitemEntity entitys : PaymentitemList) { + entitys.setId(RandomUtil.uuId()); + entitys.setPaymentno(entitys.getPaymentno()); + paymentitemService.save(entitys); + }*/ // QueryWrapper PaymentitemqueryWrapper = new QueryWrapper<>(); // PaymentitemqueryWrapper.lambda().eq(PaymentitemEntity::getDocumentno, entity.getDocumentNo()); // paymentitemService.remove(PaymentitemqueryWrapper); @@ -675,41 +743,41 @@ public class PurchaseorderController { // entitys.setDocumentno(entity.getDocumentNo()); // paymentitemService.save(entitys); // } - QueryWrapper PurchasebackitemqueryWrapper = new QueryWrapper<>(); - PurchasebackitemqueryWrapper.lambda().eq(PurchasebackitemEntity::getPurchaseOrderId, entity.getId()); - purchasebackitemService.remove(PurchasebackitemqueryWrapper); - - List PurchasebackitemList = JsonUtil.getJsonToList(purchaseorderUpForm.getPurchasebackList(), PurchasebackitemEntity.class); - for (PurchasebackitemEntity entitys : PurchasebackitemList) { - entitys.setId(RandomUtil.uuId()); - entitys.setPurchaseOrderId(entity.getId()); - purchasebackitemService.save(entitys); - } - QueryWrapper CollectionitemqueryWrapper = new QueryWrapper<>(); - CollectionitemqueryWrapper.lambda().eq(CollectionpoEntity::getSalesOrderNo, entity.getDocumentNo()); - collectionpoService.remove(CollectionitemqueryWrapper); - - List CollectionitemList = JsonUtil.getJsonToList(purchaseorderUpForm.getCollectionitemList(), CollectionpoEntity.class); - for (CollectionpoEntity entitys : CollectionitemList) { - entitys.setId(RandomUtil.uuId()); - entitys.setSalesOrderNo(entity.getDocumentNo()); - collectionpoService.save(entitys); - } - - return ActionResult.success("更新成功"); - } else { - return ActionResult.fail("更新失败,数据不存在"); - } - } - - - - /** - * 删除 - * - * @param id - * @return - */ + /*QueryWrapper PurchasebackitemqueryWrapper = new QueryWrapper<>(); + PurchasebackitemqueryWrapper.lambda().eq(PurchasebackitemEntity::getPurchaseOrderId, entity.getId()); + purchasebackitemService.remove(PurchasebackitemqueryWrapper); + + List PurchasebackitemList = JsonUtil.getJsonToList(purchaseorderUpForm.getPurchasebackitemList(), PurchasebackitemEntity.class); + for (PurchasebackitemEntity entitys : PurchasebackitemList) { + entitys.setId(RandomUtil.uuId()); + entitys.setPurchaseOrderId(entity.getId()); + purchasebackitemService.save(entitys); + } + QueryWrapper CollectionitemqueryWrapper = new QueryWrapper<>(); + CollectionitemqueryWrapper.lambda().eq(CollectionpoEntity::getSalesOrderNo, entity.getDocumentNo()); + collectionpoService.remove(CollectionitemqueryWrapper); + + List CollectionitemList = JsonUtil.getJsonToList(purchaseorderUpForm.getCollectionitemList(), CollectionpoEntity.class); + for (CollectionpoEntity entitys : CollectionitemList) { + entitys.setId(RandomUtil.uuId()); + entitys.setSalesOrderNo(entity.getDocumentNo()); + collectionpoService.save(entitys); + }*/ + + return ActionResult.success("更新成功"); + } else { + return ActionResult.fail("更新失败,数据不存在"); + } + } + + + + /** + * 删除 + * + * @param id + * @return + */ @DeleteMapping("/{id}") @Transactional public ActionResult delete(@PathVariable("id") String id){ diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/entity/PurchaseorderitemEntity.java b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/entity/PurchaseorderitemEntity.java index cc4d5581..1b893d6b 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/entity/PurchaseorderitemEntity.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/entity/PurchaseorderitemEntity.java @@ -4,6 +4,7 @@ import com.alibaba.fastjson.annotation.JSONField; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import jnpf.poundlist.entity.PoundlistEntity; import lombok.Data; import java.util.Date; @@ -17,6 +18,8 @@ import java.math.BigDecimal; import java.math.BigDecimal; import java.math.BigDecimal; import java.math.BigDecimal; +import java.util.List; + import com.fasterxml.jackson.annotation.JsonProperty; @@ -149,4 +152,6 @@ public class PurchaseorderitemEntity { @TableField("SUPPLIER_ID") private String supplierId; + @TableField(exist = false) + private List poundlistEntityList; } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/service/PurchaseorderitemService.java b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/service/PurchaseorderitemService.java index 1c1af90f..b4473883 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/service/PurchaseorderitemService.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/purchaseorder/service/PurchaseorderitemService.java @@ -3,6 +3,7 @@ package jnpf.purchaseorder.service; import com.baomidou.mybatisplus.extension.service.IService; import jnpf.exception.DataException; import jnpf.mobilePort.entity.PurchaseOrderVO; +import jnpf.poundlist.entity.PoundlistEntity; import jnpf.purchaseorder.entity.*; import jnpf.purchaseorder.model.purchaseorder.PurchaseorderDTO; import jnpf.purchaseorder.model.purchaseorder.PurchaseorderPagination; @@ -55,5 +56,6 @@ public interface PurchaseorderitemService extends IService dataList) throws ParseException, DataException; + List getPoundList(String id); //列表子表数据方法 } diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java index fd66de78..abce44f3 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java @@ -15,8 +15,12 @@ import jnpf.base.UserInfo; import jnpf.base.vo.DownloadVO; import jnpf.config.ConfigValueUtil; import jnpf.exception.DataException; +import jnpf.poundlist.entity.PoundlistEntity; +import jnpf.poundlist.service.PoundlistService; import jnpf.purchaseback.entity.PurchaseorderEntity; import jnpf.purchaseback.service.PurchaseorderService; +import jnpf.purchaseorder.entity.PurchaseorderitemEntity; +import jnpf.purchaseorder.service.PurchaseorderitemService; import org.springframework.transaction.annotation.Transactional; import jnpf.base.entity.ProvinceEntity; import jnpf.receiptin.model.receiptin.*; @@ -83,6 +87,12 @@ public class ReceiptinController { @Autowired private PurchaseorderService purchaseorderService; + @Autowired + private PurchaseorderitemService purchaseorderitemService; + + @Autowired + private PoundlistService poundlistService; + /** * 列表 * @@ -139,10 +149,15 @@ public class ReceiptinController { } //采购订单状态为2 if(ObjectUtil.equal("0", entity.getType())){//采购入库 - PurchaseorderEntity purchaseorderEntity = purchaseorderService.getById(entity.getSouceno()); + PurchaseorderitemEntity purchaseorderEntity = purchaseorderitemService.getById(entity.getSouceno()); purchaseorderEntity.setStatus("2"); purchaseorderEntity.setIssue("1"); - purchaseorderService.updateById(purchaseorderEntity); + purchaseorderitemService.updateById(purchaseorderEntity); + List poundlistEntityList = purchaseorderitemService.getPoundList(purchaseorderEntity.getId()); + for (PoundlistEntity poundlistEntity : poundlistEntityList) { + poundlistEntity.setPurchaseStatus("2"); + poundlistService.updateById(poundlistEntity); + } } return ActionResult.success("创建成功"); } diff --git a/SC-boot/linkage-scm/src/main/resources/mapper/PoundlistMapper.xml b/SC-boot/linkage-scm/src/main/resources/mapper/PoundlistMapper.xml deleted file mode 100644 index e5965619..00000000 --- a/SC-boot/linkage-scm/src/main/resources/mapper/PoundlistMapper.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - diff --git a/SC-boot/linkage-scm/src/main/resources/mapper/poundlist/PoundlistMapper.xml b/SC-boot/linkage-scm/src/main/resources/mapper/poundlist/PoundlistMapper.xml index 17b67db9..0f7d81fe 100644 --- a/SC-boot/linkage-scm/src/main/resources/mapper/poundlist/PoundlistMapper.xml +++ b/SC-boot/linkage-scm/src/main/resources/mapper/poundlist/PoundlistMapper.xml @@ -55,4 +55,60 @@ WHERE + diff --git a/SC-web/src/api/scm/invoices.js b/SC-web/src/api/scm/invoices.js new file mode 100644 index 00000000..b2ed00f4 --- /dev/null +++ b/SC-web/src/api/scm/invoices.js @@ -0,0 +1,25 @@ +import request from '@/utils/request' + +// 导入 +export function ImportData(data) { + return request({ + url: '/api/invoices/Invoices/ImportData', + method: 'post', + data + }) +} +// 导入预览 +export function ImportPreview(data) { + return request({ + url: '/api/invoices/Invoices/ImportPreview', + method: 'get', + data + }) +} +//模板下载 +export function TemplateDownload() { + return request({ + url: '/api/invoices/Invoices/TemplateDownload', + method: 'get' + }) +} diff --git a/SC-web/src/api/scm/purchaseorder.js b/SC-web/src/api/scm/purchaseorder.js new file mode 100644 index 00000000..024f3c04 --- /dev/null +++ b/SC-web/src/api/scm/purchaseorder.js @@ -0,0 +1,25 @@ +import request from '@/utils/request' + +// 导入 +export function ImportData(data) { + return request({ + url: '/api/purchaseorder/Purchaseorder/ImportData', + method: 'post', + data + }) +} +// 导入预览 +export function ImportPreview(data) { + return request({ + url: '/api/purchaseorder/Purchaseorder/ImportPreview', + method: 'get', + data + }) +} +//模板下载 +export function TemplateDownload() { + return request({ + url: '/api/purchaseorder/Purchaseorder/TemplateDownload', + method: 'get' + }) +} diff --git a/SC-web/src/views/extend/order/Detail.vue b/SC-web/src/views/extend/order/Detail.vue index 75e89f85..578dfc80 100644 --- a/SC-web/src/views/extend/order/Detail.vue +++ b/SC-web/src/views/extend/order/Detail.vue @@ -77,7 +77,7 @@ - +
  • diff --git a/SC-web/src/views/scm/basicInformation/invoices/Detail.vue b/SC-web/src/views/scm/basicInformation/invoices/Detail.vue index a4cf05ba..9ca1859a 100644 --- a/SC-web/src/views/scm/basicInformation/invoices/Detail.vue +++ b/SC-web/src/views/scm/basicInformation/invoices/Detail.vue @@ -193,49 +193,52 @@

    - + - + - + - + - + - + - + - + - + - + - + - + - + + + + -
    + @@ -669,6 +681,7 @@ invoiceStatus: undefined, creatorUserName: undefined, invoicingDate: undefined, + invoiceAttachment:undefined, } this.dataForm.invoicesitem0List.push(item) }, @@ -682,6 +695,7 @@ } for (let i = 0; i < _data.invoicesitem0List.length; i++) { var _list = _data.invoicesitem0List[i]; + _list.invoiceAttachment = JSON.stringify(_list.invoiceAttachment) } return _data; }, @@ -692,6 +706,7 @@ } for (let i = 0; i < _dataAll.invoicesitem0List.length; i++) { var _list = _dataAll.invoicesitem0List[i]; + _list.invoiceAttachment = JSON.parse(_list.invoiceAttachment) } this.dataForm = _dataAll }, diff --git a/SC-web/src/views/scm/basicInformation/invoices/Form.vue b/SC-web/src/views/scm/basicInformation/invoices/Form.vue index d1bdb89e..2848fa6c 100644 --- a/SC-web/src/views/scm/basicInformation/invoices/Form.vue +++ b/SC-web/src/views/scm/basicInformation/invoices/Form.vue @@ -6,7 +6,8 @@