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.
240 lines
11 KiB
240 lines
11 KiB
<form nz-form [formGroup]="searchForm" class="search_form" [nzLayout]="'vertical'">
|
|
<div nz-row [nzGutter]="24">
|
|
<div nz-col [nzSpan]="6">
|
|
<nz-form-item>
|
|
<nz-form-label>用户手机号</nz-form-label>
|
|
<nz-form-control>
|
|
<input nz-input formControlName="userPhone" placeholder="请输入" />
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="6">
|
|
<nz-form-item>
|
|
<nz-form-label>交易单号</nz-form-label>
|
|
<nz-form-control>
|
|
<input nz-input formControlName="orderNo" placeholder="请输入" />
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="6">
|
|
<nz-form-item>
|
|
<nz-form-label>支付方式</nz-form-label>
|
|
<nz-form-control>
|
|
<nz-select formControlName="payType" nzAllowClear [nzPlaceHolder]="'请选择'">
|
|
<nz-option *ngFor="let item of orderPayTypeArray" nzValue="{{item.codeValue}}" nzLabel="{{item.codeName}}"></nz-option>
|
|
</nz-select>
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="6">
|
|
<nz-form-item>
|
|
<nz-form-label>交易状态</nz-form-label>
|
|
<nz-form-control>
|
|
<nz-select formControlName="tradeStatus" nzAllowClear [nzPlaceHolder]="'请选择'">
|
|
<nz-option *ngFor="let item of orderStatusArray" nzValue="{{item.codeValue}}" nzLabel="{{item.codeName}}"></nz-option>
|
|
</nz-select>
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="24">
|
|
<nz-form-item>
|
|
<nz-form-label>创建时间</nz-form-label>
|
|
<nz-form-control>
|
|
<nz-range-picker formControlName="createTimeArray" nzShowTime [nzFormat]="'yyyy/MM/dd HH:mm:ss'"></nz-range-picker>
|
|
<nz-radio-group nzButtonStyle="solid" formControlName="createTimeSelect" (ngModelChange)="createTimeInit()">
|
|
<label nz-radio-button *ngFor="let item of dateTypeSelect" nzValue="{{item.value}}">{{item.name}}</label>
|
|
</nz-radio-group>
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="6" [hidden]="!isCollapse">
|
|
<nz-form-item>
|
|
<nz-form-label>商品名称</nz-form-label>
|
|
<nz-form-control>
|
|
<input nz-input formControlName="goodsName" placeholder="请输入" />
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="6" [hidden]="!isCollapse">
|
|
<nz-form-item>
|
|
<nz-form-label>卡密订单</nz-form-label>
|
|
<nz-form-control>
|
|
<input nz-input formControlName="channelOrderNo" placeholder="请输入" />
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="6" [hidden]="!isCollapse">
|
|
<nz-form-item>
|
|
<nz-form-label>卡密</nz-form-label>
|
|
<nz-form-control>
|
|
<input nz-input formControlName="couNo" placeholder="请输入" />
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
<div nz-col [nzSpan]="6" [hidden]="!isCollapse">
|
|
<nz-form-item>
|
|
<nz-form-label>卡密状态</nz-form-label>
|
|
<nz-form-control>
|
|
<nz-select formControlName="couStatus" nzAllowClear [nzPlaceHolder]="'请选择'">
|
|
<nz-option *ngFor="let item of orderCouponNoStatus" nzValue="{{item.codeValue}}" nzLabel="{{item.codeName}}"></nz-option>
|
|
</nz-select>
|
|
</nz-form-control>
|
|
</nz-form-item>
|
|
</div>
|
|
|
|
<div nz-col [nzSpan]="24" class="search-area">
|
|
<button nz-button [nzType]="'primary'" (click)="searchFormSubmit()">查询</button>
|
|
<button nz-button (click)="searchFormReset()">重置</button>
|
|
<a class="collapse" (click)="isCollapse = !isCollapse">
|
|
更多查询条件
|
|
<i nz-icon [nzType]="!isCollapse ? 'down' : 'up'"></i>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
|
|
<nz-table #basicTable
|
|
[nzScroll]="{ x: '3500px' }"
|
|
[nzBordered]="true"
|
|
[nzFrontPagination]="false"
|
|
[nzShowQuickJumper]="true"
|
|
[nzShowTotal]="totalTemplate"
|
|
[(nzPageIndex)]="tablePageNum"
|
|
(nzPageIndexChange)="queryData()"
|
|
[nzTotal]="tableData.total"
|
|
[nzData]="tableData.list" >
|
|
<thead>
|
|
<tr>
|
|
<th rowspan="2" nzWidth="180px">交易单号</th>
|
|
<th rowspan="2" nzWidth="150px">子交易单号</th>
|
|
<th rowspan="2" nzWidth="120px">用户手机号</th>
|
|
<th rowspan="2" nzWidth="120px">商品key</th>
|
|
<th rowspan="2" nzWidth="180px">商品名称</th>
|
|
<th rowspan="2" nzWidth="150px">商品规格</th>
|
|
<th rowspan="2" nzWidth="100px">商品价格</th>
|
|
<th rowspan="2" nzWidth="100px">购买数量</th>
|
|
<th colspan="9">交易信息</th>
|
|
<th rowspan="2">卡密订单</th>
|
|
<th rowspan="2">卡密</th>
|
|
<th rowspan="2">过期时间</th>
|
|
<th rowspan="2">卡密状态</th>
|
|
<th rowspan="2" nzRight>操作</th>
|
|
</tr>
|
|
<tr>
|
|
<th>订单金额</th>
|
|
<th>优惠券优惠</th>
|
|
<th>积分抵扣</th>
|
|
<th>实付金额</th>
|
|
<th>支付渠道</th>
|
|
<th>支付方式</th>
|
|
<th>交易状态</th>
|
|
<th>创建时间</th>
|
|
<th>支付时间</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr *ngFor="let data of basicTable.data;index as i">
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.orderNo}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.childOrderNo}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.userPhone}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.goodsKey}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.goodsName}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.goodsSpecsName}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.goodsPrice}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.goodsCount}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.totalPrice}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.couponDiscountPrice}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.integralDiscountPrice}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.payRealPrice}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.payChannel | dictionary: 'ORDER_PAY_CHANNEL'}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.payType | dictionary: 'ORDER_PAY_TYPE'}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.tradeStatus | dictionary: 'ORDER_CHILD_STATUS'}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.createTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td>
|
|
<td *ngIf="basicTable.data[i-1]?.orderNo != data['orderNo']" rowSpan="{{data.goodsCount}}">{{data.payTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td>
|
|
<td nzEllipsis nz-tooltip nzTooltipTitle="{{data.channelOrderNo}}">{{data.channelOrderNo}}</td>
|
|
<td nzEllipsis nz-tooltip nzTooltipTitle="{{data.couNo}}">{{data.couNo}}</td>
|
|
<td>{{data.expireTime | date: 'yyyy-MM-dd HH:mm'}}</td>
|
|
<td>{{data.couStatus | dictionary: 'ORDER_COUPON_NO_STATUS'}}</td>
|
|
<td nzRight>
|
|
<a (click)="showDetail(data.childOrderNo)">详情</a>
|
|
<nz-divider nzType="vertical"></nz-divider>
|
|
<a nz-dropdown [nzDropdownMenu]="menu">
|
|
更多
|
|
<span nz-icon nzType="down"></span>
|
|
</a>
|
|
<nz-dropdown-menu #menu="nzDropdownMenu">
|
|
<ul nz-menu nzSelectable>
|
|
<li nz-menu-item nzDanger >删除</li>
|
|
</ul>
|
|
</nz-dropdown-menu>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
<ng-template #totalTemplate let-total>总计 {{ total }} 条</ng-template>
|
|
</nz-table>
|
|
|
|
|
|
<nz-modal [(nzVisible)]="orderDetailVisible" nzWidth="1000px" nzTitle="订单详情" [nzFooter]="null" (nzOnCancel)="closeDetail()" [nzBodyStyle]="{ 'padding': '10px' }">
|
|
<ng-container *nzModalContent>
|
|
<nz-tabset nzType="card" nzSize="small">
|
|
<nz-tab nzTitle="交易详情">
|
|
<nz-descriptions nzBordered [nzColumn]="{ xxl: 2, xl: 2, lg: 2, md: 2, sm: 2, xs: 1 }">
|
|
<nz-descriptions-item nzTitle="交易单号">Zhou Maomao</nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="子订单号">18100000000</nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="交易金额"></nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="总优惠金额"></nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="优惠券优惠"></nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="积分抵扣"></nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="实付金额"></nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="用户手机号"></nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="创建时间">Empty</nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="支付时间">Empty</nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="完成时间">Empty</nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="取消时间">Empty</nz-descriptions-item>
|
|
<nz-descriptions-item nzTitle="退款时间">Empty</nz-descriptions-item>
|
|
</nz-descriptions>
|
|
</nz-tab>
|
|
<nz-tab nzTitle="商品详情">
|
|
<nz-table #orderDetailTable
|
|
[nzData]="tableData.list"
|
|
[nzTotal]="tableData.list.length"
|
|
[nzScroll]="{ x: '2000px' }"
|
|
[nzPaginationType]="'small'"
|
|
[nzSize]="'small'"
|
|
>
|
|
<thead>
|
|
<tr>
|
|
<th>商品key</th>
|
|
<th>商品名称</th>
|
|
<th>商品规格</th>
|
|
<th>商品面值</th>
|
|
<th>卡密订单号</th>
|
|
<th>卡密</th>
|
|
<th>状态</th>
|
|
<th>过期时间</th>
|
|
<th>派发时间</th>
|
|
<th>过期时间</th>
|
|
<th>完成时间</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr *ngFor="let data of orderDetailTable.data">
|
|
<td>{{ data.goodsKey }}</td>
|
|
<td>{{ data.goodsName }}</td>
|
|
<td>{{ data.goodsSpecsName }}</td>
|
|
<td>{{ data.goodsPrice }}</td>
|
|
<td nzEllipsis nz-tooltip nzTooltipTitle="{{data.channelOrderNo}}">{{ data.channelOrderNo }}</td>
|
|
<td nzEllipsis nz-tooltip nzTooltipTitle="{{data.couNo}}">{{ data.couNo }}</td>
|
|
<td>{{ data.couStatus | dictionary: 'ORDER_COUPON_NO_STATUS'}}</td>
|
|
<td>{{ data.expireTime | date: 'yyyy-MM-dd HH:mm'}}</td>
|
|
<td>{{ data.createTime | date: 'yyyy-MM-dd HH:mm:ss'}}</td>
|
|
<td>{{ data.deliverTime | date: 'yyyy-MM-dd HH:mm:ss' }}</td>
|
|
<td>{{ data.finishTime | date: 'yyyy-MM-dd HH:mm:ss' }}</td>
|
|
</tr>
|
|
</tbody>
|
|
</nz-table>
|
|
</nz-tab>
|
|
</nz-tabset>
|
|
|
|
</ng-container>
|
|
</nz-modal>
|
|
|