InventoryCheck.cshtml 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. @using System.Text
  2. @using Abp.Timing
  3. @using ShwasherSys.Authorization.Permissions
  4. @using ShwasherSys.BasicInfo
  5. @using ShwasherSys.Models.Layout
  6. @using ShwasherSys.Views.Shared.New.Modals
  7. @using ShwasherSys.Views.Shared.New.Table
  8. @{
  9. ViewBag.Title = "盘点任务执行";
  10. string activeMenu = PermissionNames.PagesInventoryCheckInfoInventoryCheck; //The menu item will be active for this page.
  11. ViewBag.ActiveMenu = activeMenu;
  12. List<SelectListItem> storeHouseList = ViewBag.StoreHouseList;
  13. List<SelectListItem> checkStateList = ViewBag.CheckState;
  14. var searchForm = new SearchFormViewModal(new List<SearchItem>()
  15. {
  16. new SearchItem("checkNo","盘点编号"),
  17. new SearchItem("checkState","盘点状态",FiledType.I,ExpType.Equal).SetSearchItem(checkStateList),
  18. });
  19. var table = new TableViewModel("/api/services/app/InventoryCheck/GetAllToEmployee", activeMenu, searchForm)
  20. .SetFields(new List<FieldItem>()
  21. {
  22. new FieldItem("actionExecute", "",formatter:"ActionExecuteFormatter"),
  23. new FieldItem("checkNo", "盘点编号"),
  24. new FieldItem("storeHouseId", "仓库",formatter:"StoreHouseFormatter"),
  25. new FieldItem("storeAreaCode", "区号"),
  26. new FieldItem("shelfNumber", "货架"),
  27. new FieldItem("shelfLevel", "层次"),
  28. new FieldItem("sequenceNo", "序列号"),
  29. new FieldItem("checkUserName", "待盘点人员"),
  30. new FieldItem("planStartDate", "计划执行时间","DateTimeFormatter"),
  31. new FieldItem("planEndDate", "计划完成时间","PlanEndDateFormatter"),
  32. new FieldItem("checkState", "盘点状态",formatter:"CheckStateFormatter"),
  33. });
  34. }
  35. @section css{
  36. <link href="~/Content/Plugins/bootstrap-datetimepicker/css/bootstrap-datetimepicker.min.css" rel="stylesheet" />
  37. }
  38. @Html.Partial("New/Table/_Table", table)
  39. @section modal{
  40. <!--Main Modal-->
  41. @{
  42. var modal = new ModalViewModel("人员", new ModalBodyViewModel(new List<Input>()
  43. {
  44. new InputHide("id"),
  45. new Input("checkNo", "盘点编号"),
  46. new Input("planStartDate", "计划执行日期",@class:"iwb-date").SetNotRequired(),
  47. new Input("planEndDate", "计划完成日期",@class:"iwb-date").SetNotRequired(),
  48. }));
  49. // var accountModal = new ModalViewModel("绑定账号", new ModalBodyViewModel(new List<Input>()
  50. //{
  51. // new InputHide("id"),
  52. // new Input("userName", "登陆账号",InputTypes.List),
  53. // }), "Account_Modal");
  54. }
  55. @Html.Partial("New/Modals/_Modal", modal)
  56. @*@Html.Partial("New/Modals/_Modal", accountModal)*@
  57. <section>
  58. @Html.Partial("Modals/Query/_Product", "productNo")
  59. @Html.Partial("Modals/Query/_SemiProduct", "productNo")
  60. @Html.Partial("Modals/Query/_Employee", "checkUser")
  61. </section>
  62. }
  63. @section scripts
  64. {
  65. <script type="text/javascript">
  66. var $table=$('#table');
  67. $(function () {
  68. LoadTable();
  69. var funs = window.funs || { none: function () { console.log("No type"); } };
  70. //funs["btnCreate"] = function () { BtnCreate({ data: { id: "" } }); }
  71. });
  72. </script>
  73. <!--格式化-->
  74. <script id="formatter-script" type="text/javascript">
  75. function StoreHouseFormatter(v, r) {
  76. var name = $('#hid-storeHouse option[value="' + r.storeHouseId + '"]').text();
  77. if (name) {
  78. return '<span class="label label-info">' + name + '</span>';
  79. }
  80. return '';
  81. }
  82. function CheckStateFormatter(v) {
  83. var name = $('#hid-checkState option[value="' + v + '"]').text();
  84. switch (v) {
  85. case 1:
  86. return '<span class="label label-info">' + name + '</span>';
  87. case 2:
  88. return '<span class="label label-danger">' + name + '</span>';
  89. default:
  90. return '<span class="label label-info">' + name + '</span>';
  91. }
  92. }
  93. function ActionExecuteFormatter(v,r) {
  94. var str;
  95. if (r.checkState === 1) {
  96. str = '<span class="table-action" onclick="f_start(\'' + r.id + '\',2'+','+r.storeHouseId+')"><i class="iconfont icon-right"></i>开始盘点</span>';
  97. } else {
  98. str = '<span class="table-action">暂无操作</span>';
  99. }
  100. str += '<span class="table-action" onclick="f_showRecord(\'' +
  101. r.id +
  102. '\','+r.storeHouseId+
  103. ')"><i class="iconfont icon-right"></i>盘点详情</span>';
  104. return str;
  105. }
  106. function f_start(id, state,storeHouseId) {
  107. SaveAjax({
  108. url: window.appUrl + "InventoryCheck/ChangeState",
  109. data: {Id:id,CheckState:state},
  110. dataType: "json",
  111. isValidate: false,
  112. isAlert: false,
  113. success: function (res) {
  114. RefreshTable();
  115. f_showRecord(id, storeHouseId);
  116. }
  117. });
  118. }
  119. function f_showRecord(id, storeHouseId) {
  120. //console.log('storeHouseId',storeHouseId)
  121. if (storeHouseId === 1) {
  122. window.open("@Url.Action("InventoryCheckRecord")/" + id, "_blank");
  123. } else {
  124. window.open("@Url.Action("InventoryCheckRecordSemi")/" + id, "_blank");
  125. }
  126. }
  127. function PlanEndDateFormatter(v, r, i, f) {
  128. var value = DateDiffBeforeToAfter(v);
  129. v = DateTimeFormatter(v, r, i, f);
  130. if (value > 0) {
  131. return '<span style="color:red">'+v+'</span>';
  132. }
  133. return '<span class="text-default">'+v+'</span>';
  134. }
  135. </script>
  136. }
  137. <section style="display: none">
  138. <select id="hid-type">
  139. <option value=""></option>
  140. </select>
  141. @*@Html.DropDownList("hid-du", duty)
  142. @Html.DropDownList("hid-de", depart)
  143. @Html.DropDownList("hid-gender", gender)*@
  144. @Html.DropDownList("hid-storeHouse", storeHouseList)
  145. @Html.DropDownList("hid-checkState", checkStateList)
  146. </section>