pull/1/head
袁野 3 years ago
parent 7713ee07ac
commit 12cb9736c8
  1. 2
      src/app/admin/order/order-c-list/order-c-list.component.html
  2. 175
      src/app/admin/order/order-h-list/order-h-list.component.html
  3. 0
      src/app/admin/order/order-h-list/order-h-list.component.scss
  4. 186
      src/app/admin/order/order-h-list/order-h-list.component.ts
  5. 2
      src/app/admin/order/order-k-list/order-k-list.component.html
  6. 2
      src/app/admin/order/order-routing.module.ts
  7. 3
      src/app/admin/order/order.module.ts
  8. 48
      src/app/admin/user/user-gold/user-gold.component.html
  9. 6
      src/app/admin/user/user-gold/user-gold.component.scss
  10. 1
      src/app/admin/user/user-gold/user-gold.component.ts
  11. 7
      src/app/services/order.service.ts

@ -125,7 +125,6 @@
<th nzWidth="50px">编号</th> <th nzWidth="50px">编号</th>
<th nzWidth="180px">商品名称</th> <th nzWidth="180px">商品名称</th>
<th nzWidth="180px">订单来源</th> <th nzWidth="180px">订单来源</th>
<th nzWidth="180px">订单类型</th>
<th nzWidth="180px">订单号</th> <th nzWidth="180px">订单号</th>
<th nzWidth="180px">支付流水号</th> <th nzWidth="180px">支付流水号</th>
<th nzWidth="120px">客户名称</th> <th nzWidth="120px">客户名称</th>
@ -145,7 +144,6 @@
<td>{{i+1}}</td> <td>{{i+1}}</td>
<td>{{data.goodsName}}</td> <td>{{data.goodsName}}</td>
<td>{{data.giveawayType}}</td> <td>{{data.giveawayType}}</td>
<td>{{data.goodsType}}</td>
<td>{{data.orderNo}}</td> <td>{{data.orderNo}}</td>
<td>{{data.paySerialNo}}</td> <td>{{data.paySerialNo}}</td>
<td>{{data.memName == null ? '暂无': data.memName}}</td> <td>{{data.memName == null ? '暂无': data.memName}}</td>

