310 lines
10 KiB
310 lines
10 KiB
import {Component, OnInit} from '@angular/core';
|
|
import {environment} from '../../../../environments/environment';
|
|
import {FormBuilder, FormGroup, Validators} from '@angular/forms';
|
|
import {CompanyService} from '../../../services/company.service';
|
|
import {IconService} from '../../../services/icon.service';
|
|
import {NzMessageService} from 'ng-zorro-antd';
|
|
import {Router} from '@angular/router';
|
|
import {CommonsService} from '../../../services/commons.service';
|
|
import {AgentService} from '../../../services/agent.service';
|
|
import {DiscountService} from '../../../services/discount.service';
|
|
import {CouponService} from '../../../services/coupon.service';
|
|
|
|
@Component({
|
|
selector: 'app-agent-list',
|
|
templateUrl: './agent-list.component.html',
|
|
styleUrls: ['./agent-list.component.scss']
|
|
})
|
|
export class AgentListComponent implements OnInit {
|
|
|
|
WEB_SERVE_URL = environment.imageUrl;
|
|
searchForm: FormGroup; // 搜索框
|
|
validateForm: FormGroup; // 搜索框
|
|
validateFormDistribute: FormGroup; // 搜索框
|
|
requestData = []; // 列表数据
|
|
discountList = []; // 列表数据
|
|
distributeList = []; // 列表数据
|
|
total: number; // 页码
|
|
pageNum = 1; // 页码
|
|
pageSize = 10; // 条码
|
|
loading = true;
|
|
isVisible = false;
|
|
isVisibleDiscount = false;
|
|
isVisibleDistribute = false;
|
|
isVisibleList = false;
|
|
id: number;
|
|
isSpinning = false;
|
|
isSpinningDistribute = false;
|
|
requestDataDiscount = []; // 列表数据
|
|
totalDiscount: number; // 页码
|
|
pageNumDiscount = 1; // 页码
|
|
pageSizeDiscount = 10; // 条码
|
|
loadingDiscount = true;
|
|
agentId: number;
|
|
requestDataList = []; // 列表数据
|
|
totalList: number; // 页码
|
|
pageNumList = 1; // 页码
|
|
pageSizeList = 10; // 条码
|
|
loadingList = true;
|
|
isOkLoading = false;
|
|
isVisibleShow = false;
|
|
dataSet;
|
|
constructor(
|
|
private form: FormBuilder,
|
|
private agent: AgentService,
|
|
private discount: DiscountService,
|
|
private coupon: CouponService,
|
|
private iconService: IconService,
|
|
private message: NzMessageService,
|
|
private router: Router,
|
|
private common: CommonsService
|
|
) {
|
|
}
|
|
|
|
ngOnInit(): void {
|
|
this.init();
|
|
}
|
|
|
|
public init(): void {
|
|
this.searchForm = this.form.group({
|
|
agentName: [null],
|
|
agentPhone: [null],
|
|
status: [null],
|
|
type: [1],
|
|
});
|
|
this.validateForm = this.form.group({
|
|
discountId: [null, [Validators.required]],
|
|
stockCount: [null, [Validators.required]],
|
|
});
|
|
this.validateFormDistribute = this.form.group({
|
|
couponId: [null, [Validators.required]],
|
|
stockCount: [null, [Validators.required]],
|
|
});
|
|
this.getRequest(true, this.searchForm.value);
|
|
}
|
|
|
|
// 查询列表
|
|
public getRequest(reset: boolean = false, whereObject: object) {
|
|
|
|
this.loading = false;
|
|
if (reset) {
|
|
this.pageNum = 1;
|
|
}
|
|
whereObject['pageNum'] = this.pageNum;
|
|
whereObject['pageSize'] = this.pageSize;
|
|
this.agent.getListAgent(whereObject, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.requestData = data['return_data'].list;
|
|
this.total = data['return_data'].total;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
}
|
|
|
|
// 重置
|
|
public resetForm(): void {
|
|
this.searchForm.reset();
|
|
}
|
|
|
|
public getForbiddenUser(id, status: any): void {
|
|
const message = (status === 1 ? '是否禁用当前代理商' : '是否启用当前代理商');
|
|
|
|
this.common.showConfirm(message, data => {
|
|
if (data) {
|
|
this.agent.editStatus(id, dataUser => {
|
|
this.getRequest(false, this.searchForm.value);
|
|
});
|
|
}
|
|
});
|
|
}
|
|
|
|
// 修改
|
|
public getEdit(id: number): void {
|
|
this.router.navigate(['/admin/agent/agent-edit'], {
|
|
queryParams: {
|
|
agentId: id
|
|
}
|
|
}).then(r => console.log(r));
|
|
}
|
|
|
|
// 查看详情
|
|
public getDetail(id: number): void {
|
|
this.router.navigate(['/admin/company/company-detail'], {
|
|
queryParams: {
|
|
companyId: id
|
|
}
|
|
}).then(r => console.log(r));
|
|
}
|
|
|
|
// 绑定优惠券
|
|
public getDiscount(id: number): void {
|
|
this.id = id;
|
|
const whereObject = {};
|
|
whereObject['pageNum'] = 1;
|
|
whereObject['pageSize'] = 10000;
|
|
this.discount.getDiscountList(whereObject, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.discountList = data['return_data'].list;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
this.isVisible = true;
|
|
}
|
|
|
|
handleOk(): void {
|
|
// tslint:disable-next-line:forin
|
|
for (const i in this.validateForm.controls) {
|
|
this.validateForm.controls[i].markAsDirty();
|
|
this.validateForm.controls[i].updateValueAndValidity();
|
|
if (this.validateForm.controls[i].errors != null) {
|
|
this.message.error('必填项不能为空');
|
|
return;
|
|
}
|
|
}
|
|
// this.isSpinning = true;
|
|
this.validateForm.value['agentId'] = this.id;
|
|
this.agent.insertDiscountAgent(this.validateForm.value , data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.message.success('生成中,请耐心等待!');
|
|
this.isVisible = false;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
this.isSpinning = false;
|
|
});
|
|
}
|
|
|
|
handleCancel(): void {
|
|
this.isVisible = false;
|
|
}
|
|
|
|
public getDiscountList(id: number): void {
|
|
this.id = id;
|
|
this.isVisibleDiscount = true;
|
|
this.getRequestDiscount(true);
|
|
}
|
|
|
|
public getDistributionList(id: number): void {
|
|
this.id = id;
|
|
this.isVisibleList = true;
|
|
this.getRequestList(true);
|
|
}
|
|
|
|
handleCancelList() {
|
|
this.isVisibleList = false;
|
|
}
|
|
|
|
handleCancelDiscount() {
|
|
this.isVisibleDiscount = false;
|
|
}
|
|
handleCancelDistribute() {
|
|
this.isVisibleDistribute = false;
|
|
}
|
|
// 查询列表
|
|
public getRequestDiscount(reset: boolean = false) {
|
|
const whereObject = {};
|
|
this.loadingDiscount = true;
|
|
if (reset) {
|
|
this.pageNumDiscount = 1;
|
|
}
|
|
whereObject['pageNum'] = this.pageNumDiscount;
|
|
whereObject['pageSize'] = this.pageSizeDiscount;
|
|
whereObject['agentId'] = this.id;
|
|
this.agent.getDiscountAgentList(whereObject, data => {
|
|
this.loadingDiscount = false;
|
|
if (data['return_code'] === '000000') {
|
|
this.requestDataDiscount = data['return_data'].list;
|
|
this.totalDiscount = data['return_data'].total;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
}
|
|
|
|
// 分发卡券
|
|
public getDistribution(id: number): void {
|
|
this.isSpinningDistribute = true;
|
|
this.agentId = id;
|
|
const whereObject = {};
|
|
whereObject['pageNum'] = 1;
|
|
whereObject['pageSize'] = 10000;
|
|
this.coupon.getCouponList(whereObject, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.distributeList = data['return_data'].list;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
this.isSpinningDistribute = false;
|
|
});
|
|
this.isVisibleDistribute = true;
|
|
}
|
|
|
|
// 查询f分发列表
|
|
public getRequestList(reset: boolean = false) {
|
|
const whereObject = {};
|
|
this.loadingList = true;
|
|
if (reset) {
|
|
this.pageNumList = 1;
|
|
}
|
|
whereObject['pageNum'] = this.pageNumList;
|
|
whereObject['pageSize'] = this.pageSizeList;
|
|
whereObject['agentId'] = this.id;
|
|
this.agent.getCouponByAgent(whereObject, data => {
|
|
this.loadingList = false;
|
|
if (data['return_code'] === '000000') {
|
|
this.requestDataList = data['return_data'].list;
|
|
this.totalList = data['return_data'].total;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
}
|
|
|
|
// 提交分发
|
|
public handleOkDistribute(): void {
|
|
// tslint:disable-next-line:forin
|
|
for (const i in this.validateFormDistribute.controls) {
|
|
this.validateFormDistribute.controls[i].markAsDirty();
|
|
this.validateFormDistribute.controls[i].updateValueAndValidity();
|
|
if (this.validateFormDistribute.controls[i].errors != null) {
|
|
this.message.error('必填项不能为空');
|
|
return;
|
|
}
|
|
}
|
|
this.isOkLoading = true;
|
|
this.validateFormDistribute.value['agentId'] = this.agentId;
|
|
this.agent.assignCouponAgent(this.validateFormDistribute.value , data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.validateFormDistribute.reset();
|
|
this.message.success('分发成功');
|
|
this.isVisibleDistribute = false;
|
|
this.isOkLoading = false;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
this.isSpinning = false;
|
|
});
|
|
}
|
|
|
|
public getList(id: number): void {
|
|
const whereObject = {};
|
|
whereObject['pageNum'] = 1;
|
|
whereObject['pageSize'] = 10000;
|
|
whereObject['couponAgentId'] = id;
|
|
this.isVisibleShow = true;
|
|
this.agent.getRecordByCouponAgentId(whereObject , data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.dataSet = data['return_data'].list;
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
}
|
|
|
|
handleCancelListShow() {
|
|
this.isVisibleShow = false;
|
|
}
|
|
}
|
|
|
|
|