修改看板配置

master
suixy 3 weeks ago
parent 2a4a8ea760
commit 19f8ceb47c

@ -285,7 +285,6 @@ const findTier = () => {
});
});
} else if (data?.rows) {
console.log(data?.rows);
Object.keys(data.rows?.[0]).forEach(key => {
constructionDataForm.value.designDataFieldList.push({
name: key,

@ -1020,7 +1020,7 @@
:headers="headers"
:on-success="(res)=>nodeAttrForm.backgroundImage = res.data.url"
>
<img v-if="nodeAttrForm.backgroundImage" :src="nodeAttrForm.backgroundImage" class="avatar"
<img style="width: 100px" v-if="nodeAttrForm.backgroundImage" :src="nodeAttrForm.backgroundImage" class="avatar"
alt="" />
<el-icon v-else class="avatar-uploader-icon">
<Plus />
@ -1210,6 +1210,9 @@
<el-form-item label="饼图中心位置" v-if="Object.keys(nodeAttrForm).includes('pieCenter')">
<el-slider v-model="nodeAttrForm.pieCenter" :min="0" :max="100" />
</el-form-item>
<el-form-item label="文字大小" v-if="Object.keys(nodeAttrForm).includes('fontSize')">
<el-slider v-model="nodeAttrForm.fontSize" :min="12" :max="40" />
</el-form-item>
<el-form-item label="饼图半径" v-if="Object.keys(nodeAttrForm).includes('pieRadius')">
<el-slider v-model="nodeAttrForm.pieRadius" :min="0" :max="100" range />
</el-form-item>
@ -1246,6 +1249,9 @@
/>
</el-select>
</el-form-item>
<el-form-item label="数字数量" v-if="Object.keys(nodeAttrForm).includes('numQuantity')">
<el-input-number :min="1" :controls="false" v-model="nodeAttrForm.numQuantity" autocomplete="off" />
</el-form-item>
<el-form-item label="js脚本设置">
<el-input type="textarea" v-model="nodeAttrForm.JScript" style="width: 100%" />
</el-form-item>
@ -1276,7 +1282,7 @@
:headers="headers"
:on-success="pageBgUploadSuccess"
>
<img v-if="pageSettingForm.bg" :src="pageSettingForm.bg" class="avatar" />
<img v-if="pageSettingForm.bg" :src="pageSettingForm.bg" class="avatar" style="width: 100px" />
<el-icon v-else class="avatar-uploader-icon">
<Plus />
</el-icon>

@ -1,15 +1,17 @@
<template>
<div
:style="{width:props.dimensions.width*props.ratioWidth+'px',height:props.dimensions.height*props.ratioHeight+'px'}">
<NodeResizer @resizeEnd="(e) => $emit('resize', e)" color="#fff" v-if="!props.isView && !props.isHideHandle && props.selected"
<NodeResizer @resizeEnd="(e) => $emit('resize', e)" color="#fff"
v-if="!props.isView && !props.isHideHandle && props.selected"
@resize="resize" />
<div class="custom-node"
:style="{color:'#fff',width:props.dimensions.width*props.ratioWidth+'px',height:props.dimensions.height*props.ratioHeight+'px',pointerEvents:props.isView?'auto': 'none'}">
:style="{backgroundColor:props.data.options.backgroundColor,color:'#fff',width:props.dimensions.width*props.ratioWidth+'px',height:props.dimensions.height*props.ratioHeight+'px',pointerEvents:props.isView?'auto': 'none'}">
<vue-number-roll-plus
style="display: inline-block;margin-right: 4px;"
style="display: inline-block; text-align: center;position: relative;top: 50%;transform: translateY(-50%)"
:number="item"
:background="props.data.options.backgroundColor"
:style="{border:props.data.options.isBorder? ` 1px solid ${props.data.options.borderColor}` :''}"
:height="props.dimensions.height*props.ratioHeight"
background="#fff0"
:style="{fontSize:props.data.options.fontSize+'px',color:props.data.options.borderColor,'--number-roll-plus-width':((props.dimensions.width*props.ratioWidth) / props.data.options.numQuantity) - (props.data.options.isBorder? 2:0) +'px',border:props.data.options.isBorder? ` 1px solid ${props.data.options.borderColor}` :''}"
v-for="(item, index) in list"
></vue-number-roll-plus>
</div>
@ -70,10 +72,21 @@ const emit = defineEmits(['resize']);
const resize = (e) => {
emit('resize', e, props.id);
};
watch(() => [JSON.parse(JSON.stringify(props.data?.options?.number)), JSON.parse(JSON.stringify(props.inputData?.value || ''))], (obj1, obj2) => {
const padArray = (arr,x,value=0)=>{
if (arr.length > x) {
return arr.slice(-x);
} else if (arr.length < x) {
const padding = new Array(x - arr.length).fill(value);
return [...padding, ...arr];
} else {
// x
return arr;
}
}
watch(() => [JSON.parse(JSON.stringify(props.data?.options?.numQuantity)),JSON.parse(JSON.stringify(props.data?.options?.number)), JSON.parse(JSON.stringify(props.inputData?.value || ''))], (obj1, obj2) => {
if (JSON.stringify(obj1) !== JSON.stringify(obj2)) {
let value = props.inputData?.value || props.data.options.number || '';
list.value = value.toString().split('');
list.value = padArray(value.toString().split(''),props.data.options.numQuantity)
}
}, { deep: true, immediate: true });
</script>

@ -356,7 +356,7 @@ const getOption = (e) => {
return { pageSizeField: 'pageSize', currentPageField: 'pageNum' };
} else if (e === 'digitalFlop') {
return {
field: '', number: 1111, backgroundColor: 'rgba(180, 180, 180, 0.2)', isBorder: true, borderColor: '#fff'
field: '', color: '#fff',fontSize: 22,number: 123,numQuantity:3, backgroundColor: 'rgba(180, 180, 180, 0.2)', isBorder: true, borderColor: '#fff'
};
} else {
return {};

@ -112,7 +112,7 @@
</template>
<div>
<img :src="qrcodeList.find(e=>e.code === scope.row.batchCode).src"
:style="{ width:'100px',height:'100px',objectFit:'contain'}"
:style="{ width:'100%',objectFit:'contain'}"
alt="" />
</div>
</el-popover>

Loading…
Cancel
Save