Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop

This commit is contained in:
Lingzi
2022-03-23 20:54:07 +08:00
28 changed files with 327 additions and 168 deletions

View File

@ -72,7 +72,7 @@ export class ContractManagementContractListComponent implements OnInit {
title: '签约对象', title: '签约对象',
width: '100px', width: '100px',
className: 'text-center', className: 'text-center',
index: 'documentType' index: 'signingObjectLabel'
}, },
{ {
title: '合同类型', title: '合同类型',

View File

@ -78,7 +78,7 @@ export class ContractManagementPartnerComponent implements OnInit {
title: '签约对象', title: '签约对象',
width: '100px', width: '100px',
className: 'text-center', className: 'text-center',
index: 'signingObject' index: 'signingObjectLabel'
}, },
{ {
title: '合同类型', title: '合同类型',

View File

@ -131,7 +131,7 @@ export class ContractManagementTemplateFrameComponent implements OnInit {
title: '签约对象', title: '签约对象',
width: '100px', width: '100px',
className: 'text-center', className: 'text-center',
render: 'signingObjectLabel' index: 'signingObjectLabel'
}, },
{ {
title: '合同类型', title: '合同类型',
@ -145,15 +145,17 @@ export class ContractManagementTemplateFrameComponent implements OnInit {
className: 'text-center', className: 'text-center',
index: 'resourceTypeLabel' index: 'resourceTypeLabel'
}, },
{ title: '创建人', index: 'createUserId', width: '120px', className: 'text-center' }, { title: '创建人', index: 'createUserIdLabel', width: '120px', className: 'text-center' },
{ {
title: '创建时间', title: '创建时间',
className: 'text-center', className: 'text-center',
index: 'createTime' index: 'createTime',
width: '200px'
}, },
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
width: '110px',
className: 'text-center', className: 'text-center',
buttons: [ buttons: [
{ {

View File

@ -145,15 +145,17 @@ export class ContractManagementTemplatePartnerComponent implements OnInit {
className: 'text-center', className: 'text-center',
index: 'resourceTypeLabel' index: 'resourceTypeLabel'
}, },
{ title: '创建人', index: 'createUserId', width: '120px', className: 'text-center' }, { title: '创建人', index: 'createUserIdLabel', width: '120px', className: 'text-center' },
{ {
title: '创建时间', title: '创建时间',
className: 'text-center', className: 'text-center',
index: 'createTime' index: 'createTime',
width: '200px'
}, },
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
width: '110px',
className: 'text-center', className: 'text-center',
buttons: [ buttons: [
{ {

View File

@ -145,15 +145,17 @@ export class ContractManagementTemplateDetailComponent implements OnInit {
className: 'text-center', className: 'text-center',
index: 'resourceTypeLabel' index: 'resourceTypeLabel'
}, },
{ title: '创建人', index: 'createUserId', width: '120px', className: 'text-center' }, { title: '创建人', index: 'createUserIdLabel', width: '120px', className: 'text-center' },
{ {
title: '创建时间', title: '创建时间',
className: 'text-center', className: 'text-center',
index: 'createTime' index: 'createTime',
width: '200px'
}, },
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
width: '110px',
className: 'text-center', className: 'text-center',
buttons: [ buttons: [
{ {

View File

@ -92,7 +92,7 @@ export class RechargeRecordComponent implements OnInit {
format: 'yyyy-MM-dd' format: 'yyyy-MM-dd'
} as SFDateWidgetSchema } as SFDateWidgetSchema
}, },
rechargeName: { roleName: {
type: 'string', type: 'string',
title: '账户名称', title: '账户名称',
ui: { ui: {
@ -162,7 +162,7 @@ export class RechargeRecordComponent implements OnInit {
{ title: '网络货运人', index: 'ltdName', width: 160 }, { title: '网络货运人', index: 'ltdName', width: 160 },
{ title: '银行类型', index: 'bankTypeLabel', width: 100 }, { title: '银行类型', index: 'bankTypeLabel', width: 100 },
{ title: '账户类型', index: 'accountTypeLabel', width: 100 }, { title: '账户类型', index: 'accountTypeLabel', width: 100 },
{ title: '账户名称', index: 'rechargeName', width: 160 }, { title: '账户名称', index: 'roleName', width: 160 },
{ title: '虚拟账户', index: 'virtualAccount', width: 100 }, { title: '虚拟账户', index: 'virtualAccount', width: 100 },
{ {
title: '充值金额', title: '充值金额',

View File

@ -311,7 +311,7 @@ export class VoucherManagementComponent implements OnInit {
{ title: '帐套', index: 'ltdId', width: 200, format: item => `${item.vcltdcode}-${item.vcltdname}` }, { title: '帐套', index: 'ltdId', width: 200, format: item => `${item.vcltdcode}-${item.vcltdname}` },
{ title: '凭证时间', index: 'vctime', type: 'date', width: 200 }, { title: '凭证时间', index: 'vctime', type: 'date', width: 200 },
{ title: '凭证类型', index: 'vctype', width: 200 }, { title: '凭证类型', index: 'vctype', width: 200 },
{ title: '序号', index: 'invmoney', width: 200, format: _ => '1' }, // { title: '序号', index: 'invmoney', width: 200, format: _ => '1' },
{ title: '摘要', index: 'remarks', width: 300 }, { title: '摘要', index: 'remarks', width: 300 },
{ title: '币种', index: 'currency', width: 100 }, { title: '币种', index: 'currency', width: 100 },
{ {

View File

@ -233,7 +233,7 @@ export class insuranceManagementListComponent implements OnInit {
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择货主',
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value _$expand: (value: boolean) => value
}, },

View File

@ -220,7 +220,7 @@ export class OrderManagementBulkComponent implements OnInit {
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择货主',
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value _$expand: (value: boolean) => value
}, },
@ -392,7 +392,7 @@ export class OrderManagementBulkComponent implements OnInit {
}; };
this.uiView = { '*': { spanLabelFixed: 80, grid: { span: 12, gutter: 4 } } }; this.uiView = { '*': { spanLabelFixed: 80, grid: { span: 12, gutter: 4 } } };
} }
// 获取城市列表 // 获取所属项目
getRegionCode(regionCode: any) { getRegionCode(regionCode: any) {
console.log(regionCode); console.log(regionCode);
return this.service return this.service

View File

@ -103,6 +103,18 @@ export class OrderManagementComplaintComponent implements OnInit {
type: 'string', type: 'string',
title: '投诉单号', title: '投诉单号',
}, },
complaintCause: {
title: '投诉原因',
type: 'string',
ui: {
widget: 'dict-select',
params: { dictKey: 'complaint:cause' },
containsAllLabel: true,
visibleIf: {
_$expand: (value: boolean) => value
}
} as SFSelectWidgetSchema
},
complainantTime: { complainantTime: {
title: '投诉时间', title: '投诉时间',
type: 'string', type: 'string',
@ -124,14 +136,14 @@ export class OrderManagementComplaintComponent implements OnInit {
this.columns = [ this.columns = [
{ {
title: '投诉单号', title: '投诉单号',
width: '170px', width: '200px',
fixed: 'left', fixed: 'left',
className: 'text-center', className: 'text-center',
render: 'complaintCode' render: 'complaintCode'
}, },
{ {
title: '运单号', title: '运单号',
width: '170px', width: '200px',
className: 'text-center', className: 'text-center',
index: 'wayBillCode' index: 'wayBillCode'
}, },
@ -161,6 +173,12 @@ export class OrderManagementComplaintComponent implements OnInit {
width: '200px', width: '200px',
index:'handlePartyLabel' index:'handlePartyLabel'
}, },
{
title: '处理时间',
className: 'text-center',
width: '200px',
index:'handleTime'
},
{ {
title: '处理结果', title: '处理结果',
className: 'text-center', className: 'text-center',

View File

@ -179,7 +179,7 @@ export class OrderManagementComplianceAuditComponent implements OnInit {
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择货主',
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value _$expand: (value: boolean) => value
}, },

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-12 10:52:50 * @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-03-22 17:54:50 * @LastEditTime : 2022-03-23 20:36:40
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\receipts-audit\\receipts-audit.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -59,8 +59,8 @@
[scroll]="{ x: '2000px' }" [scroll]="{ x: '2000px' }"
[data]="service.$api_get_billExamine_page" [data]="service.$api_get_billExamine_page"
[columns]="columns" [columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false" [loading]="false"
> >
@ -103,7 +103,7 @@
<span>{{item?.billStatusLabel}}</span> <span>{{item?.billStatusLabel}}</span>
</div> </div>
<div> <div>
<span >{{item?.billTypeLabel}}{{item?.serviceTypeLabel}}</span> <span >{{item?.resourceTypeLabel}}{{item?.serviceTypeLabel}}</span>
</div> </div>
</ng-template> </ng-template>
<ng-template st-row="goodsName" let-item let-index="index"> <ng-template st-row="goodsName" let-item let-index="index">

View File

@ -1,5 +1,5 @@
import { Component, OnInit, ViewChild } from '@angular/core'; import { Component, OnInit, ViewChild } from '@angular/core';
import { STColumn, STComponent } from '@delon/abc/st'; import { STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form'; import { SFComponent, SFDateWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
import { ModalHelper, _HttpClient } from '@delon/theme'; import { ModalHelper, _HttpClient } from '@delon/theme';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
@ -30,6 +30,7 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
@ViewChild('st') private readonly st!: STComponent; @ViewChild('st') private readonly st!: STComponent;
@ViewChild('sf', { static: false }) sf!: SFComponent; @ViewChild('sf', { static: false }) sf!: SFComponent;
columns: STColumn[] = []; columns: STColumn[] = [];
loading: boolean = true;
resourceStatus: any; resourceStatus: any;
tabs = { tabs = {
receivedQuantity: 0, receivedQuantity: 0,
@ -62,6 +63,34 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
} }
}; };
} }
beforeReq = (requestOptions: STRequestOptions) => {
const a: any = {};
if (this.resourceStatus) {
a.auditStatus = this.resourceStatus;
}
const params: any = Object.assign({}, this.sf?.value || {});
delete params._$expand;
if (this.sf) {
Object.assign(requestOptions.body, {
...a,
...params,
createTime: {
start: this.sf?.value?.createTime?.[0] || '',
end: this.sf?.value?.createTime?.[1] || ''
}
});
}
this.loading = true;
return requestOptions;
};
afterRes = (data: any[], rawData?: any) => {
console.log(data)
this.loading = false
return data.map(item => ({
...item,
// disabled: item.billStatus !== '4'
}));
};
get selectedRows() { get selectedRows() {
return this.st?.list.filter(item => item.checked) || []; return this.st?.list.filter(item => item.checked) || [];
} }
@ -143,6 +172,9 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
} else { } else {
return of([]); return of([]);
} }
},
change: (q: any) => {
this.getRegionCode(q);
} }
} as SFSelectWidgetSchema } as SFSelectWidgetSchema
}, },
@ -151,14 +183,11 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择货主',
allowClear: true,
asyncData: () => this.service.getEnterpriseProject(),
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value _$expand: (value: boolean) => value
} },
}, } as SFSelectWidgetSchema
default: ''
}, },
loadingPlace: { loadingPlace: {
type: 'string', type: 'string',
@ -498,4 +527,25 @@ export class OrderManagementReceiptsAuditComponent implements OnInit {
}) })
}); });
} }
// 获取所属项目
getRegionCode(regionCode: any) {
console.log(regionCode);
return this.service
.request(this.service.$api_get_enterprise_project, { id: regionCode })
.pipe(
map(res =>
res.map((item: any) => ({
label: item.projectName,
value: item.id
}))
)
)
.subscribe(res => {
this.sf.getProperty('/enterpriseProjectId')!.schema.enum = res;
this.sf.getProperty('/enterpriseProjectId')!.widget.reset(res);
// if (this.enterpriseProjectIds) {
// this.sf1.setValue('/enterpriseProjectId', this.enterpriseProjectIds);
// }
});
}
} }

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-16 10:19:08 * @Date : 2021-12-16 10:19:08
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-03-22 18:08:04 * @LastEditTime : 2022-03-23 19:12:19
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\risk-detail\\risk-detail.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\risk-detail\\risk-detail.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -21,8 +21,8 @@
<sv label="申诉状态"> <sv label="申诉状态">
<span >{{i?.representationsStatusLabel}}</span> <span >{{i?.representationsStatusLabel}}</span>
</sv> </sv>
<sv label="承运司机">{{i?.driverName ? i?.driverName + '/': ''}} {{i?.driverPhoneNumber ?i?.driverPhoneNumber + '/': '' }} {{i?.carId}}</sv> <sv label="承运司机">{{i?.driverName ? i?.driverName + '/': ''}} {{i?.driverPhone ?i?.driverPhone + '/': '' }} {{i?.carId}}</sv>
<sv label="车队长"> {{i?.payeeName ? i?.payeeName+ '/' : ''}}{{i?.payeePhoneNumber}} </sv> <sv label="车队长"> {{i?.carCaptainName ? i?.carCaptainName+ '/' : ''}}{{i?.carCaptainPhone}} </sv>
<sv label="装货时间">{{i?.loadTime}}</sv> <sv label="装货时间">{{i?.loadTime}}</sv>
<sv label="卸货时间">{{i?.unloadTime}}</sv> <sv label="卸货时间">{{i?.unloadTime}}</sv>
<sv label="装货地">{{i?.loadingPlace}}</sv> <sv label="装货地">{{i?.loadingPlace}}</sv>

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-12 10:52:50 * @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-03-22 09:42:03 * @LastEditTime : 2022-03-23 19:45:45
* @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\risk\\risk.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\order-management\\components\\risk\\risk.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -59,8 +59,8 @@
[scroll]="{ x: '2000px' }" [scroll]="{ x: '2000px' }"
[data]="service.$api_get_listRiskPage" [data]="service.$api_get_listRiskPage"
[columns]="columns" [columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } , process: afterRes}"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false" [loading]="false"
> >

