bookEdit.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  6. <meta name="apple-mobile-web-app-capable" content="yes">
  7. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  8. <title>编辑图书</title>
  9. <link rel="stylesheet" href="../../../css/mui.min.css">
  10. <link rel="stylesheet" href="../../../css/mui.picker.min.css">
  11. <link href="../../../css/mui.poppicker.css" rel="stylesheet" />
  12. <link href="../../../css/OA-style.css" rel="stylesheet" />
  13. <link rel="stylesheet" type="text/css" href="../../../css/app.css" />
  14. <style>
  15. html,
  16. body {
  17. background-color: #efeff4;
  18. }
  19. .mui-views,
  20. .mui-view,
  21. .mui-pages,
  22. .mui-page,
  23. .mui-page-content {
  24. position: absolute;
  25. left: 0;
  26. right: 0;
  27. top: 0;
  28. bottom: 0;
  29. width: 100%;
  30. height: 100%;
  31. background-color: #efeff4;
  32. }
  33. .mui-pages {
  34. top: 43px;
  35. height: auto;
  36. }
  37. .mui-scroll-wrapper,
  38. .mui-scroll {
  39. background-color: #efeff4;
  40. }
  41. .mui-page.mui-transitioning {
  42. -webkit-transition: -webkit-transform 300ms ease;
  43. transition: transform 300ms ease;
  44. }
  45. .mui-page-left {
  46. -webkit-transform: translate3d(0, 0, 0);
  47. transform: translate3d(0, 0, 0);
  48. }
  49. .mui-ios .mui-page-left {
  50. -webkit-transform: translate3d(-20%, 0, 0);
  51. transform: translate3d(-20%, 0, 0);
  52. }
  53. .mui-navbar {
  54. position: fixed;
  55. right: 0;
  56. left: 0;
  57. z-index: 10;
  58. height: 44px;
  59. background-color: #468CF0;
  60. }
  61. .mui-navbar .mui-bar {
  62. position: absolute;
  63. background: transparent;
  64. text-align: center;
  65. }
  66. .mui-android .mui-navbar-inner.mui-navbar-left {
  67. opacity: 0;
  68. }
  69. .mui-ios .mui-navbar-left .mui-left,
  70. .mui-ios .mui-navbar-left .mui-center,
  71. .mui-ios .mui-navbar-left .mui-right {
  72. opacity: 0;
  73. }
  74. .mui-navbar .mui-btn-nav {
  75. -webkit-transition: none;
  76. transition: none;
  77. -webkit-transition-duration: .0s;
  78. transition-duration: .0s;
  79. }
  80. .mui-navbar .mui-bar .mui-title {
  81. display: inline-block;
  82. width: auto;
  83. }
  84. .mui-page-shadow {
  85. position: absolute;
  86. right: 100%;
  87. top: 0;
  88. width: 16px;
  89. height: 100%;
  90. z-index: -1;
  91. content: '';
  92. }
  93. .mui-page-shadow {
  94. background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, .01) 50%, rgba(0, 0, 0, .2) 100%);
  95. background: linear-gradient(to right, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, .01) 50%, rgba(0, 0, 0, .2) 100%);
  96. }
  97. .mui-navbar-inner.mui-transitioning,
  98. .mui-navbar-inner .mui-transitioning {
  99. -webkit-transition: opacity 300ms ease, -webkit-transform 300ms ease;
  100. transition: opacity 300ms ease, transform 300ms ease;
  101. }
  102. .mui-page {
  103. display: none;
  104. }
  105. .mui-pages .mui-page {
  106. display: block;
  107. }
  108. .mui-page .mui-table-view:first-child {
  109. margin-top: 15px;
  110. }
  111. .mui-page .mui-table-view:last-child {
  112. margin-bottom: 30px;
  113. }
  114. .mui-table-view {
  115. margin-top: 0px;
  116. }
  117. .mui-table-view span.mui-pull-right {
  118. color: #999;
  119. }
  120. .mui-table-view-divider {
  121. background-color: #efeff4;
  122. font-size: 14px;
  123. }
  124. .mui-content>.mui-table-view:first-child {
  125. margin-top: -1px;
  126. }
  127. .mui-bar {
  128. box-shadow: none;
  129. }
  130. .mui-table-view-cell:after {
  131. left: 0px;
  132. }
  133. .mui-input-row label {
  134. padding: 0;
  135. line-height: 21px;
  136. }
  137. input[type=color],
  138. input[type=date],
  139. input[type=datetime-local],
  140. input[type=datetime],
  141. input[type=email],
  142. input[type=month],
  143. input[type=number],
  144. input[type=password],
  145. input[type=search],
  146. input[type=tel],
  147. input[type=text],
  148. input[type=time],
  149. input[type=url],
  150. input[type=week],
  151. select,
  152. textarea {
  153. padding: 0;
  154. height: auto;
  155. }
  156. .mui-table-view-divider:before,
  157. .mui-table-view-divider:after {
  158. height: 0;
  159. }
  160. .head {
  161. height: 40px;
  162. }
  163. #head {
  164. line-height: 40px;
  165. }
  166. .head-img {
  167. width: 40px;
  168. height: 40px;
  169. }
  170. #head-img1 {
  171. position: absolute;
  172. bottom: 10px;
  173. right: 40px;
  174. width: 40px;
  175. height: 40px;
  176. }
  177. .update {
  178. font-style: normal;
  179. color: #999999;
  180. margin-right: -25px;
  181. font-size: 15px
  182. }
  183. .mui-fullscreen {
  184. position: fixed;
  185. z-index: 20;
  186. background-color: #000;
  187. }
  188. .mui-ios .mui-navbar .mui-bar .mui-title {
  189. position: static;
  190. }
  191. /*问题反馈在setting页面单独的css*/
  192. #feedback .mui-popover {
  193. position: fixed;
  194. }
  195. #feedback .mui-table-view:last-child {
  196. margin-bottom: 0px;
  197. }
  198. #feedback .mui-table-view:first-child {
  199. margin-top: 0px;
  200. }
  201. .mui-plus.mui-plus-stream .mui-stream-hidden {
  202. display: none !important;
  203. }
  204. /*问题反馈在setting页面单独的css==end*/
  205. </style>
  206. </head>
  207. <body class="mui-fullscreen">
  208. <!--页面主结构开始-->
  209. <div id="app" class="mui-views">
  210. <div class="mui-view">
  211. <div class="mui-navbar">
  212. </div>
  213. <div class="mui-pages">
  214. </div>
  215. </div>
  216. </div>
  217. <div id="setting" class="mui-page">
  218. <div class="mui-navbar-inner mui-bar mui-bar-nav">
  219. <a class="mui-action-back back mui-pull-left"><img src="../../../images/back.png"></a>
  220. <h1 class="mui-title">编辑图书</h1>
  221. </div>
  222. <div class="mui-page-content">
  223. <div class="mui-scroll-wrapper" id="pullrefresh">
  224. <div class="mui-scroll">
  225. <div class="mui-content-padded" style="margin: 5px;">
  226. <form class="mui-input-group" id="form_element" v-for="item in items">
  227. <div class="mui-content">
  228. <ul class="mui-table-view ">
  229. <li class="mui-table-view-cell mui-input-row">
  230. <label>图书编码:</label>
  231. <input type="text" id="appliance_number" v-bind:value="item.appliance_number" placeholder="">
  232. </li>
  233. <li class=" mui-input-row" id="booktype">
  234. <label style="padding-top:10px ;padding-left: 15px;">图书类别:</label>
  235. <select name="type" id="appliance_sort_id" style="padding-left: 5px;">
  236. <template v-for="bookType in bookTypes">
  237. <option v-if="item.appliance_sort_id == bookType.appliance_sort_id" selected="selected" v-bind:value="bookType.appliance_sort_id">
  238. {{bookType.appliance_sort_name}}
  239. </option>
  240. <option v-else v-bind:value="bookType.appliance_sort_id">
  241. {{bookType.appliance_sort_name}}
  242. </option>
  243. </template>
  244. </select>
  245. </li>
  246. <li class="mui-table-view-cell mui-input-row">
  247. <label>图书条码:</label>
  248. <input type="text" id="barcode" placeholder="" v-bind:value="item.barcode">
  249. </li>
  250. <li class="mui-table-view-cell mui-input-row">
  251. <label>书名:</label>
  252. <input type="text" id="appliance_bookName" placeholder="" v-bind:value="item.appliance_bookName">
  253. </li>
  254. <li class="mui-table-view-cell mui-input-row">
  255. <label>作者:</label>
  256. <input type="text" id="writer" placeholder="" v-bind:value="item.writer">
  257. </li>
  258. <li class="mui-table-view-cell mui-input-row">
  259. <label>出版社:</label>
  260. <input type="text" id="appliance_factory" placeholder="" v-bind:value="item.appliance_factory">
  261. </li>
  262. <li class="mui-table-view-cell mui-input-row">
  263. <label>价格:</label>
  264. <input class="mui-input-numbox" type="text" id="price" v-bind:value="item.price" />
  265. </li>
  266. <li class="mui-table-view-cell mui-input-row">
  267. <label>排序:</label>
  268. <input type="text" id="sort" placeholder="" v-bind:value="item.sort">
  269. </li>
  270. <li class="mui-table-view-cell mui-input-row">
  271. <label>入库时间:</label>
  272. <input type="text" id="appliance_putaway_date" v-bind:value="item.appliance_putaway_date" onclick="time()" readonly="readonly">
  273. </li>
  274. <li class="mui-table-view-cell mui-input-row">
  275. <label>备注:</label>
  276. <input type="text" id="remark" placeholder="" v-bind:value="item.appliance_remark">
  277. </li>
  278. </ul>
  279. </div>
  280. </form>
  281. <div class="mui-button-row">
  282. <button type="button" class="mui-btn mui-btn-primary" id="save">确认</button>&nbsp;&nbsp;
  283. <button type="button" class="mui-btn mui-btn-danger mui-action-back" onclick="return false;">取消</button>
  284. </div>
  285. </div>
  286. </div>
  287. </div>
  288. </div>
  289. </div>
  290. <script src="../../../js/mui.min.js"></script>
  291. <script src="../../../js/mui.view.js"></script>
  292. <script src="../../../js/mui.picker.min.js"></script>
  293. <script src="../../../js/vue.min.js"></script>
  294. <script src="../../../js/config.js"></script>
  295. <script src="../../../js/app.js"></script>
  296. <script src="../../../js/jquery-1.11.2.min.js"></script>
  297. <script type="text/javascript" src="../../../js/immersed.js"></script>
  298. <script type="text/javascript" src="../../../js/common2.js"></script>
  299. <script type="text/javascript">
  300. var url = API.API_URL();
  301. var viewApi = mui('#app').view({
  302. defaultPage: '#setting'
  303. });
  304. function addData(id) {
  305. var url = API.API_URL();
  306. var serviceId = "oa_PHONE_20180524viewBook";
  307. var state = app.getState(); //获取登陆信息
  308. var appliance_id = id;
  309. var obj = {
  310. appliance_id: appliance_id,
  311. };
  312. app.ajax(serviceId, obj, function(data) {
  313. //服务器返回响应
  314. console.log(JSON.stringify(data))
  315. var result = data.returnParams;
  316. var totalRow = data.total;
  317. var totalPage = data.current;
  318. var list = data.list;
  319. console.log(list.length);
  320. if(list.length > 0) {
  321. vmA.items = vmA.items.concat(list);
  322. }
  323. });
  324. }
  325. //接收上个界面传递的参数
  326. mui.plusReady(function() {
  327. var self = plus.webview.currentWebview();
  328. var bookId = self.appliance_id;
  329. addData(bookId);
  330. getBooksType(347517153919893);
  331. });
  332. //图书类别
  333. function bookTypeName() {
  334. }
  335. //选取入库时间
  336. function time() {
  337. var dDate = new Date();
  338. dDate.setFullYear(2014, 7, 16);
  339. var minDate = new Date();
  340. minDate.setFullYear(2010, 0, 1);
  341. var maxDate = new Date();
  342. maxDate.setFullYear(2016, 11, 31);
  343. plus.nativeUI.pickDate(function(e) {
  344. var d = e.date;
  345. var a = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
  346. $("#appliance_putaway_date").val(a);
  347. }, {
  348. title: "请选择日期",
  349. date: dDate,
  350. minDate: minDate,
  351. maxDate: maxDate
  352. });
  353. }
  354. (function($, doc) {
  355. //处理view的后退与webview后退
  356. var oldBack = $.back;
  357. $.back = function() {
  358. if(viewApi.canBack()) { //如果view可以后退,则执行view的后退
  359. viewApi.back();
  360. } else { //执行webview后退
  361. oldBack();
  362. }
  363. };
  364. })(mui);
  365. var vmA = new Vue({
  366. el: '#pullrefresh',
  367. data: {
  368. items: [],
  369. bookTypes: []
  370. }
  371. });
  372. mui.plusReady(function() {
  373. //修改按钮
  374. var save = document.getElementById("save");
  375. save.addEventListener("click", function() {
  376. var self = plus.webview.currentWebview();
  377. var bookId = self.appliance_id;
  378. var odlappliance_number = self.appliance_number;
  379. var odlbarcode = self.barcode;
  380. var num = 0;
  381. var num2 = 0;
  382. var state = app.getState(); //获取登陆信息
  383. var staffId = state.user.useId;
  384. var appliance_number = $("#appliance_number").val(); //图书编码
  385. var appliance_sort_id = $("#appliance_sort_id").val(); //图书类别
  386. var appliance_bookName = $("#appliance_bookName").val(); //书名
  387. var appliance_putaway_date = $("#appliance_putaway_date").val(); //入库时间
  388. var writer = $("#writer").val(); //作者
  389. var barcode = $("#barcode").val(); //条码
  390. var price = $("#price").val(); //价格
  391. var sort = $("#sort").val(); //排序
  392. var remark = $("#remark").val(); //备注
  393. var appliance_factory = $("#appliance_factory").val(); //出版社
  394. if(appliance_number == "") {
  395. mui.toast("图书编码不能为空,请输入");
  396. return;
  397. }
  398. if(barcode == "") {
  399. mui.toast("图书条码不能为空,请输入");
  400. return;
  401. }
  402. if(price == "") {
  403. mui.toast("价格不能为空,请输入");
  404. return;
  405. } else if(isNaN(Number(price))){//验证是否是数字,true:是
  406. mui.toast("请输入数字");
  407. return;
  408. }
  409. if(barcode != odlbarcode) {
  410. num = 1;
  411. }
  412. if(odlappliance_number != appliance_number) {
  413. num2 = 1;
  414. }
  415. var serviceId = "oa_PHONE_editBook20180525";
  416. var obj = {
  417. appliance_id: bookId,
  418. num2: num2,
  419. num: num,
  420. appliance_number: appliance_number,
  421. appliance_sort_id: appliance_sort_id,
  422. appliance_bookName: appliance_bookName,
  423. writer: writer,
  424. barcode: barcode,
  425. price: price,
  426. sort: sort,
  427. appliance_putaway_date: appliance_putaway_date,
  428. appliance_remark: remark,
  429. appliance_factory: appliance_factory,
  430. create_user: staffId
  431. };
  432. app.ajax(serviceId, obj, function(data) {
  433. //服务器返回响应
  434. console.log(JSON.stringify(data))
  435. var boo = data.list;
  436. if(boo) {
  437. mui.toast("修改成功");
  438. location.reload();
  439. } else {
  440. mui.toast("修改失败,请确认");
  441. location.reload();
  442. }
  443. });
  444. });
  445. })
  446. //获取图书选择列表信息
  447. function getBooksType(unitid) {
  448. mui.ajax(url, {
  449. dataType: 'json', //服务器返回json格式数据
  450. type: 'post', //HTTP请求类型
  451. data: {
  452. 'serviceId': 'oa_PHONE_getBooksTypeInfo',
  453. 'params': '{unit:"' + unitid + '",isMultiDept:1}'
  454. },
  455. timeout: 10000, //超时时间设置为10秒;
  456. headers: {
  457. 'Accept': 'application/json'
  458. },
  459. success: function(data) {
  460. //服务器返回响应
  461. console.log("图书类别信息:" + JSON.stringify(data));
  462. if(data.returnCode == "1") {
  463. vmA.bookTypes = data.returnParams;
  464. } else {
  465. mui.toast("获取图书类别信息错误");
  466. }
  467. },
  468. error: function(xhr, type, errorThrown) {
  469. //异常处理;
  470. console.log(xhr + "========" + type + "===========" + errorThrown);
  471. }
  472. });
  473. };
  474. window.addEventListener('refresh', function(e) { //执行刷新
  475. location.reload();
  476. });
  477. </script>
  478. </body>
  479. </html>