create_component_table_item.html 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  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 = { "sql":sql };
  91. $.ajax({
  92. type:"GET",
  93. url:"/sql_get",
  94. dataType:"JSON",
  95. data:sql_data,
  96. success:function (res) {
  97. alert("零件表: 零件新增成功!")
  98. },
  99. error: function (thrownError) {
  100. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  101. alert("零件表: 內部料號 " + company_id + " 已存在, 請重新輸入")
  102. }
  103. }
  104. })
  105. var sql = 'INSERT INTO 規格表 (`內部料號`, `名稱`) VALUES ("' + company_id + '", "' + component_name_select + '");';
  106. var sql_data = { "sql":sql };
  107. $.ajax({
  108. type:"GET",
  109. url:"/sql_get",
  110. dataType:"JSON",
  111. data:sql_data,
  112. success:function (res) {
  113. alert("規格表: 零件新增成功!")
  114. },
  115. error: function (thrownError) {
  116. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  117. alert("規格表: 內部料號 " + company_id + " 已存在, 請重新輸入")
  118. }
  119. }
  120. })
  121. }
  122. </script>
  123. <hr>
  124. <!-- 這裡新增零件表中的 會計科目 -->
  125. 請輸入欲新增的會計科目名稱, 再按下 "新增會計科目項目" 按鈕:<br>
  126. <input id="create_accountingsubject_id" value="{{new_as_sn}}" style="height: 25px; width: 45px;" readonly>
  127. <input id="create_accountingsubject_name" value="" style="height: 25px;">
  128. <input type="button" id="create_accountingsubject" value="新增會計科目項目" onclick="create_accountingsubject();">
  129. <script>
  130. function create_accountingsubject() {
  131. var as_id = $("#create_accountingsubject_id").val();
  132. var as_name = $("#create_accountingsubject_name").val();
  133. var sql = '';
  134. sql += 'INSERT INTO 會計科目表 ' +
  135. 'VALUES ("' + as_id + '", "' + as_name + '");';
  136. // console.log("sql: " + sql)
  137. var sql_data = { "sql":sql };
  138. $.ajax({
  139. type:"GET",
  140. url:"/sql_get",
  141. dataType:"JSON",
  142. data:sql_data,
  143. success:function (res) {
  144. alert('新增 會計科目 成功')
  145. },
  146. error: function (thrownError) {
  147. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  148. alert("會計科目 " + as_id + " 已存在, 請重新輸入")
  149. }
  150. }
  151. })
  152. }
  153. </script>
  154. <hr>
  155. <!-- 這裡新增零件表中的 類別 -->
  156. 請輸入欲新增的類別名稱, 再按下 "新增類別項目" 按鈕:<br>
  157. <input id="create_category_id" value="{{new_ca_sn}}" style="height: 25px; width: 45px;" readonly>
  158. <input id="create_category_name" value="" style="height: 25px;">
  159. <input type="button" id="create_category" value="新增類別項目" onclick="create_category();">
  160. <script>
  161. function create_category() {
  162. var ca_id = $("#create_category_id").val();
  163. var ca_name = $("#create_category_name").val();
  164. var sql = '';
  165. sql += 'INSERT INTO 類別表 ' +
  166. 'VALUES ("' + ca_id + '", "' + ca_name + '");';
  167. var sql_data = { "sql":sql };
  168. $.ajax({
  169. type:"GET",
  170. url:"/sql_get",
  171. dataType:"JSON",
  172. data:sql_data,
  173. success:function (res) {
  174. alert('新增 類別 成功')
  175. },
  176. error: function (thrownError) {
  177. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  178. alert("類別 " + ca_id + " 已存在, 請重新輸入")
  179. }
  180. }
  181. })
  182. }
  183. </script>
  184. <hr>
  185. <!-- 這裡新增零件表中的 供應商 -->
  186. 請輸入欲新增的供應商名稱, 再按下 "新增供應商" 按鈕: (其他資料先以 NULL 存入)<br>
  187. <input id="create_supplier_id" value="{{new_su_sn}}" style="height: 25px; width: 45px;" readonly>
  188. <input id="create_supplier_name" value="" style="height: 25px;">
  189. <input type="button" id="create_supplier" value="新增供應商項目" onclick="create_supplier();">
  190. <script>
  191. function create_supplier() {
  192. var su_id = $("#create_supplier_id").val();
  193. var su_name = $("#create_supplier_name").val();
  194. var sql = '';
  195. sql += 'INSERT INTO 供應商 (`供應商`, `公司`) ' +
  196. 'VALUES ("' + su_id + '", "' + su_name + '");';
  197. console.log("sql:", sql)
  198. var sql_data = { "sql":sql };
  199. $.ajax({
  200. type:"GET",
  201. url:"/sql_get",
  202. dataType:"JSON",
  203. data:sql_data,
  204. success:function (res) {
  205. alert('新增 供應商 成功')
  206. },
  207. error: function (thrownError) {
  208. if (thrownError.statusText == "INTERNAL SERVER ERROR") {
  209. alert("供應商 " + su_id + " 已存在, 請重新輸入")
  210. }
  211. }
  212. })
  213. }
  214. </script>
  215. </body>
  216. </html>