diff --git a/PDA/PDA/components/TaskCard.vue b/PDA/PDA/components/TaskCard.vue new file mode 100644 index 0000000..7b4897e --- /dev/null +++ b/PDA/PDA/components/TaskCard.vue @@ -0,0 +1,98 @@ + + + + + \ No newline at end of file diff --git a/PDA/PDA/pages.json b/PDA/PDA/pages.json index e635828..d7a734f 100644 --- a/PDA/PDA/pages.json +++ b/PDA/PDA/pages.json @@ -68,6 +68,13 @@ { "navigationBarTitleText" : "智慧物流系统-货架送回" } + }, + { + "path" : "pages/agvTasks/agvTasks", + "style" : + { + "navigationBarTitleText" : "智慧物流系统-任务管理" + } } ], "globalStyle": { diff --git a/PDA/PDA/pages/agvTasks/agvTasks.vue b/PDA/PDA/pages/agvTasks/agvTasks.vue new file mode 100644 index 0000000..a1ee413 --- /dev/null +++ b/PDA/PDA/pages/agvTasks/agvTasks.vue @@ -0,0 +1,501 @@ + + + + + \ No newline at end of file diff --git a/PDA/PDA/pages/main/main.vue b/PDA/PDA/pages/main/main.vue index 0cf1a82..7537131 100644 --- a/PDA/PDA/pages/main/main.vue +++ b/PDA/PDA/pages/main/main.vue @@ -57,10 +57,12 @@ - - - - 任务管理 + + + + + 任务管理 + @@ -76,18 +78,10 @@ - + - + diff --git a/PDA/PDA/pages/queryBindList/queryBindList.vue b/PDA/PDA/pages/queryBindList/queryBindList.vue index 00a565d..fb5e58a 100644 --- a/PDA/PDA/pages/queryBindList/queryBindList.vue +++ b/PDA/PDA/pages/queryBindList/queryBindList.vue @@ -542,7 +542,7 @@ } .scroll-view { - height: 75vh; + height: 81vh; } .popup-content { diff --git a/PDA/PDA/unpackage/dist/dev/app-plus/app-config-service.js b/PDA/PDA/unpackage/dist/dev/app-plus/app-config-service.js index d676b53..05e6540 100644 --- a/PDA/PDA/unpackage/dist/dev/app-plus/app-config-service.js +++ b/PDA/PDA/unpackage/dist/dev/app-plus/app-config-service.js @@ -2,7 +2,7 @@ ;(function(){ let u=void 0,isReady=false,onReadyCallbacks=[],isServiceReady=false,onServiceReadyCallbacks=[]; const __uniConfig = {"pages":[],"globalStyle":{"backgroundColor":"#F8F8F8","navigationBar":{"backgroundColor":"#F8F8F8","titleText":"智慧物流系统-移动端","type":"default","titleColor":"#000000"},"isNVue":false},"nvue":{"compiler":"uni-app","styleCompiler":"uni-app","flex-direction":"column"},"renderer":"auto","appname":"PDA","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":true},"compilerVersion":"4.45","entryPagePath":"pages/index/index","entryPageQuery":"","realEntryPagePath":"","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000},"locales":{},"darkmode":false,"themeConfig":{}}; - const __uniRoutes = [{"path":"pages/index/index","meta":{"isQuit":true,"isEntry":true,"navigationBar":{"titleText":"智慧物流系统-登录","type":"default"},"isNVue":false}},{"path":"pages/config/config","meta":{"navigationBar":{"titleText":"智慧物流系统-用户配置","type":"default"},"isNVue":false}},{"path":"pages/main/main","meta":{"navigationBar":{"titleText":"智慧物流系统-主页","type":"default"},"isNVue":false}},{"path":"pages/bind/bind","meta":{"navigationBar":{"titleText":"智慧物流系统-物料绑定","type":"default"},"isNVue":false}},{"path":"pages/bindSelectMat/bindSelectMat","meta":{"navigationBar":{"titleText":"智慧物流系统-物料绑定选择物料","type":"default"},"isNVue":false}},{"path":"pages/queryBindList/queryBindList","meta":{"navigationBar":{"titleText":"智慧物流系统-绑定查询","type":"default"},"isNVue":false}},{"path":"pages/stockTaking/stockTaking","meta":{"navigationBar":{"titleText":"智慧物流系统-库存盘点","type":"default"},"isNVue":false}},{"path":"pages/shelfLocationBindUnbind/shelfLocationBindUnbind","meta":{"navigationBar":{"titleText":"智慧物流系统-货架位置绑定解绑","type":"default"},"isNVue":false}},{"path":"pages/productionLineCallIn/productionLineCallIn","meta":{"navigationBar":{"titleText":"智慧物流系统-产线呼叫","type":"default"},"isNVue":false}},{"path":"pages/productionLineCallOut/productionLineCallOut","meta":{"navigationBar":{"titleText":"智慧物流系统-货架送回","type":"default"},"isNVue":false}}].map(uniRoute=>(uniRoute.meta.route=uniRoute.path,__uniConfig.pages.push(uniRoute.path),uniRoute.path='/'+uniRoute.path,uniRoute)); + const __uniRoutes = [{"path":"pages/index/index","meta":{"isQuit":true,"isEntry":true,"navigationBar":{"titleText":"智慧物流系统-登录","type":"default"},"isNVue":false}},{"path":"pages/config/config","meta":{"navigationBar":{"titleText":"智慧物流系统-用户配置","type":"default"},"isNVue":false}},{"path":"pages/main/main","meta":{"navigationBar":{"titleText":"智慧物流系统-主页","type":"default"},"isNVue":false}},{"path":"pages/bind/bind","meta":{"navigationBar":{"titleText":"智慧物流系统-物料绑定","type":"default"},"isNVue":false}},{"path":"pages/bindSelectMat/bindSelectMat","meta":{"navigationBar":{"titleText":"智慧物流系统-物料绑定选择物料","type":"default"},"isNVue":false}},{"path":"pages/queryBindList/queryBindList","meta":{"navigationBar":{"titleText":"智慧物流系统-绑定查询","type":"default"},"isNVue":false}},{"path":"pages/stockTaking/stockTaking","meta":{"navigationBar":{"titleText":"智慧物流系统-库存盘点","type":"default"},"isNVue":false}},{"path":"pages/shelfLocationBindUnbind/shelfLocationBindUnbind","meta":{"navigationBar":{"titleText":"智慧物流系统-货架位置绑定解绑","type":"default"},"isNVue":false}},{"path":"pages/productionLineCallIn/productionLineCallIn","meta":{"navigationBar":{"titleText":"智慧物流系统-产线呼叫","type":"default"},"isNVue":false}},{"path":"pages/productionLineCallOut/productionLineCallOut","meta":{"navigationBar":{"titleText":"智慧物流系统-货架送回","type":"default"},"isNVue":false}},{"path":"pages/agvTasks/agvTasks","meta":{"navigationBar":{"titleText":"智慧物流系统-任务管理","type":"default"},"isNVue":false}}].map(uniRoute=>(uniRoute.meta.route=uniRoute.path,__uniConfig.pages.push(uniRoute.path),uniRoute.path='/'+uniRoute.path,uniRoute)); __uniConfig.styles=[];//styles __uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}}); __uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}}); diff --git a/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js b/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js index 101593d..8ec5370 100644 --- a/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js +++ b/PDA/PDA/unpackage/dist/dev/app-plus/app-service.js @@ -159,7 +159,7 @@ if (uni.restoreGlobal) { } return target; }; - const _sfc_main$f = { + const _sfc_main$h = { data() { return { title: "登录", @@ -235,7 +235,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ vue.createElementVNode("navigator", { url: "../config/config", @@ -321,8 +321,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesIndexIndex = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$e], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/index/index.vue"]]); - const _sfc_main$e = { + const PagesIndexIndex = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$g], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/index/index.vue"]]); + const _sfc_main$g = { data() { return { serverIP: "", @@ -344,7 +344,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "container" }, [ vue.createElementVNode("view", null, [ vue.createElementVNode("label", null, "服务器IP:"), @@ -381,7 +381,7 @@ if (uni.restoreGlobal) { }, "保存配置") ]); } - const PagesConfigConfig = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$d], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/config/config.vue"]]); + const PagesConfigConfig = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$f], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/config/config.vue"]]); const _imports_0$1 = "/static/logOut.png"; const _imports_1 = "/static/bind.png"; const _imports_2 = "/static/bindQuery.png"; @@ -390,13 +390,13 @@ if (uni.restoreGlobal) { const _imports_5 = "/static/stockTaking.png"; const _imports_6 = "/static/task.png"; const _imports_7 = "/static/shelfLocation.png"; - const _sfc_main$d = { + const _sfc_main$f = { data() { return {}; }, methods: {} }; - function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ vue.createElementVNode("view", null, [ vue.createElementVNode("navigator", { @@ -522,16 +522,21 @@ if (uni.restoreGlobal) { class: "uni-flex uni-column", style: { "flex": "5" } }, [ - vue.createElementVNode("view", { - class: "uni-flex uni-row", - style: { "-webkit-justify-content": "center", "justify-content": "center" } + vue.createElementVNode("navigator", { + url: "../agvTasks/agvTasks", + "hover-class": "navigator-hover" }, [ - vue.createElementVNode("image", { - class: "function-image", - src: _imports_6 - }) - ]), - vue.createElementVNode("view", { class: "function-text" }, "任务管理") + vue.createElementVNode("view", { + class: "uni-flex uni-row", + style: { "-webkit-justify-content": "center", "justify-content": "center" } + }, [ + vue.createElementVNode("image", { + class: "function-image", + src: _imports_6 + }) + ]), + vue.createElementVNode("view", { class: "function-text" }, "任务管理") + ]) ]), vue.createElementVNode("view", { style: { "flex": "1" } }) ]), @@ -560,21 +565,17 @@ if (uni.restoreGlobal) { vue.createElementVNode("view", { class: "uni-flex uni-column", style: { "flex": "5" } - }, [ - vue.createCommentVNode(' \r\n \r\n \r\n \r\n 库存盘点\r\n ') - ]), + }), vue.createElementVNode("view", { class: "uni-flex uni-column", style: { "flex": "5" } - }, [ - vue.createCommentVNode(' \r\n \r\n \r\n 任务管理 ') - ]), + }), vue.createElementVNode("view", { style: { "flex": "1" } }) ]) ]); } - const PagesMainMain = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$c], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/main/main.vue"]]); - const _sfc_main$c = { + const PagesMainMain = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$e], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/main/main.vue"]]); + const _sfc_main$e = { data() { return { visible: false, @@ -660,7 +661,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) { return $data.visible ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "popup-container" @@ -691,9 +692,9 @@ if (uni.restoreGlobal) { ]) ])) : vue.createCommentVNode("v-if", true); } - const PagesBindSelectMatBindSelectMat = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$b], ["__scopeId", "data-v-68e7b952"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/bindSelectMat/bindSelectMat.vue"]]); + const PagesBindSelectMatBindSelectMat = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$d], ["__scopeId", "data-v-68e7b952"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/bindSelectMat/bindSelectMat.vue"]]); const _imports_0 = "/static/scan.png"; - const _sfc_main$b = { + const _sfc_main$d = { components: { bindSelectMat: PagesBindSelectMatBindSelectMat }, @@ -986,7 +987,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) { const _component_bindSelectMat = vue.resolveComponent("bindSelectMat"); return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ vue.createVNode(_component_bindSelectMat, { @@ -1183,7 +1184,7 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesBindBind = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$a], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/bind/bind.vue"]]); + const PagesBindBind = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$c], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/bind/bind.vue"]]); class MPAnimation { constructor(options, _this) { this.options = options; @@ -1294,7 +1295,7 @@ if (uni.restoreGlobal) { clearTimeout(_this.timer); return new MPAnimation(option, _this); } - const _sfc_main$a = { + const _sfc_main$c = { name: "uniTransition", emits: ["click", "change"], props: { @@ -1541,7 +1542,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) { return $data.isShow ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, ref: "ani", @@ -1553,8 +1554,8 @@ if (uni.restoreGlobal) { vue.renderSlot(_ctx.$slots, "default") ], 14, ["animation"])) : vue.createCommentVNode("v-if", true); } - const __easycom_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$9], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/uni_modules/uni-transition/components/uni-transition/uni-transition.vue"]]); - const _sfc_main$9 = { + const __easycom_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$b], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/uni_modules/uni-transition/components/uni-transition/uni-transition.vue"]]); + const _sfc_main$b = { name: "uniPopup", components: {}, emits: ["change", "maskClick"], @@ -1882,7 +1883,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) { const _component_uni_transition = resolveEasycom(vue.resolveDynamicComponent("uni-transition"), __easycom_0$1); return $data.showPopup ? (vue.openBlock(), vue.createElementBlock( "view", @@ -1942,8 +1943,8 @@ if (uni.restoreGlobal) { /* CLASS */ )) : vue.createCommentVNode("v-if", true); } - const __easycom_0 = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$8], ["__scopeId", "data-v-4dd3c44b"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/uni_modules/uni-popup/components/uni-popup/uni-popup.vue"]]); - const _sfc_main$8 = { + const __easycom_0 = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$a], ["__scopeId", "data-v-4dd3c44b"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/uni_modules/uni-popup/components/uni-popup/uni-popup.vue"]]); + const _sfc_main$a = { __name: "Card", props: { item: { @@ -1967,7 +1968,7 @@ if (uni.restoreGlobal) { return __returned__; } }; - function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "card" }, [ vue.createElementVNode("view", { class: "card-header" }, [ vue.createElementVNode( @@ -2068,8 +2069,8 @@ if (uni.restoreGlobal) { ]) ]); } - const Card = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$7], ["__scopeId", "data-v-29c414df"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/components/Card.vue"]]); - const _sfc_main$7 = { + const Card = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$9], ["__scopeId", "data-v-29c414df"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/components/Card.vue"]]); + const _sfc_main$9 = { name: "uniPopup", components: {}, emits: ["change", "maskClick"], @@ -2422,7 +2423,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) { const _component_uni_transition = resolveEasycom(vue.resolveDynamicComponent("uni-transition"), __easycom_0$1); return $data.showPopup ? (vue.openBlock(), vue.createElementBlock( "view", @@ -2482,8 +2483,8 @@ if (uni.restoreGlobal) { /* CLASS */ )) : vue.createCommentVNode("v-if", true); } - const uniPopup = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$6], ["__scopeId", "data-v-7db519c7"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/node_modules/@dcloudio/uni-ui/lib/uni-popup/uni-popup.vue"]]); - const _sfc_main$6 = { + const uniPopup = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$8], ["__scopeId", "data-v-7db519c7"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/node_modules/@dcloudio/uni-ui/lib/uni-popup/uni-popup.vue"]]); + const _sfc_main$8 = { components: { uniPopup, Card @@ -2803,7 +2804,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) { const _component_uni_popup = resolveEasycom(vue.resolveDynamicComponent("uni-popup"), __easycom_0); const _component_Card = vue.resolveComponent("Card"); return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ @@ -2984,8 +2985,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesQueryBindListQueryBindList = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/queryBindList/queryBindList.vue"]]); - const _sfc_main$5 = { + const PagesQueryBindListQueryBindList = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$7], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/queryBindList/queryBindList.vue"]]); + const _sfc_main$7 = { __name: "StocktakingCard", props: { item: { @@ -3009,7 +3010,7 @@ if (uni.restoreGlobal) { return __returned__; } }; - function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", null, [ vue.createElementVNode("view", { class: "card-header" }, [ vue.createElementVNode( @@ -3123,8 +3124,8 @@ if (uni.restoreGlobal) { ]) ]); } - const StocktakingCard = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$4], ["__scopeId", "data-v-e2c0cdac"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/components/StocktakingCard.vue"]]); - const _sfc_main$4 = { + const StocktakingCard = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$6], ["__scopeId", "data-v-e2c0cdac"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/components/StocktakingCard.vue"]]); + const _sfc_main$6 = { components: { uniPopup, StocktakingCard @@ -3368,7 +3369,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) { const _component_uni_popup = resolveEasycom(vue.resolveDynamicComponent("uni-popup"), __easycom_0); const _component_StocktakingCard = vue.resolveComponent("StocktakingCard"); return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ @@ -3560,8 +3561,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesStockTakingStockTaking = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$3], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/stockTaking/stockTaking.vue"]]); - const _sfc_main$3 = { + const PagesStockTakingStockTaking = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/stockTaking/stockTaking.vue"]]); + const _sfc_main$5 = { data() { return { //初始化 @@ -3824,7 +3825,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ vue.createElementVNode("view", { class: "diy-flex-row" }, [ vue.createElementVNode("view", { style: { "flex": "3" } }, [ @@ -3959,8 +3960,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesShelfLocationBindUnbindShelfLocationBindUnbind = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$2], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/shelfLocationBindUnbind/shelfLocationBindUnbind.vue"]]); - const _sfc_main$2 = { + const PagesShelfLocationBindUnbindShelfLocationBindUnbind = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$4], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/shelfLocationBindUnbind/shelfLocationBindUnbind.vue"]]); + const _sfc_main$4 = { components: { uniPopup, Card @@ -4259,7 +4260,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) { const _component_uni_popup = resolveEasycom(vue.resolveDynamicComponent("uni-popup"), __easycom_0); const _component_Card = vue.resolveComponent("Card"); return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ @@ -4398,8 +4399,8 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesProductionLineCallInProductionLineCallIn = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$1], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/productionLineCallIn/productionLineCallIn.vue"]]); - const _sfc_main$1 = { + const PagesProductionLineCallInProductionLineCallIn = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$3], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/productionLineCallIn/productionLineCallIn.vue"]]); + const _sfc_main$3 = { components: { uniPopup, Card @@ -4822,7 +4823,7 @@ if (uni.restoreGlobal) { } } }; - function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { + function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { const _component_uni_popup = resolveEasycom(vue.resolveDynamicComponent("uni-popup"), __easycom_0); const _component_Card = vue.resolveComponent("Card"); return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ @@ -5054,7 +5055,558 @@ if (uni.restoreGlobal) { ]) ]); } - const PagesProductionLineCallOutProductionLineCallOut = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/productionLineCallOut/productionLineCallOut.vue"]]); + const PagesProductionLineCallOutProductionLineCallOut = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$2], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/productionLineCallOut/productionLineCallOut.vue"]]); + const _sfc_main$2 = { + __name: "TaskCard", + props: { + item: { + type: Object, + required: true + }, + currentIndex: { + type: Number, + required: true + }, + cardData: { + type: Array, + required: true + } + }, + setup(__props, { expose: __expose }) { + __expose(); + const props = __props; + const __returned__ = { props, ref: vue.ref }; + Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); + return __returned__; + } + }; + function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { + return vue.openBlock(), vue.createElementBlock("view", { class: "card" }, [ + vue.createElementVNode("view", { class: "card-header" }, [ + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.matCode) + "  " + vue.toDisplayString($props.currentIndex + 1) + "/" + vue.toDisplayString($props.cardData.length), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "card-content" }, [ + vue.createElementVNode("view", { class: "content-item" }, [ + vue.createElementVNode("text", null, "AGV编号:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.agvCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "content-item" }, [ + vue.createElementVNode("text", null, "任务单号:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.taskCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "content-item" }, [ + vue.createElementVNode("text", null, "任务状态:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.taskStatusStr), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { + class: "content-item", + style: { "font-weight": "400" } + }, [ + vue.createElementVNode("text", null, "货架:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.shelfCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { + class: "content-item", + style: { "font-weight": "600", "color": "green" } + }, [ + vue.createElementVNode("text", null, "起点:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.startLocationCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { + class: "content-item", + style: { "font-weight": "600", "color": "firebrick" } + }, [ + vue.createElementVNode("text", null, "终点:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.startLocationCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "content-combined" }, [ + vue.createElementVNode("view", { + class: "content-item", + style: { "font-weight": "600", "color": "violet" } + }, [ + vue.createElementVNode("text", null, "人员:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.createUser), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "content-time" }, [ + vue.createElementVNode("text", null, "任务时间:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($props.item.createTime), + 1 + /* TEXT */ + ) + ]) + ]) + ]) + ]); + } + const TaskCard = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$1], ["__scopeId", "data-v-e5e76912"], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/components/TaskCard.vue"]]); + const _sfc_main$1 = { + components: { + uniPopup, + TaskCard + }, + setup() { + const { + proxy + } = vue.getCurrentInstance(); + const fixedInfo = { + taskId: 0, + taskCode: "", + shelfCode: "", + startLocationCode: "", + endLocationCode: "", + taskStatusStr: "", + buttonMode: "无法操作" + }; + const popup = vue.ref(null); + const inputValue = vue.ref(""); + const showPopup = (info) => { + fixedInfo.taskId = info.id; + fixedInfo.taskCode = info.taskCode; + fixedInfo.shelfCode = info.shelfCode; + fixedInfo.startLocationCode = info.startLocationCode; + fixedInfo.endLocationCode = info.endLocationCode; + fixedInfo.taskStatusStr = info.taskStatusStr; + if (info.taskStatusStr == "已创建" || info.taskStatusStr == "正在执行") { + fixedInfo.buttonMode = "取消任务"; + } else if (info.taskStatusStr == "取消完成") { + fixedInfo.buttonMode = "重新发送"; + } else { + fixedInfo.buttonMode = "无法操作"; + } + popup.value.open(); + }; + const hidePopup = () => { + popup.value.close(); + }; + const saveData = () => { + var url = ""; + var serverIPAndPort = getServerIPAndPort(); + if (fixedInfo.taskStatusStr == "已创建" || fixedInfo.taskStatusStr == "正在执行") { + url = "http://" + serverIPAndPort + "/agvTask/cancelAGVTask"; + } else if (fixedInfo.taskStatusStr == "取消完成") { + url = "http://" + serverIPAndPort + "/agvTask/resendAGVTask"; + } else { + return; + } + uni.request({ + url, + // 请求的接口地址 + method: "POST", + // 设置请求方式为 POST + data: { + "taskId": fixedInfo.taskId, + "taskCode": fixedInfo.taskCode, + "userName": getConfig("userName", "admin"), + "deviceType": "PDA" + }, + header: { + "Content-Type": "application/json" + // 如果需要以JSON格式发送数据 + }, + success: (res) => { + if (res.statusCode === 200) { + if (res.data.code == 200) { + hidePopup(); + uni.showToast({ + title: "操作成功!", + icon: "none", + duration: 2e3 + }); + proxy.analysisScanCode(); + } else { + uni.showToast({ + title: "操作失败:" + res.data.message, + icon: "none", + duration: 2500 + }); + } + } else { + uni.showToast({ + title: "服务器返回错误状态码" + res.statusCode, + icon: "none", + duration: 2500 + }); + } + }, + fail: (err) => { + uni.showToast({ + title: "请求失败" + err, + icon: "none", + duration: 2500 + }); + this.clear(); + }, + complete: (event) => { + } + }); + }; + return { + fixedInfo, + popup, + inputValue, + showPopup, + hidePopup, + saveData + }; + }, + data() { + return { + locationId: null, + locationCode: "", + userName: "", + //当前登录的用户名 + recordCount: 0, + shelfId: null, + shelfCode: "", + placeholderText: "", + matCodeCondition: "", + //物料编码搜索条件 + cardData: null, + //监控滑动的位置 + touchStartX: 0, + touchStartY: 0, + isMove: false + //滑动标识 是否滑动 + }; + }, + onShow: function() { + this.userName = getConfig("userName", "admin"); + const self = this; + recive(function(res) { + formatAppLog("log", "at pages/agvTasks/agvTasks.vue:287", "Success:" + res.data); + self.analysisScanCode(); + }, function(err) { + formatAppLog("log", "at pages/agvTasks/agvTasks.vue:290", "Error:", JSON.stringify(err)); + }); + }, + methods: { + analysisScanCode: function() { + var serverIPAndPort = getServerIPAndPort(); + uni.request({ + url: "http://" + serverIPAndPort + "/agvTask/getAGVTasks", + // 请求的接口地址 + method: "POST", + // 设置请求方式为 POST + data: { + "taskStatus": null, + "userName": this.userName, + "deviceType": "PDA", + "pageNumber": 1, + "pageSize": 100 + }, + header: { + "Content-Type": "application/json" + // 如果需要以JSON格式发送数据 + }, + success: (res) => { + if (res.statusCode === 200) { + if (res.data.code == 200) { + if (res.data.data == null || res.data.data.count == 0) { + uni.showToast({ + title: "未查询到对应状态的任务信息!", + icon: "none", + duration: 1500 + }); + return; + } + this.cardData = res.data.data.lists; + this.recordCount = res.data.data.count; + uni.showToast({ + title: "获取成功!", + icon: "none", + duration: 100 + }); + } else { + uni.showToast({ + title: "获取失败:" + res.data.message, + icon: "none", + duration: 3500 + }); + this.clear(); + } + } else { + uni.showToast({ + title: "服务器返回错误状态码" + res.statusCode, + icon: "none", + duration: 3e3 + }); + this.clear(); + } + }, + fail: (err) => { + uni.showToast({ + title: "请求失败" + err, + icon: "none", + duration: 3e3 + }); + this.clear(); + }, + complete: (event) => { + formatAppLog("log", "at pages/agvTasks/agvTasks.vue:364", "请求完成", event); + } + }); + }, + //清空当前界面所有内容 + clear: function() { + this.placeholderText = "请先扫描货架码"; + this.cardData = null; + this.recordCount = 0; + }, + //解决长按和滑动冲突的问题 + cardTouchStart(e) { + this.isMove = false; + this.touchStartX = e.touches[0].clientX; + this.touchStartY = e.touches[0].clientY; + }, + cardTouchMove(e) { + var deltaX = e.changedTouches[0].clientX - this.touchStartX; + var deltaY = e.changedTouches[0].clientY - this.touchStartY; + if (Math.abs(deltaX) > 5 || Math.abs(deltaY) > 5) { + this.isMove = true; + } + }, + //长按 + longpress(item) { + if (this.isMove == false) { + this.showPopup(item); + } + } + } + }; + function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { + const _component_uni_popup = resolveEasycom(vue.resolveDynamicComponent("uni-popup"), __easycom_0); + const _component_TaskCard = vue.resolveComponent("TaskCard"); + return vue.openBlock(), vue.createElementBlock("view", { class: "bg-image" }, [ + vue.createVNode( + _component_uni_popup, + { + ref: "popup", + type: "dialog" + }, + { + default: vue.withCtx(() => [ + vue.createElementVNode("view", { class: "popup-content" }, [ + vue.createElementVNode("view", { class: "info-item" }, [ + vue.createElementVNode("label", null, "单号:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($setup.fixedInfo.taskCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "info-item" }, [ + vue.createElementVNode("label", null, "货架:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($setup.fixedInfo.shelfCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "info-item" }, [ + vue.createElementVNode("label", null, "起点:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($setup.fixedInfo.startLocationCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "info-item" }, [ + vue.createElementVNode("label", null, "终点:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($setup.fixedInfo.endLocationCode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "info-item" }, [ + vue.createElementVNode("label", null, "任务状态:"), + vue.createElementVNode( + "text", + null, + vue.toDisplayString($setup.fixedInfo.taskStatusStr), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", null, [ + vue.createElementVNode( + "button", + { + style: { "background-color": "bisque", "margin-top": "10rpx" }, + onClick: _cache[0] || (_cache[0] = (...args) => $setup.saveData && $setup.saveData(...args)) + }, + vue.toDisplayString($setup.fixedInfo.buttonMode), + 1 + /* TEXT */ + ) + ]), + vue.createElementVNode("view", { class: "button-group" }, [ + vue.createElementVNode("button", { + onClick: _cache[1] || (_cache[1] = (...args) => $setup.hidePopup && $setup.hidePopup(...args)) + }, "关 闭") + ]) + ]) + ]), + _: 1 + /* STABLE */ + }, + 512 + /* NEED_PATCH */ + ), + vue.createElementVNode("view", { class: "diy-flex-row" }, [ + vue.createElementVNode("view", { style: { "flex": "3" } }, [ + vue.createCommentVNode(" 占位 ") + ]), + vue.createElementVNode("view", { style: { "flex": "80", "margin": "5rpx" } }, [ + vue.createElementVNode("view", { class: "diy-flex-row" }, [ + vue.createElementVNode("view", { + class: "rightImageContainer", + style: { "flex": "12", "padding-top": "20rpx" } + }, [ + vue.createElementVNode("image", { + style: { "width": "60rpx", "height": "60rpx" }, + src: _imports_0 + }) + ]), + vue.createElementVNode("view", { + class: "uni-input-wrapper", + style: { "flex": "60" } + }, [ + vue.withDirectives(vue.createElementVNode("input", { + id: "inputMatCode", + class: "uni-input", + style: { "font-size": "50rpx", "padding": "10rpx" }, + placeholder: $data.placeholderText, + "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => $data.matCodeCondition = $event), + onBlur: _cache[3] || (_cache[3] = (...args) => $options.analysisScanCode && $options.analysisScanCode(...args)) + }, null, 40, ["placeholder"]), [ + [vue.vModelText, $data.matCodeCondition] + ]) + ]), + vue.createElementVNode("view", { style: { "flex": "3" } }), + vue.createElementVNode("view", { style: { "flex": "30" } }, [ + vue.createElementVNode("button", { + onClick: _cache[4] || (_cache[4] = (...args) => $options.analysisScanCode && $options.analysisScanCode(...args)) + }, "查询") + ]) + ]) + ]), + vue.createElementVNode("view", { style: { "flex": "2" } }, [ + vue.createCommentVNode(" 占位 ") + ]) + ]), + vue.createElementVNode("view", { + class: "diy-flex-column", + style: { "margin-top": "5rpx" } + }, [ + vue.createElementVNode("view", { class: "diy-flex-inforow" }, [ + vue.createElementVNode("view", { style: { "width": "10rpx" } }), + vue.createElementVNode( + "view", + { style: { "width": "275rpx" } }, + "记录数:[" + vue.toDisplayString($data.recordCount) + "]", + 1 + /* TEXT */ + ), + vue.createElementVNode("view", { style: { "width": "10rpx" } }), + vue.createElementVNode("view", { style: { "display": "flex", "flex-direction": "row", "width": "455rpx" } }, [ + vue.createElementVNode("view", null, "任务状态:"), + vue.createElementVNode("view", null, "123") + ]) + ]) + ]), + vue.createElementVNode("view", { + class: "diy-flex-column", + style: { "margin-top": "5rpx" } + }, [ + vue.createElementVNode("scroll-view", { + class: "scroll-view", + "scroll-y": "true" + }, [ + (vue.openBlock(true), vue.createElementBlock( + vue.Fragment, + null, + vue.renderList($data.cardData, (item, index) => { + return vue.openBlock(), vue.createElementBlock("view", { + key: index, + onTouchstart: _cache[5] || (_cache[5] = (...args) => $options.cardTouchStart && $options.cardTouchStart(...args)), + onTouchmove: _cache[6] || (_cache[6] = (...args) => $options.cardTouchMove && $options.cardTouchMove(...args)), + onLongpress: ($event) => $options.longpress(item) + }, [ + vue.createVNode(_component_TaskCard, { + item, + currentIndex: index, + cardData: $data.cardData + }, null, 8, ["item", "currentIndex", "cardData"]) + ], 40, ["onLongpress"]); + }), + 128 + /* KEYED_FRAGMENT */ + )) + ]) + ]) + ]); + } + const PagesAgvTasksAgvTasks = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render], ["__file", "D:/代码/赛特制冷WCS/PDA/PDA/pages/agvTasks/agvTasks.vue"]]); __definePage("pages/index/index", PagesIndexIndex); __definePage("pages/config/config", PagesConfigConfig); __definePage("pages/main/main", PagesMainMain); @@ -5065,6 +5617,7 @@ if (uni.restoreGlobal) { __definePage("pages/shelfLocationBindUnbind/shelfLocationBindUnbind", PagesShelfLocationBindUnbindShelfLocationBindUnbind); __definePage("pages/productionLineCallIn/productionLineCallIn", PagesProductionLineCallInProductionLineCallIn); __definePage("pages/productionLineCallOut/productionLineCallOut", PagesProductionLineCallOutProductionLineCallOut); + __definePage("pages/agvTasks/agvTasks", PagesAgvTasksAgvTasks); const _sfc_main = { onLaunch: function() { formatAppLog("log", "at App.vue:4", "App Launch"); diff --git a/WCS.BLL/DbModels/STZL/AgvTask.cs b/WCS.BLL/DbModels/STZL/AgvTask.cs index 31871c6..73f245c 100644 --- a/WCS.BLL/DbModels/STZL/AgvTask.cs +++ b/WCS.BLL/DbModels/STZL/AgvTask.cs @@ -44,7 +44,7 @@ namespace WCS.BLL.DbModels /// 起点位置编码 /// [SugarColumn(ColumnName = "start_location_code", Length = 64, IsNullable = true, ColumnDescription = "起点位置编码")] - public string StartLocationCode { get; set; } = string.Empty ; + public string StartLocationCode { get; set; } = string.Empty; /// /// 终点位置ID @@ -96,6 +96,18 @@ namespace WCS.BLL.DbModels public TaskStatusEnum TaskStatus { get; set; } = TaskStatusEnum.已创建; #endregion + /// + /// 序号 + /// + [SugarColumn(IsIgnore = true)] + public string TaskStatusStr + { + get + { + return TaskStatus.ToString(); + } + } + /// /// 序号 /// diff --git a/WCS.BLL/Manager/GenAgvSchedulingTaskRequest.cs b/WCS.BLL/Manager/GenAgvSchedulingTaskRequest.cs index b90c197..8fa11d4 100644 --- a/WCS.BLL/Manager/GenAgvSchedulingTaskRequest.cs +++ b/WCS.BLL/Manager/GenAgvSchedulingTaskRequest.cs @@ -70,7 +70,7 @@ namespace WCS.BLL.Manager /// /// 任务单号(是我自定义的!) /// - public string taskCode { get; set; } = DateTime.Now.ToString("yyyyMMddHHmmfff"); + public string taskCode { get; set; } = DateTime.Now.ToString("yyyyMMddHHmmssfff"); public string data { get; set; } = string.Empty; } diff --git a/WCS.Model/ApiModel/AGV/AGVTaskModel.cs b/WCS.Model/ApiModel/AGV/AGVTaskModel.cs index 2bcf78b..6ebaeba 100644 --- a/WCS.Model/ApiModel/AGV/AGVTaskModel.cs +++ b/WCS.Model/ApiModel/AGV/AGVTaskModel.cs @@ -81,6 +81,8 @@ namespace WCS.Model.ApiModel.AGV /// 任务状态 /// public TaskStatusEnum TaskStatus { get; set; } = TaskStatusEnum.已创建; + + public string TaskStatusStr { get; set; } #endregion ///