@ -0,0 +1,175 @@
<!-- start 面包屑 -->
<app-breadcrumb></app-breadcrumb>
<!-- end 面包屑 -->
<!--条件搜索-->
<div class="inner-content">
<form nz-form [formGroup]="searchForm" (ngSubmit)="getRequest(true , searchForm.value)">
<div nz-row>
<!-- <div nz-col nzSpan="8">-->
<!-- <nz-form-item>-->
<!-- <nz-form-label [nzSpan]="6">区域名称</nz-form-label>-->
<!-- <nz-form-control [nzSpan]="16">-->
<!-- <nz-select nzShowSearch nzAllowClear [formControlName]="'companyId'" (ngModelChange)="getMerchantListByCompany($event)">-->
<!-- <nz-option *ngFor="let item of companyData" nzValue="{{item.id}}" nzLabel="{{item.name}}"></nz-option>-->
<!-- </nz-select>-->
<!-- </nz-form-control>-->
<!-- </nz-form-item>-->
<!-- </div>-->
<!-- <div nz-col nzSpan="8">-->
<!-- <nz-form-item>-->
<!-- <nz-form-label [nzSpan]="6">商户名称</nz-form-label>-->
<!-- <nz-form-control [nzSpan]="16">-->
<!-- <nz-select nzShowSearch nzAllowClear [formControlName]="'merchantId'">-->
<!-- <nz-option *ngFor="let item of merchantData" nzValue="{{item.id}}" nzLabel="{{item.merchantName}}"></nz-option>-->
<!-- </nz-select>-->
<!-- </nz-form-control>-->
<!-- </nz-form-item>-->
<!-- </div>-->
<div nz-col nzSpan="8">
<nz-form-item>
<nz-form-label [nzSpan]="6">订单号</nz-form-label>
<nz-form-control [nzSpan]="16">
<input nz-input formControlName="orderNo"/>
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="8">
<nz-form-item>
<nz-form-label [nzSpan]="6">订单流水号</nz-form-label>
<nz-form-control [nzSpan]="16">
<input nz-input formControlName="paySerialNo"/>
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="8">
<nz-form-item>
<nz-form-label [nzSpan]="6">支付模式</nz-form-label>
<nz-form-control [nzSpan]="16">
<nz-select nzShowSearch nzAllowClear formControlName="payModel" nzPlaceHolder="请选择支付模式">
<nz-option nzLabel="金币支付" nzValue="1"></nz-option>
<nz-option nzLabel="第三方支付" nzValue="2"></nz-option>
<nz-option nzLabel="混合支付" nzValue="3"></nz-option>
</nz-select>
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="8">
<nz-form-item>
<nz-form-label [nzSpan]="6">支付方式</nz-form-label>
<nz-form-control [nzSpan]="16">
<nz-select nzShowSearch nzAllowClear formControlName="payType" nzPlaceHolder="请选择支付模式">
<nz-option nzLabel="支付宝" nzValue="1"></nz-option>
<nz-option nzLabel="微信" nzValue="2"></nz-option>
<nz-option nzLabel="金币" nzValue="3"></nz-option>
</nz-select>
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="8">
<nz-form-item>
<nz-form-label [nzSpan]="6">状态</nz-form-label>
<nz-form-control [nzSpan]="16">
<nz-select nzShowSearch nzAllowClear nzPlaceHolder="请选择订单状态" formControlName="orderStatus">
<nz-option nzLabel="待支付" nzValue="1"></nz-option>
<nz-option nzLabel="已支付" nzValue="2"></nz-option>
<nz-option nzLabel="已完成" nzValue="3"></nz-option>
<nz-option nzLabel="已退款" nzValue="4"></nz-option>
<nz-option nzLabel="已取消" nzValue="5"></nz-option>
<nz-option nzLabel="退款中" nzValue="6"></nz-option>
<nz-option nzLabel="退款失败" nzValue="7"></nz-option>
</nz-select>
</nz-form-control>
</nz-form-item>
</div>
<div nz-col nzSpan="8">
<nz-form-item>
<nz-form-label [nzSpan]="6">时间区间</nz-form-label>
<nz-form-control [nzSpan]="16">
<nz-range-picker [nzShowTime]="{ nzFormat: 'HH:mm' }" formControlName="payTime"></nz-range-picker>
</nz-form-control>
</nz-form-item>
</div>
</div>
<div nz-row>
<div nz-col nzSpan="24" class="search-button">
<button nz-button nzType="primary"><i nz-icon nzType="search" nzTheme="outline"></i>搜索</button>
<button nz-button nzType="default" (click)="resetForm()"><i nz-icon nzType="reload" nzTheme="outline"></i>重置</button>
</div>
</div>
</form>
</div>
<div class="inner-content">
<span>共计 {{total}} 条数据</span>
<!-- <div class="operating-button">-->
<!-- <button nz-button nzType="primary" class="right-btn" (click)="downloadTemplate(searchForm.value)" ><i nz-icon nzType="download" nzTheme="outline"></i>导出订单</button>-->
<!-- </div>-->
<nz-table
class="table"
#ajaxTable
nzShowSizeChanger
[nzFrontPagination]="false"
[nzData]="requestData"
[nzLoading]="loading"
[nzTotal]="total"
[(nzPageIndex)]="pageNum"
[(nzPageSize)]="pageSize"
[nzScroll]="{ x: '1200px' }"
(nzPageIndexChange)="getRequest(false , searchForm.value)"
(nzPageSizeChange)="getRequest(false , searchForm.value)">
<thead nzSingleSort>
<tr>
<th nzWidth="50px">编号</th>
<th nzWidth="180px">商品名称</th>
<th nzWidth="180px">订单来源</th>
<th nzWidth="180px">订单号</th>
<th nzWidth="180px">支付流水号</th>
<th nzWidth="120px">客户名称</th>
<th nzWidth="130px">客户电话</th>
<th nzWidth="110px">支付模式</th>
<th nzWidth="100px">支付方式</th>
<th nzWidth="100px">支付金额</th>
<th nzWidth="140px">生成时间</th>
<th nzWidth="140px">支付时间</th>
<th nzWidth="140px">取消时间</th>
<th nzRight nzWidth="100px">状态</th>
<!-- <th nzWidth="80px" nzRight>操作</th>-->
</tr>
</thead>
<tbody>
<tr *ngFor="let data of ajaxTable.data; let i = index">
<td>{{i+1}}</td>
<td>{{data.goodsName}}</td>
<td>{{data.giveawayType}}</td>
<td>{{data.orderNo}}</td>
<td>{{data.paySerialNo}}</td>
<td>{{data.memName == null ? '暂无': data.memName}}</td>
<td>{{data.memPhone == null ? '暂无': data.memPhone}}</td>
<td>{{data.payModel}}</td>
<td>{{data.payType}}</td>
<td>{{data.payPrice}}</td>
<td>{{data.createTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td>
<td>{{data.payTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td>
<td>{{data.cancelTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td>
<td nzRight>{{data.orderStatus}}</td>
<!-- <td nzRight class="table-td-operation">-->
<!-- &lt;!&ndash; <a *ngIf="data.status !== 101" (click)="getDetail(data.id)">订单详情</a>&ndash;&gt;-->
<!--&lt;!&ndash; <a *ngIf="data.orderStatusId == 2 && data.goodsTypeId == 3" (click)="showModal(data.orderId)">申请退款</a>&ndash;&gt;-->
<!-- </td>-->
</tbody>
</nz-table>
</div>
<nz-modal [(nzVisible)]="isVisible" nzTitle="退款理由" (nzOnCancel)="handleCancel()" (nzOnOk)="handleOk()">
<nz-form-item>
<nz-form-label>退款理由</nz-form-label>
<nz-form-control>
<textarea [(ngModel)]="refundContent" nz-input rows="2" placeholder="请输入退款理由"></textarea>
</nz-form-control>
</nz-form-item>
</nz-modal>

@ -0,0 +1,186 @@
import { Component, OnInit } from '@angular/core';
import {environment} from '../../../../environments/environment';
import {FormBuilder, FormGroup} from '@angular/forms';
import {OrderService} from '../../../services/order.service';
import {IconService} from '../../../services/icon.service';
import {NzMessageService} from 'ng-zorro-antd';
import {Router} from '@angular/router';
import {CompanyService} from '../../../services/company.service';
import {MerchantService} from '../../../services/merchant.service';
import {CommonsService} from '../../../services/commons.service';
@Component({
selector: 'app-order-h-list',
templateUrl: './order-h-list.component.html',
styleUrls: ['./order-h-list.component.scss']
})
export class OrderHListComponent implements OnInit {
WEB_SERVE_URL = environment.baseUrl;
FILE_URL = environment.imageUrl;
searchForm: FormGroup; // 搜索框
requestData = []; // 列表数据
companyData = []; // 列表数据
merchantData = []; // 列表数据
total: number; // 页码
pageNum = 1; // 页码
pageSize = 10; // 条码
loading = true;
id: number; // 订单ID
isVisible = false;
refundContent: string;
constructor(
private form: FormBuilder,
private order: OrderService,
private iconService: IconService,
private message: NzMessageService,
private router: Router,
private company: CompanyService,
private merchant: MerchantService,
private common: CommonsService
) {
}
ngOnInit(): void {
this.init();
const whereObject = {};
whereObject['pageNum'] = 1;
whereObject['pageSize'] = 10000;
this.company.selectCompanyList(whereObject, data => {
if (data['return_code'] === '000000') {
this.companyData = data['return_data'].list;
} else {
this.message.error(data['return_msg']);
}
});
this.getMerchantListByCompany(this.searchForm.value.companyId);
}
public init(): void {
this.searchForm = this.form.group({
companyId: [null],
merchantId: [null],
orderNo: [null],
paySerialNo: [null],
payModel: [null],
payType: [null],
orderStatus: [null],
payTime: [null]
});
this.getRequest(true, this.searchForm.value);
}
// 查询列表
public getRequest(reset: boolean = false, whereObject: object) {
if (whereObject['payTime'] != null && whereObject['payTime'].length !== 0) {
whereObject['payTimeS'] = whereObject['payTime'][0].getTime();
whereObject['payTimeE'] = whereObject['payTime'][1].getTime();
}
this.loading = false;
if (reset) {
this.pageNum = 1;
}
whereObject['pageNum'] = this.pageNum;
whereObject['pageSize'] = this.pageSize;
this.order.getMobileOrderList(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 getMerchantListByCompany(companyId: number): void {
this.merchant.getMerchantListByCompany(companyId, data => {
if (data['return_code'] === '000000') {
if (data['return_code'] === '000000') {
this.merchantData = data['return_data'];
} else {
this.message.error(data['return_msg']);
}
} else {
this.message.error(data['return_msg']);
}
});
}
// 重置
public resetForm(): void {
this.searchForm.reset();
}
// 查看详情
public getDetail(id: number): void {
this.router.navigate(['/admin/order/order-detail'], {
queryParams: {
merchantId: id
}
}).then(r => console.log(r));
}
// 下载模板
downloadTemplate(whereObject) {
if (whereObject['payTime'] != null && whereObject['payTime'].length !== 0) {
whereObject['payTimeS'] = whereObject['payTime'][0].getTime();
whereObject['payTimeE'] = whereObject['payTime'][1].getTime();
}
this.order.exportGoodsOrderList(whereObject, data => {
if (data['return_code'] === '000000') {
window.location.href = this.FILE_URL + data['return_data'];
} else {
this.message.error(data['return_msg']);
}
});
}
provinceChange(e) {
console.log(e);
}
// 退款
public orderToRefund(id): void {
}
showModal(id): void {
console.log(id);
this.id = id;
this.isVisible = true;
}
handleOk(): void {
if (this.refundContent == null || this.refundContent.length === 0) {
this.message.error('请输入退款原因');
return;
}
this.common.showConfirm('确认订单是否退款', item => {
if (item) {
const params = {
orderId: this.id ,
refundContent: this.refundContent
};
this.order.refuelingOrderRefund(params, data => {
if (data['return_code'] === '000000') {
this.getRequest(false, this.searchForm.value);
this.isVisible = false;
this.message.success('申请退款中');
} else {
this.message.error(data['return_msg']);
}
});
}
});
}
handleCancel(): void {
this.isVisible = false;
}
}

@ -125,7 +125,6 @@
<th nzWidth="50px">编号</th> <th nzWidth="50px">编号</th>
<th nzWidth="180px">商品名称</th> <th nzWidth="180px">商品名称</th>
<th nzWidth="180px">订单来源</th> <th nzWidth="180px">订单来源</th>
<th nzWidth="180px">订单类型</th>
<th nzWidth="180px">订单号</th> <th nzWidth="180px">订单号</th>
<th nzWidth="180px">支付流水号</th> <th nzWidth="180px">支付流水号</th>
<th nzWidth="120px">客户名称</th> <th nzWidth="120px">客户名称</th>
@ -145,7 +144,6 @@
<td>{{i+1}}</td> <td>{{i+1}}</td>
<td>{{data.goodsName}}</td> <td>{{data.goodsName}}</td>
<td>{{data.giveawayType}}</td> <td>{{data.giveawayType}}</td>
<td>{{data.goodsType}}</td>
<td>{{data.orderNo}}</td> <td>{{data.orderNo}}</td>
<td>{{data.paySerialNo}}</td> <td>{{data.paySerialNo}}</td>
<td>{{data.memName == null ? '暂无': data.memName}}</td> <td>{{data.memName == null ? '暂无': data.memName}}</td>

@ -7,6 +7,7 @@ import {OrderCouponComponent} from './order-coupon/order-coupon.component';
import {OrderTListComponent} from './order-Tlist/order-Tlist.component'; import {OrderTListComponent} from './order-Tlist/order-Tlist.component';
import {OrderCListComponent} from './order-c-list/order-c-list.component'; import {OrderCListComponent} from './order-c-list/order-c-list.component';
import {OrderKListComponent} from './order-k-list/order-k-list.component'; import {OrderKListComponent} from './order-k-list/order-k-list.component';
import {OrderHListComponent} from './order-h-list/order-h-list.component';
const routes: Routes = [ const routes: Routes = [
@ -17,6 +18,7 @@ const routes: Routes = [
{ path: 'order-coupon', component: OrderCouponComponent }, { path: 'order-coupon', component: OrderCouponComponent },
{ path: 'order-c-list', component: OrderCListComponent }, { path: 'order-c-list', component: OrderCListComponent },
{ path: 'order-k-list', component: OrderKListComponent }, { path: 'order-k-list', component: OrderKListComponent },
{ path: 'order-h-list', component: OrderHListComponent },
]; ];
@NgModule({ @NgModule({

@ -15,10 +15,11 @@ import { OrderCouponComponent } from './order-coupon/order-coupon.component';
import {OrderTListComponent} from './order-Tlist/order-Tlist.component'; import {OrderTListComponent} from './order-Tlist/order-Tlist.component';
import { OrderKListComponent } from './order-k-list/order-k-list.component'; import { OrderKListComponent } from './order-k-list/order-k-list.component';
import {OrderCListComponent} from './order-c-list/order-c-list.component'; import {OrderCListComponent} from './order-c-list/order-c-list.component';
import { OrderHListComponent } from './order-h-list/order-h-list.component';
@NgModule({ @NgModule({
declarations: [OrderListComponent, OrderDetailComponent, OrderCouponsComponent, OrderCouponComponent , OrderTListComponent, OrderKListComponent , OrderCListComponent], declarations: [OrderListComponent, OrderDetailComponent, OrderCouponsComponent, OrderCouponComponent , OrderTListComponent, OrderKListComponent , OrderCListComponent, OrderHListComponent],
imports: [ imports: [
CommonModule, CommonModule,
OrderRoutingModule, OrderRoutingModule,

@ -2,6 +2,31 @@
<app-breadcrumb></app-breadcrumb> <app-breadcrumb></app-breadcrumb>
<!-- end 面包屑 --> <!-- end 面包屑 -->
<div class="inner-content">
<div nz-row [nzGutter]="8" class="statistics">
<div nz-col [nzSpan]="6">
<nz-card nzTitle="月收入">
<span>¥ 300</span>
</nz-card>
</div>
<div nz-col [nzSpan]="6">
<nz-card nzTitle="总收入">
<span>¥ 9000</span>
</nz-card>
</div>
<div nz-col [nzSpan]="6">
<nz-card nzTitle="月支出">
<span style="color: red">¥ 200</span>
</nz-card>
</div>
<div nz-col [nzSpan]="6">
<nz-card nzTitle="总支出">
<span style="color: red">¥ 2000</span>
</nz-card>
</div>
</div>
</div>
<!--条件搜索--> <!--条件搜索-->
<div class="inner-content"> <div class="inner-content">
<form nz-form [formGroup]="searchForm" (ngSubmit)="getRequest(true , searchForm.value)"> <form nz-form [formGroup]="searchForm" (ngSubmit)="getRequest(true , searchForm.value)">
@ -17,6 +42,17 @@
</nz-form-control> </nz-form-control>
</nz-form-item> </nz-form-item>
</div> </div>
<div nz-col nzSpan="8">
<nz-form-item>
<nz-form-label [nzSpan]="6">来源类型</nz-form-label>
<nz-form-control [nzSpan]="16">
<nz-select nzShowSearch nzAllowClear formControlName="goldType" nzPlaceHolder="请选择来源类型">
<nz-option nzLabel="充值" nzValue="1"></nz-option>
<nz-option nzLabel="订单" nzValue="2"></nz-option>
</nz-select>
</nz-form-control>
</nz-form-item>
</div>
</div> </div>
<div nz-row> <div nz-row>
@ -49,21 +85,21 @@
<th nzWidth="50px">编号</th> <th nzWidth="50px">编号</th>
<th nzWidth="80px">用户名称</th> <th nzWidth="80px">用户名称</th>
<th nzWidth="100px">用户电话</th> <th nzWidth="100px">用户电话</th>
<th nzWidth="100px">金币类型</th>
<th nzWidth="100px">来源类型</th> <th nzWidth="100px">来源类型</th>
<th nzWidth="100px">金币数</th>
<th nzWidth="100px">产生时间</th> <th nzWidth="100px">产生时间</th>
<th nzRight nzWidth="100px">金币类型</th>
<th nzRight nzWidth="100px">金币数</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<tr *ngFor="let data of ajaxTable.data; let i = index"> <tr *ngFor="let data of ajaxTable.data; let i = index">
<td>{{i+1}}</td> <td>{{i+1}}</td>
<td>{{data['highUser'].name}}</td> <td>{{data['highUser']?.name}}</td>
<td>{{data['highUser'].phone}}</td> <td>{{data['highUser']?.phone}}</td>
<td>{{data.goldType === 1 ? '收入' : '支出'}}</td>
<td>{{data.resType === 1 ? '充值' : '订单'}}</td> <td>{{data.resType === 1 ? '充值' : '订单'}}</td>
<td>{{data.gold}}</td>
<td>{{data.createTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td> <td>{{data.createTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td>
<td nzRight>{{data.goldType === 1 ? '收入' : '支出'}}</td>
<td nzRight>{{data.gold}}</td>
</tbody> </tbody>
</nz-table> </nz-table>
</div> </div>

@ -2,3 +2,9 @@
height: 50px; height: 50px;
width: 50px; width: 50px;
} }
.statistics {
span {
font-size: 26px;
font-weight: bold;
}
}

@ -36,6 +36,7 @@ export class UserGoldComponent implements OnInit {
public init(): void { public init(): void {
this.searchForm = this.form.group({ this.searchForm = this.form.group({
goldType: [null], goldType: [null],
resType: [null],
}); });
this.getRequest(true, this.searchForm.value); this.getRequest(true, this.searchForm.value);
} }

@ -61,6 +61,13 @@ export class OrderService {
}); });
} }
public getMobileOrderList(paramsObject: object, callBack) {
this.http.get(environment.baseUrl + 'highOrder/getMobileOrderList?' + this.common.getWhereCondition(paramsObject)).subscribe(data => {
callBack(data);
});
}
/** /**
* *
* *

Loading…
Cancel
Save