pg-mvc-service 2.0.45 → 2.0.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/models/TableDoc.js
CHANGED
|
@@ -9,7 +9,10 @@ const createTableDoc = (models, serviceName) => {
|
|
|
9
9
|
<head>
|
|
10
10
|
<meta charset="UTF-8">
|
|
11
11
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
12
|
-
|
|
12
|
+
<!--This icon made by Yuki Kuboyama.-->
|
|
13
|
+
<link rel="icon"
|
|
14
|
+
type="image/x-icon"
|
|
15
|
+
href="data:image/x-icon;base64,AAABAAEAAAAAAAEAIAB9DQAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAEAAAABAAgGAAAAXHKoZgAAAAFvck5UAc+id5oAAA03SURBVHja7d1bjF1VGQfwM9MLlRZtKQiYqAEFkRARsViwUBHsnFPffPFRfVKDwRijIBjjJVGkdC5tEQ2QqBCg9YIPmoIiVbm2M+cUOy2UXrDtnCnQzkyrdaYV2jl+29lGnpGcD53fJP+svn1nrb3Wb6+1+7AqlaS/Wr23yJm1gd7tkVZSmmWy6k9ETiTW3xoZy6pfHegdinY0sf8jyeO/eunAio6ugZ7KtPsDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/ucB6Gr0pqT6HwCeS3wA+8tk1T+WWLvItsjhRAAKfA8l9n8sefzXtFqttDXY1ej7FwBvTcrpXfXe82IS/D4GYk+0z7czZc0niyTVL9pnIrtqba5d1v9LtA9FNpf/zqj/xL/r18oxaWeidqMY/2rO+O+Nl+B3l+Wtv0jfmyvxQ55JyvYYiN9Wp7ahxVbsQJszErW3FEmqfyBq74v2xYzaZf//FO2OyMGE+gej/tOJ9Yvxfy5x/Iv+PxhtPfJswvor+n5rJXkL9Hw5GNP1CHA0Mpl8BDiUfATI3IaPZo5/ufuZSOz/2mwAdpYC+wjoI+C0+whYnXr7/z2x//cBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4vwBgd83loJnjP90vBy1qZ18OOp7Y//srr1oE7c4L5f3wfy7+nVS/uB++kVR/f3lPfDNx/DfUpq6Kzhr/gWpe/eHqFIBZ4188/4fKXXBG/Rej/u0AAAAApjkAjgCOAI4A0/gI4COgj4A+AvoICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACvLfXe5vLGqiKtjNQafbkA1Hu3xu8YS+w/AN4AALyclOORZ8s38PGM+l1P3Lpnydrr9yy576vHIy+3Oa9c+cub/lrd1H0sfssrGf1f9viKp5fcf/2BpP4fX/qrr/+l1t/zUtLzf7l8+RxLqv1KdaBnU23qduaM51/Ad08BwGRSCoF21Kbuhm+1u/7yel9r6QM3DZ208JShmXPntGbOmzPZzsx400mTCy46e/xjf/r+8XgTt338lzf6Wh++9yuDsxfMG03qf+u0y87fFwCOZDz/cgEcLPFJmf+xAxiI9kji+rt32h4BigVw5S9ubHaeNKtZqVRaGTnl3LdNfOyPN58IAFL6f/ndX97aOWvGWFb/F7z/7KEAwBHAN4A8AGbMmeYAzJ6ZCMA5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACA/z67IwcSAdgfC2B/GgDvOutYANBKBGBbx4zOQ1n9n3/R2c0A4FDi/Bur/eem3AwANkc7ntj/+wsAtiRla7Xe+5to/xAZbHv9et/gR379jYdP/cC7Hp5/4TsHI1vambdc8I4tb6tdsmnZY7c8HQC0f/wbfYNX/PxrDyy4+JzHkvo/+PZPXPa7AODRlOcfiQVY1H46af4PVgd61kW7MW39DfTeUgAwmpRC/uJ+9O3lv9tfv79nW/WplUUORUbbno3dw7WpO+pTxr/a3/N4/I7dkbGE/h/q2tg9WO4CxzLGIBbArsTxH4v6G6IdSur/4cgd2UeA4gG8lFh/ON6+w4n1j2ZuQYu3QIlvVv1mOfmz6o8mHwEab4QjwLT8CPiqCdhMrD+R+RGqBGAscQEMlYvQR0D/CwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOC1pt67e3mj78DyxqpWTvr2x+/YnzgG2ZeDbqslXg5azb4ctN47FvNgMmv+1Rp9m2tvgMtB9yWlueypWx+97Mdfaiy+87rm4ruu29fWRM3L7/lyf3VTT3+5C2h3/4diAeyIdm9t6k3Y9vGP+g9HBhPrbyzrt3/86337rtnwvS2L7/ri3rbPvan5N7Rk3Q3ro//bk8Z/OGqvqdRy7kYfjQdw6KMPfXtg9sJTtlc6O8Y6ZnSOtjOVjo6xeWefsXXZYyv+vQ3OGIdi4mfeT/94tLuT+l/UH6xOXRHf9vrLN68aWXTb53d2zp55sKOzvXPvX/OvUhk9fckFG6r9PfuSnv/hGPs78o4A9b5WALBr9vy5L8VgtDIy951vHQ4Ahh0Bpt8RIABoLVrzuWIxTmbNv9MuO79R6+9JPwJkArBz9oJ5LyYC0AwAfASchh8BSwBGAoATaQBcfn49AJimHwEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8ngDMevPJaQCc/PbTml1PrmwWkyEpE5ETifUHI2OJ9Ycioxm1P75lzeSi2z4/EvMgD4APvacA4Eg2AOMpqfcdvfqR7w6ecdX79iz84LlHFy46d7ytiZpnXvP+XR9c/bldl95+7dHIeEJGIkeSahd9HogMRyYy6i+6/dod0TZTxv9HXxi/8OufHFp46XlH2j73Iqde8u6Jcz599RPV/p4D5U6w3WvwWOzAflIAMJmUQqAd1Y0rX6g+tbIVmWxrNnW3rlh3w9DMuXOGOmbOaEUmEzIeOZ5Uu+jzYGQ0qf9FzX2RkYz6lY6OE6df/t6DXY+vON72uVema2P3QKyBvyWuv3sriduPIjsjL6acARt9rSt/cWNzxpxZzawtYGQicwsa2RoZS6w/FBlN24Ivfs9IdWP3icRvIPVop+k3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8Hrk+chLiQAMd86aOZy4AI5GJqc5AGn1F1563mgyAJujPZq4/tYVAKzKSnWg5zvRro80alMati/1vsZV67/14FnLLn7wjKve14jUE/JEpD+pdtHnn0U2JPW/qLk+rf7SC+vnfrb6SHVTd3/b595UGgHAD6NdkbT+Vkc+FQB8uyMjXZvvrlTrPWeWi38icqTNGY/sKDOeUL/Y+h0s74f/e0r/672boh1K6n9R/7nIvqT6R6L23mj/mjT+xZt/5UfrN3cuH7gpZQ1eveWbHQFAd07qPZHeAoDtiVug4TJZ9Qv4TiTW3xoZS6xf4DOaWH80efzXLBm4pSN2wilrsFrvrqT9xeJ/IwDQLAOAnDNwNgAjyeO/eunAio6uAGDa/QEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHg9ATirNnU7b9YDeKFMVv1/JNYu8kxt6nbcLACKi1kPJ/b/UPL43zZtAagGAJH5MQjdkXWR+9uctZHby6xNqF/kp5H7kmqvrU7dTX9XUv+L+j+I3Jk4/ncmjv/Pou+fWbrx5lQA/gn2NbzefianHwAAAABJRU5ErkJggg==" />
|
|
13
16
|
<title>table document</title>
|
|
14
17
|
</head>
|
|
15
18
|
<style>
|
|
@@ -202,6 +202,21 @@ class TableModel {
|
|
|
202
202
|
return;
|
|
203
203
|
}
|
|
204
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* 指定されたカラム情報がNULLの場合に、指定された値に変換して選択します。
|
|
207
|
+
*
|
|
208
|
+
* @param columnInfo カラム情報。文字列または{name: string, model: TableModel}のオブジェクト。
|
|
209
|
+
* @param toValue NULLの場合に変換する値。
|
|
210
|
+
* @param alias 結果セットで使用するエイリアス名。
|
|
211
|
+
*/
|
|
212
|
+
selectFromNullToValue(columnInfo, toValue, alias) {
|
|
213
|
+
this.vars.push(toValue);
|
|
214
|
+
if (typeof columnInfo === 'string') {
|
|
215
|
+
columnInfo = { name: columnInfo, model: this };
|
|
216
|
+
}
|
|
217
|
+
const column = columnInfo.model.getColumn(columnInfo.name);
|
|
218
|
+
this.selectExpressions.push(`COALESCE(${column.expression}, $${this.vars.length}) as "${alias}"`);
|
|
219
|
+
}
|
|
205
220
|
/**
|
|
206
221
|
* 指定された条件に基づいてテーブルを結合します。
|
|
207
222
|
* @param joinType 結合の種類を指定します
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pg-mvc-service",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.47",
|
|
4
4
|
"description": "",
|
|
5
5
|
"homepage": "https://github.com/n-daira/npm-pack_mvc-service#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -15,8 +15,7 @@
|
|
|
15
15
|
"type": "commonjs",
|
|
16
16
|
"main": "dist/index.js",
|
|
17
17
|
"scripts": {
|
|
18
|
-
"build": "rm -rf dist/* && tsc
|
|
19
|
-
"copy-assets": "copyfiles -u 2 src/assets/* dist/assets",
|
|
18
|
+
"build": "rm -rf dist/* && tsc",
|
|
20
19
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
21
20
|
},
|
|
22
21
|
"devDependencies": {
|
package/src/models/TableDoc.ts
CHANGED
|
@@ -8,7 +8,10 @@ export const createTableDoc = (models: Array<TableModel>, serviceName?: string)
|
|
|
8
8
|
<head>
|
|
9
9
|
<meta charset="UTF-8">
|
|
10
10
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
11
|
-
|
|
11
|
+
<!--This icon made by Yuki Kuboyama.-->
|
|
12
|
+
<link rel="icon"
|
|
13
|
+
type="image/x-icon"
|
|
14
|
+
href="data:image/x-icon;base64,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" />
|
|
12
15
|
<title>table document</title>
|
|
13
16
|
</head>
|
|
14
17
|
<style>
|
package/src/models/TableModel.ts
CHANGED
|
@@ -239,6 +239,24 @@ export class TableModel {
|
|
|
239
239
|
}
|
|
240
240
|
}
|
|
241
241
|
|
|
242
|
+
/**
|
|
243
|
+
* 指定されたカラム情報がNULLの場合に、指定された値に変換して選択します。
|
|
244
|
+
*
|
|
245
|
+
* @param columnInfo カラム情報。文字列または{name: string, model: TableModel}のオブジェクト。
|
|
246
|
+
* @param toValue NULLの場合に変換する値。
|
|
247
|
+
* @param alias 結果セットで使用するエイリアス名。
|
|
248
|
+
*/
|
|
249
|
+
public selectFromNullToValue(columnInfo: string | {name: string, model: TableModel}, toValue: any, alias: string) {
|
|
250
|
+
this.vars.push(toValue);
|
|
251
|
+
|
|
252
|
+
if (typeof columnInfo === 'string') {
|
|
253
|
+
columnInfo = {name: columnInfo, model: this}
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
const column = columnInfo.model.getColumn(columnInfo.name);
|
|
257
|
+
this.selectExpressions.push(`COALESCE(${column.expression}, $${this.vars.length}) as "${alias}"`)
|
|
258
|
+
}
|
|
259
|
+
|
|
242
260
|
/**
|
|
243
261
|
* 指定された条件に基づいてテーブルを結合します。
|
|
244
262
|
* @param joinType 結合の種類を指定します
|
package/dist/assets/favicon.ico
DELETED
|
Binary file
|
package/src/assets/favicon.ico
DELETED
|
Binary file
|