Accept Merge Request #79: (feature/hant -> develop)

Merge Request: 修改

Created By: @todayswind
Accepted By: @todayswind
URL: https://g-bcrc3009.coding.net/p/allocatr/d/allocatr/git/merge/79?initial=true
This commit is contained in:
todayswind 2025-05-28 23:48:30 +08:00 committed by Coding
commit 4b83b571f1
16 changed files with 394 additions and 319 deletions

View File

@ -136,7 +136,12 @@ class Order extends Backend
$build = $this->model
->field(['id', 'order_no', 'admin_id', 'customer', 'tel', 'status', 'area_id', 'address',
'source', 'source_shop', 'source_uid', 'source', 'item_title', 'item_id', 'work_tel_id',
'detail', 'remark', 'images', 'create_time', 'update_time', 'admin_id', 'dispatch_type', 'receive_type','aftersale_id'])
'detail', 'remark', 'images', 'create_time', 'update_time', 'admin_id', 'dispatch_type',
'receive_type',
'plan_time',
'coupon_id',
'aftersale_id'
])
->where($where);
if ($type == 1){
@ -166,6 +171,8 @@ class Order extends Backend
$q->field('id,area_code,merge_name');
}, 'phone' => function ($q) {
$q->field('id,model');
},'coupon' => function ($q) {
$q->field('id,code,description');
}])
->order($sort, $order)
->paginate($limit);
@ -433,6 +440,7 @@ class Order extends Backend
$insert = [
'order_id' => $params['order_id'],
'status' => 0,
'level' => $params['level'],
'abnormal_id' => $params['abnormal_id'],
'abnormal_title' => model('abnormal')->get($params['abnormal_id'])->title ?? '',
'detail' => $params['detail'],

View File

@ -2,6 +2,7 @@
namespace app\admin\controller\aftersales;
use app\admin\model\Admin;
use app\admin\model\Order;
use app\common\controller\Backend;
use app\common\Logic\OrderLogic;
@ -161,15 +162,14 @@ class Aftersale extends Backend
}
$params['status'] = 1;
if($params['handle_type'] == 1){
$params['refund_amount'] = bcadd($params['company_refund_amount'],$params['worker_refund_amount'],2);
if($params['type'] == 1){
$params['refund_amount'] = bcadd($params['company_refund_amount'] ?? 0,$params['worker_refund_amount']??0,2);
}else{
unset($params['company_refund_amount']);
unset($params['worker_refund_amount']);
}
$params['dispatch_admin_id'] = $order->dispatch_admin_id;
$params['dispatch_admin_user'] = $order->dispatch_admin_user;
$params['dispatch_admin_id'] = $order->dispatch_admin_id ?? 0;
$params['dispatch_admin_user'] = $order->dispatch_admin_user ?? '';
$result = $this->model->allowField(true)->save($params);
$order->aftersale_id = $this->model->id;

View File

@ -193,6 +193,9 @@ class Order extends Model
public function area(){
return $this->belongsTo(Area::class,'area_id','area_code');
}
public function coupon(){
return $this->belongsTo(Coupons::class,'coupon_id');
}
public function phone(){
return $this->belongsTo(Phones::class,'work_tel_id',);
}

View File

@ -15,60 +15,17 @@
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('From')}:</label>
<label class="control-label col-xs-12 col-sm-2">异常类型:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-from" data-rule="required" class="form-control selectpicker" name="row[from]">
{foreach name="fromList" item="vo"}
<option value="{$key}" {in name="key" value="0"}selected{/in}>{$vo}</option>
{/foreach}
<select data-live-search="true" title="请选择" data-rule="required" name="row[type]" class="form-control">
<option value="1">退款</option>
<option value="2">返修</option>
<option value="3">其它</option>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Company_refund_amount')}:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-company_refund_amount" data-rule="required" min="0" class="form-control" step="0.01" name="row[company_refund_amount]" type="number" value="0.00">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Worker_refund_amount')}:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-worker_refund_amount" data-rule="required" min="0" class="form-control" min="0" step="0.01" name="row[worker_refund_amount]" type="number" value="0.00">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Refund_type')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-refund_type" data-rule="required" class="form-control selectpicker" name="row[refund_type]">
{foreach name="refundTypeList" item="vo"}
<option value="{$key}" {in name="key" value="1"}selected{/in}>{$vo}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Worker_refund_entry')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-worker_refund_entry" data-rule="required" class="form-control selectpicker" name="row[worker_refund_entry]">
{foreach name="workerRefundEntryList" item="vo"}
<option value="{$key}" {in name="key" value="0"}selected{/in}>{$vo}</option>
{/foreach}
</select>
</div>
</div>
<!-- <div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Refund_time')}:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-refund_time" class="form-control datetimepicker" data-date-format="YYYY-MM-DD HH:mm:ss" data-use-current="true" name="row[refund_time]" type="text" value="{:date('Y-m-d H:i:s')}">
</div>
</div>-->
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Customer_appeal')}:</label>
<div class="col-xs-12 col-sm-8">
@ -89,7 +46,7 @@
<ul class="row list-inline faupload-preview" id="p-customer_qrcode"></ul>
</div>
</div>
<!-- <div class="form-group">
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Images')}:</label>
<div class="col-xs-12 col-sm-8">
<div class="input-group">
@ -102,15 +59,15 @@
</div>
<ul class="row list-inline faupload-preview" id="p-images"></ul>
</div>
</div>-->
<!--
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('Remark')}:</label>
<div class="col-xs-12 col-sm-8">
<textarea id="c-remark" class="form-control" name="row[remark]" placeholder="备注"></textarea>
</div>
</div>
-->
<div class="form-group layer-footer">

