create_component_table_item.html 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>{{ title }}</title>
  6. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  7. <!-- 新 Bootstrap4 核心 CSS 文件 -->
  8. <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/4.1.0/css/bootstrap.min.css">
  9. <!-- jQuery文件。务必在bootstrap.min.js 之前引入 -->
  10. <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
  11. <!-- popper.min.js 用于弹窗、提示、下拉菜单 -->
  12. <script src="https://cdn.bootcss.com/popper.js/1.12.5/umd/popper.min.js"></script>
  13. <!-- 最新的 Bootstrap4 核心 JavaScript 文件 -->
  14. <script src="https://cdn.bootcss.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
  15. <!--可用來建立使用者小圖示-->
  16. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  17. </head>
  18. <body>
  19. <!-- 這裡新增零件表中的零件 -->
  20. 請依序輸入以下欄位, 再按下 "新增零件" 按鈕:<br>
  21. 會計科目:
  22. <select id="accountingsubjects" onChange="">
  23. <option value="00"></option>
  24. {% for data in AccountingSubjects_data %}
  25. <option value="{{data[0]}}">{{data[0]}}-{{data[1]}}</option>
  26. {% endfor %}
  27. </select>
  28. 類別:
  29. <select id="category" onChange="renewSN();">
  30. <option value="00"></option>
  31. {% for data in Category_data %}
  32. <option value="{{data[0]}}">{{data[0]}}-{{data[1]}}</option>
  33. {% endfor %}
  34. </select>
  35. 流水號:
  36. <input id="serialnumber" value="—" style="height: 25px; width: 45px;" readonly>
  37. 供應商:
  38. <select id="supplier" onChange="">
  39. <option value="00"></option>
  40. {% for data in Supplier_data %}
  41. <option value="{{data[0]}}">{{data[0]}}-{{data[1]}}</option>
  42. {% endfor %}
  43. </select>
  44. 零件名稱:
  45. <input list="conponents" id="component_name_select">
  46. <datalist id="conponents">
  47. <option value=""></option>
  48. {% for data in Component_data %}
  49. <option value="{{data[0]}}">{{data[0]}}</option>
  50. {% endfor %}
  51. </datalist>
  52. <br>
  53. <input type="button" id="create_component" value="新增零件" onclick="create_component();">
  54. <div id="result">
  55. <!-- <table>
  56. </table> -->
  57. </div>
  58. <script>
  59. // 輸入完類別後, 流水號自動帶入
  60. function renewSN() {
  61. var accountingsubjects_select = $("#accountingsubjects").val();
  62. var category_select = $("#category").val();
  63. $.get('/sn_get/' + accountingsubjects_select + '/' + category_select, '', function (res) {
  64. // console.log(res.new_sn)
  65. $('#serialnumber').val(res.new_sn)
  66. }, 'json');
  67. }
  68. // 零件表 新增零件
  69. function create_component() {
  70. // 會計科目
  71. var accountingsubjects_select = $("#accountingsubjects").val();
  72. // 類別
  73. var category_select = $("#category").val();
  74. // 流水號 → 從資料庫找到最大的流水號, 然後 +1
  75. var serialnumber_select = $("#serialnumber").val();
  76. // 放到 renewSN 方法內執行
  77. // 供應商
  78. var supplier_select = $("#supplier").val();
  79. // 零件名稱
  80. var component_name_select = $("#component_name_select").val();
  81. // 內部料號組合
  82. var company_id = accountingsubjects_select + category_select + serialnumber_select + supplier_select;
  83. var AND_list = [];
  84. // console.log(accountingsubjects_select, category_select, serialnumber_select, supplier_select, component_name_select)
  85. var sql = '';
  86. sql += 'INSERT INTO 零件表 ' +
  87. 'VALUES ("' + company_id + '", "' + accountingsubjects_select + '", "' + category_select + '", "' + serialnumber_select + '", "';
  88. sql += supplier_select + '", "' + component_name_select + '");';
  89. console.log("sql: " + sql)
  90. var sql_data = {
  91. "sql":sql
  92. };
  93. $.ajax({
  94. type:"GET",
  95. url:"/sql_get",
  96. dataType:"JSON",
  97. data:sql_data,
  98. success:function (res) {
  99. data = '-- 新增成功! --'
  100. var sectorSelect = document.getElementById("result");
  101. sectorSelect.innerHTML = data;
  102. },
  103. error: function (thrownError) {
  104. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  105. alert("內部料號 " + company_id + " 已存在, 請重新輸入")
  106. }
  107. }
  108. })
  109. // $.get('/sql_get', sql_data, function (res) {
  110. // // console.log("res: " + res)
  111. // // console.log("res.labels:" + res.labels)
  112. // // console.log("res.labels[0]:" + res.labels[0])
  113. // // console.log("res.labels[0][0]:" + res.labels[0][0])
  114. // // console.log("res.sql_field:" + res.sql_field)
  115. // // console.log("res.sql_field[0]:" + res.sql_field[0])
  116. // }, 'json');
  117. }
  118. </script>
  119. <hr>
  120. <!-- 這裡新增零件表中的 會計科目 -->
  121. 請輸入欲新增的會計科目名稱, 再按下 "新增會計科目項目" 按鈕:<br>
  122. <input id="create_accountingsubject_id" value="{{new_as_sn}}" style="height: 25px; width: 45px;" readonly>
  123. <input id="create_accountingsubject_name" value="" style="height: 25px;">
  124. <input type="button" id="create_accountingsubject" value="新增會計科目項目" onclick="create_accountingsubject();">
  125. <script>
  126. function create_accountingsubject() {
  127. var as_id = $("#create_accountingsubject_id").val();
  128. var as_name = $("#create_accountingsubject_name").val();
  129. var sql = '';
  130. sql += 'INSERT INTO 會計科目表 ' +
  131. 'VALUES ("' + as_id + '", "' + as_name + '");';
  132. // console.log("sql: " + sql)
  133. var sql_data = { "sql":sql };
  134. $.ajax({
  135. type:"GET",
  136. url:"/sql_get",
  137. dataType:"JSON",
  138. data:sql_data,
  139. success:function (res) {
  140. alert('新增 會計科目 成功')
  141. },
  142. error: function (thrownError) {
  143. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  144. alert("會計科目 " + as_id + " 已存在, 請重新輸入")
  145. }
  146. }
  147. })
  148. }
  149. </script>
  150. <hr>
  151. <!-- 這裡新增零件表中的 類別 -->
  152. 請輸入欲新增的類別名稱, 再按下 "新增類別項目" 按鈕:<br>
  153. <input id="create_category_id" value="{{new_ca_sn}}" style="height: 25px; width: 45px;" readonly>
  154. <input id="create_category_name" value="" style="height: 25px;">
  155. <input type="button" id="create_category" value="新增類別項目" onclick="create_category();">
  156. <script>
  157. function create_category() {
  158. var ca_id = $("#create_category_id").val();
  159. var ca_name = $("#create_category_name").val();
  160. var sql = '';
  161. sql += 'INSERT INTO 類別表 ' +
  162. 'VALUES ("' + ca_id + '", "' + ca_name + '");';
  163. var sql_data = { "sql":sql };
  164. $.ajax({
  165. type:"GET",
  166. url:"/sql_get",
  167. dataType:"JSON",
  168. data:sql_data,
  169. success:function (res) {
  170. alert('新增 類別 成功')
  171. },
  172. error: function (thrownError) {
  173. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  174. alert("類別 " + ca_id + " 已存在, 請重新輸入")
  175. }
  176. }
  177. })
  178. }
  179. </script>
  180. <hr>
  181. <!-- 這裡新增零件表中的 供應商 -->
  182. 請輸入欲新增的供應商名稱, 再按下 "新增供應商" 按鈕: (其他資料先以 NULL 存入)<br>
  183. <input id="create_supplier_id" value="{{new_su_sn}}" style="height: 25px; width: 45px;" readonly>
  184. <input id="create_supplier_name" value="" style="height: 25px;">
  185. <input type="button" id="create_supplier" value="新增供應商項目" onclick="create_supplier();">
  186. <script>
  187. function create_supplier() {
  188. var su_id = $("#create_supplier_id").val();
  189. var su_name = $("#create_supplier_name").val();
  190. var sql = '';
  191. sql += 'INSERT INTO 供應商 (`供應商`, `公司`) ' +
  192. 'VALUES ("' + su_id + '", "' + su_name + '");';
  193. console.log("sql:", sql)
  194. var sql_data = { "sql":sql };
  195. $.ajax({
  196. type:"GET",
  197. url:"/sql_get",
  198. dataType:"JSON",
  199. data:sql_data,
  200. success:function (res) {
  201. alert('新增 供應商 成功')
  202. },
  203. error: function (thrownError) {
  204. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  205. alert("供應商 " + su_id + " 已存在, 請重新輸入")
  206. }
  207. }
  208. })
  209. }
  210. </script>
  211. </body>
  212. </html>