View File

@ -1,7 +1,7 @@
import { registerLocaleData } from '@angular/common'; import { registerLocaleData } from '@angular/common';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { Component, OnInit, ViewChild } from '@angular/core'; import { Component, OnInit, ViewChild } from '@angular/core';
import { STColumn, STComponent } from '@delon/abc/st'; import { STColumn, STComponent, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form'; import { SFComponent, SFDateWidgetSchema, SFSchema, SFSchemaEnum, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
import { ModalHelper, _HttpClient } from '@delon/theme'; import { ModalHelper, _HttpClient } from '@delon/theme';
import { ShipperBaseService } from '@shared'; import { ShipperBaseService } from '@shared';
@ -21,7 +21,9 @@ export class OrderManagementRiskComponent implements OnInit {
schema: SFSchema = {}; schema: SFSchema = {};
schemaView: SFSchema = {}; schemaView: SFSchema = {};
auditMany = false; auditMany = false;
loading: boolean = true;
auditId: any; auditId: any;
auditIdR: any;
isVisibleRE = false; isVisibleRE = false;
resourceStatus: any; resourceStatus: any;
_$expand = false; _$expand = false;
@ -46,14 +48,6 @@ export class OrderManagementRiskComponent implements OnInit {
* 查询参数 * 查询参数
*/ */
get reqParams() { get reqParams() {
// const a:any = {};
// if(this.resourceStatus) {
// a.representationsStatus = this.resourceStatus
// }
// return {
// ...a,
// ...this.sf?.value,
// };
const a: any = {}; const a: any = {};
if (this.resourceStatus) { if (this.resourceStatus) {
a.representationsStatus = this.resourceStatus a.representationsStatus = this.resourceStatus
@ -69,6 +63,34 @@ export class OrderManagementRiskComponent implements OnInit {
}, },
}; };
} }
beforeReq = (requestOptions: STRequestOptions) => {
const a: any = {};
if (this.resourceStatus) {
a.representationsStatus = this.resourceStatus
}
const params: any = Object.assign({}, this.sf?.value || {});
delete params._$expand;
if (this.sf) {
Object.assign(requestOptions.body, {
...a,
...params,
createTime: {
start: this.sf?.value?.createTime?.[0] || '',
end: this.sf?.value?.createTime?.[1] || '',
},
});
}
this.loading = true;
return requestOptions;
};
afterRes = (data: any[], rawData?: any) => {
console.log(data)
this.loading = false
return data.map(item => ({
...item,
disabled: item.auditStatus !== '1'
}));
};
search() { search() {
this.st?.load(1); this.st?.load(1);
this.getGoodsSourceStatistical() this.getGoodsSourceStatistical()
@ -312,7 +334,7 @@ export class OrderManagementRiskComponent implements OnInit {
{ {
text: '审核', text: '审核',
click: _record => this.audit(_record), click: _record => this.audit(_record),
iif: item => item.representationsStatus == '1' || item.representationsStatus == '2', iif: item => item.auditStatus == '1' ,
acl: { ability: ['ORDER-RISK-audit'] }, acl: { ability: ['ORDER-RISK-audit'] },
}, },
{ {
@ -336,6 +358,14 @@ export class OrderManagementRiskComponent implements OnInit {
widget: 'text' widget: 'text'
} }
}, },
id: {
title: '',
type: 'string',
default: this.auditIdR,
ui: {
hidden: true
}
},
representationsCause: { representationsCause: {
title: '备注', title: '备注',
type: 'string', type: 'string',
@ -428,12 +458,13 @@ export class OrderManagementRiskComponent implements OnInit {
idList.push(item.id); idList.push(item.id);
}); });
} else { } else {
idList.push(this.sfView.value.billCode) idList.push(this.sfView.value.id)
} }
const parms = { const parms = {
ids: idList, ids: idList,
auditRemark: this.sfView.value.representationsCause, auditRemark: this.sfView.value.representationsCause,
representationsStatus: 3, representationsStatus: 3,
auditStatus: 2,
}; };
this.service.request(this.service.$api_get_listRisk_audit, parms).subscribe(res => { this.service.request(this.service.$api_get_listRisk_audit, parms).subscribe(res => {
if (res) { if (res) {
@ -454,7 +485,7 @@ export class OrderManagementRiskComponent implements OnInit {
idList.push(item.id); idList.push(item.id);
}); });
} else { } else {
idList.push(this.sfView.value.billCode) idList.push(this.sfView.value.id)
} }
if (!this.sfView.value.representationsCause) { if (!this.sfView.value.representationsCause) {
this.service.msgSrv.error('拒绝原因为空!'); this.service.msgSrv.error('拒绝原因为空!');
@ -464,6 +495,7 @@ export class OrderManagementRiskComponent implements OnInit {
ids: idList, ids: idList,
auditRemark: this.sfView.value.representationsCause, auditRemark: this.sfView.value.representationsCause,
representationsStatus: 4, representationsStatus: 4,
auditStatus: 3,
}; };
this.service.request(this.service.$api_get_listRisk_audit, parms).subscribe(res => { this.service.request(this.service.$api_get_listRisk_audit, parms).subscribe(res => {
if (res) { if (res) {
@ -480,6 +512,7 @@ export class OrderManagementRiskComponent implements OnInit {
audit(item?: any) { audit(item?: any) {
if (item) { if (item) {
this.auditId = item.billCode; this.auditId = item.billCode;
this.auditIdR = item.id;
this.initSTAudit(1); this.initSTAudit(1);
this.isVisibleRE = true; this.isVisibleRE = true;
} else { } else {

View File

@ -237,7 +237,7 @@ export class OrderManagementVehicleComponent extends BasicTableComponent impleme
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择' placeholder: '请选择货主',
} as SFSelectWidgetSchema } as SFSelectWidgetSchema
}, },
loadingPlace: { loadingPlace: {

View File

@ -424,7 +424,7 @@ export class orderManagementVoucherViewComponent implements OnInit {
const params = [this.i.id]; const params = [this.i.id];
this.service.request(this.service.$api_get_billAuditPass, params).subscribe((res) => { this.service.request(this.service.$api_get_billAuditPass, params).subscribe((res) => {
if(res) { if(res) {
this.service.msgSrv.success('审核成功!') this.service.msgSrv.success('生成电子单据成功!')
this.modal.destroy(true); this.modal.destroy(true);
} }
}) })

View File

@ -425,7 +425,7 @@ export class VehicleSureArriveComponent implements OnInit {
save(value: any): void { save(value: any): void {
console.log(this.Status); console.log(this.Status);
console.log(value?.imgUrl3?.data?.fullFilePath); console.log(value?.imgUrl3?.data?.fullFilePath);
console.log(value?.imgUrl3.url); console.log(value?.imgUrl3?.url);
if (this.Status === 1) { if (this.Status === 1) {
if (!value.time) { if (!value.time) {
@ -436,8 +436,8 @@ export class VehicleSureArriveComponent implements OnInit {
id: this.i.id, id: this.i.id,
imgUrl1: value?.imgUrl1?.data?.fullFilePath, imgUrl1: value?.imgUrl1?.data?.fullFilePath,
imgUrl2: value?.imgUrl2?.data?.fullFilePath, imgUrl2: value?.imgUrl2?.data?.fullFilePath,
setLading: value?.imgUrl3?.data?.fullFilePath || value?.imgUrl3.url, setLading: value?.imgUrl3?.data?.fullFilePath || value?.imgUrl3?.url,
setPeoCarGoods: value?.imgUrl4?.data?.fullFilePath || value?.imgUrl4.url, setPeoCarGoods: value?.imgUrl4?.data?.fullFilePath || value?.imgUrl4?.url,
time: value?.time time: value?.time
}; };
params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss '); params.time = this.datePipe.transform(value.time, 'yyyy-MM-dd HH:mm:ss ');
@ -466,8 +466,8 @@ export class VehicleSureArriveComponent implements OnInit {
id: this.i?.id, id: this.i?.id,
imgUrl1: value?.imgUrl1?.data?.fullFilePath, imgUrl1: value?.imgUrl1?.data?.fullFilePath,
imgUrl2: value?.imgUrl2?.data?.fullFilePath, imgUrl2: value?.imgUrl2?.data?.fullFilePath,
setLading: value?.imgUrl3?.data?.fullFilePath || value?.imgUrl3.url, setLading: value?.imgUrl3?.data?.fullFilePath || value?.imgUrl3?.url,
setPeoCarGoods: value?.imgUrl4?.data?.fullFilePath || value?.imgUrl4.url, setPeoCarGoods: value?.imgUrl4?.data?.fullFilePath || value?.imgUrl4?.url,
time: value?.time, time: value?.time,
volume: this.data?.volume, volume: this.data?.volume,
weight: this.data?.weight weight: this.data?.weight

View File

@ -51,8 +51,7 @@
<se label="当前渠道销售"> 张三/13999999999 </se> <se label="当前渠道销售"> 张三/13999999999 </se>
<se label="渠道销售修改为" required> <se label="渠道销售修改为" required>
<nz-select ngModel="lucy" style="width: 100%"> <nz-select ngModel="lucy" style="width: 100%">
<nz-option nzValue="jack" nzLabel="Jack"></nz-option> <nz-option [nzValue]="item.value" [nzLabel]="item.label" *ngFor="let item of cannels"></nz-option>
<nz-option nzValue="lucy" nzLabel="Lucy"></nz-option>
</nz-select> </nz-select>
</se> </se>
<se label="备注" required> <se label="备注" required>
@ -60,20 +59,11 @@
</se> </se>
<se label="一并转移的客户"> <se label="一并转移的客户">
<p style="margin-top: 8px">已选0</p> <p style="margin-top: 8px">已选0</p>
<nz-table #rowSelectionTable [nzData]="customers" nzSize="small" nzBordered> <st #rest [data]="service.$api_get_enterprice_rel_list" [columns]="[
<thead> { title: '', index: 'key', type: 'checkbox' },
<tr> { title: '客户名称', index: 'enterpriceName' }
<th [nzChecked]="false"></th> ]" [req]="{ process: beforeReq }" [loading]="service.http.loading" [page]="{show:false}">
<th>客户名称</th> </st>
</tr>
</thead>
<tbody>
<tr *ngFor="let data of rowSelectionTable.data">
<td [nzChecked]="data.checked"></td>
<td>{{ data.name }}</td>
</tr>
</tbody>
</nz-table>
</se> </se>
<se label="生效节点" required> <se label="生效节点" required>
<nz-radio-group> <nz-radio-group>

View File

@ -30,15 +30,12 @@ export class PartnerListComponent {
@ViewChild('editCannel', { static: true }) @ViewChild('editCannel', { static: true })
editCannel: any; editCannel: any;
customers: any[] = []; customers: any[] = [];
cannels: any[] = [];
selectItem: any = {}; selectItem: any = {};
constructor(public service: PartnerListService, private nzModalService: NzModalService, private router: Router) { constructor(public service: PartnerListService, private nzModalService: NzModalService, private router: Router) {
this.service.getRebateConfig().subscribe(res => { this.loadSelectOptions();
if (res) {
this.customers = res;
}
});
} }
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
@ -52,6 +49,19 @@ export class PartnerListComponent {
return requestOptions; return requestOptions;
}; };
loadSelectOptions(){
this.service.getRebateConfig().subscribe(res => {
if (res) {
this.customers = res;
}
});
this.service.getChannel().subscribe(res => {
if (res) {
this.customers = res;
}
});
}
auditPartner(item: any) { auditPartner(item: any) {
const modal = this.nzModalService.create({ const modal = this.nzModalService.create({
nzTitle: '审核', nzTitle: '审核',
@ -371,7 +381,7 @@ export class PartnerListComponent {
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
width: '140px', width: '150px',
buttons: [ buttons: [
{ type: 'divider' }, { type: 'divider' },
{ {

View File

@ -27,6 +27,8 @@ export class PartnerListService extends ShipperBaseService {
$api_resend_crm = '/api/mdc/partner/reSendCrm'; $api_resend_crm = '/api/mdc/partner/reSendCrm';
// 查询合伙人修改渠道渠道销售记录 // 查询合伙人修改渠道渠道销售记录
$api_get_personal_channel_list = '/api/mdc/partnerChannelRelLog/list/page'; $api_get_personal_channel_list = '/api/mdc/partnerChannelRelLog/list/page';
// 查询客户关系列表-不分页
$api_get_enterprice_rel_list = '/api/mdc/enterpriceRelLog/list';
// 冻结/启用企业业 // 冻结/启用企业业
$api_lock_freight = '/api/mdc/cuc/enterpriseInfo/operate/lock'; $api_lock_freight = '/api/mdc/cuc/enterpriseInfo/operate/lock';

View File

@ -1,15 +1,15 @@
/* /*
* @Description : * @Description :
* @Version : 1.0 * @Version : 1.0
* @Author : Shiming * @Author : Shiming
* @Date : 2022-02-24 20:19:51 * @Date : 2022-02-24 20:19:51
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-03-10 10:27:21 * @LastEditTime : 2022-03-23 19:57:34
* @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\tran-agreement\\tran-agreement.component.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\supply-management\\components\\tran-agreement\\tran-agreement.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
/* /*
* @Description : * @Description :
* @Version : 1.0 * @Version : 1.0
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-06 15:01:40 * @Date : 2022-01-06 15:01:40
@ -28,111 +28,136 @@ import { SupplyManagementService } from '../../services/supply-management.servic
styleUrls: ['./tran-agreement.component.less'] styleUrls: ['./tran-agreement.component.less']
}) })
export class TranAgreementComponent { export class TranAgreementComponent {
enterpriseInfo:any; // 网络货运人 enterpriseInfo: any; // 网络货运人
type:any; type: any;
object: any; object: any;
agreement:any; agreement: any;
envCache:any; envCache: any;
shipperName:any; shipperName: any;
constructor(private modal: NzModalRef,public service: SupplyManagementService,) { constructor(private modal: NzModalRef, public service: SupplyManagementService) {}
}
ngOnInit() { ngOnInit() {
console.log(this.object) console.log(this.object);
// 获取托运人承运人信息 // 获取托运人承运人信息
this.service.request(this.service.$api_getContractAtr,{id:this.object?.shipperAppUserId}).subscribe(res => { this.service.request(this.service.$api_getContractAtr, { id: this.object?.shipperAppUserId }).subscribe(res => {
if (res) { if (res) {
this.enterpriseInfo = res this.enterpriseInfo = res;
this.getContent(); this.getContent();
} }
}); });
} }
getContent() { getContent() {
let params:any; let params: any;
if(this.type ==='onecar'){ if (this.type === 'onecar') {
params = {
contractType:'1',
resourceType: '1',
signingObject: '1',
templateType: 'MX',
parametersDTO: {
contractCode:'',
shipperLegalPersonName:this.enterpriseInfo.legalPersonName || '', //托运法定代表人
carrierLegalPersonName:this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人
shipperName:this?.shipperName || '', //托运人
carrierName:this.object?.enterpriseInfoName || '', //承运人
consignorInfo: `${this.object?.unLoadingPlaceDTOList[0]?.appUserName || ''} ${this.object?.unLoadingPlaceDTOList[0]?.contractTelephone || ''}`, // 发货信息
consignorAddress: this.object?.unLoadingPlaceDTOList[0].detailedAddress || '', // 发货地址
consignorDate: this.object?.loadingTime || '', // 发货时间
consigneeInfo: `${this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length-1].appUserName} ${this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length-1].contractTelephone}`, // 收货信息
consigneeDate: this.object?.unloadingTime || '', // 收货时间
consigneeAddress: this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length-1].detailedAddress || '', // 收货地址
goodsName:this.object?.goodsInfoDTOList[0].goodsName || '', // 货物名称
shippingType:'整车运输',
consignmentVolume:`${this.object?.goodsInfoDTOList[0]?.weight || '-'}吨/${this.object?.goodsInfoDTOList[0]?.volume || '-'}方/${this.object?.goodsInfoDTOList[0]?.number || '-'}`, //托运量
transporterInfo:'', //运输方信息
freightAmount:this.object?.total || '', // 订单运费金额(元)
pre:this.object?.expenseDTOList?.filter((item:any) => item.expenseCode === 'PRE')[0].price || '', //预付
rece:this.object?.expenseDTOList?.filter((item:any) => item.expenseCode === 'RECE')[0].price || '',// 到付
back:this.object?.expenseDTOList?.filter((item:any) => item.expenseCode === 'BACK')[0].price || '', // 回单付
lunarKnot:0,
total:this.object?.subtotal || '', // 合计(元)
paymentTime:`到货后${this.object?.paymentDays || ''}`, // 承诺支付运费时间
year:new Date().getFullYear() || '', // 签约年份
month:new Date().getMonth()+1 || '', // 签约月份
day:new Date().getDate() || '', // 签约日期
}
}
} else if(this.type ==='bulk'){
params = { params = {
contractType:'1', contractType: '1',
resourceType: '1',
signingObject: '1',
templateType: 'MX',
parametersDTO: {
contractCode: '',
shipperLegalPersonName: this.enterpriseInfo.legalPersonName || '', //托运法定代表人
carrierLegalPersonName: this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人
shipperName: this?.shipperName || '', //托运人
carrierName: this.object?.enterpriseInfoName || '', //承运人
consignorInfo: `${this.object?.unLoadingPlaceDTOList[0]?.appUserName || ''} ${
this.object?.unLoadingPlaceDTOList[0]?.contractTelephone || ''
}`, // 发货信息
consignorAddress: this.object?.unLoadingPlaceDTOList[0].detailedAddress || '', // 发货地址
consignorDate: this.object?.loadingTime || '', // 发货时间
consigneeInfo: `${this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length - 1].appUserName} ${
this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length - 1].contractTelephone
}`, // 收货信息
consigneeDate: this.object?.unloadingTime || '', // 收货时间
consigneeAddress: this.object?.unLoadingPlaceDTOList[this.object?.unLoadingPlaceDTOList.length - 1].detailedAddress || '', // 收货地址
goodsName: this.object?.goodsInfoDTOList[0].goodsName || '', // 货物名称
shippingType: '整车运输',
consignmentVolume: `${this.object?.goodsInfoDTOList[0]?.weight || '-'}吨/${this.object?.goodsInfoDTOList[0]?.volume || '-'}方/${
this.object?.goodsInfoDTOList[0]?.number || '-'
}`, //托运量
transporterInfo: '', //运输方信息
freightAmount: this.object?.total || '', // 订单运费金额(元)
pre: this.object?.expenseDTOList?.filter((item: any) => item.expenseCode === 'PRE')[0].price || '', //预付
rece: this.object?.expenseDTOList?.filter((item: any) => item.expenseCode === 'RECE')[0].price || '', // 到付
back: this.object?.expenseDTOList?.filter((item: any) => item.expenseCode === 'BACK')[0].price || '', // 回单付
lunarKnot: 0,
total: this.object?.subtotal || '', // 合计(元)
paymentTime: `到货后${this.object?.paymentDays || ''}`, // 承诺支付运费时间
year: new Date().getFullYear() || '', // 签约年份
month: new Date().getMonth() + 1 || '', // 签约月份
day: new Date().getDate() || '' // 签约日期
}
};
} else if (this.type === 'bulk') {
params = {
contractType: '1',
resourceType: '2', resourceType: '2',
signingObject: '1', signingObject: '1',
templateType: 'MX', templateType: 'MX',
parametersDTO: { parametersDTO: {
contractCode:'', contractCode: '',
shipperName:this?.shipperName || '', //托运人 shipperName: this?.shipperName || '', //托运人
carrierName:this.object?.enterpriseInfoName || '', //承运人 carrierName: this.object?.enterpriseInfoName || '', //承运人
shipperLegalPersonName:this.enterpriseInfo.legalPersonName || '', //托运法定代表人 shipperLegalPersonName: this.enterpriseInfo.legalPersonName || '', //托运法定代表人
carrierLegalPersonName:this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人 carrierLegalPersonName: this.enterpriseInfo.netLegalPersonName || '', //承运法定代表人
consignorInfo: `${this.object.unLoadingPlaceDTOList[0]?.appUserName || ''} ${this.object.unLoadingPlaceDTOList[0]?.contractTelephone || ''}`, // 发货信息 consignorInfo: `${this.object.unLoadingPlaceDTOList[0]?.appUserName || ''} ${
this.object.unLoadingPlaceDTOList[0]?.contractTelephone || ''
}`, // 发货信息
consignorAddress: this.object.unLoadingPlaceDTOList[0].detailedAddress, // 发货地址 consignorAddress: this.object.unLoadingPlaceDTOList[0].detailedAddress, // 发货地址
consignorDate: '', // 发货时间 consignorDate: '', // 发货时间
consigneeInfo: `${this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length-1]?.appUserName || ''} ${this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length-1]?.contractTelephone || ''}`, // 收货信息 consigneeInfo: `${this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length - 1]?.appUserName || ''} ${
this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length - 1]?.contractTelephone || ''
}`, // 收货信息
consigneeDate: '', // 收货时间 consigneeDate: '', // 收货时间
consigneeAddress: this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length-1]?.detailedAddress || '', // 收货地址 consigneeAddress: this.object.unLoadingPlaceDTOList[this.object.unLoadingPlaceDTOList.length - 1]?.detailedAddress || '', // 收货地址
goodsName:this.object.goodsInfoDTOList[0]?.goodsName || '', // 货物名称 goodsName: this.object.goodsInfoDTOList[0]?.goodsName || '', // 货物名称
shippingType:'大宗运输', shippingType: '大宗运输',
consignmentVolume:`${this.object?.goodsInfoDTOList?.[0]?.weight|| '-'}吨/${this.object?.goodsInfoDTOList?.[0]?.volume || '-'}/${this.object.goodsInfoDTOList?.[0]?.number || '-'}`, //托运量 consignmentVolume: `${this.object?.goodsInfoDTOList?.[0]?.weight || '-'}/${
transporterInfo:'', //运输方信息 this.object?.goodsInfoDTOList?.[0]?.volume || '-'
freightAmount:'', // 订单运费金额(元) }方/${this.object.goodsInfoDTOList?.[0]?.number || '-'}`, //托运量
pre:'', //预付 transporterInfo: '', //运输方信息
rece:'',// 到付 freightAmount: '', // 订单运费金额(元)
back:'',// 回单 pre: '', //
lunarKnot:'', rece: '', // 到付
total:'', // 合计(元) back: '', // 回单付
paymentTime:`到货后${this.object?.paymentDays || ''}`, // 承诺支付运费时间 lunarKnot: '',
year:new Date().getFullYear() || '', // 签约年份 total: '', // 合计(元)
month:new Date().getMonth()+1 || '', // 签约月份 paymentTime: `到货后${this.object?.paymentDays || ''}`, // 承诺支付运费时间
day:new Date().getDate() || '', // 签约日期 year: new Date().getFullYear() || '', // 签约年份
}, month: new Date().getMonth() + 1 || '', // 签约月份
} day: new Date().getDate() || '' // 签约日期
}
};
} }
console.log(params) if (params.parametersDTO.freightAmount) {
this.service.request(this.service.$api_getContractContent,params).subscribe((res) => { params.parametersDTO.freightAmount = this.toThousands(params.parametersDTO.freightAmount);
}
if (params.parametersDTO.pre) {
params.parametersDTO.pre = this.toThousands(params.parametersDTO.pre);
}
if (params.parametersDTO.rece) {
params.parametersDTO.rece = this.toThousands(params.parametersDTO.rece);
}
if (params.parametersDTO.back) {
params.parametersDTO.back = this.toThousands(params.parametersDTO.back);
}
if (params.parametersDTO.total) {
params.parametersDTO.total = this.toThousands(params.parametersDTO.total);
}
console.log(params);
this.service.request(this.service.$api_getContractContent, params).subscribe(res => {
if (res) { if (res) {
this.agreement = res.contractContent; this.agreement = res.contractContent;
} }
}); });
} }
handleOk(){
toThousands(num: any) {
let str = num.toString();
return '¥' + str.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
}
handleOk() {
this.modal.close(true); this.modal.close(true);
} }
} }

View File

@ -425,7 +425,7 @@ export class SupplyManagementVehicleComponent implements OnInit {
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择货主',
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value _$expand: (value: boolean) => value
} }

View File

@ -90,6 +90,7 @@ export class CtcCaptatinAddComponent implements OnInit {
widget: this.i.id ? 'text' : '', widget: this.i.id ? 'text' : '',
placeholder: '请输入手机号', placeholder: '请输入手机号',
blur: () => { blur: () => {
if(this.sf?.value?.mobile) {
this.service.request(this.service.$api_getByMobile, { mobile: this.sf.value.mobile }).subscribe(res => { this.service.request(this.service.$api_getByMobile, { mobile: this.sf.value.mobile }).subscribe(res => {
if (res.certificateNumber) { if (res.certificateNumber) {
this.readFlag = true this.readFlag = true
@ -128,7 +129,8 @@ export class CtcCaptatinAddComponent implements OnInit {
this.detailData = {} this.detailData = {}
} }
}) })
} }
}
}, },
default: this.detailData.mobile default: this.detailData.mobile
}, },
@ -145,6 +147,7 @@ export class CtcCaptatinAddComponent implements OnInit {
bankCardNo: { bankCardNo: {
title: '银行卡号', title: '银行卡号',
type: 'string', type: 'string',
maxLength: 20,
ui: { ui: {
widget: this.i.id ? 'text' : '', widget: this.i.id ? 'text' : '',
placeholder: '请输入银行卡号', placeholder: '请输入银行卡号',
@ -161,6 +164,7 @@ export class CtcCaptatinAddComponent implements OnInit {
bankName: { bankName: {
title: '开户行', title: '开户行',
type: 'string', type: 'string',
maxLength: 35,
ui: { ui: {
widget: this.i.id ? 'text' : '', widget: this.i.id ? 'text' : '',
placeholder: '请输入开户行', placeholder: '请输入开户行',

View File

@ -152,7 +152,7 @@ export class WaybillManagementAbnormalAppearComponent implements OnInit {
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择货主',
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value _$expand: (value: boolean) => value
} }

View File

@ -116,7 +116,7 @@ export class WaybillManagementVehicleComponent implements OnInit {
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择货主',
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value _$expand: (value: boolean) => value
}, },

View File

@ -21,6 +21,8 @@ export class ShipperBaseService extends BaseService {
$api_getSysConfigTreeByParentFullKey = `/api/mdc/pbc/sysConfig/getSysConfigTreeByParentFullKey`; $api_getSysConfigTreeByParentFullKey = `/api/mdc/pbc/sysConfig/getSysConfigTreeByParentFullKey`;
// 获取全部返佣配置 // 获取全部返佣配置
$api_get_rebate_config = `/api/mdc/rebateConfig/list/listRebateConfig`; $api_get_rebate_config = `/api/mdc/rebateConfig/list/listRebateConfig`;
// 获取渠道销售管理集合
$api_get_channel = `/api/mdc/channelSalesManagement/list/listChannelSalesManagement`;
constructor(public injector: Injector) { constructor(public injector: Injector) {
super(injector); super(injector);
} }
@ -254,4 +256,23 @@ export class ShipperBaseService extends BaseService {
}) })
); );
} }
/**
* 获取渠道销售管理集合
* @returns
*/
getChannel() {
const params = {};
return this.request(this.$api_get_channel, params, 'POST').pipe(
map(res => {
if (res) {
return res.map((m: any) => {
return { label: m.name, value: m.id };
});
} else {
return [];
}
})
);
}
} }