Browse Source

jsongen

main
cobb 4 years ago
parent
commit
201e8fee9b
  1. 1
      Dockerfile
  2. BIN
      jsongen
  3. 1
      package.json
  4. 14
      src/components/HelloWorld.vue

1
Dockerfile

@ -9,6 +9,7 @@ RUN yarn build
FROM nginx:alpine FROM nginx:alpine
COPY ./docker/nginx/default.conf /etc/nginx/conf.d/my.conf COPY ./docker/nginx/default.conf /etc/nginx/conf.d/my.conf
COPY ./jsongen /usr/bin/jsongen
COPY --from=builder /web/dist /usr/share/nginx/html COPY --from=builder /web/dist /usr/share/nginx/html
RUN cat /etc/nginx/nginx.conf RUN cat /etc/nginx/nginx.conf
RUN cat /etc/nginx/conf.d/my.conf RUN cat /etc/nginx/conf.d/my.conf

BIN
jsongen

Binary file not shown.

1
package.json

@ -13,6 +13,7 @@
"core-js": "^3.6.5", "core-js": "^3.6.5",
"element-ui": "^2.15.1", "element-ui": "^2.15.1",
"script-loader": "^0.7.2", "script-loader": "^0.7.2",
"shelljs": "^0.8.5",
"sql-ddl-to-json-schema": "^4.0.4", "sql-ddl-to-json-schema": "^4.0.4",
"vue": "^2.6.11", "vue": "^2.6.11",
"vue-json-editor": "^1.4.3", "vue-json-editor": "^1.4.3",

14
src/components/HelloWorld.vue

@ -51,6 +51,7 @@
<script> <script>
import vueJsonEditor from "vue-json-editor"; import vueJsonEditor from "vue-json-editor";
import { Parser } from "sql-ddl-to-json-schema"; import { Parser } from "sql-ddl-to-json-schema";
import exec from "shelljs";
export default { export default {
name: "HelloWorld", name: "HelloWorld",
components: { vueJsonEditor }, components: { vueJsonEditor },
@ -143,6 +144,15 @@ export default {
return kv[str]; return kv[str];
} }
const si = this.sqlinput;
console.log("si:", si);
var process = exec(`jsongen -i "${si}"`);
if (process.code !== 0) {
console.log("process code error: " + process.code);
}
const gorminfo = process.stdout;
console.log("gorminfo: ", gorminfo);
const requires = v.required; const requires = v.required;
const properties = v.properties; const properties = v.properties;
const tableName = toCamelCase(v.title); const tableName = toCamelCase(v.title);
@ -155,7 +165,7 @@ export default {
primary = skey; primary = skey;
} }
}); });
var primaryLower = lowerCase(primary)
var primaryLower = lowerCase(primary);
var enumUpdate = ``; var enumUpdate = ``;
var enumdefine = ``; var enumdefine = ``;
var paramsheader = ` var paramsheader = `
@ -311,7 +321,6 @@ export default {
var filtertail = `}} var filtertail = `}}
return opt}`; return opt}`;
Object.keys(properties).forEach(function (key) { Object.keys(properties).forEach(function (key) {
const o = properties[key]; const o = properties[key];
const skey = toCamelCase(key); const skey = toCamelCase(key);
@ -440,6 +449,7 @@ export default {
} }
}); });
this.output = this.output =
gorminfo +
enumdefine + enumdefine +
enumUpdate + enumUpdate +
paramsheader + paramsheader +

Loading…
Cancel
Save