123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393 |
- {extend name="public/layout" /}
- {block name="title"}企业设置{/block}
- {block name="body"}
- <style>
- html,body{min-width: 700px !important;}
- .layui-fluid {
- display: block;
- box-shadow: 0 0 4px 0 #B6CADE;
- border-radius: 5px;
- margin: 15px;
- background-color: #ffffff;
- }
- .layui-btn-primary {
- color: #249EFB;
- border: 1px solid #249EFB;
- }
- .layui-btn-primary:hover {
- background-color: #E3F7FF;
- color: #249EFB;
- }
- .layui-form-label{width:100px !important;}
- .grant-name{width:516px !important;}
- input::-webkit-outer-spin-button,
- input::-webkit-inner-spin-button {
- -webkit-appearance: none !important;
- margin: 0;
- }
- .layui-form-switch {
- margin-top: 0px;
- }
- .vrBtnSelect {
- white-space: nowrap;
- padding: 0px 10px;
- height: 38px;
- background-color: #249EFB;
- color: #ffffff;
- text-align: center;
- line-height: 38px;
- border-radius: 4px;
- margin-left: 5px;
- cursor: pointer;
- }
- </style>
- <body>
- <div class="layui-fluid">
- <div class="layui-card">
- <div class="layui-card-body">
- <form class="layui-form" enctype="multipart/form-data">
- <div class="layui-form-item">
- <label class="layui-form-label"><i style="color:red;">* </i> 企业名:</label>
- <div class="layui-input-inline grant-name">
- <input class="layui-input" lay-verify="required" name="company_name" type="text" value="{$data.company_name}"
- placeholder="请输入企业名">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">LOGO:</label>
- <div class="layui-input-inline" id="upload-drag">
- <div class="layui-upload-drag">
- {notempty name="data.logo"}
- <img src="{$data.logo}" style="height: 100%;width:100%;">
- {else/}
- <i class="layui-icon"></i>
- <p>上传LOGO</p>
- {/notempty}
- </div>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label"><i style="color:red;">* </i>企业电话:</label>
- <div class="layui-input-inline grant-name">
- <input class="layui-input" name="tel" type="text" onkeyup="RegularInt(this)" value="{$data.tel}" placeholder="请输入企业电话/座机号码">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label"><i style="color:red;">* </i>公司介绍:</label>
- <div class="layui-input-inline" style="width: 516px;">
- <textarea name="company_introduction" id="content" style="width: 100%; height: 200px;"
- autocomplete="off" >{$data.company_introduction}</textarea>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label"><i style="color:red;">* </i>地址信息:</label>
- <div class="layui-input-inline" style="width: 516px;">
- <textarea name="company_address" style="width: 100%; height: 100px;" autocomplete="off"
- class="layui-textarea">{$data.company_address}</textarea>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">VR寻址链接:</label>
- <div class="layui-input-inline grant-name">
- <input class="layui-input" name="vr_address" id="vrAddressElement" type="text" placeholder="请输入VR寻址链接"
- value="{$data.vr_address}">
- <div class="vrBtnSelect">选择vr作品</div>
- </div>
- </div>
- <div class="layui-form-item" style="position: relative;">
- <div class="vrzturls">
-
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">程序准入设置:</label>
- <div class="layui-input-inline grant-name" style="padding:7px 0;">
- 五天未登录禁止使用 <input type="checkbox" name="disable_day" {if $disable_day}checked{/if} value="1" lay-skin="switch" lay-text="开启|关闭">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">(程序准入)不受限制人员:</label>
- <div class="layui-input-inline grant-name" style="padding:7px 0;">
- <div class="layui-btn setunlimitEle" style="position: relative;top: 3px;">设置人员</div>
- </div>
- </div>
- <div class="layui-form-item">
- <div class="layui-input-block" style="margin-left:130px !important;">
- <input type="hidden" value="{$logo}" name="logo">
- {auth:check name="org/setting"}
- <input type="button" class="layui-btn btn layui-btn-primary" lay-submit lay-filter="submit"
- id="submit" value="确认保存">
- {/auth:check}
- </div>
- </div>
- </form>
- </div>
- </div>
- </div>
- </body>
- {/block} {block name="js"}
- <!-- 配置文件 -->
- <script type="text/javascript" src="__STATIC__/ueditor/dist/utf8-php/ueditor.config.js"></script>
- <!-- 编辑器源码文件 -->
- <script type="text/javascript" src="__STATIC__/ueditor/dist/utf8-php/ueditor.all.js"></script>
- <!-- 实例化编辑器 -->
- <script type="text/javascript">
- var ue = UE.getEditor('content');
- </script>
- <script type="text/javascript">
- function RegularNum(obj) {
- obj.value = obj.value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
- obj.value = obj.value.replace(/^\./g, ""); //验证第一个字符是数字
- obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一个, 清除多余的
- obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
- obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入三个小数
- }
- function RegularInt(obj) {
- obj.value = obj.value.replace(/[^\d-]/g, ""); //清除"数字以外的字符
- obj.value = obj.value.replace(/^\./g, ""); //验证第一个字符是数字
- }
- </script>
- <script>
- layui.config({
- base: '__LAYUI__/' //静态资源所在路径
- ,
- urlbase: '/sys'
- }).extend({
- index: 'lib/index' //主入口模块
- }).use(['index', 'table', 'layedit', 'element', 'upload'], function () {
- var $ = layui.$,
- upload = layui.upload,
- layedit = layui.layedit,
- form = layui.form;
- var set_List = [];
- $.ajax({
- url: '{:url("org/company_vrlist")}',
- type: 'post',
- success: function (res) {
- if (res.code == 0) {
- set_List = res.data;
- set_step_Html(set_List);
- } else {
- layer.msg(res.msg, {
- anim: 6
- , time: 2000
- });
- }
- }
- });
- //vr作品
- $('.vrBtnSelect').click(function(){
- let vrStr = $(`#vrAddressElement`).val();
- let vrSid = "";
- if (vrStr && ((vrStr.indexOf("saastest.zhuangqixiaoguan.com") > -1)||(vrStr.indexOf("h5.zqxg.cc") > -1))) {
- vrSid = vrStr.split("/#/")[1];
- }
- layer.open({
- type: 2,
- title: ['选择VR作品', 'color:#333333;background-color:#D8E6F1;'],
- content: '{:url("building/group")}?id='+vrSid,
- area: ['80%', '80%'],
- btn: ['确定', '取消'],
- yes: function (index, layero) {
- let data = layero.find('iframe').contents().find("#hiddentext").val();
- if (data) {
- let vrObject = JSON.parse(data);
- $("#vrAddressElement").val(vrObject.show_url);
- }
- layer.close(index);
- //点击确认触发 iframe 内容中的按钮提交
- }
- });
- })
- $(".setunlimitEle").click(function() {
- layer.open({
- type: 2,
- title: ['设置不受限制人员', 'color:#333333;background-color:#D8E6F1;'],
- content: '{:url("org/set_unlimited_employee")}',
- area: ['80%', '80%'],
- btn: ['确定', '取消'],
- yes: function (index, layero) {
- layer.close(index);
- //点击确认触发 iframe 内容中的按钮提交
- },
- end: function () {}
- });
- })
-
- function set_step_Html(set_List){
- $('.vrzturls')[0].innerHTML = $.map(set_List,(v, i) => {
- return `<div style="margin-bottom:15px;"><label class="layui-form-label">VR展厅链接:</label>
- <div class="layui-input-inline grant-name">
- <input style="width:40%;" class="layui-input" data-type="name" data-index="${i}" type="text" placeholder="展厅名称" value="${v.name}">
- <span style="margin: 0 5px;line-height: 38px">-</span>
- <input id="vrShowElement${v.id}" class="layui-input" data-type="url" data-index="${i}" type="text" placeholder="VR展厅链接" value="${v.url}">
- <div class="vrBtnSelect vrChooseElement" data-index="${i}" data-id="${v.id}">选择vr作品</div>
- </div>
- <i class="layui-icon layui-icon-add-circle org_vradd" style="font-size: 24px;line-height: 38px;cursor: pointer;" data-index="${set_List.length+1}"></i>
- <i class="layui-icon layui-icon-reduce-circle org_delete" style="font-size: 24px;line-height: 38px;cursor: pointer;margin-left:10px;" data-id="${v.id}" data-index="${i}"></i>
- </div>`
- }).join('');
- setTimeout(() => {
- $('.org_vradd').click((e) => {
- let index = parseInt(e.target.dataset.index);
- set_List.push({
- id:'',
- name:'',
- url:''
- });
- set_step_Html(set_List)
- })
- $(".vrChooseElement").click(function() {
- let id = $(this).prop("dataset").id;
- let idx = parseInt($(this).prop("dataset").index||0);
- let vrStr = $(`#vrShowElement${id}`).val();
- let vrSid = "";
- if (vrStr && ((vrStr.indexOf("saastest.zhuangqixiaoguan.com") > -1)||(vrStr.indexOf("h5.zqxg.cc") > -1))) {
- vrSid = vrStr.split("/#/")[1];
- }
- layer.open({
- type: 2,
- title: ['选择VR作品', 'color:#333333;background-color:#D8E6F1;'],
- content: '{:url("building/group")}?id=' + vrSid,
- area: ['80%', '80%'],
- btn: ['确定', '取消'],
- yes: function (index, layero) {
- let data = layero.find('iframe').contents().find("#hiddentext").val();
- if (data) {
- let vrObject = JSON.parse(data);
- $(`#vrShowElement${id}`).val(vrObject.show_url);
- set_List[idx]['url'] = vrObject.show_url;
- }
- layer.close(index);
- //点击确认触发 iframe 内容中的按钮提交
- }
- });
- })
- $('.org_delete').click(function(){
- console.log($(this).prop("dataset"));
- let dataobj = $(this).prop("dataset");
- if(set_List.length<=1){
- layer.msg('VR展厅链接最少要保留1个');
- }else{
- if(dataobj.id){
- $.ajax({
- url: '{:url("org/del_companyvr")}',
- data: {id:dataobj.id},
- type: 'post',
- success: function (res) {
- if (res.code == 0) {
- layer.msg(res.msg)
- let index = parseInt(dataobj.index);
- set_List.splice(index, 1);
- set_step_Html(set_List)
- } else {
- layer.msg(res.msg, {
- anim: 6
- , time: 2000
- });
- }
- }
- });
- }else{
- let index = parseInt(dataobj.index);
- set_List.splice(index, 1);
- set_step_Html(set_List)
- }
- }
-
- })
- $('input').change((e) => {
- let type = e.target.dataset.type;
- let val = e.target.value;
- if (type && type != undefined) {
- let index = parseInt(e.target.dataset.index);
- set_List[index][type] = val;
- }
- })
- },500)
- }
-
- $('input[type="number"]').bind('mousewheel', function(event, delta) {return false;});
- upload.render({
- elem: '#upload-drag',
- accept: 'image',
- exts: 'png|jpg',
- auto: false,
- field: 'logo_file',
- size: 1 * 1024,
- choose: function (obj) {
- obj.preview(function (index, file, result) {
- $('#upload-drag').html('<img src="' + result + '" style="height: 100%;width:100%;">');
- });
- }
- });
- //自定义验证规则
- form.verify({
- mobile: function (value) {
- if (value.length != 11) {
- return '新手机号必须为11位合法数字';
- }
- var reg = /^1(2|3|4|5|6|7|8|9)\d{9}$/;
- if (reg.test(value)) {
- // return '手机号码格式正确';
- } else {
- return '非法手机号';
- }
- }
- });
- form.on('submit(submit)', function (data) {
- //let companyIntroduction = layedit.getContent(textarea);
- let companyIntroduction = ue.getContent();
- if (!companyIntroduction) {
- layer.msg('请填写公司介绍');
- return;
- } else if (!data.field.company_address) {
- layer.msg('请填写地址信息');
- return;
- }
- // } else if (!data.field.vr_address) {
- // layer.msg('请填写VR寻址链接');
- // return;
- // } else if (!data.field.vr_show) {
- // layer.msg('请填写VR展厅链接');
- // return;
- // }
- var formData = new FormData(data.form);
- let vrArray = set_List.filter(item => item.url);
- set_List2 = JSON.stringify(vrArray)
- formData.append('vr_show',set_List2);
-
- formData.set('company_introduction', companyIntroduction);
- $.ajax({
- url: '{:url("org/setting")}',
- type: 'post',
- data: formData,
- dataType: 'json',
- processData: false,
- contentType: false,
- success: function (res) {
- if (res.code === 0) {
- layer.msg(res.msg, {
- anim: 0
- , time: 2000
- });
- } else {
- layer.msg(res.msg, {
- anim: 6
- , time: 2000
- });
- }
- }
- });
- });
- });
- </script>
- {/block}
|