You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

386 lines
16 KiB

3 weeks ago
  1. @{
  2. ViewBag.Title = "Index";
  3. Layout = "~/Views/Shared/_Index.cshtml";
  4. }
  5. <script src="~/Content/js/CommonReport/CommonReport.js"></script>
  6. <script src="~/Content/js/datepicker/WdatePicker.js"></script>
  7. <script>
  8. debugger;
  9. var _Closs = new Array();
  10. // 创建一个新的 Date 对象,表示当前日期和时间
  11. var currentDate = new Date();
  12. // 获取当前月份(注意:月份是从0开始计数的)
  13. var currentMonth = currentDate.getMonth() + 1; // 加1以符合人类习惯
  14. var currentyear = currentDate.getFullYear();
  15. $(function () {
  16. $("#txt_DateNow").val(currentyear + "-" + currentMonth)
  17. SetCols();
  18. gridList();
  19. //$("#btn_search").click(function () {
  20. // var queryJson = {
  21. // DateNow: $("#txt_DateNow").val(),
  22. // }
  23. // $gridList.jqGrid('setGridParam', {
  24. // postData: { queryJson: JSON.stringify(queryJson) },
  25. // }).trigger('reloadGrid');
  26. //});
  27. $("#btn_search").click(function () {
  28. ;
  29. currentDate = new Date($("#txt_DateNow").val());
  30. currentMonth = currentDate.getMonth() + 1; // 加1以符合人类习惯
  31. currentyear = currentDate.getFullYear();
  32. //var queryJson = {
  33. // DateNow: $("#txt_DateNow").val(),
  34. //}
  35. //$gridList.jqGrid('setGridParam', {
  36. // postData: { queryJson: JSON.stringify(queryJson) },
  37. //}).trigger('reloadGrid');
  38. SetCols();
  39. gridList();
  40. });
  41. })
  42. //初始化所有grid
  43. function SetCols() {
  44. var cols = new Array();
  45. var collast = {
  46. label: "对外改善生成日期", name: "CHUJIANSHIJIAN", width: 100, align: "center", sortable: false, frozen: true,
  47. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  48. //合并单元格
  49. return 'id=\'CHUJIANSHIJIAN' + rowId + "\'";
  50. }
  51. };
  52. cols.push(collast);
  53. var collast = {
  54. label: "入料日期", name: "MTIME", width: 120, align: "center", sortable: false, frozen: true,
  55. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  56. //合并单元格
  57. return 'id=\'MTIME' + rowId + "\'";
  58. }
  59. };
  60. cols.push(collast);
  61. var collast = {
  62. label: "月别", name: "YB", width: 100, align: "center", sortable: false, frozen: true,
  63. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  64. //合并单元格
  65. return 'id=\'YB' + rowId + "\'";
  66. }
  67. };
  68. cols.push(collast);
  69. var collast = {
  70. label: "料号", name: "InvCode", width: 120, align: "center", sortable: false, frozen: true,
  71. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  72. //合并单元格
  73. return 'id=\'InvCode' + rowId + "\'";
  74. }
  75. };
  76. cols.push(collast);//下面这句代码是加入图片的关键,
  77. var collast = {
  78. label: "厂商", name: "VenName", width: 100, align: "center", sortable: false, frozen: true,
  79. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  80. //合并单元格
  81. return 'id=\'VenName' + rowId + "\'";
  82. }
  83. };
  84. cols.push(collast);
  85. var collast = {
  86. label: '物料名称', name: 'InvName', width: 90, align: "center", sortable: false, frozen: true,
  87. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  88. //合并单元格
  89. return 'id=\'InvName' + rowId + "\'";
  90. }
  91. };
  92. cols.push(collast);
  93. var collast = {
  94. label: '不良内容详细', name: 'BLMX', width: 90, align: "center", sortable: false, frozen: true,
  95. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  96. //合并单元格
  97. return 'id=\'BLMX' + rowId + "\'";
  98. }
  99. };
  100. cols.push(collast);
  101. var collast = {
  102. label: '判定结果', name: 'Result', width: 90, align: "center", sortable: false,
  103. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  104. //合并单元格
  105. return 'id=\'Result' + rowId + "\'";
  106. }
  107. };
  108. cols.push(collast);
  109. var collast = {
  110. label: '不良分类', name: 'BadDesc', width: 90, align: "center", sortable: false,
  111. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  112. //合并单元格
  113. return 'id=\'BadDesc' + rowId + "\'";
  114. }
  115. };
  116. cols.push(collast);
  117. var collast = {
  118. label: '备注', name: 'SQEEngineerRemark', width: 90, align: "center", sortable: false,
  119. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  120. //合并单元格
  121. return 'id=\'SQEEngineerRemark' + rowId + "\'";
  122. }
  123. };
  124. cols.push(collast);
  125. var collast = {
  126. label: "物料类别", name: "ClassName", width: 120, align: "center", sortable: false, frozen: true,
  127. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  128. //合并单元格
  129. return 'id=\'ClassName' + rowId + "\'";
  130. }
  131. };
  132. cols.push(collast);
  133. var collast = {
  134. label: "当月第几周", name: "ZB", width: 120, align: "center", sortable: false, frozen: true,
  135. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  136. //合并单元格
  137. return 'id=\'ZB' + rowId + "\'";
  138. }
  139. };
  140. cols.push(collast);
  141. var collast = {
  142. label: '1月', name: '1月', width: 90, align: "center", sortable: false, frozen: true,
  143. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  144. //合并单元格
  145. return 'id=\'Annualcumulative' + rowId + "\'";
  146. }
  147. };
  148. cols.push(collast);
  149. var collast = {
  150. label: '2月', name: '2月', width: 90, align: "center", sortable: false, frozen: true,
  151. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  152. //合并单元格
  153. return 'id=\'Annualcumulative' + rowId + "\'";
  154. }
  155. };
  156. cols.push(collast);
  157. var collast = {
  158. label: '3月', name: '3月', width: 90, align: "center", sortable: false, frozen: true,
  159. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  160. //合并单元格
  161. return 'id=\'Annualcumulative' + rowId + "\'";
  162. }
  163. };
  164. cols.push(collast);
  165. var collast = {
  166. label: '4月', name: '4月', width: 90, align: "center", sortable: false, frozen: true,
  167. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  168. //合并单元格
  169. return 'id=\'Annualcumulative' + rowId + "\'";
  170. }
  171. };
  172. cols.push(collast);
  173. var collast = {
  174. label: '5月', name: '5月', width: 90, align: "center", sortable: false, frozen: true,
  175. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  176. //合并单元格
  177. return 'id=\'Annualcumulative' + rowId + "\'";
  178. }
  179. };
  180. cols.push(collast);
  181. var collast = {
  182. label: '6月', name: '6月', width: 90, align: "center", sortable: false, frozen: true,
  183. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  184. //合并单元格
  185. return 'id=\'Annualcumulative' + rowId + "\'";
  186. }
  187. };
  188. cols.push(collast);
  189. var collast = {
  190. label: '7月', name: '7月', width: 90, align: "center", sortable: false, frozen: true,
  191. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  192. //合并单元格
  193. return 'id=\'Annualcumulative' + rowId + "\'";
  194. }
  195. };
  196. cols.push(collast);
  197. var collast = {
  198. label: '8月', name: '8月', width: 90, align: "center", sortable: false, frozen: true,
  199. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  200. //合并单元格
  201. return 'id=\'Annualcumulative' + rowId + "\'";
  202. }
  203. };
  204. cols.push(collast);
  205. var collast = {
  206. label: '9月', name: '9月', width: 90, align: "center", sortable: false, frozen: true,
  207. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  208. //合并单元格
  209. return 'id=\'Annualcumulative' + rowId + "\'";
  210. }
  211. };
  212. cols.push(collast);
  213. var collast = {
  214. label: '10月', name: '10月', width: 90, align: "center", sortable: false, frozen: true,
  215. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  216. //合并单元格
  217. return 'id=\'Annualcumulative' + rowId + "\'";
  218. }
  219. };
  220. cols.push(collast);
  221. var collast = {
  222. label: '11月', name: '11月', width: 90, align: "center", sortable: false, frozen: true,
  223. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  224. //合并单元格
  225. return 'id=\'Annualcumulative' + rowId + "\'";
  226. }
  227. };
  228. cols.push(collast);
  229. var collast = {
  230. label: '12月', name: '12月', width: 90, align: "center", sortable: false, frozen: true,
  231. cellattr: function (rowId, tv, rawObject, cm, rdata) {
  232. //合并单元格
  233. return 'id=\'Annualcumulative' + rowId + "\'";
  234. }
  235. };
  236. cols.push(collast);
  237. _Closs = cols;
  238. }
  239. function gridList() {
  240. debugger;
  241. document.getElementById("gridPanel").innerHTML = '<table id="gridList"></table><div id="gridPager"></div> ';//重置grid
  242. var $gridList = $("#gridList");
  243. var queryJson = {
  244. DateNow: $("#txt_DateNow").val(),
  245. }
  246. // 初始化表格
  247. $gridList.dataGrid({
  248. url: "/KBSWMS/ICSInspectionReports/GetPassFirstTime4" + "?" + Math.random(),
  249. postData: { queryJson: JSON.stringify(queryJson) },
  250. height: $(window).height() - 128,
  251. width: $(window).width() - 128,
  252. colModel: _Closs,
  253. rownumbers: true,
  254. footerrow: true,//启用底部行(对列汇总时要启用)第一步
  255. gridComplete: function () {
  256. //var gridName = "gridList";
  257. //Merger(gridName, 'BRGDesc');
  258. //Merger(gridName, 'ZBCount');
  259. //var Z1_total = $(this).getCol('周1', false, 'sum');
  260. //var Z2_total = $(this).getCol('周2', false, 'sum');
  261. //var Z3_total = $(this).getCol('周3', false, 'sum');
  262. //var Z4_total = $(this).getCol('周4', false, 'sum');
  263. //var Z5_total = $(this).getCol('周5', false, 'sum');
  264. //var Y1_total = $(this).getCol('月1', false, 'sum');
  265. //var Y2_total = $(this).getCol('月2', false, 'sum');
  266. //var Y3_total = $(this).getCol('月3', false, 'sum');
  267. //var Y4_total = $(this).getCol('月4', false, 'sum');
  268. //var Y5_total = $(this).getCol('月5', false, 'sum');
  269. //var Y6_total = $(this).getCol('月6', false, 'sum');
  270. //var Y7_total = $(this).getCol('月7', false, 'sum');
  271. //var Y8_total = $(this).getCol('月8', false, 'sum');
  272. //var Y9_total = $(this).getCol('月9', false, 'sum');
  273. //var Y10_total = $(this).getCol('月10', false, 'sum');
  274. //var Y11_total = $(this).getCol('月11', false, 'sum');
  275. //var Y12_total = $(this).getCol('月12', false, 'sum');
  276. //$(this).footerData('set', {
  277. // "周1": Z1_total,//声明需要汇总的列并写自定义函数endMoney_total
  278. // "周2": Z2_total,//声明需要汇总的列并写自定义函数endMoney_total
  279. // "周3": Z3_total,//声明需要汇总的列并写自定义函数endMoney_total
  280. // "周4": Z4_total,//声明需要汇总的列并写自定义函数endMoney_total
  281. // "周5": Z5_total,//声明需要汇总的列并写自定义函数endMoney_total
  282. // "月1": Y1_total,//声明需要汇总的列并写自定义函数endMoney_total
  283. // "月2": Y2_total,//声明需要汇总的列并写自定义函数endMoney_total
  284. // "月3": Y3_total,//声明需要汇总的列并写自定义函数endMoney_total
  285. // "月4": Y4_total,//声明需要汇总的列并写自定义函数endMoney_total
  286. // "月5": Y5_total,//声明需要汇总的列并写自定义函数endMoney_total
  287. // "月6": Y6_total,//声明需要汇总的列并写自定义函数endMoney_total
  288. // "月7": Y7_total,//声明需要汇总的列并写自定义函数endMoney_total
  289. // "月8": Y8_total,//声明需要汇总的列并写自定义函数endMoney_total
  290. // "月9": Y9_total,//声明需要汇总的列并写自定义函数endMoney_total
  291. // "月10": Y10_total,//声明需要汇总的列并写自定义函数endMoney_total
  292. // "月11": Y11_total,//声明需要汇总的列并写自定义函数endMoney_total
  293. // "月12": Y12_total,//声明需要汇总的列并写自定义函数endMoney_total
  294. //});
  295. //$(this).footerData('set', { "BadReasonDesc": "合计:" });
  296. },
  297. pager: "#gridPager",
  298. rowNum: 500,
  299. });
  300. // 搜索按钮点击事件
  301. }
  302. function Merger(gridName, CellName) {
  303. debugger;
  304. //得到显示到界面的id集合
  305. var mya = $("#" + gridName + "").getDataIDs();
  306. //当前显示多少条
  307. var length = mya.length;
  308. for (var i = 0; i < length; i++) {
  309. //从上到下获取一条信息
  310. var before = $("#" + gridName + "").jqGrid('getRowData', mya[i]);
  311. //定义合并行数
  312. var rowSpanTaxCount = 1;
  313. for (j = i + 1; j <= length; j++) {
  314. //和上边的信息对比 如果值一样就合并行数+1 然后设置rowspan 让当前单元格隐藏
  315. var end = $("#" + gridName + "").jqGrid('getRowData', mya[j]);
  316. if (before[CellName] == end[CellName]) {
  317. rowSpanTaxCount++;
  318. $("#" + gridName + "").setCell(mya[j], CellName, '', { display: 'none' });
  319. } else {
  320. rowSpanTaxCount = 1;
  321. break;
  322. }
  323. $("#" + CellName + "" + mya[i] + "").attr("rowspan", rowSpanTaxCount);
  324. }
  325. }
  326. }
  327. function btn_Export() {
  328. var data = "&DateNow=" + $("#txt_DateNow").val()
  329. $.download("/KBSWMS/ICSInspectionReports/ExportAll4?" + Math.random(), data, 'post');
  330. }
  331. </script>
  332. <iframe id="ifrm" src="" width="0" height="0"></iframe>
  333. <div class="topPanel" style="height:50px">
  334. <div class="toolbar">
  335. <div class="btn-group">
  336. <a class="btn btn-primary" id="btn_search"><span class="glyphicon glyphicon-refresh"></span></a>
  337. <a id="NF-Export" authorize="yes" class="btn btn-primary" onclick="btn_Export()"><i class="fa fa-download"></i>当前页导出</a>
  338. </div>
  339. </div>
  340. <div class="search">
  341. <table>
  342. <tr>
  343. <th class="formTitle">
  344. <span style="color: red;">*</span>日期:
  345. </th>
  346. <td class="formValue">
  347. <input type="text" name="txt_DateNow" id="txt_DateNow" class="form-control" style="width: 100px;height:13px" maxlength="10" onclick="WdatePicker({ dateFmt: 'yyyy-MM' })" placeholder="日期" />
  348. </td>
  349. </tr>
  350. </table>
  351. </div>
  352. </div>
  353. <div class="gridPanel" id="gridPanel">
  354. <table id="gridList"></table>
  355. <div id="gridPager"></div>
  356. </div>