Edit.cshtml 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397
  1. @using MySystem.Models;
  2. @{
  3. MsgAlert editData = ViewBag.data as MsgAlert;
  4. }
  5. @{
  6. string RightInfo = ViewBag.RightInfo as string;
  7. string right = ViewBag.right as string;
  8. }
  9. <!DOCTYPE html>
  10. <html>
  11. <head>
  12. <meta charset="utf-8">
  13. <title>弹窗消息(修改)</title>
  14. <meta name="renderer" content="webkit">
  15. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  16. <meta name="viewport"
  17. content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  18. <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
  19. <script src="/admin/js/jquery-1.10.1.min.js"></script>
  20. <script src="/admin/js/LAreaData2.js"></script>
  21. </head>
  22. <body>
  23. <div class="layui-form" lay-filter="layuiadmin-form-useradmin" id="layuiadmin-form-useradmin">
  24. <input type="hidden" name="Id" value="@editData.Id" />
  25. <div class="layui-card">
  26. <div class="layui-card-body">
  27. <div class="layui-tab" lay-filter="mytabbar">
  28. <ul class="layui-tab-title">
  29. <li class="layui-this" lay-id="1">基本信息</li>
  30. </ul>
  31. <div class="layui-tab-content mt20">
  32. <div class="layui-tab-item layui-show">
  33. <div class="layui-form-item">
  34. <label class="layui-form-label">消息类型</label>
  35. <div class="layui-input-inline">
  36. <select id="MsgType" name="MsgType" lay-search="">
  37. <option value="">请选择</option>
  38. <option value="1">文本</option>
  39. <option value="2">图片</option>
  40. </select>
  41. <script>$("#MsgType").val("@editData.MsgType");</script>
  42. </div>
  43. </div>
  44. <div class="layui-form-item">
  45. <label class="layui-form-label">标题</label>
  46. <div class="layui-input-inline">
  47. <input class="layui-input" type="text" id="Title" name="Title"
  48. value="@editData.Title" maxlength="50" lay-verify="required|" autocomplete="off"
  49. placeholder="请输入标题">
  50. </div>
  51. </div>
  52. <div class="layui-form-item layui-form-text">
  53. <label class="layui-form-label">简介</label>
  54. <div class="layui-input-block">
  55. <textarea class="layui-textarea" id="Summary" name="Summary" maxlength="500"
  56. lay-verify="" placeholder="请输入简介">@editData.Summary</textarea>
  57. </div>
  58. </div>
  59. <div class="layui-form-item layui-form-text">
  60. <label class="layui-form-label">内容</label>
  61. <div class="layui-input-block">
  62. <textarea class="layui-textarea" id="Content" name="Content" placeholder="请输入内容"
  63. style="width:100%;height:500px;">@(MySystem.OssHelper.Instance.CheckOSSPic(editData.Content))</textarea>
  64. </div>
  65. </div>
  66. <div class="layui-form-item">
  67. <label class="layui-form-label">有效开始时间</label>
  68. <div class="layui-input-inline">
  69. <input class="layui-input" type="text" id="EffectStartDate" name="EffectStartDate"
  70. value="@(editData.EffectStartDate == null ? "" : editData.EffectStartDate.Value.ToString("yyyy-MM-dd HH:mm:ss"))"
  71. lay-verify="" autocomplete="off" placeholder="请输入有效开始时间">
  72. </div>
  73. </div>
  74. <div class="layui-form-item">
  75. <label class="layui-form-label">有效结束时间</label>
  76. <div class="layui-input-inline">
  77. <input class="layui-input" type="text" id="EffectEndDate" name="EffectEndDate"
  78. value="@(editData.EffectEndDate == null ? "" : editData.EffectEndDate.Value.ToString("yyyy-MM-dd HH:mm:ss"))"
  79. lay-verify="" autocomplete="off" placeholder="请输入有效结束时间">
  80. </div>
  81. </div>
  82. <div class="layui-form-item">
  83. <label class="layui-form-label">背景图片</label>
  84. <div class="layui-input-block">
  85. <div class="layui-upload">
  86. <input type="hidden" id="BgPic" name="BgPic" value="@editData.BgPic">
  87. <button class="layui-btn" type="button" id="BgPicBtn">选择图片</button>
  88. <div class="layui-inline layui-word-aux">@(new
  89. MySystem.PublicFunction().GetUploadHint("MsgAlertBgPic"))</div>
  90. </div>
  91. <div style="margin-top:10px;" id="BgPicImage">
  92. @if (!string.IsNullOrEmpty(editData.BgPic))
  93. {
  94. <img src="@(MySystem.OssHelper.Instance.SourceHost)@editData.BgPic"
  95. class="layui-upload-img" style="max-width:85px; max-height:85px;"
  96. onclick="showBigPic('@(MySystem.OssHelper.Instance.SourceHost)@editData.BgPic')">
  97. }
  98. </div>
  99. </div>
  100. </div>
  101. <div class="layui-form-item">
  102. <label class="layui-form-label">推送类型</label>
  103. <div class="layui-input-inline">
  104. <select id="PushType" name="PushType" lay-search="">
  105. <option value="">请选择</option>
  106. <option value="0">不推送</option>
  107. <option value="1">立即推送</option>
  108. <option value="2">定时推送</option>
  109. </select>
  110. <script>$("#PushType").val("@editData.PushType");</script>
  111. </div>
  112. </div>
  113. <div class="layui-form-item">
  114. <label class="layui-form-label">推送标记</label>
  115. <div class="layui-input-inline">
  116. <select id="PushFlag" name="PushFlag" lay-search="">
  117. <option value="">请选择</option>
  118. <option value="0">不推送</option>
  119. <option value="1">未推送</option>
  120. <option value="2">已推送</option>
  121. </select>
  122. <script>$("#PushFlag").val("@editData.PushFlag");</script>
  123. </div>
  124. </div>
  125. <div class="layui-form-item">
  126. <label class="layui-form-label">推送参数</label>
  127. <div class="layui-input-inline">
  128. <input class="layui-input" type="text" id="PushParam" name="PushParam"
  129. value="@editData.PushParam" maxlength="255" lay-verify="" autocomplete="off"
  130. placeholder="请输入推送参数">
  131. </div>
  132. </div>
  133. <div class="layui-form-item">
  134. <label class="layui-form-label">推送时间</label>
  135. <div class="layui-input-inline">
  136. <input class="layui-input" type="text" id="PushTime" name="PushTime"
  137. value="@(editData.PushTime == null ? "" : editData.PushTime.Value.ToString("yyyy-MM-dd HH:mm:ss"))"
  138. lay-verify="" autocomplete="off" placeholder="请输入推送时间">
  139. </div>
  140. </div>
  141. <div class="layui-form-item layui-form-text">
  142. <label class="layui-form-label">扩展字段</label>
  143. <div class="layui-input-block">
  144. <textarea class="layui-textarea" id="ExtendColumn" name="ExtendColumn" maxlength=""
  145. lay-verify="" placeholder="请输入扩展字段">@editData.ExtendColumn</textarea>
  146. </div>
  147. </div>
  148. <div class="layui-form-item">
  149. <label class="layui-form-label">跳转Url参数</label>
  150. <div class="layui-input-inline">
  151. <input class="layui-input" type="text" id="UrlParam" name="UrlParam"
  152. value="@editData.UrlParam" maxlength="200" lay-verify="" autocomplete="off"
  153. placeholder="请输入跳转Url参数">
  154. </div>
  155. </div>
  156. <div class="layui-form-item">
  157. <label class="layui-form-label">跳转Url</label>
  158. <div class="layui-input-inline">
  159. <input class="layui-input" type="text" id="Url" name="Url" value="@editData.Url"
  160. maxlength="500" lay-verify="" autocomplete="off" placeholder="请输入跳转Url">
  161. </div>
  162. </div>
  163. <div class="layui-form-item">
  164. <label class="layui-form-label">按钮文字</label>
  165. <div class="layui-input-inline">
  166. <input class="layui-input" type="text" id="BtnText" name="BtnText"
  167. value="@editData.BtnText" maxlength="50" lay-verify="" autocomplete="off"
  168. placeholder="请输入按钮文字">
  169. </div>
  170. </div>
  171. <div class="layui-form-item">
  172. <label class="layui-form-label">每日次数</label>
  173. <div class="layui-input-inline">
  174. <input class="layui-input" type="text" id="TimeByDay" name="TimeByDay"
  175. value="@editData.TimeByDay" maxlength="20" lay-verify="" autocomplete="off"
  176. placeholder="请输入每日次数">
  177. </div>
  178. </div>
  179. <div class="layui-form-item">
  180. <label class="layui-form-label">弹窗标识</label>
  181. <div class="layui-input-inline">
  182. <input type="checkbox" id="AlertFlag" name="AlertFlag" value="1"
  183. @(editData.AlertFlag == 1 ? "checked=checked" : "") lay-skin="switch"
  184. lay-filter="switchTest" title="开关">
  185. </div>
  186. </div>
  187. <div class="layui-form-item">
  188. <label class="layui-form-label">是否周末</label>
  189. <div class="layui-input-inline">
  190. <input type="checkbox" id="IsWeekend" name="IsWeekend" value="1"
  191. @(editData.IsWeekend == 1 ? "checked=checked" : "") lay-skin="switch"
  192. lay-filter="switchTest" title="开关">
  193. </div>
  194. </div>
  195. </div>
  196. </div>
  197. </div>
  198. <div class="layui-form-item layui-hide">
  199. <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit"
  200. value="确认">
  201. </div>
  202. </div>
  203. </div>
  204. </div>
  205. <script src="/layuiadmin/layui/layui.js"></script>
  206. <script src="/other/oss/upload-min@(MySystem.OssHelper.Instance.OssStatus ? "-oss" : "").js"></script>
  207. <script src="/other/mybjq/kindeditor-min.js"></script>
  208. <script src="/other/mybjq/lang/zh_CN.js"></script>
  209. <script>
  210. //内容
  211. @(Html.Raw(Library.Control.kindeditorVar("Content")))
  212. //编辑器
  213. KindEditor.ready(function (K) {
  214. //内容
  215. @(Html.Raw(Library.Control.kindeditor("Content", 1)))
  216. });
  217. var ids = "";
  218. function getChildren(obj) {
  219. $.each(obj, function (index, value) {
  220. var id = obj[index].id;
  221. ids += id + ",";
  222. var children = obj[index].children;
  223. if (children) {
  224. getChildren(children);
  225. }
  226. });
  227. }
  228. function AreasProvinceInit(tagId, areasVal, form) {
  229. for (var i = 0; i < provs_data.length; i++) {
  230. var sel = "";
  231. if (areasVal.indexOf(provs_data[i].text) > -1) {
  232. sel = " selected=selected";
  233. }
  234. $("#" + tagId + "Province").append('<option value="' + provs_data[i].value + '"' + sel + '>' + provs_data[i].text + '</option>');
  235. }
  236. form.render();
  237. }
  238. function AreasProvinceSelected(tagId, areasVal, form, value) {
  239. $("#" + tagId + "City").html('<option value="">市</option>');
  240. var list = citys_data[value];
  241. for (var i = 0; i < list.length; i++) {
  242. var sel = "";
  243. if (areasVal.indexOf(list[i].text) > -1) {
  244. sel = " selected=selected";
  245. }
  246. $("#" + tagId + "City").append('<option value="' + list[i].value + '"' + sel + '>' + list[i].text + '</option>');
  247. }
  248. $("#" + tagId + "Area").html('<option value="">县/区</option>');
  249. form.render();
  250. $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
  251. }
  252. function AreasCitySelected(tagId, areasVal, form, value) {
  253. $("#" + tagId + "Area").html('<option value="">县/区</option>');
  254. var list = dists_data[value];
  255. for (var i = 0; i < list.length; i++) {
  256. var sel = "";
  257. if (areasVal.indexOf(list[i].text) > -1) {
  258. sel = " selected=selected";
  259. }
  260. $("#" + tagId + "Area").append('<option value="' + list[i].value + '"' + sel + '>' + list[i].text + '</option>');
  261. }
  262. form.render();
  263. $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
  264. }
  265. function AreasAreaSelected(tagId, form) {
  266. form.render();
  267. $("#" + tagId + "").val($("#" + tagId + "Province option:selected").text() + "," + $("#" + tagId + "City option:selected").text() + "," + $("#" + tagId + "Area option:selected").text());
  268. }
  269. function movePrev(obj, tagId) {
  270. $(obj).parent().prev().insertAfter($(obj).parent());
  271. checkPics(tagId);
  272. }
  273. function moveNext(obj, tagId) {
  274. $(obj).parent().next().insertBefore($(obj).parent());
  275. checkPics(tagId);
  276. }
  277. function deletePic(obj, tagId) {
  278. $(obj).parent().remove();
  279. checkPics(tagId);
  280. }
  281. function checkPics(tagId) {
  282. var pics = "";
  283. var texts = "";
  284. $("#" + tagId + "Image div img").each(function (i) {
  285. pics += $(this).attr("src").replace(osshost, '') + "|";
  286. });
  287. $("#" + tagId + "Image div input").each(function (i) {
  288. texts += $(this).val() + "|";
  289. });
  290. if (pics == "") {
  291. $("#" + tagId).val("");
  292. } else {
  293. pics = pics.substring(0, pics.length - 1);
  294. texts = texts.substring(0, pics.length - 1);
  295. $("#" + tagId).val(pics + "#cut#" + texts);
  296. }
  297. }
  298. function checkBox(tagId) {
  299. var text = "";
  300. $("input[type=checkbox][name=" + tagId + "List]:checked").each(function (i) {
  301. text += $(this).val() + ",";
  302. });
  303. $("#" + tagId).val(text);
  304. }
  305. function showBigPic(picpath) {
  306. parent.layer.open({
  307. type: 1,
  308. title: false,
  309. closeBtn: 0,
  310. shadeClose: true,
  311. area: ['auto', 'auto'],
  312. content: '<img src="' + picpath + '" style="max-width:800px; max-height:800px;" />'
  313. });
  314. }
  315. var tree;
  316. var element;
  317. var upload;
  318. layui.config({
  319. base: '/layuiadmin/' //静态资源所在路径
  320. }).extend({
  321. index: 'lib/index' //主入口模块
  322. }).use(['index', 'form', 'upload', 'layedit', 'laydate', 'element', 'croppers', 'transfer', 'tree', 'util'], function () {
  323. var $ = layui.$
  324. , form = layui.form
  325. , layer = layui.layer
  326. , layedit = layui.layedit
  327. , laydate = layui.laydate
  328. , croppers = layui.croppers
  329. , transfer = layui.transfer
  330. , util = layui.util;
  331. tree = layui.tree;
  332. element = layui.element;
  333. upload = layui.upload;
  334. //Hash地址的定位
  335. var layid = location.hash.replace(/^#test=/, '');
  336. element.tabChange('test', layid);
  337. element.on('tab(test)', function (elem) {
  338. location.hash = 'test=' + $(this).attr('lay-id');
  339. });
  340. //日期
  341. laydate.render({
  342. elem: '#EffectStartDate',
  343. type: 'datetime',
  344. trigger: 'click'
  345. });
  346. laydate.render({
  347. elem: '#EffectEndDate',
  348. type: 'datetime',
  349. trigger: 'click'
  350. });
  351. laydate.render({
  352. elem: '#PushTime',
  353. type: 'datetime',
  354. trigger: 'click'
  355. });
  356. //上传文件
  357. WebUploadJs('BgPicBtn', '@(Library.ConfigurationManager.AppSettings["Database"].ToString())/upload', @(Html.Raw(new MySystem.PublicFunction().GetUploadParam("MsgAlertBgPic"))), function (filename) {
  358. $('#BgPicImage').html('<img src="' + osshost + filename + '" class="layui-upload-img" style="max-width:85px; max-height:85px;" onclick="showBigPic(\'' + osshost + filename + '\')">')
  359. $('#BgPic').val(filename);
  360. });
  361. //穿梭框
  362. //TreeView,比如权限管理
  363. //省市区
  364. })
  365. </script>
  366. </body>
  367. </html>