Merge branch 'master' of http://gitea.xxhhcty.xyz:8080/zcdsj/factory_web
This commit is contained in:
commit
b3c7491265
|
|
@ -95,7 +95,7 @@ export default {
|
|||
}
|
||||
},
|
||||
sendToCoder:{
|
||||
name: "下发到打码器",
|
||||
name: "下发到喷码",
|
||||
req: async function(id, data){
|
||||
return await http.post(
|
||||
`${config.API_URL}/cm/labeltemplate/${id}/send_to_coder/`,
|
||||
|
|
|
|||
|
|
@ -5,6 +5,11 @@
|
|||
<el-icon-printer :size="26"/>
|
||||
</el-icon>
|
||||
</div>
|
||||
<div class="screen panel-item" @click="coderSetting" title="喷码设置">
|
||||
<el-icon>
|
||||
<el-icon-postcard :size="26"/>
|
||||
</el-icon>
|
||||
</div>
|
||||
<scan-dialog ref="scanDialog" :type="'info'" @closed="scanClose"> </scan-dialog>
|
||||
<div class="screen panel-item hidden-sm-and-down" @click="screen">
|
||||
<el-icon>
|
||||
|
|
@ -104,6 +109,25 @@
|
|||
<el-button type="primary" @click="savePrinter">保存</el-button>
|
||||
</el-footer>
|
||||
</el-dialog>
|
||||
<el-dialog title="喷码设置" v-model="setCoderVisible" width="600px">
|
||||
<el-form label-width="120px">
|
||||
<el-form-item label="喷码IP">
|
||||
<el-input v-model="coder_ip" placeholder="留空则使用模板配置"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="喷码端口">
|
||||
<el-input v-model="coder_port" placeholder="留空则使用模板配置, 默认3100"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="喷码用户区">
|
||||
<el-input v-model="coder_field" placeholder="留空则使用模板配置, 默认1"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="喷码用户区2">
|
||||
<el-input v-model="coder_field2" placeholder="留空则使用模板配置"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-footer>
|
||||
<el-button type="primary" @click="saveCoder">保存</el-button>
|
||||
</el-footer>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
v-model="searchVisible"
|
||||
:width="700"
|
||||
|
|
@ -131,6 +155,7 @@ export default {
|
|||
userNameF: "",
|
||||
visible:false,
|
||||
setNameVisible:false,
|
||||
setCoderVisible:false,
|
||||
searchVisible: false,
|
||||
msg: false,
|
||||
msgList: {},
|
||||
|
|
@ -144,6 +169,10 @@ export default {
|
|||
scanType:'',
|
||||
printer_name:'',
|
||||
printer_ip:'',
|
||||
coder_ip:'',
|
||||
coder_port:'',
|
||||
coder_field:'',
|
||||
coder_field2:'',
|
||||
scanVisible:false,
|
||||
};
|
||||
},
|
||||
|
|
@ -164,6 +193,10 @@ export default {
|
|||
this.userNameF = this.userName.substring(0, 1);
|
||||
this.printer_name = localStorage.getItem("printer_name") || "";
|
||||
this.printer_ip = localStorage.getItem("printer_ip") || "127.0.0.1";
|
||||
this.coder_ip = localStorage.getItem("coder_ip") || "";
|
||||
this.coder_port = localStorage.getItem("coder_port") || "";
|
||||
this.coder_field = localStorage.getItem("coder_field") || "";
|
||||
this.coder_field2 = localStorage.getItem("coder_field2") || "";
|
||||
},
|
||||
methods: {
|
||||
openBook() {
|
||||
|
|
@ -263,6 +296,18 @@ export default {
|
|||
});
|
||||
this.setNameVisible=false;
|
||||
},
|
||||
coderSetting(){
|
||||
this.setCoderVisible=true;
|
||||
},
|
||||
saveCoder(){
|
||||
this.$TOOL.setCoder({
|
||||
"coder_ip":this.coder_ip,
|
||||
"coder_port":this.coder_port,
|
||||
"coder_field":this.coder_field,
|
||||
"coder_field2":this.coder_field2
|
||||
});
|
||||
this.setCoderVisible=false;
|
||||
},
|
||||
//显示短消息
|
||||
showMsg() {
|
||||
this.msg = true;
|
||||
|
|
|
|||
|
|
@ -147,6 +147,12 @@ tool.setPrint = function (val) {
|
|||
localStorage.setItem('printer_name', val)
|
||||
}
|
||||
}
|
||||
tool.setCoder = function (val) {
|
||||
localStorage.setItem('coder_ip', val.coder_ip || '')
|
||||
localStorage.setItem('coder_port', val.coder_port || '')
|
||||
localStorage.setItem('coder_field', val.coder_field || '')
|
||||
localStorage.setItem('coder_field2', val.coder_field2 || '')
|
||||
}
|
||||
/* 复制对象 */
|
||||
tool.objCopy = function (obj) {
|
||||
return JSON.parse(JSON.stringify(obj));
|
||||
|
|
|
|||
|
|
@ -12,6 +12,11 @@
|
|||
>
|
||||
<el-table-column label="物料名称" prop="name"></el-table-column>
|
||||
</xtSelect>
|
||||
<el-input v-model="query.batch"
|
||||
placeholder="批次号"
|
||||
clearable
|
||||
style="width: 200px;"
|
||||
></el-input>
|
||||
<el-date-picker
|
||||
v-model="query.start_date"
|
||||
type="date"
|
||||
|
|
@ -39,18 +44,25 @@
|
|||
:data="tableData"
|
||||
id="exportDiv"
|
||||
row-key="id"
|
||||
:summary-method="getSummaries"
|
||||
show-summary
|
||||
hidePagination
|
||||
hideDo
|
||||
stripe
|
||||
>
|
||||
<el-table-column type="index" width="50" fixed="left"/>
|
||||
<el-table-column label="工段名" prop="工段名">
|
||||
<el-table-column type="index" width="50" fixed="left"/>
|
||||
<el-table-column label="工段名" prop="工段名" fixed="left">
|
||||
</el-table-column>
|
||||
<el-table-column label="生产数" prop="生产数">
|
||||
<el-table-column label="生产数" prop="生产数" fixed="left">
|
||||
</el-table-column>
|
||||
<el-table-column label="合格数" prop="合格数">
|
||||
<el-table-column label="合格数" prop="合格数" fixed="left">
|
||||
</el-table-column>
|
||||
<el-table-column label="完全合格数" prop="完全合格数">
|
||||
<el-table-column label="完全合格数" prop="完全合格数" fixed="left">
|
||||
</el-table-column>
|
||||
<el-table-column label="合格率" prop="合格率" fixed="left">
|
||||
<template #default="scope">
|
||||
{{ ((scope.row.合格数/scope.row.生产数)*100).toFixed(2) + '%' }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column v-for="item in lists" :key="item" :label="item" :prop="item">
|
||||
<template #default="scope">
|
||||
|
|
@ -68,6 +80,7 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
query:{
|
||||
batch:'',
|
||||
end_date:'',
|
||||
material_name:'',
|
||||
start_date:'2025-11-01',
|
||||
|
|
@ -112,6 +125,38 @@ export default {
|
|||
handleQuery(){
|
||||
this.getData();
|
||||
},
|
||||
getSummaries({ columns, data }) {
|
||||
const sums = [];
|
||||
let total = columns.length;
|
||||
columns.forEach((column, index) => {
|
||||
if (index === 0) {
|
||||
sums[index] = "合计";
|
||||
return;
|
||||
}
|
||||
if (index <total && (index!==0||index!==1||index!==5)) {
|
||||
const values = data.map((item) =>
|
||||
Number(item[column.property])
|
||||
);
|
||||
if (!values.every((value) => Number.isNaN(value))) {
|
||||
sums[index] = values.reduce((prev, curr) => {
|
||||
const value = Number(curr);
|
||||
let sum = Number(
|
||||
Number(prev) + Number(curr)
|
||||
).toFixed(1);
|
||||
if (!isNaN(value)) {
|
||||
return sum;
|
||||
} else {
|
||||
return prev;
|
||||
}
|
||||
}, 0);
|
||||
}
|
||||
}
|
||||
if(index==5){
|
||||
sums[index] = ((sums[3]/sums[2])*100).toFixed(2) + '%';
|
||||
}
|
||||
});
|
||||
return sums;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
stripe
|
||||
>
|
||||
<el-table-column type="index" width="50" fixed="left"/>
|
||||
<el-table-column label="员工" prop="员工">
|
||||
<el-table-column label="员工" prop="员工" :filters="userFilters" :filter-method="filterUser" filter-placement="bottom-end">
|
||||
</el-table-column>
|
||||
<el-table-column label="物料名" prop="物料名" :filters="nameFilters" :filter-method="filterName" filter-placement="bottom-end">
|
||||
</el-table-column>
|
||||
|
|
@ -108,9 +108,9 @@
|
|||
stripe
|
||||
>
|
||||
<el-table-column type="index" width="50" fixed="left"/>
|
||||
<el-table-column label="员工" prop="员工">
|
||||
<el-table-column label="员工" prop="员工" :filters="userFilters" :filter-method="filterUser" filter-placement="bottom-end">
|
||||
</el-table-column>
|
||||
<el-table-column label="物料名" prop="物料名">
|
||||
<el-table-column label="物料名" prop="物料名" :filters="nameFilters" :filter-method="filterName" filter-placement="bottom-end">
|
||||
</el-table-column>
|
||||
<el-table-column label="总数">
|
||||
<template #default="scope">
|
||||
|
|
@ -346,12 +346,17 @@ export default {
|
|||
methods: {
|
||||
getData1(){
|
||||
let that = this;
|
||||
let userList = [],users = [];
|
||||
let nameList = [],names = [];
|
||||
let params = {};
|
||||
params.query = that.query;
|
||||
that.$API.bi.dataset.exec.req('product_defect_pb_m', params).then((res) => {
|
||||
let data = res.data2.ds0;
|
||||
data.forEach(item=>{
|
||||
if(users.indexOf(item.员工)>-1){}else{
|
||||
users.push(item.员工);
|
||||
userList.push({text:item.员工,value:item.员工})
|
||||
}
|
||||
if(names.indexOf(item.物料名)>-1){}else{
|
||||
names.push(item.物料名);
|
||||
nameList.push({text:item.物料名,value:item.物料名})
|
||||
|
|
@ -366,7 +371,7 @@ export default {
|
|||
item.剪切合格 = item['剪切¢18.3mm不合格']?item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含- item['剪切¢18.3mm不合格'].含:item.总切片数 - item['剪切¢18.3mm不合格'].含:item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含:item.总切片数;
|
||||
let count_hgls = item.暗点合格?item.暗点合格.含:0;
|
||||
let count1 = item['剪切¢18.3mm不合格']?item.总切片数 - item.长点数 - item['剪切¢18.3mm不合格'].含:item.总切片数 - item.长点数;
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组!==null){
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组){
|
||||
if(item['剪切¢18.3mm不合格'].组['剪切¢18.3mm不合格+暗点不合格']){
|
||||
count1 = count1 + item['剪切¢18.3mm不合格+暗点不合格'];
|
||||
}
|
||||
|
|
@ -384,6 +389,7 @@ export default {
|
|||
item.合格率数 = count_hgls;//:在暗点合格含里刨除剪切可加工和剪切不合格
|
||||
})
|
||||
that.$nextTick(() => {
|
||||
that.userFilters = userList;
|
||||
that.nameFilters = nameList;
|
||||
that.tableData = data;
|
||||
})
|
||||
|
|
@ -392,10 +398,20 @@ export default {
|
|||
getData2(){
|
||||
let that = this;
|
||||
let params = {};
|
||||
let userList = [],users = [];
|
||||
let nameList = [],names = [];
|
||||
params.query = that.query;
|
||||
that.$API.bi.dataset.exec.req('product_defect_pb_user_mname', params).then((res) => {
|
||||
let data = res.data2.ds0;
|
||||
data.forEach(item=>{
|
||||
if(users.indexOf(item.员工)>-1){}else{
|
||||
users.push(item.员工);
|
||||
userList.push({text:item.员工,value:item.员工})
|
||||
}
|
||||
if(names.indexOf(item.物料名)>-1){}else{
|
||||
names.push(item.物料名);
|
||||
nameList.push({text:item.物料名,value:item.物料名})
|
||||
}
|
||||
if(item.缺陷分布!==null){
|
||||
let defect = JSON.parse(item.缺陷分布);
|
||||
for(let key in defect){
|
||||
|
|
@ -406,7 +422,7 @@ export default {
|
|||
item.剪切合格 = item['剪切¢18.3mm不合格']?item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含- item['剪切¢18.3mm不合格'].含:item.总切片数 - item['剪切¢18.3mm不合格'].含:item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含:item.总切片数;
|
||||
let count_hgls = item.暗点合格?item.暗点合格.含:0;
|
||||
let count1 = item['剪切¢18.3mm不合格']?item.总切片数 - item.长点数 - item['剪切¢18.3mm不合格'].含:item.总切片数 - item.长点数;
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组!==null){
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组){
|
||||
if(item['剪切¢18.3mm不合格'].组['剪切¢18.3mm不合格+暗点不合格']){
|
||||
count1 = count1 + item['剪切¢18.3mm不合格+暗点不合格'];
|
||||
}
|
||||
|
|
@ -424,6 +440,8 @@ export default {
|
|||
item.合格率数 = count_hgls;
|
||||
})
|
||||
that.$nextTick(() => {
|
||||
that.userFilters = userList;
|
||||
that.nameFilters = nameList;
|
||||
that.tableData = data;
|
||||
})
|
||||
});
|
||||
|
|
@ -460,7 +478,7 @@ export default {
|
|||
item.剪切合格 = item['剪切¢18.3mm不合格']?item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含- item['剪切¢18.3mm不合格'].含:item.总切片数 - item['剪切¢18.3mm不合格'].含:item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含:item.总切片数;
|
||||
let count_hgls = item.暗点合格?item.暗点合格.含:0;
|
||||
let count1 = item['剪切¢18.3mm不合格']?item.总切片数 - item.长点数 - item['剪切¢18.3mm不合格'].含:item.总切片数 - item.长点数;
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组!==null){
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组){
|
||||
if(item['剪切¢18.3mm不合格'].组['剪切¢18.3mm不合格+暗点不合格']){
|
||||
count1 = count1 + item['剪切¢18.3mm不合格+暗点不合格'];
|
||||
}
|
||||
|
|
@ -512,7 +530,7 @@ export default {
|
|||
item.剪切合格 = item['剪切¢18.3mm不合格']?item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含- item['剪切¢18.3mm不合格'].含:item.总切片数 - item['剪切¢18.3mm不合格'].含:item['剪切¢18.3mm可加工']?item.总切片数 - item['剪切¢18.3mm可加工'].含:item.总切片数;
|
||||
let count_hgls = item.暗点合格?item.暗点合格.含:0;
|
||||
let count1 = item['剪切¢18.3mm不合格']?item.总切片数 - item.长点数 - item['剪切¢18.3mm不合格'].含:item.总切片数 - item.长点数;
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组!==null){
|
||||
if(item['剪切¢18.3mm不合格']&&item['剪切¢18.3mm不合格'].组){
|
||||
if(item['剪切¢18.3mm不合格'].组['剪切¢18.3mm不合格+暗点不合格']){
|
||||
count1 = count1 + item['剪切¢18.3mm不合格+暗点不合格'];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,11 +13,6 @@
|
|||
<scTable ref="table" :apiObj="apiObj" row-key="id" @selection-change="selectionChange" hidePagination>
|
||||
<el-table-column label="#" type="index" width="50"></el-table-column>
|
||||
<el-table-column label="模板名称" prop="name" min-width="100"></el-table-column>
|
||||
<el-table-column label="打码器" min-width="170">
|
||||
<template #default="scope">
|
||||
<span v-if="scope.row.coder_ip">{{ scope.row.coder_ip }}:{{ scope.row.coder_port }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="创建时间" prop="create_time" min-width="150"></el-table-column>
|
||||
<el-table-column label="操作" fixed="right" align="center" width="140">
|
||||
<template #default="scope">
|
||||
|
|
@ -47,15 +42,6 @@
|
|||
:key="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="打码器IP">
|
||||
<el-input v-model="addForm.coder_ip" clearable placeholder="不填则该模板不向打码器下发"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="打码器端口">
|
||||
<el-input-number v-model="addForm.coder_port" :min="1" :max="65535" :controls="false"></el-input-number>
|
||||
</el-form-item>
|
||||
<el-form-item label="打码器用户区">
|
||||
<el-input v-model="addForm.coder_field" clearable placeholder="喷码机里用户区名(默认 1),切码型时填不同用户区名"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="模板代码" prop="commands">
|
||||
<el-input v-model="addForm.commands" clearable :rows="9" type="textarea"></el-input>
|
||||
</el-form-item>
|
||||
|
|
@ -71,9 +57,6 @@
|
|||
id:"",
|
||||
name: "",
|
||||
commands: "",
|
||||
coder_ip: "",
|
||||
coder_port: 3100,
|
||||
coder_field: "1",
|
||||
};
|
||||
export default {
|
||||
name: 'labeltemplate',
|
||||
|
|
@ -132,7 +115,6 @@
|
|||
let arr = [];
|
||||
arr = that.addForm.commands.split("\n");
|
||||
that.addForm.commands = arr;
|
||||
if (!that.addForm.coder_ip) that.addForm.coder_ip = null;
|
||||
if(this.type==='add'){
|
||||
this.$API.cm.labeltemplate.create.req(that.addForm).then(res=>{
|
||||
this.isSaveing = false;
|
||||
|
|
@ -156,9 +138,6 @@
|
|||
this.addForm.id=row.id;
|
||||
this.addForm.name=row.name;
|
||||
this.addForm.commands=row.commands.join("\n");
|
||||
this.addForm.coder_ip=row.coder_ip;
|
||||
this.addForm.coder_port=row.coder_port;
|
||||
this.addForm.coder_field=row.coder_field || "1";
|
||||
this.limitedVisible = true;
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@
|
|||
<el-button
|
||||
type="warning"
|
||||
:disabled="selectedRows.length === 0"
|
||||
:loading="batchCoderLoading"
|
||||
@click="batchSendToCoder"
|
||||
>批量喷码</el-button>
|
||||
<el-input
|
||||
|
|
@ -129,6 +130,7 @@ export default {
|
|||
scQr_code:'',
|
||||
wprList:[],
|
||||
selectedRows:[],
|
||||
batchCoderLoading: false,
|
||||
digitNum:3,
|
||||
wprTableHeight:500,
|
||||
printer_name:localStorage.getItem("printer_name"),
|
||||
|
|
@ -343,48 +345,64 @@ that.$API.wpm.prints.req(printer_ip, obj).then((response) => {
|
|||
that.$message.warning("请先设置打印机");
|
||||
}
|
||||
},
|
||||
//喷码: 通过名为'喷码模板'的标签模板向打码器下发产品编号
|
||||
//把 wpr 行转成模板渲染数据
|
||||
rowToTdata(row){
|
||||
return {
|
||||
number: row.number,
|
||||
name: (row.material_name||'').split('|')[0],
|
||||
ofrom_name: this.ofromName,
|
||||
ofrom_batch: this.ofromBatch,
|
||||
};
|
||||
},
|
||||
//下发喷码: 单行入队 1 条
|
||||
sendToCoder(row){
|
||||
let that = this;
|
||||
if (that.coderLoadingIds[row.id]) return;
|
||||
that.coderLoadingIds = { ...that.coderLoadingIds, [row.id]: true };
|
||||
let templateName = '喷码模板';
|
||||
let tdata = {
|
||||
number: row.number,
|
||||
name: (row.material_name||'').split('|')[0],
|
||||
ofrom_name: that.ofromName,
|
||||
ofrom_batch: that.ofromBatch,
|
||||
};
|
||||
let release = () => {
|
||||
let map = { ...that.coderLoadingIds };
|
||||
delete map[row.id];
|
||||
that.coderLoadingIds = map;
|
||||
};
|
||||
that.$API.cm.labeltemplate.list.req({name: templateName, page: 0}).then((res) => {
|
||||
let list = Array.isArray(res) ? res : (res && res.results) || [];
|
||||
let template = list.find(t => t.name === templateName);
|
||||
if (!template) {
|
||||
that.$message.error(`未找到标签模板: ${templateName}`);
|
||||
release();
|
||||
return;
|
||||
}
|
||||
if (!template.coder_ip) {
|
||||
that.$message.error(`模板 ${templateName} 未配置打码器IP`);
|
||||
release();
|
||||
return;
|
||||
}
|
||||
that.$API.cm.labeltemplate.sendToCoder.req(template.id, {tdata}).then(() => {
|
||||
that.$message.success("喷码下发成功");
|
||||
}).finally(release);
|
||||
}).catch(release);
|
||||
that.coderLoadingIds = { ...that.coderLoadingIds, [row.id]: true };
|
||||
that._postCoder([that.rowToTdata(row)])
|
||||
.then(() => that.$message.success("喷码下发成功"))
|
||||
.finally(release);
|
||||
},
|
||||
handleSelectionChange(rows){
|
||||
this.selectedRows = rows;
|
||||
},
|
||||
//批量喷码: 一次请求入队 N 条
|
||||
batchSendToCoder(){
|
||||
let that = this;
|
||||
that.selectedRows.forEach(row => {
|
||||
that.sendToCoder(row);
|
||||
if (!that.selectedRows.length || that.batchCoderLoading) return;
|
||||
let tdataList = that.selectedRows.map(r => that.rowToTdata(r));
|
||||
that.batchCoderLoading = true;
|
||||
that._postCoder(tdataList)
|
||||
.then(() => that.$message.success(`已入队 ${tdataList.length} 条`))
|
||||
.finally(() => { that.batchCoderLoading = false; });
|
||||
},
|
||||
//公共: 查模板 + 拼 body + 调接口
|
||||
_postCoder(tdataList){
|
||||
let that = this;
|
||||
let coder_ip = localStorage.getItem('coder_ip') || '';
|
||||
let coder_port = localStorage.getItem('coder_port') || '';
|
||||
let coder_field = localStorage.getItem('coder_field') || '';
|
||||
if (!coder_ip) {
|
||||
that.$message.error('请先在右上角"喷码设置"配置喷码IP');
|
||||
return Promise.reject(new Error('no coder_ip'));
|
||||
}
|
||||
let templateName = '喷码模板';
|
||||
return that.$API.cm.labeltemplate.list.req({name: templateName, page: 0}).then((res) => {
|
||||
let list = Array.isArray(res) ? res : (res && res.results) || [];
|
||||
let template = list.find(t => t.name === templateName);
|
||||
if (!template) {
|
||||
that.$message.error(`未找到标签模板: ${templateName}`);
|
||||
return Promise.reject(new Error('no template'));
|
||||
}
|
||||
let body = {tdata_list: tdataList, coder_ip};
|
||||
if (coder_port) body.coder_port = Number(coder_port);
|
||||
if (coder_field) body.coder_field = coder_field;
|
||||
return that.$API.cm.labeltemplate.sendToCoder.req(template.id, body);
|
||||
});
|
||||
},
|
||||
//本地更新数据
|
||||
|
|
|
|||
Loading…
Reference in New Issue