push_in.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336
  1. <!DOCTYPE HTML>
  2. <html xmlns:th="http://www.thymeleaf.org"
  3. xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
  4. layout:decorate="~{admin/common/common}">
  5. <head>
  6. <title>企业信息</title>
  7. <style>
  8. * {
  9. padding: 0;
  10. margin: 0;
  11. }
  12. .table {
  13. display: table
  14. }
  15. .td {
  16. display: table-cell;
  17. }
  18. .modalCon {
  19. width: 100%;
  20. height: auto;
  21. }
  22. .modalCon .lft,
  23. .modalCon .cent,
  24. .modalCon .rit {
  25. display: inline-block;
  26. float: left;
  27. border-radius: 8px;
  28. background: #f1f1f1;
  29. }
  30. .modalCon .lft {
  31. width: 45%;
  32. }
  33. .modalCon .cent {
  34. width: 50%;
  35. margin: 0 2%;
  36. }
  37. .modalCon .rit {
  38. width: 30%;
  39. }
  40. .modalCon .lft .tit,
  41. .modalCon .cent .tit,
  42. .modalCon .rit .tit {
  43. font-size: 16px;
  44. color: #fff;
  45. text-align: center;
  46. background: #3a8ee6;
  47. line-height: 2em;
  48. font-weight: normal;
  49. padding: 5px 0;
  50. }
  51. .tableTit {
  52. width: 100%;
  53. }
  54. .tableTit .td {
  55. padding: 5px;
  56. font-size: 14px;
  57. color: #333;
  58. }
  59. .tableCon {
  60. overflow: hidden;
  61. overflow-y: auto;
  62. }
  63. .tableCon .table .td {
  64. border-top: 1px solid #ddd;
  65. }
  66. .cent-box {
  67. height: 570px;
  68. padding: 10px;
  69. }
  70. .cent-box-main {
  71. height: 380px;
  72. overflow: auto;
  73. }
  74. </style>
  75. </head>
  76. <body layout:fragment="content">
  77. <form id="myForm" th:action="@{/policy/add/diagnosticUserGroup}" th:method="get">
  78. <div class="modalCon">
  79. <div class="clearfix" style="padding: 10px;">
  80. <div class="lft">
  81. <h3 class="tit" id="chosenTitle">已选企业(0)家</h3>
  82. <div class="cent-box">
  83. <div class="tool"><span class="btn btn-danger radius remove_from_chosen">删 除</span></div>
  84. <div class="table tableTit">
  85. <div class="td" style="width:50px;"><label for=""><input type="checkbox" id="choose_all"
  86. onclick="checkAll()">
  87. 序号</label></div>
  88. <div class="td">企业名称</div>
  89. </div>
  90. <div class="tableCon cent-box-main" id="chosenCompanyList">
  91. </div>
  92. </div>
  93. </div>
  94. <div class="cent">
  95. <h3 class="tit">企业</h3>
  96. <div class="cent-box">
  97. <div class="page-container clearfix">
  98. <div style="text-align: center;">
  99. <input style="width:200px;" type="text" class="input-text" placeholder="请输入企业名称"
  100. id="companyName" name="companyName" th:value="${companyName}"/>
  101. <input type="button" value="搜索" class="btn btn-primary" onclick="$('#myForm').submit();">
  102. <input hidden id="project_id" name="id" th:value="${id}">
  103. </div>
  104. <div class="cl pd-5 bg-1 bk-gray mt-20">
  105. <span class="l">
  106. <a class="btn btn-primary radius add_to_chosen"><i class="Hui-iconfont">&#xe600;</i> 添加到已选企业</a>
  107. </span>
  108. <span class="r">共有数据:<strong th:text="${pageInfo.total}" id="total">0</strong> 条</span>
  109. </div>
  110. <!-- 表格 -->
  111. <div class="cent-box-main">
  112. <table id="index" class="table table-border table-bordered table-bg table-hover"
  113. style="table-layout: fixed;width:100%;">
  114. <thead>
  115. <tr class="text-c">
  116. <th width="25"><input type="checkbox"></th>
  117. <th style="width:135px;">企业名称</th>
  118. </tr>
  119. </thead>
  120. <tbody>
  121. <tr class="text-c" th:each="model,iterStat:${pageInfo.list}" th:object="${model}">
  122. <td><input type="checkbox" name="checkbox_list" th:value="*{id}"
  123. th:data="*{company_name}">
  124. </td>
  125. <td th:text="*{company_name}" class="text-overflow" th:title="*{company_name}"></td>
  126. </tr>
  127. </tbody>
  128. </table>
  129. </div>
  130. <div th:replace="admin/common/page :: page"></div>
  131. </div>
  132. </div>
  133. </div>
  134. <!--<div class="rit">
  135. <h3 class="tit">已推送企业([[${pushedCompanyListSize}]])家</h3>
  136. <div class="cent-box">
  137. <div class="table tableTit">
  138. <div class="td" style="width:50px;">序号</div>
  139. <div class="td">企业名称</div>
  140. </div>
  141. <div class="tableCon cent-box-main">
  142. <div class="table tableTit" th:each="model,iterStat:${pushedCompanyList}" th:object="${model}">
  143. <div class="td" style="width:50px;" th:text="${iterStat.index+1}"></div>
  144. <div class="td" th:text="*{company_name}"></div>
  145. </div>
  146. </div>
  147. </div>
  148. </div>-->
  149. </div>
  150. <div style="margin-top: 10px; text-align: center;">
  151. <a onclick="save();" class="btn btn-primary radius">确定</a>
  152. <a onclick="removeIframe();" class="btn btn-default radius">取消</a>
  153. </div>
  154. </div>
  155. <input id="id" name="push.id" type="hidden"/>
  156. </form>
  157. <script type="text/javascript" th:src="@{/js/common/page.js}"></script>
  158. <script th:inline="javascript">
  159. var CompanyIds = '', Names = '';
  160. //初始化已选企业列表
  161. var chosen_company_infos = [[${chosen_company_infos}]];
  162. var pushedCompanyList = [[${pushedCompanyList}]];
  163. var hidden_array = JSON.parse(sessionStorage.getItem("hidden_array"));
  164. if (!chosen_company_infos) {
  165. if (hidden_array) {
  166. var array = new Array();
  167. for (var i = 0; i < hidden_array.length; i++) {
  168. var obj = {
  169. id: hidden_array[i].id,
  170. name: hidden_array[i].name
  171. }
  172. array.push(obj);
  173. }
  174. chosen_company_infos = array;
  175. } else if (pushedCompanyList) {
  176. var array = new Array();
  177. for (var i = 0; i < pushedCompanyList.length; i++) {
  178. var obj = {
  179. id: pushedCompanyList[i].id,
  180. name: pushedCompanyList[i].company_name
  181. }
  182. array.push(obj);
  183. }
  184. chosen_company_infos = array;
  185. } else {
  186. chosen_company_infos = new Array();
  187. }
  188. }
  189. $("#id").val(parent.$("#id").val());
  190. //渲染已选择企业列表
  191. render_chosen_list();
  192. //添加到已选择列表方法
  193. $(".add_to_chosen").click(function () {
  194. $("input:checkbox[name='checkbox_list']:checked").each(function (i) {
  195. //去重
  196. var flag = true;
  197. if (chosen_company_infos) {
  198. for (var i = 0; i < chosen_company_infos.length; i++) {
  199. if ($(this).val() == chosen_company_infos[i].id) {
  200. flag = false;
  201. }
  202. }
  203. }
  204. if (flag) {
  205. var obj = {
  206. id: $(this).val(),
  207. name: $(this).attr("data")
  208. };
  209. chosen_company_infos.push(obj);
  210. }
  211. });
  212. if (chosen_company_infos.length <= 0) {
  213. errorMessage("请选择数据!");
  214. return;
  215. }
  216. render_chosen_list();
  217. })
  218. //从已选择列表删除方法
  219. $(".remove_from_chosen").click(function () {
  220. $("input:checkbox[name='checkbox_chosen']:checked").each(function (i) {
  221. if (chosen_company_infos) {
  222. for (var i = 0; i < chosen_company_infos.length; i++) {
  223. if ($(this).val() == chosen_company_infos[i].id) {
  224. chosen_company_infos.splice(i, 1);
  225. }
  226. }
  227. }
  228. });
  229. render_chosen_list();
  230. })
  231. //渲染列表
  232. function render_chosen_list() {
  233. $("#chosenCompanyList").empty();
  234. CompanyIds = '', Names = '';
  235. var str = "";
  236. var array = new Array();
  237. for (var i = 0; i < chosen_company_infos.length; i++) {
  238. str += '<div class="table tableTit">';
  239. str += '<div class="td" style="width:50px;"><label for=""><input type="checkbox" name="checkbox_chosen" value="' + chosen_company_infos[i].id + '"> ' + (i + 1) + '</label></div>';
  240. str += '<input name="chosenCompanyInfos[' + i + '].name" hidden value="' + chosen_company_infos[i].name + '">';
  241. str += '<input name="chosenCompanyInfos[' + i + '].id" hidden value="' + chosen_company_infos[i].id + '">';
  242. str += '<div class="td">' + chosen_company_infos[i].name + '</div>';
  243. str += '</div>';
  244. Names += chosen_company_infos[i].name + ",";
  245. CompanyIds += chosen_company_infos[i].id + ',';
  246. var obj = {
  247. id: chosen_company_infos[i].id,
  248. name: chosen_company_infos[i].name
  249. }
  250. array.push(obj);
  251. sessionStorage.setItem("hidden_array", JSON.stringify(array));
  252. }
  253. $("#chosenCompanyList").append(str);
  254. $("#chosenTitle").text("已选企业(" + chosen_company_infos.length + ")家");
  255. }
  256. //全选、取消全选
  257. function checkAll() {
  258. var all = document.getElementById('choose_all');
  259. //获取到点击全选的那个复选框的id
  260. var one = document.getElementsByName('checkbox_chosen');
  261. //获取到复选框的名称 因为获得的是数组,所以要循环 为每一个checked赋值
  262. for (var i = 0; i < one.length; i++) {
  263. one[i].checked = all.checked;//直接赋值不就行了嘛
  264. }
  265. }
  266. //保存
  267. // function save() {
  268. // parent.$("#pushCompanyIds").val(CompanyIds);
  269. // parent.$("#pushNames").text(Names);
  270. // var index = parent.layer.getFrameIndex(window.name);
  271. // parent.layer.close(index);
  272. // }
  273. function save() {
  274. $.ajax({
  275. type: 'post',
  276. url: pagePath + "/policy/save/diagnosticUserGroup",
  277. dataType: "json",
  278. data: {
  279. companyIds: CompanyIds
  280. },
  281. success: function (data) {
  282. if (data.success) {
  283. succeedMessage(data.message);
  284. setTimeClose();
  285. } else {
  286. // $(form).find(":submit").attr("disabled", false);
  287. errorMessage(data.message);
  288. }
  289. },
  290. error: function () {
  291. errorMessage('系统错误!');
  292. }
  293. });
  294. }
  295. //取消并关闭页面
  296. function removeIframe() {
  297. var index = parent.layer.getFrameIndex(window.name);
  298. parent.layer.close(index);
  299. }
  300. </script>
  301. </body>
  302. </html>