Initial commit,修正
This commit is contained in:
Executable
+43
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
use yii\bootstrap\Alert;
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\User */
|
||||
/* @var $form yii\widgets\ActiveForm */
|
||||
$params = Yii::$app->params;
|
||||
|
||||
?>
|
||||
|
||||
<div class="user-form">
|
||||
|
||||
<?php $form = ActiveForm::begin(); ?>
|
||||
|
||||
<?= $form->field($model, 'username')->textInput(['maxlength' => true]) ?>
|
||||
<?php
|
||||
if( Yii::$app->getSession()->hasFlash('error') ) {
|
||||
echo Alert::widget([
|
||||
'options' => [
|
||||
'class' => 'alert alert-danger',
|
||||
],
|
||||
'body' => Yii::$app->getSession()->getFlash('error'),
|
||||
]);
|
||||
}
|
||||
?>
|
||||
<?= $form->field($model, 'avatar')->textInput(['value'=>'@web/img/profile_small.png'])->label('头像')?>
|
||||
<?= $form->field($model, 'auth_key')->textInput(['maxlength' => true,'value'=>$params['defaultAdminPassword']]) ?>
|
||||
|
||||
<?= $form->field($model, 'email')->textInput(['maxlength' => true]) ?>
|
||||
|
||||
<?= $form->field($model, 'mobile')->textInput(['label' => '']) ?>
|
||||
|
||||
<?= $form->field($model1, 'name' )->dropDownList($item)->label(Yii::t('common' ,'Role'))?>
|
||||
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton($model->isNewRecord ? '新增' : '更新', ['class' => $model->isNewRecord ? 'btn btn-primary' : 'btn btn-primary']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
|
||||
</div>
|
||||
Executable
+27
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\User */
|
||||
|
||||
$this->title = '新增用户';
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Users', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="user-create">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<hr/>
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
'model1' => $model1,
|
||||
'item' => $item,
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\grid\GridView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $dataProvider yii\data\ActiveDataProvider */
|
||||
|
||||
$this->title = 'Users';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="user-index">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<p>
|
||||
<?= Html::a('Create User', ['create'], ['class' => 'btn btn-success']) ?>
|
||||
</p>
|
||||
<?= GridView::widget([
|
||||
'dataProvider' => $dataProvider,
|
||||
'columns' => [
|
||||
['class' => 'yii\grid\SerialColumn'],
|
||||
'id',
|
||||
'username',
|
||||
'auth_key',
|
||||
'password_hash',
|
||||
'password_reset_token',
|
||||
// 'email:email',
|
||||
// 'role',
|
||||
// 'status',
|
||||
// 'created_at',
|
||||
// 'updated_at',
|
||||
|
||||
['class' => 'yii\grid\ActionColumn'],
|
||||
],
|
||||
]); ?>
|
||||
</div>
|
||||
Executable
+75
@@ -0,0 +1,75 @@
|
||||
<?php
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '运维人员列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('adminer/create')?>">新增运维</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('adminer/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input type="text" placeholder="请输入用户名或工号" name="username" class="input-sm form-control"> <span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button> </span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>账号</th>
|
||||
<th>邮箱</th>
|
||||
<th>手机</th>
|
||||
<th>用户组</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($user as $vo){?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><img src="<?=Url::to($vo['avatar'])?>" alt="" style="width:40px;height:40px;"><?=$vo['username']?></td>
|
||||
<td><?=$vo['email']?></td>
|
||||
<td><?=$vo['mobile']?></td>
|
||||
<td><?=$vo['usergroup']['item_name']?></td>
|
||||
<td><a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['adminer/update','item_name'=>$vo['usergroup']['item_name'],'id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a> <?php if(!in_array($vo['username'],array('fm453','admin'))):?><a href="<?=Url::toRoute(['adminer/delete','id'=>$vo['id']])?>" class="btn btn-default btn-xs"><i class="fa fa-close"></i>删除</a><?php endif;?></td>
|
||||
</tr>
|
||||
<?php };?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pages,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItem */
|
||||
|
||||
$this->title = '更新用户 ';
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="ibox-content">
|
||||
<div class="row pd-10">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<hr>
|
||||
<div class="auth-item-form col-sm-4">
|
||||
<?php $form = ActiveForm::begin(); ?>
|
||||
|
||||
<?= $form->field($model, 'id')->hiddenInput()->label('')?>
|
||||
|
||||
<?= $form->field($model, 'username')->textInput(['readonly'=>true])->label('账号') ?>
|
||||
|
||||
<?= $form->field($model, 'avatar')->textInput(['placeholder'=>'@web/img/profile_small.png'])->label('头像')?>
|
||||
|
||||
<?= $form->field($model, 'email')->textInput(['placheholder'=>''])->label('邮箱')?>
|
||||
<?= $form->field($model, 'mobile')->textInput(['placheholder'=>''])->label('手机号')?>
|
||||
|
||||
<?= $form->field($model, 'auth_key_new')->textInput(['value'=>''])->label('密码')?>
|
||||
<?= $form->field($model, 'auth_key')->hiddenInput()->label(false)?>
|
||||
|
||||
<?php if($model->username =='fm453' || $model->username =='admin'):?>
|
||||
<?= $form->field($model->usergroup, 'item_name' )->dropDownList($item,['disabled'=>true])->label('用户组')?>
|
||||
<?php else:?>
|
||||
<?= $form->field($model->usergroup, 'item_name' )->dropDownList($item)->label('用户组')?>
|
||||
<?php endif;?>
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton('保存', ['class' => 'btn btn-primary']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\DetailView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\User */
|
||||
|
||||
$this->title = $model->id;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Users', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="user-view">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<p>
|
||||
<?= Html::a('Update', ['update', 'id' => $model->id], ['class' => 'btn btn-primary']) ?>
|
||||
<?= Html::a('Delete', ['delete', 'id' => $model->id], [
|
||||
'class' => 'btn btn-danger',
|
||||
'data' => [
|
||||
'confirm' => 'Are you sure you want to delete this item?',
|
||||
'method' => 'post',
|
||||
],
|
||||
]) ?>
|
||||
</p>
|
||||
|
||||
<?= DetailView::widget([
|
||||
'model' => $model,
|
||||
'attributes' => [
|
||||
'id',
|
||||
'username',
|
||||
'auth_key',
|
||||
'password_hash',
|
||||
'password_reset_token',
|
||||
'email:email',
|
||||
'role',
|
||||
'status',
|
||||
'created_at',
|
||||
'updated_at',
|
||||
],
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
Executable
+135
@@ -0,0 +1,135 @@
|
||||
<?php
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '登陆日志';
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-6">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<span class="label label-primary pull-right">历史</span>
|
||||
<h5>访客</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<h1 class="no-margins"><?=\backend\components\Helper::getHistoryVisNum()?></h1>
|
||||
<small>访客</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<span class="label label-danger pull-right">最近一个月</span>
|
||||
<h5>活跃用户</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<h1 class="no-margins"><?=\backend\components\Helper::getMonthHistoryVisNum()?></h1>
|
||||
<small><?= date('m')?>月</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-12">
|
||||
<div id="history"></div>
|
||||
</div>
|
||||
</div>
|
||||
<?php if(\Yii::$app->user->can('/log/login')):?> <!--判断是否有权限,有则显示,无则隐藏-->
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="ibox-content">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>用户名</th>
|
||||
<th>登录IP</th>
|
||||
<th>登录时间</th>
|
||||
<th>备注</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach($log as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><?=$vo['username']?></td>
|
||||
<td><?=$vo['ip']?></td>
|
||||
<td><?= date('Y-m-d H:i:s',$vo['create_time'])?></td>
|
||||
<td><?=str_replace('-','',$vo['data'])?></td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pages,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
<?=Html::jsFile('@web/js/plugins/Highcharts/4.1.7/js/highcharts.js')?>
|
||||
<?=Html::jsFile('@web/js/plugins/Highcharts/4.1.7/js/modules/exporting.js')?>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
$('#history').highcharts({
|
||||
title: {
|
||||
text: '',
|
||||
x: -20 //center
|
||||
},
|
||||
credits: { enabled:false }, //屏蔽右下角
|
||||
exporting: { enabled:false }, //屏蔽右上角
|
||||
subtitle: {
|
||||
text: '',
|
||||
x: -20
|
||||
},
|
||||
xAxis: {
|
||||
categories: [<?=$HistoryMonthStr?>]
|
||||
},
|
||||
yAxis: {
|
||||
|
||||
title: {
|
||||
text: '访客/人'
|
||||
},
|
||||
//min: 7.5, // 这个用来控制y轴的开始刻度(最小刻度),另外还有一个表示最大刻度的max属性
|
||||
startOnTick: false, // y轴坐标是否从某一刻度开始(这个设定与标题无关)
|
||||
plotLines: [{
|
||||
value: 0,
|
||||
width: 1,
|
||||
color: '#808080'
|
||||
}]
|
||||
},
|
||||
tooltip: {
|
||||
valueSuffix: '人',
|
||||
pointFormat: '<span style="color:{series.color}">{series.name}</span>: <b>{point.y:,.0f} 人</b><br/>',
|
||||
shared: true
|
||||
},
|
||||
/*legend: {
|
||||
layout: 'vertical',
|
||||
align: 'right',
|
||||
verticalAlign: 'middle',
|
||||
borderWidth: 0
|
||||
},*/
|
||||
series: [{
|
||||
name: '访客数',
|
||||
data: [<?=$HistoryMonthNum?>]
|
||||
}]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
Executable
+33
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\Menu */
|
||||
/* @var $form yii\widgets\ActiveForm */
|
||||
?>
|
||||
|
||||
<div class="menu-form">
|
||||
|
||||
<?php $form = ActiveForm::begin(); ?>
|
||||
|
||||
<?= $form->field($model, 'name')->textInput(['maxlength' => true]) ?>
|
||||
|
||||
<?= $form->field($model, 'parent' )->dropDownList($menuArr)?>
|
||||
|
||||
<?= $form->field($model, 'route')->textInput(['maxlength' => true]) ?>
|
||||
|
||||
<?= $form->field($model, 'sort')->textInput()->label('排序') ?>
|
||||
|
||||
<?= $form->field($model, 'status')->radioList(['1'=>'显示','0'=>'隐藏'])->label('显示')?>
|
||||
|
||||
<?= $form->field($model, 'data')->textarea(['rows' => 6]) ?>
|
||||
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton($model->isNewRecord ? '创建' : '更新', ['class' => $model->isNewRecord ? 'btn btn-primary' : 'btn btn-primary']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
|
||||
</div>
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\Menu */
|
||||
|
||||
$this->title = '创建菜单';
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Menus', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<hr>
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
'menuArr' => $menuArr,
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
Executable
+85
@@ -0,0 +1,85 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\grid\GridView;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '菜单';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<p>
|
||||
<?= Html::a('创建菜单', ['create'], ['class' => 'btn btn-sm btn-primary']) ?>
|
||||
</p>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>名称</th>
|
||||
<th>父级</th>
|
||||
<th>路由</th>
|
||||
<th>状态</th>
|
||||
<th>排序</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach($menu as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><?=$vo['name']?></td>
|
||||
<td><?=$vo['parent']?></td>
|
||||
<td><?=$vo['route']?></td>
|
||||
<td><?=$vo['status'] >0 ? '显示 ' : '隐藏'?></td>
|
||||
<td><?=($vo['sort']==''?'未排序':$vo['sort'])?></td>
|
||||
<td><a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['menu/update','id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a> <a class="btn btn-default btn-xs" href="<?=Url::toRoute(['menu/delete','id'=>$vo['id']])?>"><i class="fa fa-close"></i>删除</a></td>
|
||||
</tr>
|
||||
<?php if(!empty($vo['_child'])):?>
|
||||
<?php foreach($vo['_child'] as $v):?>
|
||||
<tr>
|
||||
<td><?=$v['id']?></td>
|
||||
<td><?=$v['name']?></td>
|
||||
<td><?=$v['parent']?></td>
|
||||
<td><?=$v['route']?></td>
|
||||
<td><?=$v['status'] > 0 ? '显示' : '隐藏'?></td>
|
||||
<td><?=($v['sort']==''?'未排序':$v['sort'])?></td>
|
||||
<td><a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['menu/update','id'=>$v['id']])?>"><i class="fa fa-edit"></i>编辑</a> <a class="btn btn-default btn-xs" href="<?=Url::toRoute(['menu/delete','id'=>$v['id']])?>"><i class="fa fa-close"></i>删除</a></td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
|
||||
<?php endif;?>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<!--<div class="f-r">
|
||||
<?/*= LinkPager::widget([
|
||||
'pagination'=>$pages,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) */?>
|
||||
</div>-->
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\Menu */
|
||||
|
||||
$this->title = '更新菜单: ' . ' ' . $model->name;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Menus', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = ['label' => $model->name, 'url' => ['view', 'id' => $model->id]];
|
||||
$this->params['breadcrumbs'][] = 'Update';
|
||||
?>
|
||||
<div class="wrapper wrapper-content ">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<hr>
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
'menuArr' => $menuArr,
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+40
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\DetailView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\Menu */
|
||||
|
||||
$this->title = $model->name;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Menus', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content animated fadeInRight">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<p>
|
||||
<?= Html::a('创建', ['create'], ['class' => 'btn btn-primary']) ?>
|
||||
<?= Html::a('更新', ['update', 'id' => $model->id], ['class' => 'btn btn-primary']) ?>
|
||||
<?= Html::a('删除', ['delete', 'id' => $model->id], [
|
||||
'class' => 'btn btn-danger',
|
||||
'data' => [
|
||||
'confirm' => 'Are you sure you want to delete this item?',
|
||||
'method' => 'post',
|
||||
],
|
||||
]) ?>
|
||||
</p>
|
||||
|
||||
<?= DetailView::widget([
|
||||
'model' => $model,
|
||||
'attributes' => [
|
||||
'id',
|
||||
'name',
|
||||
'parent',
|
||||
'route',
|
||||
'sort',
|
||||
'data:ntext',
|
||||
],
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItemChild */
|
||||
/* @var $form yii\widgets\ActiveForm */
|
||||
?>
|
||||
|
||||
<div class="auth-item-child-form">
|
||||
|
||||
<?php $form = ActiveForm::begin(); ?>
|
||||
|
||||
<?= $form->field($model, 'parent')->textInput(['maxlength' => true]) ?>
|
||||
|
||||
<?= $form->field($model, 'child')->textInput(['maxlength' => true]) ?>
|
||||
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
|
||||
</div>
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItemChild */
|
||||
|
||||
$this->title = 'Create Auth Item Child';
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Auth Item Children', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="auth-item-child-create">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\grid\GridView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $dataProvider yii\data\ActiveDataProvider */
|
||||
|
||||
$this->title = 'Auth Item Children';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="auth-item-child-index">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<p>
|
||||
<?= Html::a('Create Auth Item Child', ['create'], ['class' => 'btn btn-success']) ?>
|
||||
</p>
|
||||
<?= GridView::widget([
|
||||
'dataProvider' => $dataProvider,
|
||||
'columns' => [
|
||||
['class' => 'yii\grid\SerialColumn'],
|
||||
|
||||
'parent',
|
||||
'child',
|
||||
|
||||
['class' => 'yii\grid\ActionColumn'],
|
||||
],
|
||||
]); ?>
|
||||
</div>
|
||||
Executable
+75
@@ -0,0 +1,75 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItemChild */
|
||||
|
||||
$this->title = '配置权限';
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Auth Item Children', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<hr>
|
||||
<form action="<?=Url::toRoute(['permission/set','id'=>$id])?>" method="post">
|
||||
|
||||
<div class="row">
|
||||
|
||||
<?php foreach($menu as $vo):?>
|
||||
<div class="col-sm-12 permission-block">
|
||||
<div class="ibox-permission">
|
||||
<h3><?= $vo->name?></h3>
|
||||
<hr>
|
||||
<input name="parent" type="hidden" value="<?=$id?>">
|
||||
<!--<label><input type="checkbox" class="chkall" name="checkall" value="1">全选</label> -->
|
||||
|
||||
<?php foreach($items as $v):?>
|
||||
<?php if($vo['id'] == $v->permissionName['parent']):?>
|
||||
<?php if($id == '超级管理员'):?>
|
||||
<label><input type="checkbox" class="chk" disabled name="permission[]" value="<?=$v->name?>"><?=($v->permissionName['name'] ==''? $v->name : $v->permissionName['name'])?></label>
|
||||
<?php else:?>
|
||||
<label><input type="checkbox" class="chk" name="permission[]" value="<?=$v->name?>"><?=($v->permissionName['name'] ==''? $v->name : $v->permissionName['name'])?></label>
|
||||
<?php endif;?>
|
||||
<?php endif;?>
|
||||
<?php endforeach;?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endforeach;?>
|
||||
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
<div class="clear"></div>
|
||||
<input type="submit" value="保存" class="btn btn-primary">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
var num = 0;
|
||||
var permission = <?= json_encode($Permission);?>;
|
||||
$('.chk').each(function(){
|
||||
var self = $(this);
|
||||
var selfVal = self.val();
|
||||
$.each(permission, function(n, v){
|
||||
if(v.name == selfVal){
|
||||
self.attr('checked' , 'true');
|
||||
num++;
|
||||
};
|
||||
});
|
||||
});
|
||||
var nums = $('.chk').size(); //全选勾中
|
||||
if(nums == num){
|
||||
$('.chkall').attr("checked",true);
|
||||
}
|
||||
|
||||
$(".chkall").click(function(){
|
||||
var isChecked = $(this).prop("checked");
|
||||
$("input[name='permission[]']").prop("checked", isChecked);
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItemChild */
|
||||
|
||||
$this->title = 'Update Auth Item Child: ' . ' ' . $model->parent;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Auth Item Children', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = ['label' => $model->parent, 'url' => ['view', 'parent' => $model->parent, 'child' => $model->child]];
|
||||
$this->params['breadcrumbs'][] = 'Update';
|
||||
?>
|
||||
<div class="auth-item-child-update">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
Executable
+36
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\DetailView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItemChild */
|
||||
|
||||
$this->title = $model->parent;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Auth Item Children', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="auth-item-child-view">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<p>
|
||||
<?= Html::a('Update', ['update', 'parent' => $model->parent, 'child' => $model->child], ['class' => 'btn btn-primary']) ?>
|
||||
<?= Html::a('Delete', ['delete', 'parent' => $model->parent, 'child' => $model->child], [
|
||||
'class' => 'btn btn-danger',
|
||||
'data' => [
|
||||
'confirm' => 'Are you sure you want to delete this item?',
|
||||
'method' => 'post',
|
||||
],
|
||||
]) ?>
|
||||
</p>
|
||||
|
||||
<?= DetailView::widget([
|
||||
'model' => $model,
|
||||
'attributes' => [
|
||||
'parent',
|
||||
'child',
|
||||
],
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
Executable
+41
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
use yii\bootstrap\Alert;
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\User */
|
||||
/* @var $form yii\widgets\ActiveForm */
|
||||
$params = Yii::$app->params;
|
||||
|
||||
?>
|
||||
|
||||
<div class="user-form">
|
||||
|
||||
<?php $form = ActiveForm::begin(); ?>
|
||||
|
||||
<?= $form->field($model, 'username')->textInput(['maxlength' => true]) ?>
|
||||
<?php
|
||||
if( Yii::$app->getSession()->hasFlash('error') ) {
|
||||
echo Alert::widget([
|
||||
'options' => [
|
||||
'class' => 'alert alert-danger',
|
||||
],
|
||||
'body' => Yii::$app->getSession()->getFlash('error'),
|
||||
]);
|
||||
}
|
||||
?>
|
||||
<?= $form->field($model, 'avatar')->textInput(['value'=>'@web/img/profile_small.png'])->label('头像')?>
|
||||
<?= $form->field($model, 'auth_key')->textInput(['maxlength' => true,'value'=>$params['defaultAdminPassword']]) ?>
|
||||
|
||||
<?= $form->field($model, 'email')->textInput(['maxlength' => true]) ?>
|
||||
|
||||
<?= $form->field($model, 'mobile')->textInput(['label' => '']) ?>
|
||||
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton($model->isNewRecord ? '新增' : '更新', ['class' => $model->isNewRecord ? 'btn btn-primary' : 'btn btn-primary']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
|
||||
</div>
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\User */
|
||||
|
||||
$this->title = '新增用户';
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Users', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="user-create">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<hr/>
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Executable
+38
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\grid\GridView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $dataProvider yii\data\ActiveDataProvider */
|
||||
|
||||
$this->title = 'Users';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="user-index">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<p>
|
||||
<?= Html::a('Create User', ['create'], ['class' => 'btn btn-success']) ?>
|
||||
</p>
|
||||
<?= GridView::widget([
|
||||
'dataProvider' => $dataProvider,
|
||||
'columns' => [
|
||||
['class' => 'yii\grid\SerialColumn'],
|
||||
|
||||
'id',
|
||||
'username',
|
||||
'auth_key',
|
||||
'password_hash',
|
||||
'password_reset_token',
|
||||
// 'email:email',
|
||||
// 'role',
|
||||
// 'status',
|
||||
// 'created_at',
|
||||
// 'updated_at',
|
||||
|
||||
['class' => 'yii\grid\ActionColumn'],
|
||||
],
|
||||
]); ?>
|
||||
</div>
|
||||
Executable
+80
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '用户列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('user/create')?>">新增用户</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('user/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input type="text" placeholder="请输入用户名" name="username" class="input-sm form-control"> <span class="input-group-btn">
|
||||
</div>
|
||||
<div class="input-group">
|
||||
<input type="text" placeholder="请输入手机号" name="mobile" class="input-sm form-control"> <span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button> </span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>账号</th>
|
||||
<th>联系方式</th>
|
||||
<th>站点</th>
|
||||
<th>授权信息</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($user as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><img src="<?=Url::to($vo['avatar'])?>" alt="" style="width:40px;height:40px;"><?=$vo['username']?></td>
|
||||
<td><?=$vo['mobile']?><br><?=$vo['email']?></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td><?=$vo['status']?></td>
|
||||
<td><a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['user/update','item_name'=>$vo['usergroup']['item_name'],'id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a> <?php if(!in_array($vo['username'],array('publicapi','test'))):?><a href="<?=Url::toRoute(['user/delete','id'=>$vo['id']])?>" class="btn btn-default btn-xs"><i class="fa fa-close"></i>删除</a><?php endif;?></td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pages,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+41
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItem */
|
||||
|
||||
$this->title = '更新用户 ';
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="ibox-content">
|
||||
<div class="row pd-10">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<hr>
|
||||
<div class="auth-item-form col-sm-4">
|
||||
<?php $form = ActiveForm::begin(); ?>
|
||||
|
||||
<?= $form->field($model, 'id')->hiddenInput()->label('')?>
|
||||
|
||||
<?= $form->field($model, 'username')->textInput(['readonly'=>true])->label('账号') ?>
|
||||
|
||||
<?= $form->field($model, 'avatar')->textInput(['placeholder'=>'@web/img/profile_small.png'])->label('头像')?>
|
||||
|
||||
<?= $form->field($model, 'email')->textInput(['placheholder'=>''])->label('邮箱')?>
|
||||
<?= $form->field($model, 'mobile')->textInput(['placheholder'=>''])->label('手机号')?>
|
||||
|
||||
<?= $form->field($model, 'auth_key_new')->textInput(['value'=>''])->label('密码')?>
|
||||
<?= $form->field($model, 'auth_key')->hiddenInput()->label(false)?>
|
||||
|
||||
<?= $form->field($model, 'status')->textInput(['placheholder'=>''])->label('状态码(0~10)')?>
|
||||
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton('保存', ['class' => 'btn btn-primary']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\DetailView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\User */
|
||||
|
||||
$this->title = $model->id;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Users', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="user-view">
|
||||
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
|
||||
<p>
|
||||
<?= Html::a('Update', ['update', 'id' => $model->id], ['class' => 'btn btn-primary']) ?>
|
||||
<?= Html::a('Delete', ['delete', 'id' => $model->id], [
|
||||
'class' => 'btn btn-danger',
|
||||
'data' => [
|
||||
'confirm' => 'Are you sure you want to delete this item?',
|
||||
'method' => 'post',
|
||||
],
|
||||
]) ?>
|
||||
</p>
|
||||
|
||||
<?= DetailView::widget([
|
||||
'model' => $model,
|
||||
'attributes' => [
|
||||
'id',
|
||||
'username',
|
||||
'auth_key',
|
||||
'password_hash',
|
||||
'password_reset_token',
|
||||
'email:email',
|
||||
'role',
|
||||
'status',
|
||||
'created_at',
|
||||
'updated_at',
|
||||
],
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
Executable
+82
@@ -0,0 +1,82 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '城市列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>搜索</h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="row">
|
||||
<div class="table-responsive">
|
||||
<form class="form-search" method="get" action="<?=Url::toRoute('city/select')?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-5">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="title" value="<?=isset($search['title']) ? $search['title']:''?>" placeholder="输入城市名称;支持模糊检索" autocomplete="off">
|
||||
<span class="input-group-btn"> <button type="button" class="btn btn-primary">搜索
|
||||
</button> </span>
|
||||
<span class="hidden input-group-btn"> <a class="btn btn-info" href="<?=Url::toRoute('city/new')?>" target="_blank">去新增一个
|
||||
</a> </span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>ID</th>
|
||||
<th>城市</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($citys as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><?=$vo['name']?></td>
|
||||
<td>
|
||||
<a onclick="parent.selectCity('<?=$vo['name']?>','<?=$vo['id']?>','<?=$callback?>');" href="javascript:void(0);" class="btn btn-xs btn-info">选择</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+309
@@ -0,0 +1,309 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2019-01-08 12:12:22
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '客户列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<!--日期时间选择器-->
|
||||
<?=Html::jsFile('@web/js/plugins/layer/laydate/laydate.js')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/need/laydate.css')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/skins/molv/laydate.css')?>
|
||||
|
||||
<style>
|
||||
.laydate_body .laydate_top{
|
||||
padding:0;
|
||||
}
|
||||
.laydate_body .laydate_ym{
|
||||
/*margin:0;
|
||||
padding:5px;*/
|
||||
}
|
||||
.laydate_body .laydate_table{
|
||||
border:0;
|
||||
border-bottom: 1px solid rgb(204, 204, 204);
|
||||
}
|
||||
.laydate_body .laydate_bottom {
|
||||
border: 0;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!--滑块选择器-->
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.css')?>
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.skinFlat.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/ionRangeSlider/ion.rangeSlider.min.js')?>
|
||||
|
||||
<!--下拉选择、选项框-->
|
||||
<?=Html::cssFile('@web/css/plugins/chosen/chosen.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/chosen/chosen.jquery.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content" style="text-align: center;">
|
||||
<h1>搜索与筛选</h1>
|
||||
<form role="form" class="form-horizontal m-t" action="<?=Url::toRoute('guest/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">姓名</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户姓名" name="search[title]" value="<?=$search['title']?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">昵称</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户昵称" name="search[nickname]" value="<?=isset($search['nickname'])?$search['nickname']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">手机号搜索</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户手机号" name="search[phone]" value="<?=isset($search['phone'])?$search['phone']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">入住月份</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[checkin_m]" placeholder="请选择月份" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM'})" value="<?=isset($search['checkin_m'])?$search['checkin_m']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">入住时间不早于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[checkin_after]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['checkin_after'])?$search['checkin_after']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">入住时间不晚于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[checkin_before]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['checkin_before'])?$search['checkin_before']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">生日月份</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[birthday_m]" placeholder="请选择月份" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM'})" value="<?=isset($search['birthday_m'])?$search['birthday_m']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">生日不早于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[birthday_after]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['birthday_after'])?$search['birthday_after']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">生日不晚于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[birthday_before]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['birthday_before'])?$search['birthday_before']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<select data-placeholder="选择来源渠道..." class="select-sm form-control chosen-select" tabindex="2" name="search[channel]">
|
||||
<option value="">选择来源渠道</option>
|
||||
<?php foreach(Yii::$app->params['saleChannels'] as $key=>$val){?>
|
||||
<option value="<?=$key?>" hassubinfo="true" <?=isset($search['channel']) && $search['channel']==$key ? 'selected':'';?>><?=$val?></option>
|
||||
<?php }?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="hotel_title" id="hotel-title" value="<?=isset($search['hotel_title'])?$search['hotel_title']:'';?>" placeholder="点击选择关联酒店" autocomplete="off" href="<?=Url::toRoute(['hotel/select','callback'=>'hotel']);?>" w="80%;" h="90%;" title="选择所在关联酒店" mini="load">
|
||||
<input type="hidden" class="form-control" name="search[hotel]" id="hotel-value" value="<?=isset($search['hotel'])?$search['hotel']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-info" onclick="clearHotel('hotel')">清除选择</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
function selectHotel(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
function clearHotel(id)
|
||||
{
|
||||
$('#'+id+'-value').val('');
|
||||
$('#'+id+'-title').val('');
|
||||
}
|
||||
</script>
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="employee_title" id="employee-title" value="<?=isset($search['employee_title'])?$search['employee_title']:'';?>" placeholder="点击选择该客户的介绍人" autocomplete="off" href="<?=Url::toRoute(['employee/select','callback'=>'employee']);?>" w="80%;" h="90%;" title="选择该客户的介绍人" mini="load">
|
||||
<input type="hidden" class="form-control" name="search[employee]" id="employee-value" value="<?=isset($search['employee'])?$search['employee']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-info" onclick="clearEmployee('employee')">清除选择</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
function selectEmployee(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
function clearEmployee(id)
|
||||
{
|
||||
$('#'+id+'-value').val('');
|
||||
$('#'+id+'-title').val('');
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-12">
|
||||
<button type="submit" class="btn btn-sm btn-warning"> 搜索</button>
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('guest/new')?>">新增客户</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<!--分页-->
|
||||
<div class="ibox-content" style="padding:0;text-align: center;">
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-title"><?= Html::encode($this->title) ?></div>
|
||||
<div class="ibox-content">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>酒店及业务员</th>
|
||||
<th>姓名</th>
|
||||
<th>联系方式</th>
|
||||
<th>消费信息</th>
|
||||
<th>备忘</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($guests as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>
|
||||
【来源酒店】<code><?=isset($hotels[$vo['hotel_id']]['title'])?$hotels[$vo['hotel_id']]['title']:'未设置'?></code><br>
|
||||
【来源渠道】<code><?=isset(Yii::$app->params['saleChannels'][$vo['channel']]) ? Yii::$app->params['saleChannels'][$vo['channel']]:'未设置'?></code><br>
|
||||
【业务员】<code><?=isset($employees[$vo['employee_id']]['name'])?$employees[$vo['employee_id']]['name']:'未关联'?></code>
|
||||
</td>
|
||||
<td>
|
||||
<kbd>姓名</kbd><?=$vo['name']?><code>【<?=$gender[$vo['gender']]?>】</code><br>
|
||||
<kbd>昵称</kbd><?=$exts[$vo['mid']]['nickname']?><br>
|
||||
<kbd>称谓</kbd><?=$exts[$vo['mid']]['title']?>
|
||||
</td>
|
||||
<td>
|
||||
【手机】<?=isset($vo['mobile']) ? $vo['mobile']:''?><br>
|
||||
【常在省份】<?=isset($vo['province']) ? (isset(Yii::$app->params['regionAreas'][$vo['province']])?Yii::$app->params['regionAreas'][$vo['province']]:'') : ''?>
|
||||
</td>
|
||||
<td>
|
||||
【上次入住时间】<?=isset($vo['last_checkin']) && $vo['last_checkin']>0 ? date('Y-m-d',$vo['last_checkin']) : '未记录'?><br>
|
||||
【预存余额】<?=isset($vo['money']) ? $vo['money'] : 0?><br>
|
||||
【积分】<?=isset($vo['jifen']) ? $vo['jifen'] : 0?><br>
|
||||
</td>
|
||||
<td>
|
||||
【上次联系时间】<?=isset($vo['last_contact']) && $vo['last_contact']>0 ? date('Y-m-d',$vo['last_contact']) : '未记录'?><br>
|
||||
【生日】<?=isset($exts[$vo['mid']]['birthday'])? $exts[$vo['mid']]['birthday'] : '未记录'?><br>
|
||||
【评分】<?=isset($vo['score']) ? $vo['score'].'分': ''?><br>
|
||||
</td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['guest/ajax','id'=>$vo['id'],'do'=>'hide'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['guest/ajax','id'=>$vo['id'],'do'=>'show'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['guest/edit','id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a>
|
||||
<a title="点击将删除" href="<?=Url::toRoute(['guest/delete','id'=>$vo['id']])?>" class="btn btn-xs btn-danger" mini="act"><i class="fa fa-trash bigger-120"></i>删除</a>
|
||||
</p>
|
||||
<p>
|
||||
<a class="btn btn-success btn-xs" href="<?=Url::toRoute(['guest/ajax','id'=>$vo['id'],'do'=>'contact'])?>" mini="ajax">标记联系</a>
|
||||
</p>
|
||||
<p>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['guest/msg','id'=>$vo['id']])?>" w="80%;" h="90%;" title="短信营销" mini="load"><i class="fa fa-envelope"></i> 短信营销</a>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<!--分页-->
|
||||
<div class="ibox-content" style="padding:0;text-align: center;">
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
laydate.skin('molv');
|
||||
</script>
|
||||
Executable
+375
@@ -0,0 +1,375 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
|
||||
<!--百度编辑器-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.config.js')?>
|
||||
<!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->
|
||||
<!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.all.min.js')?>
|
||||
<?=Html::jsFile('@web/plugins/ueditor/lang/zh-cn/zh-cn.js')?>
|
||||
|
||||
<!--日期时间选择器-->
|
||||
<?=Html::jsFile('@web/js/plugins/layer/laydate/laydate.js')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/need/laydate.css')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/skins/molv/laydate.css')?>
|
||||
|
||||
<!--滑块选择器-->
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.css')?>
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.skinFlat.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/ionRangeSlider/ion.rangeSlider.min.js')?>
|
||||
|
||||
<!--旋扭输入-->
|
||||
<?=Html::jsFile('@web/js/plugins/jsKnob/jquery.knob.js')?>
|
||||
|
||||
<!--下拉选择、选项框-->
|
||||
<?=Html::cssFile('@web/css/plugins/chosen/chosen.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/chosen/chosen.jquery.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基础资料</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="alert alert-info">
|
||||
在此处录入客户的基础资料,如果是新客户,系统将自动为其新建一份档案;
|
||||
</div>
|
||||
<form role="form" class="form-horizontal m-t" method="post" action="<?=Url::toRoute('guest/save')?>" >
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 姓名:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="realname" placeholder="请输入客户的姓名" autocomplete="off" value="<?=isset($detail['realname'])?$detail['realname']:'';?>">
|
||||
<span class="help-block m-b-none">这里输入客户的真实姓名</span>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span>主手机号:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="mobile" id="mobile" placeholder="请输入客户的手机号" autocomplete="off" value="<?=isset($detail['mobile'])?$detail['mobile']:'';?>">
|
||||
<span class="help-block m-b-none">如<code>18608981880</code></span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">昵称:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="ext[nickname]" placeholder="请输入客户的昵称" autocomplete="off" value="<?=isset($detail['nickname'])?$detail['nickname']:'';?>">
|
||||
<span class="help-block m-b-none">这里输入客户的昵称,如<code>老姜</code>、<code>方少</code></span>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">称谓:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="ext[title]" placeholder="请输入客户的称谓" autocomplete="off" value="<?=isset($detail['title'])?$detail['title']:'';?>">
|
||||
<span class="help-block m-b-none">这里输入客户的称谓,如“周老师”、“吴叔”、“刘院长”、“王教授”</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">密码框:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="password" name="password" id="password" readonly="readonly" placeholder="请输入密码,可用于平台后期开放的用户端登陆" autocomplete="off" value="<?=isset($detail['password'])?$detail['password']: ''?>">
|
||||
<span class="help-block m-b-none">预留功能,如不填写,将默认使用初始密码<code><?=Yii::$app->params['defaultUserPassword']?></code></span>
|
||||
<script>
|
||||
setTimeout(function removeReadonly(){
|
||||
document.getElementById("password").removeAttribute("readonly");
|
||||
},500);
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">性别:</label>
|
||||
<div class="col-sm-4">
|
||||
<select class="form-control" name="gender">
|
||||
<option value="0" <?php if(isset($detail['gender']) && $detail['gender']==0){echo 'selected';}else{echo '';}?>>未知</option>
|
||||
<option value="1" <?php if(isset($detail['gender']) && $detail['gender']==1){echo 'selected';}else{echo '';}?>>男</option>
|
||||
<option value="2" <?php if(isset($detail['gender']) && $detail['gender']==2){echo 'selected';}else{echo '';}?>>女</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">总消费额:</label>
|
||||
<div class="col-sm-2">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="total_fee" id="total_fee-value" placeholder="该客户的总消费金额" autocomplete="off" value="<?=isset($detail['total_fee'])?$detail['total_fee']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-primary">元</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">常在省份:</label>
|
||||
<div class="col-sm-2">
|
||||
<select data-placeholder="选择省份..." class="form-control chosen-select" tabindex="2" name="province">
|
||||
<option value="">请选择省份</option>
|
||||
<?php foreach(Yii::$app->params['regionAreas'] as $key=>$val){?>
|
||||
<option value="<?=$key?>" hassubinfo="true" <?=isset($detail['province']) && $detail['province']==$key ? 'selected':'';?>><?=$val?></option>
|
||||
<?php }?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">国籍:</label>
|
||||
<div class="col-sm-3">
|
||||
<input type="text" class="form-control" name="country" id="country" placeholder="请输入客户国籍" autocomplete="off" value="<?=isset($detail['country'])?$detail['country']:'中国';?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">身份证号:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="idcard" id="idcard" placeholder="请输入客户身份证号" autocomplete="off" value="<?=isset($detail['idcard'])?$detail['idcard']:'';?>">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">护照号:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="passport" id="passport" placeholder="请输入客户护照号" autocomplete="off" value="<?=isset($detail['passport'])?$detail['passport']:'';?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">生日:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control layer-date" type="text" name="ext[birthday]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['birthday'])?$detail['birthday']:''?>">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">来源渠道:</label>
|
||||
<div class="col-sm-4">
|
||||
<select data-placeholder="选择渠道..." class="form-control chosen-select" tabindex="2" name="channel">
|
||||
<option value="">请选择渠道</option>
|
||||
<?php foreach(Yii::$app->params['saleChannels'] as $key=>$val){?>
|
||||
<option value="<?=$key?>" hassubinfo="true" <?=isset($detail['channel']) && $detail['channel']==$key ? 'selected':'';?>><?=$val?></option>
|
||||
<?php }?>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">评分:</label>
|
||||
<div class="col-sm-9">
|
||||
<input id="score" name="score" type="number" value="<?=isset($detail['score'])?($detail['score']>=100?100:$detail['score']):60?>">
|
||||
<span class="help-block m-b-none">对客户打分,该评分仅作为内部评判客户等级、沟通便利性等参考</span>
|
||||
</div>
|
||||
<script>
|
||||
var score = <?=isset($detail['score'])?($detail['score']>=100?100:$detail['score']):60?>;
|
||||
score = score < 0 ? 0 : score;
|
||||
$("#score").ionRangeSlider({
|
||||
min: 0,
|
||||
max: 100,
|
||||
postfix: " 分",
|
||||
from: score
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">更多手机号:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="ext[mobiles]" placeholder="请输入其他手机号" autocomplete="off" value="<?=isset($detail['mobiles'])?$detail['mobiles']:'';?>">
|
||||
<span class="help-block m-b-none">多个手机号时,号码间用逗号(<kbd>,</kbd> )隔开;如<code>18608981880</code><kbd>,</kbd><code>13812345678</code>。</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">客户照片:</label>
|
||||
<div class="col-sm-9">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="thumb" id="thumb-value" placeholder="如有客户照片,可上传一张" autocomplete="off" value="<?=isset($detail['thumb'])?$detail['thumb']:'';?>"> <span class="input-group-btn"> <button type="button" class="btn btn-primary" data-id="thumb-value" href="<?= Url::toRoute(['upload/image','multi'=>false,'callback'=>'thumb']);?>" w="80%;" h="90%;" title="选择或上传图片" mini="load">选择图片
|
||||
</button> </span>
|
||||
</div>
|
||||
<div class="input-group " style="margin-top:.5em;">
|
||||
<img id="thumb-preview" src="<?=isset($detail['thumb'])? Url::base(true)."/../../upload".$detail['thumb']:'../img/nopic.jpg';?>" onerror="this.src='../img/nopic.jpg'; this.title='图片未找到.'" class="img-responsive img-thumbnail" width="150">
|
||||
<em class="close" style="position:absolute; top: 0px; right: -14px;" title="删除这张图片" onclick="deleteImage(this)">×</em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">关联酒店:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="hotel_title" id="hotel-title" value="<?=isset($detail['hotel_title'])?$detail['hotel_title']:'';?>" placeholder="点击选择关联酒店" autocomplete="off" href="<?=Url::toRoute(['hotel/select','callback'=>'hotel']);?>" w="80%;" h="90%;" title="选择所在关联酒店" mini="load">
|
||||
<input type="hidden" class="form-control" name="hotel" id="hotel-value" value="<?=isset($detail['hotel_id'])?$detail['hotel_id']:0;?>">
|
||||
</div>
|
||||
<script>
|
||||
function selectHotel(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
</script>
|
||||
|
||||
<label class="col-sm-1 control-label">关联员工:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="employee_title" id="employee-title" value="<?=isset($detail['employee_title'])?$detail['employee_title']:'';?>" placeholder="点击选择该客户的介绍人" autocomplete="off" href="<?=Url::toRoute(['employee/select','callback'=>'employee']);?>" w="80%;" h="90%;" title="选择该客户的介绍人" mini="load">
|
||||
<input type="hidden" class="form-control" name="employee" id="employee-value" value="<?=isset($detail['employee_id'])?$detail['employee_id']:0;?>">
|
||||
</div>
|
||||
<script>
|
||||
function selectEmployee(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
</script>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">最近入住日期:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control layer-date" type="text" name="last_checkin" placeholder="请选择时间" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['last_checkin'])?$detail['last_checkin']:''?>">
|
||||
</div>
|
||||
<label class="col-sm-1 control-label">上次业务联系时间:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control layer-date" type="text" name="last_contact" placeholder="请选择时间" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['last_contact'])?$detail['last_contact']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">是否显示:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<div class="radio radio-primary radio-inline">
|
||||
<input type="radio" <?=(isset($detail['status_code'])&&$detail['status_code']==1)?'checked':'';?> value="1" id="status_code1" name="status_code">
|
||||
<label for="status_code">是</label>
|
||||
</div>
|
||||
<div class="radio radio-primary radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['status_code']))||isset($detail['status_code'])&&$detail['status_code']==0)?'checked':'';?> value="0" id="status_code0" name="status_code">
|
||||
<label for="status_code">否</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">备注:</label>
|
||||
<div class="col-sm-9">
|
||||
<textarea id="editor" name="editor" style="min-height:300px;"><?=isset($detail['remark'])?$detail['remark']:''?></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-12 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存内容</button>
|
||||
<button class="btn btn-white" type="submit">取消</button>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('guest/list')?>">客户列表</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function showImageFrame(obj){
|
||||
//取预设参数
|
||||
var id,title,width,height,url;
|
||||
id = $(obj).attr('data-id');
|
||||
title = $(obj).attr('data-title');
|
||||
width = $(obj).attr('data-width');
|
||||
height = $(obj).attr('data-height');
|
||||
url = $(obj).attr('data-src');
|
||||
//iframe层
|
||||
parent.layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: true,
|
||||
shade: 0.8,
|
||||
area: [width, height],
|
||||
content: url //iframe的url
|
||||
});
|
||||
}
|
||||
|
||||
function deleteImage(elm){
|
||||
$(elm).prev().attr("src", "../img/nopic.jpg");
|
||||
$(elm).parent().prev().find("input").val("");
|
||||
parent.layer.msg('图片已删除;您可重新上传');
|
||||
}
|
||||
|
||||
function selectImage(title,path,src,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('图片已选择');
|
||||
$('#'+callback+'-value').val(path);
|
||||
$('#'+callback+'-preview').attr('src',src);
|
||||
}
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
//实例化编辑器
|
||||
//建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
|
||||
var ue = UE.getEditor('editor');
|
||||
/* 传入参数表,添加到已有参数表里 */
|
||||
ue.ready(function() {
|
||||
ue.execCommand('serverparam', {
|
||||
'siteId': "<?=Yii::$app->params['siteId']?>",
|
||||
'pid': "<?=Yii::$app->session->get('pid')?>"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<script>
|
||||
laydate.skin('molv');
|
||||
$(document).ready(function() {
|
||||
var config = {
|
||||
".chosen-select": {},
|
||||
".chosen-select-deselect": {
|
||||
allow_single_deselect: !0
|
||||
},
|
||||
".chosen-select-no-single": {
|
||||
disable_search_threshold: 10
|
||||
},
|
||||
".chosen-select-no-results": {
|
||||
no_results_text: "Oops, nothing found!"
|
||||
},
|
||||
".chosen-select-width": {
|
||||
width: "95%"
|
||||
}
|
||||
};
|
||||
for (var selector in config) $(selector).chosen(config[selector]);
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
.laydate_body .laydate_top{
|
||||
padding:0;
|
||||
}
|
||||
.laydate_body .laydate_ym{
|
||||
/*margin:0;
|
||||
padding:5px;*/
|
||||
}
|
||||
.laydate_body .laydate_table{
|
||||
border:0;
|
||||
border-bottom: 1px solid rgb(204, 204, 204);
|
||||
}
|
||||
.laydate_body .laydate_bottom {
|
||||
border: 0;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.chosen-container-single .chosen-single{
|
||||
line-height:30px;
|
||||
}
|
||||
</style>
|
||||
Executable
+108
@@ -0,0 +1,108 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-12-04 22:32:09
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '客户列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('guest/new')?>">新增客户</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('guest/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户姓名" name="title" value="<?=$search['title']?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>门店及业务员</th>
|
||||
<th>姓名</th>
|
||||
<th>联系方式</th>
|
||||
<th>备忘</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($guests as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>
|
||||
【网点】<code><?=isset($hotels[$vo['store_id']]['title'])?$hotels[$vo['store_id']]['title']:'未设置'?></code><br>
|
||||
【业务员】<?=isset($employees[$vo['employee_id']]['name'])?$employees[$vo['employee_id']]['name']:'未关联'?>
|
||||
</td>
|
||||
<td>
|
||||
<kbd>姓名</kbd><?=$exts[$vo['mid']]['realname']?><code>【<?=$gender[$vo['gender']]?>】</code><br>
|
||||
<kbd>昵称</kbd><?=$exts[$vo['mid']]['nickname']?><br>
|
||||
<kbd>称谓</kbd><?=$exts[$vo['mid']]['title']?>
|
||||
</td>
|
||||
<td>
|
||||
【手机】<?=$users[$vo['mid']]['mobile']?><br>
|
||||
【常在省份】<?=isset($vo['province']) ? (isset(Yii::$app->params['regionAreas'][$vo['province']])?Yii::$app->params['regionAreas'][$vo['province']]:'') : ''?>
|
||||
</td>
|
||||
<td>
|
||||
【上次发车时间】<?=isset($vo['last_send']) && $vo['last_send']>0 ? date('Y-m-d',$vo['last_send']) : '未记录'?><br>
|
||||
【上次联系时间】<?=isset($vo['last_contact']) && $vo['last_contact']>0 ? date('Y-m-d',$vo['last_contact']) : '未记录'?><br>
|
||||
【评分|星级】<?=isset($vo['score']) ? $vo['score'].'分': ''?><?=isset($vo['level']) ? $vo['level'].'级': ''?><br>
|
||||
</td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['carowner/ajax','id'=>$vo['id'],'do'=>'out'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['carowner/ajax','id'=>$vo['id'],'do'=>'in'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" onclick="parent.selectCarOwner('<?=$vo['realname']?>','<?=$vo['id']?>','<?=$callback?>');">选择</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+95
@@ -0,0 +1,95 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-12-02 12:49:11
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '员工列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('employee/new')?>">新增员工</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('employee/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入员工姓名" name="title" value="<?=$search['title']?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>网点门店</th>
|
||||
<th>姓名</th>
|
||||
<th>手机</th>
|
||||
<th>性别</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($employees as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>【<code><?=isset($stores[$vo['store_id']]['title'])?$stores[$vo['store_id']]['title']:'未设置'?></code>】</td>
|
||||
<td><?=$vo['name']?></td>
|
||||
<td><?=$vo['mobile']?></td>
|
||||
<td><?=$gender[$vo['gender']]?></td>
|
||||
<td>
|
||||
<?php if($vo['status']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['employee/ajax','id'=>$vo['id'],'do'=>'out'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['employee/ajax','id'=>$vo['id'],'do'=>'in'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['employee/edit','id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a>
|
||||
<a title="点击将删除" href="<?=Url::toRoute(['employee/delete','id'=>$vo['id']])?>" class="btn btn-xs btn-danger" mini="act"><i class="fa fa-trash bigger-120"></i>删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+169
@@ -0,0 +1,169 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
|
||||
<!--百度编辑器-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.config.js')?>
|
||||
<!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->
|
||||
<!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.all.min.js')?>
|
||||
<?=Html::jsFile('@web/plugins/ueditor/lang/zh-cn/zh-cn.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>员工管理</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="alert alert-info">
|
||||
此处录入各网点/门店/办事处/分公司的员工资料
|
||||
</div>
|
||||
<form class="form-horizontal m-t" method="post" action="<?=Url::toRoute('employee/save')?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 姓名:</label>
|
||||
<div class="col-sm-2">
|
||||
<input class="form-control" type="text" name="name" value="<?=isset($detail['name'])?$detail['name']:'';?>" placeholder="请输入员工姓名" autocomplete="off">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 手机号:</label>
|
||||
<div class="col-sm-2">
|
||||
<input class="form-control" type="text" name="mobile" value="<?=isset($detail['mobile'])?$detail['mobile']:'';?>" placeholder="请输入手机号码" autocomplete="off">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 性别:</label>
|
||||
<div class="col-sm-2">
|
||||
<select class="form-control" name="gender">
|
||||
<option value="0" <?php if(isset($detail['gender']) && $detail['gender']==0){echo 'selected';}else{echo '';}?>>未知</option>
|
||||
<option value="1" <?php if(isset($detail['gender']) && $detail['gender']==1){echo 'selected';}else{echo '';}?>>男</option>
|
||||
<option value="2" <?php if(isset($detail['gender']) && $detail['gender']==2){echo 'selected';}else{echo '';}?>>女</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 对应网点:</label>
|
||||
<div class="col-sm-9">
|
||||
<input type="text" class="form-control" name="store_title" id="store-title" value="<?=isset($detail['store_title'])?$detail['store_title']:'';?>" placeholder="点击选择所在网点" autocomplete="off" href="<?=Url::toRoute(['store/select','callback'=>'store']);?>" w="80%;" h="90%;" title="选择所在网点" mini="load">
|
||||
<input type="hidden" class="form-control" name="store" id="store-value" value="<?=isset($detail['store_id'])?$detail['store_id']:0;?>">
|
||||
</div>
|
||||
<script>
|
||||
function selectStore(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">备注:</label>
|
||||
<div class="col-sm-9">
|
||||
<textarea id="editor" name="editor" style="min-height:300px;"><?=isset($detail['remark'])?$detail['remark']:''?></textarea>
|
||||
<script type="text/javascript">
|
||||
//实例化编辑器
|
||||
//建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
|
||||
var ue = UE.getEditor('editor');
|
||||
/* 传入参数表,添加到已有参数表里 */
|
||||
ue.ready(function() {
|
||||
ue.execCommand('serverparam', {
|
||||
'siteId': "<?=Yii::$app->params['siteId']?>",
|
||||
'pid': "<?=Yii::$app->session->get('pid')?>",
|
||||
'attachSrc': "<?=Yii::$app->params['attachSrc']?>",
|
||||
'attachDir': "<?=Yii::$app->params['attachDir']?>"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">是否在职:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['status'])&&$detail['status']==1)?'checked':'';?> value="1" id="status1" name="status">是</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['status']))||isset($detail['status'])&&$detail['status']==0)?'checked':'';?> value="0" id="status2" name="status">否</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">是否删除:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['deleted'])&&$detail['deleted']==1)?'checked':'';?> value="1" id="deleted1" name="deleted">是</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['deleted']))||isset($detail['deleted'])&&$detail['deleted']==0)?'checked':'';?> value="0" id="deleted2" name="deleted">否</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-12 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('employee/list')?>">全部员工</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function showImageFrame(obj){
|
||||
//取预设参数
|
||||
var id,title,width,height,url;
|
||||
id = $(obj).attr('data-id');
|
||||
title = $(obj).attr('data-title');
|
||||
width = $(obj).attr('data-width');
|
||||
height = $(obj).attr('data-height');
|
||||
url = $(obj).attr('data-src');
|
||||
//iframe层
|
||||
parent.layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: true,
|
||||
shade: 0.8,
|
||||
area: [width, height],
|
||||
content: url //iframe的url
|
||||
});
|
||||
}
|
||||
|
||||
function deleteImage(elm){
|
||||
$(elm).prev().attr("src", "../img/nopic.jpg");
|
||||
$(elm).parent().prev().find("input").val("");
|
||||
parent.layer.msg('图片已删除;您可重新上传');
|
||||
}
|
||||
|
||||
function selectImage(title,path,src,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('图片已选择');
|
||||
$('#'+callback+'-value').val(path);
|
||||
$('#'+callback+'-preview').attr('src',src);
|
||||
}
|
||||
</script>
|
||||
Executable
+94
@@ -0,0 +1,94 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-12-02 19:22:57
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '员工列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('employee/new')?>">新增员工</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('employee/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入员工姓名" name="title" value="<?=$search['title']?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>网点门店</th>
|
||||
<th>姓名</th>
|
||||
<th>手机</th>
|
||||
<th>性别</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($employees as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>【<code><?=isset($stores[$vo['store_id']]['title'])?$stores[$vo['store_id']]['title']:'未设置'?></code>】</td>
|
||||
<td><?=$vo['name']?></td>
|
||||
<td><?=$vo['mobile']?></td>
|
||||
<td><?=$gender[$vo['gender']]?></td>
|
||||
<td>
|
||||
<?php if($vo['status']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['employee/ajax','id'=>$vo['id'],'do'=>'out'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['employee/ajax','id'=>$vo['id'],'do'=>'in'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" onclick="parent.selectEmployee('<?=$vo['name']?>','<?=$vo['id']?>','<?=$callback?>');">选择</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+90
@@ -0,0 +1,90 @@
|
||||
<?php
|
||||
# @Author: 嗨噜客科技(www.hiluker.cn) <fm453>
|
||||
# @Date: 1970-01-01T08:00:00+08:00
|
||||
# @Email: fm453@hiluker.com
|
||||
# @Last modified by: fm453
|
||||
# @Last modified time: 2021-09-15T17:45:52+08:00
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
$this->title = isset($title) ? $title : '提示';
|
||||
?>
|
||||
<div class="site-error">
|
||||
<div style="text-align: center;">
|
||||
<h1>温馨提示</h1><br>
|
||||
</div>
|
||||
<h4 style="margin: 10px auto;text-align: center;background-color: #1ab394; color: #ffffff;width: 90%;line-height: 50px;border-radius: 5px;"><i class="fa fa-spinner fa-spin"></i> 系统已记录您的操作请求,敬请稍候。为了便于工程师进行检查,烦请您对您发现的情况尽可能准确地说明告知,感谢您的反馈……</h4>
|
||||
<form role="form" class="form-horizontal m-t" action="" method="post">
|
||||
<input name="_csrf" type="hidden" id="_csrf" value="<?= Yii::$app->request->csrfToken ?>">
|
||||
<input name="code" type="hidden" id="code" value="<?= isset($code) ? $code : 0 ?>">
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><i class="fa fa-spin" style="color:#f00;">*</i>出错页面:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="url" placeholder="当前报错页面的网址" autocomplete="off" value="<?= Html::encode($url) ?>">
|
||||
<span class="help-block m-b-none">页面网址由系统自动获取,您也可以直接填入修改</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">错误描述:</label>
|
||||
<div class="col-sm-9">
|
||||
<textarea class="form-control" type="text" name="desc" placeholder="请描述一下您遇到的问题,比如在什么情况下出现的,出错时您正在操作页面的什么东西,等" autocomplete="off"><?php if(isset($data['desc'])){?><?= Html::encode($data['desc']) ?><?php }?></textarea>
|
||||
<span class="help-block m-b-none">您描述的越详细、清楚,越有利于工程师排查问题</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">您的称谓:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="name" placeholder="怎么称呼您呢?" value="<?php if(isset($data['name'])){?><?= Html::encode($data['name']) ?><?php }?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">联系方式:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="mobile" placeholder="请输入您的手机号,以便工程师与您联系咨询" value="<?php if(isset($data['mobile'])){?><?= Html::encode($data['mobile']) ?><?php }?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">QQ:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="QQ" placeholder="请输入您的QQ号,以便工程师与您联系咨询" value="<?php if(isset($data['QQ'])){?><?= Html::encode($data['QQ']) ?><?php }?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">微信:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="wechat" placeholder="请输入您的微信号,以便工程师与您联系咨询" value="<?php if(isset($data['wechat'])){?><?= Html::encode($data['wechat']) ?><?php }?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">反馈时间:</label>
|
||||
<div class="col-sm-9">
|
||||
<p class="form-control-static"><?php if(isset($data['time'])){?><?= Html::encode($data['time']) ?><?php }else{echo date('Y-m-d h:i');}?></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">接收通知:</label>
|
||||
<div class="col-sm-9">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" value="1" <?php if(isset($data['is_notice']) && $data['is_notice']==1){?> checked="true" <?php }?> id="optionsRadios1" name="is_notice">问题解决后,请联系我</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?php if(isset($data['is_notice']) && $data['is_notice']==0){?> checked="true" <?php }?> value="0" id="optionsRadios2" name="is_notice">我不需要接收该报错的解决结果通知</label>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-12 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">反馈</button>
|
||||
<button class="btn btn-white" type="button">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="alert alert-info alert-dismissible fade in" role="alert">
|
||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||
<h4>您还可以扫描工程师客服微信直接反馈(遇忙时,工程师可能无法快速响应,请耐心等待);申请添加好友时请备注“运车系统反馈”
|
||||
</h4>
|
||||
<div style="text-align: center;"><img class="img-round" src="<?=Yii::getAlias('@web')?>/img/fm-qrcode.jpg" width="230px" height="230px"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
Executable
+309
@@ -0,0 +1,309 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2019-01-08 12:12:22
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '客户列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<!--日期时间选择器-->
|
||||
<?=Html::jsFile('@web/js/plugins/layer/laydate/laydate.js')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/need/laydate.css')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/skins/molv/laydate.css')?>
|
||||
|
||||
<style>
|
||||
.laydate_body .laydate_top{
|
||||
padding:0;
|
||||
}
|
||||
.laydate_body .laydate_ym{
|
||||
/*margin:0;
|
||||
padding:5px;*/
|
||||
}
|
||||
.laydate_body .laydate_table{
|
||||
border:0;
|
||||
border-bottom: 1px solid rgb(204, 204, 204);
|
||||
}
|
||||
.laydate_body .laydate_bottom {
|
||||
border: 0;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!--滑块选择器-->
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.css')?>
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.skinFlat.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/ionRangeSlider/ion.rangeSlider.min.js')?>
|
||||
|
||||
<!--下拉选择、选项框-->
|
||||
<?=Html::cssFile('@web/css/plugins/chosen/chosen.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/chosen/chosen.jquery.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content" style="text-align: center;">
|
||||
<h1>搜索与筛选</h1>
|
||||
<form role="form" class="form-horizontal m-t" action="<?=Url::toRoute('guest/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">姓名</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户姓名" name="search[title]" value="<?=$search['title']?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">昵称</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户昵称" name="search[nickname]" value="<?=isset($search['nickname'])?$search['nickname']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">手机号搜索</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户手机号" name="search[phone]" value="<?=isset($search['phone'])?$search['phone']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">入住月份</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[checkin_m]" placeholder="请选择月份" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM'})" value="<?=isset($search['checkin_m'])?$search['checkin_m']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">入住时间不早于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[checkin_after]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['checkin_after'])?$search['checkin_after']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">入住时间不晚于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[checkin_before]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['checkin_before'])?$search['checkin_before']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">生日月份</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[birthday_m]" placeholder="请选择月份" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM'})" value="<?=isset($search['birthday_m'])?$search['birthday_m']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">生日不早于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[birthday_after]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['birthday_after'])?$search['birthday_after']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">生日不晚于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control layer-date" type="text" name="search[birthday_before]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($search['birthday_before'])?$search['birthday_before']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<select data-placeholder="选择来源渠道..." class="select-sm form-control chosen-select" tabindex="2" name="search[channel]">
|
||||
<option value="">选择来源渠道</option>
|
||||
<?php foreach(Yii::$app->params['saleChannels'] as $key=>$val){?>
|
||||
<option value="<?=$key?>" hassubinfo="true" <?=isset($search['channel']) && $search['channel']==$key ? 'selected':'';?>><?=$val?></option>
|
||||
<?php }?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="hotel_title" id="hotel-title" value="<?=isset($search['hotel_title'])?$search['hotel_title']:'';?>" placeholder="点击选择关联酒店" autocomplete="off" href="<?=Url::toRoute(['hotel/select','callback'=>'hotel']);?>" w="80%;" h="90%;" title="选择所在关联酒店" mini="load">
|
||||
<input type="hidden" class="form-control" name="search[hotel]" id="hotel-value" value="<?=isset($search['hotel'])?$search['hotel']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-info" onclick="clearHotel('hotel')">清除选择</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
function selectHotel(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
function clearHotel(id)
|
||||
{
|
||||
$('#'+id+'-value').val('');
|
||||
$('#'+id+'-title').val('');
|
||||
}
|
||||
</script>
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="employee_title" id="employee-title" value="<?=isset($search['employee_title'])?$search['employee_title']:'';?>" placeholder="点击选择该客户的介绍人" autocomplete="off" href="<?=Url::toRoute(['employee/select','callback'=>'employee']);?>" w="80%;" h="90%;" title="选择该客户的介绍人" mini="load">
|
||||
<input type="hidden" class="form-control" name="search[employee]" id="employee-value" value="<?=isset($search['employee'])?$search['employee']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-info" onclick="clearEmployee('employee')">清除选择</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
function selectEmployee(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
function clearEmployee(id)
|
||||
{
|
||||
$('#'+id+'-value').val('');
|
||||
$('#'+id+'-title').val('');
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-12">
|
||||
<button type="submit" class="btn btn-sm btn-warning"> 搜索</button>
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('guest/new')?>">新增客户</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<!--分页-->
|
||||
<div class="ibox-content" style="padding:0;text-align: center;">
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-title"><?= Html::encode($this->title) ?></div>
|
||||
<div class="ibox-content">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>酒店及业务员</th>
|
||||
<th>姓名</th>
|
||||
<th>联系方式</th>
|
||||
<th>消费信息</th>
|
||||
<th>备忘</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($guests as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>
|
||||
【来源酒店】<code><?=isset($hotels[$vo['hotel_id']]['title'])?$hotels[$vo['hotel_id']]['title']:'未设置'?></code><br>
|
||||
【来源渠道】<code><?=isset(Yii::$app->params['saleChannels'][$vo['channel']]) ? Yii::$app->params['saleChannels'][$vo['channel']]:'未设置'?></code><br>
|
||||
【业务员】<code><?=isset($employees[$vo['employee_id']]['name'])?$employees[$vo['employee_id']]['name']:'未关联'?></code>
|
||||
</td>
|
||||
<td>
|
||||
<kbd>姓名</kbd><?=$vo['name']?><code>【<?=$gender[$vo['gender']]?>】</code><br>
|
||||
<kbd>昵称</kbd><?=$exts[$vo['mid']]['nickname']?><br>
|
||||
<kbd>称谓</kbd><?=$exts[$vo['mid']]['title']?>
|
||||
</td>
|
||||
<td>
|
||||
【手机】<?=isset($vo['mobile']) ? $vo['mobile']:''?><br>
|
||||
【常在省份】<?=isset($vo['province']) ? (isset(Yii::$app->params['regionAreas'][$vo['province']])?Yii::$app->params['regionAreas'][$vo['province']]:'') : ''?>
|
||||
</td>
|
||||
<td>
|
||||
【上次入住时间】<?=isset($vo['last_checkin']) && $vo['last_checkin']>0 ? date('Y-m-d',$vo['last_checkin']) : '未记录'?><br>
|
||||
【预存余额】<?=isset($vo['money']) ? $vo['money'] : 0?><br>
|
||||
【积分】<?=isset($vo['jifen']) ? $vo['jifen'] : 0?><br>
|
||||
</td>
|
||||
<td>
|
||||
【上次联系时间】<?=isset($vo['last_contact']) && $vo['last_contact']>0 ? date('Y-m-d',$vo['last_contact']) : '未记录'?><br>
|
||||
【生日】<?=isset($exts[$vo['mid']]['birthday'])? $exts[$vo['mid']]['birthday'] : '未记录'?><br>
|
||||
【评分】<?=isset($vo['score']) ? $vo['score'].'分': ''?><br>
|
||||
</td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['guest/ajax','id'=>$vo['id'],'do'=>'hide'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['guest/ajax','id'=>$vo['id'],'do'=>'show'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['guest/edit','id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a>
|
||||
<a title="点击将删除" href="<?=Url::toRoute(['guest/delete','id'=>$vo['id']])?>" class="btn btn-xs btn-danger" mini="act"><i class="fa fa-trash bigger-120"></i>删除</a>
|
||||
</p>
|
||||
<p>
|
||||
<a class="btn btn-success btn-xs" href="<?=Url::toRoute(['guest/ajax','id'=>$vo['id'],'do'=>'contact'])?>" mini="ajax">标记联系</a>
|
||||
</p>
|
||||
<p>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['guest/msg','id'=>$vo['id']])?>" w="80%;" h="90%;" title="短信营销" mini="load"><i class="fa fa-envelope"></i> 短信营销</a>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<!--分页-->
|
||||
<div class="ibox-content" style="padding:0;text-align: center;">
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
laydate.skin('molv');
|
||||
</script>
|
||||
Executable
+378
@@ -0,0 +1,378 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
|
||||
<!--百度编辑器-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.config.js')?>
|
||||
<!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->
|
||||
<!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.all.min.js')?>
|
||||
<?=Html::jsFile('@web/plugins/ueditor/lang/zh-cn/zh-cn.js')?>
|
||||
|
||||
<!--日期时间选择器-->
|
||||
<?=Html::jsFile('@web/js/plugins/layer/laydate/laydate.js')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/need/laydate.css')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/skins/molv/laydate.css')?>
|
||||
|
||||
<!--滑块选择器-->
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.css')?>
|
||||
<?=Html::cssFile('@web/css/plugins/ionRangeSlider/ion.rangeSlider.skinFlat.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/ionRangeSlider/ion.rangeSlider.min.js')?>
|
||||
|
||||
<!--旋扭输入-->
|
||||
<?=Html::jsFile('@web/js/plugins/jsKnob/jquery.knob.js')?>
|
||||
|
||||
<!--下拉选择、选项框-->
|
||||
<?=Html::cssFile('@web/css/plugins/chosen/chosen.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/chosen/chosen.jquery.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基础资料</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="alert alert-info">
|
||||
在此处录入客户的基础资料,如果是新客户,系统将自动为其新建一份档案;
|
||||
</div>
|
||||
<form role="form" class="form-horizontal m-t" method="post" action="<?=Url::toRoute('guest/save')?>" >
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 姓名:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="realname" placeholder="请输入客户的姓名" autocomplete="off" value="<?=isset($detail['realname'])?$detail['realname']:'';?>">
|
||||
<span class="help-block m-b-none">这里输入客户的真实姓名</span>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span>主手机号:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="mobile" id="mobile" placeholder="请输入客户的手机号" autocomplete="off" value="<?=isset($detail['mobile'])?$detail['mobile']:'';?>">
|
||||
<span class="help-block m-b-none">如<code>18608981880</code></span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">昵称:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="ext[nickname]" placeholder="请输入客户的昵称" autocomplete="off" value="<?=isset($detail['nickname'])?$detail['nickname']:'';?>">
|
||||
<span class="help-block m-b-none">这里输入客户的昵称,如<code>老姜</code>、<code>方少</code></span>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">称谓:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="text" name="ext[title]" placeholder="请输入客户的称谓" autocomplete="off" value="<?=isset($detail['title'])?$detail['title']:'';?>">
|
||||
<span class="help-block m-b-none">这里输入客户的称谓,如“周老师”、“吴叔”、“刘院长”、“王教授”</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">密码框:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control" type="password" name="password" id="password" readonly="readonly" placeholder="请输入密码,可用于平台后期开放的用户端登陆" autocomplete="off" value="<?=isset($detail['password'])?$detail['password']: ''?>">
|
||||
<span class="help-block m-b-none">预留功能,如不填写,将默认使用初始密码<code><?=Yii::$app->params['defaultUserPassword']?></code></span>
|
||||
<script>
|
||||
setTimeout(function removeReadonly(){
|
||||
document.getElementById("password").removeAttribute("readonly");
|
||||
},500);
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">性别:</label>
|
||||
<div class="col-sm-4">
|
||||
<select class="form-control" name="gender">
|
||||
<option value="0" <?php if(isset($detail['gender']) && $detail['gender']==0){echo 'selected';}else{echo '';}?>>未知</option>
|
||||
<option value="1" <?php if(isset($detail['gender']) && $detail['gender']==1){echo 'selected';}else{echo '';}?>>男</option>
|
||||
<option value="2" <?php if(isset($detail['gender']) && $detail['gender']==2){echo 'selected';}else{echo '';}?>>女</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">总消费额:</label>
|
||||
<div class="col-sm-2">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="total_fee" id="total_fee-value" placeholder="该客户的总消费金额" autocomplete="off" value="<?=isset($detail['total_fee'])?$detail['total_fee']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-primary">元</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">常在省份:</label>
|
||||
<div class="col-sm-2">
|
||||
<select data-placeholder="选择省份..." class="form-control chosen-select" tabindex="2" name="province">
|
||||
<option value="">请选择省份</option>
|
||||
<?php foreach(Yii::$app->params['regionAreas'] as $key=>$val){?>
|
||||
<option value="<?=$key?>" hassubinfo="true" <?=isset($detail['province']) && $detail['province']==$key ? 'selected':'';?>><?=$val?></option>
|
||||
<?php }?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">国籍:</label>
|
||||
<div class="col-sm-3">
|
||||
<input type="text" class="form-control" name="country" id="country" placeholder="请输入客户国籍" autocomplete="off" value="<?=isset($detail['country'])?$detail['country']:'中国';?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">身份证号:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="idcard" id="idcard" placeholder="请输入客户身份证号" autocomplete="off" value="<?=isset($detail['idcard'])?$detail['idcard']:'';?>">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">护照号:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="passport" id="passport" placeholder="请输入客户护照号" autocomplete="off" value="<?=isset($detail['passport'])?$detail['passport']:'';?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">生日:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control layer-date" type="text" name="ext[birthday]" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['birthday'])?$detail['birthday']:''?>">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">来源渠道:</label>
|
||||
<div class="col-sm-4">
|
||||
<select data-placeholder="选择渠道..." class="form-control chosen-select" tabindex="2" name="channel">
|
||||
<option value="">请选择渠道</option>
|
||||
<?php foreach(Yii::$app->params['saleChannels'] as $key=>$val){?>
|
||||
<option value="<?=$key?>" hassubinfo="true" <?=isset($detail['channel']) && $detail['channel']==$key ? 'selected':'';?>><?=$val?></option>
|
||||
<?php }?>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">评分:</label>
|
||||
<div class="col-sm-9">
|
||||
<input id="score" name="score" type="number" value="<?=isset($detail['score'])?($detail['score']>=100?100:$detail['score']):60?>">
|
||||
<span class="help-block m-b-none">对客户打分,该评分仅作为内部评判客户等级、沟通便利性等参考</span>
|
||||
</div>
|
||||
<script>
|
||||
var score = <?=isset($detail['score'])?($detail['score']>=100?100:$detail['score']):60?>;
|
||||
score = score < 0 ? 0 : score;
|
||||
$("#score").ionRangeSlider({
|
||||
min: 0,
|
||||
max: 100,
|
||||
postfix: " 分",
|
||||
from: score
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">更多手机号:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="ext[mobiles]" placeholder="请输入其他手机号" autocomplete="off" value="<?=isset($detail['mobiles'])?$detail['mobiles']:'';?>">
|
||||
<span class="help-block m-b-none">多个手机号时,号码间用逗号(<kbd>,</kbd> )隔开;如<code>18608981880</code><kbd>,</kbd><code>13812345678</code>。</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">客户照片:</label>
|
||||
<div class="col-sm-9">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="thumb" id="thumb-value" placeholder="如有客户照片,可上传一张" autocomplete="off" value="<?=isset($detail['thumb'])?$detail['thumb']:'';?>"> <span class="input-group-btn"> <button type="button" class="btn btn-primary" data-id="thumb-value" href="<?= Url::toRoute(['upload/image','multi'=>false,'callback'=>'thumb']);?>" w="80%;" h="90%;" title="选择或上传图片" mini="load">选择图片
|
||||
</button> </span>
|
||||
</div>
|
||||
<div class="input-group " style="margin-top:.5em;">
|
||||
<img id="thumb-preview" src="<?=isset($detail['thumb'])? Yii::$app->params['attachSrc'].Yii::$app->params['attachDir'].$detail['thumb']:'../img/nopic.jpg';?>" onerror="this.src='../img/nopic.jpg'; this.title='图片未找到.'" class="img-responsive img-thumbnail" width="150">
|
||||
<em class="close" style="position:absolute; top: 0px; right: -14px;" title="删除这张图片" onclick="deleteImage(this)">×</em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">关联酒店:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="hotel_title" id="hotel-title" value="<?=isset($detail['hotel_title'])?$detail['hotel_title']:'';?>" placeholder="点击选择关联酒店" autocomplete="off" href="<?=Url::toRoute(['hotel/select','callback'=>'hotel']);?>" w="80%;" h="90%;" title="选择所在关联酒店" mini="load">
|
||||
<input type="hidden" class="form-control" name="hotel" id="hotel-value" value="<?=isset($detail['hotel_id'])?$detail['hotel_id']:0;?>">
|
||||
</div>
|
||||
<script>
|
||||
function selectHotel(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
</script>
|
||||
|
||||
<label class="col-sm-1 control-label">关联员工:</label>
|
||||
<div class="col-sm-4">
|
||||
<input type="text" class="form-control" name="employee_title" id="employee-title" value="<?=isset($detail['employee_title'])?$detail['employee_title']:'';?>" placeholder="点击选择该客户的介绍人" autocomplete="off" href="<?=Url::toRoute(['employee/select','callback'=>'employee']);?>" w="80%;" h="90%;" title="选择该客户的介绍人" mini="load">
|
||||
<input type="hidden" class="form-control" name="employee" id="employee-value" value="<?=isset($detail['employee_id'])?$detail['employee_id']:0;?>">
|
||||
</div>
|
||||
<script>
|
||||
function selectEmployee(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
</script>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">最近入住日期:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control layer-date" type="text" name="last_checkin" placeholder="请选择时间" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['last_checkin'])?$detail['last_checkin']:''?>">
|
||||
</div>
|
||||
<label class="col-sm-1 control-label">上次业务联系时间:</label>
|
||||
<div class="col-sm-4">
|
||||
<input class="form-control layer-date" type="text" name="last_contact" placeholder="请选择时间" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['last_contact'])?$detail['last_contact']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">是否显示:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<div class="radio radio-primary radio-inline">
|
||||
<input type="radio" <?=(isset($detail['status_code'])&&$detail['status_code']==1)?'checked':'';?> value="1" id="status_code1" name="status_code">
|
||||
<label for="status_code">是</label>
|
||||
</div>
|
||||
<div class="radio radio-primary radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['status_code']))||isset($detail['status_code'])&&$detail['status_code']==0)?'checked':'';?> value="0" id="status_code0" name="status_code">
|
||||
<label for="status_code">否</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">备注:</label>
|
||||
<div class="col-sm-9">
|
||||
<textarea id="editor" name="editor" style="min-height:300px;"><?=isset($detail['remark'])?$detail['remark']:''?></textarea>
|
||||
<script type="text/javascript">
|
||||
//实例化编辑器
|
||||
//建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
|
||||
var ue = UE.getEditor('editor');
|
||||
/* 传入参数表,添加到已有参数表里 */
|
||||
ue.ready(function() {
|
||||
ue.execCommand('serverparam', {
|
||||
'siteId': "<?=Yii::$app->params['siteId']?>",
|
||||
'pid': "<?=Yii::$app->session->get('pid')?>",
|
||||
'attachSrc': "<?=Yii::$app->params['attachSrc']?>",
|
||||
'attachDir': "<?=Yii::$app->params['attachDir']?>"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-12 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存内容</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('guest/list')?>">客户列表</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function showImageFrame(obj){
|
||||
//取预设参数
|
||||
var id,title,width,height,url;
|
||||
id = $(obj).attr('data-id');
|
||||
title = $(obj).attr('data-title');
|
||||
width = $(obj).attr('data-width');
|
||||
height = $(obj).attr('data-height');
|
||||
url = $(obj).attr('data-src');
|
||||
//iframe层
|
||||
parent.layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: true,
|
||||
shade: 0.8,
|
||||
area: [width, height],
|
||||
content: url //iframe的url
|
||||
});
|
||||
}
|
||||
|
||||
function deleteImage(elm){
|
||||
$(elm).prev().attr("src", "../img/nopic.jpg");
|
||||
$(elm).parent().prev().find("input").val("");
|
||||
parent.layer.msg('图片已删除;您可重新上传');
|
||||
}
|
||||
|
||||
function selectImage(title,path,src,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('图片已选择');
|
||||
$('#'+callback+'-value').val(path);
|
||||
$('#'+callback+'-preview').attr('src',src);
|
||||
}
|
||||
</script>
|
||||
|
||||
<script>
|
||||
laydate.skin('molv');
|
||||
$(document).ready(function() {
|
||||
var config = {
|
||||
".chosen-select": {},
|
||||
".chosen-select-deselect": {
|
||||
allow_single_deselect: !0
|
||||
},
|
||||
".chosen-select-no-single": {
|
||||
disable_search_threshold: 10
|
||||
},
|
||||
".chosen-select-no-results": {
|
||||
no_results_text: "Oops, nothing found!"
|
||||
},
|
||||
".chosen-select-width": {
|
||||
width: "95%"
|
||||
}
|
||||
};
|
||||
for (var selector in config) $(selector).chosen(config[selector]);
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
.laydate_body .laydate_top{
|
||||
padding:0;
|
||||
}
|
||||
.laydate_body .laydate_ym{
|
||||
/*margin:0;
|
||||
padding:5px;*/
|
||||
}
|
||||
.laydate_body .laydate_table{
|
||||
border:0;
|
||||
border-bottom: 1px solid rgb(204, 204, 204);
|
||||
}
|
||||
.laydate_body .laydate_bottom {
|
||||
border: 0;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.chosen-container-single .chosen-single{
|
||||
line-height:30px;
|
||||
}
|
||||
</style>
|
||||
Executable
+108
@@ -0,0 +1,108 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-12-04 22:32:09
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '客户列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('guest/new')?>">新增客户</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('guest/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入客户姓名" name="title" value="<?=$search['title']?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>门店及业务员</th>
|
||||
<th>姓名</th>
|
||||
<th>联系方式</th>
|
||||
<th>备忘</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($guests as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>
|
||||
【网点】<code><?=isset($hotels[$vo['store_id']]['title'])?$hotels[$vo['store_id']]['title']:'未设置'?></code><br>
|
||||
【业务员】<?=isset($employees[$vo['employee_id']]['name'])?$employees[$vo['employee_id']]['name']:'未关联'?>
|
||||
</td>
|
||||
<td>
|
||||
<kbd>姓名</kbd><?=$exts[$vo['mid']]['realname']?><code>【<?=$gender[$vo['gender']]?>】</code><br>
|
||||
<kbd>昵称</kbd><?=$exts[$vo['mid']]['nickname']?><br>
|
||||
<kbd>称谓</kbd><?=$exts[$vo['mid']]['title']?>
|
||||
</td>
|
||||
<td>
|
||||
【手机】<?=$users[$vo['mid']]['mobile']?><br>
|
||||
【常在省份】<?=isset($vo['province']) ? (isset(Yii::$app->params['regionAreas'][$vo['province']])?Yii::$app->params['regionAreas'][$vo['province']]:'') : ''?>
|
||||
</td>
|
||||
<td>
|
||||
【上次发车时间】<?=isset($vo['last_send']) && $vo['last_send']>0 ? date('Y-m-d',$vo['last_send']) : '未记录'?><br>
|
||||
【上次联系时间】<?=isset($vo['last_contact']) && $vo['last_contact']>0 ? date('Y-m-d',$vo['last_contact']) : '未记录'?><br>
|
||||
【评分|星级】<?=isset($vo['score']) ? $vo['score'].'分': ''?><?=isset($vo['level']) ? $vo['level'].'级': ''?><br>
|
||||
</td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['carowner/ajax','id'=>$vo['id'],'do'=>'out'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['carowner/ajax','id'=>$vo['id'],'do'=>'in'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" onclick="parent.selectCarOwner('<?=$vo['realname']?>','<?=$vo['id']?>','<?=$callback?>');">选择</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+91
@@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-12-11 01:33:31
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '酒店列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('hotel/new')?>">新增酒店</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('hotel/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input type="text" placeholder="请输入酒店名" name="title" class="input-sm form-control">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>区域地址</th>
|
||||
<th>名称</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($hotels as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>【<code><?=isset($citys[$vo['city']]['name'])?$citys[$vo['city']]['name']:'未设置'?></code>】<?=$vo['addr']?></td>
|
||||
<td><?=$vo['title']?></td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['hotel/ajax','id'=>$vo['id'],'do'=>'hide'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['hotel/ajax','id'=>$vo['id'],'do'=>'show'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['hotel/edit','id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a>
|
||||
<a title="点击将删除" href="<?=Url::toRoute(['hotel/delete','id'=>$vo['id']])?>" class="btn btn-xs btn-danger" mini="act"><i class="fa fa-trash bigger-120"></i>删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+141
@@ -0,0 +1,141 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-22">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>酒店管理</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="alert alert-info">
|
||||
此处录入酒店的基础资料
|
||||
</div>
|
||||
<form class="form-horizontal m-t" method="post" action="<?=Url::toRoute('hotel/save')?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span> 名称:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" name="title" value="<?=isset($detail['title'])?$detail['title']:'';?>" placeholder="请输入酒店名称" autocomplete="on">
|
||||
<span class="help-block m-b-none">如:海南嗨路客度假公寓三亚湾店</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span> 地理位置:</label>
|
||||
<div class="col-sm-3" style="margin-right: 0; padding-right: 0;">
|
||||
<input type="text" class="form-control" value="<?=isset($detail['lat'])?$detail['lat']:'';?>" placeholder="纬度" id="lat" name="lat"/>
|
||||
</div>
|
||||
<div class="col-sm-2" style="margin: 0;padding: 0;width: 3rem; line-height: 3rem;text-align: center;">--</div>
|
||||
<div class="col-sm-3" style="margin-left: 0; padding-left: 0;" >
|
||||
<input type="text" class="form-control" value="<?=isset($detail['longt'])?$detail['longt']:'';?>" placeholder="经度" id="lng" name="lng"/>
|
||||
</div>
|
||||
<div class="col-sm-2">
|
||||
<button type="button" mini="load" w="90%" h="90%" href="<?=Url::toRoute(['index/map','callback'=>'showLatLng','lat'=>isset($detail['lat'])?$detail['lat']:'0','lng'=>isset($detail['longt'])?$detail['longt']:'0']);?>" class="btn btn-w-m btn-primary">从地图选择</button>
|
||||
</div>
|
||||
<script>
|
||||
function showLatLng(lat,lng,detail){
|
||||
layer.closeAll();
|
||||
layer.msg('选取经纬度成功!');
|
||||
$("#lat").val(lat);
|
||||
$("#lng").val(lng);
|
||||
$("#address").val(detail);
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span> 办公地址:</label>
|
||||
<div class="col-sm-2">
|
||||
<input type="text" class="form-control" name="city_title" id="city-title" value="<?=isset($detail['city_title'])?$detail['city_title']:'';?>" placeholder="点击选择所在城市" autocomplete="off" href="<?=Url::toRoute(['city/select','callback'=>'city']);?>" w="80%;" h="90%;" title="选择所在城市" mini="load">
|
||||
<input type="hidden" class="form-control" name="city" id="city-value" value="<?=isset($detail['city'])?$detail['city']:0;?>">
|
||||
</div>
|
||||
<script>
|
||||
function selectCity(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
</script>
|
||||
<div class="col-sm-7">
|
||||
<input class="form-control" type="text" name="addr" id="address" placeholder="请填写具体位置,如**路**号**楼**室" value="<?=isset($detail['addr'])?$detail['addr']:'';?>" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">是否删除:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['deleted'])&&$detail['deleted']==1)?'checked':'';?> value="1" id="deleted1" name="deleted">是</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['deleted']))||isset($detail['deleted'])&&$detail['deleted']==0)?'checked':'';?> value="0" id="deleted2" name="deleted">否</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-22 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('hotel/list')?>">全部酒店</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function showImageFrame(obj){
|
||||
//取预设参数
|
||||
var id,title,width,height,url;
|
||||
id = $(obj).attr('data-id');
|
||||
title = $(obj).attr('data-title');
|
||||
width = $(obj).attr('data-width');
|
||||
height = $(obj).attr('data-height');
|
||||
url = $(obj).attr('data-src');
|
||||
//iframe层
|
||||
parent.layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: true,
|
||||
shade: 0.8,
|
||||
area: [width, height],
|
||||
content: url //iframe的url
|
||||
});
|
||||
}
|
||||
|
||||
function deleteImage(elm){
|
||||
$(elm).prev().attr("src", "../img/nopic.jpg");
|
||||
$(elm).parent().prev().find("input").val("");
|
||||
parent.layer.msg('图片已删除;您可重新上传');
|
||||
}
|
||||
|
||||
function selectImage(title,path,src,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('图片已选择');
|
||||
$('#'+callback+'-value').val(path);
|
||||
$('#'+callback+'-preview').attr('src',src);
|
||||
}
|
||||
</script>
|
||||
Executable
+90
@@ -0,0 +1,90 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-12-11 01:30:24
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '酒店列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('hotel/new')?>">新增酒店</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('hotel/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input type="text" placeholder="请输入酒店名" name="title" class="input-sm form-control">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>区域地址</th>
|
||||
<th>名称</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($hotels as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>【<code><?=isset($citys[$vo['city']]['name'])?$citys[$vo['city']]['name']:'未设置'?></code>】<?=$vo['addr']?></td>
|
||||
<td><?=$vo['title']?></td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['hotel/ajax','id'=>$vo['id'],'do'=>'hide'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['hotel/ajax','id'=>$vo['id'],'do'=>'show'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" onclick="parent.selectHotel('<?=$vo['title']?>','<?=$vo['id']?>','<?=$callback?>');">选择</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+32
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '选择平台';
|
||||
$plats = [
|
||||
['pid'=>1,'title'=>'情景海湾','thumb'=>Yii::getAlias('@web').'/img/nopic.jpg']
|
||||
];
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<?php foreach($plats as $plat){?>
|
||||
<div class="col-sm-4 col-md-3">
|
||||
<a href="<?php echo Url::toRoute(['index/index','pid'=>$plat['pid']]);?>">
|
||||
<div class="thumbnail">
|
||||
<img alt="300x200" src="<?php echo $plat['thumb']?>"/>
|
||||
<div class="caption" style="text-align: center;">
|
||||
<h3>
|
||||
<?php echo $plat['title']?>
|
||||
</h3>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<?php }?>
|
||||
</div>
|
||||
</div>
|
||||
<?=Html::jsFile('@web/js/welcome.min.js?v=1.0.0')?>
|
||||
Executable
+204
@@ -0,0 +1,204 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-22 12:36:48
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-11-22 23:55:18
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '地理位置选择';
|
||||
|
||||
?>
|
||||
<style>
|
||||
body .wrapper{
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
.map {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
float: left;
|
||||
z-index:99;
|
||||
}
|
||||
</style>
|
||||
<!-- 原始地址://webapi.amap.com/ui/1.0/ui/misc/PositionPicker/examples/positionPicker.html -->
|
||||
<!-- <base href="//webapi.amap.com/ui/1.0/ui/misc/PositionPicker/examples/" /> -->
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="ibox-content" style="padding:0;width:100%;height:100%;">
|
||||
<form class="form-search" method="get" action="<?=Url::toRoute('index/map')?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="form-group btn btn-block" style="position:fixed;top:10px;z-index: 100;background-color: rgba(0,0,0,.5);">
|
||||
<div class="col-sm-7">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn"> <button type="button" class="btn btn-primary">输入地址:
|
||||
</button> </span>
|
||||
<input type="text" class="form-control" id="keyword" name="keyword" value="<?=isset($search['keyword']) ? $search['keyword']:''?>" placeholder="输入地址关键词进行查询" autocomplete="off">
|
||||
<span class="hidden input-group-btn"> <button type="submit" class="btn btn-info">搜索
|
||||
</button> </span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn"> <button type="button" class="btn btn-primary">纬度
|
||||
</button> </span>
|
||||
<input type="text" class="form-control" id="lat" name="lat" value="" autocomplete="off">
|
||||
<span class="input-group-btn"> <button type="button" class="btn btn-primary">经度
|
||||
</button> </span>
|
||||
<input type="text" class="form-control" id="lng" name="lng" value="" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div id="container" class="map" tabindex="0" style="z-index: 0;"></div>
|
||||
<div class="" style="position:fixed;bottom:10px;left:50%;margin-left:-75px;width:150px;z-index: 100;">
|
||||
<button onclick="callback();" class="btn btn-lg btn-primary" type="button">
|
||||
<i class="ace-icon fa fa-check bigger-110"></i>
|
||||
确定选择
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
function callback(){
|
||||
parent.<?=$callback;?>($("#lat").val(),$("#lng").val(),$("#keyword").val());
|
||||
}
|
||||
</script>
|
||||
<script type="text/javascript" src='//webapi.amap.com/maps?v=1.4.10&key=fea3f28a32780b33d97b2afb9a5236fe&plugin=AMap.ToolBar'></script>
|
||||
<!-- UI组件库 1.0 -->
|
||||
<script src="//webapi.amap.com/ui/1.0/main.js?v=1.0.11"></script>
|
||||
<script type="text/javascript">
|
||||
AMapUI.loadUI(['misc/PositionPicker'], function(PositionPicker) {
|
||||
var lng = "<?=$lng?>";
|
||||
var lat = "<?=$lat?>";
|
||||
if(lng != 0 && lat != 0){
|
||||
lnglatXY = [lng, lat]; //纬度,经度
|
||||
}else{
|
||||
lnglatXY = [109.512444,18.252986]; //三亚市政务中心
|
||||
}
|
||||
|
||||
var map = new AMap.Map('container', {
|
||||
zoom: 16,
|
||||
scrollWheel: true,
|
||||
resizeEnable: true,
|
||||
center: lnglatXY
|
||||
});
|
||||
var positionPicker = new PositionPicker({
|
||||
mode: 'dragMarker',
|
||||
map: map
|
||||
});
|
||||
|
||||
positionPicker.on('success', function(positionResult) {
|
||||
console.log(positionResult);
|
||||
$("#keyword").val(positionResult.address);
|
||||
var pos = positionResult.position;
|
||||
$("#lng").val(pos.lng);
|
||||
$("#lat").val(pos.lat);
|
||||
});
|
||||
positionPicker.on('fail', function(positionResult) {
|
||||
console.log(positionResult);
|
||||
$("#lng").val('');
|
||||
$("#lat").val('');
|
||||
});
|
||||
|
||||
positionPicker.start(map.getBounds().getSouthWest());
|
||||
// positionPicker.start();
|
||||
map.panBy(0, 1);
|
||||
map.addControl(new AMap.ToolBar({
|
||||
liteStyle: true
|
||||
}))
|
||||
|
||||
AMap.plugin(['AMap.Autocomplete','AMap.PlaceSearch'],function(){
|
||||
var autoOptions = {
|
||||
city: "三亚市", //城市,默认全国
|
||||
input: "keyword"//使用联想输入的input的id
|
||||
};
|
||||
autocomplete= new AMap.Autocomplete(autoOptions);
|
||||
|
||||
var placeSearch = new AMap.PlaceSearch({
|
||||
city:'三亚市',
|
||||
map:map
|
||||
})
|
||||
//下拉框选择
|
||||
AMap.event.addListener(autocomplete, "select", function(e){
|
||||
placeSearch.search(e.poi.name)
|
||||
});
|
||||
//关键字查询
|
||||
// placeSearch.search('<?=$search['keyword']?>');
|
||||
});
|
||||
|
||||
//设置初始化标注数据
|
||||
var geocoder = new AMap.Geocoder({
|
||||
radius: 1000,
|
||||
extensions: "all"
|
||||
});
|
||||
function getAddr(lnglatXY){
|
||||
geocoder.getAddress(lnglatXY, function(status, result) {
|
||||
// console.log(result);
|
||||
if (status === 'complete' && result.info === 'OK') {
|
||||
$("#keyword").val(result.regeocode.formattedAddress);
|
||||
}
|
||||
});
|
||||
}
|
||||
getAddr(lnglatXY);
|
||||
|
||||
//设置地图中心点
|
||||
map.setCenter(lnglatXY);
|
||||
var marker = new AMap.Marker({ //加点
|
||||
map: map,
|
||||
position: lnglatXY
|
||||
});
|
||||
// map.setFitView(); //自动调整视图范围
|
||||
|
||||
//绑定点选maker事件
|
||||
function showInfoClick(e){
|
||||
console.log(e);
|
||||
var lnglatXY = [e.lnglat.getLng(),e.lnglat.getLat()];
|
||||
getAddr(lnglatXY);
|
||||
map.setCenter(lnglatXY);
|
||||
map.clearMap(); // 清除地图覆盖物
|
||||
var marker = new AMap.Marker({ //加点
|
||||
map: map,
|
||||
position: lnglatXY
|
||||
});
|
||||
map.setFitView();
|
||||
$("#lng").val(e.lnglat.getLng());
|
||||
$("#lat").val(e.lnglat.getLat());
|
||||
var text = '您在 [ '+e.lnglat.getLng()+','+e.lnglat.getLat()+' ] 的位置单击了地图!'
|
||||
console.log(text);
|
||||
}
|
||||
|
||||
function showInfoDbClick(e){
|
||||
console.log(e);
|
||||
var lnglatXY = [e.lnglat.getLng(),e.lnglat.getLat()];
|
||||
getAddr(lnglatXY);
|
||||
map.setCenter(lnglatXY);
|
||||
map.clearMap(); // 清除地图覆盖物
|
||||
var marker = new AMap.Marker({ //加点
|
||||
map: map,
|
||||
position: lnglatXY
|
||||
});
|
||||
map.setFitView();
|
||||
$("#lng").val(e.lnglat.getLng());
|
||||
$("#lat").val(e.lnglat.getLat());
|
||||
var text = '您在 [ '+e.lnglat.getLng()+','+e.lnglat.getLat()+' ] 的位置双击了地图!'
|
||||
console.log(text);
|
||||
}
|
||||
|
||||
map.on('click', showInfoClick);
|
||||
map.on('dblclick', showInfoDbClick);
|
||||
|
||||
});
|
||||
</script>
|
||||
Executable
+33
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '系统入口界面';
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<?php foreach($navs as $nav){?>
|
||||
<?php $entries = $nav['entries'];?>
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<a href="<?php echo Url::toRoute('index/index');?>" target=""><span class="label label-warning pull-right">主界面</span></a>
|
||||
<h5><?php echo $nav['name'];?></h5>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<?php foreach($entries as $item){?>
|
||||
<a class="btn btn-<?= trim(Html::encode($item['class']))?>" href="<?= trim(Html::encode($item['url']))?>" data-toggle="tooltip" data-placement="top" data-title="<?= trim(Html::encode($item['title']))?>" trigger="hover|focus|click"><i class="<?= trim(Html::encode($item['icon'])) ?>"></i> <?= trim(Html::encode($item['name'])) ?></a>
|
||||
<?php }?>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php }?>
|
||||
</div>
|
||||
</div>
|
||||
<?=Html::jsFile('@web/js/welcome.min.js?v=1.0.0')?>
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\ActiveForm;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItem */
|
||||
/* @var $form yii\widgets\ActiveForm */
|
||||
?>
|
||||
|
||||
<div class="auth-item-form col-sm-4">
|
||||
|
||||
<?php $form = ActiveForm::begin(); ?>
|
||||
<?php if($model->name =='超级管理员'):?>
|
||||
<?= $form->field($model, 'name')->textInput(['maxlength' => true,'readonly'=>true]) ?>
|
||||
<?= $form->field($model, 'type' )->dropDownList(['1' =>'角色' ,'2' =>'权限'],['disabled'=>true])?>
|
||||
<?php else:?>
|
||||
<?= $form->field($model, 'name')->textInput(['maxlength' => true]) ?>
|
||||
<?= $form->field($model, 'type' )->dropDownList(['1' =>'角色' ,'2' =>'权限'])?>
|
||||
<?php endif;?>
|
||||
<?= $form->field($model, 'description')->textarea(['rows' => 6]) ?>
|
||||
|
||||
<?/*= $form->field($model, 'rule_name')->textInput(['maxlength' => true]) */?><!--
|
||||
|
||||
<?/*= $form->field($model, 'data')->textarea(['rows' => 6]) */?>
|
||||
|
||||
<?/*= $form->field($model, 'created_at')->textInput() */?>
|
||||
|
||||
--><?/*= $form->field($model, 'updated_at')->textInput() */?>
|
||||
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton($model->isNewRecord ? 'Create' : 'Update', ['class' => $model->isNewRecord ? 'btn btn-primary' : 'btn btn-primary']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
|
||||
</div>
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItem */
|
||||
|
||||
$this->title = '创建角色';
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Auth Items', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="ibox-content">
|
||||
<div class="row pd-10">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<hr>
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+191
@@ -0,0 +1,191 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
use backend\widgets\common\LinkPages;
|
||||
|
||||
$this->title = '角色&权限列表';
|
||||
$this->params['breadcrumbs'][] = $this-> title;
|
||||
|
||||
|
||||
?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
|
||||
<div class="ibox-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-6 m-b-xs">
|
||||
<?=Html::a("创建 <i class='icon-plus'></i>" , ['create' ], ['class' => 'btn btn-sm btn-primary'])?>
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('item/index')?>">角色管理</a>
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('item/permission')?>">权限管理</a>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
|
||||
|
||||
<table class ="table table-striped table_base">
|
||||
<thead >
|
||||
<tr >
|
||||
<th >ID </th>
|
||||
<th >名称 </th>
|
||||
<th >类型 </th>
|
||||
<th >描述 </th>
|
||||
<th >创建时间 </th>
|
||||
<th >操作 </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody >
|
||||
<?php if ( empty($data[ 'data'])): ?>
|
||||
<tr ><td colspan ="20"><?=Yii::t('common' ,'Not find data') ?> </td ></tr >
|
||||
<?php else: ?>
|
||||
<?php $i = $data['start'];?>
|
||||
<?php foreach ( $data['data'] as $list):?>
|
||||
<tr data-key =" <?=$list[ 'name'] ?>" >
|
||||
<td ><?= $i++?> </td >
|
||||
<td ><?= Html::encode($list[ 'name']) ?></ td>
|
||||
<td ><?= Html::encode(($list[ 'type']==1)? '角色': '权限') ?></ td>
|
||||
<td ><?= Html::encode($list[ 'description']) ?></ td>
|
||||
<td> <?=Html:: encode($list['created_at']?date('Y-m-d',$list['created_at']):'未设置') ?></ td>
|
||||
<td >
|
||||
<a class="btn btn-primary btn-xs" href= "<?= Url::to([ 'update', 'id'=>$list[ 'name']]); ?>" ><i class="fa fa-edit"></i>编辑 </a >
|
||||
<a class="btn btn-success btn-xs" href= "<?= Url::toRoute([ 'permission/set', 'id'=>$list[ 'name']]); ?>" ><i class="fa fa-unlock-alt"></i>权限 </a >
|
||||
<?php if($list['name'] != '超级管理员'):?>
|
||||
<a class ="del btn btn-default btn-xs" href= "javaScript:;"><i class="fa fa-close"></i>删除</a >
|
||||
<?php endif;?>
|
||||
</td >
|
||||
</tr >
|
||||
<?php endforeach; ?>
|
||||
<?php endif; ?>
|
||||
</tbody >
|
||||
</table >
|
||||
<?=Yii::t('common' , '{start}-{end} a total of {total}',['start' => $data[ 'start'], 'end'=> $data['end'],'total'=> $data['count' ]])?> </div >
|
||||
<?=LinkPages:: widget(['pagination' => $pages]);?>
|
||||
<input type ="hidden" name="delUrl" value= "<?= Url::to([ 'delete']) ?>" >
|
||||
</div>
|
||||
</div >
|
||||
|
||||
<script>
|
||||
(function($) {
|
||||
var delUrl = $('input[name=delUrl]').val(),
|
||||
delAllUrl = $('input[name=delAllUrl]').val(),
|
||||
obj_thead = $('.table_base > thead'),
|
||||
obj_tbody = $('.table_base > tbody'),
|
||||
obj_check = $('.table_base .checker'),
|
||||
obj_check_ipt = obj_tbody.find('input[name=select]'),
|
||||
obj_check_all = obj_thead.find('input[name=select_all]'),
|
||||
submitData = {};
|
||||
submitData[$('[name=csrf-param]').attr('content')] = $('[name=csrf-token]').attr('content');
|
||||
|
||||
/*复选框start*/
|
||||
obj_check.hover(function(){
|
||||
$(this).addClass('hover');
|
||||
},function(){
|
||||
$(this).removeClass('hover');
|
||||
});
|
||||
|
||||
obj_check.click(function(){
|
||||
var _checkbox = $(this).find('input[name^=select]'),
|
||||
isChecked = _checkbox[0].checked;
|
||||
_checkbox.parent()[ isChecked ? 'addClass' : 'removeClass' ]('checked');
|
||||
if(_checkbox.hasClass('select-on-check-all')){
|
||||
$.each(obj_check_ipt,function(){
|
||||
$(this)[0].checked = isChecked ? true : false;
|
||||
$(this).parent()[ isChecked ? 'addClass' : 'removeClass' ]('checked');
|
||||
})
|
||||
}
|
||||
ifAllCheck();
|
||||
checkToIpt();
|
||||
});
|
||||
|
||||
$('.bottomBtn > #selectall').click(function(){
|
||||
obj_check_all.click();
|
||||
});
|
||||
|
||||
$('.bottomBtn > #export').click(function(){
|
||||
if(confirm('您确定要删除选中项吗?')){
|
||||
var ids = $('.bottomBtn > #selected').val();
|
||||
if(ids){
|
||||
doAjax(
|
||||
delAllUrl,
|
||||
{ids: ids},
|
||||
function(json){
|
||||
if(json.status){
|
||||
location.reload(true);
|
||||
}else{
|
||||
alert(json.msg);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
function ifAllCheck(){
|
||||
var allCheck = true
|
||||
$.each(obj_check_ipt,function(){
|
||||
if( !$(this)[0].checked ){
|
||||
allCheck = false;
|
||||
return;
|
||||
}
|
||||
})
|
||||
obj_check_all[0].checked = allCheck;
|
||||
obj_check_all.parent()[ allCheck ? 'addClass' : 'removeClass' ]('checked');
|
||||
}
|
||||
|
||||
function checkToIpt(){
|
||||
var selectedTemp = [];
|
||||
$.each(obj_check_ipt,function(){
|
||||
if( $(this)[0].checked ){
|
||||
selectedTemp.push( $(this).parents('tr:first').attr('data-key') );
|
||||
}
|
||||
});
|
||||
$('.bottomBtn > #selected').val( selectedTemp.join(',') );
|
||||
}
|
||||
/*复选框end*/
|
||||
|
||||
$('.table_base .del').click(function(){ // 点击删除
|
||||
if(confirm('您确定要删除此项吗?')){
|
||||
submitData['id'] = $(this).parents('tr:first').attr('data-key');
|
||||
doAjax(
|
||||
delUrl,
|
||||
submitData,
|
||||
function(json){
|
||||
if(json.status){
|
||||
location.reload(true);
|
||||
}else{
|
||||
alert(json.msg);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
function renderTmp(item, tmp) { // 渲染值
|
||||
return tmp.replace( /\{.+?\}/g, function($1) { return item[$1.slice(1, -1)] ? item[$1.slice(1, -1)] : ''; });
|
||||
}
|
||||
|
||||
function trBC(){ // tr背景颜色间隔
|
||||
obj_tbody.find('td').css('background-color','#ffffff');
|
||||
obj_tbody.find('tr:visible').each(function(key,val){
|
||||
if(key%2 == 0){
|
||||
$(val).find('td').css('background-color','#f9f9f9');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function doAjax(url,data,sucFn){
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
dataType: 'json',
|
||||
data: data,
|
||||
success: sucFn,
|
||||
error: function(){
|
||||
alert('交互错误');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
})(jQuery)
|
||||
</script>
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItem */
|
||||
|
||||
$this->title = '更新角色 ' . ' ' . $model->name;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Auth Items', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = ['label' => $model->name, 'url' => ['view', 'id' => $model->name]];
|
||||
$this->params['breadcrumbs'][] = 'Update';
|
||||
?>
|
||||
<div class="wrapper wrapper-content ">
|
||||
<div class="ibox-content">
|
||||
<div class="row pd-10">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<hr>
|
||||
<?= $this->render('_form', [
|
||||
'model' => $model,
|
||||
]) ?>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
Executable
+41
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\widgets\DetailView;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $model backend\models\AuthItem */
|
||||
|
||||
$this->title = $model->name;
|
||||
$this->params['breadcrumbs'][] = ['label' => 'Auth Items', 'url' => ['index']];
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
|
||||
<h4><?= Html::encode($this->title) ?></h4>
|
||||
|
||||
<p>
|
||||
<?= Html::a('Update', ['update', 'id' => $model->name], ['class' => 'btn btn-primary']) ?>
|
||||
<?= Html::a('Delete', ['delete', 'id' => $model->name], [
|
||||
'class' => 'btn btn-danger',
|
||||
'data' => [
|
||||
'confirm' => 'Are you sure you want to delete this item?',
|
||||
'method' => 'post',
|
||||
],
|
||||
]) ?>
|
||||
</p>
|
||||
|
||||
<?= DetailView::widget([
|
||||
'model' => $model,
|
||||
'attributes' => [
|
||||
'name',
|
||||
'type',
|
||||
'description:ntext',
|
||||
'rule_name',
|
||||
'data:ntext',
|
||||
'created_at',
|
||||
'updated_at',
|
||||
],
|
||||
]) ?>
|
||||
|
||||
</div>
|
||||
Executable
+7
@@ -0,0 +1,7 @@
|
||||
<div class="site-error">
|
||||
<div style="margin-top: 100px;text-align: center;">
|
||||
<h1>温馨提示</h1><br>
|
||||
</div>
|
||||
<h4 style="margin: 10px auto;text-align: center;background-color: #1ab394; color: #ffffff;width: 500px;height: 50px;line-height: 50px;border-radius: 5px;"><i class="fa fa-spinner fa-spin"></i> 功能尚未开放,敬请稍候……</h4>
|
||||
|
||||
</div>
|
||||
Executable
+211
@@ -0,0 +1,211 @@
|
||||
<?php
|
||||
# @Author: 嗨噜客科技(www.hiluker.cn) <fm453>
|
||||
# @Date: 1970-01-01T08:00:00+08:00
|
||||
# @Email: fm453@hiluker.com
|
||||
# @Last modified by: fm453
|
||||
# @Last modified time: 2021-09-15T17:42:47+08:00
|
||||
|
||||
|
||||
/* @var $this \yii\web\View */
|
||||
/* @var $content string */
|
||||
|
||||
use backend\assets\AppAsset;
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
use yii\bootstrap\Nav;
|
||||
use yii\bootstrap\NavBar;
|
||||
use yii\widgets\Breadcrumbs;
|
||||
use common\widgets\Alert;
|
||||
|
||||
// AppAsset::register($this);
|
||||
$keywords = '';
|
||||
$description = '';
|
||||
$routes = ['data']; //自添加的controllers列表集,用于为新添加的控制器在渲染视图时自动加入HTML代码段,以便兼容h+的后台模板
|
||||
?>
|
||||
<?php $this->beginPage() ?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?= Yii::$app->language ?>">
|
||||
<head>
|
||||
<meta charset="<?= Yii::$app->charset ?>">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<?= Html::csrfMetaTags() ?>
|
||||
<title><?= Html::encode($this->title) ?></title>
|
||||
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta http-equiv="Cache-Control" content="no-siteapp" />
|
||||
<meta name="keywords" content="<?php echo $keywords ?>">
|
||||
<meta name="description" content="<?php echo $description ?>">
|
||||
<!--[if lt IE 9]>
|
||||
<meta http-equiv="refresh" content="0;ie.html" />
|
||||
<![endif]-->
|
||||
<link rel="shortcut icon" href="<?=Url::to('@web/favicon.ico',true);?>">
|
||||
|
||||
<?=Html::cssFile('@web/css/bootstrap.min.css')?>
|
||||
<?=Html::cssFile('@web/css/font-awesome.css')?>
|
||||
<?=Html::cssFile('@web/css/animate.min.css')?>
|
||||
<?=Html::cssFile('@web/css/site.css')?>
|
||||
<?=Html::cssFile('@web/css/style.min.css')?>
|
||||
|
||||
<?=Html::jsFile('@web/js/jquery.min.js?v=2.1.4')?>
|
||||
<?=Html::jsFile('@web/js/bootstrap.min.js?v=3.3.6')?>
|
||||
|
||||
<?=Html::jsFile('@web/js/plugins/layer/layer.min.js')?>
|
||||
<?=Html::jsFile('@web/js/admin.js')?>
|
||||
|
||||
<?=Html::cssFile('@web/css/plugins/iCheck/custom.css')?>
|
||||
<?=Html::cssFile('@web/css/plugins/awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css')?>
|
||||
<?php $this->head() ?>
|
||||
</head>
|
||||
<body class="fixed-sidebar full-height-layout gray-bg animated">
|
||||
<?php $this->beginBody() ?>
|
||||
<?php if((Yii::$app->controller->module->defaultRoute!="site") ||(Yii::$app->controller->module->defaultRoute=="site" && Yii::$app->controller->module->requestedRoute!=""
|
||||
&& Yii::$app->controller->module->requestedRoute!="site/login")):?>
|
||||
<nav class="breadcrumb fix_top hidden-sm hidden-xs" id="_HiQuickMenu" style="background-color:#ccc;width: 55px;padding-top: 15px;padding-left: 10px;position:fixed;top:40%;right:15px;z-index:9999;">
|
||||
<div class="pull-right">
|
||||
<a class="btn btn-primary radius goback" style="line-height:1.6em;margin-top:3px" href="javascript:history.go(-1);" title="后退">
|
||||
<span class="fa fa-reply"></span>
|
||||
</a>
|
||||
<br>
|
||||
<a class="btn btn-primary radius refresh" style="line-height:1.6em;margin-top:3px" href="javascript:location.replace(location.href);" title="刷新">
|
||||
<span class="fa fa-refresh"></span>
|
||||
</a>
|
||||
<br>
|
||||
<a class="btn btn-warning radius" style="line-height:1.6em;margin-top:3px" href="<?php echo url::toRoute(['error/report','url'=>urlDecode(Url::current())]);?>" title="报错反馈">
|
||||
<span class="fa fa-at"></span>
|
||||
</a>
|
||||
<br>
|
||||
<button class="btn btn-danger radius lockscreen" style="line-height:1.6em;margin-top:3px" title="锁屏">
|
||||
<span class="fa fa-expeditedssl"></span>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
<?php endif;?>
|
||||
<?php if(in_array(Yii::$app->controller->module->id,$routes)): ?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<?php endif;?>
|
||||
<?= Alert::widget() ?>
|
||||
<?= $content ?>
|
||||
<?php if(in_array(Yii::$app->controller->module->id,$routes)): ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
|
||||
<?php $this->endBody() ?>
|
||||
<style>
|
||||
.modal-backdrop.in {
|
||||
opacity: .7;
|
||||
}
|
||||
</style>
|
||||
<div class="modal inmodal" id="myModal" tabindex="-1" role="dialog" aria-hidden="true" data-keyboard='false' data-backdrop="static" style="z-index:9999;">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content animated bounceInRight">
|
||||
<div class="modal-header">
|
||||
<i class="fa fa-laptop modal-icon"></i>
|
||||
<h4 class="modal-title">屏幕解锁</h4>
|
||||
<small class="font-bold"><?php echo date('Y-m-d H:i:s');?></small>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p id="_LockScreenTips"></p>
|
||||
<form class="form-horizontal m-t" id="commentForm" novalidate="novalidate">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">口令:</label>
|
||||
<div class="col-sm-8">
|
||||
<input id="_ScreenLockCode" name="code" type="password" class="form-control" required="" aria-required="true">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4 col-sm-offset-3">
|
||||
<button type="button" class="btn btn-white unlockscreen">验证</button>
|
||||
<button type="reset" class="btn btn-warning">再等等</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="modal-footer" style="text-align: center;">
|
||||
<button type="button" class="hidden btn btn-primary closelockscreen" data-dismiss="modal">现在点我,立即解锁</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
//锁屏
|
||||
$(function(){
|
||||
var modalId = 'myModal';
|
||||
|
||||
sessionStorage.unLockScreen =true;
|
||||
|
||||
$('.lockscreen').bind('click',function(){
|
||||
layer.confirm('您确认要锁屏吗?', {
|
||||
btn: ['确认','算了'], //按钮
|
||||
shade: true //是否显示遮罩
|
||||
}, function(index){
|
||||
layer.close(index);
|
||||
layer.prompt(
|
||||
{
|
||||
title: '输入解锁屏幕时要用的口令(仅数字与字母)后按确认,即可锁屏',
|
||||
formType: 0 //prompt风格,支持0-2
|
||||
},
|
||||
function(value,index,elem){
|
||||
layer.close(index);
|
||||
var code1 = value;
|
||||
sessionStorage.unLockScreen =false;
|
||||
sessionStorage.LockScreenCode = code1;
|
||||
var msg = '锁屏完成,您的口令是:'+ code1 + ' ;如果您不小心忘记锁屏密码,请重新登陆;如果您有可能未保存的页面数据,可通过浏览器的网页开发调试工具,清除会话缓存中的锁屏键;如果您不会操作,可联系微信客服<?php echo Yii::$app->params["developerWx"];?>获取付费协助';
|
||||
console.log(msg);
|
||||
var msg2 = '锁屏完成;如果您不小心忘记锁屏密码,请重新登陆;如果您有可能未保存的页面数据,可通过浏览器的网页开发调试工具,清除会话缓存中的锁屏键;如果您不会操作,可联系微信客服<?php echo Yii::$app->params["developerWx"];?>获取付费协助';
|
||||
$('#_LockScreenTips').html(msg2);
|
||||
$('#'+modalId).modal('show');
|
||||
}
|
||||
);
|
||||
}, function(){
|
||||
layer.msg('您取消了锁屏操作', {shift: 6});
|
||||
});
|
||||
|
||||
$('#'+modalId).on('hide.bs.modal',
|
||||
function() {
|
||||
$('.closelockscreen').addClass('hidden').hide();
|
||||
layer.msg('好的,您已成功解锁');
|
||||
});
|
||||
});
|
||||
|
||||
$('.unlockscreen').bind('click',function(){
|
||||
var code = $('#_ScreenLockCode').val();
|
||||
var LockScreenCode = sessionStorage.LockScreenCode;
|
||||
if(code == LockScreenCode){
|
||||
sessionStorage.unLockScreen =true;
|
||||
$('.closelockscreen').removeClass('hidden').show();
|
||||
}else{
|
||||
layer.msg('口令错误,请重新输入');
|
||||
}
|
||||
});
|
||||
|
||||
if(!sessionStorage.unLockScreen){
|
||||
if(sessionStorage.LockScreenCode){
|
||||
$('#'+modalId).modal('show');
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
</script>
|
||||
<script>
|
||||
var HOME_URL = '<?php echo Url::home();?>'; //定义首页位置,用于content.min.js中快速跳转首页按钮
|
||||
</script>
|
||||
<!-- 以下js必须放在页尾,顺序不可更换 -->
|
||||
<?=Html::jsFile('@web/js/bootstrap.min.js?v=3.3.6')?>
|
||||
<?=Html::jsFile('@web/js/plugins/layer/layer.js')?>
|
||||
<?=Html::jsFile('@web/js/content.min.js')?>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<?php $this->endPage() ?>
|
||||
Executable
+21
@@ -0,0 +1,21 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
$this->title = isset($title) ? $title : '提示';
|
||||
$content = isset($content) ? $content : '';
|
||||
$class = isset($class) ? $class : 'info';
|
||||
$class = in_array($class,['danger','warning','success','info']) ? $class : 'info';
|
||||
$buttons = isset($buttons) ? $buttons : [['title'=>'好的,我知道了','class'=>'primary','url'=>false]];
|
||||
|
||||
?>
|
||||
<div class="site-index" style="text-align: center;width:80%;margin-left:10%;">
|
||||
<div style="margin-top: 100px;">
|
||||
<h1><?=Html::encode($this->title) ?></h1><br>
|
||||
</div>
|
||||
<div class="alert alert-<?php echo $class;?> fade in" role="alert">
|
||||
<?php echo $content; ?>
|
||||
</div>
|
||||
<?php foreach($buttons as $btn){?>
|
||||
<a <?php if($btn['url']){?> href="<?php echo $btn['url'];?>" <?php }?> class="btn btn-<?php if($btn['class']){echo $btn['class'];}else{echo 'primary';}?>"><?php if($btn['title']){echo $btn['title'];}else{echo '点击按钮';}?></a>
|
||||
<?php }?>
|
||||
</div>
|
||||
Executable
+93
@@ -0,0 +1,93 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2019-01-10 16:21:08
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '业主列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('owner/new')?>">新增业主</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('owner/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入业主姓名" name="title" value="<?=$search['title']?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>姓名</th>
|
||||
<th>手机</th>
|
||||
<th>性别</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($owners as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><?=$vo['name']?></td>
|
||||
<td><?=$vo['mobile']?></td>
|
||||
<td><?=$gender[$vo['gender']]?></td>
|
||||
<td>
|
||||
<?php if($vo['status']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['owner/ajax','id'=>$vo['id'],'do'=>'out'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['owner/ajax','id'=>$vo['id'],'do'=>'in'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['owner/edit','id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a>
|
||||
<a title="点击将删除" href="<?=Url::toRoute(['owner/delete','id'=>$vo['id']])?>" class="btn btn-xs btn-danger" mini="act"><i class="fa fa-trash bigger-120"></i>删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+152
@@ -0,0 +1,152 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
|
||||
<!--百度编辑器-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.config.js')?>
|
||||
<!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->
|
||||
<!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.all.min.js')?>
|
||||
<?=Html::jsFile('@web/plugins/ueditor/lang/zh-cn/zh-cn.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>业主管理</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="alert alert-info">
|
||||
此处录入/编辑业主资料
|
||||
</div>
|
||||
<form class="form-horizontal m-t" method="post" action="<?=Url::toRoute('owner/save')?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 姓名:</label>
|
||||
<div class="col-sm-2">
|
||||
<input class="form-control" type="text" name="name" value="<?=isset($detail['name'])?$detail['name']:'';?>" placeholder="请输入业主姓名" autocomplete="off">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 手机号:</label>
|
||||
<div class="col-sm-2">
|
||||
<input class="form-control" type="text" name="mobile" value="<?=isset($detail['mobile'])?$detail['mobile']:'';?>" placeholder="请输入手机号码" autocomplete="off">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label"><span class="red">*</span> 性别:</label>
|
||||
<div class="col-sm-2">
|
||||
<select class="form-control" name="gender">
|
||||
<option value="0" <?php if(isset($detail['gender']) && $detail['gender']==0){echo 'selected';}else{echo '';}?>>未知</option>
|
||||
<option value="1" <?php if(isset($detail['gender']) && $detail['gender']==1){echo 'selected';}else{echo '';}?>>男</option>
|
||||
<option value="2" <?php if(isset($detail['gender']) && $detail['gender']==2){echo 'selected';}else{echo '';}?>>女</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">备注:</label>
|
||||
<div class="col-sm-9">
|
||||
<textarea id="editor" name="editor" style="min-height:300px;"><?=isset($detail['remark'])?$detail['remark']:''?></textarea>
|
||||
<script type="text/javascript">
|
||||
//实例化编辑器
|
||||
//建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
|
||||
var ue = UE.getEditor('editor');
|
||||
/* 传入参数表,添加到已有参数表里 */
|
||||
ue.ready(function() {
|
||||
ue.execCommand('serverparam', {
|
||||
'siteId': "<?=Yii::$app->params['siteId']?>",
|
||||
'pid': "<?=Yii::$app->session->get('pid')?>",
|
||||
'attachSrc': "<?=Yii::$app->params['attachSrc']?>",
|
||||
'attachDir': "<?=Yii::$app->params['attachDir']?>"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">是否签约:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['status'])&&$detail['status']==1)?'checked':'';?> value="1" id="status1" name="status">是</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['status']))||isset($detail['status'])&&$detail['status']==0)?'checked':'';?> value="0" id="status2" name="status">否</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">是否删除:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['deleted'])&&$detail['deleted']==1)?'checked':'';?> value="1" id="deleted1" name="deleted">是</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['deleted']))||isset($detail['deleted'])&&$detail['deleted']==0)?'checked':'';?> value="0" id="deleted2" name="deleted">否</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-12 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('owner/list')?>">全部业主</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function showImageFrame(obj){
|
||||
//取预设参数
|
||||
var id,title,width,height,url;
|
||||
id = $(obj).attr('data-id');
|
||||
title = $(obj).attr('data-title');
|
||||
width = $(obj).attr('data-width');
|
||||
height = $(obj).attr('data-height');
|
||||
url = $(obj).attr('data-src');
|
||||
//iframe层
|
||||
parent.layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: true,
|
||||
shade: 0.8,
|
||||
area: [width, height],
|
||||
content: url //iframe的url
|
||||
});
|
||||
}
|
||||
|
||||
function deleteImage(elm){
|
||||
$(elm).prev().attr("src", "../img/nopic.jpg");
|
||||
$(elm).parent().prev().find("input").val("");
|
||||
parent.layer.msg('图片已删除;您可重新上传');
|
||||
}
|
||||
|
||||
function selectImage(title,path,src,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('图片已选择');
|
||||
$('#'+callback+'-value').val(path);
|
||||
$('#'+callback+'-preview').attr('src',src);
|
||||
}
|
||||
</script>
|
||||
Executable
+92
@@ -0,0 +1,92 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2019-01-10 19:03:07
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '业主列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('owner/new')?>">新增业主</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('owner/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入业主姓名" name="title" value="<?=$search['title']?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>姓名</th>
|
||||
<th>手机</th>
|
||||
<th>性别</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($owners as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><?=$vo['name']?></td>
|
||||
<td><?=$vo['mobile']?></td>
|
||||
<td><?=$gender[$vo['gender']]?></td>
|
||||
<td>
|
||||
<?php if($vo['status']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['owner/ajax','id'=>$vo['id'],'do'=>'out'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['owner/ajax','id'=>$vo['id'],'do'=>'in'])?>" mini="ajax"><?=$status[$vo['status']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" onclick="parent.selectOwner('<?=$vo['name']?>','<?=$vo['id']?>','<?=$callback?>');">选择</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+211
@@ -0,0 +1,211 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2019-01-12 17:11:20
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '房间列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content" style="text-align: center;">
|
||||
<h1>搜索与筛选</h1>
|
||||
<form role="form" class="form-horizontal m-t" action="<?=Url::toRoute('room/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">名称</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入房间名称" name="search[title]" value="<?=isset($search['title']) ? $search['title']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-5">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">户型</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="search[f]" value="<?=isset($search['f'])?$search['f']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">室</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="search[t]" value="<?=isset($search['t'])?$search['t']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">厅</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="search[c]" value="<?=isset($search['c'])?$search['c']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">厨</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="search[w]" value="<?=isset($search['w'])?$search['w']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">卫</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="search[b]" value="<?=isset($search['b'])?$search['b']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">阳台</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">面积大于</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请填写正整数" name="search[measure]" value="<?=isset($search['measure'])?$search['measure']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">m<sup>2</sup></button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-4">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="hotel_title" id="hotel-title" value="<?=isset($search['hotel_title'])?$search['hotel_title']:'';?>" placeholder="点击选择关联酒店" autocomplete="off" href="<?=Url::toRoute(['hotel/select','callback'=>'hotel']);?>" w="80%;" h="90%;" title="选择所在关联酒店" mini="load">
|
||||
<input type="hidden" class="form-control" name="search[hotel]" id="hotel-value" value="<?=isset($search['hotel'])?$search['hotel']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-info" onclick="clearHotel('hotel')">清除选择</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
function selectHotel(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
function clearHotel(id)
|
||||
{
|
||||
$('#'+id+'-value').val('');
|
||||
$('#'+id+'-title').val('');
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<div class="col-sm-12">
|
||||
<button type="submit" class="btn btn-sm btn-warning"> 搜索</button>
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute(['room/new','hotel_id'=>$hotel_id])?>">新增房间</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<!--分页-->
|
||||
<div class="ibox-content" style="padding:0;text-align: center;">
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>关联酒店</th>
|
||||
<th>房间</th>
|
||||
<th>地址</th>
|
||||
<th>参数</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($rooms as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td><?=isset($hotels[$vo['hotel_id']])?$hotels[$vo['hotel_id']]['title']:'未设置'?></td>
|
||||
<td>【<code><?=$vo['sn']?></code>】<?=$vo['title']?><br>
|
||||
<?=$vo['f']?>室<?=$vo['t']?>厅<?=$vo['c']?>厨<?=$vo['w']?>卫<?=$vo['b']?>阳台(<code><?=$vo['measure']?></code>m<sup>2</sup>)
|
||||
</td>
|
||||
<td><?=$vo['addr']?></td>
|
||||
<td>
|
||||
开火:<?php if($vo['cooking']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'cooking'])?>" mini="ajax">可以</a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'cooking'])?>" mini="ajax">不支持</a>
|
||||
<?php }?>
|
||||
泳池:<?php if($vo['swimmingpool']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'swimmingpool'])?>" mini="ajax">有</a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'swimmingpool'])?>" mini="ajax">无</a>
|
||||
<?php }?>
|
||||
天然气:<?php if($vo['gas']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'gas'])?>" mini="ajax">有</a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'gas'])?>" mini="ajax">无</a>
|
||||
<?php }?>
|
||||
停车位:<?php if($vo['parker']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'parker'])?>" mini="ajax">有</a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'parker'])?>" mini="ajax">无</a>
|
||||
<?php }?>
|
||||
WIFI:<?php if($vo['wifi']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'wifi'])?>" mini="ajax">有</a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'wifi'])?>" mini="ajax">无</a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'hide'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['room/ajax','id'=>$vo['id'],'do'=>'show'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" href="<?=Url::toRoute(['room/edit','id'=>$vo['id']])?>"><i class="fa fa-edit"></i>编辑</a>
|
||||
<a title="点击将删除" href="<?=Url::toRoute(['room/delete','id'=>$vo['id']])?>" class="btn btn-xs btn-danger" mini="act"><i class="fa fa-trash bigger-120"></i>删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<!--分页-->
|
||||
<div class="ibox-content" style="padding:0;text-align: center;">
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+581
@@ -0,0 +1,581 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
|
||||
<!--百度编辑器-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.config.js')?>
|
||||
<!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败-->
|
||||
<!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
|
||||
<?=Html::jsFile('@web/plugins/ueditor/ueditor.all.min.js')?>
|
||||
<?=Html::jsFile('@web/plugins/ueditor/lang/zh-cn/zh-cn.js')?>
|
||||
|
||||
<!--日期时间选择器-->
|
||||
<?=Html::jsFile('@web/js/plugins/layer/laydate/laydate.js')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/need/laydate.css')?>
|
||||
<?=Html::cssFile('@web/js/plugins/layer/laydate/skins/molv/laydate.css')?>
|
||||
|
||||
<!--下拉选择、选项框-->
|
||||
<?=Html::cssFile('@web/css/plugins/chosen/chosen.css')?>
|
||||
<?=Html::jsFile('@web/js/plugins/chosen/chosen.jquery.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>客房基础资料录入管理</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link" data-href="#basic">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link" data-href="#basic">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content" id="basic">
|
||||
<div class="alert alert-info">
|
||||
此处录入客房的基础资料
|
||||
</div>
|
||||
<form class="form-horizontal m-t" method="post" action="<?=Url::toRoute(['room/save','op'=>'basic'])?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">归属酒店:
|
||||
</label>
|
||||
<div class="col-sm-8">
|
||||
<input type="text" class="form-control" name="hotel_title" id="hotel-title" value="<?=isset($detail['hotel_title'])?$detail['hotel_title']:'';?>" placeholder="点击选择关联酒店" autocomplete="off" href="<?=Url::toRoute(['hotel/select','callback'=>'hotel']);?>" w="80%;" h="90%;" title="选择所在关联酒店" mini="load">
|
||||
<input type="hidden" class="form-control" name="hotel_id" id="hotel-value" value="<?=isset($detail['hotel_id'])?$detail['hotel_id']:0;?>">
|
||||
</div>
|
||||
<script>
|
||||
function selectHotel(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span> 房间名称:</label>
|
||||
<div class="col-sm-5">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">名称</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" name="title" value="<?=isset($detail['title'])?$detail['title']:'';?>" placeholder="请输入房间名称" autocomplete="on">
|
||||
</div>
|
||||
<span class="help-block m-b-none">如:无敌海景大床房</span>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">房号</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" name="sn" value="<?=isset($detail['sn'])?$detail['sn']:'';?>" placeholder="请输入房号" autocomplete="on">
|
||||
</div>
|
||||
<span class="help-block m-b-none">如:憩云阁A1507;请根据实际情况填写并尽量保持简洁</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">主形象图:</label>
|
||||
<div class="col-sm-8">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="thumb" id="thumb-value" placeholder="如有房间照片,可上传一张" autocomplete="off" value="<?=isset($detail['thumb'])?$detail['thumb']:'';?>"> <span class="input-group-btn"> <button type="button" class="btn btn-primary" data-id="thumb-value" href="<?= Url::toRoute(['upload/image','multi'=>false,'callback'=>'thumb']);?>" w="80%;" h="90%;" title="选择或上传图片" mini="load">选择图片
|
||||
</button> </span>
|
||||
</div>
|
||||
<div class="input-group " style="margin-top:.5em;">
|
||||
<img id="thumb-preview" src="<?=isset($detail['thumb'])? Yii::$app->params['attachSrc'].Yii::$app->params['attachDir'].$detail['thumb']:'../img/nopic.jpg';?>" onerror="this.src='../img/nopic.jpg'; this.title='图片未找到.'" class="img-responsive img-thumbnail" width="150">
|
||||
<em class="close" style="position:absolute; top: 0px; right: -14px;" title="删除这张图片" onclick="deleteImage(this)">×</em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span>户型结构:</label>
|
||||
<div class="col-sm-6">
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="f" value="<?=isset($detail['f'])?$detail['f']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">室</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name=t" value="<?=isset($detail['t'])?$detail['t']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">厅</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="c" value="<?=isset($detail['c'])?$detail['c']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">厨</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="w" value="<?=isset($detail['w'])?$detail['w']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">卫</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="" name="b" value="<?=isset($detail['b'])?$detail['b']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">阳台</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-2">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">面积</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" placeholder="请输入面积(单位:平方米);四舍五入取整即可" name="measure" value="<?=isset($detail['measure'])?$detail['measure']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">m<sup>2</sup></button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span> 地理位置:</label>
|
||||
<div class="col-sm-3" style="margin-right: 0; padding-right: 0;">
|
||||
<input type="text" class="form-control" value="<?=isset($detail['lat'])?$detail['lat']:'';?>" placeholder="纬度" id="lat" name="lat"/>
|
||||
</div>
|
||||
<div class="col-sm-2" style="margin: 0;padding: 0;width: 3rem; line-height: 3rem;text-align: center;">--</div>
|
||||
<div class="col-sm-3" style="margin-left: 0; padding-left: 0;" >
|
||||
<input type="text" class="form-control" value="<?=isset($detail['longt'])?$detail['longt']:'';?>" placeholder="经度" id="lng" name="lng"/>
|
||||
</div>
|
||||
<div class="col-sm-2">
|
||||
<button type="button" mini="load" w="90%" h="90%" href="<?=Url::toRoute(['index/map','callback'=>'showLatLng','lat'=>isset($detail['lat'])?$detail['lat']:'0','lng'=>isset($detail['longt'])?$detail['longt']:'0']);?>" class="btn btn-w-m btn-primary">从地图选择</button>
|
||||
</div>
|
||||
<script>
|
||||
function showLatLng(lat,lng,detail){
|
||||
layer.closeAll();
|
||||
layer.msg('选取经纬度成功!');
|
||||
$("#lat").val(lat);
|
||||
$("#lng").val(lng);
|
||||
$("#address").val(detail);
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span> 地址:</label>
|
||||
<div class="col-sm-8">
|
||||
<input class="form-control" type="text" name="addr" id="address" placeholder="请填写具体位置,如**路**号**楼**室" value="<?=isset($detail['addr'])?$detail['addr']:'';?>" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">详情:</label>
|
||||
<div class="col-sm-8">
|
||||
<textarea id="editor" name="editor" style="min-height:300px;"><?=isset($detail['detail'])?$detail['detail']:''?></textarea>
|
||||
<script type="text/javascript">
|
||||
//实例化编辑器
|
||||
//建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
|
||||
var ue = UE.getEditor('editor');
|
||||
/* 传入参数表,添加到已有参数表里 */
|
||||
ue.ready(function() {
|
||||
ue.execCommand('serverparam', {
|
||||
'siteId': "<?=Yii::$app->params['siteId']?>",
|
||||
'pid': "<?=Yii::$app->session->get('pid')?>",
|
||||
'attachSrc': "<?=Yii::$app->params['attachSrc']?>",
|
||||
'attachDir': "<?=Yii::$app->params['attachDir']?>"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">是否删除:
|
||||
</label>
|
||||
<div class="col-sm-8">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['deleted'])&&$detail['deleted']==1)?'checked':'';?> value="1" id="deleted1" name="deleted">是</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['deleted']))||isset($detail['deleted'])&&$detail['deleted']==0)?'checked':'';?> value="0" id="deleted2" name="deleted">否</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-22 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('room/list')?>">全部房间</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
|
||||
<?php if(isset($detail['id']) && $detail['id']>0){ ?>
|
||||
<div class="ibox-title">
|
||||
<h5>客房参数资料录入管理</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link" data-href="#params">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link" data-href="#params">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content" id="params">
|
||||
<div class="alert alert-info">
|
||||
此处录入客房的参数资料
|
||||
</div>
|
||||
<form class="form-horizontal m-t" method="post" action="<?=Url::toRoute(['room/save','op'=>'params'])?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">WIFI:
|
||||
</label>
|
||||
<div class="col-sm-1">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['wifi'])&&$detail['wifi']==1)?'checked':'';?> value="1" id="wifi1" name="wifi">有</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['wifi']))||isset($detail['wifi'])&&$detail['wifi']==0)?'checked':'';?> value="0" id="wifi2" name="wifi">无</label>
|
||||
</div>
|
||||
<label class="col-sm-1 control-label">开火:
|
||||
</label>
|
||||
<div class="col-sm-2">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['cooking'])&&$detail['cooking']==1)?'checked':'';?> value="1" id="cooking1" name="cooking">支持</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['cooking']))||isset($detail['cooking'])&&$detail['cooking']==0)?'checked':'';?> value="0" id="cooking2" name="cooking">不支持</label>
|
||||
</div>
|
||||
<label class="col-sm-1 control-label">天然气:
|
||||
</label>
|
||||
<div class="col-sm-1">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['gas'])&&$detail['gas']==1)?'checked':'';?> value="1" id="gas1" name="gas">有</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['gas']))||isset($detail['gas'])&&$detail['gas']==0)?'checked':'';?> value="0" id="gas2" name="gas">无</label>
|
||||
</div>
|
||||
<label class="col-sm-1 control-label">泳池:
|
||||
</label>
|
||||
<div class="col-sm-1">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['swimmingpool'])&&$detail['swimmingpool']==1)?'checked':'';?> value="1" id="swimmingpool1" name="swimmingpool">有</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['swimmingpool']))||isset($detail['swimmingpool'])&&$detail['swimmingpool']==0)?'checked':'';?> value="0" id="swimmingpool2" name="swimmingpool">无</label>
|
||||
</div>
|
||||
<label class="col-sm-1 control-label">停车位:
|
||||
</label>
|
||||
<div class="col-sm-1">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=(isset($detail['parker'])&&$detail['parker']==1)?'checked':'';?> value="1" id="parker1" name="parker">有</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" <?=((!isset($detail['parker']))||isset($detail['parker'])&&$detail['parker']==0)?'checked':'';?> value="0" id="parker2" name="parker">无</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-22 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('room/list')?>">全部房间</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<?php }?>
|
||||
|
||||
<?php if(isset($detail['id']) && $detail['id']>0){ ?>
|
||||
<div class="ibox-title">
|
||||
<h5>客房业主关联管理</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link" data-href="#owner">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link" data-href="#owner">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content" id="owner">
|
||||
<div class="alert alert-info">
|
||||
此处录入客房的业主资料
|
||||
</div>
|
||||
<form class="form-horizontal m-t" method="post" action="<?=Url::toRoute(['room/save','op'=>'owner'])?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">归属业主:
|
||||
</label>
|
||||
<div class="col-sm-9">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="owner_title" id="owner-title" value="<?=isset($detail['owner_title'])?$detail['owner_title']:'';?>" placeholder="点击选择关联业主" autocomplete="off" href="<?=Url::toRoute(['owner/select','callback'=>'owner']);?>" w="80%;" h="90%;" title="选择所在关联业主" mini="load">
|
||||
<input type="hidden" class="form-control" name="owner_id" id="owner-value" value="<?=isset($detail['owner_id'])?$detail['owner_id']:0;?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-info" onclick="clearOwner('owner')">清除选择</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
function selectOwner(title,id,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('已选择');
|
||||
$('#'+callback+'-value').val(id);
|
||||
$('#'+callback+'-title').val(title);
|
||||
}
|
||||
function clearOwner(id)
|
||||
{
|
||||
$('#'+id+'-value').val('');
|
||||
$('#'+id+'-title').val('');
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label"><span class="red">*</span> 收益情况:</label>
|
||||
<div class="col-sm-3">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">总收入</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" name="income" value="<?=isset($detail['income'])?$detail['income']:'未填写';?>" placeholder="请输入该房间截止目前的累计收入金额" autocomplete="on">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">元</button>
|
||||
</span>
|
||||
</div>
|
||||
<span class="help-block m-b-none">单位:元; 支持小数</span>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">总支出</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" name="expense" value="<?=isset($detail['expense'])?$detail['expense']:'未填写';?>" placeholder="请输入该房间截止目前的累计支出费用" autocomplete="on">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">元</button>
|
||||
</span>
|
||||
</div>
|
||||
<span class="help-block m-b-none">单位:元; 支持小数</span>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-primary">总盈余</button>
|
||||
</span>
|
||||
<input class="input-sm form-control" type="text" name="surplus" value="<?=isset($detail['surplus'])?$detail['surplus']:'未填写';?>" placeholder="请输入该房间截止目前的累计盈余金额" autocomplete="on">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">元</button>
|
||||
</span>
|
||||
</div>
|
||||
<span class="help-block m-b-none">单位:元; 支持小数</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">签约时间:</label>
|
||||
<div class="col-sm-2">
|
||||
<input class="form-control layer-date" type="text" name="signtime" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['signtime'])?$detail['signtime']:''?>">
|
||||
</div>
|
||||
|
||||
<label class="col-sm-1 control-label">签约时长:</label>
|
||||
<div class="col-sm-2">
|
||||
<div class="input-group">
|
||||
<input class="input-sm form-control" type="text" placeholder="请将时长换算为月数" name="signmonths" value="<?=isset($detail['signmonths'])?$detail['signmonths']:''?>">
|
||||
<span class="input-group-btn">
|
||||
<button type="button" class="btn btn-sm btn-info">月</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<label class="col-sm-2 control-label">到期时间:</label>
|
||||
<div class="col-sm-2">
|
||||
<input class="form-control layer-date" type="text" name="deadline" placeholder="请选择日期" autocomplete="off" onclick="laydate({istime: true, format: 'YYYY-MM-DD'})" value="<?=isset($detail['deadline'])?$detail['deadline']:''?>">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-22 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('room/list')?>">全部房间</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<?php }?>
|
||||
<?php if(isset($detail['id']) && $detail['id']>0){ ?>
|
||||
<div class="ibox-title">
|
||||
<h5>客房其他内容管理</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link" data-href="#other">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link" data-href="#other">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content" id="other">
|
||||
<div class="alert alert-info">
|
||||
此处录入客房的其他资料
|
||||
</div>
|
||||
<form class="form-horizontal m-t" method="post" action="<?=Url::toRoute(['room/save','op'=>'other'])?>" role="form">
|
||||
<input type="hidden" name="_csrf-backend" value="<?=Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<input type="hidden" name="id" value="<?=isset($detail['id'])?$detail['id']:0;?>">
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">景观:</label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" id="landscape" name="landscape"><?=isset($detail['landscape'])?$detail['landscape']:''?></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">特色:</label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" id="feature" name="feature"><?=isset($detail['feature'])?$detail['feature']:''?></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">标签:</label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" id="tag" name="tag"><?=isset($detail['tag'])?$detail['tag']:''?></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">交通:</label>
|
||||
<div class="col-sm-8">
|
||||
<textarea class="form-control" id="traffic" name="traffic"><?=isset($detail['traffic'])?$detail['traffic']:''?></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-2 control-label">备注:</label>
|
||||
<div class="col-sm-8">
|
||||
<textarea id="remark-editor" name="remark-editor" style="min-height:300px;"><?=isset($detail['remark'])?$detail['remark']:''?></textarea>
|
||||
<script type="text/javascript">
|
||||
//实例化编辑器
|
||||
//建议使用工厂方法getEditor创建和引用编辑器实例,如果在某个闭包下引用该编辑器,直接调用UE.getEditor('editor')就能拿到相关的实例
|
||||
var ue2 = UE.getEditor('remark-editor');
|
||||
/* 传入参数表,添加到已有参数表里 */
|
||||
ue2.ready(function() {
|
||||
ue2.execCommand('serverparam', {
|
||||
'siteId': "<?=Yii::$app->params['siteId']?>",
|
||||
'pid': "<?=Yii::$app->session->get('pid')?>",
|
||||
'attachSrc': "<?=Yii::$app->params['attachSrc']?>",
|
||||
'attachDir': "<?=Yii::$app->params['attachDir']?>"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-22 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存</button>
|
||||
<button class="btn btn-white" type="reset">清空</button>
|
||||
<a class="btn btn-white" href="<?=Yii::$app->request->referrer?>">取消并返回</a>
|
||||
<a class="btn btn-info" href="<?=Url::toRoute('room/list')?>">全部房间</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<?php }?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function showImageFrame(obj){
|
||||
//取预设参数
|
||||
var id,title,width,height,url;
|
||||
id = $(obj).attr('data-id');
|
||||
title = $(obj).attr('data-title');
|
||||
width = $(obj).attr('data-width');
|
||||
height = $(obj).attr('data-height');
|
||||
url = $(obj).attr('data-src');
|
||||
//iframe层
|
||||
parent.layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: true,
|
||||
shade: 0.8,
|
||||
area: [width, height],
|
||||
content: url //iframe的url
|
||||
});
|
||||
}
|
||||
|
||||
function deleteImage(elm){
|
||||
$(elm).prev().attr("src", "../img/nopic.jpg");
|
||||
$(elm).parent().prev().find("input").val("");
|
||||
parent.layer.msg('图片已删除;您可重新上传');
|
||||
}
|
||||
|
||||
function selectImage(title,path,src,callback)
|
||||
{
|
||||
layer.closeAll();
|
||||
layer.msg('图片已选择');
|
||||
$('#'+callback+'-value').val(path);
|
||||
$('#'+callback+'-preview').attr('src',src).attr('title',title);
|
||||
}
|
||||
</script>
|
||||
|
||||
<script>
|
||||
laydate.skin('molv');
|
||||
$(document).ready(function() {
|
||||
var config = {
|
||||
".chosen-select": {},
|
||||
".chosen-select-deselect": {
|
||||
allow_single_deselect: !0
|
||||
},
|
||||
".chosen-select-no-single": {
|
||||
disable_search_threshold: 10
|
||||
},
|
||||
".chosen-select-no-results": {
|
||||
no_results_text: "Oops, nothing found!"
|
||||
},
|
||||
".chosen-select-width": {
|
||||
width: "95%"
|
||||
}
|
||||
};
|
||||
for (var selector in config) $(selector).chosen(config[selector]);
|
||||
});
|
||||
</script>
|
||||
<style>
|
||||
.laydate_body .laydate_top{
|
||||
padding:0;
|
||||
}
|
||||
.laydate_body .laydate_ym{
|
||||
/*margin:0;
|
||||
padding:5px;*/
|
||||
}
|
||||
.laydate_body .laydate_table{
|
||||
border:0;
|
||||
border-bottom: 1px solid rgb(204, 204, 204);
|
||||
}
|
||||
.laydate_body .laydate_bottom {
|
||||
border: 0;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.chosen-container-single .chosen-single{
|
||||
line-height:30px;
|
||||
}
|
||||
</style>
|
||||
Executable
+90
@@ -0,0 +1,90 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @Author: fm453
|
||||
* @Date: 2018-11-23 12:17:02
|
||||
* @Last Modified by: fm453
|
||||
* @Last Modified time: 2018-12-11 01:30:24
|
||||
* @Email: fm453@lukegzs.com
|
||||
*/
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use yii\widgets\LinkPager;
|
||||
|
||||
$this->title = '酒店列表';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<h1><?= Html::encode($this->title) ?></h1>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<a class="btn btn-info btn-sm" href="<?= Url::toRoute('hotel/new')?>">新增酒店</a>
|
||||
</div>
|
||||
<div class="col-sm-3 pull-right">
|
||||
<form action="<?=Url::toRoute('hotel/list')?>" method="post">
|
||||
<input type="hidden" name="_csrf-backend" value="<?= Yii::$app->getRequest()->getCsrfToken();?>" />
|
||||
<div class="input-group">
|
||||
<input type="text" placeholder="请输入酒店名" name="title" class="input-sm form-control">
|
||||
<span class="input-group-btn">
|
||||
<button type="submit" class="btn btn-sm btn-primary"> 搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>区域地址</th>
|
||||
<th>名称</th>
|
||||
<th>状态</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<?php foreach($hotels as $vo):?>
|
||||
<tr>
|
||||
<td><?=$vo['id']?></td>
|
||||
<td>【<code><?=isset($citys[$vo['city']]['name'])?$citys[$vo['city']]['name']:'未设置'?></code>】<?=$vo['addr']?></td>
|
||||
<td><?=$vo['title']?></td>
|
||||
<td>
|
||||
<?php if($vo['status_code']==1){?>
|
||||
<a class="btn btn-info btn-xs" href="<?=Url::toRoute(['hotel/ajax','id'=>$vo['id'],'do'=>'hide'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }else{?>
|
||||
<a class="btn btn-default btn-xs" href="<?=Url::toRoute(['hotel/ajax','id'=>$vo['id'],'do'=>'show'])?>" mini="ajax"><?=$status[$vo['status_code']]?></a>
|
||||
<?php }?>
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-primary btn-xs" onclick="parent.selectHotel('<?=$vo['title']?>','<?=$vo['id']?>','<?=$callback?>');">选择</a>
|
||||
</td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
</tbody>
|
||||
</table>
|
||||
<!--分页-->
|
||||
<div class="f-r">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+18
@@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $name string */
|
||||
/* @var $message string */
|
||||
/* @var $exception Exception */
|
||||
|
||||
use yii\helpers\Html;
|
||||
|
||||
$this->title = $name;
|
||||
?>
|
||||
<div class="site-error">
|
||||
<div style="margin-top: 100px;text-align: center;">
|
||||
<h1><?= Html::encode($this->title) ?></h1><br>
|
||||
</div>
|
||||
<h4 style="margin: 10px auto;text-align: center;background-color: #1ab394; color: #ffffff;width: 500px;height: 50px;line-height: 50px;border-radius: 5px;"><?= nl2br(Html::encode($message)) ?></h4>
|
||||
|
||||
</div>
|
||||
Executable
+290
@@ -0,0 +1,290 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
use yii\helpers\Url;
|
||||
use mdm\admin\components\MenuHelper;
|
||||
$this->title = Yii::t('backend' ,'System Name');
|
||||
$keywords = '';
|
||||
$description = '';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div id="wrapper">
|
||||
<!--左侧导航开始-->
|
||||
<nav class="navbar-default navbar-static-side" role="navigation">
|
||||
<div class="nav-close"><i class="fa fa-times-circle"></i>
|
||||
</div>
|
||||
<div class="sidebar-collapse">
|
||||
<ul class="nav" id="side-menu">
|
||||
<li class="nav-header">
|
||||
<div class="dropdown profile-element">
|
||||
<span><img alt="image" class="img-circle" src="<?php echo Url::to(Yii::$app->user->identity->avatar);?>" /></span>
|
||||
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
|
||||
<span class="clear">
|
||||
<span class="block m-t-xs"><strong class="font-bold"><?= Yii::$app->user->identity->username ?></strong></span>
|
||||
<span class="text-muted text-xs block"><?= $user_info?><b class="caret"></b></span>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="dropdown-menu animated fadeInRight m-t-xs">
|
||||
<li><a class="J_menuItem" href="">修改头像</a>
|
||||
</li>
|
||||
<li><a class="J_menuItem" href="<?= Url::toRoute(['adminer/update','id'=>Yii::$app->user->identity->getId()])?>">个人资料</a>
|
||||
</li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="<?=Url::toRoute('site/logout')?>">安全退出</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="logo-element">Hi
|
||||
</div>
|
||||
</li>
|
||||
<?php foreach($menu as $v1):?>
|
||||
<?php $data = json_decode($v1['data'], true);?>
|
||||
<li><!--一级级菜单-->
|
||||
<a href="#">
|
||||
<i class="<?=$data['icon']?>"></i>
|
||||
<span class="nav-label"><?= $v1['name']?></span>
|
||||
<span class="fa arrow"></span>
|
||||
</a>
|
||||
<?php if(array_key_exists('_child',$v1)):?>
|
||||
<ul class="nav nav-second-level">
|
||||
<?php foreach($v1['_child'] as $v2):?>
|
||||
<?php $data2 = json_decode($v2['data'], true);?>
|
||||
<?php if(array_key_exists('_child',$v2)):?>
|
||||
<li><!--二级菜单-->
|
||||
<a href="#">
|
||||
<?php if($data2['icon']):?><i class="<?=$data2['icon']?>"></i><?php endif;?><?= $v2['name']?>
|
||||
<span class="fa arrow"></span>
|
||||
</a>
|
||||
<?php if(!empty($v2['_child'])):?>
|
||||
<ul class="nav nav-third-level collapse">
|
||||
<?php foreach($v2['_child'] as $v3):?>
|
||||
<li><!--三级菜单-->
|
||||
<a class="J_menuItem" href="<?= Url::toRoute($v3['route']);?>" data-index="0" onclick="active(this)"><?= $v3['name']?></a>
|
||||
</li>
|
||||
<?php endforeach;?>
|
||||
</ul>
|
||||
<?php endif;?>
|
||||
</li>
|
||||
<?php else:?>
|
||||
<li><!--二级菜单-->
|
||||
<a class="J_menuItem" href="<?= Url::toRoute($v2['route']);?>" data-index="0" onclick="active(this)"><?= $v2['name']?></a>
|
||||
</li>
|
||||
<?php endif;?>
|
||||
<?php endforeach;?>
|
||||
</ul>
|
||||
<?php endif;?>
|
||||
</li>
|
||||
<?php endforeach;?>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<script>
|
||||
function active(obj){
|
||||
$('a.J_menuItem').css({'background-color':'','color':''});
|
||||
$(obj).css({'background-color':'#0095f6','color':'#fff'});
|
||||
}
|
||||
</script>
|
||||
<!--左侧导航结束-->
|
||||
<!--右侧部分开始-->
|
||||
<div id="page-wrapper" class="gray-bg dashbard-1">
|
||||
<div class="row border-bottom">
|
||||
<nav class="navbar navbar-static-top" role="navigation" style="margin-bottom: 0">
|
||||
<div class="navbar-header"><a class="navbar-minimalize minimalize-styl-2 btn btn-primary " href="#"><i class="fa fa-bars"></i> </a>
|
||||
<button class="navbar-minimalize minimalize-styl-2 btn btn-primary " >V<?php echo Yii::getVersion();?></button><form role="search" class="navbar-form-custom" method="post" action="#">
|
||||
<div class="form-group">
|
||||
<input type="text" placeholder="快速查找(该功能暂未开放) …" class="form-control" name="top-search" id="top-search" style="border-bottom: 1px solid rgb(204, 204, 204);">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<ul class="nav navbar-top-links navbar-right">
|
||||
<li class="dropdown">
|
||||
<a class="dropdown-toggle count-info" data-toggle="dropdown" href="#">
|
||||
<i class="fa fa-bell"></i> <span class="label label-warning">8</span>
|
||||
</a>
|
||||
<ul class="dropdown-menu dropdown-alerts">
|
||||
<li>
|
||||
<a href="#">
|
||||
<div>
|
||||
<i class="fa fa-envelope fa-fw"></i> 还只是测试
|
||||
<span class="pull-right text-muted small">4分钟前</span>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li class="divider"></li>
|
||||
<li>
|
||||
<a href="#">
|
||||
<div>
|
||||
<i class="fa fa-qq fa-fw"></i> 请忽略我
|
||||
<span class="pull-right text-muted small">12分钟前</span>
|
||||
</div>
|
||||
</a>
|
||||
</li>
|
||||
<li class="divider"></li>
|
||||
<li>
|
||||
<div class="text-center link-block">
|
||||
<a class="J_menuItem" href="#">
|
||||
<strong>查看所有 </strong>
|
||||
<i class="fa fa-angle-right"></i>
|
||||
</a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="dropdown hidden-xs">
|
||||
<a class="right-sidebar-toggle" aria-expanded="false">
|
||||
<i class="fa fa-tasks"></i> 主题
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
<!--页卡导航-->
|
||||
<div class="row content-tabs">
|
||||
<button class="roll-nav roll-left J_tabLeft"><i class="fa fa-backward"></i>
|
||||
</button>
|
||||
<nav class="page-tabs J_menuTabs">
|
||||
<div class="page-tabs-content">
|
||||
<a href="javascript:;" class="active J_menuTab" data-id="">首页</a>
|
||||
</div>
|
||||
</nav>
|
||||
<button class="roll-nav roll-right J_tabRight"><i class="fa fa-forward"></i>
|
||||
</button>
|
||||
<div class="btn-group roll-nav roll-right">
|
||||
<button class="dropdown J_tabClose" data-toggle="dropdown">关闭操作<span class="caret"></span>
|
||||
</button>
|
||||
<ul role="menu" class="dropdown-menu dropdown-menu-right">
|
||||
<li class="J_tabShowActive"><a>定位当前选项卡</a>
|
||||
</li>
|
||||
<li class="divider"></li>
|
||||
<li class="J_tabCloseAll"><a>关闭全部选项卡</a>
|
||||
</li>
|
||||
<li class="J_tabCloseOther"><a>关闭其他选项卡</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<a href="<?=Url::toRoute('site/logout')?>" class="roll-nav roll-right J_tabExit"><i class="fa fa fa-sign-out"></i> 退出</a>
|
||||
</div>
|
||||
<div class="row J_mainContent" id="content-main">
|
||||
<iframe class="J_iframe" name="iframe0" width="100%" height="100%" src="<?= Url::toRoute('index/welcome')?>" frameborder="0" data-id="" seamless></iframe>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="pull-right">
|
||||
Copyright © <?= Yii::t('common' ,'Company Create Time') ?>-<?php echo date('Y',time()); ?> <a href="http://vcms.hiluker.com" target="_blank">微营销管理系统</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--右侧部分结束-->
|
||||
<!--右侧边栏开始-->
|
||||
<div id="right-sidebar">
|
||||
<div class="sidebar-container">
|
||||
<ul class="nav nav-tabs navs-3">
|
||||
<li class="active ">
|
||||
<a data-toggle="tab" href="#tab-1">
|
||||
<i class="fa fa-gear"></i> 主题
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="tab-content">
|
||||
<div id="tab-1" class="tab-pane active">
|
||||
<div class="sidebar-title ">
|
||||
<h3> <i class="fa fa-comments-o"></i> 主题设置</h3>
|
||||
<small><i class="fa fa-tim"></i> 你可以从这里选择和预览主题的布局和样式;刷新后或重新登陆后即会重置。</small>
|
||||
</div>
|
||||
<div class="skin-setttings">
|
||||
|
||||
<div class="title">主题设置</div>
|
||||
|
||||
<div class="setings-item">
|
||||
<span>收起左侧菜单</span>
|
||||
<div class="switch">
|
||||
<div class="onoffswitch">
|
||||
<input type="checkbox" name="collapsemenu" class="onoffswitch-checkbox" id="collapsemenu">
|
||||
<label class="onoffswitch-label" for="collapsemenu" onclick="changeStyle('leftMenu');">
|
||||
<span class="onoffswitch-inner"></span>
|
||||
<span class="onoffswitch-switch"></span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="setings-item">
|
||||
<span>固定顶部</span>
|
||||
<div class="switch">
|
||||
<div class="onoffswitch">
|
||||
<input type="checkbox" name="fixednavbar" class="onoffswitch-checkbox" id="fixednavbar">
|
||||
<label class="onoffswitch-label" for="fixednavbar">
|
||||
<span class="onoffswitch-inner"></span>
|
||||
<span class="onoffswitch-switch"></span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="setings-item">
|
||||
<span>
|
||||
固定宽度
|
||||
</span>
|
||||
<div class="switch">
|
||||
<div class="onoffswitch">
|
||||
<input type="checkbox" name="boxedlayout" class="onoffswitch-checkbox" id="boxedlayout">
|
||||
<label class="onoffswitch-label" for="boxedlayout">
|
||||
<span class="onoffswitch-inner"></span>
|
||||
<span class="onoffswitch-switch"></span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="title">皮肤选择</div>
|
||||
<div class="setings-item default-skin nb">
|
||||
<span class="skin-name ">
|
||||
<a href="#" class="s-skin-0">
|
||||
默认皮肤
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="setings-item blue-skin nb">
|
||||
<span class="skin-name ">
|
||||
<a href="#" class="s-skin-1">
|
||||
蓝色主题
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="setings-item yellow-skin nb">
|
||||
<span class="skin-name ">
|
||||
<a href="#" class="s-skin-3">
|
||||
黄色主题
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="setings-item red-skin nb">
|
||||
<span class="skin-name ">
|
||||
<a href="#" class="s-skin-2">
|
||||
红色主题
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="title">
|
||||
<a class="right-sidebar-toggle" aria-expanded="false">
|
||||
<i class="fa fa-close"></i> 关闭
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--右侧边栏结束-->
|
||||
</div>
|
||||
<?=Html::jsFile('@web/js/plugins/metisMenu/jquery.metisMenu.js')?>
|
||||
<?=Html::jsFile('@web/js/plugins/slimscroll/jquery.slimscroll.min.js')?>
|
||||
<?=Html::jsFile('@web/js/hplus.min.js')?>
|
||||
<?=Html::jsFile('@web/js/contabs.min.js')?>
|
||||
<?=Html::jsFile('@web/js/plugins/pace/pace.min.js')?>
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $form yii\bootstrap\ActiveForm */
|
||||
/* @var $model \common\models\LoginForm */
|
||||
|
||||
use yii\helpers\Html;
|
||||
use yii\bootstrap\ActiveForm;
|
||||
|
||||
$this->title = Yii::t('backend' ,'System Name');
|
||||
$keywords = '';
|
||||
$description = '';
|
||||
$this->params['breadcrumbs'][] = $this->title;
|
||||
?>
|
||||
<div class="middle-box text-center loginscreen animated fadeInDown">
|
||||
<div>
|
||||
<div>
|
||||
|
||||
<h1 class="logo-name">Hi</h1>
|
||||
|
||||
</div>
|
||||
<h3><?php echo $this->title ?></h3>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="">
|
||||
<?php $form = ActiveForm::begin(['id' => 'login-form']); ?>
|
||||
|
||||
<?= $form->field($model, 'username')->textInput(['autofocus' => true])->label(Yii::t('common' ,'Username')) ?>
|
||||
|
||||
<?= $form->field($model, 'password')->passwordInput()->label(Yii::t('common' ,'Password')) ?>
|
||||
|
||||
<?= $form->field($model, 'rememberMe')->checkbox()->label(Yii::t('common' ,'Remember Me')) ?>
|
||||
|
||||
<div class="form-group">
|
||||
<?= Html::submitButton(Yii::t('common' ,'Login'), ['class' => 'btn btn-primary', 'name' => 'login-button']) ?>
|
||||
</div>
|
||||
|
||||
<?php ActiveForm::end(); ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="">Copyright © <?=Yii::t('common' ,'Company Create Time') ?>-<?php echo date('Y',time()); ?> <a href="https://www.hiluker.com" target="_blank">嗨路客电子商务</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+155
@@ -0,0 +1,155 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>基础资料</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="alert alert-info">
|
||||
在此处录入新车主客户的基础资料,系统自动为其新建一份档案;
|
||||
</div>
|
||||
<form role="form" class="form-horizontal m-t">
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">姓名:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="realname" placeholder="请输入客户的姓名" autocomplete="off">
|
||||
<span class="help-block m-b-none">这里输入车主的真实姓名,如果没有则不填</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">昵称:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="nickname" placeholder="请输入客户的昵称" autocomplete="off">
|
||||
<span class="help-block m-b-none">这里输入车主的昵称,如<code>板爷</code>、<code>方少</code></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">称谓:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="title" placeholder="请输入客户的称谓" autocomplete="off">
|
||||
<span class="help-block m-b-none">这里输入车主的称谓,如“马老师”、“李叔”、“王教授”</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">手机号:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="text" name="mobile" placeholder="请输入客户的手机号" autocomplete="off">
|
||||
<span class="help-block m-b-none">多个手机号时,号码间用逗号(<kbd>,</kbd> )隔开;主手机放前,如<code>18608981880</code><kbd>,</kbd><code>13812345678</code>。</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">密码框:</label>
|
||||
<div class="col-sm-9">
|
||||
<input class="form-control" type="password" name="password" placeholder="请输入密码,可用于平台后期开放的用户端登陆" autocomplete="off" value="123456">
|
||||
<span class="help-block m-b-none">预留功能,如不填写,将默认使用初始密码<code>123456</code></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">性别:</label>
|
||||
<div class="col-sm-9">
|
||||
<select class="form-control" name="gender">
|
||||
<option value="0">未知</option>
|
||||
<option value="1">男</option>
|
||||
<option value="2">女</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">车主照片:</label>
|
||||
<div class="col-sm-9">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" name="thumb" id="thumb-value" placeholder="如有车主照片,可上传一张" autocomplete="off"> <span class="input-group-btn"> <button type="button" class="btn btn-primary" onclick="showImageFrame(this);" data-id="thumb-value" data-src="<?= Url::toRoute(['upload/image','multi'=>false]);?>" data-width="80%;" data-height="90%;" data-title="选择或上传图片">选择图片
|
||||
</button> </span>
|
||||
</div>
|
||||
<div class="input-group " style="margin-top:.5em;">
|
||||
<img src="../img/nopic.jpg" onerror="this.src='../img/nopic.jpg'; this.title='图片未找到.'" class="img-responsive img-thumbnail" width="150">
|
||||
<em class="close" style="position:absolute; top: 0px; right: -14px;" title="删除这张图片" onclick="deleteImage(this)">×</em>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">创建时间:</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<p class="form-control-static"><?php echo date('Y-m-d h:i');?></p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">单选框:
|
||||
</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<label class="radio-inline">
|
||||
<input type="radio" checked="" value="option1" id="optionsRadios1" name="optionsRadios">选项1</label>
|
||||
<label class="radio-inline">
|
||||
<input type="radio" value="option2" id="optionsRadios2" name="optionsRadios">选项2</label>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group draggable">
|
||||
<label class="col-sm-1 control-label">复选框:</label>
|
||||
|
||||
<div class="col-sm-9">
|
||||
<label class="checkbox-inline">
|
||||
<input type="checkbox" value="option1" id="inlineCheckbox1">选项1</label>
|
||||
<label class="checkbox-inline">
|
||||
<input type="checkbox" value="option2" id="inlineCheckbox2">选项2</label>
|
||||
<label class="checkbox-inline">
|
||||
<input type="checkbox" value="option3" id="inlineCheckbox3">选项3</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hr-line-dashed"></div>
|
||||
<div class="form-group draggable">
|
||||
<div class="col-sm-12 col-sm-offset-3">
|
||||
<button class="btn btn-primary" type="submit">保存内容</button>
|
||||
<button class="btn btn-white" type="submit">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
function showImageFrame(obj){
|
||||
//取预设参数
|
||||
var id,title,width,height,url;
|
||||
id = $(obj).attr('data-id');
|
||||
title = $(obj).attr('data-title');
|
||||
width = $(obj).attr('data-width');
|
||||
height = $(obj).attr('data-height');
|
||||
url = $(obj).attr('data-src');
|
||||
//iframe层
|
||||
parent.layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: true,
|
||||
shade: 0.8,
|
||||
area: [width, height],
|
||||
content: url //iframe的url
|
||||
});
|
||||
}
|
||||
|
||||
function deleteImage(elm){
|
||||
$(elm).prev().attr("src", "../img/nopic.jpg");
|
||||
$(elm).parent().prev().find("input").val("");
|
||||
parent.layer.msg('图片已删除;您可重新上传');
|
||||
}
|
||||
</script>
|
||||
Executable
+168
@@ -0,0 +1,168 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
use \yii\widgets\LinkPager;
|
||||
|
||||
$max_multi = 1; //单次最多上传数量;默认是300张
|
||||
$max_size = 1024*1024*3; //3M,换算成字节
|
||||
$total_size = 1024*1024*50; //50M
|
||||
|
||||
?>
|
||||
<?=Html::cssFile('@web/css/plugins/webuploader/webuploader.css')?>
|
||||
<?=Html::cssFile('@web/css/demo/webuploader-demo.min.css')?>
|
||||
|
||||
<div class="wrapper wrapper-content animated fadeIn">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>图片上传</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="page-container">
|
||||
<p>您可以尝试文件拖拽,使用QQ截屏工具,然后激活窗口后粘贴,或者点击添加图片按钮.</p>
|
||||
<div id="uploader" class="wu-example">
|
||||
<div class="queueList">
|
||||
<div id="dndArea" class="placeholder">
|
||||
<div id="filePicker"></div>
|
||||
<p>或将照片拖到这里,单次最多可选<?php echo $max_multi;?>张</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="statusBar" style="display:none;">
|
||||
<div class="progress">
|
||||
<span class="text">0%</span>
|
||||
<span class="percentage"></span>
|
||||
</div>
|
||||
<div class="info"></div>
|
||||
<div class="btns">
|
||||
<div id="filePicker2"></div>
|
||||
<div class="uploadBtn">开始上传</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<div class="input-group">
|
||||
<span class="input-group-btn"> <button id="callback-title" type="button" class="btn btn-primary">图片标题
|
||||
</button> </span>
|
||||
<input class="form-control" type="text" id="callback" name="callback" placeholder="文件保存地址" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
var UPLOAD_BUTTON_LABEL = '点击选择图片';
|
||||
var UPLOAD_BASE_URL = 'js/plugins/webuploader'; //上传组件目录定义
|
||||
var UPLOAD_SERVER_URL = '../js/plugins/webuploader/upload.php?pid=<?php echo $_SESSION['pid'];?>&dir=<?php echo Yii::getAlias("@upload");?>&type=pics'; //服务器上传处理地址
|
||||
var UPLOAD_JSON_POST_URL = '<?=Url::toRoute(["upload/image_save"])?>'; //上传成功后的业务逻辑地址
|
||||
var UPLOAD_ACCEPT_EXTENSIONS = "gif,jpg,jpeg,bmp,png"; //允许的文件后缀
|
||||
var UPLOAD_ACCEPT_FILETYPE = "image/*"; //允许的文件类型
|
||||
var UPLOAD_ACCEPT_TITLE = 'Images';
|
||||
var UPLOAD_MAX_NUM = '<?php echo $max_multi;?>'; //最大同时上传文件数
|
||||
var UPLOAD_MAX_SIZE = '<?php echo $max_size;?>'; //最大单文件大小,bytes
|
||||
var UPLOAD_TOTAL_SIZE = '<?php echo $total_size;?>'; //最大同时上传文件大小,bytes
|
||||
</script>
|
||||
<?=Html::jsFile('@web/js/plugins/webuploader/webuploader.min.js')?>
|
||||
<?=Html::jsFile('@web/js/demo/webuploader-demo.min.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-xs-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>您还可以直接选取已有图片</h5>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12 hidden">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-content">
|
||||
<div class="row">
|
||||
<div class="table-responsive">
|
||||
|
||||
<form class="form-search" method="get" action="<?=Url::toRoute(["upload/image"])?>" role="form">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
</td>
|
||||
<td>
|
||||
<div class="input-group">
|
||||
<button type="submit" style="margin-top: 42%"
|
||||
class="btn form-control btn-sm btn-primary">
|
||||
搜索
|
||||
</button>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12">
|
||||
<div class="ibox-content">
|
||||
<div class="row" id="imageList">
|
||||
<?php foreach($list as $val){ ?>
|
||||
<div class="col-sm-4 col-md-3 col-lg-2">
|
||||
<div class="thumbnail" data-toggle="tooltip" data-placement="top" title="点击图片即可选择">
|
||||
<img style="height:300px;" alt="<?=$val['title']?>" src="<?=$src.$val['route']?>" title="<?=$val['title']?>" onclick="markImage(this);parent.selectImage('<?=$val['title']?>','<?=$val['route']?>','<?=$src.$val['route']?>','<?=$callback?>');" />
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="table-responsive">
|
||||
|
||||
<div>
|
||||
<!--分页-->
|
||||
<div class="f-r" style="text-align: center;">
|
||||
<?= LinkPager::widget([
|
||||
'pagination'=>$pager,
|
||||
'firstPageLabel' => '首页',
|
||||
'nextPageLabel' => '下一页',
|
||||
'prevPageLabel' => '上一页',
|
||||
'lastPageLabel' => '末页',
|
||||
]) ?>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- /.row -->
|
||||
</div><!-- /.main-container -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<style>
|
||||
#imageList .selected{
|
||||
border-color:#0095f6;
|
||||
background-color:#0095f6;
|
||||
box-shadow: 3px 5px 2px;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
$('[data-toggle="tooltip"]').tooltip();
|
||||
|
||||
function markImage(obj){
|
||||
$('#imageList .selected').removeClass('selected');
|
||||
$(obj).parent().addClass('selected');
|
||||
// $(obj).parent().css({"border-color":"#0095f6","background-color":"#0095f6"});
|
||||
}
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+89
@@ -0,0 +1,89 @@
|
||||
<?php
|
||||
use yii\helpers\Html;
|
||||
use yii\helpers\Url;
|
||||
?>
|
||||
<?=Html::cssFile('@web/css/plugins/webuploader/webuploader.css')?>
|
||||
<?=Html::cssFile('@web/css/demo/webuploader-demo.min.css')?>
|
||||
|
||||
<div class="wrapper wrapper-content animated fadeIn">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>图片上传</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="page-container">
|
||||
<p>您可以尝试文件拖拽,使用QQ截屏工具,然后激活窗口后粘贴,或者点击添加图片按钮.</p>
|
||||
<div id="uploader" class="wu-example">
|
||||
<div class="queueList">
|
||||
<div id="dndArea" class="placeholder">
|
||||
<div id="filePicker"></div>
|
||||
<p>或将照片拖到这里,单次最多可选300张</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="statusBar" style="display:none;">
|
||||
<div class="progress">
|
||||
<span class="text">0%</span>
|
||||
<span class="percentage"></span>
|
||||
</div>
|
||||
<div class="info"></div>
|
||||
<div class="btns">
|
||||
<div id="filePicker2"></div>
|
||||
<div class="uploadBtn">开始上传</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
var BASE_URL = 'js/plugins/webuploader';
|
||||
var UPLOAD_SERVER_URL = '<?= Url::home().'/upload.php';?>';
|
||||
// var UPLOAD_SERVER_URL = '../js/plugins/webuploader/upload.php';
|
||||
</script>
|
||||
<?=Html::jsFile('@web/js/plugins/webuploader/webuploader.min.js')?>
|
||||
<?=Html::jsFile('@web/js/demo/webuploader-demo.min.js')?>
|
||||
|
||||
<div class="wrapper wrapper-content">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="ibox float-e-margins">
|
||||
<div class="ibox-title">
|
||||
<h5>图片列表</h5>
|
||||
<div class="ibox-tools">
|
||||
<a class="collapse-link">
|
||||
<i class="fa fa-chevron-up"></i>
|
||||
</a>
|
||||
|
||||
<a class="close-link">
|
||||
<i class="fa fa-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
<div class="alert alert-info">
|
||||
点击图片即可选择
|
||||
</div>
|
||||
<form role="form" class="form-horizontal m-t">
|
||||
|
||||
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user