2.0-dev
袁野 1 year ago
parent c025a6fef5
commit cb10fd81b7
  1. 25
      src/app/admin/audit/audit-coupon/audit-coupon.component.html
  2. 1
      src/app/admin/coupon/coupon-edit/coupon-edit.component.html
  3. 26
      src/app/admin/discount-package/discount-package-list/discount-package-list.component.ts
  4. 40
      src/app/admin/index/index/index.component.html
  5. 25
      src/app/admin/index/index/index.component.ts
  6. 6
      src/app/admin/order-manage/mobile-recharge-order-list/mobile-recharge-order-list.component.ts
  7. 56
      src/app/admin/user/user-list/user-list.component.html
  8. 72
      src/app/admin/user/user-list/user-list.component.ts
  9. 4
      src/app/admin/user/user.module.ts
  10. 1
      src/app/app.module.ts
  11. 4
      src/app/pipes/index/product-config.pipe.ts
  12. 6
      src/app/services/index.service.ts
  13. 4
      src/app/services/login.service.ts
  14. 27
      src/app/services/order.service.ts
  15. 8
      src/environments/environment.ts

@ -15,18 +15,19 @@
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="6">
<nz-form-item>
<nz-form-label [nzSpan]="6">审核类型</nz-form-label>
<nz-form-control [nzSpan]="16">
<nz-select formControlName="objectType">
<nz-option nzValue="1" nzLabel="Jack"></nz-option>
<nz-option nzValue="2" nzLabel="Lucy"></nz-option>
<nz-option nzValue="disabled" nzLabel="Disabled" nzDisabled></nz-option>
</nz-select>
</nz-form-control>
</nz-form-item>
</div>
<!-- <div nz-col nzSpan="6">-->
<!-- <nz-form-item>-->
<!-- <nz-form-label [nzSpan]="6">审核类型</nz-form-label>-->
<!-- <nz-form-control [nzSpan]="16">-->
<!-- <nz-select formControlName="objectType">-->
<!-- <nz-option nzValue="1" nzLabel="Jack"></nz-option>-->
<!-- <nz-option nzValue="2" nzLabel="Lucy"></nz-option>-->
<!-- <nz-option nzValue="disabled" nzLabel="Disabled" nzDisabled></nz-option>-->
<!-- </nz-select>-->
<!-- </nz-form-control>-->
<!-- </nz-form-item>-->
<!-- </div>-->
<div nz-col nzSpan="6">
<nz-form-item>
<nz-form-label [nzSpan]="6">审核流水号</nz-form-label>

@ -59,6 +59,7 @@
<nz-option nzValue="3" nzLabel="银联专区"></nz-option>
<nz-option nzValue="4" nzLabel="优选商品"></nz-option>
<nz-option nzValue="5" nzLabel="工会卡专区"></nz-option>
<nz-option nzValue="7" nzLabel="停车券专区"></nz-option>
</nz-select>
</nz-form-control>
</nz-form-item>

