diff --git a/src/app/routes/order-management/components/bulk/bulk.component.html b/src/app/routes/order-management/components/bulk/bulk.component.html index 55b04a00..abade9ae 100644 --- a/src/app/routes/order-management/components/bulk/bulk.component.html +++ b/src/app/routes/order-management/components/bulk/bulk.component.html @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2022-01-12 10:52:50 * @LastEditors : Shiming - * @LastEditTime : 2022-01-19 14:39:52 + * @LastEditTime : 2022-01-24 09:53:48 * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\bulk\\bulk.component.html * Copyright (C) 2022 huzhenhong. All rights reserved. --> @@ -66,8 +66,8 @@ {{ item.freightPrice | currency}} -
装 | {{item?.loadingTime}}
-
卸 | {{item?.unloadingTime}}
+
装 | {{item?.loadPlanTime}}
+
卸 | {{item?.unloadPlanTime}}
diff --git a/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.html b/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.html index 5cacce22..6c8f2ec8 100644 --- a/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.html +++ b/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.html @@ -4,8 +4,8 @@ * @Author : Shiming * @Date : 2022-01-12 10:52:50 * @LastEditors : Shiming - * @LastEditTime : 2022-01-21 16:57:10 - * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html + * @LastEditTime : 2022-01-24 10:55:27 + * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\compliance-audit\\compliance-audit.component.html * Copyright (C) 2022 huzhenhong. All rights reserved. --> @@ -43,15 +43,16 @@ - - + + +
{{ item.freightPrice | currency}} - -
- - -
-
- - - -
装 | {{item?.loadingTime}}
卸 | {{item?.unloadingTime}}
@@ -107,45 +98,81 @@

- - -
{{item.no}}
-
- -
-

预付:¥200.00

-

到付:¥200.00

-

油卡:¥200.00

-

回单付:¥200.00

-

小计:¥200.00

-

附加费:¥200.00

