feat():U8同步数据修改

master
jiyufei 2 months ago
parent 48ad92440e
commit 9d6844c985

@ -24,6 +24,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.stream.Collectors;
/**
@ -477,6 +478,13 @@ public class YysDayWorkServiceImpl extends ServiceImpl<YysDayWorkMapper, YysDayW
requisitionResult = yysRequisitionReportService.saveBatch(request.getRequisitionReportList());
}
if ((prodResult && requisitionResult) || (packResult && requisitionResult)) {
//修改是否完工状态
CompletableFuture.runAsync(()->{
YysDayWorkEntity entity = this.getById(request.getId());
entity.setIsConfirm("2");
entity.setProductionStatus("2");
this.updateById(entity);
});
return "确认成功";
}
return "确认失败";

@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import jnpf.base.UserInfo;
import jnpf.base.model.ColumnDataModel;
import jnpf.database.model.superQuery.SuperJsonModel;
@ -19,6 +20,7 @@ import jnpf.model.yysmaterialclass.MaterialClassSync;
import jnpf.model.yysmaterialclass.YysMaterialClassConstant;
import jnpf.model.yysmaterialclass.YysMaterialClassForm;
import jnpf.model.yysmaterialclass.YysMaterialClassPagination;
import jnpf.model.yyssupplierclass.SupplierClassSync;
import jnpf.permission.entity.UserEntity;
import jnpf.service.YysMaterialClassService;
import jnpf.util.*;
@ -33,6 +35,8 @@ import org.springframework.transaction.annotation.Transactional;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
@ -316,6 +320,16 @@ public class YysMaterialClassServiceImpl extends ServiceImpl<YysMaterialClassMap
//过滤出同步过的
List<String> list = this.list(new LambdaQueryWrapper<>(YysMaterialClassEntity.class).isNull(YysMaterialClassEntity::getDeleteMark))
.stream().map(YysMaterialClassEntity::getClassId).collect(Collectors.toList());
//顶级分类
Map<String, String> topCollect = query.stream()
.filter(obj -> obj.getCInvCCode().equals("1"))
.collect(Collectors.toMap(MaterialClassSync::getCInvCCode, MaterialClassSync::getCInvCName));
//二级分类
Map<String, String> secondCollect = query.stream()
.filter(obj -> obj.getCInvCCode().equals("1"))
.collect(Collectors.toMap(MaterialClassSync::getCInvCCode, MaterialClassSync::getCInvCName));
List<YysMaterialClassEntity> result = Lists.newArrayList();
for (MaterialClassSync sync : query) {
if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(list) && list.contains(sync.getCInvCCode())) {
@ -326,6 +340,22 @@ public class YysMaterialClassServiceImpl extends ServiceImpl<YysMaterialClassMap
entity.setId(mainId);
entity.setClassId(sync.getCInvCCode());
entity.setClassName(sync.getCInvCName());
if (sync.getIInvCGrade().equals("1")) {
entity.setParentClassification(sync.getIInvCGrade());
entity.setParentClassname("顶级");
} else if (sync.getIInvCGrade().equals("2")) {
char charAt = sync.getCInvCCode().charAt(0);
if (topCollect.containsKey(String.valueOf(charAt))) {
entity.setParentClassification(String.valueOf(charAt));
entity.setParentClassname(topCollect.get(String.valueOf(charAt)));
}
} else {
String rule = sync.getCInvCCode().substring(0, 3);
if (secondCollect.containsKey(rule)) {
entity.setParentClassification(rule);
entity.setParentClassname(secondCollect.get(rule));
}
}
entity.setEnableStatus("1");
result.add(entity);
}

@ -31,6 +31,7 @@ import java.util.stream.Collectors;
import jnpf.base.model.ColumnDataModel;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
@ -353,9 +354,16 @@ public class YysMaterialInformationServiceImpl extends ServiceImpl<YysMaterialIn
entity.setMaterialId(sync.getCInvCode());
entity.setMaterialName(sync.getCInvName());
entity.setMaterialClassification(sync.getCInvCCode());
entity.setMaterialSname(sync.getCInvAddCode());
entity.setModel(sync.getEInvStd());
entity.setUnitMeasurement(sync.getCComUnitCode());
//改为计量单位组
entity.setMaterialSname(sync.getCGroupCode());
entity.setSafetyStock(sync.getISafeNum());
entity.setEnableStatus("1");
if (StringUtils.isNoneBlank(sync.getDEDate())) {
entity.setEnableStatus("1");
} else {
entity.setEnableStatus("2");
}
result.add(entity);
}
if (CollectionUtils.isEmpty(result)) {

@ -34,6 +34,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@ -314,27 +315,40 @@ public class YysSupplierClassServiceImpl extends ServiceImpl<YysSupplierClassMap
if (org.apache.commons.collections4.CollectionUtils.isEmpty(query)) {
return "远程供应商分类信息为空";
}
//过滤出同步过的
List<String> list = this.list(new LambdaQueryWrapper<>(YysSupplierClassEntity.class).isNull(YysSupplierClassEntity::getDeleteMark))
.stream().map(YysSupplierClassEntity::getClassId).collect(Collectors.toList());
//顶级分类
Map<String, String> collect = query.stream()
.filter(obj -> obj.getIVCGrade().equals("1"))
.collect(Collectors.toMap(SupplierClassSync::getCVCCode, SupplierClassSync::getCVCName));
List<YysSupplierClassEntity> result = Lists.newArrayList();
for (SupplierClassSync sync : query) {
if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(list) && list.contains(sync.getCVCCode())) {
continue;
}
YysSupplierClassEntity entity = new YysSupplierClassEntity();
String mainId = RandomUtil.uuId();
entity.setId(mainId);
entity.setClassId(sync.getCVCCode());
entity.setClassName(sync.getCVCName());
entity.setEnableStatus("1");
//todo 供应商上级分类
if ("1".equals(sync.getIVCGrade())) {
entity.setParentClassification(sync.getIVCGrade());
entity.setParentClassname("顶级");
} else {
char charAt = sync.getCVCCode().charAt(0);
if (collect.containsKey(String.valueOf(charAt))) {
entity.setParentClassification(String.valueOf(charAt));
entity.setParentClassname(collect.get(String.valueOf(charAt)));
}
}
result.add(entity);
}
if (CollectionUtils.isEmpty(result)) {
//过滤出同步过的
List<YysSupplierClassEntity> collect1 = result.stream().filter(obj -> !list.contains(obj.getClassId())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(collect1)) {
return "没有需要同步的数据";
}
boolean b = this.saveBatch(result);
boolean b = this.saveBatch(collect1);
if (b) {
return "同步成功";
}

@ -23,6 +23,7 @@ import jnpf.permission.entity.UserEntity;
import jnpf.service.YysSupplierInformationService;
import jnpf.util.*;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
@ -327,8 +328,11 @@ public class YysSupplierInformationServiceImpl extends ServiceImpl<YysSupplierIn
entity.setSupplierId(sync.getCVenCode());
entity.setSupplierSname(sync.getCVenAbbName());
entity.setSupplierCname(sync.getCVenName());
entity.setEnableStatus("1");
//todo 供应商分类 有待商榷
if (StringUtils.isNoneBlank(sync.getDEndDate())) {
entity.setEnableStatus("1");
} else {
entity.setEnableStatus("2");
}
entity.setSupplierClassification(sync.getCVCCode());
result.add(entity);
}

@ -31,6 +31,7 @@ import java.util.stream.Collectors;
import jnpf.base.model.ColumnDataModel;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
@ -315,15 +316,22 @@ public class YysUnitInformationServiceImpl extends ServiceImpl<YysUnitInformatio
RowMapper<UnitInfoSync> rowMapper = new BeanPropertyRowMapper<>(UnitInfoSync.class);
String sql = "select * from dbo.ComputationUnit";
List<UnitInfoSync> query = this.jdbcTemplate.query(sql, rowMapper);
if (org.apache.commons.collections4.CollectionUtils.isEmpty(query)) {
if (CollectionUtils.isEmpty(query)) {
return "远程单位信息为空";
}
RowMapper<UnitGroupSync> groupSyncRowMapper = new BeanPropertyRowMapper<>(UnitGroupSync.class);
String groupSql = "select * from dbo.ComputationGroup";
List<UnitGroupSync> groupSyncs = this.jdbcTemplate.query(groupSql, groupSyncRowMapper);
Map<String, String> collect = Collections.emptyMap();
if (CollectionUtils.isNotEmpty(groupSyncs)) {
collect = groupSyncs.stream().collect(Collectors.toMap(UnitGroupSync::getCGroupCode, UnitGroupSync::getCGroupName));
}
//过滤出同步过的
List<String> list = this.list(new LambdaQueryWrapper<>(YysUnitInformationEntity.class).isNull(YysUnitInformationEntity::getDeleteMark))
.stream().map(YysUnitInformationEntity::getUnitId).collect(Collectors.toList());
List<YysUnitInformationEntity> result = Lists.newArrayList();
for (UnitInfoSync sync : query) {
if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(list) && list.contains(sync.getCComunitCode())) {
if (CollectionUtils.isNotEmpty(list) && list.contains(sync.getCComunitCode())) {
continue;
}
YysUnitInformationEntity entity = new YysUnitInformationEntity();
@ -332,6 +340,9 @@ public class YysUnitInformationServiceImpl extends ServiceImpl<YysUnitInformatio
entity.setUnitId(sync.getCComunitCode());
entity.setUnitName(sync.getCComUnitName());
entity.setGroupCode(sync.getCGroupCode());
if (MapUtils.isNotEmpty(collect) && collect.containsKey(entity.getGroupCode())) {
entity.setGroupName(collect.get(entity.getGroupCode()));
}
entity.setEnableStatus("1");
result.add(entity);
}

@ -16,6 +16,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.*;
@ -56,6 +57,9 @@ public class YysSupplierInformationController {
@Autowired
private YysSupplierInformationService yysSupplierInformationService;
@Resource
private YysSupplierClassService yysSupplierClassService;
/**
*
@ -68,9 +72,14 @@ public class YysSupplierInformationController {
public ActionResult list(@RequestBody YysSupplierInformationPagination yysSupplierInformationPagination) throws IOException {
List<YysSupplierInformationEntity> list = yysSupplierInformationService.getList(yysSupplierInformationPagination);
List<Map<String, Object>> realList = new ArrayList<>();
List<YysSupplierClassEntity> supplierClassEntities = yysSupplierClassService.list();
Map<String, String> collect = supplierClassEntities.stream().collect(Collectors.toMap(YysSupplierClassEntity::getClassId, YysSupplierClassEntity::getClassName));
for (YysSupplierInformationEntity entity : list) {
Map<String, Object> yysSupplierInformationMap = JsonUtil.entityToMap(entity);
yysSupplierInformationMap.put("id", yysSupplierInformationMap.get("id"));
if (ObjectUtil.isNotEmpty(entity) && collect.containsKey(entity.getSupplierClassification())) {
yysSupplierInformationMap.put("supplierClassification", collect.get(entity.getSupplierClassification()));
}
//副表数据
//子表数据
realList.add(yysSupplierInformationMap);

@ -20,6 +20,8 @@ public class YysMaterialClassEntity {
private String classId;
@TableField(value = "CLASS_NAME" , updateStrategy = FieldStrategy.IGNORED)
private String className;
@TableField(value = "PARENT_CLASSNAME", updateStrategy = FieldStrategy.IGNORED)
private String parentClassname;
@TableField(value = "PARENT_CLASSIFICATION" , updateStrategy = FieldStrategy.IGNORED)
private String parentClassification;
@TableField(value = "ENABLE_STATUS" , updateStrategy = FieldStrategy.IGNORED)

@ -2,10 +2,10 @@ package jnpf.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.util.Date;
/**
*
*
* @ V3.5
* @ https://www.jnpfsoft.com
* @ JNPF
@ -13,16 +13,18 @@ import java.util.Date;
*/
@Data
@TableName("yys_supplier_class")
public class YysSupplierClassEntity {
@TableId(value ="ID" )
public class YysSupplierClassEntity {
@TableId(value = "ID")
private String id;
@TableField(value = "CLASS_ID" , updateStrategy = FieldStrategy.IGNORED)
@TableField(value = "CLASS_ID", updateStrategy = FieldStrategy.IGNORED)
private String classId;
@TableField(value = "CLASS_NAME" , updateStrategy = FieldStrategy.IGNORED)
@TableField(value = "CLASS_NAME", updateStrategy = FieldStrategy.IGNORED)
private String className;
@TableField(value = "PARENT_CLASSIFICATION" , updateStrategy = FieldStrategy.IGNORED)
@TableField(value = "PARENT_CLASSNAME", updateStrategy = FieldStrategy.IGNORED)
private String parentClassname;
@TableField(value = "PARENT_CLASSIFICATION", updateStrategy = FieldStrategy.IGNORED)
private String parentClassification;
@TableField(value = "ENABLE_STATUS" , updateStrategy = FieldStrategy.IGNORED)
@TableField(value = "ENABLE_STATUS", updateStrategy = FieldStrategy.IGNORED)
private String enableStatus;
@TableField("REAMRK")
private String reamrk;

@ -22,6 +22,8 @@ public class YysUnitInformationEntity {
private String unitName;
@TableField(value = "GROUP_CODE" , updateStrategy = FieldStrategy.IGNORED)
private String groupCode;
@TableField(value = "GROUP_NAME" , updateStrategy = FieldStrategy.IGNORED)
private String groupName;
@TableField(value = "ENABLE_STATUS" , updateStrategy = FieldStrategy.IGNORED)
private String enableStatus;
@TableField("REAMRK")

@ -17,7 +17,7 @@ public class MaterialClassSync {
/**
*
*/
private boolean iInvCGrade;
private String iInvCGrade;
/**
*

@ -33,4 +33,22 @@ public class MaterialInformationSync {
*
*/
private String iSafeNum;
/**
*
*/
private String dEDate;
/**
*
*/
private String eInvStd;
/**
*
*/
private String cComUnitCode;
/**
*
*/
private String cGroupCode;
}

@ -18,7 +18,7 @@ public class SupplierClassSync {
/**
*
*/
private boolean iVCGrade;
private String iVCGrade;
/**
*

@ -24,4 +24,9 @@ public class SupplierInfoSync {
*
**/
private String cVCCode;
/**
*
*/
private String dEndDate;
}

@ -0,0 +1,15 @@
package jnpf.model.yysunitinformation;
import lombok.Data;
@Data
public class UnitGroupSync {
/**
*
*/
private String cGroupName;
/**
*
*/
private String cGroupCode;
}

@ -36,6 +36,9 @@ public class YysTaskHandler {
@Autowired
private UserProvider userProvider;
/**
*
*/
//每十分钟执行一次
@XxlJob("syncDeviceData")
public void syncDeviceData() {
@ -76,6 +79,9 @@ public class YysTaskHandler {
}
/**
*
*/
//每十分钟执行一次
@XxlJob("syncDeviceWarnData")
public void syncDeviceWarnData() {

@ -1,142 +1,132 @@
<template>
<el-dialog title="详情"
:close-on-click-modal="false" append-to-body
:visible.sync="visible" class="JNPF-dialog JNPF-dialog_center" lock-scroll
width="600px">
<el-row :gutter="15" class="">
<el-form ref="formRef" :model="dataForm" size="small" label-width="100px" label-position="right" >
<template v-if="!loading">
<el-col :span="24" >
<jnpf-form-tip-item label="物料编码"
prop="materialId" >
<p>{{dataForm.materialId}}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" >
<jnpf-form-tip-item label="物料名称"
prop="materialName" >
<p>{{dataForm.materialName}}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" >
<jnpf-form-tip-item label="物料分类"
prop="materialClassification" >
<p>{{dataForm.materialClassification}}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" >
<jnpf-form-tip-item label="计量单位"
prop="unitMeasurement" >
<p>{{dataForm.unitMeasurement}}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" >
<jnpf-form-tip-item label="物料简称"
prop="materialSname" >
<p>{{dataForm.materialSname}}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" >
<jnpf-form-tip-item label="规格/型号"
prop="model" >
<p>{{dataForm.model}}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" >
<jnpf-form-tip-item label="安全库存"
prop="safetyStock" >
<p>{{dataForm.safetyStock}}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" >
<jnpf-form-tip-item label="启用状态"
prop="enableStatus" >
<p>{{ dataForm.enableStatus }} </p>
</jnpf-form-tip-item>
</el-col>
</template>
</el-form>
</el-row>
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false"> </el-button>
</span>
<Detail v-if="detailVisible" ref="Detail" @close="detailVisible = false" />
<el-dialog title="详情" :close-on-click-modal="false" append-to-body :visible.sync="visible"
class="JNPF-dialog JNPF-dialog_center" lock-scroll width="600px">
<el-row :gutter="15" class="">
<el-form ref="formRef" :model="dataForm" size="small" label-width="100px" label-position="right">
<template v-if="!loading">
<el-col :span="24">
<jnpf-form-tip-item label="物料编码" prop="materialId">
<p>{{ dataForm.materialId }}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="物料名称" prop="materialName">
<p>{{ dataForm.materialName }}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="物料分类" prop="materialClassification">
<p>{{ dataForm.materialClassification }}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="计量单位" prop="unitMeasurement">
<p>{{ dataForm.unitMeasurement }}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="计量单位组" prop="materialSname">
<p>{{ dataForm.materialSname }}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="规格/型号" prop="model">
<p>{{ dataForm.model }}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="安全库存" prop="safetyStock">
<p>{{ dataForm.safetyStock }}</p>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="启用状态" prop="enableStatus">
<p>{{ dataForm.enableStatus }} </p>
</jnpf-form-tip-item>
</el-col>
</template>
</el-form>
</el-row>
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false"> </el-button>
</span>
<Detail v-if="detailVisible" ref="Detail" @close="detailVisible = false" />
</el-dialog>
</template>
<script>
import request from '@/utils/request'
import request from '@/utils/request'
import { getConfigData } from '@/api/onlineDev/visualDev'
import jnpf from '@/utils/jnpf'
import Detail from '@/views/basic/dynamicModel/list/detail'
import { thousandsFormat } from "@/components/Generator/utils/index"
export default {
components: { Detail},
props: [],
data() {
return {
visible: false,
detailVisible: false,
loading: false,
import { getConfigData } from '@/api/onlineDev/visualDev'
import jnpf from '@/utils/jnpf'
import Detail from '@/views/basic/dynamicModel/list/detail'
import { thousandsFormat } from "@/components/Generator/utils/index"
export default {
components: { Detail },
props: [],
data() {
return {
visible: false,
detailVisible: false,
loading: false,
dataForm: {
id :'',
materialId : '',
materialName : '',
materialClassification : '',
unitMeasurement : '',
materialSname : '',
model : '',
safetyStock : '',
enableStatus : "1",
id: '',
materialId: '',
materialName: '',
materialClassification: '',
unitMeasurement: '',
materialSname: '',
model: '',
safetyStock: '',
enableStatus: "1",
},
enableStatusOptions:[{"fullName":"启用","id":"1"},{"fullName":"禁用","id":"2"}],
enableStatusProps:{"label":"fullName","value":"id" },
enableStatusOptions: [{ "fullName": "启用", "id": "1" }, { "fullName": "禁用", "id": "2" }],
enableStatusProps: { "label": "fullName", "value": "id" },
}
},
computed: {},
watch: {},
created() {
},
computed: {},
watch: {},
created() {
},
mounted() {},
methods: {
toDetail(defaultValue, modelId) {
if (!defaultValue) return
getConfigData(modelId).then(res => {
if (!res.data || !res.data.formData) return
let formData = JSON.parse(res.data.formData)
formData.popupType = 'general'
this.detailVisible = true
this.$nextTick(() => {
this.$refs.Detail.init(formData, modelId, defaultValue)
})
},
mounted() { },
methods: {
toDetail(defaultValue, modelId) {
if (!defaultValue) return
getConfigData(modelId).then(res => {
if (!res.data || !res.data.formData) return
let formData = JSON.parse(res.data.formData)
formData.popupType = 'general'
this.detailVisible = true
this.$nextTick(() => {
this.$refs.Detail.init(formData, modelId, defaultValue)
})
},
dataInfo(dataAll){
let _dataAll =dataAll
this.dataForm = _dataAll
},
})
},
dataInfo(dataAll) {
let _dataAll = dataAll
this.dataForm = _dataAll
},
init(id) {
this.dataForm.id = id || 0;
this.visible = true;
this.$nextTick(() => {
if(this.dataForm.id){
this.loading = true
request({
url: '/api/example/YysMaterialInformation/detail/'+this.dataForm.id,
method: 'get'
}).then(res => {
this.dataInfo(res.data)
this.loading = false
})
}
init(id) {
this.dataForm.id = id || 0;
this.visible = true;
this.$nextTick(() => {
if (this.dataForm.id) {
this.loading = true
request({
url: '/api/example/YysMaterialInformation/detail/' + this.dataForm.id,
method: 'get'
}).then(res => {
this.dataInfo(res.data)
this.loading = false
})
}
})
},
})
},
}
},
}
</script>

@ -36,7 +36,7 @@
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<jnpf-form-tip-item label="物料简称" prop="materialSname">
<jnpf-form-tip-item label="计量单位组" prop="materialSname">
<JnpfInput v-model="dataForm.materialSname" @change="changeData('materialSname', -1)"
placeholder="请输入" clearable :style='{ "width": "100%" }'>
</JnpfInput>

@ -68,7 +68,7 @@
</el-table-column>
<el-table-column prop="unitMeasurement" label="计量单位" align="center">
</el-table-column>
<el-table-column prop="materialSname" label="物料简称" align="center">
<el-table-column prop="materialSname" label="计量单位组" align="center">
</el-table-column>
<el-table-column prop="model" label="规格/型号" align="center">
</el-table-column>

Loading…
Cancel
Save