This commit is contained in:
xielue 2023-09-03 09:09:36 +08:00
parent 05787a594d
commit bc3fd8f75b
6 changed files with 95 additions and 15 deletions

View File

@ -1,6 +1,6 @@
<template>
<div>
<input autocomplete="off" class="readonlytext" type="text" :value="valueShow" />
<input autocomplete="off" class="readonlytext" type="text" :value="valueShow" />
</div>
</template>

View File

@ -0,0 +1,43 @@
<template>
<a-progress :type="type" :percent="value || 0" />
</template>
<script>
export default {
name: 'MkFormProgress',
components: {
},
props: {
value: {
type: [Number]
} ,
params: Object,
},
data () {
return {
type :"circle"
}
},
created(){
const { params } = this
if(params && params.type){
this.type = params.type;
}
},
methods: {
},
watch: {
}
}
</script>
<style>
</style>

View File

@ -10,6 +10,7 @@ import MkPrinter from './components/editors/MkPrinter.vue'
import MkCropper from './components/editors/MkCropper.vue'
import MkFormCropper from './components/editors/MkFormCropper.vue'
import MkFormInputShow from './components/editors/MkFormInputShow.vue'
import MkFormProgress from './components/editors/MkFormProgress.vue'
import MkGridSelect from './components/editors/MkGridSelect.vue' // 加载下拉表格
import MkGridDataSelector from './components/editors/MkGridDataSelector.vue' // 加载下拉表格
import MkFormDataSelector from './components/editors/MkFormDataSelector.vue' // 加载下拉表单
@ -52,7 +53,14 @@ VXETable.renderer.add('MkFormInputShow', {
return <mk-form-input-show v-model={data[field]} {...{ props }}></mk-form-input-show>
}
})
VXETable.renderer.add('MkFormProgress', {
// 项内容模板
renderItemContent(h, renderOpts, params) {
const { data, field } = params
const props = renderOpts.props || {}
return <mk-form-progress v-model={data[field]} {...{ props }}></mk-form-progress>
}
})
VXETable.renderer.add('MkFormUploader', {
@ -166,6 +174,15 @@ VXETable.renderer.add('enum', {
}
})
VXETable.renderer.add('progress', {
renderDefault(h, renderOpts, params) {
let { row, column } = params
let cellValue = row[column.field] || 0;
return <a-progress percent={cellValue} />;
}
})
var mk = {
...modal, // modal
@ -215,6 +232,9 @@ var mk = {
Vue.component(MkFormEditor.name, MkFormEditor);
Vue.component(MkFormCropper.name, MkFormCropper);
Vue.component(MkFormInputShow.name, MkFormInputShow);
Vue.component(MkFormProgress.name, MkFormProgress);
Vue.component(BasicPageList.name, BasicPageList);
Vue.component(BasicPageEdit.name, BasicPageEdit);

View File

@ -272,8 +272,16 @@ export default {
{ field: 'draw2D_time', dataRule: { type: 'timestamp' }, title: '出2D时间预计', span: 8, itemRender: { name: '$input', props: { type: 'date' } } },
{ field: 'draw3D_time', dataRule: { type: 'timestamp' }, title: '出3D时间预计', span: 8, itemRender: { name: '$input', props: { type: 'date' } } },
{ field: 'inlay_deep_hole_time', dataRule: { type: 'timestamp' }, title: '镶件深孔钻到厂日期预计', span: 8, itemRender: { name: '$input', props: { type: 'date' } } },
{ field: 'problem', title: '出现问题及建议反馈', span: 24, itemRender: { name: '$input', props: {} } },
{ field: 'problem', title: '出现问题及建议反馈', span: 8, itemRender: { name: '$input', props: {} } },
{
field: 'progress', title: '进度', span: 24, itemRender: {
name: 'MkFormProgress', props: {
params: {
type: "line"
}
}
}
},
]
},
@ -422,7 +430,7 @@ export default {
return new Date(v * 1000);
},
getDateValueString(v) {
if(!v) return '';
if (!v) return '';
return XEUtils.toDateString(new Date(v * 1000), 'yyyy-MM-dd');
},
@ -721,8 +729,8 @@ export default {
if (tdata.mold_detail) {
tdata.mold_name = tdata.mold_detail.name || '';
}
for(let name in tdata){
if(name.indexOf('_time') != -1 && tdata[name] && tdata[name].indexOf('T') != -1){
for (let name in tdata) {
if (name.indexOf('_time') != -1 && tdata[name] && tdata[name].indexOf('T') != -1) {
tdata[name] = tdata[name].split('T')[0];
}
}
@ -748,7 +756,7 @@ export default {
item.complete_time = this.getDateValueString(item.complete_time);
})
tdata.details = tdata.details.filter(a=>a.component_detail_name && a.process_detail_name);
tdata.details = tdata.details.filter(a => a.component_detail_name && a.process_detail_name);
console.log(tdata);
hiprint.init(); //
@ -805,5 +813,4 @@ export default {
.oplinks2 i {
margin-left: 5px;
}
</style>
}</style>

View File

@ -94,9 +94,11 @@ export default {
{ title: '操作', slots: { default: 'op' }, width: 120 },
{ field: 'code', sortable: true, title: '编码', width: 250 },
{ field: 'code', sortable: true, title: '编码', width: 150 },
{ field: 'mold_order',formatter: 'formatRef',params:{dataType:"object",textField:"code"}, sortable: false, title: '订单编号', width: 150 },
{ field: 'mold_detail',formatter: 'formatRef',params:{dataType:"object",textField:"name"}, sortable: false, title: '模具', width: 150 },
{ field: 'progress', cellRender:{name: 'progress'}, width: 160, sortable: true, title: '进度', showHeaderOverflow: true },
{ field: 'create_time', formatter: 'formatDate', width: 100, sortable: true, title: '创建时间', showHeaderOverflow: true }, //
{ field: 'update_time', formatter: 'formatDate', width: 100, sortable: true, title: '更新时间', showHeaderOverflow: true }, //

View File

@ -146,7 +146,15 @@ export default {
{ field: 'inlay_deep_hole_time', dataRule: { type: 'timestamp' }, title: '镶件深孔钻到厂日期预计', span: 8, itemRender: { name: 'MkFormInputShow', props: { params:{dataType : 'date' } } } },
{ field: 'problem', title: '出现问题及建议反馈', span: 24, itemRender: { name: 'MkFormInputShow', props: {} } },
{
field: 'progress', title: '进度', span: 24, itemRender: {
name: 'MkFormProgress', props: {
params: {
type: "circle"
}
}
}
},
@ -427,7 +435,7 @@ export default {
useBigInt: true,
}).then(a => {
let row = a.data.mold_production_order;
let row = a.data.mold_production_order;
let data2 = Object.assign({}, row);
let data3 = Object.assign({}, row.mold_detail);