1 |
- {"version":3,"sources":["webpack:///./resources/src/views/areas/Formedit.vue?639f","webpack:///resources/src/views/areas/Formedit.vue","webpack:///./resources/src/views/areas/Formedit.vue?2024","webpack:///./resources/src/views/areas/Formedit.vue","webpack:///./resources/src/components/LzForm/index.vue?0a68","webpack:///./resources/src/components/LzForm/index.vue?6710","webpack:///resources/src/components/LzForm/index.vue","webpack:///./resources/src/components/LzForm/index.vue","webpack:///./resources/src/components/LzForm/index.vue?4c9f","webpack:///./resources/src/views/areas/Formedit.vue?a6f2","webpack:///./resources/src/api/area.js","webpack:///./resources/src/components/LzForm/FormHelper.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","staticStyle","attrs","height","scopedSlots","_u","key","fn","proxy","plugin","center","defaultCursor","zoom","amapManager","events","marker","position","visible","draggable","icon","_l","polygon","index","ref","refInFor","fillOpacity","strokeColor","path","getData","onSubmit","errors","form","editMode","rules","on","$event","model","value","callback","$$v","$set","expression","directives","name","rawName","item","id","_v","staticRenderFns","isAdmin","component","components","FlexSpacer","inject","view","from","default","data","loading","stay","props","Function","submit","Object","submitText","type","String","labelPosition","inDialog","Boolean","createdRedirect","p","length","updatedRedirect","$router","back","bind","disableRedirect","disableStay","computed","realLabelPosition","$store","state","miniWidth","created","copyMethods","methods","Form","m","apply","$refs","arguments","onReset","resetFields","watch","$route","handler","$active","_getData","immediate","Array","isArray","defaultSlot","map","helper","replace","slot","h","options","propsData","formItem","class","style","width","getAreas","params","axios","get","showArea","storeArea","post","updateArea","put","editArea","provide","formField","idField","resourceId","backupForm","getResourceId","formBak","JSON","parse","stringify","$data","fillForm","assignExists"],"mappings":"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","file":"js/chunk-0c64c96d.39675482.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-card',{staticClass:\"mead-bike-map\",staticStyle:{\"height\":\"99%\"},attrs:{\"body-style\":{height: '100%' }},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('content-header')]},proxy:true}])},[_c('el-row',{staticStyle:{\"height\":\"100%\"},attrs:{\"type\":\"flex\",\"justify\":\"center\"}},[_c('div',{staticClass:\"amap-page-container\"},[_c('el-amap',{staticClass:\"amap-demo\",attrs:{\"vid\":\"amap\",\"plugin\":_vm.plugin,\"center\":_vm.center,\"default-cursor\":_vm.defaultCursor,\"zoom\":_vm.zoom,\"amap-manager\":_vm.amapManager,\"events\":_vm.events}},[_c('el-amap-marker',{attrs:{\"position\":_vm.marker.position,\"events\":_vm.marker.events,\"visible\":_vm.marker.visible,\"draggable\":_vm.marker.draggable,\"icon\":_vm.marker.icon}}),_vm._l((_vm.polygons),function(polygon,index){return _c('el-amap-polygon',{key:index,ref:(\"polygon_\" + index),refInFor:true,attrs:{\"vid\":index,\"editable\":true,\"fill-opacity\":polygon.fillOpacity,\"stroke-color\":polygon.strokeColor,\"path\":polygon.path,\"draggable\":polygon.draggable,\"events\":polygon.events}})})],2)],1),_c('div',{staticClass:\"form-class\"},[_c('lz-form',{ref:\"form\",staticStyle:{\"width\":\"100%\"},attrs:{\"get-data\":_vm.getData,\"submit\":_vm.onSubmit,\"errors\":_vm.errors,\"form\":_vm.form,\"edit-mode\":_vm.editMode,\"rules\":_vm.rules,\"label-width\":\"35%\"},on:{\"update:errors\":function($event){_vm.errors=$event},\"update:form\":function($event){_vm.form=$event}}},[_c('el-form-item',{attrs:{\"label\":\"区域名称\",\"required\":\"\",\"prop\":\"name\"}},[_c('el-input',{staticStyle:{\"width\":\"80%\"},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}})],1),_c('el-form-item',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isAdmin),expression:\"isAdmin\"}],attrs:{\"label\":\"区域创建者\",\"prop\":\"name\"}},[_c('el-select',{staticStyle:{\"width\":\"80%\"},attrs:{\"placeholder\":\"请选择\"},model:{value:(_vm.form.admin_id),callback:function ($$v) {_vm.$set(_vm.form, \"admin_id\", $$v)},expression:\"form.admin_id\"}},_vm._l((_vm.areaAdmin),function(item){return _c('el-option',{key:item.id,attrs:{\"label\":item.name,\"value\":item.id}})}),1)],1),_c('el-form-item',{attrs:{\"label\":\"区域状态\",\"required\":\"\",\"prop\":\"status\"}},[_c('el-switch',{attrs:{\"active-color\":\"#13ce66\",\"inactive-color\":\"#ff4949\",\"active-text\":\"正常\",\"inactive-text\":\"禁用\"},model:{value:(_vm.form.status),callback:function ($$v) {_vm.$set(_vm.form, \"status\", $$v)},expression:\"form.status\"}})],1),_c('el-form-item',{attrs:{\"label\":\"服务时间\",\"required\":\"\",\"prop\":\"customer_service_time\"}},[_c('el-input',{staticStyle:{\"width\":\"80%\"},model:{value:(_vm.form.customer_service_time),callback:function ($$v) {_vm.$set(_vm.form, \"customer_service_time\", $$v)},expression:\"form.customer_service_time\"}})],1),_c('el-form-item',{attrs:{\"label\":\"服务手机\",\"required\":\"\",\"prop\":\"customer_service_phone\"}},[_c('el-input',{staticStyle:{\"width\":\"80%\"},model:{value:(_vm.form.customer_service_phone),callback:function ($$v) {_vm.$set(_vm.form, \"customer_service_phone\", $$v)},expression:\"form.customer_service_phone\"}}),_c('p',{staticStyle:{\"margin\":\"10px\",\"font-size\":\"14px\",\"color\":\"green\"}},[_vm._v(\"请在地图中绘制区域\")])],1)],1),_c('p',{staticStyle:{\"margin\":\"10px 22%\",\"font-size\":\"11px\",\"color\":\"red\"}},[_vm._v(\"注:红色范围为辐射范围,绿色为骑行范围\")]),_c('p',{staticStyle:{\"margin\":\"10px 22%\",\"font-size\":\"11px\",\"color\":\"red\",\"width\":\"70%\"}},[_vm._v(\"注:中心点需要在绘制区域内\")])],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <el-card style=\"height:99%;\" :body-style=\"{height: '100%' }\" class=\"mead-bike-map\">\r\n <template #header>\r\n <content-header/>\r\n </template>\r\n\r\n <el-row type=\"flex\" justify=\"center\" style=\"height:100%;\">\r\n <div class=\"amap-page-container\">\r\n <el-amap\r\n vid=\"amap\"\r\n :plugin=\"plugin\"\r\n class=\"amap-demo\"\r\n :center=\"center\"\r\n :default-cursor=\"defaultCursor\"\r\n :zoom=\"zoom\"\r\n :amap-manager=\"amapManager\"\r\n :events=\"events\"\r\n >\r\n <el-amap-marker\r\n :position=\"marker.position\"\r\n :events=\"marker.events\"\r\n :visible=\"marker.visible\"\r\n :draggable=\"marker.draggable\"\r\n :icon=\"marker.icon\"\r\n />\r\n <!-- <el-amap-marker vid=\"component-marker\" :position=\"componentMarker.position\" :content-render=\"componentMarker.contentRender\"/> -->\r\n <!-- <el-amap-circle\r\n v-for=\"(circle,index) in circles\"\r\n :key=\"'info2-'+index\"\r\n :center=\"circle.center\"\r\n :radius=\"circle.radius\"\r\n :fill-opacity=\"circle.fillOpacity\"\r\n :events=\"circle.events\"\r\n /> -->\r\n <el-amap-polygon\r\n v-for=\"(polygon, index) in polygons\"\r\n :key=\"index\"\r\n :vid=\"index\"\r\n :editable=\"true\"\r\n :ref=\"`polygon_${index}`\"\r\n :fill-opacity=\"polygon.fillOpacity\"\r\n :stroke-color=\"polygon.strokeColor\"\r\n :path=\"polygon.path\"\r\n :draggable=\"polygon.draggable\"\r\n :events=\"polygon.events\"\r\n />\r\n </el-amap>\r\n </div>\r\n <div class=\"form-class\">\r\n <lz-form\r\n ref=\"form\"\r\n :get-data=\"getData\"\r\n :submit=\"onSubmit\"\r\n :errors.sync=\"errors\"\r\n :form.sync=\"form\"\r\n :edit-mode=\"editMode\"\r\n :rules=\"rules\"\r\n label-width=\"35%\"\r\n style=\"width:100%;\"\r\n >\r\n <!-- <el-form-item label=\"区域\" hidden required prop=\"area_fence\">\r\n <el-input v-model=\"form.area_fence\"/>\r\n </el-form-item>\r\n <el-form-item label=\"区域中心\" hidden required prop=\"area_centre\">\r\n <el-input v-model=\"form.area_centre\"/>\r\n </el-form-item> -->\r\n <!-- <el-form-item label=\"请在地图中绘制区域\"/> -->\r\n\r\n <el-form-item label=\"区域名称\" required prop=\"name\">\r\n <el-input v-model=\"form.name\" style=\"width:80%;\"/>\r\n </el-form-item>\r\n <el-form-item label=\"区域创建者\" v-show=\"isAdmin\" prop=\"name\">\r\n <el-select v-model=\"form.admin_id\" placeholder=\"请选择\" style=\"width:80%;\">\r\n <el-option\r\n v-for=\"item in areaAdmin\"\r\n :key=\"item.id\"\r\n :label=\"item.name\"\r\n :value=\"item.id\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"区域状态\" required prop=\"status\">\r\n <el-switch\r\n v-model=\"form.status\"\r\n active-color=\"#13ce66\"\r\n inactive-color=\"#ff4949\"\r\n active-text=\"正常\"\r\n inactive-text=\"禁用\"\r\n />\r\n </el-form-item>\r\n <el-form-item label=\"服务时间\" required prop=\"customer_service_time\">\r\n <el-input v-model=\"form.customer_service_time\" style=\"width:80%;\"/>\r\n </el-form-item>\r\n <el-form-item label=\"服务手机\" required prop=\"customer_service_phone\">\r\n <el-input v-model=\"form.customer_service_phone\" style=\"width:80%;\"/>\r\n <p style=\"margin: 10px ; font-size:14px; color:green;\">请在地图中绘制区域</p>\r\n </el-form-item>\r\n </lz-form>\r\n <p style=\"margin: 10px 22%; font-size:11px; color:red;\">注:红色范围为辐射范围,绿色为骑行范围</p>\r\n <p style=\"margin: 10px 22%; font-size:11px; color:red;width: 70%;\">注:中心点需要在绘制区域内</p>\r\n </div>\r\n </el-row>\r\n </el-card>\r\n</template>\r\n\r\n<script>\r\n\r\n import VueAMap from 'vue-amap'\r\n import LzForm from '@c/LzForm'\r\n import {editArea, storeArea, updateArea} from '@/api/area'\r\n import {getAreaAdminUsers} from '@/api/admin-users'\r\n import FormHelper from '@c/LzForm/FormHelper'\r\n import _get from 'lodash/get'\r\n import store from '@/store'\r\n import {ROLE_ADMIN} from '@/libs/constants'\r\n\r\n export default {\r\n name: 'Form',\r\n components: {\r\n LzForm,\r\n },\r\n mixins: [\r\n FormHelper,\r\n ],\r\n data() {\r\n const exampleComponents = {\r\n props: ['text'],\r\n template: `\r\n <div>text from parent: {{text}}</div>`,\r\n }\r\n let amapManager = new VueAMap.AMapManager()\r\n var checkPhone = (rule, value, callback) => {\r\n if (!value) {\r\n return callback(new Error('手机号不能为空'))\r\n } else {\r\n const reg = /^1[3|4|5|7|8][0-9]\\d{8}$/\r\n if (reg.test(value)) {\r\n callback()\r\n } else {\r\n return callback(new Error('请输入正确的手机号'))\r\n }\r\n }\r\n }\r\n return {\r\n isAdmin: false,\r\n areaAdmin: [],\r\n count: 1,\r\n slotStyle: {\r\n padding: '2px 8px',\r\n background: '#eee',\r\n color: '#333',\r\n border: '1px solid #aaa',\r\n },\r\n zoom: 14,\r\n center: [121.5273285, 31.21515044],\r\n marker: {\r\n position: [121.5273285, 31.21515044],\r\n events: {\r\n click: () => {\r\n // alert('click marker')\r\n },\r\n dragend: (e) => {\r\n this.form.area_centre = {lat: e.lnglat.lat, lng: e.lnglat.lng}\r\n // console.log('---event---: dragend')\r\n // this.markers[0].position = [e.lnglat.lng, e.lnglat.lat]\r\n },\r\n },\r\n visible: true,\r\n draggable: true,\r\n icon: 'http://resource.bike.hanyiyun.com/admin/area_center_20191130170212.png',\r\n },\r\n markers: [\r\n {\r\n position: [121.5273285, 31.21515044],\r\n events: {\r\n click: () => {\r\n // alert('click marker')\r\n },\r\n dragend: (e) => {\r\n console.log('---event---: dragend')\r\n this.markers[0].position = [e.lnglat.lng, e.lnglat.lat]\r\n },\r\n },\r\n visible: true,\r\n draggable: false,\r\n template: '<span>1</span>',\r\n },\r\n ],\r\n // circles: [\r\n // {\r\n // center: [121.5273285, 31.21515044],\r\n // radius: 200,\r\n // fillOpacity: 0.1,\r\n // events: {\r\n // click: () => {\r\n // // alert('click')\r\n // },\r\n // },\r\n // },\r\n // ],\r\n polygons: [\r\n {// 骑行区\r\n draggable: false,\r\n fillOpacity: 0.1,\r\n path: [[121.5273285, 31.21515044], [121.5293285, 31.21515044], [121.5293285, 31.21915044], [121.5273285, 31.21515044]],\r\n events: {\r\n change: () => {\r\n this.form.area_fence = []\r\n this.polygons[0].path.forEach(item => {\r\n var im = {lat: item.lat, lng: item.lng}\r\n this.form.area_fence.push(im)\r\n })\r\n },\r\n click: () => {\r\n\r\n },\r\n },\r\n },\r\n {// 辐射范围\r\n draggable: false,\r\n fillOpacity: 0.1,\r\n strokeColor: '#ff0000',\r\n path: [[121.5273285, 31.21515044], [121.5293285, 31.21515044], [121.5293285, 31.21915044], [121.5273285, 31.21515044]],\r\n events: {\r\n change: () => {\r\n this.form.area_fushe_fence = []\r\n this.polygons[1].path.forEach(item => {\r\n var im = {lat: item.lat, lng: item.lng}\r\n this.form.area_fushe_fence.push(im)\r\n })\r\n },\r\n click: () => {\r\n\r\n },\r\n },\r\n },\r\n ],\r\n form: {\r\n name: '',\r\n area_fence: [],\r\n area_fushe_fence: [],\r\n area_centre: '',\r\n status: true,\r\n admin_id: 0,\r\n customer_service_time: '',\r\n customer_service_phone: '',\r\n },\r\n rules: {\r\n customer_service_phone: [\r\n {validator: checkPhone, trigger: 'blur'},\r\n ],\r\n },\r\n errors: {},\r\n defaultCursor: 'pointer',\r\n amapManager: amapManager,\r\n events: {\r\n init(o) {\r\n\r\n },\r\n },\r\n componentMarker: {\r\n position: [121.5273285, 31.21315058],\r\n contentRender: (h, instance) => h(exampleComponents, {\r\n style: {backgroundColor: '#fff'},\r\n props: {text: 'father is here'}\r\n }, ['xxxxxxx']),\r\n },\r\n plugin: [{\r\n pName: 'Geolocation',\r\n events: {\r\n init(o) {\r\n // o 是高德地图定位插件实例\r\n // console.log(o)\r\n o.getCurrentPosition((status, result) => {\r\n // 未配置https 定位失败 暂时手动配置\r\n self.lng = 113.73350255780726\r\n self.lat = 34.78024666564106\r\n // self.center = [self.lng, self.lat]\r\n self.loaded = true\r\n if (result && result.position) {\r\n self.lng = result.position.lng\r\n self.lat = result.position.lat\r\n // self.center = [self.lng, self.lat]\r\n // self.loaded = true\r\n // self.$nextTick()\r\n }\r\n })\r\n },\r\n },\r\n }, {\r\n pName: 'Scale',\r\n // offset: { x: 1, y: 1 },\r\n position: 'RB',\r\n events: {\r\n init(instance) {\r\n // console.log(instance)\r\n },\r\n },\r\n }, {\r\n pName: 'ToolBar',\r\n events: {\r\n init(instance) {\r\n // console.log(instance)\r\n },\r\n },\r\n }],\r\n }\r\n },\r\n async created() {\r\n const userRoles = _get(store, 'state.users.user.roles', [])\r\n\r\n if (userRoles.indexOf(ROLE_ADMIN) !== -1) {\r\n this.isAdmin = true\r\n }\r\n const {data: areaAdmin} = await getAreaAdminUsers()\r\n this.areaAdmin = areaAdmin\r\n // console.log(areaAdmin)\r\n },\r\n methods: {\r\n async onSubmit() {\r\n if (this.editMode) {\r\n await updateArea(this.resourceId, this.form)\r\n } else {\r\n await storeArea(this.form)\r\n }\r\n },\r\n async getData() {\r\n let _this = this\r\n if (_this.editMode) {\r\n const {data} = await editArea(_this.resourceId)\r\n // console.log(data)\r\n _this.form.admin_id = parseInt(data.admin_id)\r\n console.log(_this.form.admin_id)\r\n _this.form.name = data.name\r\n _this.form.status = data.status\r\n _this.form.customer_service_phone = data.customer_service_phone\r\n _this.form.customer_service_time = data.customer_service_time\r\n // 表单区域赋值\r\n _this.form.area_fence = JSON.parse(data.area_fence)\r\n _this.form.area_fushe_fence = JSON.parse(data.area_fushe_fence)\r\n var old_area_centre = JSON.parse(data.area_centre)\r\n _this.form.area_centre = {lng: old_area_centre[0], lat: old_area_centre[1]}\r\n\r\n // console.log(_this.form)\r\n // 地图区域赋值\r\n _this.marker.position = JSON.parse(data.area_centre)\r\n _this.polygons[0].path = JSON.parse(data.area_fence) // 骑行区域渲染\r\n _this.polygons[1].path = JSON.parse(data.area_fushe_fence) // 骑行辐射区域渲染\r\n // _this.circles[0].radius = data.area_radius\r\n // _this.circles[0].center = JSON.parse(data.area_centre)\r\n\r\n _this.center = JSON.parse(data.area_centre)\r\n _this.markers.position = JSON.parse(data.area_centre) // 中心点渲染\r\n } else {\r\n // 初始化表单 区域\r\n }\r\n },\r\n },\r\n }\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n .amap-page-container {\r\n width: 75%;\r\n position: relative;\r\n }\r\n\r\n .amap-demo {\r\n /*height: 88%;*/\r\n }\r\n\r\n .info {\r\n border-radius: .25rem;\r\n position: absolute;\r\n top: 70px;\r\n width: auto;\r\n border-width: 0;\r\n right: 20px;\r\n }\r\n\r\n .search-box {\r\n height: 36px;\r\n border-radius: .25rem;\r\n top: 65px;\r\n border-width: 1px;\r\n left: 90px;\r\n }\r\n\r\n .form-class {\r\n width: 25%;\r\n overflow: auto;\r\n\r\n }\r\n\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Formedit.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Formedit.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Formedit.vue?vue&type=template&id=7c690472&scoped=true&\"\nimport script from \"./Formedit.vue?vue&type=script&lang=js&\"\nexport * from \"./Formedit.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Formedit.vue?vue&type=style&index=0&id=7c690472&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7c690472\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=3084f0c4&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=3084f0c4&scoped=true&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&lang=scss&\"","<script>\r\nimport _forIn from 'lodash/forIn'\r\nimport _get from 'lodash/get'\r\nimport Form from '@/plugins/element/components/Form'\r\nimport { getMessage, handleValidateErrors } from '@/libs/utils'\r\nimport FlexSpacer from '@c/FlexSpacer'\r\n\r\nexport default {\r\n name: 'LzForm',\r\n components: {\r\n FlexSpacer,\r\n },\r\n inject: {\r\n // 使用 FormHelper 混入,会自动提供该注入\r\n view: {\r\n from: 'view',\r\n default: null,\r\n },\r\n },\r\n data() {\r\n return {\r\n loading: false,\r\n stay: false,\r\n }\r\n },\r\n props: {\r\n getData: Function,\r\n submit: Function,\r\n errors: Object,\r\n form: Object,\r\n submitText: {\r\n type: String,\r\n default: '保存',\r\n },\r\n labelPosition: String,\r\n inDialog: Boolean,\r\n createdRedirect: {\r\n type: [String, Function],\r\n default() {\r\n const p = this.$route.path.split('/')\r\n return '/' + (p[p.length - 2] || '')\r\n },\r\n },\r\n updatedRedirect: {\r\n type: [String, Function],\r\n default() {\r\n return this.$router.back.bind(this.$router)\r\n },\r\n },\r\n disableRedirect: Boolean,\r\n disableStay: Boolean,\r\n editMode: Boolean,\r\n },\r\n computed: {\r\n realLabelPosition() {\r\n return this.labelPosition || (this.$store.state.miniWidth ? 'top' : 'right')\r\n },\r\n miniWidth() {\r\n return this.$store.state.miniWidth\r\n },\r\n },\r\n created() {\r\n this.copyMethods()\r\n },\r\n methods: {\r\n /**\r\n * 复制实际 Form 组件的方法, 给外部调用, 并把 this 指向 ElForm 实例\r\n */\r\n copyMethods() {\r\n // 原始 ElForm 和 重写的 Form\r\n [Form.extends.methods, Form.methods].forEach(methods => {\r\n _forIn(methods, (m, k) => {\r\n this[k] = function () {\r\n m.apply(this.$refs.form, arguments)\r\n }\r\n })\r\n })\r\n },\r\n async _getData() {\r\n this.loading = true\r\n this.view && this.$emit('update:form', this.view.formBak)\r\n\r\n try {\r\n this.getData && await this.getData()\r\n // 在某些情况下,会出现方法未定义,所以放到 nextTick 中\r\n this.$nextTick(() => {\r\n this.setInitialValues()\r\n })\r\n } catch (e) {\r\n Promise.reject(e)\r\n }\r\n\r\n this.loading = false\r\n },\r\n async onSubmit() {\r\n this.$emit('update:errors', {})\r\n try {\r\n this.submit && await this.submit()\r\n\r\n this.$message.success(getMessage(this.editMode ? 'updated' : 'created'))\r\n\r\n if (this.stay || this.disableRedirect) {\r\n return\r\n }\r\n\r\n let redirect = this.editMode ? this.updatedRedirect : this.createdRedirect\r\n if (typeof redirect === 'string') {\r\n this.$router.push(redirect)\r\n } else if (typeof redirect === 'function') {\r\n redirect()\r\n }\r\n } catch (e) {\r\n this.$emit('update:errors', handleValidateErrors(e.response))\r\n if (_get(e, 'response.status') !== 422) {\r\n Promise.reject(e)\r\n }\r\n }\r\n },\r\n onReset() {\r\n this.$refs.form.resetFields()\r\n },\r\n },\r\n watch: {\r\n $route: {\r\n handler() {\r\n this.$active && this._getData()\r\n },\r\n immediate: true,\r\n },\r\n },\r\n render(h) {\r\n let defaultSlot = this.$slots.default\r\n if (Array.isArray(defaultSlot)) {\r\n defaultSlot = defaultSlot.map((formItem) => {\r\n const options = formItem.componentOptions\r\n\r\n // 如果有 helper props,则生成一个新的 FormItem 替换掉原来的\r\n let { helper, label } = options.propsData\r\n if (helper) {\r\n helper = helper.replace(/\\n/g, '<br>')\r\n const labelSlot = h('template', {\r\n slot: 'label',\r\n }, [\r\n (<span>{label}</span>),\r\n (\r\n <el-tooltip\r\n effect=\"dark\"\r\n placement=\"top-start\"\r\n popper-class={`form-helper-popper ${this.miniWidth ? 'mini-width' : ''}`}\r\n >\r\n <div slot=\"content\" domPropsInnerHTML={helper}/>\r\n <i class=\"ml-1 el-icon-question helper\"/>\r\n </el-tooltip>\r\n ),\r\n ])\r\n return h('el-form-item', {\r\n props: options.propsData,\r\n }, [labelSlot, ...options.children])\r\n } else {\r\n return formItem\r\n }\r\n })\r\n }\r\n\r\n const stayCheckbox = !this.disableStay && (\r\n <el-checkbox\r\n vModel={this.stay}\r\n title=\"表单提交后,留在此页\"\r\n >\r\n 留在此页\r\n </el-checkbox>\r\n )\r\n\r\n const footerSlot = this.$slots.footer || (\r\n <el-form-item class=\"footer\">\r\n <loading-action type=\"primary\" action={this.onSubmit}>{this.submitText}</loading-action>\r\n <el-button vOn:click={this.onReset}>重置</el-button>\r\n {this.$slots.footerAppend}\r\n <flex-spacer/>\r\n\r\n </el-form-item>\r\n )\r\n\r\n // 用 jsx,ElForm 组件的 model props 传不进去,,,\r\n return h('el-form', {\r\n props: {\r\n model: this.form,\r\n errors: this.errors,\r\n labelPosition: this.realLabelPosition,\r\n ...this.$attrs,\r\n },\r\n on: {\r\n ...this.$listeners,\r\n },\r\n class: {\r\n 'in-dialog': this.inDialog,\r\n },\r\n style: {\r\n width: this.inDialog ? 'auto' : '800px',\r\n },\r\n directives: [\r\n {\r\n name: 'loading',\r\n value: this.loading,\r\n },\r\n ],\r\n ref: 'form',\r\n }, [defaultSlot, footerSlot])\r\n },\r\n}\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import '~element-ui/packages/theme-chalk/src/common/var';\r\n\r\n.footer {\r\n /deep/ {\r\n .el-form-item__content {\r\n display: flex;\r\n }\r\n }\r\n}\r\n\r\n.in-dialog {\r\n .footer {\r\n text-align: right;\r\n margin-bottom: 0;\r\n }\r\n}\r\n\r\n.helper {\r\n color: $--color-primary;\r\n border: 2px solid transparent;\r\n border-radius: 50%;\r\n transition: border-color .3s;\r\n\r\n &:hover {\r\n border-color: $--color-primary-light-1;\r\n }\r\n}\r\n</style>\r\n\r\n<style lang=\"scss\">\r\n.form-helper-popper {\r\n max-width: 400px;\r\n\r\n &.mini-width {\r\n max-width: 90%;\r\n }\r\n}\r\n</style>\r\n","var render, staticRenderFns\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=3084f0c4&scoped=true&lang=scss&\"\nimport style1 from \"./index.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3084f0c4\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Formedit.vue?vue&type=style&index=0&id=7c690472&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Formedit.vue?vue&type=style&index=0&id=7c690472&lang=scss&scoped=true&\"","import axios from '@/plugins/axios'\r\n\r\nexport function getAreas(params = {}) {\r\n return axios.get('area', {\r\n params,\r\n })\r\n}\r\n\r\nexport function showArea(id) {\r\n return axios.get(`area/${id}`)\r\n}\r\n\r\nexport function storeArea(data) {\r\n return axios.post('area', data)\r\n}\r\n\r\nexport function updateArea(id, data) {\r\n return axios.put(`area/${id}`, data)\r\n}\r\n\r\nexport function editArea(id) {\r\n return axios.get(`area/${id}/edit`)\r\n}\r\n\r\nexport function destroyArea(id) {\r\n return axios.delete(`area/${id}`)\r\n}\r\n","import { assignExists } from '@/libs/utils'\r\n\r\nexport default {\r\n provide() {\r\n return {\r\n view: this,\r\n }\r\n },\r\n data() {\r\n return {\r\n /**\r\n * 保存表单数据的键名\r\n */\r\n formField: 'form',\r\n /**\r\n * 编辑时,路由中的动态值\r\n */\r\n idField: 'id',\r\n }\r\n },\r\n computed: {\r\n editMode() {\r\n return !!this.resourceId\r\n },\r\n resourceId() {\r\n return this.$route.params[this.idField]\r\n },\r\n },\r\n created() {\r\n this.backupForm()\r\n },\r\n methods: {\r\n getResourceId(key = 'id') {\r\n return this.$route.params[key]\r\n },\r\n /**\r\n * 备份表单原始数据,路由切换时,用来重置表单\r\n */\r\n backupForm() {\r\n this.formBak = JSON.parse(JSON.stringify(this.$data[this.formField]))\r\n },\r\n /**\r\n * 填充表单数据\r\n *\r\n * @param data\r\n */\r\n fillForm(data) {\r\n this.$data[this.formField] = assignExists(this.$data[this.formField], data)\r\n },\r\n },\r\n}\r\n"],"sourceRoot":""}
|