You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
229 lines
5.4 KiB
229 lines
5.4 KiB
|
|
|
|
import { Component, OnInit } from '@angular/core';
|
|
import {TradeOrderService} from '../../../services/trade-order.service';
|
|
import {LocalStorageService} from '../../../services/local-storage.service';
|
|
|
|
import {UntypedFormBuilder, UntypedFormGroup} from '@angular/forms';
|
|
import {NzMessageService, NzModalService} from 'ng-zorro-antd';
|
|
import {environment} from '../../../../environments/environment';
|
|
import { ActivityMoneyService } from 'src/app/services/activity-money.service';
|
|
|
|
@Component({
|
|
selector: 'app-merchant-allocation',
|
|
templateUrl: './merchant-allocation.component.html',
|
|
styleUrls: ['./merchant-allocation.component.scss']
|
|
})
|
|
export class MerchantAllocationComponent implements OnInit {
|
|
FILE_URL = environment.imageUrl;
|
|
loading = false;
|
|
dataObject: any = {};
|
|
tableLoading = true;
|
|
searchForm: UntypedFormGroup;
|
|
pageNum: number;
|
|
whereObject: any = {};
|
|
|
|
|
|
loadingObject = {
|
|
spinning: false,
|
|
msg: '加载中'
|
|
};
|
|
|
|
|
|
|
|
|
|
selectedIndex:number = 0;
|
|
checked = false;
|
|
setOfCheckedId = new Set<number>();
|
|
|
|
constructor(
|
|
private modal: NzModalService,
|
|
private message: NzMessageService,
|
|
private activityMoneyService:ActivityMoneyService,
|
|
private form: UntypedFormBuilder) { }
|
|
|
|
ngOnInit(): void {
|
|
|
|
this.searchForm = this.form.group({
|
|
merNo: [null],
|
|
merName: [null],
|
|
merAbbreviate: [null],
|
|
status:[null],
|
|
});
|
|
/* this.requestData(1); */
|
|
if(this.selectedIndex==0){
|
|
this.requestqueryNotPartMerList(1);//未参与
|
|
}else{
|
|
this.requestqueryPartMerList(1);//已参与
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 请求未参与数据
|
|
*/
|
|
requestqueryNotPartMerList(pageNum) {
|
|
this.setOfCheckedId.clear();
|
|
this.checked=false;
|
|
|
|
this.tableLoading = true;
|
|
this.whereObject['pageNum'] = pageNum;
|
|
this.whereObject['pageSize'] = 10;
|
|
this.activityMoneyService.queryNotPartMerList(this.whereObject, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.dataObject = data['return_data'];
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
this.tableLoading = false;
|
|
});
|
|
}
|
|
/**
|
|
* 请求已参与数据
|
|
*/
|
|
requestqueryPartMerList(pageNum) {
|
|
this.tableLoading = true;
|
|
this.whereObject['pageNum'] = pageNum;
|
|
this.whereObject['pageSize'] = 10;
|
|
this.activityMoneyService.queryPartMerList(this.whereObject, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.dataObject = data['return_data'];
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
this.tableLoading = false;
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 搜索
|
|
* @param whereObject 条件
|
|
*/
|
|
search(whereObject: object) {
|
|
this.whereObject = whereObject;
|
|
|
|
if(this.selectedIndex==0){
|
|
this.requestqueryNotPartMerList(1);//未参与
|
|
}else{
|
|
this.requestqueryPartMerList(1);//已参与
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* 重置
|
|
*/
|
|
resetForm(): void {
|
|
this.searchForm.reset();
|
|
}
|
|
|
|
/**
|
|
* 添加参与活动用户
|
|
*/
|
|
attendConfirm(): void {
|
|
const requestData = [...this.setOfCheckedId];
|
|
this.modal.confirm({
|
|
nzTitle: '提示',
|
|
nzContent: '确定选中这些商户吗?',
|
|
nzOkText: '是',
|
|
nzCancelText: '否',
|
|
nzOkType: 'primary',
|
|
nzOnOk: () => this.addPartMer(requestData)
|
|
});
|
|
|
|
}
|
|
|
|
addPartMer(merNoList){
|
|
let arr = merNoList.map(item=>{
|
|
return {merNo: item}
|
|
})
|
|
|
|
let params={
|
|
"merNoArray": arr
|
|
}
|
|
|
|
this.activityMoneyService.addPartMer(params, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.message.create("success", data['return_data']);
|
|
this.requestqueryNotPartMerList(1)
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
}
|
|
|
|
/* 禁用 */
|
|
forbidden(merNo){
|
|
let params = {
|
|
"merNo":merNo
|
|
}
|
|
this.activityMoneyService.disable(params, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.message.create("success", data['return_data']);
|
|
this.requestqueryPartMerList(1);//已参与
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
}
|
|
/* 启用 */
|
|
enable(merNo){
|
|
let params = {
|
|
"merNo":merNo
|
|
}
|
|
this.activityMoneyService.enable(params, data => {
|
|
if (data['return_code'] === '000000') {
|
|
this.message.create("success", data['return_data']);
|
|
this.requestqueryPartMerList(1);//已参与
|
|
} else {
|
|
this.message.error(data['return_msg']);
|
|
}
|
|
});
|
|
}
|
|
|
|
/* 切换tab */
|
|
nzSelectChange(e){
|
|
this.whereObject={};
|
|
this.resetForm();
|
|
this.dataObject={};
|
|
this.setOfCheckedId.clear();
|
|
this.checked=false;
|
|
|
|
if(this.selectedIndex==0){
|
|
this.requestqueryNotPartMerList(1);//未参与
|
|
}else{
|
|
this.requestqueryPartMerList(1);//已参与
|
|
}
|
|
|
|
}
|
|
|
|
|
|
/* */
|
|
updateCheckedSet(merNo: number, checked: boolean): void {
|
|
if (checked) {
|
|
this.setOfCheckedId.add(merNo);
|
|
} else {
|
|
this.setOfCheckedId.delete(merNo);
|
|
}
|
|
}
|
|
refreshCheckedStatus(): void {
|
|
const listOfEnabledData = this.dataObject.list;
|
|
this.checked = listOfEnabledData.every(({ merNo }) => this.setOfCheckedId.has(merNo));
|
|
}
|
|
|
|
onItemChecked(merNo: number, checked: boolean): void {
|
|
this.updateCheckedSet(merNo, checked);
|
|
this.refreshCheckedStatus();
|
|
}
|
|
|
|
/*全选 */
|
|
onAllChecked(checked: boolean): void {
|
|
console.log(checked,"checked")
|
|
this.dataObject.list.forEach(({ merNo }) => this.updateCheckedSet(merNo, checked));
|
|
this.refreshCheckedStatus();
|
|
}
|
|
/* */
|
|
|
|
|
|
|
|
|
|
}
|
|
|