index_copy.html 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
  5. <meta http-equiv="Pragma" content="no-cache" />
  6. <meta http-equiv="Expires" content="0" />
  7. <meta charset="utf-8">
  8. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  9. <link rel="shortcut icon" href="/img/logo.png" />
  10. <link rel="bookmark" href="/img/logo.png" />
  11. <link rel="stylesheet" href="/plugins/bootstrap-4.3.1/css/bootstrap.min.css">
  12. <link rel="stylesheet" href="/plugins/font-awesome-4.7.0/css/font-awesome.min.css">
  13. <link href="/Plugins/bootstrap-select/css/bootstrap-select.min.css" rel="stylesheet" />
  14. <link rel="stylesheet" href="../common/StyleSheet.css" />
  15. <script src="/Plugins/jquery-3.4.1/jquery-3.4.1.min.js"></script>
  16. <script src="/Plugins/virtualkeyboard/xvirtualkeyboard.js"></script>
  17. <style type="text/css">
  18. .nav-link {
  19. padding: .4rem 0.6rem;
  20. }
  21. tr, th, td {
  22. height: 22px !important;
  23. padding: 4px !important;
  24. }
  25. .btn-info:not(:disabled):not(.disabled).active, .btn-info:not(:disabled):not(.disabled):active, .show > .btn-info.dropdown-toggle {
  26. color: #10707f;
  27. /*background-color: #117a8b;*/
  28. background-color: yellow;
  29. /*border-color: #10707f;*/
  30. border-color: yellow;
  31. }
  32. </style>
  33. <title>东科软件</title>
  34. </head>
  35. <body class="bg-light">
  36. <!--导航菜单-->
  37. <script src="../common/navbar.js"></script>
  38. <!--质量登记表单-->
  39. <div class="container-fluid">
  40. <div class="row pt-2">
  41. <div class="col-3"></div>
  42. <div class="col-xl-6 col-lg-12 pt-0 pb-2">
  43. <!--产品分级-->
  44. <div class="rounded bg-white shadow-sm pl-4 pt-3 pr-4 pl-4 pb-2">
  45. <form class="pt-0">
  46. <div class="form-row">
  47. <div class="form-group col-4 mb-1">
  48. <label for="生产工号">生产工号</label>
  49. <input readonly type="text" class="form-control border-secondary" id="生产工号" placeholder="请输入" required>
  50. </div>
  51. <div class="form-group col-4 mb-1">
  52. <label for="产品条码">产品条码</label>
  53. <input value="" onkeydown="if (event.keyCode == 13) loadProduct();" type="text" class="form-control" id="产品条码" placeholder="请输入" required>
  54. <div id="softkeyboard"></div>
  55. </div>
  56. <div class="form-group col-2 align-self-end mb-1">
  57. <button onclick="loadProduct()" id="产品查询" type="button" class="btn btn-info btn-block">产品查询</button>
  58. </div>
  59. <div class="form-group col-2 align-self-end mb-1">
  60. <button onclick="resetGoodsGrade(true)" id="清空条码" type="button" class="btn btn-info btn-block">清空条码</button>
  61. </div>
  62. </div>
  63. <div class="form-row">
  64. <div class="form-group col-12 mb-1">
  65. <!--<input type="text" class="form-control border-secondary" id="提示信息" placeholder="查询" readonly>-->
  66. <div class="alert alert-info" role="alert" id="提示信息"></div>
  67. </div>
  68. </div>
  69. <div class="form-row">
  70. <div class="form-group col-4 mb-1">
  71. <input type="text" class="form-control border-secondary" id="产品编码" placeholder="查询" readonly>
  72. </div>
  73. <div class="form-group col-4 mb-1">
  74. <input type="text" class="form-control border-secondary" id="产品商标" placeholder="查询" readonly>
  75. </div>
  76. <div class="form-group col-4 mb-1">
  77. <input type="text" class="form-control border-secondary" id="产品釉料" placeholder="查询" readonly>
  78. </div>
  79. </div>
  80. <div class="form-row">
  81. <div class="form-group col-4">
  82. <input type="text" class="form-control border-secondary" id="漏气" placeholder="查询" readonly>
  83. </div>
  84. <div class="form-group col-4">
  85. <input type="text" class="form-control border-secondary" id="内漏" placeholder="查询" readonly>
  86. </div>
  87. <div class="form-group col-4">
  88. <input type="text" class="form-control border-secondary" id="通球" placeholder="查询" readonly>
  89. </div>
  90. </div>
  91. <div class="form-row">
  92. <div class="form-group col-4">
  93. <!--产品分级变量-->
  94. <div style="display:none;">
  95. <label for="产品分级">产品分级</label>
  96. <select id="产品分级" onchange="goodsLevel_OnChange()" class="custom-select" required disabled>
  97. <option value="">请选择...</option>
  98. </select>
  99. </div>
  100. <!--产品分级按钮-->
  101. <div id="产品分级按钮模板" style="display:none;">
  102. <label class="btn btn-info btn-lg active" onclick="goodsLevelSelect('{id}')">
  103. <input type="radio" name="产品分级按钮项" id="产品分级{text}" value="{text}"> {text}
  104. </label>
  105. </div>
  106. <div id="产品分级按钮" class="btn-group btn-group-toggle pt-4" data-toggle="buttons" style="width:100%;">
  107. <label class="btn btn-info btn-lg" onclick="goodsLevelSelect('0')">
  108. <input type="radio" name="产品分级按钮项" id="产品分级正品" value="正品"> 正品
  109. </label>
  110. <label class="btn btn-info btn-lg" onclick="goodsLevelSelect('0')">
  111. <input type="radio" name="产品分级按钮项" id="产品分级副品" value="副品"> 副品
  112. </label>
  113. <label class="btn btn-info btn-lg" onclick="goodsLevelSelect('0')">
  114. <input type="radio" name="产品分级按钮项" id="产品分级重烧" value="重烧"> 重烧
  115. </label>
  116. <label class="btn btn-info btn-lg" onclick="goodsLevelSelect('0')">
  117. <input type="radio" name="产品分级按钮项" id="产品分级次品" value="次品"> 次品
  118. </label>
  119. </div>
  120. </div>
  121. <div class="form-group col-4">
  122. <label for="返工工序">返工工序</label>
  123. <select id="返工工序" class="custom-select" required disabled>
  124. <option value="">请选择...</option>
  125. </select>
  126. </div>
  127. <div class="form-group col-2">
  128. <label for="重烧">重烧</label>
  129. <input type="text" class="form-control border-secondary" id="重烧" placeholder="查询" readonly>
  130. </div>
  131. <div class="form-group col-2">
  132. <label for="干补">干补</label>
  133. <input type="text" class="form-control border-secondary" id="干补" placeholder="查询" readonly>
  134. </div>
  135. </div>
  136. <div class="form-row">
  137. <div class="form-group col-12 align-self-end">
  138. <button onclick="productSave()" id="产品分级保存按钮" type="button" class="btn btn-lg btn-danger btn-block" disabled>保存产品分级</button>
  139. </div>
  140. </div>
  141. </form>
  142. </div>
  143. </div>
  144. <div class="col-3"></div>
  145. </div>
  146. </div>
  147. <!--对话框-->
  148. <script src="../common/dialog.js"></script>
  149. <!--版权信息-->
  150. <script src="../common/footer.js"></script>
  151. <script src="/Plugins/bootstrap-4.3.1/js/bootstrap.bundle.min.js"></script>
  152. <script src="/Plugins/bootstrap-select/js/bootstrap-select.min.js"></script>
  153. <script src="/Plugins/sweetalert/sweetalert.min.js"></script>
  154. <script src="/Plugins/xrequest/xrequest.min.js"></script>
  155. <script src="../Common/xuwell.js"></script>
  156. <script>
  157. //xuwei 2020-04-21
  158. //计件标记变量 1新建 2改判 3冷补后
  159. var checkFlag = '1';
  160. //成检工序ID
  161. var procedureId = request('id');
  162. //接口数据源定义
  163. var completeProcedure;
  164. var jsonUser;
  165. var jsonGoodsLevel;
  166. var jsonProcedure;
  167. var jsonStaff;
  168. var defectUserId;
  169. var jsonProductData;
  170. //操作方式 insert update
  171. var action = "";
  172. //用于提交的缺陷数据
  173. var productionDefects = [];
  174. var userId = "";
  175. $(document).ready(function () {
  176. //加载数据
  177. loadData();
  178. });
  179. //产品分级按钮事件
  180. function goodsLevelSelect(value) {
  181. $("#产品分级").val(value);
  182. goodsLevel_OnChange();
  183. }
  184. function keyBoard() {
  185. //加载软键盘
  186. $('#产品条码').keyboard({ usePreview: false, autoAccept: true });
  187. //$('#备注').keyboard({ usePreview: false, autoAccept: true });
  188. swal({
  189. title: '产品分级',
  190. text: '软键盘已加载!',
  191. icon: 'success',
  192. button: '确定'
  193. });
  194. }
  195. //加载 生产工号
  196. function loadData() {
  197. //检查登录状态
  198. $.get('api/LogInCheck_WCF.ashx', function (data) {
  199. var json = JSON.parse(data);
  200. if (json["success"] == true) {
  201. //登录状态
  202. $('#生产工号').val(json["rows"]["userCode"]);
  203. //保存登录数据源
  204. jsonUser = json["rows"];
  205. }
  206. else {
  207. swal({
  208. title: '登录异常!',
  209. text: '请您先登录系统!',
  210. icon: 'error',
  211. button: '确定'
  212. }).then(function () {
  213. window.location = '/main/login/login.html';
  214. });
  215. }
  216. });
  217. //获取工位信息员工信息 2020-07-27 xuwei add
  218. $.get('api/GetWorkStationInfo.ashx', function (data) {
  219. var json = JSON.parse(data);
  220. if (json["success"] == true) {
  221. $('#提示信息').html(json["rows"][0]["WORKSTATIONINFO"]);
  222. }
  223. else {
  224. $('#提示信息').html('数据查询失败!');
  225. }
  226. });
  227. }
  228. //输入条码 加载 产品信息
  229. function loadProduct() {
  230. swal({
  231. title: '产品分级',
  232. text: '正在查询数据,请稍候。。。',
  233. icon: 'info',
  234. button: false,
  235. closeOnClickOutside: false
  236. });
  237. //2020-07-02 重新加载生产工号 并验证登录状态
  238. loadData();
  239. //加载产品信息
  240. $.get('api/GetCheckBarCode_WCF.ashx', { 'procedureid': procedureId, 'barcode': $('#产品条码').val() }, function (data) {
  241. var json = JSON.parse(data);
  242. if (json['success'] == true) {
  243. if (json['rows'][0]['out_errMsg'] == '') {
  244. //读取产品信息
  245. $('#产品商标').val('商标:' + json['rows'][0]["out_logoName"]);
  246. $('#产品釉料').val('釉料:' + json['rows'][0]["out_glazeName"]);
  247. $('#产品编码').val('编码:' + json['rows'][0]["out_goodsCode"]);
  248. //$('#产品名称').val('名称:' + json['rows'][0]["out_goodsName"]);
  249. $('#漏气').val('漏气:' + json['rows'][0]["out_LeakFlag1Name"]);
  250. $('#内漏').val('内漏:' + json['rows'][0]["out_LeakFlag2Name"]);
  251. $('#通球').val('通球:' + json['rows'][0]["out_LeakFlag3Name"]);
  252. //设置漏气内漏通球样式 1合格0不合格
  253. $('#漏气').removeClass('bg-info,bg-warning');
  254. $('#内漏').removeClass('bg-info,bg-warning');
  255. $('#通球').removeClass('bg-info,bg-warning');
  256. if (json['rows'][0]["out_LeakFlag1"] == "1") $('#漏气').addClass('bg-info');
  257. if (json['rows'][0]["out_LeakFlag1"] == "0") $('#漏气').addClass('bg-warning');
  258. if (json['rows'][0]["out_LeakFlag2"] == "1") $('#内漏').addClass('bg-info');
  259. if (json['rows'][0]["out_LeakFlag2"] == "0") $('#内漏').addClass('bg-warning');
  260. if (json['rows'][0]["out_LeakFlag3"] == "1") $('#通球').addClass('bg-info');
  261. if (json['rows'][0]["out_LeakFlag3"] == "0") $('#通球').addClass('bg-warning');
  262. $('#重烧').val(json['rows'][0]["out_isReFireName"]);
  263. $('#干补').val(json['rows'][0]["out_specialRepairFlagName"]);
  264. //加载完成工序 判断 是 新建 还是 编辑
  265. $.get('api/GetCompleteProcedureIDPDA_WCF.ashx', { 'barcode': $('#产品条码').val() }, function (data) {
  266. var json = JSON.parse(data);
  267. if (json["success"] == true) {
  268. swal.close();
  269. completeProcedure = json["rows"];
  270. if (procedureId == completeProcedure[0]["COMPLETEPROCEDUREID"]) {
  271. checkFlag = "2";
  272. action = "update";
  273. loadUpdateData(0);
  274. }
  275. else {
  276. //2020-03-23 修正 回收后 再次成检 改判操作 找到正确的成检ID
  277. $.get('api/GetProductionDataCheckID_WCF.ashx', { 'barcode': $('#产品条码').val() }, function (data) {
  278. if (data == '{"success":true,"message":"操作成功!","rows":}') {
  279. data = '{"success":true,"message":"操作成功!","rows":""}';
  280. }
  281. var json = JSON.parse(data);
  282. if (json["success"] == true) {
  283. //2020-04-23 xuwei 修正
  284. if (json["rows"].length == 0) {
  285. //为空行时是新建
  286. checkFlag = "1";
  287. action = "insert";
  288. loadInsertData();
  289. }
  290. else {
  291. if (json["rows"][0]["PROCEDUREID"] == procedureId) {
  292. //工序相等时是更新
  293. checkFlag = "3";
  294. action = "update";
  295. loadUpdateData(json["rows"][0]["PRODUCTIONDATAID"]);
  296. }
  297. else {
  298. //工序不等时不可到达
  299. resetGoodsGrade(false);
  300. swal({
  301. title: "产品查询",
  302. text: "该工序不可到达!请确认质量登记工序!",
  303. icon: "error",
  304. button: "确定"
  305. }).then(function () {
  306. $('#产品条码').val('');
  307. $('#产品条码').focus();
  308. });
  309. }
  310. }
  311. }
  312. });
  313. }
  314. }
  315. });
  316. }
  317. else {
  318. resetGoodsGrade(false);
  319. swal({
  320. title: "产品查询",
  321. text: json['rows'][0]['out_errMsg'],
  322. icon: "error",
  323. button: "确定"
  324. }).then(function () {
  325. //条码无效时清空条码 2020-03-03 xuwei
  326. $('#产品条码').val('');
  327. $('#产品条码').focus();
  328. });
  329. }
  330. }
  331. else {
  332. swal({
  333. title: '登录异常!',
  334. text: '请您重新登录系统!',
  335. icon: 'error',
  336. button: '确定'
  337. }).then(function () {
  338. window.location = '/main/login/login.html';
  339. });
  340. }
  341. });
  342. }
  343. //加载插入数据
  344. function loadInsertData() {
  345. //加载产品分级
  346. xuwell.loadSelect({
  347. id: '#产品分级',
  348. url: 'api/GetProductCheckGoodsGrade_WCF.ashx',
  349. data: {},
  350. fieldKey: 'DEFECTFLAGID',
  351. fieldValue: 'DEFECTFLAGNAME',
  352. onLoad: function (data) {
  353. $('#产品分级').get(0).selectedIndex = 0;
  354. jsonGoodsLevel = data["rows"];
  355. //更新按钮状态
  356. goodsLevel_OnChange();
  357. //加载产品分级按钮
  358. if ($('#产品分级按钮').length > 0) {
  359. $('#产品分级按钮').html('');
  360. for (var i = 0; i < jsonGoodsLevel.length; i++) {
  361. var temp = $('#产品分级按钮模板').html().replaceAll('{id}', data["rows"][i]["DEFECTFLAGID"]).replaceAll('{text}', data["rows"][i]["DEFECTFLAGNAME"]);
  362. temp = temp.replaceAll('active', '');
  363. $('#产品分级按钮').append(temp);
  364. }
  365. }
  366. }
  367. });
  368. //加载产品返工工序
  369. xuwell.loadSelect({
  370. id: '#返工工序',
  371. url: 'api/GetProductCheckReworkProcedure_WCF.ashx',
  372. data: { 'id': procedureId },
  373. fieldKey: 'REWORKPROCEDUREID',
  374. fieldValue: 'REWORKPROCEDURENAME',
  375. onLoad: function () {
  376. $('#返工工序').get(0).selectedIndex = 0;
  377. }
  378. });
  379. //备注可用
  380. $('#产品分级').val('');
  381. //$('#备注').prop('disabled', false);
  382. }
  383. //加载编辑数据
  384. function loadUpdateData(productionDataCheckID) {
  385. if (action == "update") {
  386. //读取产品编辑ID
  387. $.get('api/GetProductionData_WCF.ashx', { 'BarCode': $('#产品条码').val(), 'ProcedureID': procedureId, 'userCode': $('#生产工号').val() }, function (data) {
  388. var json = JSON.parse(data);
  389. if (json["success"] == true) {
  390. //记录成检数据ID
  391. if (json["rows"].toString() != "") productionDataID = json["rows"][0]["PRODUCTIONDATAID"];
  392. //xuwei add 2020-03-23 回收后成检数据ID变更
  393. if (productionDataCheckID != 0) productionDataID = productionDataCheckID;
  394. //读取成检数据
  395. $.get('api/GetProductionDataByID_WCF.ashx', { 'productionDataID': productionDataID }, function (data) {
  396. swal.close();
  397. var json = JSON.parse(data);
  398. //读取产品信息 xuwei add 2020-03-23
  399. $('#产品商标').val('商标:' + json["rows"]["PDAProductionData"][0]["LogoName"]);
  400. $('#产品釉料').val('釉料:' + json["rows"]["PDAProductionData"][0]["GlazeName"]);
  401. $('#产品编码').val('编码:' + json["rows"]["PDAProductionData"][0]["GoodsCode"]);
  402. //$('#产品名称').val('名称:' + json["rows"]["PDAProductionData"][0]["GoodsName"]);
  403. //$('#重烧').val(json["rows"]["PDAProductionData"][0]["IsReFireName"]);
  404. //$('#干补').val(json["rows"]["PDAProductionData"][0]["SpecialRepairflagName"]);
  405. if (json["success"] == true) {
  406. //加载产品分级
  407. xuwell.loadSelect({
  408. id: '#产品分级',
  409. url: 'api/GetProductCheckGoodsGrade_WCF.ashx',
  410. data: {},
  411. fieldKey: 'DEFECTFLAGID',
  412. fieldValue: 'DEFECTFLAGNAME',
  413. onLoad: function (data) {
  414. $('#产品分级').val(json["rows"]["PDAProductionData"][0]["DefectFlagID"]);
  415. jsonGoodsLevel = data["rows"];
  416. //加载产品分级按钮
  417. if ($('#产品分级按钮').length > 0) {
  418. $('#产品分级按钮').html('');
  419. for (var i = 0; i < jsonGoodsLevel.length; i++) {
  420. var temp = $('#产品分级按钮模板').html().replaceAll('{id}', data["rows"][i]["DEFECTFLAGID"]).replaceAll('{text}', data["rows"][i]["DEFECTFLAGNAME"]);
  421. if (data["rows"][i]["DEFECTFLAGID"] != json["rows"]["PDAProductionData"][0]["DefectFlagID"])
  422. temp = temp.replaceAll('active', '');
  423. $('#产品分级按钮').append(temp);
  424. }
  425. }
  426. //判定是否超过改判时间
  427. $.get('api/GetSystemSettingDataByCode_WCF.ashx', function (data) {
  428. var json = JSON.parse(data);
  429. if (json["success"] == true) {
  430. var value = json["rows"][0]["SETTINGVALUE"];
  431. //判断是否超过改判时间
  432. //正常 value=0 是不限制 但是按PDA逻辑 使用接口再进行判定
  433. var createTime = jsonProductData["CreateTime"];
  434. $.post('api/BarcodeAllowCancel_WCF.ashx', { 'orgTime': createTime, 'days': value }, function (data) {
  435. var json = JSON.parse(data);
  436. if (json["success"] == true) {
  437. //更新按钮状态
  438. goodsLevel_OnChange();
  439. //2021-06-02 lsq 把这句话注释,和goodsLevel_OnChange()方法互斥
  440. //begin
  441. //$('#产品分级保存按钮').prop('disabled', false);
  442. //end
  443. //$('#备注').prop('disabled', false);
  444. }
  445. else {
  446. $('#产品分级').prop("disabled", true);
  447. $("[delbutton='true']").prop("disabled", true);
  448. swal({
  449. title: "产品分级",
  450. text: "产品已过系统改判时间!",
  451. icon: "warning",
  452. button: "确定"
  453. });
  454. }
  455. });
  456. }
  457. });
  458. }
  459. });
  460. //加载产品返工工序
  461. xuwell.loadSelect({
  462. id: '#返工工序',
  463. url: 'api/GetProductCheckReworkProcedure_WCF.ashx',
  464. data: { 'id': procedureId },
  465. fieldKey: 'REWORKPROCEDUREID',
  466. fieldValue: 'REWORKPROCEDURENAME',
  467. autoDisabled: false,
  468. onLoad: function () {
  469. $('#返工工序').val(json["rows"]["PDAProductionData"][0]["ReworkProcedureID"]);
  470. }
  471. });
  472. //加载分级数据
  473. //$('#备注').val(json["rows"]["PDAProductionData"][0]["Remarks"]);
  474. //记录修改数据
  475. jsonProductData = json["rows"]["PDAProductionData"][0];
  476. }
  477. });
  478. }
  479. });
  480. }
  481. }
  482. //产品分级 改变连动处理
  483. function goodsLevel_OnChange() {
  484. if ($("#产品分级").val() != '') {
  485. //重烧能选择返工工序
  486. if ($("#产品分级").find("option:selected").text() == '重烧') {
  487. $('#返工工序').prop('disabled', false);
  488. $('#返工工序').get(0).selectedIndex = 1;
  489. }
  490. else {
  491. $('#返工工序').prop('disabled', true);
  492. $("#返工工序").val('');
  493. }
  494. //2021-06-02 lsq add 产品编码和产品商标有值时才可以保存
  495. //begin
  496. //读取信息后不可改变产品条码(想改就清空再重新查)
  497. $('#产品条码').attr("readonly", "readonly");
  498. //两种只读写法,容错,防止用户那端不识别
  499. $('#产品条码').attr("readonly", true)
  500. //end1
  501. if ($("#产品编码").val() == '' && $("#产品商标").val() == '') {
  502. $('#产品分级保存按钮').prop('disabled', true);
  503. } else {
  504. $('#产品分级保存按钮').prop('disabled', false);
  505. }
  506. //end2
  507. }
  508. else {
  509. $('#产品分级保存按钮').prop('disabled', true);
  510. }
  511. }
  512. //启用禁用 产品分级 页
  513. function resetGoodsGrade(clearBarCode) {
  514. //产品信息清空
  515. $('#产品商标').val('');
  516. $('#产品釉料').val('');
  517. $('#产品编码').val('');
  518. //$('#产品名称').val('');
  519. $('#重烧').val('');
  520. $('#干补').val('');
  521. //产品分级选项清空禁用
  522. $("#产品分级按钮").children().removeClass("active");
  523. $('#产品分级').val('');
  524. $('#产品分级').prop('disabled', true);
  525. $('#返工工序').val('');
  526. $('#返工工序').prop('disabled', true);
  527. //$('#备注').val('');
  528. //$('#备注').prop('disabled', true);
  529. $('#产品分级保存按钮').prop('disabled', true);
  530. if (clearBarCode) $('#产品条码').val('');
  531. $('#产品条码').focus();
  532. }
  533. //保存产品分级
  534. function productSave() {
  535. //校验填写数据
  536. if ($("#产品分级").val() == '') {
  537. swal({
  538. title: "产品分级",
  539. text: "请您选择产品分级!",
  540. icon: "error",
  541. button: "确定"
  542. });
  543. return;
  544. }
  545. if ($("#产品分级").find("option:selected").text() == '重烧' && $("#返工工序").val() == '') {
  546. swal({
  547. title: "产品分级",
  548. text: "请您选择返工工序!",
  549. icon: "error",
  550. button: "确定"
  551. });
  552. return;
  553. }
  554. //保存产品分级 带确认提示
  555. //swal({
  556. // title: "产品分级",
  557. // text: "您确定要保存产品分级数据吗?",
  558. // icon: "warning",
  559. // dangerMode: true,
  560. // buttons: ["取消","确定"]
  561. //}).then((ok) => {
  562. // swal({
  563. // title: '产品分级',
  564. // text: '正在保存数据,请稍候。。。',
  565. // icon: 'info',
  566. // button: false,
  567. // closeOnClickOutside: false
  568. // });
  569. // save(ok);
  570. //});
  571. //保存产品分级 不带确认提示
  572. swal({
  573. title: '产品分级',
  574. text: '正在保存数据,请稍候。。。',
  575. icon: 'info',
  576. button: false,
  577. closeOnClickOutside: false
  578. });
  579. save(true);
  580. }
  581. function save(ok) {
  582. if (ok) {
  583. //生成时间戳避免重复提交
  584. var dataKey = new Date().getTime() + '-' + $('#生产工号').val();
  585. console.log(dataKey);
  586. var productionDataEntitys;
  587. //拼合插入数据
  588. if (action == "insert") {
  589. productionDataEntitys = [{
  590. "DataKey": dataKey,
  591. "CheckFlag": checkFlag,
  592. "UserID": jsonUser["userId"],
  593. "UserCode": jsonUser["userCode"],
  594. "UserName": jsonUser["userName"],
  595. "Barcode": $('#产品条码').val(),
  596. "GoodsLevelID": jsonGoodsLevel[$('#产品分级').get(0).selectedIndex - 1]["DEFECTFLAGID"],
  597. "GoodsLevelTypeID": jsonGoodsLevel[$('#产品分级').get(0).selectedIndex - 1]["GOODSLEVELTYPEID"],
  598. "ReworkProcedureID": parseInt($('#返工工序').val()),
  599. "ReworkProcedureName": $('#返工工序').val() == "" ? "" : $("#返工工序").find("option:selected").text(),
  600. "DefectFlag": $("#产品分级").find("option:selected").text() == "正品" ? 1 : 2,
  601. "Remarks": "",
  602. "IsPDA": 1,
  603. "ProductionDefects": productionDefects,
  604. "OPTimeStampPDA": completeProcedure[0]["CONVERTOPTIMESTAMP"]
  605. }];
  606. }
  607. //拼合更新数据
  608. if (action == "update") {
  609. productionDataEntitys = [{
  610. "DataKey": dataKey,
  611. "CheckFlag": checkFlag,
  612. "UserID": jsonUser["userId"],
  613. "UserCode": jsonUser["userCode"],
  614. "UserName": jsonUser["userName"],
  615. "Barcode": $('#产品条码').val(),
  616. "GoodsLevelID": jsonGoodsLevel[$('#产品分级').get(0).selectedIndex - 1]["DEFECTFLAGID"],
  617. "GoodsLevelTypeID": jsonGoodsLevel[$('#产品分级').get(0).selectedIndex - 1]["GOODSLEVELTYPEID"],
  618. "ReworkProcedureID": parseInt($('#返工工序').val()),
  619. "ReworkProcedureName": $('#返工工序').val() == "" ? "" : $("#返工工序").find("option:selected").text(),
  620. "DefectFlag": $("#产品分级").find("option:selected").text() == "正品" ? 1 : 2,
  621. "Remarks": "",
  622. "IsPDA": 1,
  623. "ProductionDefects": productionDefects,
  624. "OPTimeStampPDA": completeProcedure[0]["CONVERTOPTIMESTAMP"],
  625. //只有编辑时使用
  626. "ProductionDataID": productionDataID,
  627. "PDACheckTime": jsonProductData["CheckTime"],
  628. "OrgGoodsLevelTypeID": jsonProductData["GoodsLevelTypeID"]
  629. }];
  630. }
  631. //提交到接口
  632. $.post('api/AddCheckBarcode_WCF.ashx', { 'procedureID': procedureId, 'productionDataEntitys': JSON.stringify(productionDataEntitys) }, function (data) {
  633. var json = JSON.parse(data);
  634. if (json['success'] == true) {
  635. //保存成功
  636. //swal({
  637. // title: "产品分级",
  638. // text: '保存成功!',
  639. // icon: "success",
  640. // button: "确定"
  641. //}).then((ok) => {
  642. // $("#产品条码").focus();
  643. //});
  644. //保存成功,自动关闭
  645. swal("保存成功!", {
  646. title:'产品分级',
  647. icon:'success',
  648. buttons: false,
  649. timer: 2000,
  650. }).then(() => {
  651. $("#产品条码").focus();
  652. });
  653. //清空数据,继续下次成检
  654. resetGoodsGrade(true);
  655. }
  656. else {
  657. if (json['message'] == '重复提交') {
  658. //重复提交不做任何处理 2020-06-28 xuwei
  659. }
  660. else {
  661. //保存失败
  662. swal({
  663. title: "产品分级",
  664. text: '保存失败!' + json['message'] ,
  665. icon: "error",
  666. button: "确定"
  667. });
  668. }
  669. }
  670. });
  671. }
  672. }
  673. </script>
  674. </body>
  675. </html>