Ver código fonte

Add to bom working

master
rpm-mcarman 2 anos atrás
pai
commit
0445f77534
6 arquivos alterados com 35 adições e 15 exclusões
  1. +2
    -2
      app/api/BOM/NewBomItem.json
  2. +8
    -0
      public/dmxAppConnect/dmxBootstrap5Toasts/dmxBootstrap5Toasts.js
  3. +8
    -0
      public/dmxAppConnect/dmxSockets/dmxSockets.js
  4. +11
    -11
      views/dspec.ejs
  5. +3
    -2
      views/index.ejs
  6. +3
    -0
      views/layouts/main.ejs

+ 2
- 2
app/api/BOM/NewBomItem.json Ver arquivo

@@ -43,7 +43,7 @@
"module": "api",
"action": "send",
"options": {
"url": "http://localhost:8080/api/v1.0/boms/wapplerinsert",
"url": "http://vapor.prelub.com/api/v1.0/boms/wapplerinsert",
"method": "POST",
"schema": [
{
@@ -122,7 +122,7 @@
"id": null,
"old": "{{$_POST.newbomold}}",
"createdate": "2023-11-14T12:51:06Z",
"designspecid": "26259{{$_POST.bomdspecid}}",
"designspecid": "{{$_POST.bomdspecid}}",
"createuserid": "-1",
"new": "{{$_POST.newbomnew}}",
"updateuserid": "-1",


+ 8
- 0
public/dmxAppConnect/dmxBootstrap5Toasts/dmxBootstrap5Toasts.js Ver arquivo

@@ -0,0 +1,8 @@
/*!
DMXzone Bootstrap 5 Toasts
Version: 1.0.1
(c) 2021 DMXzone.com
@build 2021-06-07 16:21:31
*/
dmx.bs5toast={defaults:{iconType:"image",position:"top",align:"right","offset-x":15,"offset-y":15,"z-index":1e4,"min-width":240,"max-width":350,animation:!0,autohide:!0,closable:!0,delay:5e3},container:null,setup:function(t){t=Object.assign(dmx.bs5toast.defaults,t),dmx.bs5toast.container||(dmx.bs5toast.container=document.createElement("div"),document.body.appendChild(dmx.bs5toast.container));var e=dmx.bs5toast.container;e.style.removeProperty("top"),e.style.removeProperty("left"),e.style.removeProperty("right"),e.style.removeProperty("bottom"),e.style.removeProperty("max-width"),e.style.setProperty("position","fixed"),e.style.setProperty("z-index",t["z-index"]),e.style.setProperty(t.align,t["offset-x"]+"px"),e.style.setProperty(t.position,t["offset-y"]+"px"),t["max-width"]&&e.style.setProperty("max-width",t["max-width"]+"px")},clear:function(){dmx.bs5toast.container&&(dmx.bs5toast.container.textContent="")},show:function(t){t=Object.assign({},dmx.bs5toast.defaults,t),dmx.bs5toast.container||dmx.bs5toast.setup();var e=dmx.bs5toast.create(t);dmx.bs5toast.container.appendChild(e);var s=new bootstrap.Toast(e,t);e.addEventListener("hidden.bs.toast",function(){dmx.bs5toast.container.removeChild(e)}),s.show()},create:function(t){var e='<div class="toast"'+(t["min-width"]?' style="min-width: '+t["min-width"]+'px"':"")+' role="alert" aria-live="assertive" aria-atomic="true" data-bs-delay="'+(t.delay||this.props.delay)+'">';if(t.icon||t.title||t.subtitle||t.closable){if(e+='<div class="toast-header">',t.icon)switch(t.iconType){case"fontawesome":e+='<i class="'+t.icon+' me-2"></i>';break;default:e+='<img src="'+t.icon+'" height="20" class="rounded me-2" alt="'+(t.alt||"")+'">'}e+='<strong class="me-auto">'+(t.title||"")+"</strong>",t.subtitle&&(e+='<small class="text-muted">'+t.subtitle+"</small>"),t.closable&&(e+='<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>'),e+="</div>"}e+='<div class="toast-body">'+(t.message||"")+"</div>",e+="</div>";var s=document.createElement("div");return s.innerHTML=e,s.firstChild}},dmx.Actions({"toast.setup":function(t){dmx.bs5toast.setup(this.parse(t))},"toast.show":function(t){dmx.bs5toast.show(this.parse(t))},"toast.clear":function(){dmx.bs5toast.clear()}}),dmx.Component("bs5-toasts",{attributes:{position:{type:String,default:"top"},align:{type:String,default:"right"},"offset-x":{type:Number,default:15},"offset-y":{type:Number,default:15},"min-width":{type:Number,default:240},"max-width":{type:Number,default:350},"z-index":{type:Number,default:1e4},delay:{type:Number,default:5e3}},methods:{clear:function(){this.clear()},show:function(t){this.show(t)}},render:function(t){this.update({})},update:function(t){dmx.equal(t,this.props)||dmx.bs5toast.setup(this.props)},clear:function(){dmx.bs5toast.clear()},show:function(t){dmx.bs5toast.show(t)}});
//# sourceMappingURL=../maps/dmxBootstrap5Toasts.js.map

+ 8
- 0
public/dmxAppConnect/dmxSockets/dmxSockets.js Ver arquivo

@@ -0,0 +1,8 @@
/*!
DMXzone Sockets
Version: 1.0.2
(c) 2022 Wappler.io
@build 2022-03-29 15:16:24
*/
dmx.__sockets={},dmx.Socket=function(t,e,n,o){t=t||"/",e=dmx.extend(!0,{transports:["websocket"]},e);var s=dmx.__sockets[t];if(!s){var c="",i=document.querySelector('[src$="socket.io/socket.io.js"]');if(i)c=i.getAttribute("src").replace(/\/?socket\.io\/socket\.io\.js$/,"");s=io(c+t,e),"websocket"==e.transports[0]&&s.on("reconnect_attempt",(function(){s.io.opts.transports=["polling","websocket"]})),dmx.__sockets[t]=s}return n&&Object.keys(n).forEach((function(t){s.on(t,(function(e,s){dmx.Flow.run(n[t],new dmx.DataScope({$param:e},o)).then((function(t){"function"==typeof s&&s(t)}))}))})),s},dmx.Actions({"sockets.emit":function(t){t=this.parse(t),dmx.Socket(t.namespace||"/").emit(t.eventName,t.params)},"sockets.request":function(t){return t=this.parse(t),new Promise((function(e){dmx.Socket(t.namespace||"/").emit(t.eventName,t.params,e)}))}}),dmx.Component("socket",{initialData:{id:null,connected:!1,disconnected:!0},attributes:{namespace:{type:String,default:"/"},options:{type:Object,default:{}}},methods:{emit:function(t,e){this.socket.emit(t,e)},connect:function(){this.socket.connect()},request:function(t,e){var n=this.socket;return new Promise((function(o){n.emit(t,e,o)}))}},events:{connect:Event,disconnect:Event,connect_error:Event,message:Event},message:function(t,e){this.dispatchEvent("message",{},e,t)},trigger:function(t){this.set("id",this.socket.id),this.set("connected",this.socket.connected),this.set("disconnected",this.socket.disconnected),this.dispatchEvent(t)},render:function(t){if(t.textContent)try{this.cfg=(window.Hjson?Hjson:JSON).parse(t.textContent)}catch(e){console.error(e),dmx.debug&&console.debug(t.textContent)}this.onConnect=this.trigger.bind(this,"connect"),this.onDisconnect=this.trigger.bind(this,"disconnect"),this.onConnectError=this.trigger.bind(this,"connect_error"),this.onMessage=this.message.bind(this),this.socket=dmx.Socket(this.props.namespace,this.props.options,this.cfg,this),this.socket.on("connect",this.onConnect),this.socket.on("disconnect",this.onDisconnect),this.socket.on("connect_error",this.onConnectError),this.socket.onAny(this.onMessage)},destroyed:function(){this.socket.off("connect",this.onConnect),this.socket.off("disconnect",this.onDisconnect),this.socket.off("connect_error",this.onConnectError),this.socket.offAny(this.onMessage)}});
//# sourceMappingURL=../maps/dmxSockets.js.map

+ 11
- 11
views/dspec.ejs Ver arquivo

@@ -1,4 +1,4 @@
<!-- Wappler include head-page="layouts/main" fontawesome_5="cdn" bootstrap5="local" is="dmx-app" id="dspec" appconnect="local" components="{dmxTyped:{},dmxStateManagement:{},dmxBootstrap5Modal:{},dmxFormatter:{},dmxValidator:{},dmxScheduler:{},dmxDataTraversal:{},dmxBootstrap5TableGenerator:{},dmxBootstrap5Navigation:{}}" -->
<!-- Wappler include head-page="layouts/main" fontawesome_5="cdn" bootstrap5="local" is="dmx-app" id="dspec" appconnect="local" components="{dmxTyped:{},dmxStateManagement:{},dmxBootstrap5Modal:{},dmxFormatter:{},dmxValidator:{},dmxScheduler:{},dmxDataTraversal:{},dmxBootstrap5TableGenerator:{},dmxBootstrap5Navigation:{},dmxSockets:{}}" -->
<dmx-api-action id="api_deleteItem" noload="true" url="http://vapor.prelub.com/api/v1.0/boms/" dmx-bind:url="'http://vapor.prelub.com/api/v1.0/boms/'+frm_updatebom.repeat1[0].id" method="delete"></dmx-api-action>
<dmx-api-action id="api_getcodebyid" noload="true" url="http://vapor.prelub.com/api/v1.0/partcodes/" dmx-bind:url="'http://vapor.prelub.com/api/v1.0/partcodes/'+modal1.txt_parentid.value"></dmx-api-action>
<dmx-api-action id="api_bom" noload="true"></dmx-api-action>
@@ -41,7 +41,7 @@
</div>
<div class="modal-footer">
<button type="button" class="btn btn-danger" data-bs-dismiss="modal" id="btn_closenewpar">Cancel</button>
<button type="button" class="btn btn-primary" dmx-on:click="txt_partnumber.setValue(sel_parttypes.value.concat(sel_nonproductionparts.value.concat(hdn_newpn.value)));txt_rev.setValue(hdn_zeroo.value);modal1.hide()">Save changes</button>
<button type="button" class="btn btn-primary" dmx-on:click="txt_partnumber.setValue(sel_parttypes.value.concat('-'.concat(sel_nonproductionparts.value.concat('-'.concat(api_maxpn.data.number)))));txt_rev.setValue(hdn_zeroo.value);modal1.hide()">Save changes</button>
</div>
</div>
</div>
@@ -71,24 +71,24 @@
<div class="row">
<div class="col">
<div class="form-group mb-3 row">
<label for="input3" class="col-sm-2 col-form-label">Effective Date</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="input3" name="input3" aria-describedby="input3_help" placeholder="Enter some text" dmx-bind:value="api1.data.partnumber.createdate">
<label for="input3" class="col-sm-2 col-form-label" style="width: 35%">Effective Date</label>
<div class="col-sm-10" style="width: 40%">
<input type="date" class="form-control" id="input3" name="input3" aria-describedby="input3_help" placeholder="Enter some text" dmx-bind:value="api1.data.partnumber.createdate">
</div>
</div>
</div>
<div class="col">
<div class="form-group mb-3 row">
<label for="input2" class="col-sm-2 col-form-label">Work Instruction</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="input2" name="input2" aria-describedby="input2_help" placeholder="Enter some text" width="20%" dmx-bind:value="api1.data.workinstruction">
<label for="input2" class="col-sm-2 col-form-label" style="width: 40%;">Work Instruction</label>
<div class="col-sm-10" style="width: 30%;">
<input type="text" class="form-control" id="input2" name="input2" aria-describedby="input2_help" width="20%" dmx-bind:value="api1.data.workinstruction">
</div>
</div>
</div>
<div class="col">
<div class="form-group mb-3 row">
<label for="input1" class="col-sm-2 col-form-label">Application</label>
<div class="col-sm-10">
<label for="input1" class="col-sm-2 col-form-label" style="width: 30%;">Application</label>
<div class="col-sm-10" style="width: 60%;">
<input type="text" class="form-control" id="input1" name="input1" aria-describedby="input1_help" placeholder="Enter some text" dmx-bind:value="api1.data.application">
</div>
</div>
@@ -175,7 +175,7 @@
<td style="width: 10%"><input id="txt_newoldbom" name="newbomold" type="text" class="form-control"></td>
<td style="width: 10%"><input id="txt_newnewbom" name="newbomnew" type="text" class="form-control"></td>
<td style="width: 5%">
<button id="btn_savenewbomitem" class="btn btn-primary" type="submit">Add</button>
<button id="btn_savenewbomitem" class="btn btn-primary" type="submit" dmx-on:click="">Add</button>

</td>
</tr>


+ 3
- 2
views/index.ejs Ver arquivo

@@ -1,5 +1,6 @@
<!-- Wappler include head-page="layouts/main" fontawesome_5="cdn" bootstrap5="local" is="dmx-app" id="index" appConnect="local" components="{dmxDataTraversal:{},dmxTyped:{},dmxFormatter:{},dmxStateManagement:{},dmxBrowser:{},dmxBootstrap5TableGenerator:{}}" -->
<dmx-api-action id="api1" noload="true" dmx-bind:url="'http://vapor.prelub.com/api/v1.0/partnumbers/num/'+txt_partNumber.value"></dmx-api-action>
<!-- Wappler include head-page="layouts/main" fontawesome_5="cdn" bootstrap5="local" is="dmx-app" id="index" appConnect="local" components="{dmxDataTraversal:{},dmxTyped:{},dmxFormatter:{},dmxStateManagement:{},dmxBrowser:{},dmxBootstrap5TableGenerator:{},dmxNotifications:{},dmxBootstrap5Toasts:{}}" -->
<dmx-notifications id="notifies1" align="full"></dmx-notifications>
<dmx-api-action id="api1" noload="true" dmx-bind:url="'http://vapor.prelub.com/api/v1.0/partnumbers/num/'+txt_partNumber.value" dmx-on:error="notifies1.warning('No Records Found');hdn_partid.setValue();txt_partNumber.setValue();txt_description.setValue();select1.setValue();txt_replaces.setValue();txt_replacedby.setValue();txt_primaryvendor.setValue();txt_secondaryvendor.setValue();txt_partNumber.focus()" dmx-on:invalid="notifies1.warning('Invalid')"></dmx-api-action>





+ 3
- 0
views/layouts/main.ejs Ver arquivo

@@ -27,6 +27,9 @@
<link rel="stylesheet" href="/dmxAppConnect/dmxBootstrap5TableGenerator/dmxBootstrap5TableGenerator.css" />
<script src="/dmxAppConnect/dmxBootstrap5Modal/dmxBootstrap5Modal.js" defer></script>
<script src="/dmxAppConnect/dmxScheduler/dmxScheduler.js" defer></script>
<script src="/dmxAppConnect/dmxBootstrap5Toasts/dmxBootstrap5Toasts.js" defer></script>
<script src="/socket.io/socket.io.js" defer></script>
<script src="/dmxAppConnect/dmxSockets/dmxSockets.js" defer></script>
</head>

<body is="dmx-app" id="main">


Carregando…
Cancelar
Salvar