-
-
- - - - -
- -
已选择{{selectedRows?.length || 0}}条订单,确认批量签收吗? -
-
- 签收后不可再修改运费,请确保运费等信息准确无误后,再进行签收。 -
-
-
- +
-
\ No newline at end of file +
+ + + + + + + + + + + + + + + + + + {{ index + 1 }} + + + + + + + + + + + + + + {{ item.amountBeforeChange | currency}} + + + ¥{{ item.amountchangeValue | number: '0.2-2'}} + + + {{ item.amountAfterChange | currency}} + + +
变更原因:{{ViewCause?.changeCause}}
+
拒绝原因:{{ViewCause?.refuseCause}}
+
注:附加费依据调整后的运输费用重新计算
+
+ + + + +
\ No newline at end of file diff --git a/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.ts b/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.ts index cbfdd989..c43c3147 100644 --- a/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.ts +++ b/src/app/routes/order-management/components/compliance-audit/compliance-audit.component.ts @@ -22,19 +22,30 @@ export class OrderManagementComplianceAuditComponent implements OnInit { uiView: SFUISchema = {}; schema: SFSchema = {}; schemaView: SFSchema = {}; + changeId: any; // 主页面查看运费变更记录id - 用于运费变更记录 + changeViewId: any; // 查看运费变更记录id - 用于查看 + auditId: any; auditMany = false; isVisibleView = false; isVisibleEvaluate = false; isVisible = false; + isVisibleRE = false; _$expand = false; @ViewChild('st') private readonly st!: STComponent; @ViewChild('sf', { static: false }) sf!: SFComponent; + @ViewChild('sfView', { static: false }) sfView!: SFComponent; + @ViewChild('stFloat') private readonly stFloat!: STComponent; + @ViewChild('stFloatView') private readonly stFloatView!: STComponent; columns: STColumn[] = []; + columnsFloat: STColumn[] = []; + columnsFloatView: STColumn[] = []; + ViewCause: any; // 变更运费查看数据 resourceStatus: any; tabs = { - receivedQuantity: 0, - stayQuantity: 0, - totalCount: 0 + totalCount: 0, + qualifiedtity: 0, + spotQuantity: 0, + unstayQuantity: 0 }; constructor( public service: OrderManagementService, @@ -62,29 +73,42 @@ export class OrderManagementComplianceAuditComponent implements OnInit { } }; } + get changeParams() { + return { + id: this.changeId + }; + } get selectedRows() { return this.st?.list.filter(item => item.checked) || []; } + get changeViewParams() { + return { + id: this.changeViewId + }; + } search() { this.st?.load(1); this.getGoodsSourceStatistical(); } getGoodsSourceStatistical() { this.tabs = { - receivedQuantity: 0, - stayQuantity: 0, - totalCount: 0 + totalCount: 0, + qualifiedtity: 0, + spotQuantity: 0, + unstayQuantity: 0 }; const params: any = Object.assign({}, this.reqParams || {}); delete params.billStatus - this.service.request(this.service.$api_get_getAuditStatistical, { ...this.reqParams }).subscribe(res => { + this.service.request(this.service.$api_get_getComplianceStatisticalStatus, { ...this.reqParams }).subscribe(res => { if (res) { let totalCount = 0; res.forEach((element: any) => { - if (element.billStatusLabel === '待审核') { - this.tabs.receivedQuantity = element.quantity; - } else if (element.billStatusLabel === '已审核') { - this.tabs.stayQuantity = element.quantity; + if (element.complianceStatusLabel === '待抽查') { + this.tabs.spotQuantity = element.quantity; + } else if (element.complianceStatusLabel === '合格') { + this.tabs.qualifiedtity = element.quantity; + } else if (element.complianceStatusLabel === '不合格') { + this.tabs.qualifiedtity = element.quantity; } totalCount += element.quantity; }); @@ -104,6 +128,8 @@ export class OrderManagementComplianceAuditComponent implements OnInit { this.getGoodsSourceStatistical(); this.initSF(); this.initST(); + this.initSTFloat(); + this.initSTFloatView(); } /** @@ -239,19 +265,19 @@ export class OrderManagementComplianceAuditComponent implements OnInit { } } as SFSelectWidgetSchema }, - settlementBasis: { - title: '装卸凭证', + createTime: { + title: '创建时间', type: 'string', ui: { - widget: 'dict-select', - containsAllLable: true, - params: { dictKey: 'goodresource:settlement:type' }, - containAllLable: true, + widget: 'date', + mode: 'range', + format: 'yyyy-MM-dd', + allowClear: true, visibleIf: { _$expand: (value: boolean) => value } - } as SFSelectWidgetSchema - } + } as SFDateWidgetSchema + }, }, type: 'object' }; @@ -272,7 +298,7 @@ export class OrderManagementComplianceAuditComponent implements OnInit { render: 'billCode' }, { - title: '运费明细', + title: '费用明细', width: '250px', className: 'text-right', render: 'mybidDetailInfo' @@ -280,6 +306,7 @@ export class OrderManagementComplianceAuditComponent implements OnInit { { title: '网络货运人', index: 'enterpriseInfoName', width: '220px', className: 'text-left' }, { title: '货主', index: 'shipperAppUserName', width: '220px', className: 'text-left' }, { title: '所属项目', index: 'enterpriseProjectName', width: '220px', className: 'text-left' }, + { title: '关联运单号', index: 'wayBillCode', width: '220px', className: 'text-left' }, { title: '货源编号', index: 'resourceCode', width: '180px', className: 'text-left' }, { title: '装货地', index: 'loadingAddressArr', width: '180px', className: 'text-left' }, { @@ -315,48 +342,147 @@ export class OrderManagementComplianceAuditComponent implements OnInit { render: 'loadingTime' }, { - title: '装货凭证', + title: '创建时间', width: '180px', className: 'text-left', - render: 'loadingLadingBillFilePath' + index: 'createTime' }, { - title: '卸货凭证', + title: '审核人', width: '180px', className: 'text-left', - render: 'unloadingLadingBillFilePath' + index: 'loadingLadingBillFilePath' + }, + { + title: '审核时间', + width: '180px', + className: 'text-left', + index: 'loadingLadingBillFilePath' + }, + { + title: '状态', + width: '180px', + className: 'text-left', + index: 'loadingLadingBillFilePath' }, { title: '操作', fixed: 'right', - width: '120px', + width: '140px', className: 'text-left', buttons: [ { - text: '通过', + text: '查看申诉记录', click: _record => console.log('1'), // iif: item => item.billStatus == '5' }, { - text: '生成电子单据', - click: _record => this.generate(_record), + text: '运费变更记录', + click: _record => this.OpenPrice(_record), // iif: item => item.billStatus == '4' }, { - text: '修改', - click: _record => this.modification(_record), + text: '合规抽查  ', + click: _record => this.audit(_record), // iif: item => item.billStatus == '4' }, ] } ]; } + initSTFloat() { + this.columnsFloat = [ + { + title: '序号', + className: 'text-center', + render: 'order' + }, + { + title: '操作时间', + className: 'text-center', + index: 'applyTime' + }, + { + title: '操作人', + className: 'text-center', + index: 'applyUserName' + }, + { title: '状态', index: 'handleStatusLabel', className: 'text-center' }, + { + title: '操作', + fixed: 'right', + className: 'text-left', + buttons: [ + { + text: '查看', + click: (_record) => this.FloatView(_record), + }, + { + text: '撤销', + click: (_record) => this.revoke(_record), + iif: item => item.handleStatus === '1' || item.handleStatus === 1, + }, + ], + }, + ]; + } + initSTFloatView() { + this.columnsFloatView = [ + { + title: '费用名称', + width: '100px', + className: 'text-center', + index: 'costName' + }, + { + title: '变更前', + width: '100px', + className: 'text-center', + index: 'amountAfterChange', + render: 'amountAfterChange' + }, + { title: '变更值', + index: 'amountchangeValue', + render: 'amountchangeValue', + width: '120px', + className: 'text-center' }, + { title: '变更后', + index: 'amountBeforeChange', + render: 'amountBeforeChange', + width: '120px', + className: 'text-center' } + ]; + } /** * 查询字段个数 */ get queryFieldCount(): number { return Object.keys(this.schema?.properties || {}).length; } + /** + * 浮动费用查看 + */ + FloatView(item: any) { + console.log(item) + this.changeViewId = item.id; + this.service.request(this.service.$api_getChangeRecordWholeDetail, {id: this.changeViewId}).subscribe((res) => { + this.ViewCause = res; + }) + this.isVisibleView = true + } + revoke(item: any) { + this.modal.confirm({ + nzTitle: '是否确定立即撤销费用变更!', + nzOnOk: () => + this.service.request(this.service.$api_get_revokeChangeRecord, { id: item.id}).subscribe((res) => { + console.log(res) + if(res) { + this.service.msgSrv.success('撤销成功!') + this.stFloat.reload() + } + }) + }); + } /** * 伸缩查询条件 */ @@ -377,70 +503,146 @@ export class OrderManagementComplianceAuditComponent implements OnInit { * 导入货源 */ importGoodsSource() {} - audit(item: any) {} - - /** - * 审核通过按钮 - */ - handleOK() {} OpenPrice(item: any) { + this.changeId = item.id; this.isVisible = true; } - // 修改 - modification(item: any) { - const modalRef = this.modal.create({ - nzTitle: '修改', - nzWidth: '50%', - nzContent: orderManagementVoucherViewComponent, - nzComponentParams: { - i: item, - Status: 1 - }, - nzFooter: null - }); - modalRef.afterClose.subscribe((result: any) => { - this.st.load(1); - this.getGoodsSourceStatistical() - }); - } - // 生成电子单据 - generate(item: any) { - const modalRef = this.modal.create({ - nzTitle: '查看凭证', - nzWidth: '50%', - nzContent: orderManagementVoucherViewComponent, - nzComponentParams: { - i: item, - Status: 2 - }, - nzFooter: null - }); - modalRef.afterClose.subscribe((result: any) => { - this.st.load(1); - this.getGoodsSourceStatistical() - }); - } - // 取消订单 - cancellation(item: any) { - // api_get_cancelAnOrder - this.modal.confirm({ - nzTitle: '确定取消该订单吗?', - nzContent: `取消后无法恢复,请确认`, - nzOnOk: () => - this.service.request(this.service.$api_get_cancelAnOrder, { id: item.id }).subscribe(res => { - if (res === true) { - this.service.msgSrv.success('操作成功!'); - this.st?.reload(1); - this.getGoodsSourceStatistical(); - this.initST(); + + initSTAudit(value: number) { + if (value == 1) { + this.schemaView = { + properties: { + billCode: { + title: '订单号', + type: 'string', + default: this.auditId, + ui: { + widget: 'text' + } + }, + complianceRemark: { + title: '备注', + type: 'string', + maxLength: 50, + ui: { + placeholder: '合格可以不用填写原因 ,不合格必须说明原因', + widget: 'textarea', + autosize: { minRows: 3, maxRows: 6 } + } } - this.st?.reload(1); - this.getGoodsSourceStatistical(); - }) + } + }; + } else { + this.schemaView = { + properties: { + billCode: { + title: '', + type: 'string', + default: `已选${this.selectedRows?.length}条订单`, + ui: { + widget: 'text' + } + }, + complianceRemark: { + title: '备注', + type: 'string', + maxLength: 50, + ui: { + placeholder: '合格可以不用填写原因 ,不合格必须说明原因', + widget: 'textarea', + autosize: { minRows: 3, maxRows: 6 } + } + } + } + }; + } + + this.uiView = { '*': { spanLabelFixed: 110, grid: { span: 24 } } }; + } + /* + * 审核关闭弹窗 + */ + handleCancel(value?: string) { + if(value === '0') { + this.isVisible = false; + } else if(value === '1') { + this.isVisibleRE = false; + } else if(value === '2') { + this.isVisibleView = false; + } + } + /** + * 审核通过按钮 + */ + handleOK() { + let idList: any[] = []; + if(this.selectedRows.length > 0) { + this.selectedRows.forEach(item => { + idList.push(item.id); + }); + } else { + idList.push(this.sfView.value.billCode) + } + const parms = { + ids: idList, + complianceRemark: this.sfView.value.complianceRemark, + complianceStatus: 1, + }; + this.service.request(this.service.$api_get_updateBillByCompliance, parms).subscribe(res => { + if (res) { + this.service.msgSrv.success('提交成功!'); + this.isVisibleRE = false; + this.st?.load(1); + this.getGoodsSourceStatistical() + } }); } - // 修改订单 - changeOrder(value: any) { - this.router.navigate(['order-management/bulk-detailChange', value.id]); + /** + * 审核拒绝按钮 + */ + reject() { + if(!this.sfView.value.complianceRemark) { + this.service.msgSrv.error('备注不能为空!'); + return; + } + let idList: any[] = []; + if(this.selectedRows.length > 0) { + this.selectedRows.forEach(item => { + idList.push(item.id); + }); + } else { + idList.push(this.sfView.value.billCode) + } + const parms = { + ids: idList, + complianceRemark: this.sfView.value.complianceRemark, + complianceStatus: 2, + }; + this.service.request(this.service.$api_get_updateBillByCompliance, parms).subscribe(res => { + if (res) { + this.service.msgSrv.success('提交成功!'); + this.isVisibleRE = false; + this.st?.load(1); + this.getGoodsSourceStatistical() + } + }); + } + /** + *合规抽查 + */ + audit(item?: any) { + if (item) { + this.isVisibleRE = true; + this.auditId = item.id; + this.initSTAudit(1); + } else { + if(this.selectedRows.length <= 0) { + this.service.msgSrv.error('请选择订单!') + return; + } else { + this.isVisibleRE = true; + this.initSTAudit(2); + } + } } } diff --git a/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.html b/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.html index 5cacce22..ecf5601f 100644 --- a/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.html +++ b/src/app/routes/order-management/components/receipts-audit/receipts-audit.component.html @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2022-01-12 10:52:50 * @LastEditors : Shiming - * @LastEditTime : 2022-01-21 16:57:10 + * @LastEditTime : 2022-01-24 11:06:06 * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html * Copyright (C) 2022 huzhenhong. All rights reserved. --> @@ -63,13 +63,13 @@
- - + +
- - + +
装 | {{item?.loadingTime}}
diff --git a/src/app/routes/order-management/components/vehicle/vehicle.component.ts b/src/app/routes/order-management/components/vehicle/vehicle.component.ts index 6552d953..3a3825a6 100644 --- a/src/app/routes/order-management/components/vehicle/vehicle.component.ts +++ b/src/app/routes/order-management/components/vehicle/vehicle.component.ts @@ -567,10 +567,8 @@ resourceStatus: any; if(type === '0') { this.isVisible = false } else if(type === '1') { - console.log(type) this.isVisibleView = false } else if(type === '2') { - console.log(type) this.isVisibleEvaluate = false } } diff --git a/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.html b/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.html index 6ad44af6..24e884c1 100644 --- a/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.html +++ b/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.html @@ -27,5 +27,5 @@ diff --git a/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.ts b/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.ts index 2be1787b..48c2640f 100644 --- a/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.ts +++ b/src/app/routes/order-management/modal/audit/voucher-view/voucher-view.component.ts @@ -398,49 +398,37 @@ export class orderManagementVoucherViewComponent implements OnInit { }; } save(value: any): void { - if(this.Status === 1) { - if(!value.time) { + if(!value) { this.service.msgSrv.warning('必填项为空!') return; } + console.log(value) const params = { id: this.i.id, + loadingLadingBillFilePath: value.loadingLadingBillFilePath.data.fullFilePath, + loadingPeopleVehiclesGoodsFilePath: value.loadingPeopleVehiclesGoodsFilePath.data.fullFilePath, unloadingLadingBillFilePath: value.unloadingLadingBillFilePath.data.fullFilePath, unloadingPeopleVehiclesGoodsFilePath: value.unloadingPeopleVehiclesGoodsFilePath.data.fullFilePath, - time: value.time, } - // params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ') - // this.service.request(this.service.$api_get_insertWholeUnloadCarInfo, params).subscribe((res) => { - // if(res) { - // this.service.msgSrv.success('确认到车成功!') - // this.modal.destroy(true); - // } - // }) - } else { - if(!value.time || !this.data.weight) { - this.service.msgSrv.warning('必填项为空!') - return; - } - console.log(value) - console.log(this.i) - const params = { - id: this.i?.id, - unloadingLadingBillFilePath: value.unloadingLadingBillFilePath.data.fullFilePath, - unloadingPeopleVehiclesGoodsFilePath: value.unloadingPeopleVehiclesGoodsFilePath.data.fullFilePath, - time: value.time, - volume: this.data.volume, - weight: this.data.weight + console.log(params) + this.service.request(this.service.$api_get_updateBillExamine, params).subscribe((res) => { + if(res) { + this.service.msgSrv.success('修改成功!') + this.modal.destroy(true); } - // params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ') - // console.log(params) - // this.service.request(this.service.$api_get_insertBulkUnloadCarInfo, params).subscribe((res) => { - // if(res) { - // this.service.msgSrv.success('确认到车成功!') - // this.modal.destroy(true); - // } - // }) - } - + }) + } + sure() { + const params = { + id: this.i.id, + } + console.log(params) + this.service.request(this.service.$api_get_billAuditPass, params).subscribe((res) => { + if(res) { + this.service.msgSrv.success('审核成功!') + this.modal.destroy(true); + } + }) } // 确认到车界面信息(两个只能看的图片) initData() { diff --git a/src/app/routes/order-management/services/order-management.service.ts b/src/app/routes/order-management/services/order-management.service.ts index 7d7a282a..53ae803d 100644 --- a/src/app/routes/order-management/services/order-management.service.ts +++ b/src/app/routes/order-management/services/order-management.service.ts @@ -4,7 +4,7 @@ * @Author : Shiming * @Date : 2021-12-03 15:31:52 * @LastEditors : Shiming - * @LastEditTime : 2022-01-21 16:51:32 + * @LastEditTime : 2022-01-24 09:58:40 * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\services\\order-management.service.ts * Copyright (C) 2022 huzhenhong. All rights reserved. */ @@ -135,6 +135,21 @@ export class OrderManagementService extends ShipperBaseService { public $api_get_billAudit = '/api/sdc/billExamine/billAudit'; // 统计单据审核状态数量 public $api_get_getAuditStatistical = '/api/sdc/billExamine/getAuditStatistical'; + // 修改单据审核 + public $api_get_updateBillExamine = '/api/sdc/billExamine/updateBillExamine'; + // 单据审核通过 + public $api_get_billAuditPass = '/api/sdc/billExamine/billAuditPass'; + + + // 查询规则抽查列表 + public $api_get_listCompliancePage = '/api/sdc/billOperate/listCompliancePage'; + // 规则抽查审批 + public $api_get_updateBillByCompliance = '/api/sdc/billOperate/updateBillByCompliance'; + // 获取规则抽查分类统计 + public $api_get_getComplianceStatisticalStatus = '/api/sdc/billOperate/getComplianceStatisticalStatus'; + + + /** * 根据企业ID,获取企业历史网络货运人 * @returns