View File

@ -3,11 +3,45 @@
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('订单编号')}:</label>
<div class="col-xs-12 col-sm-8">
<input placeholder="选择订单编号" id="c-order_id" data-field="order_no" data-rule="required" class="form-control" readonly type="text" value="{$order.order_no|htmlentities}">
<input id="c-order_id" data-field="order_no" data-rule="required" class="form-control" readonly type="text" value="{$order.order_no|htmlentities}">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">客户姓名:</label>
<div class="col-xs-12 col-sm-8">
<input data-field="order_no" data-rule="required" class="form-control" readonly type="text" value="{$order.customer|htmlentities}">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">客户编号:</label>
<div class="col-xs-12 col-sm-8">
<input data-field="order_no" data-rule="required" class="form-control" readonly type="text" value="{$order.tel|htmlentities}">
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">请求售后类型:</label>
<div class="col-xs-12 col-sm-8">
<select data-live-search="true" title="请选择" data-rule="required" name="row[type]" class="form-control">
<option {if $row['type'] == 1} selected {/if} value="1">退款</option>
<option {if $row['type'] == 2} selected {/if} value="2">返修</option>
<option {if $row['type'] == 3} selected {/if} value="3">其它</option>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">办结方式:</label>
<div class="col-xs-12 col-sm-8">
<select data-live-search="true" title="请选择" data-rule="required" name="row[type]" class="form-control">
<option {if $row['handle_type'] == 1} selected {/if} value="1">退款</option>
<option {if $row['handle_type'] == 2} selected {/if} value="2">返修</option>
<option {if $row['handle_type'] == 3} selected {/if} value="3">其它</option>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">{:__('From')}:</label>
<div class="col-xs-12 col-sm-8">

View File

@ -17,7 +17,7 @@
<label class="control-label col-xs-12 col-sm-2">异常类型:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-coupon" data-live-search="true" title="请选择" data-rule="required" name="row[abnormal_id]" class="form-control selectpicker">
<select id="c-coupon" data-live-search="true" title="请选择" data-rule="required" name="row[abnormal_id]" class="form-control">
{foreach $options as $item}
<option value="{$item['id']}">{$item['title']}</option>
{/foreach}
@ -25,6 +25,18 @@
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">异常类型:</label>
<div class="col-xs-12 col-sm-8">
<select data-live-search="true" title="请选择" data-rule="required" name="row[level]" class="form-control">
<option value="1">一般紧急</option>
<option value="2">紧急</option>
<option value="3">非常紧急</option>
</select>
</div>
</div>
<div class="form-group">
<label class="control-label col-xs-12 col-sm-2">异常详情:</label>
<div class="col-xs-12 col-sm-8">

