提交 d8eb911d 编写于 作者: D devil

新增公共详情模块,去除积分赠送功能

上级 400ad10a
......@@ -78,6 +78,35 @@ class Admin extends Common
return $this->fetch();
}
/**
* 详情
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
* @datetime 2019-08-05T08:21:54+0800
*/
public function Detail()
{
if(!empty($this->data_request['id']))
{
// 条件
$where = [
['id', '=', intval($this->data_request['id'])],
];
// 获取列表
$data_params = [
'm' => 0,
'n' => 1,
'where' => $where,
];
$ret = AdminService::AdminList($data_params);
$data = (empty($ret['data']) || empty($ret['data'][0])) ? [] : $ret['data'][0];
$this->assign('data', $data);
}
return $this->fetch();
}
/**
* [SaveInfo 管理员添加/编辑页面]
* @author Devil
......
......@@ -108,9 +108,6 @@ class Goods extends Common
$ret = GoodsService::GoodsList($data_params);
$data = (empty($ret['data']) || empty($ret['data'][0])) ? [] : $ret['data'][0];
$this->assign('data', $data);
// 是否上下架
$this->assign('common_is_shelves_list', lang('common_is_shelves_list'));
}
return $this->fetch();
}
......@@ -232,35 +229,13 @@ class Goods extends Common
}
/**
* [StatusShelves 上下架状态更新]
* @author Devil
* @blog http://gong.gg/
* @version 0.0.1
* @datetime 2017-01-12T22:23:06+0800
*/
public function StatusShelves()
{
// 是否ajax
if(!IS_AJAX)
{
return $this->error('非法访问');
}
// 开始操作
$params = $this->data_post;
$params['admin'] = $this->admin;
$params['field'] = 'is_shelves';
return GoodsService::GoodsStatusUpdate($params);
}
/**
* [StatusHomeRecommended 是否首页推荐状态更新]
* 状态更新
* @author Devil
* @blog http://gong.gg/
* @version 0.0.1
* @datetime 2017-01-12T22:23:06+0800
*/
public function StatusHomeRecommended()
public function StatusUpdate()
{
// 是否ajax
if(!IS_AJAX)
......@@ -271,7 +246,6 @@ class Goods extends Common
// 开始操作
$params = $this->data_post;
$params['admin'] = $this->admin;
$params['field'] = 'is_home_recommended';
return GoodsService::GoodsStatusUpdate($params);
}
}
......
......@@ -40,7 +40,6 @@ class Admin
// 基础配置
'base' => [
'key_field' => 'id',
'status_field' => 'status',
'is_search' => 1,
'search_url' => MyUrl('admin/admin/index'),
'is_delete' => 1,
......@@ -55,10 +54,9 @@ class Admin
'checked_text' => '反选',
'not_checked_text' => '全选',
'align' => 'center',
'not_show_data' => [1],
'not_show_key' => 'id',
'width' => 80,
'is_not_show' => 1,
'not_data' => [1],
'not_key' => 'id',
],
[
'label' => '管理员',
......
......@@ -51,6 +51,7 @@ class Goods
'is_delete' => 1,
'delete_url' => MyUrl('admin/goods/delete'),
'delete_key' => 'ids',
'detail_title' => '基础信息',
],
// 表单配置
'form' => [
......@@ -69,7 +70,6 @@ class Goods
'width' => 105,
'search_config' => [
'form_type' => 'input',
'form_name' => 'id',
'where_type' => '=',
],
],
......@@ -106,7 +106,7 @@ class Goods
],
],
[
'label' => '库存量',
'label' => '库存量',
'view_type' => 'field',
'view_key' => ['inventory', 'inventory_unit'],
'view_key_join' => ' ',
......@@ -119,7 +119,7 @@ class Goods
'label' => '上下架',
'view_type' => 'status',
'view_key' => 'is_shelves',
'post_url' => MyUrl('admin/goods/statusshelves'),
'post_url' => MyUrl('admin/goods/statusupdate'),
'is_form_su' => 1,
'align' => 'center',
'search_config' => [
......@@ -135,7 +135,22 @@ class Goods
'label' => '首页推荐',
'view_type' => 'status',
'view_key' => 'is_home_recommended',
'post_url' => MyUrl('admin/goods/statushomerecommended'),
'post_url' => MyUrl('admin/goods/statusupdate'),
'align' => 'center',
'search_config' => [
'form_type' => 'select',
'where_type' => 'in',
'data' => lang('common_is_text_list'),
'data_key' => 'id',
'data_name' => 'name',
'is_multiple' => 1,
],
],
[
'label' => '扣减库存',
'view_type' => 'status',
'view_key' => 'is_deduction_inventory',
'post_url' => MyUrl('admin/goods/statusupdate'),
'align' => 'center',
'search_config' => [
'form_type' => 'select',
......@@ -152,7 +167,6 @@ class Goods
'view_key' => 'model',
'search_config' => [
'form_type' => 'input',
'form_name' => 'model',
'where_type' => 'like',
],
],
......@@ -197,6 +211,30 @@ class Goods
'is_multiple' => 1,
],
],
[
'label' => '单次最低起购数量',
'view_type' => 'field',
'view_key' => 'buy_min_number',
'search_config' => [
'form_type' => 'section',
],
],
[
'label' => '单次最大购买数量',
'view_type' => 'field',
'view_key' => 'buy_max_number',
'search_config' => [
'form_type' => 'section',
],
],
[
'label' => '访问次数',
'view_type' => 'field',
'view_key' => 'access_count',
'search_config' => [
'form_type' => 'section',
],
],
[
'label' => '创建时间',
'view_type' => 'field',
......
......@@ -46,6 +46,7 @@ class Order
'key_field' => 'id',
'is_search' => 1,
'search_url' => MyUrl('admin/order/index'),
'detail_title' => '基础信息',
],
// 表单配置
'form' => [
......@@ -74,6 +75,7 @@ class Order
'view_type' => 'module',
'view_key' => 'order/module/info',
'grid_size' => 'lg',
'is_detail' => 0,
'search_config' => [
'form_type' => 'input',
'form_name' => 'id',
......@@ -102,6 +104,7 @@ class Order
'view_type' => 'module',
'view_key' => 'order/module/address',
'grid_size' => 'sm',
'is_detail' => 0,
'search_config' => [
'form_type' => 'input',
'form_name' => 'id',
......@@ -115,6 +118,7 @@ class Order
'view_type' => 'module',
'view_key' => 'order/module/take',
'width' => 125,
'is_detail' => 0,
'search_config' => [
'form_type' => 'input',
'form_name' => 'id',
......@@ -227,6 +231,14 @@ class Order
'form_type' => 'section',
],
],
[
'label' => '购买总数',
'view_type' => 'field',
'view_key' => 'buy_number_count',
'search_config' => [
'form_type' => 'section',
],
],
[
'label' => '增加金额(元)',
'view_type' => 'field',
......@@ -259,6 +271,16 @@ class Order
'is_multiple' => 1,
],
],
[
'label' => '用户备注',
'view_type' => 'field',
'view_key' => 'user_note',
'width' => 120,
'search_config' => [
'form_type' => 'select',
'where_type' => 'like',
],
],
[
'label' => '扩展信息',
'view_type' => 'module',
......@@ -299,6 +321,54 @@ class Order
'view_key' => 'order/module/aftersale',
'grid_size' => 'sm',
],
[
'label' => '确认时间',
'view_type' => 'field',
'view_key' => 'confirm_time',
'search_config' => [
'form_type' => 'datetime',
],
],
[
'label' => '支付时间',
'view_type' => 'field',
'view_key' => 'pay_time',
'search_config' => [
'form_type' => 'datetime',
],
],
[
'label' => '发货时间',
'view_type' => 'field',
'view_key' => 'delivery_time',
'search_config' => [
'form_type' => 'datetime',
],
],
[
'label' => '完成时间',
'view_type' => 'field',
'view_key' => 'collect_time',
'search_config' => [
'form_type' => 'datetime',
],
],
[
'label' => '取消时间',
'view_type' => 'field',
'view_key' => 'cancel_time',
'search_config' => [
'form_type' => 'datetime',
],
],
[
'label' => '关闭时间',
'view_type' => 'field',
'view_key' => 'close_time',
'search_config' => [
'form_type' => 'datetime',
],
],
[
'label' => '创建时间',
'view_type' => 'field',
......
<!-- 继承公共的 form -->
{{extend name="public/module/detail" /}}
\ No newline at end of file
<!-- 操作栏 -->
{{if $module_data['id'] eq 1}}
<span class="cr-ccc">不可操作</span>
{{else /}}
<button type="button" class="am-btn am-btn-default am-btn-xs am-radius am-btn-block submit-popup" data-url="{{:MyUrl('admin/admin/detail', ['id'=>$module_data['id']])}}">
<i class="am-icon-eye"></i>
<span>详情</span>
</button>
<!-- 非管理员不能操作 -->
{{if $module_data['id'] neq 1 or $module_data['id'] eq $admin['id']}}
<a class="am-btn am-btn-secondary am-btn-xs am-radius am-btn-block" href="{{:MyUrl('admin/admin/saveinfo', array('id'=>$module_data['id']))}}">
<i class="am-icon-edit"></i>
<span>编辑</span>
</a>
{{if $module_data['id'] neq $admin['id']}}
<button type="button" class="am-btn am-btn-danger am-btn-xs am-radius am-btn-block submit-delete" data-url="{{:MyUrl('admin/admin/delete')}}" data-id="{{$module_data.id}}" data-key="ids">
<i class="am-icon-trash-o"></i>
<span>删除</span>
</button>
{{/if}}
{{/if}}
{{if $module_data['id'] neq 1 and $module_data['id'] neq $admin['id']}}
<button type="button" class="am-btn am-btn-danger am-btn-xs am-radius am-btn-block submit-delete" data-url="{{:MyUrl('admin/admin/delete')}}" data-id="{{$module_data.id}}" data-key="ids">
<i class="am-icon-trash-o"></i>
<span>删除</span>
</button>
{{/if}}
\ No newline at end of file
<!-- 继承公共的 detail -->
<!-- 继承公共的 form -->
{{extend name="public/module/detail" /}}
<!-- 详情内容 -->
{{if !empty($data)}}
{{block name="detail_data"}}
<dl class="dl-content">
<dt>标题名称</dt>
<dd>
<div class="am-nbfc">
<a href="{{$data.goods_url}}" target="_blank" title="{{$data.title}}">
<img src="{{$data['images']}}" class="am-img-thumbnail am-radius am-margin-right-xs am-fl" width="60" height="60" />
</a>
<a href="{{$data.goods_url}}" target="_blank" title="{{$data.title}}" {{if !empty($data['title_color'])}} style="color:{{$data.title_color}};" {{/if}} class="am-nowrap-initial">{{$data.title}}</a>
<!-- 重写数据模块 -->
{{block name="detail_data"}}
<!-- 父级内容 -->
{__block__}
<!-- 电脑端详情 -->
<div class="am-panel am-panel-default">
<div class="am-panel-hd">电脑端详情</div>
<div class="am-panel-bd">
<div class="am-scrollable-vertical am-nowrap-initial">
{{$data.content_web|raw}}
</div>
</div>
</div>
<!-- 虚拟商品展示数据 -->
<div class="am-panel am-panel-default">
<div class="am-panel-hd">虚拟商品展示数据</div>
<div class="am-panel-bd">
{{if !empty($data['fictitious_goods_value'])}}
<div class="am-scrollable-vertical am-nowrap-initial">
{{$data.fictitious_goods_value|raw}}
</div>
</dd>
<dt>商品简述</dt>
<dd class="am-nowrap-initial">{{$data.simple_desc}}</dd>
<dt>销售价格(元)</dt>
<dd>
{{$data.price}}
{{if !empty($data['original_price']) and $data['original_price'] gt 0}}
<br /><span class="am-badge am-radius">原价 {{$data.original_price}}</span>
{{/if}}
</dd>
<dt>上下架</dt>
<dd>{{$common_is_shelves_list[$data['is_shelves']]['name']}}</dd>
<dt>库存数量</dt>
<dd>{{$data.inventory}} {{$data.inventory_unit}}</dd>
<dt>最低起购数量</dt>
<dd>{{$data.buy_min_number}} {{$data.inventory_unit}}</dd>
<dt>单次最大购买数量</dt>
<dd>
{{if $data['buy_max_number'] eq 0}}
<span class="cr-ddd">不限</span>
{{else /}}
{{$data.buy_max_number}} {{$data.inventory_unit}}
{{/if}}
</dd>
<dt>商品型号</dt>
<dd>{{$data.model}}</dd>
<dt>品牌</dt>
<dd>{{$data.brand_name}}</dd>
<dt>生产地</dt>
<dd>{{$data.place_origin_name}}</dd>
<dt>商品分类</dt>
<dd>{{$data.category_text}}</dd>
<dt>购买赠送积分</dt>
<dd>{{$data.give_integral}}</dd>
<dt>扣减库存</dt>
<dd>{{:lang('common_is_text_list')[$data['is_deduction_inventory']]['name']}}</dd>
<dt>访问次数</dt>
<dd>{{$data.access_count}}</dd>
<dt>电脑端详情</dt>
<dd>
<div class="am-scrollable-vertical am-nowrap-initial">{{$data.content_web|raw}}</div>
</dd>
<dt>虚拟商品展示数据</dt>
<dd>
<div class="am-scrollable-vertical am-nowrap-initial">{{$data.fictitious_goods_value|raw}}</div>
</dd>
<dt>SEO标题</dt>
<dd>{{$data.seo_title}}</dd>
<dt>SEO关键字</dt>
<dd>{{$data.seo_keywords}}</dd>
<dt>SEO描述</dt>
<dd>{{$data.seo_desc}}</dd>
<dt>创建时间</dt>
<dd>{{$data.add_time}}</dd>
<dt>更新时间</dt>
<dd>{{$data.upd_time}}</dd>
</dl>
{{/block}}
{{/if}}
\ No newline at end of file
{{else /}}
<div class="table-no"><i class="am-icon-warning"></i> 没有相关数据</div>
{{/if}}
</div>
</div>
<!-- SEO信息 -->
<div class="am-panel am-panel-default">
<div class="am-panel-hd">SEO信息</div>
<div class="am-panel-bd">
{{if !empty($data)}}
<dl class="dl-content">
<dt>SEO标题</dt>
<dd>{{$data.seo_title}}</dd>
<dt>SEO关键字</dt>
<dd>{{$data.seo_keywords}}</dd>
<dt>SEO描述</dt>
<dd>{{$data.seo_desc}}</dd>
</dl>
{{else /}}
<div class="table-no"><i class="am-icon-warning"></i> 没有相关数据</div>
{{/if}}
</div>
</div>
{{/block}}
\ No newline at end of file
......@@ -129,10 +129,6 @@
<label>库存单位</label>
<input type="text" name="inventory_unit" placeholder="库存单位" minlength="1" maxlength="6" data-validation-message="库存单位格式 1~6 个字符" class="am-radius" {{if !empty($data)}} value="{{$data.inventory_unit}}"{{/if}} required />
</div>
<div class="am-form-group">
<label>购买赠送积分</label>
<input type="number" name="give_integral" placeholder="购买赠送积分" max="100000000" data-validation-message="购买赠送积分 0~100000000" class="am-radius" value="{{if empty($data)}}0{{else /}}{{$data.give_integral}}{{/if}}" required />
</div>
<div class="am-form-group">
<label>最低起购数量<span class="am-form-group-label-tips">默认数值 1</span></label>
<input type="number" name="buy_min_number" placeholder="最低起购数量" min="1" max="100000000" data-validation-message="最低起购数量 1~100000000" class="am-radius" value="{{if empty($data)}}1{{else /}}{{$data.buy_min_number}}{{/if}}" required />
......
<!-- 继承公共的 detail -->
{{extend name="public/module/detail" /}}
<!-- 详情内容 -->
{{if !empty($data)}}
{{block name="detail_data"}}
<dl class="dl-content">
<dt>商品信息</dt>
<div class="am-nbfc">
{{if !empty($data['goods'])}}
<div class="am-nbfc">
<a href="{{$data.goods.goods_url}}" target="_blank">
<img src="{{$data.goods.images}}" alt="{{$data.goods.title}}" class="am-img-thumbnail am-radius am-align-left am-margin-right-xs am-fl" width="60" height="60" />
</a>
<a class="am-text-top am-nowrap-initial" href="{{$data.goods.goods_url}}" target="_blank">{{$data.goods.title}}</a>
</div>
<p>{{$price_symbol}}{{$data.goods.price}}</p>
{{else /}}
商品信息异常
{{/if}}
</div>
</dd>
<dt>用户信息</dt>
<dd class="user-info">
{{if !empty($data['user'])}}
<img src="{{$data.user.avatar}}" alt="{{$data.user.user_name_view}}" class="am-img-thumbnail am-radius am-align-left am-margin-right-xs am-margin-bottom-0" width="35" height="35" />
<ul class="user-base">
<li>名称:{{if empty($data['user']['username'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.username}}{{/if}}</li>
<li>昵称:{{if empty($data['user']['nickname'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.nickname}}{{/if}}</li>
<li>手机:{{if empty($data['user']['mobile'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.mobile}}{{/if}}</li>
<li>邮箱:{{if empty($data['user']['email'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.email}}{{/if}}</li>
</ul>
{{else /}}
用户信息异常
{{/if}}
</dd>
<dt>业务类型</dt>
<dd>{{$data.business_type_text}}</dd>
<dt>评论内容</dt>
<dd>
<div class="am-scrollable-vertical am-nowrap-initial">{{$data.content|raw}}</div>
</dd>
<dt>评论图片</dt>
<dd>
{{if !empty($data['images'])}}
{{foreach $data.images as $img}}
<a href="{{$img}}" target="_blank">
<img src="{{$img}}" class="am-img-thumbnail" width="80" height="80" />
</a>
{{/foreach}}
{{/if}}
</dd>
<dt>评分</dt>
<dd>
<span class="am-badge am-radius {{$common_goods_comments_rating_list[$data['rating']]['badge']}}">{{$data.rating_text}}</span>
</dd>
<dt>是否匿名</dt>
<dd>{{$data.is_anonymous_text}}</dd>
<dt>是否显示</dt>
<dd>{{if empty($data['is_show_text'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.is_show_text}}{{/if}}</dd>
<dt>是否回复</dt>
<dd>{{$data.is_reply_text}}</dd>
<dt>回复内容</dt>
<dd>
{{if $data['is_reply'] eq 1 and !empty($data['reply'])}}
<div class="am-scrollable-vertical am-nowrap-initial">{{$data.reply|raw}}</div>
{{else /}}
<span class="cr-ddd">未回复</span>
{{/if}}
</dd>
<dt>回复时间</dt>
<dd>{{$data.reply_time_time}}</dd>
<dt>更新时间</dt>
<dd>{{$data.upd_time_time}}</dd>
<dt>创建时间</dt>
<dd>{{$data.add_time_time}}</dd>
</dl>
{{/block}}
{{/if}}
\ No newline at end of file
<!-- 继承公共的 form -->
{{extend name="public/module/detail" /}}
\ No newline at end of file
<!-- 继承公共的 detail -->
<!-- 继承公共的 form -->
{{extend name="public/module/detail" /}}
<!-- 详情内容 -->
{{if !empty($data)}}
{{block name="detail_data"}}
<dl class="dl-content">
<dt>订单号</dt>
<dd>
{{if empty($data['order_no'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.order_no}}{{/if}}
</dd>
<dt>订单模式</dt>
<dd>
{{if empty($data['order_model_name'])}}
<span class="cr-ddd">未知</span>
{{else /}}
<span class="am-badge am-badge-primary am-radius" title="订单模式">{{$data.order_model_name}}</span>
{{/if}}
</dd>
<dt>客户端类型</dt>
<dd>
{{if empty($data['client_type_name'])}}
<span class="cr-ddd">未知</span>
<!-- 重写数据模块 -->
{{block name="detail_data"}}
<!-- 父级内容 -->
{__block__}
<!-- 订单商品 -->
<div class="am-panel am-panel-default">
<div class="am-panel-hd">订单商品</div>
<div class="am-panel-bd">
{{if !empty($data['items'])}}
{{:ModuleInclude('order/module/info', $data, ['form_request_type'=>'detail'])}}
{{else /}}
<div class="table-no"><i class="am-icon-warning"></i> 没有相关数据</div>
{{/if}}
</div>
</div>
<!-- 销售订单 - 收货地址 -->
{{if $data['order_model'] eq 0}}
<div class="am-panel am-panel-default">
<div class="am-panel-hd">收货地址</div>
<div class="am-panel-bd">
{{if !empty($data['address_data'])}}
<p>
<span>收件人:</span>
<span>{{$data.address_data.name}}</span>
</p>
<p>
<span>收件电话:</span>
<span>{{$data.address_data.tel}}</span>
</p>
<p>
<span>详细地址:</span>
<span>{{$data.address_data.province_name}}</span>
<span>{{$data.address_data.city_name}}</span>
<span>{{$data.address_data.county_name}}</span>
<span>{{$data.address_data.address}}</span>
</p>
{{else /}}
<span class="am-badge am-badge-secondary am-radius" title="客户端类型">{{$data.client_type_name}}</span>
<div class="table-no"><i class="am-icon-warning"></i> 没有相关数据</div>
{{/if}}
</dd>
<dt>基础信息</dt>
<dd>
{{foreach $data.items as $vs}}
<div class="am-nbfc am-padding-vertical-xs">
<div class="base am-nbfc">
<a href="{{:MyUrl('index/goods/index', ['id'=>$vs['goods_id']])}}" target="_blank" title="{{$vs.title}}">
<img src="{{$vs['images']}}" class="am-img-thumbnail am-radius am-margin-right-xs am-fl" width="60" height="60" />
</a>
<a href="{{:MyUrl('index/goods/index', ['id'=>$vs['goods_id']])}}" target="_blank" title="{{$vs.title}}" {{if !empty($vs['title_color'])}} style="color:{{$vs.title_color}};" {{/if}} class="am-nowrap-initial">{{$vs.title}}</a>
</div>
<div class="other">
{{if !empty($vs['model'])}}
<span class="am-fl am-text-xs">
型号:{{$vs.model}}
</span>
{{/if}}
{{if !empty($vs['spec_text'])}}
<span class="am-fl am-text-xs">
规格:{{$vs.spec_text}}
</span>
{{/if}}
{{if !empty($vs['spec_weight']) and $vs['spec_weight'] gt 0}}
<span class="am-fl am-text-xs">
重量:{{$vs.spec_weight}}
</span>
{{/if}}
{{if !empty($vs['spec_coding'])}}
<span class="am-fl am-text-xs">
编码:{{$vs.spec_coding}}
</span>
{{/if}}
<span class="am-fr">{{$vs.price}}x{{$vs.buy_number}}</span>
{{if $vs['returned_quantity'] gt 0 or $vs['refund_price'] gt 0}}
<span class="am-text-danger am-fr am-margin-right-lg">已退 {{$vs.returned_quantity}} / {{$vs.refund_price}}</span>
{{/if}}
</div>
<hr data-am-widget="divider" class="am-divider am-divider-dashed am-margin-vertical-0" />
</div>
</div>
{{/if}}
<!-- 自提订单 - 取货信息 -->
{{if $data['order_model'] eq 2}}
<div class="am-panel am-panel-default">
<div class="am-panel-hd">取货信息</div>
<div class="am-panel-bd">
{{if !empty($data['address_data'])}}
<!-- 取货地址 -->
<div class="am-alert am-alert-warning">
<p>
<span>联系信息:</span>
<span>{{$data.address_data.name}}</span>
<span> / </span>
<span>{{$data.address_data.tel}}</span>
</p>
<p>
<span>详细地址:</span>
<span>{{$data.address_data.province_name}}</span>
<span>{{$data.address_data.city_name}}</span>
<span>{{$data.address_data.county_name}}</span>
<span>{{$data.address_data.address}}</span>
</p>
</div>
{{/foreach}}
<div class="am-margin-top-sm">{{$data.describe}}</div>
</dd>
<dt>用户信息</dt>
<dd class="user-info">
{{if !empty($data['user'])}}
<img src="{{$data.user.avatar}}" alt="{{$data.user.user_name_view}}" class="am-img-thumbnail am-radius am-align-left am-margin-right-xs am-margin-bottom-0" width="35" height="35" />
<ul class="user-base">
<li>名称:{{if empty($data['user']['username'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.username}}{{/if}}</li>
<li>昵称:{{if empty($data['user']['nickname'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.nickname}}{{/if}}</li>
<li>手机:{{if empty($data['user']['mobile'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.mobile}}{{/if}}</li>
<li>邮箱:{{if empty($data['user']['email'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.email}}{{/if}}</li>
</ul>
<!-- 取货码 -->
{{:ModuleInclude('order/module/take', $data)}}
{{else /}}
用户信息异常
<div class="table-no"><i class="am-icon-warning"></i> 没有相关数据</div>
{{/if}}
</dd>
{{if in_array($data['order_model'], [0,2])}}
<dt>地址信息</dt>
<dd>
{{if !empty($data['address_data'])}}
{{$data.address_data.name}}<br />
{{$data.address_data.tel}}<br />
{{$data.address_data.province_name}}
{{$data.address_data.city_name}}
{{$data.address_data.county_name}}
{{$data.address_data.address}}
{{else /}}
<span class="cr-ddd">无信息</span>
{{/if}}
</dd>
{{/if}}
{{if $data['order_model'] eq 2}}
<dt>取货信息</dt>
<dd>
{{if !empty($data['extraction_data'])}}
<p>
<span>取货码:</span>
{{if empty($data['extraction_data']['code'])}}
<span class="am-text-danger">取货码不存在、请联系管理员</span>
{{else /}}
<span class="am-badge am-badge-success am-radius">{{$data.extraction_data.code}}</span>
{{/if}}
</p>
{{if !empty($data['extraction_data']['images'])}}
<p class="am-margin-top-xs">
<img class="am-img-thumbnail" src="{{$data.extraction_data.images}}" alt="取货码" width="150" height="150" />
</p>
{{/if}}
{{else /}}
<span class="cr-ddd">无信息</span>
{{/if}}
</dd>
{{/if}}
{{if $data['order_model'] eq 3}}
<dt>密钥信息</dt>
<dd>
</div>
</div>
{{/if}}
<!-- 虚拟订单 - 密钥信息 -->
{{if $data['order_model'] eq 3}}
<div class="am-panel am-panel-default">
<div class="am-panel-hd">密钥信息</div>
<div class="am-panel-bd">
{{if !empty($data['items'])}}
<ul class="am-list am-margin-bottom-0 fictitious-container">
{{foreach $data.items as $goods}}
<li class="am-g am-list-item-desced am-list-item-thumbed am-list-item-thumb-left">
......@@ -143,100 +99,10 @@
</li>
{{/foreach}}
</ul>
</dd>
{{/if}}
<dt>快递信息</dt>
<dd>{{if empty($data['express_name'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.express_name}}<br />{{$data.express_number}}{{/if}}</dd>
<dt>支付状态</dt>
<dd>{{if empty($data['pay_status_name'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.pay_status_name}}{{/if}}</dd>
<dt>订单状态</dt>
<dd>{{if empty($data['status_name'])}}<span class="cr-ddd">未设置</span>{{else /}}{{$data.status_name}}{{/if}}</dd>
<dt>支付方式</dt>
<dd>{{if empty($data['payment_name'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.payment_name}}{{/if}}</dd>
<dt>用户备注</dt>
<dd>{{if empty($data['user_note'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.user_note}}{{/if}}</dd>
<dt>订单金额(元)</dt>
<dd>
{{if empty($data['price'])}}
<span class="cr-ddd">未填写</span>
{{else /}}
金额:{{$data.price}}<br />
增加:{{$data.increase_price}}<br />
优惠:{{$data.preferential_price}}<br />
总价:{{$data.total_price}}<br />
支付:{{$data.pay_price}}<br />
退款:{{if $data['refund_price'] gt 0}}<span class="am-text-danger">{{$data.refund_price}}</span>{{else /}}{{$data.refund_price}}{{/if}}
{{/if}}
</dd>
<dt>扩展数据</dt>
<dd>
{{if empty($data['extension_data'])}}
<span class="cr-ddd"></span>
{{else /}}
{{foreach $data.extension_data as $extk=>$ext}}
{{if $extk gt 0}}<br />{{/if}}
{{$ext.name}} [{{$ext.tips}}]
{{/foreach}}
<div class="table-no"><i class="am-icon-warning"></i> 没有相关数据</div>
{{/if}}
</dd>
<dt>最新售后</dt>
<dd>
{{if empty($data['aftersale_first'])}}
<span class="cr-ddd"></span>
{{else /}}
状态:{{$data.aftersale_first.status_text}}<br />
类型:{{$data.aftersale_first.type_text}}<br />
金额:<strong class="am-text-danger">{{$data.aftersale_first.price}}</strong><br />
数量:{{$data.aftersale_first.number}}<br />
原因:{{$data.aftersale_first.reason}}
{{/if}}
</dd>
<dt>购买总数</dt>
<dd>{{if empty($data['buy_number_count'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.buy_number_count}}{{/if}}</dd>
<dt>退货总数</dt>
<dd>{{if empty($data['returned_quantity'])}}<span class="cr-ddd">未退货</span>{{else /}}{{$data.returned_quantity}}{{/if}}</dd>
<dt>退款金额</dt>
<dd>{{if empty($data['refund_price']) or $data['refund_price'] elt 0.00}}<span class="cr-ddd">未退款</span>{{else /}}<span class="am-text-danger">{{$data.refund_price}}{{/if}}</span></dd>
{{if $data['order_model'] eq 2}}
<dt>自提取货码</dt>
<dd>{{if empty($data['extraction_code'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.extraction_code}}{{/if}}</dd>
{{/if}}
<dt>确认时间</dt>
<dd>{{if empty($data['confirm_time'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.confirm_time}}{{/if}}</dd>
<dt>支付时间</dt>
<dd>{{if empty($data['pay_time'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.pay_time}}{{/if}}</dd>
<dt>发货时间</dt>
<dd>{{if empty($data['delivery_time'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.delivery_time}}{{/if}}</dd>
<dt>完成时间</dt>
<dd>{{if empty($data['collect_time'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.collect_time}}{{/if}}</dd>
<dt>取消时间</dt>
<dd>{{if empty($data['cancel_time'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.cancel_time}}{{/if}}</dd>
<dt>关闭时间</dt>
<dd>{{if empty($data['close_time'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.close_time}}{{/if}}</dd>
<dt>创建时间</dt>
<dd>{{$data.add_time}}</dd>
<dt>更新时间</dt>
<dd>{{$data.upd_time}}</dd>
</dl>
{{/block}}
{{/if}}
\ No newline at end of file
</div>
</div>
{{/if}}
{{/block}}
\ No newline at end of file
<!-- 订单基础信息 -->
{{if !empty($module_data) and !empty($module_data['items'])}}
{{foreach $module_data.items as $key=>$item}}
{{if $key eq 0}}
<div class="am-nbfc am-padding-vertical-xs">
<div class="base am-nbfc">
<a href="{{:MyUrl('index/goods/index', ['id'=>$item['goods_id']])}}" target="_blank" title="{{$item.title}}">
<img src="{{$item['images']}}" class="am-img-thumbnail am-radius am-margin-right-xs am-fl" width="60" height="60" />
</a>
<a href="{{:MyUrl('index/goods/index', ['id'=>$item['goods_id']])}}" target="_blank" title="{{$item.title}}" {{if !empty($item['title_color'])}} style="color:{{$item.title_color}};" {{/if}} class="am-nowrap-initial">{{$item.title}}</a>
</div>
<div class="other am-nbfc">
<span class="am-fl am-text-xs am-nowrap-initial">
{{if !empty($item.spec_text)}}
{{$item.spec_text}}
{{/if}}
</span>
<span class="am-fr">{{$item.price}}x{{$item.buy_number}}</span>
{{if $item['returned_quantity'] gt 0 or $item['refund_price'] gt 0}}
<span class="am-text-danger am-fr am-margin-right-lg">已退 {{$item.returned_quantity}} / {{$item.refund_price}}</span>
<div class="am-nbfc am-padding-vertical-xs">
<div class="base am-nbfc">
<a href="{{:MyUrl('index/goods/index', ['id'=>$item['goods_id']])}}" target="_blank" title="{{$item.title}}">
<img src="{{$item['images']}}" class="am-img-thumbnail am-radius am-margin-right-xs am-fl" width="60" height="60" />
</a>
<a href="{{:MyUrl('index/goods/index', ['id'=>$item['goods_id']])}}" target="_blank" title="{{$item.title}}" {{if !empty($item['title_color'])}} style="color:{{$item.title_color}};" {{/if}} class="am-nowrap-initial">{{$item.title}}</a>
</div>
<div class="other am-nbfc">
<span class="am-fl am-text-xs am-nowrap-initial">
{{if !empty($item.spec_text)}}
{{$item.spec_text}}
{{/if}}
</div>
</span>
<span class="am-fr">{{$item.price}}x{{$item.buy_number}}</span>
{{if $item['returned_quantity'] gt 0 or $item['refund_price'] gt 0}}
<span class="am-text-danger am-fr am-margin-right-lg">已退 {{$item.returned_quantity}} / {{$item.refund_price}}</span>
{{/if}}
</div>
<hr data-am-widget="divider" class="am-divider am-divider-dashed am-margin-vertical-0" />
</div>
<hr data-am-widget="divider" class="am-divider am-divider-dashed am-margin-vertical-0" />
{{if $key eq 0}}
{{if !isset($module_params['form_request_type']) or $module_params['form_request_type'] neq 'detail'}}
{{php}}break;{{/php}}
{{/if}}
{{/if}}
{{php}}break;{{/php}}
{{/foreach}}
<div class="am-margin-top-sm">{{$module_data.describe}}</div>
{{if count($module_data.items) gt 1}}
<div class="am-text-center">
<button type="button" class="am-btn am-btn-link am-btn-xs am-radius submit-popup" data-url="{{:MyUrl('admin/order/detail', ['id'=>$module_data['id']])}}">
<i class="am-icon-caret-down"></i>
<span>查看更多</span>
</button>
</div>
{{if !isset($module_params['form_request_type']) or $module_params['form_request_type'] neq 'detail'}}
<div class="am-text-center">
<button type="button" class="am-btn am-btn-link am-btn-xs am-radius submit-popup" data-url="{{:MyUrl('admin/order/detail', ['id'=>$module_data['id']])}}">
<i class="am-icon-caret-down"></i>
<span>查看更多</span>
</button>
</div>
{{/if}}
{{/if}}
{{/if}}
\ No newline at end of file
<!-- 继承公共的 detail -->
{{extend name="public/module/detail" /}}
<!-- 详情内容 -->
{{if !empty($data)}}
{{block name="detail_data"}}
<dl class="dl-content">
<dt>商品信息</dt>
<dd>
<div class="am-nbfc">
<a href="{{$data.order_data.items.goods_url}}" target="_blank">
<img src="{{$data.order_data.items.images}}" class="am-img-thumbnail am-radius am-margin-right-xs am-fl" width="60" height="60" />
</a>
<div class="am-nbfc">
<a href="{{$data.order_data.items.goods_url}}" target="_blank" class="am-nowrap-initial">{{$data.order_data.items.title}}</a>
{{if !empty($data.order_data.items.spec)}}
<ul class="goods-spec am-margin-top-xs">
{{foreach $data.order_data.items.spec as $spec}}
<li>{{$spec.type}}:{{$spec.value}}</li>
{{/foreach}}
</ul>
{{/if}}
</div>
</div>
<div class="am-text-right">
{{if $data.order_data.items.original_price gt 0}}
<span class="original-price am-margin-right-xs">{{$price_symbol}}{{$data.order_data.items.original_price}}</span>
{{/if}}
<strong>{{$price_symbol}}{{$data.order_data.items.price}} x {{$data.order_data.items.buy_number}}</strong>
</div>
</dd>
<dt>用户信息</dt>
<dd class="user-info">
{{if !empty($data['user'])}}
<img src="{{$data.user.avatar}}" alt="{{$data.user.user_name_view}}" class="am-img-thumbnail am-radius am-align-left am-margin-right-xs am-margin-bottom-0 am-fl" width="35" height="35" />
<ul class="user-base">
<li>名称:{{if empty($data['user']['username'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.username}}{{/if}}</li>
<li>昵称:{{if empty($data['user']['nickname'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.nickname}}{{/if}}</li>
<li>手机:{{if empty($data['user']['mobile'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.mobile}}{{/if}}</li>
<li>邮箱:{{if empty($data['user']['email'])}}<span class="cr-ccc">未填写</span>{{else /}}{{$data.user.email}}{{/if}}</li>
</ul>
{{else /}}
用户信息异常
{{/if}}
</dd>
<dt>申请信息</dt>
<dd>
类型:{{$data.type_text}}<br />
原因:{{$data.reason}}<br />
数量:{{$data.number}}<br />
金额:<span class="am-text-danger">{{$price_symbol}}{{$data.price}}</span><br />
说明:{{$data.msg}}<br />
时间:{{$data.apply_time_time}}
</dd>
<dt>凭证</dt>
<dd>
{{if !empty($data['images'])}}
{{foreach $data.images as $img}}
<a href="{{$img}}" target="_blank">
<img src="{{$img}}" class="am-img-thumbnail" width="80" height="80" />
</a>
{{/foreach}}
{{/if}}
</dd>
<dt>状态</dt>
<dd>
<p>{{$data.status_text}}</p>
{{if $data['status'] eq 3 and !empty($data['refundment_text'])}}
<span class="am-badge am-badge-success am-margin-top-xs">{{$data.refundment_text}}</span>
{{/if}}
</dd>
<dt>拒绝原因</dt>
<dd class="am-text-danger">{{$data.refuse_reason}}</dd>
<dt>快递信息</dt>
<dd>
{{if $data['type'] eq 1 and in_array($data['status'], [2,3])}}
快递:{{$data.express_name}}<br />
单号:{{$data.express_number}}<br />
时间:{{$data.delivery_time_time}}
{{/if}}
</dd>
<dt>申请时间</dt>
<dd>{{$data.apply_time_time}}</dd>
<dt>确认时间</dt>
<dd>{{$data.confirm_time_time}}</dd>
<dt>退货时间</dt>
<dd>{{$data.delivery_time_time}}</dd>
<dt>审核时间</dt>
<dd>{{$data.audit_time_time}}</dd>
<dt>取消时间</dt>
<dd>{{$data.cancel_time_time}}</dd>
<dt>创建时间</dt>
<dd>{{$data.add_time_time}}</dd>
<dt>更新时间</dt>
<dd>{{$data.upd_time_time}}</dd>
</dl>
{{/block}}
{{/if}}
\ No newline at end of file
<!-- 继承公共的 form -->
{{extend name="public/module/detail" /}}
\ No newline at end of file
......@@ -42,8 +42,75 @@
}
{{/php}}
<!-- data -->
{{if !empty($data)}}
{{block name="detail_data"}}{{/block}}
{{block name="detail_data"}}
{{if !empty($form_table) and !empty($form_table['form']) and is_array($form_table['form'])}}
{{if !empty($form_table['base']) and !empty($form_table['base']['detail_title'])}}
<div class="am-panel am-panel-default">
<div class="am-panel-hd">{{$form_table.base.detail_title}}</div>
<div class="am-panel-bd">
{{/if}}
<dl class="dl-content">
{{foreach $form_table.form as $t}}
{{if isset($t['label']) and isset($t['view_type']) and in_array($t['view_type'], ['field', 'module', 'status']) and (!isset($t['is_detail']) or $t['is_detail'] eq 1)}}
<dt><strong>{{$t.label}}</strong></dt>
<dd>
{{switch $t.view_type}}
{{case field}}
<!-- 如果字段为数组则处理多个字段拼接数据 -->
{{if is_array($t['view_key'])}}
{{foreach $t['view_key'] as $fk=>$fv}}
{{if isset($data[$fv])}}
{{$data[$fv]}}
<!-- 多个字段拼接数据的的拼接字符 -->
{{if isset($t['view_key_join']) and $fk lt count($t['view_key'])-1}}
{{$t.view_key_join|raw}}
{{/if}}
{{/if}}
{{/foreach}}
{{else /}}
<!-- 非数组则直接取值 -->
{{if isset($data[$t['view_key']])}}
<!-- 是否指定数据转换 -->
{{if !empty($t['view_data']) and is_array($t['view_data']) and isset($t['view_data'][$data[$t['view_key']]])}}
{{$t['view_data'][$data[$t['view_key']]]}}
<!-- 直接展示数据 -->
{{else /}}
{{$data[$t['view_key']]|raw}}
{{/if}}
{{/if}}
{{/if}}
{{/case}}
{{case module}}
<!-- 从模块加载自定义模块数据 -->
{{:ModuleInclude($t['view_key'], $data, ['form_request_type'=>'detail'])}}
{{/case}}
{{case status}}
<!-- 数据状态操作按钮组件 -->
{{if !empty($t['key_field']) and !empty($t['post_url'])}}
<a href="javascript:;"
class="am-icon-btn am-icon-check submit-state {{if $data[$t['view_key']] eq 1}}am-success{{else /}}am-default{{/if}}"
data-url="{{$t.post_url}}"
data-id="{{if isset($data[$t['key_field']])}}{{$data[$t['key_field']]}}{{/if}}"
data-state="{{$data[$t['view_key']]}}"
data-field="{{$t.view_key}}"
data-is-update-status="{{if isset($t['is_form_su'])}}{{$t.is_form_su}}{{else /}}0{{/if}}"
></a>
{{/if}}
{{/case}}
{{/switch}}
</dd>
{{/if}}
{{/foreach}}
</dl>
{{if !empty($form_table['base']) and !empty($form_table['base']['detail_title'])}}
</div>
</div>
{{/if}}
{{/if}}
{{/block}}
{{else /}}
{{block name="detail_not_data"}}
<div class="table-no"><i class="am-icon-warning"></i> 没有相关数据</div>
......
<!-- 继承公共的 detail -->
{{extend name="public/module/detail" /}}
<!-- 详情内容 -->
{{if !empty($data)}}
{{block name="detail_data"}}
<dl class="dl-content">
<dt>用户头像</dt>
<dd>
{{if !empty($data['avatar'])}}
<img src="{{$data['avatar']}}" class="am-img-thumbnail am-radius" width="80" height="80" />
{{else /}}
<span class="cr-ddd">暂无图片</span>
{{/if}}
</dd>
<dt>用户名</dt>
<dd>{{if empty($data['username'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.username}}{{/if}}</dd>
<dt>昵称</dt>
<dd>{{if empty($data['nickname'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.nickname}}{{/if}}</dd>
<dt>手机号码</dt>
<dd>{{if empty($data['mobile'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.mobile}}{{/if}}</dd>
<dt>电子邮箱</dt>
<dd>{{if empty($data['email'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.email}}{{/if}}</dd>
<dt>状态</dt>
<dd>{{if empty($data['status_text'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.status_text}}{{/if}}</dd>
<dt>支付宝openid</dt>
<dd>{{if empty($data['alipay_openid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.alipay_openid}}{{/if}}</dd>
<dt>百度openid</dt>
<dd>{{if empty($data['baidu_openid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.baidu_openid}}{{/if}}</dd>
<dt>头条openid</dt>
<dd>{{if empty($data['toutiao_openid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.toutiao_openid}}{{/if}}</dd>
<dt>QQopenid</dt>
<dd>{{if empty($data['qq_openid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.qq_openid}}{{/if}}</dd>
<dt>QQunionid</dt>
<dd>{{if empty($data['qq_unionid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.qq_unionid}}{{/if}}</dd>
<dt>微信openid</dt>
<dd>{{if empty($data['weixin_openid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.weixin_openid}}{{/if}}</dd>
<dt>微信unionid</dt>
<dd>{{if empty($data['weixin_unionid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.weixin_unionid}}{{/if}}</dd>
<dt>微信webopenid</dt>
<dd>{{if empty($data['weixin_web_openid'])}}<span class="cr-ddd">未知</span>{{else /}}{{$data.weixin_web_openid}}{{/if}}</dd>
<dt>性别</dt>
<dd>{{if empty($data['gender_text'])}}<span class="cr-ddd">未设置</span>{{else /}}{{$data.gender_text}}{{/if}}</dd>
<dt>生日</dt>
<dd>{{if empty($data['birthday_text'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.birthday_text}}{{/if}}</dd>
<dt>所在省</dt>
<dd>{{if empty($data['province'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.province}}{{/if}}</dd>
<dt>所在市</dt>
<dd>{{if empty($data['city'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.city}}{{/if}}</dd>
<dt>详细地址</dt>
<dd>{{if empty($data['address'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.address}}{{/if}}</dd>
<dt>积分</dt>
<dd>{{if empty($data['integral'])}}<span class="cr-ddd">未填写</span>{{else /}}{{$data.integral}}{{/if}}</dd>
<dt>邀请用户ID</dt>
<dd>{{$data.referrer}}</dd>
<dt>注册时间</dt>
<dd>{{$data.add_time}}</dd>
<dt>更新时间</dt>
<dd>{{$data.upd_time}}</dd>
</dl>
{{/block}}
{{/if}}
\ No newline at end of file
<!-- 继承公共的 form -->
{{extend name="public/module/detail" /}}
\ No newline at end of file
......@@ -92,9 +92,10 @@ function FormModulePath($params = [])
* @date 2020-05-25
* @desc description
* @param [string] $template [视图路径]
* @param [mixed] $params [参数数据]
* @param [mixed] $data [参数数据]
* @param [mixed] $params [额外参数]
*/
function ModuleInclude($template, $params = [])
function ModuleInclude($template, $data = [], $params = [])
{
// 应用控制器
$module = '\app\module\ViewIncludeModule';
......@@ -111,7 +112,7 @@ function ModuleInclude($template, $params = [])
return '模块视图方法未定义['.$module.'->'.$action.'()]';
}
return $obj->Run($template, $params);
return $obj->Run($template, $data, $params);
}
/**
......
......@@ -161,6 +161,22 @@ class FormHandleModule
$v['view_key'] = 'form_radio_value';
}
}
// 复选+单选
if(in_array($v['view_type'], ['checkbox', 'radio']))
{
// 是否部分不显示控件
// 数据处理成为数组
if(isset($v['not_show_data']) && !is_array($v['not_show_data']))
{
$v['not_show_data'] = explode(',', $v['not_show_data']);
}
// 数据 key 字段默认主键 id [base->key_field]
if(!empty($v['not_show_data']) && empty($v['not_show_key']))
{
$v['not_show_key'] = $this->form_data['base']['key_field'];
}
}
break;
}
}
......
......@@ -45,11 +45,13 @@ class ViewIncludeModule extends Controller
* @desc description
* @param [string] $template [模板地址]
* @param [mixed] $data [请求数据]
* @param [mixed] $params [额外参数]
* @return [string] [模板内容]
*/
public function Run($template, $data = [])
public function Run($template, $data = [], $params = [])
{
$this->assign('module_data', $data);
$this->assign('module_params', $params);
return $this->fetch($template);
}
}
......
......@@ -120,25 +120,20 @@ class CrontabService
Db::startTrans();
if(Db::name('Order')->where(['id'=>$v['id'], 'status'=>3])->update($upd_data))
{
// 订单商品积分赠送
$ret = IntegralService::OrderGoodsIntegralGiving(['order_id'=>$v['id']]);
// 订单商品销量增加
$ret = OrderService::GoodsSalesCountInc(['order_id'=>$v['id']]);
if($ret['code'] == 0)
{
// 订单商品销量增加
$ret = OrderService::GoodsSalesCountInc(['order_id'=>$v['id']]);
if($ret['code'] == 0)
{
// 用户消息
MessageService::MessageAdd($v['user_id'], '订单收货', '订单自动收货成功', 1, $v['id']);
// 用户消息
MessageService::MessageAdd($v['user_id'], '订单收货', '订单自动收货成功', 1, $v['id']);
// 订单状态日志
OrderService::OrderHistoryAdd($v['id'], $upd_data['status'], $v['status'], '自动收货', 0, '系统');
// 订单状态日志
OrderService::OrderHistoryAdd($v['id'], $upd_data['status'], $v['status'], '自动收货', 0, '系统');
// 提交事务
Db::commit();
$sucs++;
continue;
}
// 提交事务
Db::commit();
$sucs++;
continue;
}
}
// 事务回滚
......
......@@ -1164,7 +1164,6 @@ class GoodsService
'model' => $params['model'],
'place_origin' => isset($params['place_origin']) ? intval($params['place_origin']) : 0,
'inventory_unit' => $params['inventory_unit'],
'give_integral' => intval($params['give_integral']),
'buy_min_number' => max(1, isset($params['buy_min_number']) ? intval($params['buy_min_number']) : 1),
'buy_max_number' => isset($params['buy_max_number']) ? intval($params['buy_max_number']) : 0,
'is_deduction_inventory' => isset($params['is_deduction_inventory']) ? intval($params['is_deduction_inventory']) : 0,
......
......@@ -166,7 +166,7 @@ class IntegralService
}
/**
* 订单商品积分赠送
* 订单商品积分赠送(已丢弃)
* @author Devil
* @blog http://gong.gg/
* @version 1.0.0
......
......@@ -1446,15 +1446,6 @@ class OrderService
];
if(Db::name('Order')->where($where)->update($upd_data))
{
// 订单商品积分赠送
$ret = IntegralService::OrderGoodsIntegralGiving(['order_id'=>$order['id']]);
if($ret['code'] != 0)
{
// 事务回滚
Db::rollback();
return DataReturn($ret['msg'], -10);
}
// 订单商品销量增加
$ret = self::GoodsSalesCountInc(['order_id'=>$order['id']]);
if($ret['code'] != 0)
......
......@@ -11,7 +11,8 @@ ul { list-style: none; }
/* 公共dl样式 */
.dl-content dt { float: left; padding-left: 5px; overflow: hidden; clear: left;
width: 120px; }
.dl-content dd { border-bottom: 1px solid #efefef; padding-left: 120px; }
.dl-content dd { padding-left: 120px; }
.dl-content dd:not(:last-child) { border-bottom: 1px solid #efefef; }
.dl-content dt, .dl-content dd { font-weight: normal !important; text-align: left; margin-top: 0px; line-height: 20px; min-height: 40px; padding-top: 10px; padding-bottom: 10px; }
/**
......@@ -60,6 +61,35 @@ form.am-form .am-form-group-refreshing, .plug-file-upload-view, .content-app-ite
#common-prompt.prompt-top { top: 0; }
#common-prompt.prompt-bottom { bottom: 0; }
/**
* 弹窗iframe
*/
.popup-iframe-not-title {
padding: 25px;
background: transparent;
}
.popup-iframe-not-title .am-popup-inner {
padding-top: 0;
background: #fff;
}
.popup-iframe-not-title .am-popup-inner .am-close {
position: absolute;
right: 10px;
top: 10px;
-webkit-box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
-moz-box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
opacity: 1;
background: #767676;
color: #fff;
border: 3px solid #f4f4f4;
width: 32px;
height: 32px;
}
.popup-iframe-not-title .am-popup-inner .am-close:hover {
background: #2f8ded;
}
/**
* iframe
*/
......
......@@ -795,15 +795,25 @@ function ModalLoad(url, title, tag, class_tag)
$('#'+tag).remove();
}
var html = '<div class="am-popup popup-iframe '+class_tag+'" id="'+tag+'">';
// 是否存在标题
if((title || null) != null)
{
var html = '<div class="am-popup popup-iframe '+class_tag+'" id="'+tag+'">';
html += '<div class="am-popup-inner">';
html += '<div class="am-popup-hd">';
html += '<h4 class="am-popup-title">'+title+'</h4>';
html += '<span data-am-modal-close class="am-close am-icon-times"></span>';
html += '</div>';
} else {
var html = '<div class="am-popup popup-iframe popup-iframe-not-title '+class_tag+'" id="'+tag+'">';
html += '<div class="am-popup-inner">';
html += '<div class="am-popup-hd">';
html += '<h4 class="am-popup-title">'+(title || '详情')+'</h4>';
html += '<span data-am-modal-close class="am-close">&times;</span>';
html += '</div>';
html += '<iframe src="'+url+'" width="100%" height="100%"></iframe>';
html += '</div>';
html += '</div>';
html += '<span data-am-modal-close class="am-close am-close-alt am-icon-times am-close-spin"></span>';
}
// 弹窗内容
html += '<iframe src="'+url+'" width="100%" height="100%"></iframe>';
html += '</div>';
html += '</div>';
$('body').append(html);
$('#'+tag).modal();
}
......@@ -1767,9 +1777,7 @@ $(function()
*/
if($('.am-page-loading').length > 0)
{
setTimeout(function() {
$('.am-page-loading').fadeOut(500);
}, 300);
$('.am-page-loading').fadeOut(500);
}
// 全屏操作
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册