@ -1,4 +1,4 @@
import { Component, OnInit } from '@angular/core';
import {Component, OnInit} from '@angular/core';
import {environment} from '../../../../environments/environment';
import {FormBuilder, FormGroup, Validators} from '@angular/forms';
import {CompanyService} from '../../../services/company.service';
@ -125,7 +125,7 @@ export class DiscountPackageListComponent implements OnInit {
// 活动开始
public upDiscountPackage(id: number): void {
this.discountPackage.upDiscountPackage({discountPackageId : id}, data => {
this.discountPackage.upDiscountPackage({discountPackageId: id}, data => {
if (data['return_code'] === '000000') {
this.message.success('上架成功');
this.getRequest(true, this.searchForm.value);
@ -137,7 +137,7 @@ export class DiscountPackageListComponent implements OnInit {
// 活动结束
public downDiscountPackage(id: number): void {
this.discountPackage.downDiscountPackage({discountPackageId : id}, data => {
this.discountPackage.downDiscountPackage({discountPackageId: id}, data => {
if (data['return_code'] === '000000') {
this.message.success('下架成功');
this.getRequest(true, this.searchForm.value);
@ -151,7 +151,7 @@ export class DiscountPackageListComponent implements OnInit {
public deleteDiscountPackage(id: number): void {
this.commonsService.showConfirm('是否确认删除', isDelete => {
if (isDelete) {
this.discountPackage.deleteDiscountPackage({discountPackageId : id}, data => {
this.discountPackage.deleteDiscountPackage({discountPackageId: id}, data => {
if (data['return_code'] === '000000') {
this.message.success('删除成功');
this.getRequest(true, this.searchForm.value);
@ -178,7 +178,7 @@ export class DiscountPackageListComponent implements OnInit {
}
public getDetails(id: number): void {
this.discountPackage.getDiscountPackageRuleById(id , data => {
this.discountPackage.getDiscountPackageRuleById(id, data => {
if (data['return_code'] === '000000') {
this.listOfData = data['return_data'];
this.isVisible = true;
@ -211,8 +211,8 @@ export class DiscountPackageListComponent implements OnInit {
num: this.num,
discountPackageId: this.id
};
const id = this.message.loading('增加库存中..', { nzDuration: 0 }).messageId;
this.discountPackage.addDiscountPackageStock(param , data => {
const id = this.message.loading('增加库存中..', {nzDuration: 0}).messageId;
this.discountPackage.addDiscountPackageStock(param, data => {
if (data['return_code'] === '000000') {
this.isVisibleInventory = false;
this.getRequest(true, this.searchForm.value);
@ -226,16 +226,16 @@ export class DiscountPackageListComponent implements OnInit {
// 打开 发送优惠券包给用户模态框
showDeliverUserModal(packageId: number, packageName: string) {
this.discountPackage.getHandleByPackageId({ packageId: packageId}, data => {
this.discountPackage.getHandleByPackageId({packageId: packageId}, data => {
if (data['return_code'] === '000000') {
if (data['return_data'] != null) {
this.modal.confirm({
nzTitle: '提示',
nzContent: '当前卷包有赠送任务进行中,是否查看赠送进度?',
nzOnOk: () => this.processRate(data['return_data']['serialNumber'])
})
});
} else {
this.deliverUserForm.patchValue({ packageId: packageId, packageName: packageName});
this.deliverUserForm.patchValue({packageId: packageId, packageName: packageName});
this.deliverUserModal = true;
}
}
@ -269,9 +269,9 @@ export class DiscountPackageListComponent implements OnInit {
// 提交赠送数据
submitDeliverUser() {
if (this.deliverUserArray.length == 0) {
this.modal.warning({ nzTitle: '提示', nzContent: '没有需要赠送的用户'});
this.modal.warning({nzTitle: '提示', nzContent: '没有需要赠送的用户'});
}
this.deliverUserForm.patchValue({ phoneArray: this.deliverUserArray.filter(o => o.errorStatus == false)});
this.deliverUserForm.patchValue({phoneArray: this.deliverUserArray.filter(o => o.errorStatus == false)});
this.spinObject.status = true;
this.spinObject.title = '处理中...';
const param = this.deliverUserForm.value;
@ -307,7 +307,7 @@ export class DiscountPackageListComponent implements OnInit {
submitExcelUser() {
this.spinObject.title = '文件导入中... 数据太多会占用较长时间';
this.spinObject.status = true;
this.discountPackage.getPhoneListByFileUrl({ fileUrl: this.excelUploadFile[0]['url']}, data => {
this.discountPackage.getPhoneListByFileUrl({fileUrl: this.excelUploadFile[0]['url']}, data => {
if (data['return_code'] === '000000') {
this.deliverUserArray = data['return_data']['data'];
this.closeExcelUserModal();

@ -105,29 +105,29 @@
<div nz-row style="margin-top: 20px;" [nzGutter]="16">
<div nz-col nzSpan="8">
<nz-card nzHoverable [nzLoading]="loading" (click)="isVisible = true">
<h3>汇联通预充值账号</h3>
<p>余额:{{(balance - balanceData['payRealPrice']).toFixed(2)}}</p>
<nz-card nzHoverable [nzLoading]="loading" >
<h3>汇联通工会卡充值</h3>
<p>余额:{{(balance - balanceData['sum']).toFixed(2)}}</p>
<p>订单数量:{{balanceData['count']}}</p>
<p>支付总额:{{balanceData['payRealPrice'] == null ? '0': balanceData['payRealPrice']}}</p>
</nz-card>
</div>
<div nz-col nzSpan="8">
<nz-card nzHoverable [nzLoading]="loading" [routerLink]="['/admin/order/order-list']">
<h3>中石化订单</h3>
<p>订单数量:{{orderData['count']}}</p>
<p>订单总额:{{orderData['orderPrice'] == null ? '0': orderData['orderPrice']}}</p>
<p>支付总额:{{orderData['payRealPrice'] == null ? '0': orderData['payRealPrice']}}</p>
</nz-card>
</div>
<div nz-col nzSpan="8">
<nz-card nzHoverable [nzLoading]="loading" [routerLink]="['/admin/order/order-h-list']">
<h3>话费订单</h3>
<p>订单数量:{{rechargeData['count']}}</p>
<p>订单总额:{{rechargeData['orderPrice'] == null ? '0': rechargeData['orderPrice']}}</p>
<p>支付总额:{{rechargeData['payRealPrice'] == null ? '0': rechargeData['payRealPrice']}}</p>
<p>支付总额:{{balanceData['sum'] == null ? '0': balanceData['sum']}}</p>
</nz-card>
</div>
<!-- <div nz-col nzSpan="8">-->
<!-- <nz-card nzHoverable [nzLoading]="loading" [routerLink]="['/admin/order/order-list']">-->
<!-- <h3>中石化订单</h3>-->
<!-- <p>订单数量:{{orderData['count']}}</p>-->
<!-- <p>订单总额:{{orderData['orderPrice'] == null ? '0': orderData['orderPrice']}}</p>-->
<!-- <p>支付总额:{{orderData['payRealPrice'] == null ? '0': orderData['payRealPrice']}}</p>-->
<!-- </nz-card>-->
<!-- </div>-->
<!-- <div nz-col nzSpan="8">-->
<!-- <nz-card nzHoverable [nzLoading]="loading" [routerLink]="['/admin/order/order-h-list']">-->
<!-- <h3>话费订单</h3>-->
<!-- <p>订单数量:{{rechargeData['count']}}</p>-->
<!-- <p>订单总额:{{rechargeData['orderPrice'] == null ? '0': rechargeData['orderPrice']}}</p>-->
<!-- <p>支付总额:{{rechargeData['payRealPrice'] == null ? '0': rechargeData['payRealPrice']}}</p>-->
<!-- </nz-card>-->
<!-- </div>-->
</div>
</div>
<!--运营角色-->

@ -78,10 +78,10 @@ export class IndexComponent implements OnInit {
if (this.store.get(ADMIN_INFO_OBJECT)['bsCompany'] != null && this.store.get(ADMIN_INFO_OBJECT)['bsCompany'].id === 3) {
this.code = 60;
this.getHLTBalance();
this.orderByIndex();
// this.orderByIndex();
this.HLTOrderByIndex();
this.rechargeOrderByIndex();
this.HLTOrderByList();
// this.HLTOrderByList();
}
if (this.store.get(ADMIN_INFO_OBJECT)['merchantStore'] != null) {
@ -135,7 +135,8 @@ export class IndexComponent implements OnInit {
}
public HLTOrderByIndex(): void {
this.index.HLTOrderByIndex(this.code, data => {
this.index.hltCardNoTopUpStatistic( data => {
console.log(data);
if (data['return_code'] === '000000') {
this.balanceData = data['return_data'];
this.loading = false;
@ -156,15 +157,15 @@ export class IndexComponent implements OnInit {
});
}
public HLTOrderByList(): void {
this.index.HLTOrderByList(this.code, data => {
if (data['return_code'] === '000000') {
this.listOfData = data['return_data'];
} else {
this.message.error(data['return_msg']);
}
});
}
// public HLTOrderByList(): void {
// this.index.HLTOrderByList(this.code, data => {
// if (data['return_code'] === '000000') {
// this.listOfData = data['return_data'];
// } else {
// this.message.error(data['return_msg']);
// }
// });
// }
public getIndexCount(): void {
this.index.getIndexCount(data => {

@ -7,6 +7,7 @@ import {CommonsService} from '../../../services/commons.service';
import {OrderMobileRechargeService} from '../../../services/order/order-mobile-recharge.service';
import {FormBuilder, FormGroup} from '@angular/forms';
import {NzMessageService, NzNotificationService} from 'ng-zorro-antd';
import {animate, state, style, transition, trigger} from '@angular/animations';
@Component({
@ -174,10 +175,7 @@ export class MobileRechargeOrderListComponent implements OnInit {
this.isVisible = true;
this.orderMobileRechargeService.exportMobilePartyOrderList(whereObject, data => {
if (data['return_code'] === '000000') {
// this.message.success('导出成功!');
// window.location.href = this.FILE_URL + 'temporary/' + data['return_data'];
} else {
if (data['return_code'] !== '000000') {
this.isVisible = false;
this.message.error(data['return_msg']);
}

@ -33,6 +33,17 @@
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="6">
<nz-form-item>
<nz-form-label [nzSpan]="6">是否推广员</nz-form-label>
<nz-form-control [nzSpan]="16">
<nz-select nzShowSearch nzAllowClear formControlName="isAgent" nzPlaceHolder="请选择">
<nz-option nzLabel="是" [nzValue]="true"></nz-option>
<nz-option nzLabel="否" [nzValue]="false"></nz-option>
</nz-select>
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="6">
<nz-form-item>
<nz-form-label [nzSpan]="6">注册时间</nz-form-label>
@ -59,6 +70,7 @@
class="table"
#ajaxTable
nzShowSizeChanger
nzBordered
[nzFrontPagination]="false"
[nzData]="requestData"
[nzLoading]="loading"
@ -94,11 +106,53 @@
<td nzRight="0px" class="table-td-operation">
<a (click)='getForbiddenUser(data.id , data.status)'>{{data.status === 1 ? '禁用': '启用'}}</a>
<nz-divider nzType="vertical"></nz-divider>
<a (click)='setUpAgent(data.id , data.isAgent)'>{{data.isAgent === true ? '禁用推广员': '启用推广员'}}</a>
<nz-divider nzType="vertical" ></nz-divider>
<a nz-dropdown [nzDropdownMenu]="menu">更多操作</a>
<nz-dropdown-menu #menu="nzDropdownMenu">
<ul nz-menu nzSelectable>
<li class="li-a" nz-menu-item> <a (click)='setUpAgent(data.id , data.isAgent)'>{{data.isAgent === true ? '禁用推广员': '启用推广员'}}</a></li>
<li class="li-a" *ngIf="data.isAgent === true" nz-menu-item><a (click)="getList(data.id)">查询推广订单</a></li>
</ul>
</nz-dropdown-menu>
</td>
</tbody>
</nz-table>
</div>
<nz-modal [(nzVisible)]="orderListModal" nzTitle="订单列表" (nzOnCancel)="orderListModal = false" [nzFooter]="null"
nzWidth="1100px" [nzBodyStyle]=" { padding: '20px 20px 30px 20px'}">
<div class="operating-button" style="z-index: 999999">
<button nz-button nzType="primary" class="right-btn" (click)="excelOrder()" ><i nz-icon nzType="export" nzTheme="outline"></i>导出Excel</button>
</div>
<nz-spin [nzSpinning]="orderListModalLoading" style="margin-top: 50px;">
<nz-table #basicTable [nzData]="requestOrderData" nzBordered [nzHideOnSinglePage]="true">
<thead>
<tr>
<th>交易单号</th>
<th>客户电话</th>
<th>订单名称</th>
<th>订单金额</th>
<th>支付金额</th>
<th>创建时间</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let data of basicTable.data">
<td>{{data.orderNo}}</td>
<td>{{data.memPhone}}</td>
<td>{{data.title}}</td>
<td>¥{{data.totalPrice}}</td>
<td>¥{{data.payPrice}}</td>
<td>{{data.createTime | date : 'yyyy-MM-dd HH:mm:ss'}}</td>
</tr>
</tbody>
</nz-table>
</nz-spin>
</nz-modal>
<nz-modal [(nzVisible)]="isVisible" nzTitle="文件版本({{this.searchForm.value['serialNumber']}})正在导出" (nzOnCancel)="isVisible = false" [nzFooter]="null">
<nz-progress [nzPercent]="percent" ></nz-progress>
</nz-modal>

@ -5,6 +5,7 @@ import {NzMessageService} from 'ng-zorro-antd';
import {IconService} from '../../../services/icon.service';
import {CommonsService} from '../../../services/commons.service';
import {environment} from '../../../../environments/environment';
import {OrderService} from '../../../services/order.service';
@Component({
selector: 'app-user-list',
@ -20,11 +21,26 @@ export class UserListComponent implements OnInit {
pageSize = 10; // 条码
loading = true;
regTime;
orderListModal = false;
isVisible = false;
orderListModalLoading = false;
requestOrderData = [];
percent = 0;
processRateInterval;
FILE_URL = environment.imageUrl;
userId;
loadingObject = {
title: '加载中...',
status: false,
};
serialNumber;
constructor(
private form: FormBuilder,
private user: UserService,
private iconService: IconService,
private orderService: OrderService,
private message: NzMessageService,
private common: CommonsService
) {
@ -38,6 +54,7 @@ export class UserListComponent implements OnInit {
this.searchForm = this.form.group({
name: [null],
status: [null],
isAgent: [null],
phone: [null],
regTime: [null],
});
@ -104,4 +121,59 @@ export class UserListComponent implements OnInit {
});
}
public getList(userId: string): void {
this.orderListModalLoading = true;
this.orderListModal = true;
this.userId = userId;
this.orderService.getPopularizeUserOrderList(userId , data => {
this.orderListModalLoading = false;
if (data['return_code'] === '000000') {
this.requestOrderData = data['return_data'];
} else {
this.message.error(data['return_msg']);
}
});
}
public excelOrder() {
const whereObject = {};
this.percent = 0;
this.serialNumber = new Date().getTime();
whereObject['serialNumber'] = this.serialNumber;
whereObject['promoteCode'] = this.userId;
this.isVisible = true;
this.processRate(this.serialNumber);
this.orderService.exportPopularizeUserOrderList(whereObject, data => {
if (data['return_code'] !== '000000') {
this.isVisible = false;
this.message.error(data['return_msg']);
}
this.loadingObject.status = false;
});
}
// 获取导出百分比
processRate(key: string) {
this.processRateInterval = setInterval(() => this.common.getRedisValueByType(key, data => {
this.percent = data['return_data'];
if (this.percent === 100) {
clearTimeout(this.processRateInterval);
this.loadingObject.status = true;
this.loadingObject.title = '下载中...';
const interval = setInterval(() => this.common.getRedisValueByType(key + 'download', download => {
if (download['return_data'] != null) {
this.message.success('下载成功!');
this.loadingObject.status = false;
window.location.href = this.FILE_URL + 'temporary/' + download['return_data'];
this.isVisible = false;
clearTimeout(interval);
}
}), 100);
}
}), 300);
}
}

@ -8,6 +8,7 @@ import {SeparateModule} from '../../common/separate/separate.module';
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
import {BreadcrumbModule} from '../../common/breadcrumb/breadcrumb.module';
import { UserGoldComponent } from './user-gold/user-gold.component';
import {AppCommonModule} from "../../app-common.module";
@NgModule({
@ -19,7 +20,8 @@ import { UserGoldComponent } from './user-gold/user-gold.component';
SeparateModule,
ReactiveFormsModule,
FormsModule,
BreadcrumbModule
BreadcrumbModule,
AppCommonModule
]
})
export class UserModule { }

@ -17,6 +17,7 @@ import {NavigationModule} from './admin/navigation/navigation.module';
import {AppCommonModule} from './app-common.module';
import {NgxEchartsModule} from 'ngx-echarts';
import {HashLocationStrategy, LocationStrategy} from '@angular/common';
import {RouterModule} from '@angular/router';
registerLocaleData(zh);

@ -13,8 +13,10 @@ export class ProductConfigPipe implements PipeTransform {
return '肯德基接口';
case 'MEMBER_RECHARGE_CONFIG':
return '会员充值接口';
case 'PHONE_CONFIG':
case 'CALLS_CONFIG':
return '话费接口';
case 'REFUEL_ONLINE_CONFIG':
return '在线加油接口';
case 'STARBUCKS_CONFIG':
return '星巴克接口';
}

@ -243,4 +243,10 @@ export class IndexService {
});
}
public hltCardNoTopUpStatistic(callBack) {
this.http.get(environment.orderUrl + 'orderStatistic/hltCardNoTopUpStatistic').subscribe(data => {
callBack(data);
});
}
}

@ -20,10 +20,10 @@ export class LoginService {
* @return data
*/
public userLogin(params: object, callBack) {
console.log(params);
this.http.post(environment.baseUrl + 'login/userLogin', params).subscribe(data => {
callBack(data);
}, error => {
console.log(error);
});
}

@ -301,6 +301,33 @@ export class OrderService {
});
}
/**
* @Author Sum1Dream
* @methodName getPopularizeUserOrderList
* @Description // 查询推广订单
* @Date 14:23 2023/7/12
* @Param promoteCode 广
*/
public getPopularizeUserOrderList(promoteCode: string , callBack) {
this.http.get(environment.orderUrl + 'getPopularizeUserOrderList?promoteCode=' + promoteCode ).subscribe( data => {
callBack(data);
});
}
/**
* @Author Sum1Dream
* @methodName exportMobilePartyOrderList
* @Description // 导出话费订单表格
* @Date 10:07 2022/11/1
* @Param param: object, callBack
*/
public exportPopularizeUserOrderList(param: object, callBack) {
this.http.get(environment.orderUrl + 'exportPopularizeUserOrderList?' + this.common.getWhereCondition(param)).subscribe(data => {
callBack(data);
});
}
public getGasOrderDetail(orderNo: string , callBack) {
this.http.get(environment.baseUrl + 'highGas/getGasOrderDetail?orderNo=' + orderNo).subscribe( data => {
callBack(data);

@ -4,10 +4,12 @@
export const environment = {
production: false,
baseUrl: 'http://localhost:9302/brest/', // 测试环境服务器地址(请求数据地址)
// orderUrl: 'http://localhost:9304/order/', // 测试环境服务器地址(请求数据地址)
baseUrl: 'http://localhost:9302/brest/', // 测试环境服务器地址(请求数据地址)
orderUrl: 'http://localhost:9304/order/', // 测试环境服务器地址(请求数据地址)
// baseUrl: 'https://hsgcs.dctpay.com/brest/', // 测试环境服务器地址(请求数据地址)
orderUrl: 'https://hsgcs.dctpay.com/order/', // 测试环境服务器地址(请求数据地址)
// baseUrl: 'https://hsg.dctpay.com/brest/', // 正式环境服务器地址(请求数据地址)
// orderUrl: 'https://hsg.dctpay.com/order/', // 测试环境服务器地址(请求数据地址)
// orderUrl: 'https://hsgcs.dctpay.com/order/', // 测试环境服务器地址(请求数据地址)
imageUrl: 'https://hsgcs.dctpay.com/filesystem/',
key: 'https://hsgcs.dctpay.com/phone-recharge-H5/index.html?codeValue=',
inviteUrl: 'https://hsgcs.dctpay.com/wx/?action=ic&id=',

Loading…
Cancel
Save