JSlip  1.0
user_menu.tmplt
Go to the documentation of this file.
1 <?php
2 /**
3  * @link https://datagram.co.jp/source/bksj for the canonical source repository
4  * @copyright Copyright (c) 2006-2019 Datagram Ltd. (https://datagram.co.jp)
5  * @license https://datagram.co.jp/source/bksj/license.txt
6  */
7 
8 $view = $ctrl->view;
9 $basic = $ctrl->dat['basic'];
10 $err = (empty($ctrl->dat['err'])) ? [] : $ctrl->dat['err'];
11 $bid = $_SESSION['minfo']['bid'];
12 ?>
13 <script type="text/javascript">
14 
15  var my = {
16 
17  next: null,
18  func: null,
19  act: null,
20  bid: null,
21  v_bid: null,
22  err: <?php echo json_encode($err) ?>,
23 
24  gotoNext: function(func) {
25  this.func.val(func);
26  this.bid.val(<?= $bid ?>);
27  this.act.val('');
28  this.next.attr('target', '_self');
29  this.next.submit();
30  return false;
31  },
32 
33  popup: function(func, act) {
34  if (func == 'UserMenu') {
35  if (act == 'exportCsv') {
36  if (!confirm('伝票をエクスポートしますか?')) {
37  return false;
38  }
39  }
40  }
41  this.func.val(func);
42  this.bid.val(<?= $bid ?>);
43  this.act.val(act);
44  this.next.attr('target', '_blank');
45  this.next.submit();
46 
47  return false;
48  },
49 
50  useOld: function() {
51 
52  if (this.chkJournal()) {
53  return this.useLast();
54  }
55 
56  return false;
57  },
58 
59  useLast: function() {
60 
61  $.ajax({
62  url: '<?= $base ?>',
63  type: 'post',
64  async: false,
65  data: {
66  'func': 'UserMenu',
67  'act': 'useLast',
68  'bid': '<?= $bid ?>',
69  'eod': ''
70  }
71  })
72  .done((data) => {
73  eval("this.ans = " + data);
74  })
75  .fail((data) => {
76  this.ans = {"sts": "NG", "err": "ajax error"};
77  });
78 
79  if (this.ans.sts == "NG") {
80  alert(this.ans.err);
81  return -1;
82  }
83 
84  if (this.ans.sts == "OK") {
85  alert('昨年度のデータを流用しました。');
86  }
87 
88  return false;
89  },
90 
91  impdat: function() {
92 
93  if (this.chkJournal()) {
94  $('#modalImportCsv').modal();
95  }
96 
97  return false;
98  },
99 
100  chkJournal: function() {
101 
102  var cnt = this.cntJournal();
103 
104  if (cnt < 0) {
105  return false;
106  }
107 
108  if (cnt > 0) {
109  alert('伝票が入力されています。');
110  return false;
111  }
112 
113  return true;
114  },
115 
116  cntJournal: function() {
117 
118  $.ajax({
119  url: '<?= $base ?>',
120  type: 'post',
121  async: false,
122  data: {
123  'func': 'UserMenu',
124  'act': 'cntJournal',
125  'bid': '<?= $bid ?>',
126  'eod': ''
127  }
128  })
129  .done((data) => {
130  eval("this.ans = " + data);
131  })
132  .fail((data) => {
133  this.ans = {"sts": "NG", "err": "ajax error"};
134  });
135 
136  if (this.ans.sts == "NG") {
137  alert(this.ans.err);
138  return -1;
139  }
140 
141  return this.ans.cnt;
142  },
143 
144  chkErr: function() {
145  for (var i in this.err) {
146  alert("Error : " + i + " : " + this.err[i]);
147  }
148  },
149 
150  initPopover: function(id) {
151  $('#' + id).popover({trigger: 'hover'});
152  },
153 
154  init: function() {
155 
156  this.next = $('#next');
157  this.func = $('#func');
158  this.act = $('#act');
159  this.bid = $('#bid');
160  this.v_bid = $('#v_bid');
161 
162  this.initPopover('userJournal');
163  this.initPopover('userCalc');
164 
165  this.initPopover('userAccount');
166  this.initPopover('userBasicInfo');
167  this.initPopover('userSection');
168  this.initPopover('userItem');
169  this.initPopover('userAcitm');
170 
171  this.initPopover('userTax');
172  this.initPopover('userEra');
173  this.initPopover('sameOld');
174  this.initPopover('expdat');
175  this.initPopover('impdat');
176 
177  this.chkErr();
178  }
179  }
180 
181  $(function(){
182  my.init();
183  });
184 
185 </script>
186 
187 <form method="post" name="next" id="next" action="<?= $base ?>">
188  <input type="hidden" name="func" id="func">
189  <input type="hidden" name="bid" id="bid">
190  <input type="hidden" name="act" id="act">
191 </form>
192 
193 <table id="my_header" width="100%">
194  <tr>
195  <td align="left">&nbsp;メニュー</td>
196  <td align="right">
197  <button type="button" class="my_magenta" style="width: 120px;" onclick="return my.gotoNext('Login'); ">ログアウト</button>
198  </td>
199  </tr>
200  <tr>
201  <td colspan="2" align="center">
202  <?php echo $view->strBasic($basic[0]); ?>
203  </td>
204  </tr>
205 </table>
206 
207 <br>
208 
209 <table width="100%">
210 <?php
211 $btn_atr1 = 'class="my_cyan" style="width: 200px; height: 30px;"';
212 $btn_atr2 = 'class="my_cyan" style="width: 430px; height: 30px;"';
213 ?>
214  <tr>
215  <td align="center">
216  <table>
217  <tr>
218  <td colspan="3" style="padding: 2px;">
219  <button type="button" <?= $btn_atr2 ?> onclick="return my.gotoNext('UserJournal');" id="userJournal" data-toggle="popover" title="仕訳帳(伝票処理)" data-content="複式簿記のための伝票を入力します。">仕訳帳(伝票処理)</button>
220  </td>
221 
222  </tr>
223  <tr>
224  <td colspan="3" style="padding: 2px;">
225  <button type="button" <?= $btn_atr2 ?> onclick="return my.gotoNext('UserCalc');" id="userCalc" data-toggle="popover" title="計算処理/帳票処理" data-content="入力された伝票を計算処理し、財務諸表を表示します。">計算処理/帳票処理</button>
226  </td>
227  </tr>
228  <tr>
229  <td style="padding: 2px;">
230  <button type="button" <?= $btn_atr1 ?> onclick="return my.gotoNext('UserAccount');" id="userAccount" data-toggle="popover" title="アカウント" data-content="メンバー名 やパスワードを設定します。">アカウント</button>
231  </td>
232  <td style="width: 20pt;"></td>
233  <td style="padding: 2px;">
234  <button type="button" <?= $btn_atr1 ?> onclick="return my.gotoNext('UserTax');" id="userTax" data-toggle="popover" title="消費税" data-content="税率を設定します。">消費税</button>
235  </td>
236  </tr>
237  <tr>
238  <td style="padding: 2px;">
239  <button type="button" <?= $btn_atr1 ?> onclick="return my.gotoNext('UserBasicInfo');" id="userBasicInfo" data-toggle="popover" title="基本情報" data-content="表示名称や年度情報などを設定します。">基本情報</button>
240  </td>
241  <td style="width: 20pt;"></td>
242  <td style="padding: 2px;">
243  <button type="button" <?= $btn_atr1 ?> onclick="return my.gotoNext('UserEra');" id="userEra" data-toggle="popover" title="年号" data-content="年号を設定します。">年号</button>
244  </td>
245  </tr>
246  <tr>
247  <td style="padding: 2px;">
248  <button type="button" <?= $btn_atr1 ?> onclick="return my.gotoNext('UserSection');" id="userSection" data-toggle="popover" title="部門情報" data-content="部門名を設定します。">部門情報</button>
249  </td>
250  <td style="width: 20pt;"></td>
251  <td style="padding: 2px;">
252  <button type="button" <?= $btn_atr1 ?>></button>
253  </td>
254  </tr>
255  <tr>
256  <td style="padding: 2px;">
257  <button type="button" <?= $btn_atr1 ?>></button>
258  </td>
259  <td style="width: 20pt;"></td>
260  <td style="padding: 2px;">
261  <button type="button" <?= $btn_atr1 ?> onclick="return my.useOld();" id="sameOld" data-toggle="popover" title="前年度基本データ流用" data-content="前年度の部門情報や科目コードそして勘定コードを流用します。">前年度基本データ流用</button>
262  </td>
263  </tr>
264  <tr>
265  <td style="padding: 2px;">
266  <button type="button" <?= $btn_atr1 ?>></button>
267  </td>
268  <td style="width: 20pt;"></td>
269  <td style="padding: 2px;">
270  <button type="button" <?= $btn_atr1 ?>></button>
271  </td>
272  </tr>
273  <tr>
274  <td style="padding: 2px;">
275  <button type="button" <?= $btn_atr1 ?> onclick="return my.gotoNext('UserItem');" id="userItem" data-toggle="popover" title="科目コード" data-content="科目コードを設定します。">科目コード</button>
276  </td>
277  <td style="width: 20pt;"></td>
278  <td style="padding: 2px;">
279  <button type="button" <?= $btn_atr1 ?> onclick="return my.popup('UserMenu', 'exportCsv');" id="expdat" data-toggle="popover" title="伝票エクスポート" data-content="当該年度のデータをCSVファイルとしてダウンロードします。">伝票エクスポート</button>
280  </td>
281  </tr>
282  <tr>
283  <td style="padding: 2px;">
284  <button type="button" <?= $btn_atr1 ?> onclick="return my.gotoNext('UserAcitm');" id="userAcitm" data-toggle="popover" title="勘定コード" data-content="科目コード設定のもととなる勘定コードを設定します。">勘定コード</button>
285  </td>
286  <td style="width: 20pt;"></td>
287  <td style="padding: 2px;">
288  <button type="button" <?= $btn_atr1 ?> onclick="return my.impdat();" id="impdat" data-toggle="popover" title="伝票インポート" data-content="指定されたCSVファイルを当該年度のデータとしてインポートします。">伝票インポート></button>
289  </td>
290  </tr>
291  </table>
292  </td>
293  </tr>
294 </table>
295 
296 <!-- モーダルダイアログ Import CSV-->
297 <div class="modal" id="modalImportCsv" tabindex="-1" role="dialog" aria-labelledby="staticModalLabel" aria-hidden="true" data-show="true" data-keyboard="false" data-backdrop="static">
298  <div class="modal-dialog">
299  <div class="modal-content">
300  <div class="modal-header">
301  <button type="button" class="close" data-dismiss="modal">
302  <span aria-hidden="true">&#215;</span>
303  </button>
304  <h4 class="modal-import-title">伝票インポート</h4>
305  </div>
306  <div class="modal-body">
307  <form action="<?= $base ?>" method="post" enctype="multipart/form-data">
308  <input type="hidden" name="func" value="UserMenu">
309  <input type="hidden" name="bid" value="<?= $bid ?>">
310  <input type="hidden" name="act" value="importCsv">
311  ファイル:<br>
312  <input type="file" name="upfile" size="30" /><br />
313  <br />
314  <input type="submit" value="インポート" />
315  </form>
316  </div>
317  <div class="modal-footer">
318  <button type="button" class="my_magenta" data-dismiss="modal">閉じる</button>
319  </div>
320  </div>
321  </div>
322 </div>