Keine Beschreibung

editTheme.html 8.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>专题编辑</title>
  6. <script src="../Script/Common/huayi.load.js"></script>
  7. <script src="../Script/Common/huayi.config.js"></script>
  8. <link rel="stylesheet" href="../js/zTree/zTreeStyle.css" />
  9. <link rel="stylesheet" href="../css/init.css" />
  10. <script src="../js/laydate/laydate.js"></script>
  11. <style>
  12. th {
  13. padding: 5px 8px 5px 0;
  14. text-align: right;
  15. }
  16. input {
  17. background-color: #FFF;
  18. background-image: none;
  19. border: 1px solid #ccc;
  20. border-radius: 1px;
  21. color: inherit;
  22. padding: 6px 12px;
  23. width: 200px;
  24. }
  25. td {
  26. padding: 6px 0 5px 10px;
  27. }
  28. .addts {
  29. background: #1ab394;
  30. color: #fff;
  31. padding: 6px 10px;
  32. outline: none;
  33. font-size: 12px;
  34. margin-left: 15px;
  35. border: 0;
  36. border-radius: 3px;
  37. box-sizing: border-box;
  38. }
  39. .time-box {
  40. display: inline-block;
  41. position: relative;
  42. }
  43. .tub {
  44. position: absolute;
  45. right: 8px;
  46. top: 10px;
  47. font-size: 18px;
  48. color: #00a0ca;
  49. }
  50. #layui-laydate3 .layui-laydate-header {
  51. height: 31px;
  52. padding: 5px;
  53. }
  54. .laydate-theme-molv .layui-laydate-header i,
  55. .laydate-theme-molv .layui-laydate-header span {
  56. top: 2px;
  57. }
  58. .layui-laydate-header {
  59. padding: 0;
  60. }
  61. .laydate-theme-molv .layui-laydate-content {
  62. height: 195px;
  63. overflow: hidden;
  64. }
  65. .laydate-month-list>li {
  66. margin: 10px 0;
  67. }
  68. .laydate-footer-btns span:hover {
  69. color: #00a1cb;
  70. }
  71. .select {
  72. width: 200px;
  73. background-color: #FFF;
  74. background-image: none;
  75. border: 1px solid #ccc;
  76. border-radius: 1px;
  77. height: 36px;
  78. }
  79. </style>
  80. </head>
  81. <body>
  82. <div style="padding: 10px;">
  83. <div style="padding: 10px;" class="clearFix">
  84. <div>
  85. <span>【基础信息】</span>
  86. <div class="box_content">
  87. <table id="sqzx" style="width: 100%;" border="0" cellspacing="0" cellpadding="0">
  88. <!--<tr class="theme">
  89. <th>类型:</th>
  90. <td>
  91. <select class="select" id="types">
  92. <option value="2">月主题</option>
  93. </select>
  94. </td>
  95. </tr>-->
  96. <tr class="theme">
  97. <th>周期:</th>
  98. <td style="position: relative;">
  99. <input type="text" readonly class="layui-input" id="cycle" style="position: absolute;top: 0px;left: 10px;z-index: 2;">
  100. <input type="text" class="layui-input" id="week-picker" placeholder="yyyy-MM-dd" style="position: absolute;left: 10px;top: 0px;">
  101. </td>
  102. </tr>
  103. <tr class="theme">
  104. <th>统计时段:</th>
  105. <td>
  106. <input type="text" id="time" style="margin-top: 5px;" />
  107. </td>
  108. </tr>
  109. <tr>
  110. <th>名称:</th>
  111. <td>
  112. <input type="text" id="name" style="margin-top: 5px;" />
  113. </td>
  114. </tr>
  115. <tr class="theme">
  116. <th>大屏展示:</th>
  117. <td>
  118. <input type="checkbox" id="isdisplay">
  119. </td>
  120. </tr>
  121. </table>
  122. </div>
  123. </div>
  124. <div class="bton" style="text-align: center;">
  125. <input class="addts" type="button" value="保存" />
  126. </div>
  127. </div>
  128. </div>
  129. <script>
  130. var id = helper.request.queryString("id");
  131. var type = helper.request.queryString("type");
  132. var themeid = helper.request.queryString("themeid");
  133. var info = null;
  134. var themeType = helper.request.queryString("themeType");
  135. function getWeekStr(str) {
  136. // 将字符串转为标准时间格式
  137. str2 = Date.parse(str);
  138. let date = new Date(str2);
  139. let month = date.getMonth() + 1;
  140. let week = getWeekFromDate(date);
  141. if(week === 0) { //第0周归于上月的最后一周
  142. month = date.getMonth();
  143. let dateLast = new Date();
  144. let dayLast = new Date(dateLast.getFullYear(), dateLast.getMonth(), 0).getDate();
  145. let timestamp = new Date(new Date().getFullYear(), new Date().getMonth() - 1, dayLast);
  146. week = getWeekFromDate(new Date(timestamp));
  147. }
  148. let time = date.getFullYear() + '年' + (month < 10 ? ('0' + month) : month) + "月第" + week + "周";
  149. return time;
  150. }
  151. function getWeekFromDate(date) {
  152. // 将字符串转为标准时间格式
  153. let w = date.getDay(); //周几
  154. if(w === 0) {
  155. w = 7;
  156. }
  157. let week = Math.ceil((date.getDate() + 6 - w) / 7) - 1;
  158. return week;
  159. }
  160. $(document).ready(function() {
  161. laydate.render({
  162. elem: '#time',
  163. type: 'datetime',
  164. range: true
  165. });
  166. if(type == 1) {
  167. $('.theme').show()
  168. } else {
  169. $('.theme').hide()
  170. }
  171. document.getElementById('cycle').addEventListener('focus', function() {
  172. $('#week-picker').val('');
  173. console.log(themeType, 'themeType')
  174. if(themeType == 1) {
  175. console.log(1, 'themeType')
  176. // 初始化日期选择器
  177. laydate.render({
  178. elem: '#week-picker', // 指定元素
  179. type: 'date', // 设置选择器类型为周
  180. format: 'yyyy-MM-dd', // 自定义格式
  181. show: true,
  182. ready: function(date) {
  183. // 当选择器打开时,可以执行一些操作
  184. console.log('Selected week: ' + date);
  185. },
  186. done: function(value, date, endDate) {
  187. // 当选择器的日期发生变化时,可以执行一些操作
  188. console.log('Changed week: ', value);
  189. $('#cycle').val(getWeekStr(value));
  190. },
  191. closeStop: '#cycle'
  192. });
  193. } else {
  194. // 初始化日期选择器
  195. laydate.render({
  196. elem: '#week-picker', // 指定元素
  197. type: 'month', // 设置选择器类型为周
  198. format: 'yyyy年MM月', // 自定义格式
  199. show: true,
  200. ready: function(date) {
  201. // 当选择器打开时,可以执行一些操作
  202. console.log('Selected week: ' + date);
  203. },
  204. done: function(value, date, endDate) {
  205. // 当选择器的日期发生变化时,可以执行一些操作
  206. console.log('Changed week: ', value);
  207. $('#cycle').val(value);
  208. },
  209. closeStop: '#cycle'
  210. });
  211. }
  212. })
  213. if(id) {
  214. $.getJSON(huayi.config.callcenter_url + 'Theme/GetModel', {
  215. id: id,
  216. "token": $.cookie("token")
  217. }, function(result) {
  218. if(result.state.toLowerCase() == "success") {
  219. var content = result.data;
  220. info = content;
  221. $("#name").val(content.F_Name);
  222. // $("#types").val(content.F_TypesOf);
  223. $("#cycle").val(content.F_Cycle);
  224. $("#time").val(content.F_StatisticsBeginTime + ' - ' + content.F_StatisticsEndTime );
  225. if (content.F_IsDisplay) {
  226. $("#isdisplay").prop("checked",true)
  227. } else {
  228. $("#isdisplay").prop("checked",false)
  229. }
  230. }
  231. })
  232. }
  233. $(".addts").click(function() {
  234. var name = $("#name").val();
  235. var types = themeType; //$("#types").val();
  236. var cycle = $("#cycle").val();
  237. var isdisplay = 0;
  238. if ($('#isdisplay')[0].checked) {
  239. isdisplay = 1;
  240. }
  241. console.log('isdisplay', isdisplay)
  242. // return;
  243. if(!name) {
  244. layer.confirm('请输入名称!', {
  245. btn: ['确定']
  246. });
  247. return;
  248. }
  249. if(type == 1 && (types == 1 && cycle.indexOf('周') < 0) || (types == 2 && cycle.indexOf('周') >= 0)) {
  250. layer.confirm('类型与周期不匹配请重新选择!', {
  251. btn: ['确定']
  252. });
  253. return;
  254. }
  255. var startTime = '';
  256. var endTime = '';
  257. if(type == 1) {
  258. var timeArr = $('#time').val().split(' - ');
  259. if(!timeArr || timeArr.length != 2) {
  260. layer.confirm('请选择统计时段!', {
  261. btn: ['确定']
  262. });
  263. return;
  264. }
  265. startTime = timeArr[0];
  266. endTime = timeArr[1];
  267. }
  268. console.log($('#time').val(), 'time')
  269. var parentid = themeid;
  270. if(type == 2 && !parentid) {
  271. parentid = info.F_ParentId;
  272. }
  273. $.post(huayi.config.callcenter_url + 'Theme/AddModel', {
  274. id,
  275. type,
  276. cycle,
  277. types,
  278. isdisplay,
  279. parentid,
  280. statisticsBeginTime: startTime,
  281. statisticsEndTime: endTime,
  282. name: name,
  283. "token": $.cookie("token")
  284. }, function(result) {
  285. result = $.parseJSON(result);
  286. if(result.state.toLowerCase() == "success") {
  287. layer.msg("操作成功");
  288. var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
  289. parent.layer.close(index); //再执行关闭
  290. // parent.initTable()();
  291. }
  292. })
  293. })
  294. });
  295. </script>
  296. </body>
  297. </html>