MarketMajorQuoteList.cshtml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282
  1. @using Newtonsoft.Json
  2. @{
  3. Layout = null;
  4. }
  5. <!DOCTYPE html>
  6. <html>
  7. <head>
  8. <meta name="viewport" content="width=device-width" />
  9. <title>MarketMajorQuoteList</title>
  10. <link href="~/easyui/themes/default/easyui.css" rel="stylesheet" />
  11. <link rel="stylesheet" type="text/css" href="~/easyui/themes/icon.css" />
  12. <link href="~/Content/css/bootstrap.min.css" rel="stylesheet" />
  13. <link href="~/Content/js/plugins/layer/skin/layer.css" rel="stylesheet" />
  14. <link href="~/Content/plugins/select2/css/select2.min.css" rel="stylesheet" />
  15. <script src="~/Content/js/jquery.min.js"></script>
  16. <script src="~/Content/js/bootstrap.min.js"></script>
  17. <script src="~/easyui/jquery.easyui.min.js"></script>
  18. <script src="~/easyui/jquery.easyui.mobile.js"></script>
  19. <script src="~/easyui/locale/easyui-lang-zh_CN.js"></script>
  20. <script src="~/Content/js/plugins/layer/laydate/laydate.js"></script>
  21. <script src="~/Content/js/plugins/layer/layer.min.js"></script>
  22. <script src="~/js/Utils.js"></script>
  23. <link href="~/Content/css/Style/Markets.css" rel="stylesheet" />
  24. <script src="~/Content/plugins/select2/js/select2.min.js"></script>
  25. <script src="~/Content/js/js/MarketJs.js"></script>
  26. <style>
  27. .select2-dropdown {
  28. z-index: 90003!important
  29. }
  30. </style>
  31. </head>
  32. <body >
  33. <section class="hidden">
  34. <input id="hid_Type" name="hid_Type" type="hidden" value="0" />
  35. </section>
  36. <section style="height:95vh; padding: 10px 20px;">
  37. <div class="row tbToolBar" id="tbToolBar">
  38. <div class="toolbar" id="CurdTool">
  39. <a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="btn_Add()">添加</a>
  40. <span class="shuxian"></span>
  41. <a href="#" class="easyui-linkbutton" iconCls="icon-edit" plain="true" onclick="btn_Edit()">修改</a>
  42. <span class="shuxian"></span>
  43. <a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="btn_Del()">删除</a>
  44. </div>
  45. <div class="toolbar-search">
  46. <span>【请选择查询条件】</span>
  47. <input class="easyui-searchbox" data-options="prompt:'请输入查询条件...',menu:'#search',searcher:LoadTable" style="width: 300px; height: 25px;"/>
  48. <div id="search">
  49. <div data-options="name:'MajorGoodsName'">商品名称</div>
  50. </div>
  51. </div>
  52. </div>
  53. <table id="dgTable" class="easyui-datagrid" style="height: 100%;"
  54. data-options="singleSelect: true,
  55. method: 'post',
  56. multiSort: false,
  57. toolbar: '#tbToolBar',
  58. fitColumns: true,
  59. @*rownumbers: true,*@
  60. remoteSort: false,
  61. @*loadFilter: pagerFilter,*@
  62. onDblClickRow: function () {
  63. btn_Edit();
  64. },
  65. pagination: true,
  66. pageSize: 50,
  67. pageList: [20, 50, 100]
  68. ">
  69. <thead>
  70. <tr>
  71. <th data-options="field:'MajorGoodsName',width:150">商品名称</th>
  72. <th data-options="field:'QuoteDate',width:150">日期</th>
  73. <th data-options="field:'Amount',width:80">数量</th>
  74. <th data-options="field:'UnitID',width:50">单位</th>
  75. <th data-options="field:'QuoteHigh',width:80">最高价</th>
  76. <th data-options="field:'QuoteLow',width:80">最低价</th>
  77. <th data-options="field:'QuoteAverage',width:80">平均价</th>
  78. </tr>
  79. </thead>
  80. </table>
  81. </section>
  82. <section>
  83. <div id="winModal" class="easyui-window winModal" title="商品价格维护" style="width: 450px;padding:10px;"
  84. iconCls="icon-save" data-options="modal:true,closed:true">
  85. <div class="easyui-layout" data-options="fit:true" style="height:99%">
  86. <div data-options="region:'center'" style="padding:15px 25px 0;" >
  87. <form id="form">
  88. @Html.Hidden("MarketMajorQuoteID")
  89. <div class="panle-fluid">
  90. <div class="input-group">
  91. <label class="input-group-addon control-label" for="MarketId">所属市场</label>
  92. <select class="form-control input-group-addon" aria-disabled="true" name="MarketId" id="MarketId" type="text" value="" placeholder="选择所属市场">
  93. @Html.Raw(ViewBag.SelMarketInfo)
  94. </select>
  95. </div>
  96. <div class="input-group">
  97. <label class="input-group-addon control-label" for="MajorGoodsName">商品名称</label>
  98. <select class="form-control input-group-addon" aria-disabled="true" name="MajorGoodsName" id="MajorGoodsName" type="text" value="" placeholder="选择商品名称" style="width: 100%">
  99. @Html.Raw(ViewBag.SelMajorGoodsNameInfo)
  100. </select>
  101. </div>
  102. <div class="input-group">
  103. <label class="input-group-addon control-label" for="QuoteDate">日期</label>
  104. <input class="form-control input-group-addon laydate-icon" aria-disabled="true" name="QuoteDate" id="QuoteDate" type="text" value="" placeholder="" />
  105. </div>
  106. <div class="input-group">
  107. <label class="input-group-addon control-label" for="Amount">数量</label>
  108. <input class="form-control input-group-addon " style="width:calc(100% - 67px);" readonly="readonly" aria-disabled="true" name="Amount" id="Amount" type="text" value="" placeholder="" />
  109. <select class="form-control input-group-addon" style="width:65px; padding:1px" aria-disabled="true" name="UnitID" id="UnitID" type="text" value="" placeholder="" onchange="ChangeAmount();">
  110. @Html.Raw(ViewBag.SelUnitIDInfo)
  111. </select>
  112. </div>
  113. <div class="input-group">
  114. <label class="input-group-addon control-label" for="QuoteHigh">最高价(元)</label>
  115. <input class="form-control input-group-addon" aria-disabled="true" name="QuoteHigh" id="QuoteHigh" type="text" value="" placeholder="" onblur="NumChange();"/>
  116. </div>
  117. <div class="input-group">
  118. <label class="input-group-addon control-label" for="QuoteLow">最低价(元)</label>
  119. <input class="form-control input-group-addon" aria-disabled="true" name="QuoteLow" id="QuoteLow" type="text" value="" placeholder="" onblur="NumChange();" />
  120. </div>
  121. <div class="input-group">
  122. <label class="input-group-addon control-label" for="QuoteAverage">平均价(元)</label>
  123. <input class="form-control input-group-addon" aria-disabled="true" name="QuoteAverage" id="QuoteAverage" type="text" value="" placeholder="" onblur="NumChange();" />
  124. </div>
  125. </div>
  126. </form>
  127. </div>
  128. <div data-options="region:'south',border:false" style="text-align:right;height:45px; padding:13px 20px 0;">
  129. <a class="easyui-linkbutton" id="Save" data-options="iconCls:'icon-ok'" href="javascript:void(0)" onclick="Save()" style="width:80px">确认</a>
  130. <a class="easyui-linkbutton" data-options="iconCls:'icon-cancel'" href="javascript:void(0)" onclick="$('#winModal').window('close');" style="width:80px">取消</a>
  131. </div>
  132. </div>
  133. </div>
  134. </section>
  135. <script>
  136. function Save(type) {
  137. type = type || $("#hid_Type").val();
  138. var marketMajorQuoteId = (type === "Add" || type === "Edit") ? $("#MarketMajorQuoteID").val() : $('#dgTable').datagrid('getSelections')[0].MarketMajorQuoteID;
  139. var majorGoodsName = "", marketId = $("#MarketId").val();
  140. if (marketId===""|| marketId==undefined) {
  141. layer.alert("市场不能为空", { icon: 7, title: '提示信息' });
  142. return;
  143. }
  144. if ($("#MajorGoodsName").select2("data")[0]) {
  145. majorGoodsName = $("#MajorGoodsName").select2("data")[0].text;
  146. } else {
  147. layer.alert("商品不能为空", { icon: 7, title: '提示信息' });
  148. return;
  149. }
  150. $.ajax({
  151. url: "@Url.Action("MarketMajorQuoteOper", "MarketSystem")",
  152. type: "post",
  153. dataType: "json",
  154. data: {
  155. Type: type,
  156. MarketMajorQuoteID: marketMajorQuoteId,
  157. MarketID: $("#MarketId").val(),
  158. VarietyCategoryNo: $("#MajorGoodsName").val(),
  159. MajorGoodsName: majorGoodsName,
  160. QuoteDate: $("#QuoteDate").val(),
  161. Amount: $("#Amount").val(),
  162. UnitID: $("#UnitID").val(),
  163. QuoteHigh: $("#QuoteHigh").val(),
  164. QuoteLow: $("#QuoteLow").val(),
  165. QuoteAverage: $("#QuoteAverage").val()
  166. },
  167. success: function (data) {
  168. if (CheckAajxData(data) === false) return;
  169. var msg = data.ErrorInfo;
  170. if (data.Success === true) {
  171. LoadTable();
  172. $("#winModal").window("close");
  173. layer.alert(msg, { icon: 1, title: '提示信息' });
  174. } else {
  175. layer.alert(msg, { icon: 7, title: '提示信息' });
  176. }
  177. }
  178. });
  179. }
  180. //添加
  181. function btn_Add() {
  182. $("#hid_Type").val("Add");
  183. $("#winModal input").val("");
  184. $("#winModal textarea").val("");
  185. $("#Amount").val("500");
  186. $("#UnitID").val("克");
  187. $("#Save span.l-btn-text").html("添加");
  188. $("#winModal").window("open");
  189. }
  190. //修改
  191. function btn_Edit() {
  192. $("#hid_Type").val("Edit");
  193. $("#Save span.l-btn-text").html("修改");
  194. SetModalVal();
  195. }
  196. //modal赋值
  197. function SetModalVal() {
  198. var rows = $('#dgTable').datagrid('getSelections');
  199. if (rows.length === 1) {
  200. var row = rows[0];
  201. console.log(row);
  202. $("#MarketMajorQuoteID").val(row.MarketMajorQuoteID);
  203. $("#MarketId").val(row.MarketID);
  204. $("#MajorGoodsName").val(row.VarietyCategoryNo).trigger("change");
  205. $("#QuoteDate").val(row.QuoteDate);
  206. $("#Amount").val(row.Amount);
  207. $("#UnitID").val(row.UnitID.trim());
  208. $("#QuoteHigh").val(row.QuoteHigh);
  209. $("#QuoteLow").val(row.QuoteLow);
  210. $("#QuoteAverage").val(row.QuoteAverage);
  211. if ($("#hid_Type").val()==="Edit") {
  212. $("#winModal").window("open");
  213. }
  214. } else {
  215. layer.alert('请选择一条记录进行设置', {title:'提示信息'});
  216. }
  217. }
  218. //加载表格数据
  219. function LoadTable(value, item) {
  220. $('#dgTable').datagrid({
  221. url: '@Url.Action("MarketMajorQuoteListResult", "GetResult")' + '?PcVal=' + escape(value) + '&PcItem=' + item
  222. });
  223. }
  224. function ChangeAmount() {
  225. if ($("#UnitID").val() === "克") {
  226. $("#Amount").val("500");
  227. } else {
  228. $("#Amount").val("1");
  229. }
  230. }
  231. var i = 1;
  232. function NumChange() {
  233. var a = eval($("#QuoteHigh").val()) ,
  234. b = eval($("#QuoteLow").val());
  235. if (a < b && a !== "" && b !== ""&&i===1) {
  236. layer.alert("最高价不能低于最低价!", { icon: 7, title: '提示信息' });
  237. i++;
  238. return;
  239. }
  240. i = 1;
  241. $("#QuoteAverage").val((a + b) / 2);
  242. }
  243. $(function () {
  244. @*var data =@Html.Raw(JsonConvert.SerializeObject(ViewBag.SelMajorGoodsNameInfo));
  245. console.log(data);*@
  246. $("#MajorGoodsName").select2({
  247. placeholder: "请选择商品..."
  248. });
  249. //加载表格数据
  250. var value = $(".textbox.searchbox .textbox-value").val(), item = $(".textbox.searchbox .textbox-value").attr("name");
  251. LoadTable(value, item);
  252. //加载日历控件
  253. laydate({
  254. elem: '#QuoteDate',
  255. format: "YYYY-MM-DD",
  256. min: "1980-01-01",
  257. event: "focus"
  258. });
  259. });
  260. </script>
  261. </body>
  262. </html>