Commit 4a7599b0 authored by 周远喜's avatar 周远喜

Merge branch 'product' of http://git.mes123.com/zhouyx/mes-ui into product

parents 12c8bc91 6b5b68d7
import XLSX from 'xlsx'; import XLSX from 'xlsx';
import Api from '@/plugins/request'
let henq = {}; let henq = {};
let pdfInfo = '' let pdfInfo = ''
henq.clone = (obj) => { henq.clone = (obj) => {
...@@ -169,14 +170,13 @@ henq.findRoots = (arr1, id) => { ...@@ -169,14 +170,13 @@ henq.findRoots = (arr1, id) => {
//省市县pacc转为list //省市县pacc转为list
henq.treeToList1 = (tree) => { henq.treeToList1 = (tree) => {
let list = []; let list = [];
function treeToList1(data) { function treeToList1(data) {
data.map(u => { data.map(u => {
if (u.children&&u.level!=1) { if (u.children && u.level != 1) {
treeToList1(u.children, u) treeToList1(u.children, u)
} } else if (u.children && u.level == 1) {
else if(u.children&&u.level==1) list = list.concat(u.children);
{
list=list.concat(u.children);
} }
}) })
} }
...@@ -185,22 +185,22 @@ henq.treeToList1 = (tree) => { ...@@ -185,22 +185,22 @@ henq.treeToList1 = (tree) => {
return list; return list;
} }
//根据departId返出上级所有name //根据departId返出上级所有name
henq.getDepartAllName = (list,id) => { henq.getDepartAllName = (list, id) => {
let names = ''; let names = '';
function getDepartAllName(list,id) {
function getDepartAllName(list, id) {
list.map(u => { list.map(u => {
if(id==u.id) if (id == u.id) {
{ names = u.name + "/" + names
names=u.name+"/"+names if (u.parent_Id > 0) {
if (u.parent_Id>0) {
getDepartAllName(list, u.parent_Id) getDepartAllName(list, u.parent_Id)
} }
} }
}) })
} }
getDepartAllName(list,id) getDepartAllName(list, id)
return names.slice(0,names.length-1); return names.slice(0, names.length - 1);
} }
//导出pdf //导出pdf
henq.outPdf = (ele, fileName) => { henq.outPdf = (ele, fileName) => {
...@@ -343,4 +343,212 @@ henq.dirCode = (code, v) => { ...@@ -343,4 +343,212 @@ henq.dirCode = (code, v) => {
} }
return items return items
} }
henq.makeRules = (list, apiUrl) => {
//测试数据start
list = [{ //普通输入框
columnDescription: "测试列1", // 中文名称
dbColumnName: "colums1", // 字段名称
dataType: "varchar", // 数据库中字段类型
propertyName: "colums1", //程序中的字段名称
propertyType: "String", // 程序中的字段类型
code: "", // 数据字典编码
isNullable: false, // 是否可空
isKey: false, // 是否主键
unit: "", // 单位
length: 50, //
decimalDigits: 0, // 精度
link: 0, //外键 表的
defaultValue: "", // 默认值
control: 0,
uniqueness: 0, // 唯一性 0 不限制 1 表内唯一 2 表内某条件下唯一
ruleType: "", // 邮箱 ,电话,等
},
{ //数据字典项
columnDescription: "测试列2",
dbColumnName: "colums2",
dataType: "int32",
propertyName: "colums2",
propertyType: "int",
code: "aps.plan.status",
isNullable: false,
isKey: false,
unit: "",
length: 50,
decimalDigits: 0,
link: 0,
defaultValue: "",
control: 0,
uniqueness: 0,
ruleType: "",
},
{ //手机号码
columnDescription: "测试列3",
dbColumnName: "colums3",
dataType: "varchar",
propertyName: "colums3",
propertyType: "int",
code: "",
isNullable: false,
isKey: false,
unit: "",
length: 50,
decimalDigits: 0,
link: 0,
defaultValue: "",
control: 0,
uniqueness: 0,
ruleType: "phone",
},
{ //电子邮件
columnDescription: "测试列4",
dbColumnName: "colums4",
dataType: "varchar",
propertyName: "colums4",
propertyType: "String",
code: "",
isNullable: false,
isKey: false,
unit: "",
length: 50,
decimalDigits: 0,
link: 0,
defaultValue: "",
control: 0,
uniqueness: 0,
ruleType: "email",
},
{ //唯一性api接口校验
columnDescription: "测试列5",
dbColumnName: "colums5",
dataType: "varchar",
propertyName: "colums5",
propertyType: "String",
code: "",
isNullable: false,
isKey: false,
unit: "",
length: 50,
decimalDigits: 0,
link: 0,
defaultValue: "",
control: 0,
uniqueness: 1, //表内唯一验证
ruleType: "",
},
{ //日期校验
columnDescription: "测试列6",
dbColumnName: "colums6",
dataType: "datetime",
propertyName: "colums6",
propertyType: "String",
code: "",
isNullable: false,
isKey: false,
unit: "",
length: 50,
decimalDigits: 0,
link: 0,
defaultValue: "",
control: 0,
uniqueness: 0, //表内唯一验证
ruleType: "datetime",
}
]
apiUrl = `${systemUrl}/user/list`
//测试数据end
//唯一性校验
const validateCol = (rule, value, callback) => {
if (!value) {
return callback(new Error("输入不能为空"));
}
var params1 = {
"conditions": [{
"fieldName": "cardNo",
"fieldValue": value,
"conditionalType": "Equal"
}],
"pageSize": 3
}
Api.post(apiUrl, params1).then((r) => {
if (r.result.length > 0) {
return callback(new Error("输入数据已经存在"));
} else {
callback();
}
})
};
//手机号验证
const valideTel = (rule, value, callback) => {
var re = /^1[3-9]{1}[0-9]{9}/;
if (value === "" || value === null) {
callback(new Error("请输入手机号"));
} else if (!re.test(value)) {
callback(new Error("请输入正确手机号"));
} else {
callback();
}
}
let rules = {}
list.forEach(el => {
if (!el.isNullable) {
let objInfo = {}
rules[el.propertyName] = []
if (el.code == '') { //不能为空,必填文本或数字类型
if (el.ruleType == '') {
objInfo = {
required: true,
message: "必填",
trigger: "blur"
}
if (el.uniqueness != 0) {
var objUniqueness = {
validator: validateCol,
trigger: "blur"
}
}
} else if (el.ruleType == 'email') {
objInfo = {
required: true,
message: '必填',
trigger: 'blur',
type: 'email'
}
} else if (el.ruleType == 'phone') {
objInfo = {
validator: valideTel,
required: true,
trigger: "blur"
}
}
else if (el.ruleType == 'datetime')
{
objInfo = {
required: true,
message: "请选择时间",
trigger: "change"
}
}
} else { //数据字典
objInfo = {
required: true,
message: "必选",
trigger: "change",
type: "number",
}
}
rules[el.propertyName].push(objInfo)
if (el.uniqueness != 0) {
rules[el.propertyName].push(objUniqueness)
}
}
})
return rules
}
export default henq; export default henq;
...@@ -322,9 +322,9 @@ export default { ...@@ -322,9 +322,9 @@ export default {
this.goMethod(params.row) : null, this.goMethod(params.row) : null,
}, },
}, },
params.row.mainRoutingSetStatus == 0 ? params.row.mainRoutingSetStatus == 0 && params.row.isPreschedule == 0 ?
"工艺派发" : "工艺派发" :
params.row.mainRoutingSetStatus == 1 ? params.row.mainRoutingSetStatus == 1 && params.row.isPreschedule == 0 ?
"移入排产" : "移入排产" :
"" ""
), ),
......
<template> <template>
<div style="width:100%;"> <div style="width:100%;">
<Form :model="orderSearchForm" :label-width="95" :rules="ruleValidate" ref="formValidate"> <Form :model="orderSearchForm" :label-width="95" :rules="ruleValidate" ref="formValidate">
<Row> <Row>
<Col span="8"> <Col span="8">
<FormItem label="产品名称" style="width:100%" prop="productId"> <FormItem label="产品名称" style="width:100%" prop="productId">
<Select <Select v-model="orderSearchForm.productId" :placeholder="placeholdeinfo" style="width:240px;">
v-model="orderSearchForm.productId" <Option v-for="(item,index) in list" :key="item.index" :value="item.value" :label="item.label" style="display:none"></Option>
:placeholder="placeholdeinfo"
style="width:240px;"
>
<Option
v-for="(item,index) in list"
:key="item.index"
:value="item.value"
:label="item.label"
style="display:none"
></Option>
<Tree key="mytree" :data="data1" ref="mytree" :render="renderContent"></Tree> <Tree key="mytree" :data="data1" ref="mytree" :render="renderContent"></Tree>
</Select> </Select>
</FormItem> </FormItem>
...@@ -29,11 +19,7 @@ ...@@ -29,11 +19,7 @@
</Col> </Col>
<Col span="8"> <Col span="8">
<FormItem label="任务类型" style="width:100%" prop="taskType"> <FormItem label="任务类型" style="width:100%" prop="taskType">
<dictionary <dictionary code="plan.order.taskType" v-model="orderSearchForm.taskType" style="width:240px"></dictionary>
code="plan.order.taskType"
v-model="orderSearchForm.taskType"
style="width:240px"
></dictionary>
</FormItem> </FormItem>
</Col> </Col>
</Row> </Row>
...@@ -45,24 +31,12 @@ ...@@ -45,24 +31,12 @@
</Col> </Col>
<Col span="8"> <Col span="8">
<FormItem label="开始时间" style="width:100%"> <FormItem label="开始时间" style="width:100%">
<DatePicker <DatePicker type="date" placeholder="请选择日期" style="width:240px" @on-change="getStartDate" v-model="orderSearchForm.demandStartDate"></DatePicker>
type="date"
placeholder="请选择日期"
style="width:240px"
@on-change="getStartDate"
v-model="orderSearchForm.demandStartDate"
></DatePicker>
</FormItem> </FormItem>
</Col> </Col>
<Col span="8"> <Col span="8">
<FormItem label="完成时间" style="width:100%"> <FormItem label="完成时间" style="width:100%">
<DatePicker <DatePicker type="date" placeholder="请选择日期" style="width:240px" @on-change="getFinishedDate" v-model="orderSearchForm.demandFinishDate"></DatePicker>
type="date"
placeholder="请选择日期"
style="width:240px"
@on-change="getFinishedDate"
v-model="orderSearchForm.demandFinishDate"
></DatePicker>
</FormItem> </FormItem>
</Col> </Col>
</Row> </Row>
...@@ -79,11 +53,7 @@ ...@@ -79,11 +53,7 @@
</Col> </Col>
<Col span="8"> <Col span="8">
<FormItem label="紧急程度" style="width:100%"> <FormItem label="紧急程度" style="width:100%">
<dictionary <dictionary style="width:240px" code="plan.order.urgencyLevel" v-model="orderSearchForm.urgencyLevel"></dictionary>
style="width:240px"
code="plan.order.urgencyLevel"
v-model="orderSearchForm.urgencyLevel"
></dictionary>
</FormItem> </FormItem>
</Col> </Col>
</Row> </Row>
...@@ -106,9 +76,10 @@ ...@@ -106,9 +76,10 @@
</Col> </Col>
</Row> </Row>
</Form> </Form>
</div> </div>
</template> </template>
<script>
<script>
var myDate = new Date(); var myDate = new Date();
var dayTomorrow = new Date(); var dayTomorrow = new Date();
dayTomorrow.setTime(dayTomorrow.getTime() + 24 * 60 * 60 * 1000); dayTomorrow.setTime(dayTomorrow.getTime() + 24 * 60 * 60 * 1000);
...@@ -147,31 +118,26 @@ export default { ...@@ -147,31 +118,26 @@ export default {
bomId: null, bomId: null,
}, },
ruleValidate: { ruleValidate: {
productId: [ productId: [{
{
required: true, required: true,
message: "请选择产品名称", message: "请选择产品名称",
type: "number", type: "number",
trigger: "change", trigger: "change",
}, }, ],
], taskType: [{
taskType: [
{
required: true, required: true,
message: "请选择任务类型", message: "请选择任务类型",
trigger: "change", trigger: "change",
type: "number", type: "number",
}, }, ],
], quantity: [{
quantity: [
{
required: true, required: true,
message: "请输入数量", message: "请输入数量",
type: "number", type: "number",
trigger: "change", trigger: "change",
}, ],
}, },
],
},
wfstatu: 1, wfstatu: 1,
}; };
}, },
...@@ -227,7 +193,10 @@ export default { ...@@ -227,7 +193,10 @@ export default {
this.selectdata = []; this.selectdata = [];
this.selectdata = data; this.selectdata = data;
this.list = []; this.list = [];
this.list.push({ label: data[0].title, value: data[0].id }); this.list.push({
label: data[0].title,
value: data[0].id
});
if (data[0].isProduct == 1) { if (data[0].isProduct == 1) {
this.orderSearchForm.productName = data[0].title; this.orderSearchForm.productName = data[0].title;
this.orderSearchForm.productId = data[0].productId; this.orderSearchForm.productId = data[0].productId;
...@@ -269,7 +238,11 @@ export default { ...@@ -269,7 +238,11 @@ export default {
} }
}); });
}, },
renderContent(h, { root, node, data }) { renderContent(h, {
root,
node,
data
}) {
let type = "md-folder"; let type = "md-folder";
let title = data.title; let title = data.title;
if (data.isProduct != 0) { if (data.isProduct != 0) {
...@@ -285,8 +258,7 @@ export default { ...@@ -285,8 +258,7 @@ export default {
} }
} }
return h( return h(
"span", "span", {
{
on: { on: {
click: () => { click: () => {
let arrTree = []; let arrTree = [];
...@@ -305,8 +277,7 @@ export default { ...@@ -305,8 +277,7 @@ export default {
}, },
}), }),
h( h(
"span", "span", {
{
style: { style: {
color: data.isProduct == 0 ? "#000" : "rgba(38, 128, 235, 1)", color: data.isProduct == 0 ? "#000" : "rgba(38, 128, 235, 1)",
}, },
......
<template> <template>
<Form ref="form" :model="entity" :rules="rules" :label-width="90"> <Form ref="form" :model="entity" :rules="rules" :label-width="90">
<Row> <Row>
<Col span="8">
<FormItem :label="l('picture')" prop="picture">
<inputFile
class="tphoto"
ref="refmovieFile1"
v-model="imgName"
:parms="parmsName"
/>
</FormItem>
<div class="img-touxiang">
<img :src="avatorPath" v-if="imgName" @click="imgUrl" class="img1" />
<img
src="@/assets/images/files_header.png"
v-else
width="100%"
height="100%"
/>
</div>
</Col>
<Col span="16">
<!-- <Col :span="12" <!-- <Col :span="12"
><FormItem :label="l('creationTime')" prop="creationTime"> ><FormItem :label="l('creationTime')" prop="creationTime">
<DatePicker <DatePicker
...@@ -51,32 +71,10 @@ ...@@ -51,32 +71,10 @@
<Col :span="12" <Col :span="12"
><FormItem :label="l('state')" prop="state"> ><FormItem :label="l('state')" prop="state">
<Dictionary <Dictionary
code="mes.project_main.State" code="project.main.state"
v-model="entity.state" v-model="entity.state"
></Dictionary> </FormItem ></Dictionary> </FormItem
></Col> ></Col>
<Col :span="12"
><FormItem :label="l('type')" prop="type">
<Dictionary
code="mes.project_main.Type"
v-model="entity.type"
></Dictionary> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('picture')" prop="picture">
<Input v-model="entity.picture"> </Input> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('attachment')" prop="attachment">
<Input v-model="entity.attachment"> </Input> </FormItem
></Col>
<Col :span="12"
><FormItem :label="l('phase')" prop="phase">
<Dictionary
code="mes.project_main.Phase"
v-model="entity.phase"
></Dictionary> </FormItem
></Col>
<Col :span="12" <Col :span="12"
><FormItem :label="l('startDate')" prop="startDate"> ><FormItem :label="l('startDate')" prop="startDate">
<DatePicker <DatePicker
...@@ -92,9 +90,31 @@ ...@@ -92,9 +90,31 @@
></DatePicker> </FormItem ></DatePicker> </FormItem
></Col> ></Col>
<Col :span="12" <Col :span="12"
><FormItem :label="l('type')" prop="type">
<Dictionary
code="project.main.type"
v-model="entity.type"
></Dictionary> </FormItem
></Col>
<!--
<Col :span="12"
><FormItem :label="l('phase')" prop="phase">
<Dictionary
code="mes.project_main.Phase"
v-model="entity.phase"
></Dictionary> </FormItem
></Col> -->
<!-- <Col :span="12"
><FormItem :label="l('businessUnits')" prop="businessUnits"> ><FormItem :label="l('businessUnits')" prop="businessUnits">
<Input v-model="entity.businessUnits"> </Input> </FormItem <Input v-model="entity.businessUnits"> </Input> </FormItem
></Col> ></Col> -->
<Col :span="24">
<FormItem :label="l('attachment')" prop="attachment">
<!-- <Input v-model="entity.template" type="textarea" :rows="5"></Input> -->
<files ref="refFile" :parms="parms" files />
</FormItem>
</Col>
<Col :span="24" <Col :span="24"
><FormItem :label="l('note')" prop="note"> ><FormItem :label="l('note')" prop="note">
<Input <Input
...@@ -103,11 +123,10 @@ ...@@ -103,11 +123,10 @@
:rows="5" :rows="5"
></Input> </FormItem ></Input> </FormItem
></Col> ></Col>
</Col>
</Row> </Row>
<FormItem> <FormItem>
<Button type="primary" @click="handleSubmit" :disabled="disabled" <Button type="primary" @click="handleSubmit" v-noClick>保存</Button>
>保存</Button
>
<Button @click="handleClose" class="ml20">取消</Button> <Button @click="handleClose" class="ml20">取消</Button>
</FormItem> </FormItem>
</Form> </Form>
...@@ -119,6 +138,8 @@ export default { ...@@ -119,6 +138,8 @@ export default {
data() { data() {
return { return {
disabled: false, disabled: false,
imgName: "",
avatorPath: "",
entity: { entity: {
// creationTime: null, // creationTime: null,
creatorUserId: this.$store.state.userInfo.userId, creatorUserId: this.$store.state.userInfo.userId,
...@@ -141,6 +162,13 @@ export default { ...@@ -141,6 +162,13 @@ export default {
rules: { rules: {
name: [{ required: true, message: "必填", trigger: "blur" }], name: [{ required: true, message: "必填", trigger: "blur" }],
}, },
parmsName: "app=material&eid=1&name=ProjectMain",
parms: {
app: "material",
eid: null,
name: "",
field: "",
},
}; };
}, },
props: { props: {
...@@ -148,15 +176,24 @@ export default { ...@@ -148,15 +176,24 @@ export default {
eid: Number, eid: Number,
}, },
mounted() { mounted() {
if (this.eid > 0) { // if (this.eid > 0) {
this.load(this.eid); // this.load(this.eid);
} // }
this.$refs.refmovieFile1.inputShow = false;
this.parms.eid = this.$u.guid();
}, },
methods: { methods: {
imgUrl() {
window.open(this.avatorPath, "_blank");
},
handleSubmit() { handleSubmit() {
this.$refs.form.validate((v) => { this.$refs.form.validate((v) => {
if (v) { if (v) {
this.disabled = true; if (this.$refs.refFile.nameList.length > 0) {
this.entity.attachment = this.parms.eid;
} else {
this.entity.attachment = "";
}
Api.create(this.entity) Api.create(this.entity)
.then((r) => { .then((r) => {
this.disabled = false; this.disabled = false;
...@@ -198,6 +235,12 @@ export default { ...@@ -198,6 +235,12 @@ export default {
this.load(v); this.load(v);
} }
}, },
imgName(newName, oldName) {
console.log(newName);
const imgPathsArr = JSON.parse(newName);
this.entity.picture = imgPathsArr[0].filePath;
this.avatorPath = fileUrlDown + imgPathsArr[0].filePath;
},
}, },
}; };
</script> </script>
\ No newline at end of file
<style lang="less"> <style lang="less">
.test_layout { .test_layout {
height: 100%; height: 100%;
.bg1 { .bg1 {
background: #fefefe; background: #fefefe;
} }
// &.fg { // &.fg {
// // overflow: auto; // // overflow: auto;
// } // }
} }
.layout-copy { .layout-copy {
text-align: center; text-align: center;
padding: 10px 0 20px; padding: 10px 0 20px;
...@@ -15,7 +18,7 @@ ...@@ -15,7 +18,7 @@
} }
</style> </style>
<template> <template>
<div class="flex fd test_layout"> <div class="flex fd test_layout">
<div> <div>
<Menu mode="horizontal" theme="light" active-name="a0"> <Menu mode="horizontal" theme="light" active-name="a0">
<div class="layout-assistant"> <div class="layout-assistant">
...@@ -24,18 +27,23 @@ ...@@ -24,18 +27,23 @@
<MenuItem name="a2" to="/test/com">异步组件</MenuItem> <MenuItem name="a2" to="/test/com">异步组件</MenuItem>
<MenuItem name="a4" to="/test/resource">资源选择</MenuItem> <MenuItem name="a4" to="/test/resource">资源选择</MenuItem>
<MenuItem name="a3" to="/test/view">详情拖拽排版</MenuItem> <MenuItem name="a3" to="/test/view">详情拖拽排版</MenuItem>
<MenuItem name="a5" to="/test/test1">colum验证</MenuItem>
</div> </div>
</Menu> </Menu>
</div> </div>
<div class="fg"> <div class="fg">
<nuxt-child></nuxt-child> <nuxt-child></nuxt-child>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
layout: "empty", layout: "empty",
async fetch({ store, params }) { async fetch({
store,
params
}) {
await store.dispatch("loadDictionary"); // 加载数据字典 await store.dispatch("loadDictionary"); // 加载数据字典
} }
}; };
......
<template>
<div style="width:100%;">
<Form :model="orderSearchForm" :label-width="120" :rules="ruleValidate" ref="formValidate">
<Row>
<Col span="8">
<FormItem label="输入校验" style="width:100%" prop="colums1">
<Input v-model="orderSearchForm.colums1" style="width:240px" />
</FormItem>
</Col>
<Col span="8">
<FormItem label="数据字典" style="width:100%" prop="colums2">
<dictionary code="plan.order.taskType" v-model="orderSearchForm.colums2" style="width:240px"></dictionary>
</FormItem>
</Col>
<Col span="8">
<FormItem label="电话校验" style="width:100%" prop="colums3">
<Input v-model="orderSearchForm.colums3" style="width:240px" />
</FormItem>
</Col>
<Col span="8">
<FormItem label="email校验" style="width:100%" prop="colums4">
<Input v-model="orderSearchForm.colums4" style="width:240px" />
</FormItem>
</Col>
<Col span="8">
<FormItem label="唯一性校验(用户编号)" style="width:100%" prop="colums5">
<Input v-model="orderSearchForm.colums5" style="width:240px" />
</FormItem>
</Col>
<Col span="8">
<FormItem label="时间校验" style="width:100%" prop="colums6">
<DatePicker v-model="orderSearchForm.colums6" type="date" placeholder="请选择日期" @on-change="getTime"></DatePicker>
</FormItem>
</Col>
</Row>
<Row>
<Col span="24">
<FormItem>
<Button type="primary" @click="handleSubmit" v-noClick>保存</Button>
</FormItem>
</Col>
</Row>
</Form>
</div>
</template>
<script>
export default {
layout: 'empty',
name: "Test1",
data() {
return {
orderSearchForm: {
colums6: ""
},
ruleValidate: this.$u.makeRules(),
};
},
mounted() {
},
methods: {
handleSubmit() {
this.$refs.formValidate.validate((v) => {
if (v) {
this.$Message.success('验证通过')
}
});
},
getTime(value) {
if (value != '') {
this.orderSearchForm.colums6 = this.getFormatDateEnd(value);
}
},
getFormatDateEnd(dates) {
const d = new Date(dates);
const resDate =
d.getFullYear() +
"-" +
this.p(d.getMonth() + 1) +
"-" +
this.p(d.getDate()) +
" 23:59:59";
return resDate;
},
p(s) {
return s < 10 ? "0" + s : s;
},
},
};
</script>
<template> <template>
<div class="flex"> <div class="flex">
<div class="fg1"> <div class="fg1">
<Form ref="form" :model="entity" :rules="rules" :label-width="110"> <Form ref="form" :model="entity" :rules="rules" :label-width="110">
<Row class="view"> <Row class="view">
...@@ -27,8 +27,9 @@ ...@@ -27,8 +27,9 @@
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
name: "", name: "",
...@@ -65,14 +66,16 @@ export default { ...@@ -65,14 +66,16 @@ export default {
}; };
</script> </script>
<style lang="less" > <style lang="less">
@line-height: 40px; @line-height: 40px;
@item-width: 12.5%; @item-width: 12.5%;
.view { .view {
margin: 30px; margin: 30px;
border: 1px solid #ddd; border: 1px solid #ddd;
line-height: @line-height; line-height: @line-height;
background-color: white; background-color: white;
.item { .item {
border-right: 1px solid #ddd; border-right: 1px solid #ddd;
border-top: 1px solid #ddd; border-top: 1px solid #ddd;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment