From 5082fa50d66161e3cfd32611581b35621e8f62e4 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Wed, 29 May 2024 17:53:54 +0800 Subject: [PATCH 01/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=BB=B4=E4=BF=AE?= =?UTF-8?q?=E5=87=BA=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue b/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue index 223960d840..3c06f0558f 100644 --- a/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue +++ b/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue @@ -524,6 +524,7 @@ console.log("commodityCurrentChange》》》》", row) row.inventorySid = value.inventorySid + row.goodsID = value.goodsID row.goodSpuSid = value.goodSpuSid row.goodsSpuName = value.goodsSpuName row.goodsSkuSid = value.goodsSkuSid From 1cca7e93f830abcf5fcc785334f44e3bdd888c34 Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Wed, 29 May 2024 18:02:28 +0800 Subject: [PATCH 02/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=BB=B4=E4=BF=AE?= =?UTF-8?q?=E9=A2=86=E6=96=99=E9=80=80=E6=96=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AsBusrepairInventorybillRest.java | 2 +- .../AsBusrepairInventorybillDetailMapper.xml | 27 +++++------- .../wmsoutbill/WmsOutBillInventoryQuery.java | 2 +- .../inventory/wmsoutbill/WmsOutBillMapper.xml | 1 + .../wmsoutbill/WmsOutBillService.java | 4 +- .../inventory/wmsshelfbill/WmsShelfBill.java | 3 +- .../wmsshelfbill/WmsShelfBillMapper.java | 3 ++ .../wmsshelfbill/WmsShelfBillMapper.xml | 15 +++++++ .../wmsshelfbill/WmsShelfBillService.java | 35 ++++++++++++--- .../wmsshelfbill/app/AppShelfBillListVo.java | 43 ++++++++++++++++--- 10 files changed, 100 insertions(+), 35 deletions(-) diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java index b3770a7fc7..dbebb801ec 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillRest.java @@ -46,7 +46,7 @@ public class AsBusrepairInventorybillRest { return asBusrepairInventorybillService.newQuitBill(dto); } - @PostMapping("/details") + @GetMapping("/details") @ApiOperation("详情") ResultBean details(@RequestParam("sid") String sid) { return asBusrepairInventorybillService.details(sid); diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailMapper.xml b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailMapper.xml index d5f5dda608..54c235f108 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailMapper.xml +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailMapper.xml @@ -15,25 +15,18 @@ diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillInventoryQuery.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillInventoryQuery.java index d1a39e3daa..86dace6318 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillInventoryQuery.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillInventoryQuery.java @@ -30,6 +30,6 @@ public class WmsOutBillInventoryQuery implements Query { private String orgPath; - private String busrepairBillSid;//维修工单sid + private String busrepairBillsid;//维修工单sid private String name; } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillMapper.xml index 068029d163..b840e7ddd4 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillMapper.xml @@ -36,6 +36,7 @@ wi.goodsSpuName, wi.goodsSkuTitle, wi.goodsSkuCode, + wi.goodsSkuSid, wi.goodsSkuOwnSpec, wi.unit, wi.warehouseSid, diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java index a1511c900e..e1cdadce95 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsoutbill/WmsOutBillService.java @@ -149,11 +149,11 @@ public class WmsOutBillService extends MybatisBaseService page = PagerUtil.queryToPage(pagerQuery); IPage pagging = baseMapper.getInventoryList(page, qw); - if (StringUtils.isNotBlank(query.getBusrepairBillSid())) { + if (StringUtils.isNotBlank(query.getBusrepairBillsid())) { List records = pagging.getRecords(); for (WmsOutBillInventoryVo record : records) { //维修出入库查询已出库数量 - String billSid = query.getBusrepairBillSid(); + String billSid = query.getBusrepairBillsid(); String chuKuCount = asBusrepairInventorybillFeign.selOutBoundCount(billSid, "0", record.getGoodsID()).getData(); String ruKuCount = asBusrepairInventorybillFeign.selOutBoundCount(billSid, "1", record.getGoodsID()).getData(); BigDecimal count = new BigDecimal(chuKuCount).subtract(new BigDecimal(ruKuCount)); diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBill.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBill.java index 25915b95fe..7eee7d728b 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBill.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBill.java @@ -21,7 +21,8 @@ public class WmsShelfBill extends BaseEntity { private String createByName; @ApiModelProperty("0新建,1已完成") private Integer billState; - + @ApiModelProperty("0新建,1已完成") + private String billStateValue; private String createOrgSid; private String useOrgSid; private String deptSid; diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.java index 60a7d5dc61..abea45be14 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.wms.biz.inventory.wmsshelfbill.app.AppShelfBillListVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -21,4 +22,6 @@ public interface WmsShelfBillMapper extends BaseMapper { String selectNum(String goodsId); String selectCodeNum(String bill); + + IPage applistPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.xml index f30e64fd6a..f0be9249bc 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillMapper.xml @@ -54,4 +54,19 @@ order by id desc limit 1 + diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java index bedb857548..0ff728fba3 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java @@ -159,6 +159,13 @@ public class WmsShelfBillService extends MybatisBaseService applistPage(PagerQuery pq) { - PagerVo p = new PagerVo<>(); - List list = new ArrayList<>(); - AppShelfBillListVo v = new AppShelfBillListVo(); - v.setSid("222"); - list.add(v); - p.setRecords(list); + AppShelfBillListQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (StringUtils.isNotBlank(query.getUserSid())) { + qw.eq("wsb.upShelfSid",query.getUserSid()); + } + //ToDo:添加查询条件 + if (StringUtils.isNotBlank(query.getName())) { + qw.and(wrapper -> wrapper.like("wsb.billNo", query.getName()) + .or().like("wsb.sourceBillNo", query.getName()) + .or().like("wsb.billStateValue", query.getName()) + ); + } + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.applistPage(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); return p; } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelfBillListVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelfBillListVo.java index e706228438..c6e4375169 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelfBillListVo.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelfBillListVo.java @@ -10,11 +10,40 @@ import lombok.Data; */ @Data public class AppShelfBillListVo implements Vo { - private String billNo; //单据编号 - private String billState;//单据状态 - private String receiptBillNo;//收货单号 - private String receiptName;//收货人 - private String shelName;//上架人 - private String time;//日期 - private String sid; + /** + * 收货单号 + */ + private String receivingId; + /** + * 收货人 + */ + private String receivingUser; + /** + * 记录按钮,有记录true + */ + private boolean recordBtn; + /** + * 上架按钮,上架还有剩余true + */ + private boolean shelvesBtn; + /** + * 上架单创建时间 + */ + private String shelvesCreateTime; + /** + * 上架单编号 + */ + private String shelvesId; + /** + * 上架单sid + */ + private String shelvesSid; + /** + * 单据状态 + */ + private String shelvesState; + /** + * 上架人 + */ + private String shelvesUsers; } From 171277bcfa05ada1e6591e6160c7f18b7537f909 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 09:03:33 +0800 Subject: [PATCH 03/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=95=86=E5=93=81=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue b/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue index 3c06f0558f..bf84732505 100644 --- a/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue +++ b/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue @@ -505,7 +505,7 @@ commodityInput(row) { console.log("commodityInput》》》》", row) this.commodityQuery.params.name = row.goodsSpuName - this.commodityQuery.params.busrepairBillsid = row.sitemSid + this.commodityQuery.params.busrepairBillsid = row.sourceBillSid this.commodityLoading = true req.getGoodsListPage(this.commodityQuery).then((response) => { if (response.success) { @@ -548,6 +548,8 @@ addGoods(row) { var goods = { + "sourceBillNo": row.sourceBillNo, + "sourceBillSid": row.sourceBillSid, "sitemSid": row.serviceItemSid, 'serviceItem': row.serviceItem, "inventorySid": "", From fe3853c385bd7136a7874769716be9e925c36859 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 09:08:06 +0800 Subject: [PATCH 04/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/maintenance/maintenanceOutbound/index.vue | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue b/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue index bf84732505..72ff86c441 100644 --- a/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue +++ b/yxt-as-ui/src/views/maintenance/maintenanceOutbound/index.vue @@ -300,8 +300,6 @@ total: 0, params: { name: '', - inOrg: "", - outOrg: "" } }, commodityData: [], @@ -548,8 +546,8 @@ addGoods(row) { var goods = { - "sourceBillNo": row.sourceBillNo, - "sourceBillSid": row.sourceBillSid, + "sourceBillNo": this.formobj.sourceBillNo, + "sourceBillSid": this.formobj.sourceBillSid, "sitemSid": row.serviceItemSid, 'serviceItem': row.serviceItem, "inventorySid": "", From 8adfe50b6386123ecd0a02f1d8c47dd14884cd2a Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Thu, 30 May 2024 09:11:20 +0800 Subject: [PATCH 05/18] =?UTF-8?q?=E8=B5=84=E9=87=91=E5=8D=A0=E7=94=A8?= =?UTF-8?q?=E8=B4=B9=E8=AE=A1=E7=AE=97=E9=80=BB=E8=BE=91=E4=B8=AD=E6=97=A5?= =?UTF-8?q?=E4=B8=87=E4=B8=83=E6=94=B9=E4=B8=BA=E6=97=A5=E4=B8=87=E5=8D=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/loanfundday/ScheduledLoanFundDayService.java | 4 ++-- .../biz/loanpushfundhistory/LoanPushFundHistoryService.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfundday/ScheduledLoanFundDayService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfundday/ScheduledLoanFundDayService.java index ff8667312b..dc3b21f55f 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfundday/ScheduledLoanFundDayService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfundday/ScheduledLoanFundDayService.java @@ -40,7 +40,7 @@ public class ScheduledLoanFundDayService { * 每天晚上12点遍历还款计划表中的公司垫款余额,按照以下规则计算: * 每笔垫款的累计资金占用费用A(金融应收未收表中): * 截止到当天垫款余额(在还款计划表中):T 当天新增的资金占用费B - * A=A+B,B =T*7/10000。 + * A=A+B,B =T*10/10000。 * 需要建立每日资金占用费记录表(还款计划明细表sid,日期、当日垫款余额,当日资金占用费) */ //查询 @@ -55,7 +55,7 @@ public class ScheduledLoanFundDayService { //截止到当天垫款余额T BigDecimal paymentMoneyAll = list.get(i).getPaymentMoney(); //当天资金占用费B - BigDecimal fundDay = paymentMoneyAll.multiply(new BigDecimal("7")).divide(new BigDecimal("10000"),2, RoundingMode.HALF_UP); + BigDecimal fundDay = paymentMoneyAll.multiply(new BigDecimal("10")).divide(new BigDecimal("10000"),2, RoundingMode.HALF_UP); LoanRepaymentPlanDetails loanRepaymentPlanDetails = list.get(i); LoanFundDay loanFundDay = new LoanFundDay(); loanFundDay.setBusSid(loanRepaymentPlanDetails.getSid()); diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanpushfundhistory/LoanPushFundHistoryService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanpushfundhistory/LoanPushFundHistoryService.java index 3f0012c3b7..1556459511 100644 --- a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanpushfundhistory/LoanPushFundHistoryService.java +++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanpushfundhistory/LoanPushFundHistoryService.java @@ -126,7 +126,7 @@ public class LoanPushFundHistoryService extends MybatisBaseService dataMap = new HashMap(); List> newList = new ArrayList<>(); - dataMap.put("percent", "日万七"); + dataMap.put("percent", "日万十"); String useOrgSid = ""; ResultBean orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(orgPath); if (orgSidByPath.getSuccess()) { From ac7de2173713f8d25ada6476c8cfca2f478b8f17 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 09:25:34 +0800 Subject: [PATCH 06/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=80=80=E6=AC=BE?= =?UTF-8?q?=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../maintenanceReturnBoundInfo.vue | 54 +++++++++---------- 1 file changed, 26 insertions(+), 28 deletions(-) diff --git a/yxt-as-ui/src/views/storage/maintenanceInOrOutBound/maintenanceReturnBoundInfo.vue b/yxt-as-ui/src/views/storage/maintenanceInOrOutBound/maintenanceReturnBoundInfo.vue index f2305bde53..4ea8165014 100644 --- a/yxt-as-ui/src/views/storage/maintenanceInOrOutBound/maintenanceReturnBoundInfo.vue +++ b/yxt-as-ui/src/views/storage/maintenanceInOrOutBound/maintenanceReturnBoundInfo.vue @@ -139,40 +139,38 @@
服务项目
- - - - - - - - - - - - - - - - + + + + + + + + + + + + + + +
商品列表
- - - - - - - - - - - + + + + + + + + + + - + From bca2a3594f6a5233e9bd5c2b061104d435af232b Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Thu, 30 May 2024 09:25:53 +0800 Subject: [PATCH 07/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E7=B4=A2=E8=B5=94=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/operation/claimadjustment.js | 107 +++++ yxt-as-ui/src/router/index.js | 33 ++ .../claimadjustment/claimadjustment.vue | 327 +++++++++++++ .../claimadjustment/claimadjustmentAdd.vue | 338 ++++++++++++++ .../claimadjustment/claimadjustmentInfo.vue | 170 +++++++ .../claimadjustmentDaiBan.vue | 431 ++++++++++++++++++ .../claimadjustmentEdit.vue | 282 ++++++++++++ .../claimadjustmentYiBan.vue | 217 +++++++++ 8 files changed, 1905 insertions(+) create mode 100644 yxt-as-ui/src/api/operation/claimadjustment.js create mode 100644 yxt-as-ui/src/views/operation/claimadjustment/claimadjustment.vue create mode 100644 yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentAdd.vue create mode 100644 yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentInfo.vue create mode 100644 yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentDaiBan.vue create mode 100644 yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentEdit.vue create mode 100644 yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentYiBan.vue diff --git a/yxt-as-ui/src/api/operation/claimadjustment.js b/yxt-as-ui/src/api/operation/claimadjustment.js new file mode 100644 index 0000000000..0b57965ebc --- /dev/null +++ b/yxt-as-ui/src/api/operation/claimadjustment.js @@ -0,0 +1,107 @@ +import request from '@/utils/request' + +export default { + // 查询分页列表 + listPage: function(params) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/listPage', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 初始化 + fetchDetailsBySid: function(data) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/details', + method: 'get', + params: data + }) + }, + saveOrUpdate: function(data) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/saveOrUpdateBill', + method: 'post', + data: data, + headers: { 'Content-Type': 'application/json' } + }) + }, + deleteBySids: function(data) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/delBySids', + method: 'DELETE', + data: data, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 提交流程 + submit: function(params) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/submitApply', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 流程审批(同意) + complete: function(params) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/complete', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 流程审批(加签) + delegate: function(params) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/delegate', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 流程审批(驳回) + reject: function(params) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/reject', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 流程审批(终止) + breakProcess: function(params) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/breakProcess', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 流程审批(撤回) + revokeProcess: function(params) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/revokeProcess', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + // 审批流程(同意)获取下一环节 + getNextNodesForSubmit: function(data) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/getNextNodesForSubmit', + method: 'get', + params: data + }) + }, + // 审批流程(驳回)获取上一环节 + getPreviousNodesForReject: function(data) { + return request({ + url: '/as/v1/AsBusclaimCheckApply/getPreviousNodesForReject', + method: 'get', + params: data + }) + } +} diff --git a/yxt-as-ui/src/router/index.js b/yxt-as-ui/src/router/index.js index 9f409a4e0e..12e9f3746f 100644 --- a/yxt-as-ui/src/router/index.js +++ b/yxt-as-ui/src/router/index.js @@ -116,6 +116,18 @@ export const constantRoutes = [{ name: 'ClaimBilling', meta: { title: '索赔单开票管理', noCache: true } }, + { + path: '/claimpendingverification/claimpendingverification', + component: () => import('@/views/operation/claimpendingverification/claimpendingverification.vue'), + name: 'ClaimPendingVerification', + meta: { title: '工单索赔待核对', noCache: true } + }, + { + path: '/claimadjustment/claimadjustment', + component: () => import('@/views/operation/claimadjustment/claimadjustment.vue'), + name: 'ClaimAdjustment', + meta: { title: '工单索赔调整', noCache: true } + }, { path: '/workslrsettlement/workslrsettlement', component: () => import('@/views/operation/workslrsettlement/workslrsettlement.vue'), @@ -580,6 +592,27 @@ export const constantRoutes = [{ import('@/views/workFlow/suopeikaipiaoFlow/claimbillingYiBan.vue'), name: 'ClaimBillingYiBan' }, + // 工单索赔调整--编辑 + { + path: '/suopeitiaozhengFlow/claimadjustmentEdit', + component: () => + import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentEdit.vue'), + name: 'ClaimAdjustmentEdit' + }, + // 工单索赔调整--待办 + { + path: '/suopeitiaozhengFlow/claimadjustmentDaiBan', + component: () => + import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentDaiBan.vue'), + name: 'ClaimAdjustmentDaiBan' + }, + // 工单索赔调整--已办 + { + path: '/suopeitiaozhengFlow/claimadjustmentYiBan', + component: () => + import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentYiBan.vue'), + name: 'ClaimAdjustmentYiBan' + }, // 404 page must be placed at the end !!! // { path: '*', redirect: '/404', hidden: true } ] diff --git a/yxt-as-ui/src/views/operation/claimadjustment/claimadjustment.vue b/yxt-as-ui/src/views/operation/claimadjustment/claimadjustment.vue new file mode 100644 index 0000000000..31ed8b9b31 --- /dev/null +++ b/yxt-as-ui/src/views/operation/claimadjustment/claimadjustment.vue @@ -0,0 +1,327 @@ + + + + diff --git a/yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentAdd.vue b/yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentAdd.vue new file mode 100644 index 0000000000..1d1c75d09b --- /dev/null +++ b/yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentAdd.vue @@ -0,0 +1,338 @@ + + + + + diff --git a/yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentInfo.vue b/yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentInfo.vue new file mode 100644 index 0000000000..6e1bc68d50 --- /dev/null +++ b/yxt-as-ui/src/views/operation/claimadjustment/claimadjustmentInfo.vue @@ -0,0 +1,170 @@ + + + + + diff --git a/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentDaiBan.vue b/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentDaiBan.vue new file mode 100644 index 0000000000..a316a88466 --- /dev/null +++ b/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentDaiBan.vue @@ -0,0 +1,431 @@ + + + + + diff --git a/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentEdit.vue b/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentEdit.vue new file mode 100644 index 0000000000..839f411d53 --- /dev/null +++ b/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentEdit.vue @@ -0,0 +1,282 @@ + + + + + diff --git a/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentYiBan.vue b/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentYiBan.vue new file mode 100644 index 0000000000..bb4909fa43 --- /dev/null +++ b/yxt-as-ui/src/views/workFlow/suopeitiaozhengFlow/claimadjustmentYiBan.vue @@ -0,0 +1,217 @@ + + + + + From b4c8439eb9fc2d789dce969fdfef7ddd6e51f50d Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Thu, 30 May 2024 09:27:51 +0800 Subject: [PATCH 08/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E7=B4=A2=E8=B5=94=E5=BE=85=E6=A0=B8=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/operation/claimpendingverification.js | 13 + .../claimpendingverification.vue | 242 ++++++++++++++++++ 2 files changed, 255 insertions(+) create mode 100644 yxt-as-ui/src/api/operation/claimpendingverification.js create mode 100644 yxt-as-ui/src/views/operation/claimpendingverification/claimpendingverification.vue diff --git a/yxt-as-ui/src/api/operation/claimpendingverification.js b/yxt-as-ui/src/api/operation/claimpendingverification.js new file mode 100644 index 0000000000..4f161671ff --- /dev/null +++ b/yxt-as-ui/src/api/operation/claimpendingverification.js @@ -0,0 +1,13 @@ +import request from '@/utils/request' + +export default { + // 查询分页列表 + listPage: function (params) { + return request({ + url: '/as/v1/AsBusclaimCheck/listPage', + method: 'post', + data: params, + headers: {'Content-Type': 'application/json'} + }) + } +} diff --git a/yxt-as-ui/src/views/operation/claimpendingverification/claimpendingverification.vue b/yxt-as-ui/src/views/operation/claimpendingverification/claimpendingverification.vue new file mode 100644 index 0000000000..34d0e989ab --- /dev/null +++ b/yxt-as-ui/src/views/operation/claimpendingverification/claimpendingverification.vue @@ -0,0 +1,242 @@ + + + + From b438ed88ae384600f41ab32904bee3cea7b7fea5 Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Thu, 30 May 2024 09:33:03 +0800 Subject: [PATCH 09/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E7=BB=B4=E4=BF=AE?= =?UTF-8?q?=E9=80=80=E6=96=99=E9=A2=86=E6=96=99=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../as/api/asbusrepairbill/AsBusrepairBill.java | 12 ++++++++++-- .../asbusrepairbill/AsBusrepairBillDetailsVo.java | 10 ++++++++++ .../as/api/asbusrepairbill/AsBusrepairBillDto.java | 10 ++++++++++ .../AsBusrepairInventorybillDetailSDto.java | 1 + .../AsBusrepairInventorybillMapper.xml | 3 ++- .../AsBusrepairInventorybillService.java | 5 +++++ .../biz/inventory/wmsoutbill/WmsOutBillService.java | 4 ++-- 7 files changed, 40 insertions(+), 5 deletions(-) diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java index d722565173..d67692cd73 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBill.java @@ -93,7 +93,15 @@ public class AsBusrepairBill extends BaseEntity { private String groupName; @ApiModelProperty("应收金额") private BigDecimal receivableAmount; - - + @ApiModelProperty("工时费") + private BigDecimal hourAmount; + @ApiModelProperty("材料费") + private BigDecimal goodsAmount; + @ApiModelProperty("外出费") + private BigDecimal outAmount; + @ApiModelProperty("厂家补助") + private BigDecimal subsidyAmount; + @ApiModelProperty("其他费用") + private BigDecimal otherAmount; } diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java index a1afccf896..57955e67ea 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDetailsVo.java @@ -20,6 +20,16 @@ public class AsBusrepairBillDetailsVo implements Vo { private String orgPath; @ApiModelProperty("应收金额") private String receivableAmount; + @ApiModelProperty("工时费") + private String hourAmount; + @ApiModelProperty("材料费") + private String goodsAmount; + @ApiModelProperty("外出费") + private String outAmount; + @ApiModelProperty("厂家补助") + private String subsidyAmount; + @ApiModelProperty("其他费用") + private String otherAmount; @ApiModelProperty("班组sid") private String groupSid; private String createDate; diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java index 9b410e759d..ed438b89f3 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairbill/AsBusrepairBillDto.java @@ -20,6 +20,16 @@ public class AsBusrepairBillDto implements Dto { private String orgPath; @ApiModelProperty("应收金额") private String receivableAmount; + @ApiModelProperty("工时费") + private String hourAmount; + @ApiModelProperty("材料费") + private String goodsAmount; + @ApiModelProperty("外出费") + private String outAmount; + @ApiModelProperty("厂家补助") + private String subsidyAmount; + @ApiModelProperty("其他费用") + private String otherAmount; @ApiModelProperty("班组sid") private String groupSid; @ApiModelProperty("班组名称") diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java index c233dfa825..5683b43bf5 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/api/asbusrepairinventorybilldetail/AsBusrepairInventorybillDetailSDto.java @@ -70,4 +70,5 @@ public class AsBusrepairInventorybillDetailSDto { private String operUserSid; @ApiModelProperty("领料人姓名") private String operName; + private String remarks; } diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml index e6fd3e4853..9a582ad7a8 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillMapper.xml @@ -9,7 +9,8 @@ b.billNo as sourceBillNo, a.createByName, a.busTypeValue, - a.warehouseManager + a.warehouseManager, + a.remarks from as_busrepair_inventorybill as a left join as_busrepair_bill as b on a.sourceBillSid = b.sid left join anrui_portal.sys_organization as s on a.deptSid = s.sid diff --git a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java index 68f94ab33a..11479aac08 100644 --- a/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java +++ b/yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairinventorybill/AsBusrepairInventorybillService.java @@ -356,6 +356,11 @@ public class AsBusrepairInventorybillService extends MybatisBaseService Date: Thu, 30 May 2024 11:08:06 +0800 Subject: [PATCH 10/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/.env.development | 4 +- yxt-as-ui/src/api/storage/stocktaking.js | 2 +- yxt-as-ui/src/api/warehouse/warehouseArea.js | 2 +- yxt-as-ui/src/router/index.js | 1273 +++++++++-------- .../src/views/storage/adjustment/index.vue | 8 + .../receivingGoods/receivingGoodsAdd.vue | 2 +- .../goodsShelves/goodsShelvesAdd.vue | 7 +- 7 files changed, 656 insertions(+), 642 deletions(-) create mode 100644 yxt-as-ui/src/views/storage/adjustment/index.vue diff --git a/yxt-as-ui/.env.development b/yxt-as-ui/.env.development index 25d917fcc7..64556290a2 100644 --- a/yxt-as-ui/.env.development +++ b/yxt-as-ui/.env.development @@ -5,5 +5,5 @@ ENV = 'development' VUE_APP_BASE_API = '/api' ## 配置测试和本地开发时的 接口地址 -##VUE_APP_URL = "http://26077a35f5.wicp.vip" -VUE_APP_URL = "http://anrui.yyundong.com" +VUE_APP_URL = "http://192.168.0.116:8111" +##VUE_APP_URL = "http://anrui.yyundong.com" diff --git a/yxt-as-ui/src/api/storage/stocktaking.js b/yxt-as-ui/src/api/storage/stocktaking.js index ec8c65ba0a..282f49f608 100644 --- a/yxt-as-ui/src/api/storage/stocktaking.js +++ b/yxt-as-ui/src/api/storage/stocktaking.js @@ -5,7 +5,7 @@ export default { // 查询分页列表 listPage: function(params) { return request({ - url: '/wms/apiadmin/inventory/wmsinventorycheckbill/listPage', + url: '/wms/v1/wmsinventorycheckbill/listPage', method: 'post', data: params, headers: { 'Content-Type': 'application/json' } diff --git a/yxt-as-ui/src/api/warehouse/warehouseArea.js b/yxt-as-ui/src/api/warehouse/warehouseArea.js index 08e52db09c..83d6c59cb8 100644 --- a/yxt-as-ui/src/api/warehouse/warehouseArea.js +++ b/yxt-as-ui/src/api/warehouse/warehouseArea.js @@ -32,7 +32,7 @@ export default { return request({ url: '/wms/apiadmin/base/wmswarehousearea/selectAll', method: 'get', - params: data, + params: params, headers: { 'Content-Type': 'application/json' } }) }, diff --git a/yxt-as-ui/src/router/index.js b/yxt-as-ui/src/router/index.js index 12e9f3746f..0c4e2d0088 100644 --- a/yxt-as-ui/src/router/index.js +++ b/yxt-as-ui/src/router/index.js @@ -1,636 +1,637 @@ -import Vue from 'vue' -import Router from 'vue-router' - -Vue.use(Router) - -/* Layout */ -import Layout from '@/layout' -/* 所有角色可以访问/没有权限要求的基页 */ - -export const constantRoutes = [{ - path: '/redirect', - component: Layout, - hidden: true, - children: [{ - path: '/redirect/:path(.*)', - component: () => import('@/views/redirect/index.vue') - }] - }, - { - path: '/', - redirect: 'index' - }, - { - path: '/index', - component: Layout, - redirect: '/index', - children: [{ - path: '/index', - component: () => - import('@/views/index.vue'), - name: 'index', - meta: { - title: '主页', - noCache: true, - affix: true - } - }] - }, - { - path: '/404', - component: () => - import('@/views/404'), - hidden: true - }, - { - path: '/operation', - component: Layout, - redirect: '/operation', - meta: { - title: '业务' - }, - children: [ - { - path: '/preregistration/preregistration', - component: () => import('@/views/operation/preregistration/preregistration.vue'), - name: 'Preregistration', - meta: { title: '预约单管理', noCache: true } - }, - { - path: '/repairbill/repairbill', - component: () => import('@/views/operation/repairbill/repairbill.vue'), - name: 'RepairBill', - meta: { title: '维修单管理(登记)', noCache: true } - }, - { - path: '/repairbill/repairbillBySendWork', - component: () => import('@/views/operation/repairbill/repairbillBySendWork.vue'), - name: 'RepairBillBySendWork', - meta: { title: '维修单管理(派工)', noCache: true } - }, - { - path: '/repairbill/repairbillByMaintain', - component: () => import('@/views/operation/repairbill/repairbillByMaintain.vue'), - name: 'RepairBillByMaintain', - meta: { title: '维修单管理(维修)', noCache: true } - }, - { - path: '/repairbill/repairbillByBeCompleted', - component: () => import('@/views/operation/repairbill/repairbillByBeCompleted.vue'), - name: 'RepairBillByBeCompleted', - meta: { title: '维修单管理(竣工)', noCache: true } - }, - { - path: '/repairbill/repairbillBySettleAccounts', - component: () => import('@/views/operation/repairbill/repairbillBySettleAccounts.vue'), - name: 'RepairBillBySettleAccounts', - meta: { title: '维修单管理(结算)', noCache: true } - }, - { - path: '/repairbill/repairbillBYLeaveFactory', - component: () => import('@/views/operation/repairbill/repairbillBYLeaveFactory.vue'), - name: 'RepairBillBYLeaveFactory', - meta: { title: '维修单管理(出厂)', noCache: true } - }, - { - path: '/arrearsleavefactory/arrearsleavefactory', - component: () => import('@/views/operation/arrearsleavefactory/arrearsleavefactory.vue'), - name: 'ArrearsLeaveFactory', - meta: { title: '保外欠款出厂管理', noCache: true } - }, - { - path: '/pendingclaim/pendingclaim', - component: () => import('@/views/operation/pendingclaim/pendingclaim.vue'), - name: 'PendingClaim', - meta: { title: '待索赔维修工单', noCache: true } - }, - { - path: '/claimstatement/claimstatement', - component: () => import('@/views/operation/claimstatement/claimstatement.vue'), - name: 'ClaimStatement', - meta: { title: '厂家索赔单管理', noCache: true } - }, - { - path: '/claimbilling/claimbilling', - component: () => import('@/views/operation/claimbilling/claimbilling.vue'), - name: 'ClaimBilling', - meta: { title: '索赔单开票管理', noCache: true } - }, - { - path: '/claimpendingverification/claimpendingverification', - component: () => import('@/views/operation/claimpendingverification/claimpendingverification.vue'), - name: 'ClaimPendingVerification', - meta: { title: '工单索赔待核对', noCache: true } - }, - { - path: '/claimadjustment/claimadjustment', - component: () => import('@/views/operation/claimadjustment/claimadjustment.vue'), - name: 'ClaimAdjustment', - meta: { title: '工单索赔调整', noCache: true } - }, - { - path: '/workslrsettlement/workslrsettlement', - component: () => import('@/views/operation/workslrsettlement/workslrsettlement.vue'), - name: 'WorkSLRSettlement', - meta: { title: '工单反结算管理', noCache: true } - }, - ] - }, - - { - path: '/maintenance', - component: Layout, - redirect: '/maintenance', - meta: { - title: '维修领料' - }, - children: [ - { - path: '/maintenanceOutbound/index', - component: () => import('@/views/maintenance/maintenanceOutbound/index.vue'), - name: 'MaintenanceOutbound', - meta: { title: '维修出库', noCache: true } - }, - { - path: '/maintenanceReturnBound/index', - component: () => import('@/views/maintenance/maintenanceReturnBound/index.vue'), - name: 'MaintenanceReturnBound', - meta: { title: '维修退库', noCache: true } - }, - ] - }, - - { - path: '/warehouse', - component: Layout, - redirect: '/warehouse', - meta: { - title: '仓库管理' - }, - children: [ - { - path: '/goodsShelves/index', - component: () => import('@/views/warehouse/goodsShelves/index.vue'), - name: 'GoodsShelves', - meta: { title: '库位管理', noCache: true } - }, - { - path: '/warehouseArea/index', - component: () => import('@/views/warehouse/warehouseArea/index.vue'), - name: 'WarehouseArea', - meta: { title: '库区管理', noCache: true } - }, - { - path: '/warehouseAreaType/index', - component: () => import('@/views/warehouse/warehouseAreaType/index.vue'), - name: 'WarehouseAreaType', - meta: { title: '库区类型管理', noCache: true } - }, - { - path: '/warehouse/index', - component: () => import('@/views/warehouse/warehouse/index.vue'), - name: 'Warehouse', - meta: { title: '仓库管理', noCache: true } - } - ] - }, - - { - path: '/goods', - component: Layout, - redirect: '/goods', - meta: { - title: '商品管理' - }, - children: [ - { - path: '/brands/index', - component: () => import('@/views/goods/brands/index.vue'), - name: 'Brands', - meta: { title: '品牌管理', noCache: true } - }, - { - path: '/category/index', - component: () => import('@/views/goods/category/index.vue'), - name: 'Category', - meta: { title: '商品类别', noCache: true } - }, - { - path: '/factory/index', - component: () => import('@/views/goods/factory/index.vue'), - name: 'Factory', - meta: { title: '厂家管理', noCache: true } - }, - { - path: '/goods/index', - component: () => import('@/views/goods/goods/index.vue'), - name: 'Goods', - meta: { title: '商品管理', noCache: true } - }, - { - path: '/unit/index', - component: () => import('@/views/goods/unit/index.vue'), - name: 'Unit', - meta: { title: '计量单位', noCache: true } - } - ] - }, - { - path: '/storage', - component: Layout, - redirect: '/storage', - meta: { - title: '仓储' - }, - children: [ - { - path: '/outStorage/index', - component: () => import('@/views/storage/outStorage/index'), - name: 'OutStorage', - meta: { title: '出库管理', noCache: true } - }, - { - path: '/inventory/inventory', - component: () => import('@/views/storage/inventory/inventory.vue'), - name: 'Inventory', - meta: { title: '库存查询', noCache: true } - }, - { - path: '/inventory/inventoryRefer', - component: () => import('@/views/storage/inventory/inventoryRefer.vue'), - name: 'InventoryRefer', - meta: { title: '出入库查询', noCache: true } - }, - { - path: '/maintenanceInOrOutBound/index', - component: () => import('@/views/storage/maintenanceInOrOutBound/index.vue'), - name: 'MaintenanceInOrOutBound', - meta: { title: '维修出入库查询', noCache: true } - }, - { - path: '/stocktaking/index', - component: () => import('@/views/storage/stocktaking/index'), - name: 'Stocktaking', - meta: { title: '盘点管理', noCache: true } - }, - { - path: '/allocation/index', - component: () => import('@/views/storage/allocation/index'), - name: 'Allocation', - meta: { title: '调拨管理', noCache: true } - }, - { - path: '/deliveryNotice/index', - component: () => import('@/views/storage/deliveryNotice/index'), - name: 'DeliveryNotice', - meta: { title: '到货通知单', noCache: true } - }, - { - path: '/receivingGoods/index', - component: () => import('@/views/storage/receivingGoods/index'), - name: 'ReceivingGoods', - meta: { title: '收货单管理', noCache: true } - }, - { - path: '/upShelf/index', - component: () => import('@/views/storage/upShelf/index'), - name: 'UpShelf', - meta: { title: '上架单管理', noCache: true } - }, - { - path: '/oldPartsFactory/index', - component: () => import('@/views/storage/oldPartsFactory/index'), - name: 'OldPartsFactory', - meta: { title: '旧件返厂', noCache: true } - }, - { - path: '/oldPartsCope/index', - component: () => import('@/views/storage/oldPartsCope/index'), - name: 'OldPartsCope', - meta: { title: '旧件处理', noCache: true } - }, - { - path: '/oldPartsRecovery/index', - component: () => import('@/views/storage/oldPartsRecovery/index'), - name: 'OldPartsRecovery', - meta: { title: '旧件回收', noCache: true } - }, - { - path: '/oldPartsInStorage/index', - component: () => import('@/views/storage/oldPartsInStorage/index'), - name: 'OldPartsInStorage', - meta: { title: '旧件入库', noCache: true } - }, - { - path: '/oldPartsInvertory/index', - component: () => import('@/views/storage/oldPartsInvertory/index'), - name: 'OldPartsInvertory', - meta: { title: '旧件库存', noCache: true } - }, - { - path: '/oldPartsInAndOutStorage/index', - component: () => import('@/views/storage/oldPartsInAndOutStorage/index'), - name: 'OldPartsInAndOutStorage', - meta: { title: '旧件出入库查询', noCache: true } - }, - { - path: '/storageage/storageage', - component: () => import('@/views/storage/storageage/storageage'), - name: 'StorageAge', - meta: { title: '库龄查询', noCache: true } - }, - { - path: '/carryover/carryoverstock', - component: () => import('@/views/storage/carryover/carryoverstock'), - name: 'CarryoverStock', - meta: { title: '结转库存查询', noCache: true } - }, - { - path: '/carryover/carryforwardrecord', - component: () => import('@/views/storage/carryover/carryforwardrecord'), - name: 'CarryForwardRecord', - meta: { title: '结转记录查询', noCache: true } - } - ] - }, - - { - path: '/purchase', - component: Layout, - redirect: '/purchase', - meta: { - title: '采购' - }, - children: [ - { - path: '/procurement/procurement', - component: () => import('@/views/purchase/procurement/procurement.vue'), - name: 'Procurement', - meta: { title: '采购单管理', noCache: true } - }, - { - path: '/purchasereturn/purchasereturn', - component: () => import('@/views/purchase/purchasereturn/purchasereturn.vue'), - name: 'PurchaseReturn', - meta: { title: '采购退货', noCache: true } - } - ] - }, - { - path: '/statement', - component: Layout, - redirect: '/statement', - meta: { - title: '报表' - }, - children: [ - { - path: '/salesstatement/merchandisesalesdetail', - component: () => import('@/views/statement/salesstatement/merchandisesalesdetail.vue'), - name: 'MerchandiseSalesDetail', - meta: { title: '销售明细商品', noCache: true } - }, - { - path: '/salesstatement/merchandisesalessummary', - component: () => import('@/views/statement/salesstatement/merchandisesalessummary.vue'), - name: 'MerchandiseSalesSummary', - meta: { title: '销售汇总商品', noCache: true } - }, - { - path: '/salesstatement/salestrendreport', - component: () => import('@/views/statement/salesstatement/salestrendreport.vue'), - name: 'SalesTrendReport', - meta: { title: '销售价趋势报表', noCache: true } - }, - { - path: '/warehousereport/inventorystatistics', - component: () => import('@/views/statement/warehousereport/inventorystatistics.vue'), - name: 'InventoryStatistics', - meta: { title: '库存统计', noCache: true } - }, - { - path: '/warehousereport/receiptandreceiptrecord', - component: () => import('@/views/statement/warehousereport/receiptandreceiptrecord.vue'), - name: 'ReceiptAndReceiptRecord', - meta: { title: '收发存明细报表', noCache: true } - }, - { - path: '/purchasereport/detailedpurchasereport', - component: () => import('@/views/statement/purchasereport/detailedpurchasereport.vue'), - name: 'DetailedPurchaseReport', - meta: { title: '采购明细报表', noCache: true } - }, - { - path: '/purchasereport/purchasesummaryreport', - component: () => import('@/views/statement/purchasereport/purchasesummaryreport.vue'), - name: 'PurchaseSummaryReport', - meta: { title: '采购汇总报表', noCache: true } - } - ] - }, - { - path: '/basicinformation', - component: Layout, - redirect: '/basicinformation', - meta: { - title: '基础信息' - }, - children: [ - { - path: '/maintenanceitem/maintenanceitem', - component: () => import('@/views/basicinformation/maintenanceitem/maintenanceitem.vue'), - name: 'MaintenanceItem', - meta: { title: '维修项目管理', noCache: true } - }, - { - path: '/additionitem/additionitem', - component: () => import('@/views/basicinformation/additionitem/additionitem.vue'), - name: 'AdditionItem', - meta: { title: '附加项目管理', noCache: true } - }, - { - path: '/setmeal/setmeal', - component: () => import('@/views/basicinformation/setmeal/setmeal.vue'), - name: 'Setmeal', - meta: { title: '套餐管理', noCache: true } - }, - { - path: '/profession/profession', - component: () => import('@/views/basicinformation/profession/profession.vue'), - name: 'Profession', - meta: { title: '工种管理', noCache: true } - }, - { - path: '/subjects/subjects', - component: () => import('@/views/basicinformation/subjects/subjects.vue'), - name: 'Subjects', - meta: { title: '科目管理', noCache: true } - }, - { - path: '/team/team', - component: () => import('@/views/basicinformation/team/team.vue'), - name: 'Team', - meta: { title: '班组管理', noCache: true } - }, - { - path: '/suppliertype/suppliertype', - component: () => import('@/views/basicinformation/suppliertype/suppliertype.vue'), - name: 'SupplierType', - meta: { title: '供应商类型管理', noCache: true } - }, - { - path: '/supplier/supplier', - component: () => import('@/views/basicinformation/supplier/supplier.vue'), - name: 'Supplier', - meta: { title: '供应商管理', noCache: true } - } - ] - }, - - // 采购申请管理--编辑 - { - path: '/caigouFlow/procurementEdit', - component: () => - import('@/views/workFlow/caigouFlow/procurementEdit.vue'), - name: 'ProcurementEdit' - }, - // 采购申请管理--待办 - { - path: '/caigouFlow/procurementDaiBan', - component: () => - import('@/views/workFlow/caigouFlow/procurementDaiBan.vue'), - name: 'ProcurementDaiBan' - }, - // 采购申请管理--已办 - { - path: '/caigouFlow/procurementYiBan', - component: () => - import('@/views/workFlow/caigouFlow/procurementYiBan.vue'), - name: 'ProcurementYiBan' - }, - // 采购退货单管理--编辑 - { - path: '/caigoutuihuoFlow/purchasereturnEdit', - component: () => - import('@/views/workFlow/caigoutuihuoFlow/purchasereturnEdit.vue'), - name: 'PurchaseReturnEdit' - }, - // 采购退货单管理--待办 - { - path: '/caigoutuihuoFlow/purchasereturnDaiBan', - component: () => - import('@/views/workFlow/caigoutuihuoFlow/purchasereturnDaiBan.vue'), - name: 'PurchaseReturnDaiBan' - }, - // 采购退货单管理--已办 - { - path: '/caigoutuihuoFlow/purchasereturnYiBan', - component: () => - import('@/views/workFlow/caigoutuihuoFlow/purchasereturnYiBan.vue'), - name: 'PurchaseReturnYiBan' - }, - // 工单反结算管理--编辑 - { - path: '/fanjiesuanFlow/workslrsettlementEdit', - component: () => - import('@/views/workFlow/fanjiesuanFlow/workslrsettlementEdit.vue'), - name: 'WorkSLRSettlementEdit' - }, - // 工单反结算管理--待办 - { - path: '/fanjiesuanFlow/workslrsettlementDaiBan', - component: () => - import('@/views/workFlow/fanjiesuanFlow/workslrsettlementDaiBan.vue'), - name: 'WorkSLRSettlementDaiBan' - }, - // 工单反结算管理--已办 - { - path: '/fanjiesuanFlow/workslrsettlementYiBan', - component: () => - import('@/views/workFlow/fanjiesuanFlow/workslrsettlementYiBan.vue'), - name: 'WorkSLRSettlementYiBan' - }, - // 保外欠款出厂管理--编辑 - { - path: '/qikuanchuchangFlow/arrearsleavefactoryEdit', - component: () => - import('@/views/workFlow/qikuanchuchangFlow/arrearsleavefactoryEdit.vue'), - name: 'ArrearsLeaveFactoryEdit' - }, - // 保外欠款出厂管理--待办 - { - path: '/qikuanchuchangFlow/arrearsleavefactoryDaiBan', - component: () => - import('@/views/workFlow/qikuanchuchangFlow/arrearsleavefactoryDaiBan.vue'), - name: 'ArrearsLeaveFactoryDaiBan' - }, - // 保外欠款出厂管理--已办 - { - path: '/qikuanchuchangFlow/arrearsleavefactoryYiBan', - component: () => - import('@/views/workFlow/qikuanchuchangFlow/arrearsleavefactoryYiBan.vue'), - name: 'ArrearsLeaveFactoryYiBan' - }, - // 索赔单开票管理--编辑 - { - path: '/suopeikaipiaoFlow/claimbillingEdit', - component: () => - import('@/views/workFlow/suopeikaipiaoFlow/claimbillingEdit.vue'), - name: 'ClaimBillingEdit' - }, - // 索赔单开票管理--待办 - { - path: '/suopeikaipiaoFlow/claimbillingDaiBan', - component: () => - import('@/views/workFlow/suopeikaipiaoFlow/claimbillingDaiBan.vue'), - name: 'ClaimBillingDaiBan' - }, - // 索赔单开票管理--已办 - { - path: '/suopeikaipiaoFlow/claimbillingYiBan', - component: () => - import('@/views/workFlow/suopeikaipiaoFlow/claimbillingYiBan.vue'), - name: 'ClaimBillingYiBan' - }, - // 工单索赔调整--编辑 - { - path: '/suopeitiaozhengFlow/claimadjustmentEdit', - component: () => - import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentEdit.vue'), - name: 'ClaimAdjustmentEdit' - }, - // 工单索赔调整--待办 - { - path: '/suopeitiaozhengFlow/claimadjustmentDaiBan', - component: () => - import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentDaiBan.vue'), - name: 'ClaimAdjustmentDaiBan' - }, - // 工单索赔调整--已办 - { - path: '/suopeitiaozhengFlow/claimadjustmentYiBan', - component: () => - import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentYiBan.vue'), - name: 'ClaimAdjustmentYiBan' - }, - // 404 page must be placed at the end !!! - // { path: '*', redirect: '/404', hidden: true } -] - -const createRouter = () => new Router({ - // mode: 'history', // require service support - scrollBehavior: () => ({ - y: 0 - }), - routes: constantRoutes -}) - -const router = createRouter() - -// Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 -export function resetRouter() { - const newRouter = createRouter() - router.matcher = newRouter.matcher // reset router -} - -export default router +import Vue from 'vue' +import Router from 'vue-router' + +Vue.use(Router) + +/* Layout */ +import Layout from '@/layout' +/* 所有角色可以访问/没有权限要求的基页 */ + +export const constantRoutes = [{ + path: '/redirect', + component: Layout, + hidden: true, + children: [{ + path: '/redirect/:path(.*)', + component: () => import('@/views/redirect/index.vue') + }] + }, + { + path: '/', + redirect: 'index' + }, + { + path: '/index', + component: Layout, + redirect: '/index', + children: [{ + path: '/index', + component: () => + import('@/views/index.vue'), + name: 'index', + meta: { + title: '主页', + noCache: true, + affix: true + } + }] + }, + { + path: '/404', + component: () => + import('@/views/404'), + hidden: true + }, + { + path: '/operation', + component: Layout, + redirect: '/operation', + meta: { + title: '业务' + }, + children: [ + { + path: '/preregistration/preregistration', + component: () => import('@/views/operation/preregistration/preregistration.vue'), + name: 'Preregistration', + meta: { title: '预约单管理', noCache: true } + }, + { + path: '/repairbill/repairbill', + component: () => import('@/views/operation/repairbill/repairbill.vue'), + name: 'RepairBill', + meta: { title: '维修单管理(登记)', noCache: true } + }, + { + path: '/repairbill/repairbillBySendWork', + component: () => import('@/views/operation/repairbill/repairbillBySendWork.vue'), + name: 'RepairBillBySendWork', + meta: { title: '维修单管理(派工)', noCache: true } + }, + { + path: '/repairbill/repairbillByMaintain', + component: () => import('@/views/operation/repairbill/repairbillByMaintain.vue'), + name: 'RepairBillByMaintain', + meta: { title: '维修单管理(维修)', noCache: true } + }, + { + path: '/repairbill/repairbillByBeCompleted', + component: () => import('@/views/operation/repairbill/repairbillByBeCompleted.vue'), + name: 'RepairBillByBeCompleted', + meta: { title: '维修单管理(竣工)', noCache: true } + }, + { + path: '/repairbill/repairbillBySettleAccounts', + component: () => import('@/views/operation/repairbill/repairbillBySettleAccounts.vue'), + name: 'RepairBillBySettleAccounts', + meta: { title: '维修单管理(结算)', noCache: true } + }, + { + path: '/repairbill/repairbillBYLeaveFactory', + component: () => import('@/views/operation/repairbill/repairbillBYLeaveFactory.vue'), + name: 'RepairBillBYLeaveFactory', + meta: { title: '维修单管理(出厂)', noCache: true } + }, + { + path: '/arrearsleavefactory/arrearsleavefactory', + component: () => import('@/views/operation/arrearsleavefactory/arrearsleavefactory.vue'), + name: 'ArrearsLeaveFactory', + meta: { title: '保外欠款出厂管理', noCache: true } + }, + { + path: '/pendingclaim/pendingclaim', + component: () => import('@/views/operation/pendingclaim/pendingclaim.vue'), + name: 'PendingClaim', + meta: { title: '待索赔维修工单', noCache: true } + }, + { + path: '/claimstatement/claimstatement', + component: () => import('@/views/operation/claimstatement/claimstatement.vue'), + name: 'ClaimStatement', + meta: { title: '厂家索赔单管理', noCache: true } + }, + { + path: '/claimbilling/claimbilling', + component: () => import('@/views/operation/claimbilling/claimbilling.vue'), + name: 'ClaimBilling', + meta: { title: '索赔单开票管理', noCache: true } + }, + { + path: '/claimpendingverification/claimpendingverification', + component: () => import('@/views/operation/claimpendingverification/claimpendingverification.vue'), + name: 'ClaimPendingVerification', + meta: { title: '工单索赔待核对', noCache: true } + }, + { + path: '/claimadjustment/claimadjustment', + component: () => import('@/views/operation/claimadjustment/claimadjustment.vue'), + name: 'ClaimAdjustment', + meta: { title: '工单索赔调整', noCache: true } + }, + { + path: '/workslrsettlement/workslrsettlement', + component: () => import('@/views/operation/workslrsettlement/workslrsettlement.vue'), + name: 'WorkSLRSettlement', + meta: { title: '工单反结算管理', noCache: true } + }, + ] + }, + + { + path: '/maintenance', + component: Layout, + redirect: '/maintenance', + meta: { + title: '维修领料' + }, + children: [ + { + path: '/maintenanceOutbound/index', + component: () => import('@/views/maintenance/maintenanceOutbound/index.vue'), + name: 'MaintenanceOutbound', + meta: { title: '维修出库', noCache: true } + }, + { + path: '/maintenanceReturnBound/index', + component: () => import('@/views/maintenance/maintenanceReturnBound/index.vue'), + name: 'MaintenanceReturnBound', + meta: { title: '维修退库', noCache: true } + }, + ] + }, + + { + path: '/warehouse', + component: Layout, + redirect: '/warehouse', + meta: { + title: '仓库管理' + }, + children: [ + { + path: '/goodsShelves/index', + component: () => import('@/views/warehouse/goodsShelves/index.vue'), + name: 'GoodsShelves', + meta: { title: '库位管理', noCache: true } + }, + { + path: '/warehouseArea/index', + component: () => import('@/views/warehouse/warehouseArea/index.vue'), + name: 'WarehouseArea', + meta: { title: '库区管理', noCache: true } + }, + { + path: '/warehouseAreaType/index', + component: () => import('@/views/warehouse/warehouseAreaType/index.vue'), + name: 'WarehouseAreaType', + meta: { title: '库区类型管理', noCache: true } + }, + { + path: '/warehouse/index', + component: () => import('@/views/warehouse/warehouse/index.vue'), + name: 'Warehouse', + meta: { title: '仓库管理', noCache: true } + } + ] + }, + + { + path: '/goods', + component: Layout, + redirect: '/goods', + meta: { + title: '商品管理' + }, + children: [ + { + path: '/brands/index', + component: () => import('@/views/goods/brands/index.vue'), + name: 'Brands', + meta: { title: '品牌管理', noCache: true } + }, + { + path: '/category/index', + component: () => import('@/views/goods/category/index.vue'), + name: 'Category', + meta: { title: '商品类别', noCache: true } + }, + { + path: '/factory/index', + component: () => import('@/views/goods/factory/index.vue'), + name: 'Factory', + meta: { title: '厂家管理', noCache: true } + }, + { + path: '/goods/index', + component: () => import('@/views/goods/goods/index.vue'), + name: 'Goods', + meta: { title: '商品管理', noCache: true } + }, + { + path: '/unit/index', + component: () => import('@/views/goods/unit/index.vue'), + name: 'Unit', + meta: { title: '计量单位', noCache: true } + } + ] + }, + { + path: '/storage', + component: Layout, + redirect: '/storage', + meta: { + title: '仓储' + }, + children: [ + { + path: '/outStorage/index', + component: () => import('@/views/storage/outStorage/index'), + name: 'OutStorage', + meta: { title: '出库管理', noCache: true } + }, + { + path: '/inventory/inventory', + component: () => import('@/views/storage/inventory/inventory.vue'), + name: 'Inventory', + meta: { title: '库存查询', noCache: true } + }, + { + path: '/inventory/inventoryRefer', + component: () => import('@/views/storage/inventory/inventoryRefer.vue'), + name: 'InventoryRefer', + meta: { title: '出入库查询', noCache: true } + }, + { path: '/adjustment/index', component: () => import('@/views/storage/adjustment/index.vue'), name: 'Adjustment', meta: { title: '定/调价', noCache: true } }, + { + path: '/maintenanceInOrOutBound/index', + component: () => import('@/views/storage/maintenanceInOrOutBound/index.vue'), + name: 'MaintenanceInOrOutBound', + meta: { title: '维修出入库查询', noCache: true } + }, + { + path: '/stocktaking/index', + component: () => import('@/views/storage/stocktaking/index'), + name: 'Stocktaking', + meta: { title: '盘点管理', noCache: true } + }, + { + path: '/allocation/index', + component: () => import('@/views/storage/allocation/index'), + name: 'Allocation', + meta: { title: '调拨管理', noCache: true } + }, + { + path: '/deliveryNotice/index', + component: () => import('@/views/storage/deliveryNotice/index'), + name: 'DeliveryNotice', + meta: { title: '到货通知单', noCache: true } + }, + { + path: '/receivingGoods/index', + component: () => import('@/views/storage/receivingGoods/index'), + name: 'ReceivingGoods', + meta: { title: '收货单管理', noCache: true } + }, + { + path: '/upShelf/index', + component: () => import('@/views/storage/upShelf/index'), + name: 'UpShelf', + meta: { title: '上架单管理', noCache: true } + }, + { + path: '/oldPartsFactory/index', + component: () => import('@/views/storage/oldPartsFactory/index'), + name: 'OldPartsFactory', + meta: { title: '旧件返厂', noCache: true } + }, + { + path: '/oldPartsCope/index', + component: () => import('@/views/storage/oldPartsCope/index'), + name: 'OldPartsCope', + meta: { title: '旧件处理', noCache: true } + }, + { + path: '/oldPartsRecovery/index', + component: () => import('@/views/storage/oldPartsRecovery/index'), + name: 'OldPartsRecovery', + meta: { title: '旧件回收', noCache: true } + }, + { + path: '/oldPartsInStorage/index', + component: () => import('@/views/storage/oldPartsInStorage/index'), + name: 'OldPartsInStorage', + meta: { title: '旧件入库', noCache: true } + }, + { + path: '/oldPartsInvertory/index', + component: () => import('@/views/storage/oldPartsInvertory/index'), + name: 'OldPartsInvertory', + meta: { title: '旧件库存', noCache: true } + }, + { + path: '/oldPartsInAndOutStorage/index', + component: () => import('@/views/storage/oldPartsInAndOutStorage/index'), + name: 'OldPartsInAndOutStorage', + meta: { title: '旧件出入库查询', noCache: true } + }, + { + path: '/storageage/storageage', + component: () => import('@/views/storage/storageage/storageage'), + name: 'StorageAge', + meta: { title: '库龄查询', noCache: true } + }, + { + path: '/carryover/carryoverstock', + component: () => import('@/views/storage/carryover/carryoverstock'), + name: 'CarryoverStock', + meta: { title: '结转库存查询', noCache: true } + }, + { + path: '/carryover/carryforwardrecord', + component: () => import('@/views/storage/carryover/carryforwardrecord'), + name: 'CarryForwardRecord', + meta: { title: '结转记录查询', noCache: true } + } + ] + }, + + { + path: '/purchase', + component: Layout, + redirect: '/purchase', + meta: { + title: '采购' + }, + children: [ + { + path: '/procurement/procurement', + component: () => import('@/views/purchase/procurement/procurement.vue'), + name: 'Procurement', + meta: { title: '采购单管理', noCache: true } + }, + { + path: '/purchasereturn/purchasereturn', + component: () => import('@/views/purchase/purchasereturn/purchasereturn.vue'), + name: 'PurchaseReturn', + meta: { title: '采购退货', noCache: true } + } + ] + }, + { + path: '/statement', + component: Layout, + redirect: '/statement', + meta: { + title: '报表' + }, + children: [ + { + path: '/salesstatement/merchandisesalesdetail', + component: () => import('@/views/statement/salesstatement/merchandisesalesdetail.vue'), + name: 'MerchandiseSalesDetail', + meta: { title: '销售明细商品', noCache: true } + }, + { + path: '/salesstatement/merchandisesalessummary', + component: () => import('@/views/statement/salesstatement/merchandisesalessummary.vue'), + name: 'MerchandiseSalesSummary', + meta: { title: '销售汇总商品', noCache: true } + }, + { + path: '/salesstatement/salestrendreport', + component: () => import('@/views/statement/salesstatement/salestrendreport.vue'), + name: 'SalesTrendReport', + meta: { title: '销售价趋势报表', noCache: true } + }, + { + path: '/warehousereport/inventorystatistics', + component: () => import('@/views/statement/warehousereport/inventorystatistics.vue'), + name: 'InventoryStatistics', + meta: { title: '库存统计', noCache: true } + }, + { + path: '/warehousereport/receiptandreceiptrecord', + component: () => import('@/views/statement/warehousereport/receiptandreceiptrecord.vue'), + name: 'ReceiptAndReceiptRecord', + meta: { title: '收发存明细报表', noCache: true } + }, + { + path: '/purchasereport/detailedpurchasereport', + component: () => import('@/views/statement/purchasereport/detailedpurchasereport.vue'), + name: 'DetailedPurchaseReport', + meta: { title: '采购明细报表', noCache: true } + }, + { + path: '/purchasereport/purchasesummaryreport', + component: () => import('@/views/statement/purchasereport/purchasesummaryreport.vue'), + name: 'PurchaseSummaryReport', + meta: { title: '采购汇总报表', noCache: true } + } + ] + }, + { + path: '/basicinformation', + component: Layout, + redirect: '/basicinformation', + meta: { + title: '基础信息' + }, + children: [ + { + path: '/maintenanceitem/maintenanceitem', + component: () => import('@/views/basicinformation/maintenanceitem/maintenanceitem.vue'), + name: 'MaintenanceItem', + meta: { title: '维修项目管理', noCache: true } + }, + { + path: '/additionitem/additionitem', + component: () => import('@/views/basicinformation/additionitem/additionitem.vue'), + name: 'AdditionItem', + meta: { title: '附加项目管理', noCache: true } + }, + { + path: '/setmeal/setmeal', + component: () => import('@/views/basicinformation/setmeal/setmeal.vue'), + name: 'Setmeal', + meta: { title: '套餐管理', noCache: true } + }, + { + path: '/profession/profession', + component: () => import('@/views/basicinformation/profession/profession.vue'), + name: 'Profession', + meta: { title: '工种管理', noCache: true } + }, + { + path: '/subjects/subjects', + component: () => import('@/views/basicinformation/subjects/subjects.vue'), + name: 'Subjects', + meta: { title: '科目管理', noCache: true } + }, + { + path: '/team/team', + component: () => import('@/views/basicinformation/team/team.vue'), + name: 'Team', + meta: { title: '班组管理', noCache: true } + }, + { + path: '/suppliertype/suppliertype', + component: () => import('@/views/basicinformation/suppliertype/suppliertype.vue'), + name: 'SupplierType', + meta: { title: '供应商类型管理', noCache: true } + }, + { + path: '/supplier/supplier', + component: () => import('@/views/basicinformation/supplier/supplier.vue'), + name: 'Supplier', + meta: { title: '供应商管理', noCache: true } + } + ] + }, + + // 采购申请管理--编辑 + { + path: '/caigouFlow/procurementEdit', + component: () => + import('@/views/workFlow/caigouFlow/procurementEdit.vue'), + name: 'ProcurementEdit' + }, + // 采购申请管理--待办 + { + path: '/caigouFlow/procurementDaiBan', + component: () => + import('@/views/workFlow/caigouFlow/procurementDaiBan.vue'), + name: 'ProcurementDaiBan' + }, + // 采购申请管理--已办 + { + path: '/caigouFlow/procurementYiBan', + component: () => + import('@/views/workFlow/caigouFlow/procurementYiBan.vue'), + name: 'ProcurementYiBan' + }, + // 采购退货单管理--编辑 + { + path: '/caigoutuihuoFlow/purchasereturnEdit', + component: () => + import('@/views/workFlow/caigoutuihuoFlow/purchasereturnEdit.vue'), + name: 'PurchaseReturnEdit' + }, + // 采购退货单管理--待办 + { + path: '/caigoutuihuoFlow/purchasereturnDaiBan', + component: () => + import('@/views/workFlow/caigoutuihuoFlow/purchasereturnDaiBan.vue'), + name: 'PurchaseReturnDaiBan' + }, + // 采购退货单管理--已办 + { + path: '/caigoutuihuoFlow/purchasereturnYiBan', + component: () => + import('@/views/workFlow/caigoutuihuoFlow/purchasereturnYiBan.vue'), + name: 'PurchaseReturnYiBan' + }, + // 工单反结算管理--编辑 + { + path: '/fanjiesuanFlow/workslrsettlementEdit', + component: () => + import('@/views/workFlow/fanjiesuanFlow/workslrsettlementEdit.vue'), + name: 'WorkSLRSettlementEdit' + }, + // 工单反结算管理--待办 + { + path: '/fanjiesuanFlow/workslrsettlementDaiBan', + component: () => + import('@/views/workFlow/fanjiesuanFlow/workslrsettlementDaiBan.vue'), + name: 'WorkSLRSettlementDaiBan' + }, + // 工单反结算管理--已办 + { + path: '/fanjiesuanFlow/workslrsettlementYiBan', + component: () => + import('@/views/workFlow/fanjiesuanFlow/workslrsettlementYiBan.vue'), + name: 'WorkSLRSettlementYiBan' + }, + // 保外欠款出厂管理--编辑 + { + path: '/qikuanchuchangFlow/arrearsleavefactoryEdit', + component: () => + import('@/views/workFlow/qikuanchuchangFlow/arrearsleavefactoryEdit.vue'), + name: 'ArrearsLeaveFactoryEdit' + }, + // 保外欠款出厂管理--待办 + { + path: '/qikuanchuchangFlow/arrearsleavefactoryDaiBan', + component: () => + import('@/views/workFlow/qikuanchuchangFlow/arrearsleavefactoryDaiBan.vue'), + name: 'ArrearsLeaveFactoryDaiBan' + }, + // 保外欠款出厂管理--已办 + { + path: '/qikuanchuchangFlow/arrearsleavefactoryYiBan', + component: () => + import('@/views/workFlow/qikuanchuchangFlow/arrearsleavefactoryYiBan.vue'), + name: 'ArrearsLeaveFactoryYiBan' + }, + // 索赔单开票管理--编辑 + { + path: '/suopeikaipiaoFlow/claimbillingEdit', + component: () => + import('@/views/workFlow/suopeikaipiaoFlow/claimbillingEdit.vue'), + name: 'ClaimBillingEdit' + }, + // 索赔单开票管理--待办 + { + path: '/suopeikaipiaoFlow/claimbillingDaiBan', + component: () => + import('@/views/workFlow/suopeikaipiaoFlow/claimbillingDaiBan.vue'), + name: 'ClaimBillingDaiBan' + }, + // 索赔单开票管理--已办 + { + path: '/suopeikaipiaoFlow/claimbillingYiBan', + component: () => + import('@/views/workFlow/suopeikaipiaoFlow/claimbillingYiBan.vue'), + name: 'ClaimBillingYiBan' + }, + // 工单索赔调整--编辑 + { + path: '/suopeitiaozhengFlow/claimadjustmentEdit', + component: () => + import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentEdit.vue'), + name: 'ClaimAdjustmentEdit' + }, + // 工单索赔调整--待办 + { + path: '/suopeitiaozhengFlow/claimadjustmentDaiBan', + component: () => + import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentDaiBan.vue'), + name: 'ClaimAdjustmentDaiBan' + }, + // 工单索赔调整--已办 + { + path: '/suopeitiaozhengFlow/claimadjustmentYiBan', + component: () => + import('@/views/workFlow/suopeitiaozhengFlow/claimadjustmentYiBan.vue'), + name: 'ClaimAdjustmentYiBan' + }, + // 404 page must be placed at the end !!! + // { path: '*', redirect: '/404', hidden: true } +] + +const createRouter = () => new Router({ + // mode: 'history', // require service support + scrollBehavior: () => ({ + y: 0 + }), + routes: constantRoutes +}) + +const router = createRouter() + +// Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 +export function resetRouter() { + const newRouter = createRouter() + router.matcher = newRouter.matcher // reset router +} + +export default router diff --git a/yxt-as-ui/src/views/storage/adjustment/index.vue b/yxt-as-ui/src/views/storage/adjustment/index.vue new file mode 100644 index 0000000000..02409e35d2 --- /dev/null +++ b/yxt-as-ui/src/views/storage/adjustment/index.vue @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue b/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue index 8ef21a7aef..92c766ccd7 100644 --- a/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue +++ b/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue @@ -58,7 +58,7 @@
* 供应商
- + diff --git a/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue b/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue index 0203637432..8723534779 100644 --- a/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue +++ b/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue @@ -177,7 +177,12 @@ getWarehouseArea(sid) { this.formobj.locationSid = '' this.formobj.locationName = '' - req3.getAllWarehouseareaBysid(sid).then(resp => { + + var params ={ + ckSid :sid + } + + req3.getAllWarehouseareaBysid(params).then(resp => { console.log('>>>>>>>>>getAllWarehousearea', resp) this.warehouseAreaList = resp.data }).catch(() => {}) From dda1c8f1de18e5d790cf98708cbaacdd31481582 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 11:11:55 +0800 Subject: [PATCH 11/18] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/.env.development | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yxt-as-ui/.env.development b/yxt-as-ui/.env.development index 64556290a2..25d917fcc7 100644 --- a/yxt-as-ui/.env.development +++ b/yxt-as-ui/.env.development @@ -5,5 +5,5 @@ ENV = 'development' VUE_APP_BASE_API = '/api' ## 配置测试和本地开发时的 接口地址 -VUE_APP_URL = "http://192.168.0.116:8111" -##VUE_APP_URL = "http://anrui.yyundong.com" +##VUE_APP_URL = "http://26077a35f5.wicp.vip" +VUE_APP_URL = "http://anrui.yyundong.com" From 61715b317af4a7fe8b84c979de3c5816f6cc45e2 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 11:35:29 +0800 Subject: [PATCH 12/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=94=B6=E8=B4=A7?= =?UTF-8?q?=E5=8D=95=E9=83=A8=E9=97=A8=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../storage/receivingGoods/receivingGoodsAdd.vue | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue b/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue index 92c766ccd7..a7ff6ff188 100644 --- a/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue +++ b/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue @@ -296,8 +296,10 @@ "sourceBillNo": "", "createBySid": window.sessionStorage.getItem('userSid'), "createByName": window.sessionStorage.getItem('name'), - "deptName": '', - "deptSid": '', + "deptName": window.sessionStorage.getItem('defaultOrgPathName').substring(window + .sessionStorage.getItem('defaultOrgPathName').lastIndexOf('/') + 1), + "deptSid": window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage + .getItem('defaultOrgPath').lastIndexOf('/') + 1), "createTime": getCurrentDate(), "busTypeKey": "", "busTypeValue": "", @@ -640,8 +642,10 @@ "sourceBillNo": "", "createBySid": window.sessionStorage.getItem('userSid'), "createByName": window.sessionStorage.getItem('name'), - "deptName": '', - "deptSid": '', + "deptName": window.sessionStorage.getItem('defaultOrgPathName').substring(window + .sessionStorage.getItem('defaultOrgPathName').lastIndexOf('/') + 1), + "deptSid": window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage + .getItem('defaultOrgPath').lastIndexOf('/') + 1), "createTime": getCurrentDate(), "busTypeKey": "", "busTypeValue": "", From 35d32ca1eecac65532a86c663bb299ef66ba9d60 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 15:23:19 +0800 Subject: [PATCH 13/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=BA=93=E4=BD=8D?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E8=BE=93=E5=85=A5=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue b/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue index 8723534779..d967bd3642 100644 --- a/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue +++ b/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue @@ -55,7 +55,7 @@
* 库位编码
+ oninput="this.value=this.value.replace(/[^\w_-]/g,'');" /> From d12a60b970ede4994d5cd21e5ca4dac8329c91a0 Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 15:41:14 +0800 Subject: [PATCH 14/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=BA=93=E4=BD=8D?= =?UTF-8?q?=E7=BC=96=E7=A0=81=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../goodsShelves/goodsShelvesAdd.vue | 31 +++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue b/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue index d967bd3642..fdb020d415 100644 --- a/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue +++ b/yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue @@ -54,7 +54,7 @@
* 库位编码
-
@@ -178,8 +178,8 @@ this.formobj.locationSid = '' this.formobj.locationName = '' - var params ={ - ckSid :sid + var params = { + ckSid: sid } req3.getAllWarehouseareaBysid(params).then(resp => { @@ -247,6 +247,31 @@ // } + var aaa = this.formobj.rackCode.split('-') + + console.log('>>>>>>>>>saveOrUpdate', aaa) + if (aaa.length != 4) { + this.$message({ + showClose: true, + type: 'warning', + message: '库位编码格式错误' + }) + return + } + + for (var i = 0; i < aaa.length; i++) { + if (aaa[i] == '') { + this.$message({ + showClose: true, + type: 'warning', + message: '库位编码格式错误' + }) + return + } + } + + + this.$refs['form_obj'].validate((valid) => { if (valid) { req.saveGoodsShelves(this.formobj) From 525382e80d690b6b890b421929e2020bbb5d8c0f Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Thu, 30 May 2024 15:59:57 +0800 Subject: [PATCH 15/18] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E4=B8=8A?= =?UTF-8?q?=E6=9E=B6=EF=BC=8C=E4=BF=AE=E6=94=B9=E6=94=B6=E8=B4=A7=E5=8D=95?= =?UTF-8?q?=E4=BF=9D=E5=AD=98=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apiadmin/base/WmsWarehouseRackRest.java | 11 +- .../apiadmin/inventroy/WmsGoodsTagRest.java | 27 ++ .../apiadmin/inventroy/WmsShelfBillRest.java | 22 +- .../base/wmswarehouserack/WmsHouseInfoVo.java | 20 ++ .../wmswarehouserack/WmsWarehouseRack.java | 1 + .../WmsWarehouseRackMapper.java | 2 + .../WmsWarehouseRackMapper.xml | 3 + .../WmsWarehouseRackService.java | 83 +++++-- .../inventory/wmsgoodstag/WmsGoodsTag.java | 45 ++++ .../wmsgoodstag/WmsGoodsTagMapper.java | 17 ++ .../wmsgoodstag/WmsGoodsTagMapper.xml | 8 + .../wmsgoodstag/WmsGoodsTagService.java | 19 ++ .../wmsreceiptbill/WmsReceiptBillService.java | 89 +++---- .../wmsshelfbill/WmsShelfBillService.java | 232 +++++++++++++++++- .../app/AppSaveBillRecordDto.java | 43 ++++ .../inventory/wmsshelfbill/app/AppScanVo.java | 44 ++++ .../wmsshelfbill/app/AppShelInitVo.java | 29 +++ .../WmsShelfBillDetailMapper.java | 7 + .../WmsShelfBillDetailMapper.xml | 20 ++ .../WmsShelfBillDetailService.java | 13 + 20 files changed, 661 insertions(+), 74 deletions(-) create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsGoodsTagRest.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsHouseInfoVo.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTag.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppSaveBillRecordDto.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppScanVo.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelInitVo.java diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/base/WmsWarehouseRackRest.java b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/base/WmsWarehouseRackRest.java index a7ab4fb0f4..63775c838a 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/base/WmsWarehouseRackRest.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/base/WmsWarehouseRackRest.java @@ -3,10 +3,7 @@ package com.yxt.wms.apiadmin.base; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; -import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackDto; -import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackQuery; -import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackService; -import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackVo; +import com.yxt.wms.biz.base.wmswarehouserack.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -65,4 +62,10 @@ public class WmsWarehouseRackRest { public ResultBean updateIsEnable(@PathVariable("sid") String sid,@PathVariable("isEnable")String isEnable) { return wmsWarehouseRackService.updateIsEnable(sid,isEnable); } + + @ApiOperation("根据库位全码查仓库库区库位信息") + @GetMapping("/selHouseInfoByFullCode") + public ResultBean selHouseInfoByFullCode(@RequestParam("rackFullCode") String rackFullCode) { + return wmsWarehouseRackService.selHouseInfoByFullCode(rackFullCode); + } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsGoodsTagRest.java b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsGoodsTagRest.java new file mode 100644 index 0000000000..5e988d0ef8 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsGoodsTagRest.java @@ -0,0 +1,27 @@ +package com.yxt.wms.apiadmin.inventroy; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.wms.biz.inventory.wmsgoodstag.WmsGoodsTagService; +import com.yxt.wms.biz.inventory.wmsoutbill.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/4/24 + **/ +@Api(tags = "商品标签表") +@RestController +@RequestMapping("/apiadmin/WmsGoodsTag") +public class WmsGoodsTagRest { + + @Autowired + private WmsGoodsTagService wmsWmsGoodsTagService; + + +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsShelfBillRest.java b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsShelfBillRest.java index 0c4527da51..43139c1e2b 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsShelfBillRest.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsShelfBillRest.java @@ -7,8 +7,7 @@ import com.yxt.wms.biz.inventory.wmsreceiptbill.WmsReceiptBillDto2; import com.yxt.wms.biz.inventory.wmsreceiptbill.WmsReceiptBillPageVo; import com.yxt.wms.biz.inventory.wmsreceiptbill.WmsReceiptBillQuery; import com.yxt.wms.biz.inventory.wmsshelfbill.*; -import com.yxt.wms.biz.inventory.wmsshelfbill.app.AppShelfBillListQuery; -import com.yxt.wms.biz.inventory.wmsshelfbill.app.AppShelfBillListVo; +import com.yxt.wms.biz.inventory.wmsshelfbill.app.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; @@ -75,12 +74,29 @@ public class WmsShelfBillRest { //---------------------------app--------------------------------- @ApiOperation("分页列表") - @PostMapping("/applistPage") + @PostMapping("/getShelvesList") public ResultBean> applistPage(@RequestBody PagerQuery pq) { ResultBean> rb = ResultBean.fireFail(); PagerVo pv = wmsShelfBillService.applistPage(pq); return rb.success().setData(pv); } + @ApiOperation("上架初始化") + @GetMapping("shelvesOperaInit/{sid}") + public ResultBean shelvesOperaInit(@PathVariable("sid") String sid) { + return wmsShelfBillService.shelvesOperaInit(sid); + } + + @ApiOperation("扫码") + @GetMapping("scan") + public ResultBean scan(@RequestParam(value = "shelvesId", required = false) String shelvesId,@RequestParam(value = "content") String content) { + return wmsShelfBillService.scan(shelvesId,content); + } + + @ApiOperation("上架保存") + @PostMapping("/shelvesSave") + public ResultBean shelvesSave(@RequestBody AppSaveBillRecordDto dto) { + return wmsShelfBillService.shelvesSave(dto); + } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsHouseInfoVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsHouseInfoVo.java new file mode 100644 index 0000000000..ab00dbe8f9 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsHouseInfoVo.java @@ -0,0 +1,20 @@ +package com.yxt.wms.biz.base.wmswarehouserack; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/5/30 11:29 + */ +@Data +public class WmsHouseInfoVo { + + private String warehouseSid;//仓库 + private String warehouseName; + private String wareAreaSid;//库区 + private String wareAreaName; + private String warehouseRackSid;//库位sid + private String warehouseRackCode; + private String warehouseRackName; +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRack.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRack.java index 1aca44ba12..4218d3674a 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRack.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRack.java @@ -23,4 +23,5 @@ public class WmsWarehouseRack extends BaseEntity { private String rackCode;//货架编码 private String warehouseSid;//仓库sid private String locationSid;//库位sid + private String rackFullCode;//库位全码(仓库编码-库区编码-库位编码) } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.java index f6c8c8b200..9de677c40a 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.java @@ -23,4 +23,6 @@ public interface WmsWarehouseRackMapper extends BaseMapper { WmsWarehouseRack checkForInsert(@Param("rackCode")String rackCode, @Param("locationSid")String locationSid); WmsWarehouseRack checkForUpdate(@Param("rackCode")String rackCode,@Param("locationSid") String locationSid, @Param("sid")String sid); + + WmsWarehouseRack selHouseInfoByFullCode(@Param("rackFullCode") String rackFullCode); } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml index 2635242661..3acefd0267 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml @@ -35,6 +35,9 @@ where rackCode =#{rackCode} and locationSid =#{locationSid} and isDelete=0 from wms_warehouse_rack where rackCode =#{rackCode} and locationSid =#{locationSid} and sid !=#{sid} and isDelete=0 + UPDATE wms_warehouse_rack SET isDelete=1 diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java index fbc07a2a74..f6ea07c9a6 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java @@ -11,7 +11,10 @@ import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; import com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseArea; +import com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseAreaService; import com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseAreaVo; +import com.yxt.wms.biz.base.wmswarehouseinfo.WmsWarehouseInfo; +import com.yxt.wms.biz.base.wmswarehouseinfo.WmsWarehouseInfoService; import com.yxt.wms.feign.portal.privilege.PrivilegeQuery; import com.yxt.wms.feign.portal.sysuser.SysUserFeign; import org.springframework.beans.factory.annotation.Autowired; @@ -31,6 +34,10 @@ import java.util.stream.Collectors; public class WmsWarehouseRackService extends MybatisBaseService { @Autowired private SysUserFeign sysUserFeign; + @Autowired + private WmsWarehouseInfoService wmsWarehouseInfoService; + @Autowired + private WmsWarehouseAreaService wmsWarehouseAreaService; public ResultBean> listPage(PagerQuery pq) { ResultBean rb = ResultBean.fireFail(); @@ -72,29 +79,30 @@ public class WmsWarehouseRackService extends MybatisBaseService p = new PagerVo<>(); return rb.success().setData(p); } - if(StringUtils.isNotBlank(query.getName())){ - qw.like("rackName",query.getName()); + if (StringUtils.isNotBlank(query.getName())) { + qw.like("rackName", query.getName()); } - if(StringUtils.isNotBlank(query.getCode())){ - qw.like("rackCode",query.getCode()); + if (StringUtils.isNotBlank(query.getCode())) { + qw.like("rackCode", query.getCode()); } - if(StringUtils.isNotBlank(query.getAreaTypeSid())){ - qw.eq("b.sid",query.getAreaTypeSid()); + if (StringUtils.isNotBlank(query.getAreaTypeSid())) { + qw.eq("b.sid", query.getAreaTypeSid()); } - if(StringUtils.isNotBlank(query.getWarehouseSid())){ - qw.eq("c.sid",query.getWarehouseSid()); + if (StringUtils.isNotBlank(query.getWarehouseSid())) { + qw.eq("c.sid", query.getWarehouseSid()); } - qw.ne("a.isDelete","1"); + qw.ne("a.isDelete", "1"); IPage page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.listPage(page, qw); PagerVo p = PagerUtil.pageToVo(pagging, null); List records = pagging.getRecords(); return rb.success().setData(p); } + public ResultBean getAllType() { ResultBean rb = ResultBean.fireFail(); - List pagging = baseMapper.selectList(new QueryWrapper().eq("isEnable",1) - .ne("isDelete","1")); + List pagging = baseMapper.selectList(new QueryWrapper().eq("isEnable", 1) + .ne("isDelete", "1")); return rb.success().setData(pagging); } @@ -103,16 +111,27 @@ public class WmsWarehouseRackService extends MybatisBaseService selHouseInfoByFullCode(String rackFullCode) { + ResultBean rb = ResultBean.fireFail(); + WmsHouseInfoVo info = new WmsHouseInfoVo(); + WmsWarehouseRack rack = baseMapper.selHouseInfoByFullCode(rackFullCode); + if (null != rack) { + info.setWarehouseRackSid(rack.getSid()); + info.setWarehouseRackName(rack.getRackName()); + info.setWarehouseRackCode(rack.getRackCode()); + WmsWarehouseInfo warehouseInfo = wmsWarehouseInfoService.fetchBySid(rack.getWarehouseSid()); + if (null != warehouseInfo) { + info.setWarehouseSid(warehouseInfo.getSid()); + info.setWarehouseName(warehouseInfo.getWarehouseName()); + } + WmsWarehouseArea wmsWarehouseArea = wmsWarehouseAreaService.fetchBySid(rack.getLocationSid()); + if (null != wmsWarehouseArea) { + info.setWareAreaSid(wmsWarehouseArea.getSid()); + info.setWareAreaName(wmsWarehouseArea.getAreaName()); + } + } else { + return rb; + } + return rb.success().setData(info); + } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTag.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTag.java new file mode 100644 index 0000000000..efe66bd715 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTag.java @@ -0,0 +1,45 @@ +package com.yxt.wms.biz.inventory.wmsgoodstag; + +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author Fan + * @description + * @date 2024/5/30 13:36 + */ +@Data +public class WmsGoodsTag extends BaseEntity { + @ApiModelProperty("单据sid(收货单sid)") + private String billSid; + @ApiModelProperty("单据明细sid") + private String billDetailSid; + @ApiModelProperty("批次号(入库日期+有效日期,如240320-241009)") + private String batchNumber; + @ApiModelProperty("商品ID") + private String goodsID; + @ApiModelProperty("商品基础信息sid") + private String goodSpuSid; + @ApiModelProperty("商品名称") + private String goodsSpuName; + @ApiModelProperty("商品Skusid") + private String goodsSkuSid; + @ApiModelProperty("商品Sku名称") + private String goodsSkuTitle; + @ApiModelProperty("商品编码(图号)") + private String goodsSkuCode; + @ApiModelProperty("规格型号") + private String goodsSkuOwnSpec; + @ApiModelProperty("计量单位") + private String unit; + @ApiModelProperty("数量") + private BigDecimal goodsCount; + @ApiModelProperty("标签图片地址") + private String tagPicUrl; + @ApiModelProperty("打印次数") + private Integer printCount; + +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.java new file mode 100644 index 0000000000..8d40b031d9 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.java @@ -0,0 +1,17 @@ +package com.yxt.wms.biz.inventory.wmsgoodstag; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + + +/** + * @description: + * @author: dimengzhe + * @date: 2024/4/11 + **/ +@Mapper +public interface WmsGoodsTagMapper extends BaseMapper { + + WmsGoodsTag selByBillSidAndGoodsID(@Param("billSid") String billSid, @Param("goodsID") String goodsID); +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml new file mode 100644 index 0000000000..951d8d51ed --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagMapper.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java new file mode 100644 index 0000000000..e1ce482053 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsgoodstag/WmsGoodsTagService.java @@ -0,0 +1,19 @@ +package com.yxt.wms.biz.inventory.wmsgoodstag; + +import com.yxt.common.base.service.MybatisBaseService; + +import org.springframework.stereotype.Service; + +/** + * @description: + * @author: dimengzhe + * @date: 2024/4/11 + **/ +@Service +public class WmsGoodsTagService extends MybatisBaseService { + + public WmsGoodsTag selByBillSidAndGoodsID(String billSid, String goodsID) { + return baseMapper.selByBillSidAndGoodsID(billSid,goodsID); + } + +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillService.java index b247222498..3b1ea42c55 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillService.java @@ -205,33 +205,35 @@ public class WmsReceiptBillService extends MybatisBaseService vos = wmsAnsBillDetailService.selectByBillSid(dto.getSourceBillSid()); - if (!vos.isEmpty()) { - HashSet integers = new HashSet<>(); - for (WmsAnsListDetailsVo vo : vos) { - BigDecimal count = new BigDecimal("0"); - if (StringUtils.isNotBlank(vo.getWaitInCount())) { - count = new BigDecimal(vo.getWaitInCount()); + if (StringUtils.isNotBlank(dto.getSourceBillSid())) { + WmsAnsBill wmsAnsBill = wmsAnsBillService.fetchBySid(dto.getSourceBillSid()); + List vos = wmsAnsBillDetailService.selectByBillSid(dto.getSourceBillSid()); + if (!vos.isEmpty()) { + HashSet integers = new HashSet<>(); + for (WmsAnsListDetailsVo vo : vos) { + BigDecimal count = new BigDecimal("0"); + if (StringUtils.isNotBlank(vo.getWaitInCount())) { + count = new BigDecimal(vo.getWaitInCount()); + } + if (count.compareTo(BigDecimal.ZERO) <= 0) { + integers.add(2); + } else { + integers.add(1); + } } - if (count.compareTo(BigDecimal.ZERO) <= 0) { - integers.add(2); + if (integers.size() > 1) { + wmsAnsBill.setBillState(1); } else { - integers.add(1); - } - } - if (integers.size() > 1) { - wmsAnsBill.setBillState(1); - } else { - wmsAnsBill.setBillState(2); - for (Integer integer : integers) { - if (integer == 1) { - wmsAnsBill.setBillState(1); + wmsAnsBill.setBillState(2); + for (Integer integer : integers) { + if (integer == 1) { + wmsAnsBill.setBillState(1); + } } } } + wmsAnsBillService.updateById(wmsAnsBill); } - wmsAnsBillService.updateById(wmsAnsBill); } wmsReceiptBill.setBillState("0"); String applyCode = getApplyCode(dto.getCreateOrgSid()); @@ -276,33 +278,36 @@ public class WmsReceiptBillService extends MybatisBaseService vos = wmsAnsBillDetailService.selectByBillSid(dto.getSourceBillSid()); - if (!vos.isEmpty()) { - HashSet integers = new HashSet<>(); - for (WmsAnsListDetailsVo vo : vos) { - BigDecimal count = new BigDecimal("0"); - if (StringUtils.isNotBlank(vo.getWaitInCount())) { - count = new BigDecimal(vo.getWaitInCount()); + if (StringUtils.isNotBlank(dto.getSourceBillSid())) { + WmsAnsBill wmsAnsBill = wmsAnsBillService.fetchBySid(dto.getSourceBillSid()); + List vos = wmsAnsBillDetailService.selectByBillSid(dto.getSourceBillSid()); + if (!vos.isEmpty()) { + HashSet integers = new HashSet<>(); + for (WmsAnsListDetailsVo vo : vos) { + BigDecimal count = new BigDecimal("0"); + if (StringUtils.isNotBlank(vo.getWaitInCount())) { + count = new BigDecimal(vo.getWaitInCount()); + } + if (count.compareTo(BigDecimal.ZERO) <= 0) { + integers.add(2); + } else { + integers.add(1); + } } - if (count.compareTo(BigDecimal.ZERO) <= 0) { - integers.add(2); + if (integers.size() > 1) { + wmsAnsBill.setBillState(1); } else { - integers.add(1); - } - } - if (integers.size() > 1) { - wmsAnsBill.setBillState(1); - } else { - wmsAnsBill.setBillState(2); - for (Integer integer : integers) { - if (integer == 1) { - wmsAnsBill.setBillState(1); + wmsAnsBill.setBillState(2); + for (Integer integer : integers) { + if (integer == 1) { + wmsAnsBill.setBillState(1); + } } } } + wmsAnsBillService.updateById(wmsAnsBill); } - wmsAnsBillService.updateById(wmsAnsBill); + } baseMapper.updateById(wmsReceiptBill); } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java index 0ff728fba3..ea9df62351 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java @@ -10,7 +10,12 @@ import com.yxt.common.base.utils.StringUtils; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; +import com.yxt.wms.biz.base.wmswarehouserack.WmsHouseInfoVo; +import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackService; import com.yxt.wms.biz.inventory.wmsansbill.WmsAnsBillVo; +import com.yxt.wms.biz.inventory.wmsansbilldetail.WmsAnsListDetailsVo; +import com.yxt.wms.biz.inventory.wmsgoodstag.WmsGoodsTag; +import com.yxt.wms.biz.inventory.wmsgoodstag.WmsGoodsTagService; import com.yxt.wms.biz.inventory.wmsinventory.WmsInventorySaveDto; import com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryService; import com.yxt.wms.biz.inventory.wmsinventoryrecord.WmsInventoryRecordDto; @@ -22,8 +27,7 @@ import com.yxt.wms.biz.inventory.wmsreceiptbilldetail.WmsReceiptBillDetailDto2; import com.yxt.wms.biz.inventory.wmsreceiptbilldetail.WmsReceiptBillDetailService; import com.yxt.wms.biz.inventory.wmsreceiptbilldetailbatch.WmsReceiptBillDetailBatch; import com.yxt.wms.biz.inventory.wmsreceiptbilldetailbatch.WmsReceiptBillDetailBatchService; -import com.yxt.wms.biz.inventory.wmsshelfbill.app.AppShelfBillListQuery; -import com.yxt.wms.biz.inventory.wmsshelfbill.app.AppShelfBillListVo; +import com.yxt.wms.biz.inventory.wmsshelfbill.app.*; import com.yxt.wms.biz.inventory.wmsshelfbilldetail.*; import com.yxt.wms.feign.base.basegoodssku.BaseGoodsSkuDetailsVo; import com.yxt.wms.feign.base.basegoodssku.BaseGoodsSkuFeign; @@ -38,13 +42,11 @@ import com.yxt.wms.utils.Rule; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; +import java.util.*; /** * @description: @@ -77,6 +79,11 @@ public class WmsShelfBillService extends MybatisBaseService listPage(PagerQuery pq) { WmsShelfBillQuery query = pq.getParams(); QueryWrapper qw = new QueryWrapper<>(); @@ -143,7 +150,7 @@ public class WmsShelfBillService extends MybatisBaseService qw = new QueryWrapper<>(); if (StringUtils.isNotBlank(query.getUserSid())) { - qw.eq("wsb.upShelfSid",query.getUserSid()); + qw.eq("wsb.upShelfSid", query.getUserSid()); } //ToDo:添加查询条件 if (StringUtils.isNotBlank(query.getName())) { @@ -420,9 +427,212 @@ public class WmsShelfBillService extends MybatisBaseService page = PagerUtil.queryToPage(pq); IPage pagging = baseMapper.applistPage(page, qw); + List records = pagging.getRecords(); + if (!records.isEmpty()) { + for (AppShelfBillListVo record : records) { + if (!record.getShelvesState().equals("完成")) { + record.setShelvesBtn(true); + } + if (!record.getShelvesState().equals("新建")) { + record.setRecordBtn(true); + } + } + } PagerVo p = PagerUtil.pageToVo(pagging, null); return p; } + + public ResultBean shelvesOperaInit(String sid) { + ResultBean rb = ResultBean.fireFail(); + AppShelInitVo vo = new AppShelInitVo(); + WmsShelfBill wmsShelfBill = fetchBySid(sid); + if (null != wmsShelfBill) { + vo.setShelvesId(wmsShelfBill.getBillNo()); + List details = wmsShelfBillDetailService.selectByMainSid(sid); + if (!details.isEmpty()) { + List goods = new ArrayList<>(); + for (WmsShelfBillDetail detail : details) { + AppShelInitVo.AppShelInitVoDetails voDetails = new AppShelInitVo.AppShelInitVoDetails(); + if (StringUtils.isNotBlank(detail.getGoodsSpuName())) { + voDetails.setName(detail.getGoodsSpuName()); + } + BigDecimal count = new BigDecimal("0"); + BigDecimal acCount = new BigDecimal("0"); + if (null != detail.getCount()) { + count = detail.getCount(); + } + if (null != detail.getActualCount()) { + acCount = detail.getActualCount(); + } + String c = String.valueOf(count.subtract(acCount).intValue()); + voDetails.setNumber(c); + if (!c.equals("0")) { + goods.add(voDetails); + } + } + vo.setGoods(goods); + } + } + return rb.success().setData(vo); + } + + public ResultBean scan(String shelvesId, String content) { + ResultBean rb = ResultBean.fireFail(); + AppScanVo vo = new AppScanVo(); + if (StringUtils.isNotBlank(shelvesId)) { + if (content.contains("#")) { + String[] split = content.split("#"); + String houseCode = split[0]; + ResultBean wmsHouseInfoVoResultBean = wmsWarehouseRackService.selHouseInfoByFullCode(houseCode); + if (wmsHouseInfoVoResultBean.getSuccess()) { + WmsHouseInfoVo houseInfoVo = wmsHouseInfoVoResultBean.getData(); + if (null != houseInfoVo) { + vo.setHouseCode(houseCode); + vo.setHouseName(houseInfoVo.getWareAreaName() + "-" + houseInfoVo.getWarehouseRackName()); + vo.setHouseAddress(houseInfoVo.getWarehouseRackCode()); + vo.setType(1); + } + } else { + return rb.setMsg("扫描库位码为空"); + } + } else { + vo.setType(0); + WmsShelfBill wmsShelfBill = fetchBySid(shelvesId); + String sourceBillSid = wmsShelfBill.getSourceBillSid(); + //判断该商品ID是否属于该上架单对应的收货单 + WmsGoodsTag wmsGoodsTag = wmsGoodsTagService.selByBillSidAndGoodsID(sourceBillSid, content); + if (null != wmsGoodsTag) { + vo.setGoodsID(wmsGoodsTag.getGoodsID()); + vo.setGoodsName(wmsGoodsTag.getGoodsSpuName()); + if (wmsGoodsTag.getState() == 1) { + return rb.setMsg("该商品已上架完成"); + } + //获取该商品编码,判断此上架单是否有对应的商品编码 + String goodsSkuCode = wmsGoodsTag.getGoodsSkuCode(); + WmsShelfBillDetail shelfBillGoods = wmsShelfBillDetailService.selByBillSidAndSkuCode(shelvesId, goodsSkuCode); + if (null == shelfBillGoods) { + return rb.setMsg("该商品不属于您的上架单"); + } + BigDecimal count = new BigDecimal("0"); + BigDecimal acCount = new BigDecimal("0"); + if (null != shelfBillGoods.getCount()) { + count = shelfBillGoods.getCount(); + } + if (null != shelfBillGoods.getActualCount()) { + acCount = shelfBillGoods.getActualCount(); + } + BigDecimal subtractCount = count.subtract(acCount); + if (subtractCount.compareTo(BigDecimal.ZERO) > 0) { + if (wmsGoodsTag.getGoodsCount().compareTo(new BigDecimal("1")) == 0) { + vo.setGoodsMax("1"); + } else { + vo.setGoodsMax(String.valueOf(subtractCount.intValue())); + } + } else { + return rb.setMsg("您的上架单中的该商品已经上架完成"); + } + } else { + return rb.setMsg("该商品不属于您的收货单"); + } + } + } else { + vo.setUrl(""); + } + return rb.success().setData(vo); + } + + @Transactional(rollbackFor = Exception.class) + public ResultBean shelvesSave(AppSaveBillRecordDto dto) { + ResultBean rb = ResultBean.fireFail(); + String shelvesId = dto.getShelvesSid(); + WmsShelfBill wmsShelfBill = fetchBySid(shelvesId); + String sourceBillSid = wmsShelfBill.getSourceBillSid(); + List goodsList = dto.getGoodsList(); + if (!goodsList.isEmpty()) { + Map map = new HashMap<>(); + for (AppSaveBillRecordDto.AppSaveBillRecordDetailsDto detailsDto : goodsList) { + BigDecimal decimal = map.get(detailsDto.getGoodsID()); + if (null != decimal) { + map.put(detailsDto.getGoodsID(), decimal.add(new BigDecimal(detailsDto.getCount()))); + } else { + map.put(detailsDto.getGoodsID(), new BigDecimal(detailsDto.getCount())); + } + } + for (AppSaveBillRecordDto.AppSaveBillRecordDetailsDto r : goodsList) { + String goodsID = r.getGoodsID(); + String houseCode = r.getHouseCode(); + if (StringUtils.isBlank(goodsID)) { + return rb.setMsg("请扫描商品码"); + } + if (StringUtils.isBlank(houseCode)) { + return rb.setMsg("请扫描库位码"); + } + WmsGoodsTag wmsGoodsTag = wmsGoodsTagService.selByBillSidAndGoodsID(sourceBillSid, goodsID); + String goodsSkuCode = wmsGoodsTag.getGoodsSkuCode(); + WmsShelfBillDetail shelfBillGoods = wmsShelfBillDetailService.selByBillSidAndSkuCode(shelvesId, goodsSkuCode); + BigDecimal actualCount = shelfBillGoods.getActualCount(); + BigDecimal subtract = shelfBillGoods.getCount().subtract(actualCount); + if (subtract.compareTo(map.get(goodsID)) < 0) { + return rb.setMsg("请勿超过商品上架最大数量"); + } + } + for (AppSaveBillRecordDto.AppSaveBillRecordDetailsDto r : goodsList) { + String count = r.getCount(); + String goodsID = r.getGoodsID(); + String houseCode = r.getHouseCode(); + WmsGoodsTag wmsGoodsTag = wmsGoodsTagService.selByBillSidAndGoodsID(sourceBillSid, goodsID); + String goodsSkuCode = wmsGoodsTag.getGoodsSkuCode(); + WmsShelfBillDetail shelfBillGoods = wmsShelfBillDetailService.selByBillSidAndSkuCode(shelvesId, goodsSkuCode); + BigDecimal actualCount = shelfBillGoods.getActualCount(); + BigDecimal add = actualCount.add(new BigDecimal(count)); + shelfBillGoods.setActualCount(add); + wmsShelfBillDetailService.updateById(shelfBillGoods); + if (wmsGoodsTag.getGoodsCount().compareTo(new BigDecimal("1")) == 0) { + wmsGoodsTag.setState(1); + wmsGoodsTagService.updateById(wmsGoodsTag); + } + } + List vos = wmsShelfBillDetailService.selectByMainSid(dto.getShelvesSid()); + if (!vos.isEmpty()) { + HashSet integers = new HashSet<>(); + for (WmsShelfBillDetail vo : vos) { + if (vo.getActualCount().compareTo(vo.getCount()) >= 0) { + integers.add(2); + } else { + integers.add(1); + } + } + if (integers.size() > 1) { + wmsShelfBill.setBillState(2); + wmsShelfBill.setBillStateValue("部分上架"); + } else { + wmsShelfBill.setBillState(1); + wmsShelfBill.setBillStateValue("已完成"); + for (Integer integer : integers) { + if (integer == 1) { + wmsShelfBill.setBillState(2); + wmsShelfBill.setBillStateValue("部分上架"); + } + } + } + } + baseMapper.updateById(wmsShelfBill); + for (AppSaveBillRecordDto.AppSaveBillRecordDetailsDto r : goodsList) { + String goodsID = r.getGoodsID(); + WmsGoodsTag wmsGoodsTag = wmsGoodsTagService.selByBillSidAndGoodsID(sourceBillSid, goodsID); + String goodsSkuCode = wmsGoodsTag.getGoodsSkuCode(); + if (wmsGoodsTag.getGoodsCount().compareTo(new BigDecimal("1")) > 0) { + String count = wmsShelfBillDetailService.selAcCountBySourceBillSidAndSkuCode(sourceBillSid, goodsSkuCode); + if (new BigDecimal(count).compareTo(wmsGoodsTag.getGoodsCount()) >= 0) { + wmsGoodsTag.setState(1); + wmsGoodsTagService.updateById(wmsGoodsTag); + } + } + } + } + return rb.success(); + } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppSaveBillRecordDto.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppSaveBillRecordDto.java new file mode 100644 index 0000000000..9ea57129ce --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppSaveBillRecordDto.java @@ -0,0 +1,43 @@ +package com.yxt.wms.biz.inventory.wmsshelfbill.app; + +import com.yxt.common.core.dto.Dto; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Fan + * @description + * @date 2024/5/30 14:21 + */ +@Data +public class AppSaveBillRecordDto implements Dto { + /** + * 商品列表 + */ + private List goodsList = new ArrayList<>(); + private String orgPath; + /** + * 上架单sid + */ + private String shelvesSid; + private String userSid; + + @Data + public static class AppSaveBillRecordDetailsDto { + /** + * 数量 + */ + private String count; + /** + * 商品ID + */ + private String goodsID; + /** + * 库位码 + */ + private String houseCode; + } + +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppScanVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppScanVo.java new file mode 100644 index 0000000000..672bae32b2 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppScanVo.java @@ -0,0 +1,44 @@ +package com.yxt.wms.biz.inventory.wmsshelfbill.app; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/5/30 11:12 + */ +@Data +public class AppScanVo { + /** + * 商品id + */ + private String goodsID; + /** + * 商品最大可上架数量,通过shelvesId去查询出来的(当前上架单无需上架此商品 false) + */ + private String goodsMax; + /** + * 商品名称 + */ + private String goodsName; + /** + * 1-2-50 + */ + private String houseAddress; + /** + * 库位码 + */ + private String houseCode; + /** + * 库区名+库位名 + */ + private String houseName; + /** + * 0 商品码 1库位码 + */ + private Integer type; + /** + * 网址 + */ + private String url; +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelInitVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelInitVo.java new file mode 100644 index 0000000000..3ff7b6698d --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/app/AppShelInitVo.java @@ -0,0 +1,29 @@ +package com.yxt.wms.biz.inventory.wmsshelfbill.app; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Fan + * @description + * @date 2024/5/30 10:41 + */ +@Data +public class AppShelInitVo { + private String shelvesId; + + private List goods = new ArrayList<>(); + + @Data + public static class AppShelInitVoDetails { + private String name; + private String number; + } +} + + + diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.java index fb42dbf0c4..a66165b044 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.java @@ -2,6 +2,7 @@ package com.yxt.wms.biz.inventory.wmsshelfbilldetail; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -21,4 +22,10 @@ public interface WmsShelfBillDetailMapper extends BaseMapper List selectReceiptSidList(); List selDetailsByMainSid(String sid); + + List selectByMainSid(String sid); + + WmsShelfBillDetail selByBillSidAndSkuCode(@Param("shelvesId") String shelvesId,@Param("goodsSkuCode") String goodsSkuCode); + + String selAcCountBySourceBillSidAndSkuCode(@Param("sourceBillSid")String sourceBillSid, @Param("goodsSkuCode")String goodsSkuCode); } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.xml index 4e88aeef86..8778bffb98 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailMapper.xml @@ -48,4 +48,24 @@ from wms_shelf_bill_detail wsd where billSid = #{sid} + + + diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailService.java index e54aa3674f..d29832be1f 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbilldetail/WmsShelfBillDetailService.java @@ -2,6 +2,7 @@ package com.yxt.wms.biz.inventory.wmsshelfbilldetail; import cn.hutool.core.bean.BeanUtil; import com.yxt.common.base.service.MybatisBaseService; +import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Service; import java.util.List; @@ -38,4 +39,16 @@ public class WmsShelfBillDetailService extends MybatisBaseService selDetailsByMainSid(String sid) { return baseMapper.selDetailsByMainSid(sid); } + + public List selectByMainSid(String sid) { + return baseMapper.selectByMainSid(sid); + } + + public WmsShelfBillDetail selByBillSidAndSkuCode(String shelvesId,String goodsSkuCode) { + return baseMapper.selByBillSidAndSkuCode(shelvesId,goodsSkuCode); + } + + public String selAcCountBySourceBillSidAndSkuCode(String sourceBillSid, String goodsSkuCode) { + return baseMapper.selAcCountBySourceBillSidAndSkuCode(sourceBillSid,goodsSkuCode); + } } From 6f7dee5d5b8d0b62d31f755f9727d2420842b17e Mon Sep 17 00:00:00 2001 From: guoxing <1369478551@qq.com> Date: Thu, 30 May 2024 16:23:47 +0800 Subject: [PATCH 16/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/api/Common/dictcommons.js | 20 + yxt-as-ui/src/api/storage/adjustment.js | 44 +++ .../storage/adjustment/adjustmentAdd.vue | 265 +++++++++++++ .../storage/adjustment/adjustmentInfo.vue | 155 ++++++++ .../src/views/storage/adjustment/index.vue | 361 +++++++++++++++++- .../adjustment/relation/choosecategory.vue | 181 +++++++++ .../adjustment/relation/editPriceStrategy.vue | 176 +++++++++ .../views/storage/receivingGoods/index.vue | 12 +- .../receivingGoods/receivingGoodsAdd.vue | 32 +- 9 files changed, 1235 insertions(+), 11 deletions(-) create mode 100644 yxt-as-ui/src/api/storage/adjustment.js create mode 100644 yxt-as-ui/src/views/storage/adjustment/adjustmentAdd.vue create mode 100644 yxt-as-ui/src/views/storage/adjustment/adjustmentInfo.vue create mode 100644 yxt-as-ui/src/views/storage/adjustment/relation/choosecategory.vue create mode 100644 yxt-as-ui/src/views/storage/adjustment/relation/editPriceStrategy.vue diff --git a/yxt-as-ui/src/api/Common/dictcommons.js b/yxt-as-ui/src/api/Common/dictcommons.js index 4392f2ae9b..e7c9d3ad71 100644 --- a/yxt-as-ui/src/api/Common/dictcommons.js +++ b/yxt-as-ui/src/api/Common/dictcommons.js @@ -8,6 +8,15 @@ export function typeValues(data) { }) } +// 获取数据字典(根据分组) +export function getTypeValueList(data) { + return request({ + url: '/portal/v1/dictcommons/getTypeValueList', + method: 'get', + params: data + }) +} + // 根据当前登录人orgSidPath(全路径sid)查询分公司 export function getOrgSidByPath(data) { return request({ @@ -182,3 +191,14 @@ export function getAsBusrepairBill(params) { } }) } +// 查询分页列表 --商品类别列表 +export function getGoodsCategory(params) { + return request({ + url: '/as/v1/AsBusrepairBill/listPage', + method: 'post', + data: params, + headers: { + 'Content-Type': 'application/json' + } + }) +} diff --git a/yxt-as-ui/src/api/storage/adjustment.js b/yxt-as-ui/src/api/storage/adjustment.js new file mode 100644 index 0000000000..e13a9ad43d --- /dev/null +++ b/yxt-as-ui/src/api/storage/adjustment.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +export default { + +// 查询分页列表 + listPage: function(params) { + return request({ + url: '/wms/apiadmin/WmsShelfBill/listPage', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + + // 初始化 + init: function(data) { + return request({ + url: '/wms/apiadmin/WmsShelfBill/details?sid='+data, + method: 'get' + }); + }, + + + // 新增、保存 + save: function(data) { + return request({ + url: '/wms/apiadmin/WmsShelfBill/saveOrUpdate', + method: 'post', + data: data, + headers: { 'Content-Type': 'application/json' } + }); + }, + + + deleteBySids: function(data) { + return request({ + url: '/wms/apiadmin/WmsShelfBill/delBySids', + method: 'DELETE', + data: data, + headers: { 'Content-Type': 'application/json' } + }) + }, + +} diff --git a/yxt-as-ui/src/views/storage/adjustment/adjustmentAdd.vue b/yxt-as-ui/src/views/storage/adjustment/adjustmentAdd.vue new file mode 100644 index 0000000000..3421b499bb --- /dev/null +++ b/yxt-as-ui/src/views/storage/adjustment/adjustmentAdd.vue @@ -0,0 +1,265 @@ + + + + diff --git a/yxt-as-ui/src/views/storage/adjustment/adjustmentInfo.vue b/yxt-as-ui/src/views/storage/adjustment/adjustmentInfo.vue new file mode 100644 index 0000000000..5723181132 --- /dev/null +++ b/yxt-as-ui/src/views/storage/adjustment/adjustmentInfo.vue @@ -0,0 +1,155 @@ + + + + diff --git a/yxt-as-ui/src/views/storage/adjustment/index.vue b/yxt-as-ui/src/views/storage/adjustment/index.vue index 02409e35d2..32668945f7 100644 --- a/yxt-as-ui/src/views/storage/adjustment/index.vue +++ b/yxt-as-ui/src/views/storage/adjustment/index.vue @@ -1,8 +1,363 @@ + import Pagination from '@/components/pagination' + import pageye from '@/components/pagination/pageye' + import ButtonBar from '@/components/ButtonBar' + import req from '@/api/storage/adjustment.js' + import { + typeValues + } from '@/api/Common/dictcommons' + import { + getStorage + } from '@/utils/auth' + import adjustmentAdd from './adjustmentAdd' + import adjustmentInfo from './adjustmentInfo' - \ No newline at end of file + export default { + name: 'Procurement', + components: { + Pagination, + pageye, + ButtonBar, + adjustmentAdd, + adjustmentInfo + }, + data() { + return { + url: '', + dialogHeight: '80%', + centerDialogVisible: false, + btndisabled: false, + btnList: [{ + type: 'primary', + size: 'small', + icon: 'plus', + btnKey: 'toAdd', + btnLabel: '新增' + }, + { + type: 'danger', + size: 'small', + icon: 'del', + btnKey: 'doDel', + btnLabel: '删除' + }, + { + type: 'info', + size: 'small', + icon: 'cross', + btnKey: 'doClose', + btnLabel: '关闭' + } + ], + isSearchShow: false, + searchxianshitit: '显示查询条件', + viewState: 1, // 1、列表 2、新增 3、编辑 4、查看 + tableKey: 0, + list: [], + sids: [], // 用于导出的时候保存已选择的SIDs + billType_list: [], + FormLoading: false, + listLoading: false, + // 翻页 + listQuery: { + current: 1, + size: 5, + total: 0, + params: { + createOrgName: '', + deptName: '', + createByName: '', + billNo: '', + createStartTime: '', + createEndTime: '', + finishStartTime: '', + finishEndTime: '', + } + } + } + }, + created() { + // 初始化变量 + // this.getList() + }, + mounted() { + // 在外部vue的window上添加postMessage的监听,而且绑定处理函数handleMessage + window.addEventListener('message', this.handleMessage) + this.$refs['btnbar'].setButtonList(this.btnList) + }, + methods: { + init() { + typeValues({ + type: 'billType' + }).then((res) => { + if (res.success) { + this.billType_list = res.data + } + }) + }, + async handleMessage(event) { + var code = '' + if (event.data.params !== null && event.data.params !== undefined) { + code = event.data.params.code + } + if (code === 1) { + this.centerDialogVisible = false + } else if (code === 2) { + this.dialogHeight = event.data.params.data + this.setIframeHeight(document.getElementById('iframe')) + } + }, + closeIt() { + this.url = '' + this.centerDialogVisible = false + }, + setIframeHeight(iframe) { + iframe.height = this.dialogHeight + }, + flowRecord(row) { + this.centerDialogVisible = true + var params = { + deployId: row.procDefId, + procInsId: row.procInstId, + token: getStorage() + } + this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params))) + }, + // 搜索条件效果 + clicksearchShow() { + this.isSearchShow = !this.isSearchShow + if (this.isSearchShow) { + this.searchxianshitit = '隐藏查询条件' + } else { + this.searchxianshitit = '显示查询条件' + } + }, + btnHandle(btnKey) { + console.log('XXXXXXXXXXXXXXX ' + btnKey) + switch (btnKey) { + case 'toAdd': + this.toAdd() + break + case 'doDel': + this.doDel() + break + case 'doClose': + this.doClose() + break + default: + break + } + }, + // 信息条数 获取点击时当前的sid + handleSelectionChange(row) { + const aa = [] + row.forEach(element => { + aa.push(element.sid) + }) + this.sids = aa + }, + // 表中序号 + indexMethod(index) { + var pagestart = (this.listQuery.current - 1) * this.listQuery.size + var pageindex = index + 1 + pagestart + return pageindex + }, + // 查询列表信息 + getList() { + this.listLoading = true + this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath') + req.listPage(this.listQuery).then((response) => { + this.listLoading = false + if (response.success) { + this.list = response.data.records + this.listQuery.total = response.data.total + } else { + this.list = [] + this.listQuery.total = 0 + } + }) + }, + // 查询按钮 + handleFilter() { + this.listQuery.current = 1 + this.getList() + }, + // 点击重置 + handleReset() { + this.listQuery = { + current: 1, + size: 5, + total: 0, + params: { + createOrgName: '', + deptName: '', + createByName: '', + billNo: '', + createStartTime: '', + createEndTime: '', + finishStartTime: '', + finishEndTime: '', + } + } + this.init() + }, + toAdd(){ + this.viewState = 3 + this.$refs['divAdd'].showAdd() + }, + toEdit(row) { + this.viewState = 3 + this.$refs['divAdd'].showEdit(row) + }, + toInfo(row) { + this.viewState = 4 + this.$refs['divInfo'].showInfo(row) + }, + doDel() { + if (this.sids.length === 0) { + this.$message({ + showClose: true, + type: 'error', + message: '请选择至少一条记录进行删除操作' + }) + return + } + const tip = '请确认是否删除所选 ' + this.sids.length + ' 条记录?' + this.$confirm(tip, '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + const loading = this.$loading({ + lock: true, + text: 'Loading', + spinner: 'el-icon-loading', + background: 'rgba(0, 0, 0, 0.7)' + }) + req.deleteBySids(this.sids).then(resp => { + if (resp.success) { + this.$message({ + type: 'success', + message: resp.msg, + showClose: true + }) + } + this.getList() + loading.close() + }).catch(e => { + loading.close() + }) + }).catch(() => {}) + }, + // 修改、编辑、详情返回列表页面 + resetState() { + this.viewState = 1 + }, + doClose() { + this.$store.dispatch('tagsView/delView', this.$route) + this.$router.go(-1) + } + } + } + + diff --git a/yxt-as-ui/src/views/storage/adjustment/relation/choosecategory.vue b/yxt-as-ui/src/views/storage/adjustment/relation/choosecategory.vue new file mode 100644 index 0000000000..4ab047bd68 --- /dev/null +++ b/yxt-as-ui/src/views/storage/adjustment/relation/choosecategory.vue @@ -0,0 +1,181 @@ + + + + diff --git a/yxt-as-ui/src/views/storage/adjustment/relation/editPriceStrategy.vue b/yxt-as-ui/src/views/storage/adjustment/relation/editPriceStrategy.vue new file mode 100644 index 0000000000..4fb2dd5993 --- /dev/null +++ b/yxt-as-ui/src/views/storage/adjustment/relation/editPriceStrategy.vue @@ -0,0 +1,176 @@ + + + + diff --git a/yxt-as-ui/src/views/storage/receivingGoods/index.vue b/yxt-as-ui/src/views/storage/receivingGoods/index.vue index b6b9ab3e6f..d00d1218dd 100644 --- a/yxt-as-ui/src/views/storage/receivingGoods/index.vue +++ b/yxt-as-ui/src/views/storage/receivingGoods/index.vue @@ -25,7 +25,7 @@ - + @@ -110,6 +110,9 @@ import divAdd from './receivingGoodsAdd.vue' import divInfo from './receivingGoodsInfo.vue' import divAddupShelfRecord from './upShelfAddRecord.vue' + import { + getTypeValueList + } from '@/api/Common/dictcommons' export default { components: { ButtonBar, @@ -202,6 +205,13 @@ }, created() { this.loadList() + + getTypeValueList({ type: 'wms_busType', groupNum: 'wms_rk' }).then((res) => { + if (res.success) { + this.busTypeList = res.data + } + }) + }, methods: { saveExamine() { diff --git a/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue b/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue index a7ff6ff188..6e3d7be683 100644 --- a/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue +++ b/yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue @@ -50,7 +50,7 @@
* 业务类型
- + @@ -277,7 +277,8 @@ import chooseproducts from './relation/chooseproducts' import { choiceSupplierInfo, - getOrgSidByPath + getOrgSidByPath, + getTypeValueList } from '@/api/Common/dictcommons' export default { components: { @@ -315,11 +316,15 @@ }, hideUploadBtn: false, busTypeList: [{ - name: "业务类型1", + name: "采购预约", + sid: "0" + }, + { + name: "调拨预约", sid: "1" }, { - name: "业务类型2", + name: "其他预约", sid: "2" } ], @@ -676,6 +681,12 @@ this.$refs['form_obj'].clearValidate() }) + getTypeValueList({ type: 'wms_busType', groupNum: 'wms_rk' }).then((res) => { + if (res.success) { + this.busTypeList = res.data + } + }) + }, showEdit(row) { @@ -689,6 +700,13 @@ this.$refs['form_obj'].clearValidate() }) + getTypeValueList({ type: 'wms_busType', groupNum: 'wms_rk' }).then((res) => { + if (res.success) { + this.busTypeList = res.data + } + }) + + var params = { sid: row.sid @@ -713,10 +731,10 @@ }) }, busTypeSelect(val) { - const choose = this.busTypeList.filter((item) => item.sid == val) + const choose = this.busTypeList.filter((item) => item.dictKey == val) console.log('>>>>>>>>>busTypeSelect', choose) - this.formobj.busTypeKey = choose[0].sid - this.formobj.busTypeValue = choose[0].name + this.formobj.busTypeKey = choose[0].dictKey + this.formobj.busTypeValue = choose[0].dictValue }, supplierNameSelect(val) { From 69e5c218b9df0ccd16c77f44fc32712aaf5464dc Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Thu, 30 May 2024 16:32:57 +0800 Subject: [PATCH 17/18] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=BA=93=E4=BD=8D?= =?UTF-8?q?=E5=85=A8=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/base/wmswarehouserack/WmsWarehouseRackService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java index f6ea07c9a6..6f103fbd78 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java @@ -124,7 +124,7 @@ public class WmsWarehouseRackService extends MybatisBaseService Date: Thu, 30 May 2024 17:39:13 +0800 Subject: [PATCH 18/18] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=94=80=E5=94=AE?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E8=AF=A6=E6=83=85=E9=A1=B5=E9=9D=A2=E4=BB=A5?= =?UTF-8?q?=E5=8F=8A=E6=A0=87=E5=87=86=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/publicPage/dingdanInfo.vue | 263 ++++++++++++----- .../views/workflow/publicPage/dingdanInfo.vue | 278 ++++++++++++------ .../xiaoshoudingdanFlow/xiaoshoudingdan.vue | 171 +++++++++-- .../xiaoshoudingdanByCaiGou.vue | 171 +++++++++-- .../xiaoshoudingdanByJinRong.vue | 171 +++++++++-- .../xiaoshoudingdanInfo.vue | 171 +++++++++-- .../xiaoshoudingdan/xiaoshoudingdanInfo.vue | 171 +++++++++-- 7 files changed, 1074 insertions(+), 322 deletions(-) diff --git a/anrui-buscenter/anrui-buscenter-ui/src/components/publicPage/dingdanInfo.vue b/anrui-buscenter/anrui-buscenter-ui/src/components/publicPage/dingdanInfo.vue index 2d6033291a..4bb16905a0 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/components/publicPage/dingdanInfo.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/components/publicPage/dingdanInfo.vue @@ -133,57 +133,127 @@ {{ formobj.busSalesOrderPrice.quantity }} - - - - - - -
价格信息
+
价格信息(不含挂车)
- -
单台整体指导价
+ +
销售指导价(元/台)
{{ formobj.busSalesOrderPrice.singleGuildPrice }}
- -
主车单台成交价
+ +
销售合同价(元/台)
+ {{ formobj.busSalesOrderPrice.singleFinalPrice }} +
+ +
其中主车或底盘(元)
{{ formobj.busSalesOrderModel.finalPrice }}
- -
单台整体成交价
- {{ formobj.busSalesOrderPrice.singleFinalPrice }} + +
其中上装(元)
+ {{ formobj.busSalesOrderModel.topPrice }}
- -
单台折让(元)
- {{ formobj.busSalesOrderPrice.bigDecimalSing }} -
- +
台数
{{ formobj.busSalesOrderPrice.quantity }}
- -
车价合计
+ +
车价合计(元)
{{ formobj.busSalesOrderPrice.priceSum }}
-
- - +
计划提车日期
{{ formobj.busSalesOrderPrice.plannedPickUpDate }}
- -
预计提车地点
+ +
计划提车地点
{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}
-
保险说明
- {{ formobj.insuranceInfo }} +
单台折让(元)
+ {{ formobj.busSalesOrderPrice.bigDecimalSing }}
+
+
挂车1(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc1.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc1.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc1.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc1.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc1.remarks }} +
+
+
+
挂车2(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc2.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc2.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc2.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc2.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc2.remarks }} +
+
+
+
订金信息
@@ -217,6 +287,53 @@ {{ formobj.busSalesOrderDeposit.depositRemarks }} +
中介返利
+ + +
内部引荐人
+ {{ formobj.busSalesOrderotherMessageDetailsVo.name }} +
+ +
返利备注
+ {{ formobj.busSalesOrderotherMessageDetailsVo.remarks }} +
+
+ + +
中介人1
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorName }} +
+ +
联系电话
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobile }} +
+ +
单车中介返利
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPrice }} +
+ +
中介返利合计
+ {{ formobj.busSalesOrderotherMessageDetailsVo.middleOneDistributorPriceTotal }} +
+
+ + +
中介人2
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorNameTwo }} +
+ +
联系电话
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobileTwo }} +
+ +
单车中介返利
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPriceTwo }} +
+ +
中介返利合计
+ {{ formobj.busSalesOrderotherMessageDetailsVo.middleTwoDistributorPriceTotal }} +
+
优惠套餐
@@ -263,51 +380,10 @@ -
其它信息
- - -
内部引荐人
- {{ formobj.busSalesOrderotherMessageDetailsVo.name }} -
- -
返利备注
- {{ formobj.busSalesOrderotherMessageDetailsVo.remarks }} -
-
- - -
中介人1
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorName }} -
- -
联系电话
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobile }} -
- -
单车中介服务费
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPrice }} -
- -
中介服务费合计
- {{ formobj.busSalesOrderotherMessageDetailsVo.middleOneDistributorPriceTotal }} -
-
+
保险说明
- -
中介人2
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorNameTwo }} -
- -
联系电话
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobileTwo }} -
- -
单车中介服务费
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPriceTwo }} -
- -
中介服务费合计
- {{ formobj.busSalesOrderotherMessageDetailsVo.middleTwoDistributorPriceTotal }} + + {{ formobj.insuranceInfo }}
@@ -344,15 +420,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, companyInvoicingName: '', concatNo: '', createDate: '', @@ -363,6 +441,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', @@ -400,6 +479,34 @@ export default { } else { this.formobj.busSalesOrderModel.vinNo = '' } + if (this.formobj.gc1.contractFile.length > 0) { + const aa = [] + this.formobj.gc1.contractFile.forEach((e) => { + aa.push(e.url) + }) + this.formobj.gc1.contractFile = aa + } + if (this.formobj.gc1.certFile.length > 0) { + const bb = [] + this.formobj.gc1.certFile.forEach((e) => { + bb.push(e.url) + }) + this.formobj.gc1.certFile = bb + } + if (this.formobj.gc2.contractFile.length > 0) { + const cc = [] + this.formobj.gc2.contractFile.forEach((e) => { + cc.push(e.url) + }) + this.formobj.gc2.contractFile = cc + } + if (this.formobj.gc2.certFile.length > 0) { + const ee = [] + this.formobj.gc2.certFile.forEach((e) => { + ee.push(e.url) + }) + this.formobj.gc2.certFile = ee + } } }) }, diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/publicPage/dingdanInfo.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/publicPage/dingdanInfo.vue index 396afb824e..aafcc1937c 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/publicPage/dingdanInfo.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/publicPage/dingdanInfo.vue @@ -130,57 +130,127 @@ {{ formobj.busSalesOrderPrice.quantity }} - - - - - - -
价格信息
+
价格信息(不含挂车)
- -
单台整体指导价
+ +
销售指导价(元/台)
{{ formobj.busSalesOrderPrice.singleGuildPrice }}
- -
主车单台成交价
+ +
销售合同价(元/台)
+ {{ formobj.busSalesOrderPrice.singleFinalPrice }} +
+ +
其中主车或底盘(元)
{{ formobj.busSalesOrderModel.finalPrice }}
- -
单台整体成交价
- {{ formobj.busSalesOrderPrice.singleFinalPrice }} + +
其中上装(元)
+ {{ formobj.busSalesOrderModel.topPrice }}
- -
单台折让(元)
- {{ formobj.busSalesOrderPrice.bigDecimalSing }} -
- +
台数
{{ formobj.busSalesOrderPrice.quantity }}
- -
车价合计
+ +
车价合计(元)
{{ formobj.busSalesOrderPrice.priceSum }}
-
- - +
计划提车日期
{{ formobj.busSalesOrderPrice.plannedPickUpDate }}
- -
预计提车地点
+ +
计划提车地点
{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}
-
保险说明
- {{ formobj.insuranceInfo }} +
单台折让(元)
+ {{ formobj.busSalesOrderPrice.bigDecimalSing }}
+
+
挂车1(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc1.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc1.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc1.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc1.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc1.remarks }} +
+
+
+
挂车2(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc2.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc2.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc2.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc2.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc2.remarks }} +
+
+
+
订金信息
@@ -214,6 +284,53 @@ {{ formobj.busSalesOrderDeposit.depositRemarks }} +
中介返利
+ + +
内部引荐人
+ {{ formobj.busSalesOrderotherMessageDetailsVo.name }} +
+ +
返利备注
+ {{ formobj.busSalesOrderotherMessageDetailsVo.remarks }} +
+
+ + +
中介人1
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorName }} +
+ +
联系电话
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobile }} +
+ +
单车中介返利
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPrice }} +
+ +
中介返利合计
+ {{ formobj.busSalesOrderotherMessageDetailsVo.middleOneDistributorPriceTotal }} +
+
+ + +
中介人2
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorNameTwo }} +
+ +
联系电话
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobileTwo }} +
+ +
单车中介返利
+ {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPriceTwo }} +
+ +
中介返利合计
+ {{ formobj.busSalesOrderotherMessageDetailsVo.middleTwoDistributorPriceTotal }} +
+
优惠套餐
@@ -260,51 +377,10 @@ -
其它信息
- - -
内部引荐人
- {{ formobj.busSalesOrderotherMessageDetailsVo.name }} -
- -
返利备注
- {{ formobj.busSalesOrderotherMessageDetailsVo.remarks }} -
-
- - -
中介人1
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorName }} -
- -
联系电话
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobile }} -
- -
单车中介服务费
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPrice }} -
- -
中介服务费合计
- {{ formobj.busSalesOrderotherMessageDetailsVo.middleOneDistributorPriceTotal }} -
-
+
保险说明
- -
中介人2
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorNameTwo }} -
- -
联系电话
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorMobileTwo }} -
- -
单车中介服务费
- {{ formobj.busSalesOrderotherMessageDetailsVo.distributorPriceTwo }} -
- -
中介服务费合计
- {{ formobj.busSalesOrderotherMessageDetailsVo.middleTwoDistributorPriceTotal }} + + {{ formobj.insuranceInfo }}
@@ -336,15 +412,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, companyInvoicingName: '', concatNo: '', createDate: '', @@ -355,6 +433,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', @@ -392,6 +471,34 @@ export default { } else { this.formobj.busSalesOrderModel.vinNo = '' } + if (this.formobj.gc1.contractFile.length > 0) { + const aa = [] + this.formobj.gc1.contractFile.forEach((e) => { + aa.push(e.url) + }) + this.formobj.gc1.contractFile = aa + } + if (this.formobj.gc1.certFile.length > 0) { + const bb = [] + this.formobj.gc1.certFile.forEach((e) => { + bb.push(e.url) + }) + this.formobj.gc1.certFile = bb + } + if (this.formobj.gc2.contractFile.length > 0) { + const cc = [] + this.formobj.gc2.contractFile.forEach((e) => { + cc.push(e.url) + }) + this.formobj.gc2.contractFile = cc + } + if (this.formobj.gc2.certFile.length > 0) { + const ee = [] + this.formobj.gc2.certFile.forEach((e) => { + ee.push(e.url) + }) + this.formobj.gc2.certFile = ee + } } }) }, @@ -450,15 +557,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, concatNo: '', createDate: '', customerName: '', @@ -468,6 +577,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdan.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdan.vue index dc63110b7b..e64ba48cb5 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdan.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdan.vue @@ -134,51 +134,127 @@ {{ formobj.busSalesOrderPrice.quantity }} - - - - - - -
价格信息
+
价格信息(不含挂车)
- -
单台整体指导价
+ +
销售指导价(元/台)
{{ formobj.busSalesOrderPrice.singleGuildPrice }}
- -
主车单台销售合同价
+ +
销售合同价(元/台)
+ {{ formobj.busSalesOrderPrice.singleFinalPrice }} +
+ +
其中主车或底盘(元)
{{ formobj.busSalesOrderModel.finalPrice }}
- -
单台整体销售合同价
- {{ formobj.busSalesOrderPrice.singleFinalPrice }} + +
其中上装(元)
+ {{ formobj.busSalesOrderModel.topPrice }}
- -
单台折让(元)
- {{ formobj.busSalesOrderPrice.bigDecimalSing }} -
- +
台数
{{ formobj.busSalesOrderPrice.quantity }}
- -
车价合计
+ +
车价合计(元)
{{ formobj.busSalesOrderPrice.priceSum }}
-
- - +
计划提车日期
{{ formobj.busSalesOrderPrice.plannedPickUpDate }}
- -
预计提车地点
+ +
计划提车地点
{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}
+ + +
单台折让(元)
+ {{ formobj.busSalesOrderPrice.bigDecimalSing }} +
+
+
+
挂车1(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc1.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc1.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc1.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc1.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc1.remarks }} +
+
+
+
挂车2(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc2.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc2.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc2.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc2.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc2.remarks }} +
+
+
+
订金信息
@@ -383,15 +459,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, companyInvoicingName: '', concatNo: '', createDate: '', @@ -402,6 +480,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', @@ -502,6 +581,34 @@ export default { } else { this.formobj.busSalesOrderModel.vinNo = '' } + if (this.formobj.gc1.contractFile.length > 0) { + const aa = [] + this.formobj.gc1.contractFile.forEach((e) => { + aa.push(e.url) + }) + this.formobj.gc1.contractFile = aa + } + if (this.formobj.gc1.certFile.length > 0) { + const bb = [] + this.formobj.gc1.certFile.forEach((e) => { + bb.push(e.url) + }) + this.formobj.gc1.certFile = bb + } + if (this.formobj.gc2.contractFile.length > 0) { + const cc = [] + this.formobj.gc2.contractFile.forEach((e) => { + cc.push(e.url) + }) + this.formobj.gc2.contractFile = cc + } + if (this.formobj.gc2.certFile.length > 0) { + const ee = [] + this.formobj.gc2.certFile.forEach((e) => { + ee.push(e.url) + }) + this.formobj.gc2.certFile = ee + } } }) selectStaffListss().then((res) => { diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByCaiGou.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByCaiGou.vue index 43e3d0e47f..e271226aa8 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByCaiGou.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByCaiGou.vue @@ -134,51 +134,127 @@ {{ formobj.busSalesOrderPrice.quantity }} - - - - - - -
价格信息
+
价格信息(不含挂车)
- -
单台整体指导价
+ +
销售指导价(元/台)
{{ formobj.busSalesOrderPrice.singleGuildPrice }}
- -
主车单台销售合同价
+ +
销售合同价(元/台)
+ {{ formobj.busSalesOrderPrice.singleFinalPrice }} +
+ +
其中主车或底盘(元)
{{ formobj.busSalesOrderModel.finalPrice }}
- -
单台整体销售合同价
- {{ formobj.busSalesOrderPrice.singleFinalPrice }} + +
其中上装(元)
+ {{ formobj.busSalesOrderModel.topPrice }}
- -
单台折让(元)
- {{ formobj.busSalesOrderPrice.bigDecimalSing }} -
- +
台数
{{ formobj.busSalesOrderPrice.quantity }}
- -
车价合计
+ +
车价合计(元)
{{ formobj.busSalesOrderPrice.priceSum }}
-
- - +
计划提车日期
{{ formobj.busSalesOrderPrice.plannedPickUpDate }}
- -
预计提车地点
+ +
计划提车地点
{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}
+ + +
单台折让(元)
+ {{ formobj.busSalesOrderPrice.bigDecimalSing }} +
+
+
+
挂车1(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc1.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc1.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc1.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc1.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc1.remarks }} +
+
+
+
挂车2(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc2.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc2.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc2.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc2.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc2.remarks }} +
+
+
+
订金信息
@@ -405,15 +481,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, concatNo: '', createDate: '', customerName: '', @@ -423,6 +501,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', @@ -531,6 +610,34 @@ export default { } else { this.formobj.busSalesOrderModel.vinNo = '' } + if (this.formobj.gc1.contractFile.length > 0) { + const aa = [] + this.formobj.gc1.contractFile.forEach((e) => { + aa.push(e.url) + }) + this.formobj.gc1.contractFile = aa + } + if (this.formobj.gc1.certFile.length > 0) { + const bb = [] + this.formobj.gc1.certFile.forEach((e) => { + bb.push(e.url) + }) + this.formobj.gc1.certFile = bb + } + if (this.formobj.gc2.contractFile.length > 0) { + const cc = [] + this.formobj.gc2.contractFile.forEach((e) => { + cc.push(e.url) + }) + this.formobj.gc2.contractFile = cc + } + if (this.formobj.gc2.certFile.length > 0) { + const ee = [] + this.formobj.gc2.certFile.forEach((e) => { + ee.push(e.url) + }) + this.formobj.gc2.certFile = ee + } getInvoicingList({ orgPath: this.formobj.orgSidPath }).then((res) => { if (res.success) { this.companyInvoicing_list = res.data diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByJinRong.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByJinRong.vue index 321b4f9f38..32d3b414b3 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByJinRong.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanByJinRong.vue @@ -134,51 +134,127 @@ {{ formobj.busSalesOrderPrice.quantity }} - - - - - - -
价格信息
+
价格信息(不含挂车)
- -
单台整体指导价
+ +
销售指导价(元/台)
{{ formobj.busSalesOrderPrice.singleGuildPrice }}
- -
主车单台销售合同价
+ +
销售合同价(元/台)
+ {{ formobj.busSalesOrderPrice.singleFinalPrice }} +
+ +
其中主车或底盘(元)
{{ formobj.busSalesOrderModel.finalPrice }}
- -
单台整体销售合同价
- {{ formobj.busSalesOrderPrice.singleFinalPrice }} + +
其中上装(元)
+ {{ formobj.busSalesOrderModel.topPrice }}
- -
单台折让(元)
- {{ formobj.busSalesOrderPrice.bigDecimalSing }} -
- +
台数
{{ formobj.busSalesOrderPrice.quantity }}
- -
车价合计
+ +
车价合计(元)
{{ formobj.busSalesOrderPrice.priceSum }}
-
- - +
计划提车日期
{{ formobj.busSalesOrderPrice.plannedPickUpDate }}
- -
预计提车地点
+ +
计划提车地点
{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}
+ + +
单台折让(元)
+ {{ formobj.busSalesOrderPrice.bigDecimalSing }} +
+
+
+
挂车1(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc1.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc1.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc1.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc1.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc1.remarks }} +
+
+
+
挂车2(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc2.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc2.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc2.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc2.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc2.remarks }} +
+
+
+
订金信息
@@ -405,15 +481,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, concatNo: '', createDate: '', customerName: '', @@ -423,6 +501,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', @@ -531,6 +610,34 @@ export default { } else { this.formobj.busSalesOrderModel.vinNo = '' } + if (this.formobj.gc1.contractFile.length > 0) { + const aa = [] + this.formobj.gc1.contractFile.forEach((e) => { + aa.push(e.url) + }) + this.formobj.gc1.contractFile = aa + } + if (this.formobj.gc1.certFile.length > 0) { + const bb = [] + this.formobj.gc1.certFile.forEach((e) => { + bb.push(e.url) + }) + this.formobj.gc1.certFile = bb + } + if (this.formobj.gc2.contractFile.length > 0) { + const cc = [] + this.formobj.gc2.contractFile.forEach((e) => { + cc.push(e.url) + }) + this.formobj.gc2.contractFile = cc + } + if (this.formobj.gc2.certFile.length > 0) { + const ee = [] + this.formobj.gc2.certFile.forEach((e) => { + ee.push(e.url) + }) + this.formobj.gc2.certFile = ee + } getInvoicingList({ orgPath: this.formobj.orgSidPath }).then((res) => { if (res.success) { this.companyInvoicing_list = res.data diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanInfo.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanInfo.vue index e749f600c8..cdf69de019 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanInfo.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/workflow/xiaoshouguanliFlow/xiaoshoudingdanFlow/xiaoshoudingdanInfo.vue @@ -130,51 +130,127 @@ {{ formobj.busSalesOrderPrice.quantity }} - - - - - - -
价格信息
+
价格信息(不含挂车)
- -
单台整体指导价
+ +
销售指导价(元/台)
{{ formobj.busSalesOrderPrice.singleGuildPrice }}
- -
主车单台销售合同价
+ +
销售合同价(元/台)
+ {{ formobj.busSalesOrderPrice.singleFinalPrice }} +
+ +
其中主车或底盘(元)
{{ formobj.busSalesOrderModel.finalPrice }}
- -
单台整体销售合同价
- {{ formobj.busSalesOrderPrice.singleFinalPrice }} + +
其中上装(元)
+ {{ formobj.busSalesOrderModel.topPrice }}
- -
单台折让(元)
- {{ formobj.busSalesOrderPrice.bigDecimalSing }} -
- +
台数
{{ formobj.busSalesOrderPrice.quantity }}
- -
车价合计
+ +
车价合计(元)
{{ formobj.busSalesOrderPrice.priceSum }}
-
- - +
计划提车日期
{{ formobj.busSalesOrderPrice.plannedPickUpDate }}
- -
预计提车地点
+ +
计划提车地点
{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}
+ + +
单台折让(元)
+ {{ formobj.busSalesOrderPrice.bigDecimalSing }} +
+
+
+
挂车1(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc1.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc1.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc1.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc1.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc1.remarks }} +
+
+
+
挂车2(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc2.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc2.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc2.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc2.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc2.remarks }} +
+
+
+
订金信息
@@ -335,15 +411,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, concatNo: '', companyInvoicingName: '', createDate: '', @@ -354,6 +432,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', @@ -426,6 +505,34 @@ export default { } else { this.formobj.busSalesOrderModel.vinNo = '' } + if (this.formobj.gc1.contractFile.length > 0) { + const aa = [] + this.formobj.gc1.contractFile.forEach((e) => { + aa.push(e.url) + }) + this.formobj.gc1.contractFile = aa + } + if (this.formobj.gc1.certFile.length > 0) { + const bb = [] + this.formobj.gc1.certFile.forEach((e) => { + bb.push(e.url) + }) + this.formobj.gc1.certFile = bb + } + if (this.formobj.gc2.contractFile.length > 0) { + const cc = [] + this.formobj.gc2.contractFile.forEach((e) => { + cc.push(e.url) + }) + this.formobj.gc2.contractFile = cc + } + if (this.formobj.gc2.certFile.length > 0) { + const ee = [] + this.formobj.gc2.certFile.forEach((e) => { + ee.push(e.url) + }) + this.formobj.gc2.certFile = ee + } } }) }, diff --git a/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanInfo.vue b/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanInfo.vue index 2efbc0d166..e1145cdfdd 100644 --- a/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanInfo.vue +++ b/anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanInfo.vue @@ -130,51 +130,127 @@ {{ formobj.busSalesOrderPrice.quantity }} - - - - - - -
价格信息
+
价格信息(不含挂车)
- -
单台整体指导价
+ +
销售指导价(元/台)
{{ formobj.busSalesOrderPrice.singleGuildPrice }}
- -
主车单台销售合同价
+ +
销售合同价(元/台)
+ {{ formobj.busSalesOrderPrice.singleFinalPrice }} +
+ +
其中主车或底盘(元)
{{ formobj.busSalesOrderModel.finalPrice }}
- -
单台整体销售合同价
- {{ formobj.busSalesOrderPrice.singleFinalPrice }} + +
其中上装(元)
+ {{ formobj.busSalesOrderModel.topPrice }}
- -
单台折让(元)
- {{ formobj.busSalesOrderPrice.bigDecimalSing }} -
- +
台数
{{ formobj.busSalesOrderPrice.quantity }}
- -
车价合计
+ +
车价合计(元)
{{ formobj.busSalesOrderPrice.priceSum }}
-
- - +
计划提车日期
{{ formobj.busSalesOrderPrice.plannedPickUpDate }}
- -
预计提车地点
+ +
计划提车地点
{{ formobj.busSalesOrderPrice.plannedPickUpLocation }}
+ + +
单台折让(元)
+ {{ formobj.busSalesOrderPrice.bigDecimalSing }} +
+
+
+
挂车1(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc1.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc1.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc1.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc1.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc1.remarks }} +
+
+
+
挂车2(对应单台主车)
+ + +
挂车类型
+ {{ formobj.gc2.trailerTypeValue }} +
+ +
外廓尺寸-长(m)
+ {{ formobj.gc2.appearanceSizeLong }} +
+ +
销售合同价(元/台)
+ {{ formobj.gc2.singleFinalPrice }} +
+ +
数量
+ {{ formobj.gc2.trailerCount }} +
+
+ + +
合同
+ +
+
+ + +
同车型合格证
+ +
+
+ + +
备注说明
+ {{ formobj.gc2.remarks }} +
+
+
+
订金信息
@@ -336,15 +412,17 @@ export default { billingType: '', billingTypeKey: '', busDepositFictitiousList: [], - busSalesOrderDeposit: [], + busSalesOrderDeposit: {}, busSalesOrderDiscountList: [], - busSalesOrderInsurance: [], - busSalesOrderMakeup: [], - busSalesOrderModel: [], - busSalesOrderPrice: [], + busSalesOrderInsurance: {}, + busSalesOrderMakeup: {}, + busSalesOrderModel: {}, + busSalesOrderPrice: {}, busSalesOrderVehicleList: [], - busSalesOrderotherMessageDetailsVo: [], + busSalesOrderotherMessageDetailsVo: {}, busSalesVehicleOrderList: [], + gc1: {}, + gc2: {}, companyInvoicingName: '', concatNo: '', createDate: '', @@ -355,6 +433,7 @@ export default { insuranceInfoMessage: '', isInsurance: '', isTop: '', + isGc: false, licensePlateKey: '', licensePlateValue: '', mobile: '', @@ -392,6 +471,34 @@ export default { } else { this.formobj.busSalesOrderModel.vinNo = '' } + if (this.formobj.gc1.contractFile.length > 0) { + const aa = [] + this.formobj.gc1.contractFile.forEach((e) => { + aa.push(e.url) + }) + this.formobj.gc1.contractFile = aa + } + if (this.formobj.gc1.certFile.length > 0) { + const bb = [] + this.formobj.gc1.certFile.forEach((e) => { + bb.push(e.url) + }) + this.formobj.gc1.certFile = bb + } + if (this.formobj.gc2.contractFile.length > 0) { + const cc = [] + this.formobj.gc2.contractFile.forEach((e) => { + cc.push(e.url) + }) + this.formobj.gc2.contractFile = cc + } + if (this.formobj.gc2.certFile.length > 0) { + const ee = [] + this.formobj.gc2.certFile.forEach((e) => { + ee.push(e.url) + }) + this.formobj.gc2.certFile = ee + } } }) },