Commit 17a01eb8 authored by renjintao's avatar renjintao

mesplan

parent 947ba7a1
...@@ -344,7 +344,7 @@ henq.dirCode = (code, v) => { ...@@ -344,7 +344,7 @@ henq.dirCode = (code, v) => {
} }
henq.makeRules = (list, api) => { henq.makeRules = (list, apiUrl) => {
//测试数据start //测试数据start
list = [{ //普通输入框 list = [{ //普通输入框
...@@ -418,10 +418,43 @@ henq.makeRules = (list, api) => { ...@@ -418,10 +418,43 @@ henq.makeRules = (list, api) => {
control: 0, control: 0,
uniqueness: 0, uniqueness: 0,
ruleType: "email", 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: "",
} }
] ]
apiUrl = `${resourceUrl}/mesparttaskplansimulate/get`
//测试数据end //测试数据end
//唯一性校验
const validateCol = (rule, value, callback) => {
if (!value) {
return callback(new Error("输入不能为空"));
}
this.$api.post(apiUrl, value).then((r) => {
if (r.result.length > 0) {
return callback(new Error("输入数据已经存在"));
} else {
callback();
}
})
};
//手机号验证 //手机号验证
const valideTel = (rule, value, callback) => { const valideTel = (rule, value, callback) => {
var re = /^1[3-9]{1}[0-9]{9}/; var re = /^1[3-9]{1}[0-9]{9}/;
...@@ -446,6 +479,14 @@ henq.makeRules = (list, api) => { ...@@ -446,6 +479,14 @@ henq.makeRules = (list, api) => {
message: "必填", message: "必填",
trigger: "blur" trigger: "blur"
} }
if(el.uniqueness!=0)
{
let objUniqueness = {
validator: validateCol,
trigger: "blur"
}
rules[el.propertyName].push(objUniqueness)
}
} else if (el.ruleType == 'email') { } else if (el.ruleType == 'email') {
objInfo = { objInfo = {
required: true, required: true,
...@@ -453,25 +494,15 @@ henq.makeRules = (list, api) => { ...@@ -453,25 +494,15 @@ henq.makeRules = (list, api) => {
trigger: 'blur', trigger: 'blur',
type: 'email' type: 'email'
} }
} } else if (el.ruleType == 'phone') {
else if(el.ruleType == 'phone')
{
objInfo = { objInfo = {
required: true,
message: "必填",
trigger: "blur"
}
let valInfoPhone = {
validator: valideTel, validator: valideTel,
required: true, required: true,
trigger: "blur" trigger: "blur"
} }
rules[el.propertyName].push(valInfoPhone)
} }
} } else { //数据字典
else
{//数据字典
objInfo = { objInfo = {
required: true, required: true,
message: "必选", message: "必选",
......
<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,11 @@ ...@@ -106,9 +76,11 @@
</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,30 +119,24 @@ export default { ...@@ -147,30 +119,24 @@ 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)",
}, },
......
...@@ -552,7 +552,7 @@ export default { ...@@ -552,7 +552,7 @@ export default {
methods: { methods: {
getRules() { getRules() {
let ruleInfos = this.$u.makeRules() let ruleInfos = this.$u.makeRules()
console.log(ruleInfos) // console.log(ruleInfos)
//alert(JSON.stringify(ruleInfos)) //alert(JSON.stringify(ruleInfos))
}, },
addOk() { addOk() {
......
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