ctms/pms-admin/views/guest/modify.php
2025-04-10 23:19:13 +08:00

379 lines
23 KiB
PHP
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?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>