View File

@ -30,7 +30,7 @@
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-lg-4">{:__('Address')}:</label>
<label class="control-label col-xs-12 col-md-4">{:__('Address')}:</label>
<div class="col-xs-12 col-sm-8">
<div class="myform-group">
<input id="c-address" data-rule="required"
@ -68,9 +68,10 @@
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-lg-4">上门时间:</label>
<label class="control-label col-xs-12 col-lg-4">上门时间:
</label>
<div class="col-xs-12 col-sm-8">
<input data-rule="required" name="row[plan_time]" class="form-control datetimepicker">
<input name="row[plan_time]" class="form-control datetimepicker">
</div>
</div>

View File

@ -6,130 +6,52 @@
<div class="form-area">
<div>
<div class="card-body">
<h5 class="card-title">录入订单</h5>
<form id="add-form" class="row" role="form" data-toggle="validator" method="POST" action="{:url('order/add')}">
<div class="form-group col-xs-6">
<div class="col-md-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Customer')}:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-customer" value="{$row['customer']}" data-rule="required" class="form-control" name="row[customer]" type="text">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Tel')}:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-tel" data-rule="required" value="{$row['tel']}" class="form-control" name="row[tel]" type="number">
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">{:__('Source')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-source" data-live-search="true" title="请选择" data-rule="required" name="row[source]" class="form-control selectpicker show-tick">
{foreach $sources as $item}
<option {if $item['id'] == $row.source} selected {/if} data-subtext="{$item['ptitle']}" value="{$item['id']}">{$item['title']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">来源订单ID:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-source-id" value="{$row['source_uid']}" name="row[source_uid]" type="text" class="form-control">
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">录单员:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-users" data-live-search="true" title="不选择默认当前登陆账号" name="row[admin_id]" class="form-control selectpicker show-tick">
<option value="-1">不选择默认当前登陆账号</option>
{foreach $users as $item}
<option {if $item['id'] == $row.admin_id} selected {/if} value="{$item['id']}">{$item['nickname']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">派单方式:</label>
<div class="col-xs-12 col-sm-8">
<select data-live-search="true" value="" name="row[dispatch_type]" class="form-control selectpicker show-tick">
<option {if 1 == $row.dispatch_type} value="1">手动派单</option>
<option {if 2 == $row.dispatch_type} value="2">自动派单</option>
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">收款方式:</label>
<div class="col-xs-12 col-sm-8">
<select name="row[receive_type]" class="form-control selectpicker">
<option {if 1 == $row.receive_type} value="1">已收定金</option>
<option {if 2 == $row.receive_type} value="2">已收全款</option>
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">收款金额:</label>
<div class="col-xs-12 col-sm-8">
<input data-rule="required" value="{$row['online_amount']}" name="row[online_amount]" class="form-control" type="number">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Area_id')}:</label>
<div class='col-xs-12 col-sm-8'>
<input id="c-city" data-rule="required" value="{$row.area_name}" class="form-control" data-toggle="city-picker" type="text" />
<input id="c-city" data-rule="required" value="{$row.area_name}" class="form-control" data-toggle="city-picker" type="text" value="{$row.address}" />
<input id="area_id" style="display: none" value="{$row.area_id}" class="form-control" name="row[area_id]" hidden type="text" value="" />
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Address')}:</label>
<div class="col-xs-12 col-sm-8">
<div class="myform-group">
<input id="c-address" data-rule="required"
class="form-control"
value="{$row.address}"
name="row[address]"
readonly
name="row[address]"
type="text">
<div class="btn btn-primary" style="margin-top: 20px" id="area_map"
<div class="btn btn-primary" id="area_map"
data-input-id="c-address"
data-lng-id="lng"
data-lat-id="lat">地图查找</div>
</div>
<input type="text" style="display: none"
value="{$row['lng']}"
name="row[lng]" id="lng" >
name="row[lng]" value="{$row.lng}" id="lng" >
<input type="text" style="display: none"
value="{$row['lat']}"
name="row[lat]" id="lat">
<input value="{$row['area_name']}" type="text" style="display: none" id="area_name">
name="row[lat]" value="{$row.lat}" id="lat">
<input type="text" style="display: none" id="area_name">
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">{:__('Coupons')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-coupon" data-live-search="true" title="请选择" data-rule="required" name="row[coupon_id]" class="form-control selectpicker show-tick">
<option {if $item['id'] == $row.coupon_id} selected {/if} selected value="0">不使用优惠</option>
{foreach $coupons as $item}
<option {if $item['id'] == $row.coupon_id} selected {/if} data-subtext="{$item['description']}" value="{$item['id']}">{$item['code']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">上门时间:</label>
<div class="col-xs-12 col-sm-8">
<input data-rule="required" value="{$row['plan_time']}" name="row[plan_time]" class="form-control datetimepicker">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Item_title')}:</label>
<div class="col-xs-12 col-sm-8">
<input type="text" id="item_id" value="{$row.item_title}" data-value="{$row.item_title}" class="zd-input__inner">
@ -137,19 +59,21 @@
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Detail')}:</label>
<div class="col-xs-12 col-sm-8">
<textarea id="c-detail" rows="4" style="width: 100%;resize: vertical" class="form-control" name="row[detail]">{$row.detail}</textarea>
<textarea id="c-detail" rows="8" style="width: 100%;resize: vertical" class="form-control" name="row[detail]">{$row.detail}</textarea>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">{:__('Remark')}:</label>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">上门时间:</label>
<div class="col-xs-12 col-sm-8">
<textarea id="c-remark" rows="4" style="width: 100%;resize: vertical" class="form-control" name="row[remark]">{$row.remark}</textarea>
<input data-rule="required" value="{$row['plan_time']}" name="row[plan_time]" class="form-control datetimepicker">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Images')}:</label>
<div class="col-xs-12 col-sm-8">
<div class="input-group">
@ -163,12 +87,107 @@
<ul class="row list-inline faupload-preview" id="p-images"></ul>
</div>
</div>
<div class="form-group col-xs-6 layer-footer">
</div>
<div class="col-md-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Source')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-source" data-live-search="true" title="请选择" data-rule="required" name="row[source]" class="form-control selectpicker show-tick">
{foreach $sources as $item}
<option {if $item['id'] == $row.source} selected {/if} data-subtext="{$item['ptitle']}" value="{$item['id']}">{$item['title']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">来源订单ID:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-source-id" value="{$row['source_uid']}" name="row[source_uid]" type="text" class="form-control">
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">派单方式:</label>
<div class="col-xs-12 col-sm-8">
<select data-live-search="true" value="" name="row[dispatch_type]" class="form-control selectpicker show-tick">
<option {if 1 == $row.dispatch_type} selected {/if} value="1">手动派单</option>
<option {if 2 == $row.dispatch_type} selected {/if} value="2">自动派单</option>
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">收款方式:</label>
<div class="col-xs-12 col-sm-8">
<select name="row[receive_type]" class="form-control selectpicker">
<option {if 1 == $row.receive_type} selected {/if} value="1">已收定金</option>
<option {if 2 == $row.receive_type} selected {/if} value="2">已收全款</option>
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">收款金额:</label>
<div class="col-xs-12 col-sm-8">
<input data-rule="required" value="{$row['online_amount']}" name="row[online_amount]" class="form-control" type="number">
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Coupons')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-coupon" data-live-search="true" title="请选择" data-rule="required" name="row[coupon_id]" class="form-control selectpicker show-tick">
<option {if 0 == $row.coupon_id} selected {/if} value="0">不使用优惠</option>
{foreach $coupons as $item}
<option {if $item['id'] == $row.coupon_id} selected {/if} data-subtext="{$item['description']}" value="{$item['id']}">{$item['code']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">录单员:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-users" data-live-search="true" title="不选择默认当前登陆账号" name="row[admin_id]" class="form-control selectpicker show-tick">
<option value="-1">不选择默认当前登陆账号</option>
{foreach $users as $item}
<option {if $item['id'] == $row.admin_id} selected {/if} value="{$item['id']}">{$item['nickname']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Remark')}:</label>
<div class="col-xs-12 col-sm-8">
<textarea id="c-remark" rows="8" style="width: 100%;resize: vertical" class="form-control" name="row[remark]">{$row.remark}</textarea>
</div>
</div>
<div class="form-group col-xs-12 layer-footer">
<label class="control-label col-xs-12 col-sm-3"></label>
<div class="col-xs-12 col-sm-8">
<button type="submit" data-id="submit" class="btn btn-primary btn-embossed disabled">复制</button>
</div>
</div>
</div>
</form>
</div>
</div>
@ -179,6 +198,9 @@
</script>
<style>
.myform-group{
display: flex;
}
.full-height {
height: 100vh;
width: 100vw;

View File

@ -6,101 +6,43 @@
<div class="form-area">
<div>
<div class="card-body">
<h5 class="card-title">录入订单</h5>
<form id="add-form" class="row" role="form" data-toggle="validator" method="POST" action="">
<div class="form-group col-xs-6">
<div class="col-md-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Customer')}:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-customer" value="{$row['customer']}" data-rule="required" class="form-control" name="row[customer]" type="text">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Tel')}:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-tel" data-rule="required" value="{$row['tel']}" class="form-control" name="row[tel]" type="number">
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">{:__('Source')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-source" data-live-search="true" title="请选择" data-rule="required" name="row[source]" class="form-control selectpicker show-tick">
{foreach $sources as $item}
<option {if $item['id'] == $row.source} selected {/if} data-subtext="{$item['ptitle']}" value="{$item['id']}">{$item['title']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">来源订单ID:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-source-id" value="{$row['source_uid']}" name="row[source_uid]" type="text" class="form-control">
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">录单员:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-users" data-live-search="true" title="不选择默认当前登陆账号" name="row[admin_id]" class="form-control selectpicker show-tick">
<option value="-1">不选择默认当前登陆账号</option>
{foreach $users as $item}
<option {if $item['id'] == $row.admin_id} selected {/if} value="{$item['id']}">{$item['nickname']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">派单方式:</label>
<div class="col-xs-12 col-sm-8">
<select data-live-search="true" value="" name="row[dispatch_type]" class="form-control selectpicker show-tick">
<option {if 1 == $row.dispatch_type} selected {/if} value="1">手动派单</option>
<option {if 2 == $row.dispatch_type} selected {/if} value="2">自动派单</option>
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">收款方式:</label>
<div class="col-xs-12 col-sm-8">
<select name="row[receive_type]" class="form-control selectpicker">
<option {if 1 == $row.receive_type} selected {/if} value="1">已收定金</option>
<option {if 2 == $row.receive_type} selected {/if} value="2">已收全款</option>
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">收款金额:</label>
<div class="col-xs-12 col-sm-8">
<input data-rule="required" value="{$row['online_amount']}" name="row[online_amount]" class="form-control" type="number">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Area_id')}:</label>
<div class='col-xs-12 col-sm-8'>
<input id="c-city" data-rule="required" value="{$row.area_name}" class="form-control" data-toggle="city-picker" type="text" value="{$row.address}" />
<input id="area_id" style="display: none" value="{$row.area_id}" class="form-control" name="row[area_id]" hidden type="text" value="" />
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Address')}:</label>
<div class="col-xs-12 col-sm-8">
<div class="myform-group">
<input id="c-address" data-rule="required"
class="form-control"
value="{$row.address}"
readonly
name="row[address]"
type="text">
<div class="btn btn-primary" style="margin-top: 20px" id="area_map"
<div class="btn btn-primary" id="area_map"
data-input-id="c-address"
data-lng-id="lng"
data-lat-id="lat">地图查找</div>
</div>
<input type="text" style="display: none"
name="row[lng]" id="lng" >
<input type="text" style="display: none"
@ -109,26 +51,7 @@
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">{:__('Coupons')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-coupon" data-live-search="true" title="请选择" data-rule="required" name="row[coupon_id]" class="form-control selectpicker show-tick">
<option {if $item['id'] == $row.coupon_id} selected {/if} value="0">不使用优惠</option>
{foreach $coupons as $item}
<option {if $item['id'] == $row.coupon_id} selected {/if} data-subtext="{$item['description']}" value="{$item['id']}">{$item['code']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">上门时间:</label>
<div class="col-xs-12 col-sm-8">
<input data-rule="required" value="{$row['plan_time']}" name="row[plan_time]" class="form-control datetimepicker">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Item_title')}:</label>
<div class="col-xs-12 col-sm-8">
<input type="text" id="item_id" value="{$row.item_title}" data-value="{$row.item_title}" class="zd-input__inner">
@ -136,19 +59,21 @@
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Detail')}:</label>
<div class="col-xs-12 col-sm-8">
<textarea id="c-detail" rows="4" style="width: 100%;resize: vertical" class="form-control" name="row[detail]">{$row.detail}</textarea>
<textarea id="c-detail" rows="8" style="width: 100%;resize: vertical" class="form-control" name="row[detail]">{$row.detail}</textarea>
</div>
</div>
<div class="form-group col-xs-6">
<label class="control-label col-xs-12 col-sm-3">{:__('Remark')}:</label>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">上门时间:</label>
<div class="col-xs-12 col-sm-8">
<textarea id="c-remark" rows="4" style="width: 100%;resize: vertical" class="form-control" name="row[remark]">{$row.remark}</textarea>
<input data-rule="required" value="{$row['plan_time']}" name="row[plan_time]" class="form-control datetimepicker">
</div>
</div>
<div class="form-group col-xs-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Images')}:</label>
<div class="col-xs-12 col-sm-8">
<div class="input-group">
@ -162,12 +87,103 @@
<ul class="row list-inline faupload-preview" id="p-images"></ul>
</div>
</div>
<div class="form-group col-xs-6 layer-footer">
</div>
<div class="col-md-6">
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Source')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-source" data-live-search="true" title="请选择" data-rule="required" name="row[source]" class="form-control selectpicker show-tick">
{foreach $sources as $item}
<option {if $item['id'] == $row.source} selected {/if} data-subtext="{$item['ptitle']}" value="{$item['id']}">{$item['title']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">来源订单ID:</label>
<div class="col-xs-12 col-sm-8">
<input id="c-source-id" value="{$row['source_uid']}" name="row[source_uid]" type="text" class="form-control">
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">派单方式:</label>
<div class="col-xs-12 col-sm-8">
<select data-live-search="true" value="" name="row[dispatch_type]" class="form-control selectpicker show-tick">
<option {if 1 == $row.dispatch_type} selected {/if} value="1">手动派单</option>
<option {if 2 == $row.dispatch_type} selected {/if} value="2">自动派单</option>
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">收款方式:</label>
<div class="col-xs-12 col-sm-8">
<select name="row[receive_type]" class="form-control selectpicker">
<option {if 1 == $row.receive_type} selected {/if} value="1">已收定金</option>
<option {if 2 == $row.receive_type} selected {/if} value="2">已收全款</option>
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">收款金额:</label>
<div class="col-xs-12 col-sm-8">
<input data-rule="required" value="{$row['online_amount']}" name="row[online_amount]" class="form-control" type="number">
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Coupons')}:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-coupon" data-live-search="true" title="请选择" data-rule="required" name="row[coupon_id]" class="form-control selectpicker show-tick">
<option {if 0 == $row.coupon_id} selected {/if} value="0">不使用优惠</option>
{foreach $coupons as $item}
<option {if $item['id'] == $row.coupon_id} selected {/if} data-subtext="{$item['description']}" value="{$item['id']}">{$item['code']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">录单员:</label>
<div class="col-xs-12 col-sm-8">
<select id="c-users" data-live-search="true" title="不选择默认当前登陆账号" name="row[admin_id]" class="form-control selectpicker show-tick">
<option value="-1">不选择默认当前登陆账号</option>
{foreach $users as $item}
<option {if $item['id'] == $row.admin_id} selected {/if} value="{$item['id']}">{$item['nickname']}</option>
{/foreach}
</select>
</div>
</div>
<div class="form-group col-xs-12">
<label class="control-label col-xs-12 col-sm-3">{:__('Remark')}:</label>
<div class="col-xs-12 col-sm-8">
<textarea id="c-remark" rows="8" style="width: 100%;resize: vertical" class="form-control" name="row[remark]">{$row.remark}</textarea>
</div>
</div>
<div class="form-group col-xs-12 layer-footer">
<label class="control-label col-xs-12 col-sm-3"></label>
<div class="col-xs-12 col-sm-8">
<button type="submit" data-id="submit" class="btn btn-primary btn-embossed disabled">修改</button>
</div>
</div>
</div>
</form>
</div>
</div>
@ -178,6 +194,9 @@
</script>
<style>
.myform-group{
display: flex;
}
.full-height {
height: 100vh;
width: 100vw;

View File

@ -69,6 +69,7 @@
background-color: #388E3C; /* Bootstrap的绿色 */
color: #fff;
}
.
.button-copy:hover {
background-color: #2C6B2F;
@ -118,5 +119,8 @@
background-color: #546E7A;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.text-my_dispatch{
color: #0011ff;
}
</style>

View File

@ -17,7 +17,7 @@
<div class="widget-body no-padding">
<div id="toolbar" class="toolbar">
<a href="javascript:;" class="btn btn-primary btn-refresh" title="{:__('Refresh')}" ><i class="fa fa-refresh"></i> </a>
<a href="javascript:;" class="btn btn-success btn-add {:$auth->check('orders/abnormal/add')?'':'hide'}" title="{:__('Add')}" ><i class="fa fa-plus"></i> {:__('Add')}</a>
<!-- <a href="javascript:;" class="btn btn-success btn-add {:$auth->check('orders/abnormal/add')?'':'hide'}" title="{:__('Add')}" ><i class="fa fa-plus"></i> {:__('Add')}</a>-->
<!-- <a href="javascript:;" class="btn btn-success btn-edit btn-disabled disabled {:$auth->check('orders/abnormal/edit')?'':'hide'}" title="{:__('Edit')}" ><i class="fa fa-pencil"></i> {:__('Edit')}</a>-->
<!-- <a href="javascript:;" class="btn btn-danger btn-del btn-disabled disabled {:$auth->check('orders/abnormal/del')?'':'hide'}" title="{:__('Delete')}" ><i class="fa fa-trash"></i> {:__('Delete')}</a>-->
<!-- -->

View File

@ -12,9 +12,9 @@
<div class="col-xs-12 col-sm-8">
<select id="c-source" data-live-search="true" title="请选择" data-rule="required" name="row[type]"
class="form-control">
<option selected value="1">报错类型</option>
<option selected value="1">订单报错类型</option>
<option value="2">订单取消类型</option>
<option value="3">派单取消类型</option>
<option value="3">订单异常类型</option>
</select>
</div>
</div>

View File

@ -1,6 +1,12 @@
<div class="panel panel-default panel-intro">
{:build_heading()}
<div class="panel-heading">
<ul class="nav nav-tabs" data-field="type">
<li class="{:$Think.get.type === (string)1 ? 'active' : ''}"><a href="#t-1" data-value="1" data-toggle="tab">订单异常类型</a></li>
<li class="{:$Think.get.type === (string)2 ? 'active' : ''}"><a href="#t-2" data-value="2" data-toggle="tab">订单取消类型</a></li>
<li class="{:$Think.get.type === (string)2 ? 'active' : ''}"><a href="#t-3" data-value="3" data-toggle="tab">订单报错类型</a></li>
</ul>
</div>
<div class="panel-body">
<div id="myTabContent" class="tab-content">
<div class="tab-pane fade active in" id="one">

View File

@ -28,15 +28,17 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'cascader'], function
订单详情
录单员: ${data.user.nickname}
订单编号: ${data.order_no}
服务名称: ${data.item_title}
客户姓名: ${data.customer}
客户电话: ${data.tel}
上门时间: ${data.plan_time}
优惠码: ${data.coupon?.description||'无'}
订单状态: ${data.status_text}
地域: ${data.area.merge_name}
详细地址: ${data.address}
订单详情: ${data.detail}
订单备注: ${data.remark}
派单方式: ${data.dispatch_type === 1 ? '手动派单' : '自动派单'}
收款方式: ${data.collect_text || '未收款'}
订单来源: ${data.source_shop}
服务名称: ${data.item_title}
收款方式: ${data.receive_type === 1 ? '已收定金' : '已收全款'}
请查收以上订单信息`;
@ -71,6 +73,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'cascader'], function
fixedRightNumber: 1,
fixedNumber: 3,
fixedColumns: true,
renderDefault:true,
columns: [
[
{checkbox: true},
@ -92,7 +95,11 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'cascader'], function
/*"-20": __('Status -20'),
"-30": __('Status -30')*/
},
formatter: Table.api.formatter.status
defaultValue:10,
formatter: Table.api.formatter.status,
custom:{
"10":"my_dispatch"
}
},
{
field: 'dispatch_type',
@ -349,7 +356,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'cascader'], function
url: 'aftersales/aftersale/add',
dropdown: "更多",
visible: function (row) {
if (row.aftersale_btn==true) {
if (row.status!==-10) {
return true;
}
return false;
@ -462,12 +469,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form', 'cascader'], function
Controller.api.bindevent();
},
addabnormal: function () {
console.log('abnormal');
Form.api.bindevent($("#add-form"), null, null, function (data) {
Form.api.submit($("#add-form"));
// console.log(data);
// return false;
});
Form.api.bindevent($("#add-form"));
},
delete: function () {
Form.api.bindevent($("form[role=form]"));

View File

@ -38,6 +38,13 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
[
{field: 'id', title: __('Id'),operate: false},
{field: 'order.order_no', title: __('Order.order_no'), operate: 'LIKE'},
{field: 'level', title: '紧急程度',
searchList: {
"1": '一般紧急',
"2": '紧急',
"3": '非常紧急',
},
formatter: Table.api.formatter.label},
{field: 'abnormal_id', title: __('Abnormal_id'),visible:false},
{field: 'abnormal_title', title: __('Abnormal_title'), operate: false},
{field: 'status', title: __('Status'), searchList: {"0":__('Status 0'),"1":__('Status 1'),"-1":__('Status -1')}, formatter: Table.api.formatter.status},

View File

@ -1007,7 +1007,7 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
$.each(dropdowns, function (i, j) {
dropdownHtml.push('<div class="btn-group"><button type="button" class="btn btn-primary dropdown-toggle btn-xs" data-toggle="dropdown">' + i + '</button><button type="button" class="btn btn-primary dropdown-toggle btn-xs" data-toggle="dropdown"><span class="caret"></span></button><ul class="dropdown-menu dropdown-menu-right"><li>' + j.join('</li><li>') + '</li></ul></div>');
});
html.unshift(dropdownHtml.join(' '));
html.push(dropdownHtml.join(' '));
}
return html.join(' ');
},