evidence_add.html 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854
  1. {extend name="public/layout" /} {block name="title"}客户见证添加{/block} {block name="body"}
  2. <!--<link rel="stylesheet" href="__LAYUI__/common.css" media="all">-->
  3. <style type="text/css">
  4. html,
  5. body {
  6. display: block;
  7. width: 100%;
  8. background-color: #fff;
  9. }
  10. .layui-fluid {
  11. display: block;
  12. border-radius: 5px;
  13. background-color: #ffffff;
  14. box-sizing: border-box;
  15. padding: 15px 30px;
  16. }
  17. .layui-icon{font-size:18px !important;line-height: 38px;}
  18. .layui-tab {
  19. padding: 15px;
  20. height: 100%;
  21. }
  22. .layui-table-view .layui-table th,
  23. .layui-table-view .layui-table td {
  24. text-align: center;
  25. border-color: #B6CADE;
  26. }
  27. .layui-table thead tr,
  28. .layui-table-header {
  29. background-color: #D8E6F1;
  30. }
  31. .input-indent-box {
  32. display: inline;
  33. width: 80%;
  34. }
  35. .input-indent-box-small {
  36. display: inline;
  37. width: 20%;
  38. }
  39. .adding {
  40. cursor: pointer;
  41. }
  42. .upload-img .area i {
  43. font-size: 50px;
  44. color: #009688;
  45. }
  46. .evi-block {
  47. float: left;
  48. margin-right: 10px;
  49. }
  50. /*///*/
  51. .imageDiv {
  52. display: block;
  53. width: 140px;
  54. height: 125px;
  55. -webkit-box-sizing: border-box;
  56. -moz-box-sizing: border-box;
  57. box-sizing: border-box;
  58. border: 1px dashed darkgray;
  59. background: #f8f8f8;
  60. position: relative;
  61. overflow: hidden;
  62. float: left;
  63. margin:0 10px 10px 0;
  64. }
  65. .addImages {
  66. display:block;
  67. width: 140px;
  68. height: 125px;
  69. -webkit-box-sizing: border-box;
  70. -moz-box-sizing: border-box;
  71. box-sizing: border-box;
  72. border: 1px dashed darkgray;
  73. background: #f8f8f8;
  74. position: relative;
  75. overflow: hidden;
  76. float:left;
  77. }
  78. .text-detail {
  79. margin-top: 40px;
  80. text-align: center;
  81. }
  82. .text-detail>span {
  83. font-size: 40px;
  84. }
  85. .imageDiv div {
  86. width: 100%;
  87. height: 100%;
  88. position: absolute;
  89. top: 0px;
  90. background-color: #e6e6e600;
  91. }
  92. .imageDiv div i {
  93. display: none;
  94. font-size: 31px;
  95. position: absolute;
  96. top: 37%;
  97. left: 40%;
  98. }
  99. .imageDiv div:hover {
  100. background-color: #e6e6e680;
  101. }
  102. .imageDiv div:hover i {
  103. display: block;
  104. cursor: pointer;
  105. }
  106. .rotate180 {
  107. -webkit-transform: rotate(180deg);
  108. transform: rotate(180deg);
  109. }
  110. .layui-edge.rotate180 {
  111. margin-top: -9px;
  112. }
  113. .layui-input-inline.input-longer-inline {
  114. width: 290px;
  115. }
  116. .goback {
  117. float: right;
  118. }
  119. .goback a {
  120. color: #269efb;
  121. }
  122. .goback i {
  123. position: relative !important;
  124. }
  125. @media screen and (max-width: 450px){
  126. .layui-form-item{
  127. position: relative;
  128. }
  129. .layui-form-item .layui-input-inline {
  130. padding-right: 40px !important;
  131. }
  132. .adding {
  133. position: absolute;
  134. right: 10px;
  135. top: 0;
  136. }
  137. }
  138. input:disabled, input[disabled]{
  139. color: black;
  140. opacity: 1;
  141. -webkit-text-fill-color:black;
  142. -webkit-opacity:1;
  143. }
  144. .layui-btn-primary {
  145. color: #249EFB;
  146. border: 1px solid #249EFB;
  147. }
  148. .layui-btn-primary:hover {
  149. background-color: #E3F7FF;
  150. color: #249EFB;
  151. }
  152. .layui-card-body {
  153. padding: 10px 0;
  154. }
  155. .layui-border-btn,.layui-border-btn:hover {
  156. background-color: #fff;
  157. color: #249EFB;
  158. border: 1px solid #249EFB;
  159. }
  160. #symbshowed video{max-width:100% !important;max-height: 400px !important;margin-top:15px !important;}
  161. .isimgupload{width:190px;height: 152px;}
  162. .imageDivs{position: absolute;top:0;left:0;width:100%;height: 100%;background: rgba(230,230,230,.5);display: none;}
  163. .imageDivs i{display: block;width:18px;height: 18px;position: absolute;top:0;left:0;bottom:0;right: 0;margin:auto;}
  164. .layui-upload-drag{width:100%;height: 90px;}
  165. </style>
  166. <body>
  167. <div class="layui-fluid">
  168. <div class="layui-card">
  169. <!-- <div class="layui-card-header ">
  170. <div class="layui-form-item">
  171. <div class="layui-inline wzh_ays-inline">
  172. <strong>见证添加</strong>
  173. </div>
  174. <div class="goback">
  175. <a href="{:url('material/evidencelisting')}"><i class="layui-icon layui-icon-return"></i>
  176. <span>返回列表</span>
  177. </a>
  178. </div>
  179. </div>
  180. </div> -->
  181. <div class="layui-card-body">
  182. <form class="layui-form" enctype="multipart/form-data" lay-filter="evidence-form">
  183. <div class="layui-form-item">
  184. <label class="layui-form-label"><i style="color:red;">*</i>标题</label>
  185. <div class="layui-input-inline">
  186. <input class="layui-input inputBox" name="title" placeholder="请输入标题" type="text" value="">
  187. </div>
  188. </div>
  189. <div class="layui-form-item">
  190. <label class="layui-form-label"><i style="color:red;">*</i>分类</label>
  191. <div class="layui-input-inline">
  192. <select name="type" lay-filter="type" id="label" lay-verify="required" lay-search>
  193. <option value="">请选择分类</option>
  194. {volist name="cates" id="vo"}
  195. <option value="{$vo.id}">{$vo.name}</option>
  196. {/volist}
  197. </select>
  198. </div>
  199. <i class="layui-icon layui-icon-add-circle adding" style="font-size: 32px" id="cate-add"></i>
  200. </div>
  201. <div class="layui-form-item">
  202. <label class="layui-form-label"><span style="color: red;"></span></label>
  203. <div class="layui-input-inline input-longer-inline">
  204. <input type="radio" name="difference" value="1" title="视频" lay-filter="type"/>
  205. <input type="radio" name="difference" value="2" title="图片" lay-filter="type" checked/>
  206. </div>
  207. </div>
  208. <input id="category_name" type="hidden" value="evidence" />
  209. <div class="layui-form-item video layui-hide">
  210. <div class="layui-form-item">
  211. <label class="layui-form-label">视频封面图</label>
  212. <div class="layui-input-inline isimgupload" style="position: relative;">
  213. <div class="" id="upload-drag">
  214. <div class="layui-upload-drag">
  215. <i class="layui-icon">&#xe681;</i>
  216. <p>上传图片</p>
  217. </div>
  218. </div>
  219. <div class="imageDivs"><i class="layui-icon layui-icon-delete" prop="del"></i></div>
  220. </div>
  221. </div>
  222. <div class="layui-form-item">
  223. <label class="layui-form-label"></label>
  224. <div><i style="color:red;margin-right:5px;">*</i>视频封面比例建议按照全屏比例750X1334,或者宽高比例5:3,图片大小不超过1M</div>
  225. </div>
  226. <div class="layui-form-item">
  227. <label class="layui-form-label">分享封面</label>
  228. <div class="imglistarr" style="margin: 20px 10px 0px;overflow: hidden;display: inline-block;">
  229. <div class="addImages cover_share_img">
  230. <div class="text-detail">
  231. <span>+</span>
  232. <p>上传分享封面</p>
  233. </div>
  234. </div>
  235. </div>
  236. </div>
  237. <div class="layui-form-item img">
  238. <label class="layui-form-label"></label>
  239. <div><i style="color:red;margin-right: 5px;">*</i>建议上传图片宽高比例5:4,图片大小不超过1M</div>
  240. </div>
  241. <label class="layui-form-label"><span style="color: red;">*</span>视频</label>
  242. <div class="layui-input-inline" style="width: 290px;display: block;" id="container">
  243. <a class="layui-btn btn layui-border-btn" id="selectfiles" href="javascript:void(0);">选择视频</a>
  244. <a class="layui-btn btn layui-border-btn" id="postfiles" href="javascript:void(0);">开始上传</a>
  245. <div id="ossfile"></div>
  246. <div id="symbshowed"></div>
  247. <div class="layui-form-mid layui-word-aux" style="color: red!important;margin-left:10px;">注:选择视频并上传,限制100M内</div>
  248. <!--报错信息返回展示-->
  249. <pre id="console"></pre>
  250. <input type="hidden" value="" id="fileuri">
  251. <!--上传到OSS哪个文件下,在这里定义 -->
  252. <input type="hidden" value="dailyWechatArticle" id="wechat_label_name">
  253. </div>
  254. <div class="layui-form-item" style="clear:both;width:100%;">
  255. <label class="layui-form-label"><i style="color:red;">*</i> 视频格式:</label>
  256. <div class="layui-input-block lh45 mdl20" style="max-width: 300px !important;">
  257. <input type="radio" id="1" class="radio_input" lay-filter="video_type"
  258. name="video_type" value="0" title="全屏" checked>
  259. <input type="radio" id="2" class="radio_input" lay-filter="video_type"
  260. name="video_type" value="1" title="横屏">
  261. </div>
  262. </div>
  263. </div>
  264. <div class="layui-form-item img">
  265. <label class="layui-form-label"><span style="color: red;">*</span>配图片</label>
  266. <div class="picDiv imglistarr" style="margin: 20px 10px 0px;overflow: hidden;display: inline-block;">
  267. <div class="addImages" id="evidence_imgs">
  268. <div class="text-detail">
  269. <span>+</span>
  270. <p>选择单、多图</p>
  271. </div>
  272. </div>
  273. </div>
  274. </div>
  275. <div class="layui-form-item img">
  276. <label class="layui-form-label"></label>
  277. <div><i style="color:red;margin-right: 5px;">*</i>建议上传图片宽高比例5:3,图片大小不超过1M</div>
  278. </div>
  279. <div class="layui-form-item img">
  280. <label class="layui-form-label">分享封面</label>
  281. <div class="imglistarr" style="margin: 20px 10px 0px;overflow: hidden;display: inline-block;">
  282. <div class="addImages cover_share_img">
  283. <div class="text-detail">
  284. <span>+</span>
  285. <p>上传分享封面</p>
  286. </div>
  287. </div>
  288. </div>
  289. </div>
  290. <div class="layui-form-item img">
  291. <label class="layui-form-label"></label>
  292. <div><i style="color:red;margin-right: 5px;">*</i>建议上传图片宽高比例5:4,图片大小不超过1M</div>
  293. </div>
  294. <div class="layui-form-item">
  295. <label class="layui-form-label">见证描述</label>
  296. <div class="layui-input-block">
  297. <textarea id="evidence_content" name="desc" placeholder="图片相关描述" autocomplete="off" class="layui-textarea"></textarea>
  298. </div>
  299. </div>
  300. <div class="layui-form-item">
  301. <label class="layui-form-label">继续添加</label>
  302. <div class="layui-input-block">
  303. <input type="checkbox" name="adding" title="" lay-skin="primary" {if condition="$adding eq 1"}checked{/if}>
  304. </div>
  305. </div>
  306. <div class="layui-form-item submit-btn">
  307. <input class="layui-btn layui-btn-primary" style="margin-left:12%;" type="button" lay-submit lay-filter="layuiadmin-evidence-submit" id="layuiadmin-evidence-submit" value="确认提交">
  308. </div>
  309. </form>
  310. </div>
  311. </div>
  312. </div>
  313. </body>
  314. <script type="text/javascript" src="__STATIC__/js/plupload/js/plupload.full.min.js"></script>
  315. <script type="text/javascript" src="__STATIC__/js/plupload/ossupload.js"></script>
  316. <script type="text/javascript" src="__STATIC__/js/Sortable.js"></script>
  317. {/block} {block name="js"}
  318. <!-- 配置文件 -->
  319. <script type="text/javascript" src="__STATIC__/ueditor/dist/utf8-php/ueditor.config.js"></script>
  320. <script>
  321. layui.config({
  322. base: '__LAYUI__/' //静态资源所在路径
  323. ,
  324. urlbase: '/sys'
  325. }).extend({
  326. index: 'lib/index' //主入口模块
  327. }).use(['index', 'table', 'layedit', 'element', 'upload'], function() {
  328. var $ = layui.$,
  329. // layedit = layui.layedit,
  330. element = layui.element,
  331. upload = layui.upload,
  332. form = layui.form;
  333. var objdata={};
  334. var imglist= [];
  335. var imglistid= [];
  336. var files={};
  337. objdata['isnulls'] = 0;
  338. if(localStorage.getItem('khjzdata')){
  339. var bodyjson = JSON.parse(localStorage.getItem('khjzdata'));
  340. if(bodyjson){
  341. $('input[name="title"]').val(bodyjson.title);
  342. if(bodyjson.type){
  343. set_select('#label',bodyjson.type);
  344. }
  345. var index = parseInt(bodyjson.difference)-1;
  346. if(index==0){
  347. $('.video').removeClass('layui-hide');
  348. $('.img').addClass('layui-hide');
  349. }else{
  350. $('.img').removeClass('layui-hide');
  351. $('.video').addClass('layui-hide');
  352. }
  353. $('input[name="difference"]').eq(index).prop('checked',true);
  354. if(!!bodyjson.cover_img){
  355. objdata['cover_img'] = bodyjson.cover_img;
  356. $('#upload-drag').html('<img class="fmimages" src="' + bodyjson.cover_img + '" style="height: 100%;width:100%;">');
  357. }
  358. $('#evidence_content').text(bodyjson.desc)
  359. if(bodyjson.evidence_image != undefined && bodyjson.evidence_image !=[]){
  360. objdata['evidence_image'] = bodyjson.evidence_image;
  361. objdata['files'] = bodyjson.files;
  362. imglist = bodyjson.evidence_image;
  363. objdata['isnulls'] = 1;
  364. $.each(bodyjson.files,function(index,ele){
  365. imglistid.push(index);
  366. })
  367. for(var i=0;i<imglist.length;i++){
  368. $('.picDiv').prepend('<div class="imageDiv" data-id="' + imglistid[i] + '"><img src="' + bodyjson.evidence_image[i] + '" alt="" class="layui-upload-img" width="100%" height="100%"><div><i class="layui-icon layui-icon-delete"></i></div></div>');
  369. }
  370. }
  371. if(bodyjson.video_url){
  372. $('#fileuri').val(bodyjson.video_url);
  373. $('#symbshowed').html('<video controls src="https://o.nczyzs.com/'+bodyjson.video_url+'" name="media"><source src="https://o.nczyzs.com/'+bodyjson.video_url+'" type="video/mp4"></video>');
  374. }
  375. form.render();
  376. }
  377. }
  378. $('#postfiles').click(function(){
  379. var timess=setInterval(function(){
  380. if($('#ossfile').find('.progress-bar').attr('aria-valuenow')==100){
  381. setTimeout(function(){
  382. objdata['video_url']=$('#fileuri').val();
  383. cache();
  384. },1000)
  385. clearInterval(timess);
  386. }
  387. },100)
  388. })
  389. function set_select(id,value){
  390. let obj=$(id);
  391. let names='';
  392. for(var i=0;i<obj.find('option').length;i++){
  393. if(obj.find('option').eq(i).val()==value){
  394. obj.find("option").eq(i).attr("selected",true);
  395. names=obj.find('option').eq(i).html();
  396. }
  397. }
  398. setTimeout(function(){
  399. obj.parent().find(".layui-select-title").find("input").val(names);
  400. },500)
  401. }
  402. $('input,textarea').off('input').on('input',function(obj){
  403. cache();
  404. })
  405. form.on('select(type)', function (data) {
  406. cache();
  407. })
  408. function cache(){
  409. setTimeout(function(){
  410. var formarray=$("form").serializeArray();
  411. for(var i in formarray){
  412. objdata[formarray[i]['name']]=formarray[i]['value']
  413. }
  414. objdata['video_url']=$('#fileuri').val();
  415. var datas=JSON.stringify(objdata);
  416. localStorage.setItem('khjzdata',datas);
  417. setTimeout(function(){
  418. layer.close(loadindex);
  419. },1000)
  420. },500)
  421. }
  422. //视频封面图
  423. upload.render({
  424. elem: '#upload-drag',
  425. url: '{:url("fileupload")}',
  426. accept: 'image',
  427. exts: 'png|jpg|jpeg',
  428. auto: true,
  429. field: 'file',
  430. size: 3 * 1024,
  431. choose: function (obj) {
  432. obj.preview(function (index, file, result) {
  433. $('#upload-drag').html('<img class="fmimages" src="' + result + '" style="height: 100%;width:100%;">');
  434. });
  435. },
  436. done: function (res) {
  437. objdata['cover_img'] = res.data.src;
  438. objdata['evidence_image'] = [];
  439. objdata['files'] = {};
  440. $('.imageDiv').remove();
  441. cache();
  442. }
  443. });
  444. upload.render({
  445. elem: '.cover_share_img',
  446. url: '{:url("fileupload")}',
  447. accept: 'image',
  448. exts: 'png|jpg|jpeg',
  449. auto: true,
  450. field: 'file',
  451. size: 3 * 1024,
  452. choose: function (obj) {
  453. obj.preview(function (index, file, result) {
  454. $('.cover_share_img').html('<img class="fmimages" src="' + result + '" style="height: 100%;width:100%;">');
  455. });
  456. },
  457. done: function (res) {
  458. objdata['cover_share_img'] = res.data.src;
  459. cache();
  460. }
  461. });
  462. $('.isimgupload').hover(function(){
  463. if($("#upload-drag:has(img.fmimages)").length>0){
  464. $('.imageDivs').show();
  465. }
  466. },function(){
  467. $('.imageDivs').hide();
  468. })
  469. $('.imageDivs').on('click', function(e) {
  470. var that = this;
  471. layer.confirm('确定删除该图片么?',{title: ['信息', 'color:#333333;background-color:#D8E6F1;'],}, function(index) {
  472. var imgDiv = $('#upload-drag').find('img');
  473. imgDiv.remove();
  474. objdata['cover_img'] = '';
  475. $('#upload-drag').html('<div class="layui-upload-drag"><i class="layui-icon">&#xe681;</i><p>上传图片</p></div>');
  476. layer.close(index);
  477. cache();
  478. });
  479. });
  480. //客户见证添加
  481. form.on('submit(layuiadmin-evidence-submit)', function(data) {
  482. var formData = new FormData(data.form);
  483. //监听分类,去除图片或视频
  484. var radio = $('input:radio:checked').val();
  485. formData.delete('evidence_image');
  486. if(radio == 1) {
  487. var video_url = $('#fileuri').val();
  488. formData.append('cover',objdata['cover_img']?objdata['cover_img']:'');
  489. formData.append('cover_share_img',objdata['cover_share_img']&&objdata['cover_share_img']!=undefined?objdata['cover_share_img']:'');
  490. formData.append('video_url',video_url);
  491. if (video_url=='') {
  492. layer.msg('请选择视频', {anim: 6,time: 1000,icon: 5});
  493. return false;
  494. }
  495. } else if(radio == 2) {
  496. if (typeof(objdata['files']) == "undefined" || JSON.stringify(objdata['files'])=="{}" || objdata['files'].length==0) {
  497. layer.msg('请至少选择一张图片', {anim: 6,time: 1000,icon: 5});
  498. return false;
  499. }
  500. formData.append('cover_img',objdata['cover_img']);
  501. formData.append('cover_share_img',objdata['cover_share_img']&&objdata['cover_share_img']!=undefined?objdata['cover_share_img']:'');
  502. formData.delete('video_url');
  503. for(i in objdata['evidence_image']) {
  504. formData.append('evidence_image[]', objdata['evidence_image'][i]);
  505. }
  506. }
  507. formData.append('cate', $('#label').val());
  508. // 单击之后提交按钮不可选,防止重复提交
  509. var DISABLED = 'layui-btn-disabled';
  510. var target = '#layuiadmin-evidence-submit';
  511. $(target).addClass(DISABLED);
  512. $(target).attr('disabled', 'disabled');
  513. $.ajax({
  514. url: '{:url("material/apieviadding")}',
  515. type: 'post',
  516. data: formData,
  517. dataType: 'json',
  518. processData: false,
  519. contentType: false,
  520. success: function(res) {
  521. if(res.code === 0) {
  522. objdata={};
  523. localStorage.setItem('khjzdata','');
  524. layer.msg(res.msg, {
  525. anim: 0,time: 1000,icon: 6,
  526. }, function() {
  527. var adding = $("input[name='adding']").is(":checked");
  528. if (adding) {
  529. // window.location.reload();
  530. location.href = "{:url('material/evidence_add')}?adding=1";
  531. } else {
  532. var index = parent.layer.getFrameIndex(window.name);
  533. parent.layer.close(index);
  534. parent.layui.table.reload('evidence-table');
  535. }
  536. });
  537. } else {
  538. layer.msg(res.msg, {anim: 0,time: 1000,icon: 5});
  539. $(target).removeClass(DISABLED);
  540. $(target).removeAttr('disabled');
  541. }
  542. },
  543. error : function(e){
  544. $(target).removeClass(DISABLED);
  545. $(target).removeAttr('disabled');
  546. }
  547. });
  548. return false;
  549. });
  550. /////
  551. $('.layui-tab-content').on('click', function(e) {
  552. if(!$(e.target).hasClass('cate-ele-group')) {
  553. $('#dropdown_cate').hide();
  554. $('#cate_arrow').removeClass('rotate180');
  555. }
  556. if(!$(e.target).hasClass('wechatlabel-ele-group')) {
  557. $('#dropdown_wechatlabel').hide();
  558. $('#wechatlabel_arrow').removeClass('rotate180');
  559. }
  560. });
  561. ///////
  562. $('.select_cate_input').on('click', function() {
  563. $('#dropdown_cate').toggle();
  564. $('#cate_arrow').toggleClass('rotate180');
  565. });
  566. $('.select_wechatlabel_input').on('click', function() {
  567. $('#dropdown_wechatlabel').toggle();
  568. $('#wechatlabel_arrow').toggleClass('rotate180');
  569. });
  570. ////////
  571. $(".cate_option").on('click', function() {
  572. var cate_name = $(this).text();
  573. var cate_id = $(this).data('id');
  574. var select_cate = $("#select_cate");
  575. select_cate.val(cate_name);
  576. select_cate.data('selectedid', cate_id);
  577. select_cate.click();
  578. });
  579. $(".wechatlabel_option").on('click', function() {
  580. var wechatlabel_name = $(this).text();
  581. var wechatlabel_id = $(this).data('id');
  582. var select_wechatlabel = $("#select_wechatlabel");
  583. select_wechatlabel.val(wechatlabel_name);
  584. select_wechatlabel.data('selectedid', wechatlabel_id);
  585. select_wechatlabel.click();
  586. });
  587. ///
  588. $('.topselectbtn').on('click', function() {
  589. var gonnado = $(this).data('ref');
  590. if(gonnado == 'addcate') {
  591. addcate();
  592. $('#select_cate').click();
  593. }
  594. if(gonnado == 'addwechatlabel') {
  595. addwechatlabel();
  596. $('#select_wechatlabel').click();
  597. }
  598. });
  599. ////
  600. /////////
  601. $('#cate-add').on('click', function() {
  602. addcate();
  603. });
  604. var addcate = function() {
  605. layer.prompt({
  606. title: ['分类添加', 'color:#333333;background-color:#D8E6F1;'],
  607. }, function(value, index, elem) {
  608. var value = $.trim(value);
  609. if(value == '') {
  610. layer.msg('请输入分类名称', {anim: 6});
  611. return false;
  612. }
  613. if(value.length > 6) {
  614. layer.msg('分类名称超长', {anim: 6});
  615. return false;
  616. }
  617. $.post('{:url("material/apievidencecateadding")}', {
  618. 'cate-name': value
  619. }, function(res) {
  620. if(res.code == 0) {
  621. $('#label').append("<option selected value='"+res.data.id+"'>"+res.data.name+"</option>");
  622. form.render('select');
  623. layer.msg(res.msg, {
  624. anim: 0
  625. }, function() {
  626. layer.close(index); //再执行关闭
  627. });
  628. } else {
  629. layer.msg(res.msg, {
  630. anim: 6
  631. });
  632. }
  633. });
  634. });
  635. }
  636. //发圈分类添加
  637. $('#wechat-label-add').on('click', function() {
  638. addwechatlabel();
  639. });
  640. var addwechatlabel = function() {
  641. layer.prompt({
  642. title: ['发圈分类添加', 'color:#333333;background-color:#D8E6F1;']
  643. }, function(value, index, elem) {
  644. var value = $.trim(value);
  645. if(value == '') {
  646. layer.msg('请输入分类名称', {
  647. anim: 6,time: 400
  648. });
  649. return false;
  650. }
  651. if(value.length > 6) {
  652. layer.msg('分类名称超长', {
  653. anim: 6,time: 400
  654. });
  655. return false;
  656. }
  657. $.post('{:url("material/add_wechat_label")}', {
  658. value: value
  659. }, function(res) {
  660. if(res.code == 0) {
  661. var dd_ele = document.createElement("dd");
  662. dd_ele.classList.add('wechatlabel_option');
  663. dd_ele.classList.add('wechatlabel-ele-group');
  664. dd_ele.setAttribute('data-id', res.data.id);
  665. dd_ele.innerHTML = ' ' + res.data.name;
  666. dd_ele.addEventListener('click', function() {
  667. var wechatlabel_name = $(this).text();
  668. var wechatlabel_id = $(this).data('id');
  669. var select_wechatlabel = $("#select_wechatlabel");
  670. select_wechatlabel.val(wechatlabel_name);
  671. select_wechatlabel.data('selectedid', wechatlabel_id);
  672. select_wechatlabel.click();
  673. });
  674. var targetEle = document.getElementById('dropdown_wechatlabel');
  675. targetEle.appendChild(dd_ele);
  676. var select_wechatlabel = $("#select_wechatlabel");
  677. select_wechatlabel.val(res.data.name);
  678. select_wechatlabel.attr('data-selectedid', res.data.id);
  679. layer.close(index);
  680. } else {
  681. layer.msg(res.msg, {
  682. anim: 6,time: 400
  683. });
  684. }
  685. });
  686. });
  687. }
  688. $('.upload-img-btn').on('click', function() {
  689. layer.open({
  690. type: 2,
  691. title: ['图文添加', 'color:#333333;background-color:#D8E6F1;'],
  692. content: '{:url("material/evidenceadd")}',
  693. resize: false,
  694. area: ['80%', '80%']
  695. });
  696. });
  697. var loadindex;
  698. upload.render({
  699. elem: '#evidence_imgs',
  700. accept: 'images',
  701. url: '{:url("fileupload")}',
  702. exts: 'jpg|png|bmp|jpeg|JPG|PNG|BMP|JPEG',
  703. field: 'file',
  704. size: 5 * 1024,
  705. auto: true,
  706. multiple: true,
  707. choose: function (obj) {
  708. files = obj.pushFile();
  709. objdata['files'] = files;
  710. length = $('.imageDiv').length;
  711. if(objdata['isnulls'] == 0){
  712. imglist = [];
  713. }
  714. obj.preview(function (index, file, result) {
  715. length++;
  716. if (length > 9) {
  717. if(length == 10) {
  718. loadindex = layer.msg('限制九张图片以下..', {
  719. icon: 16
  720. ,shade: 0.3
  721. ,time: false
  722. });
  723. }
  724. delete files[index];
  725. } else {
  726. loadindex = layer.msg('加载中..', {
  727. icon: 16
  728. ,shade: 0.3
  729. ,time: false
  730. });
  731. $('.picDiv').prepend('<div class="imageDiv" data-id="' + index + '"><img src="' + result + '" alt="' + file.name + '" class="layui-upload-img" width="100%" height="100%"><div><i class="layui-icon layui-icon-delete"></i></div></div>');
  732. }
  733. });
  734. },
  735. done:function(res){
  736. if(res.code==0){
  737. if(imglist.length < 9){
  738. imglist.push(res.data.src);
  739. objdata['evidence_image'] = imglist;
  740. objdata['cover_img'] = '';
  741. $('#upload-drag').html('<div class="layui-upload-drag"><i class="layui-icon">&#xe681;</i><p>上传图片</p></div>');
  742. setTimeout(function(){
  743. cache();
  744. },500)
  745. }
  746. }
  747. }
  748. });
  749. form.on('radio(type)', function(data) {
  750. if(data.value == 1) {
  751. $('.video').removeClass('layui-hide');
  752. $('.img').addClass('layui-hide');
  753. } else if(data.value == 2) {
  754. $('.img').removeClass('layui-hide');
  755. $('.video').addClass('layui-hide');
  756. } else {
  757. $('.video').addClass('layui-hide');
  758. $('.img').addClass('layui-hide');
  759. }
  760. cache();
  761. });
  762. $('.picDiv').on('click', 'i', function() {
  763. var that = this;
  764. layer.confirm('确定删除该图片么?',{title: ['信息', 'color:#333333;background-color:#D8E6F1;'],}, function(index) {
  765. var imgDiv = $(that).closest('.imageDiv');
  766. var indexs = (imglist.length-1)-parseInt(imgDiv.index());
  767. if(id = imgDiv.data('id')) {
  768. delete files[id];
  769. delete objdata['files'][id];
  770. }
  771. imglist.splice(indexs,1);
  772. objdata['evidence_image']=imglist;
  773. if(imglist.length==0){
  774. objdata['isnulls'] = 0;
  775. }
  776. imgDiv.remove();
  777. cache();
  778. layer.close(index);
  779. });
  780. });
  781. });
  782. </script>
  783. {/block}