master
leo 3 years ago
commit d59c9fc69e

3
components.d.ts vendored

@ -33,8 +33,6 @@ declare module '@vue/runtime-core' {
LayLogo: typeof import('@layui/layui-vue')['LayLogo']
LayMenu: typeof import('@layui/layui-vue')['LayMenu']
LayMenuItem: typeof import('@layui/layui-vue')['LayMenuItem']
LayProgress: typeof import('@layui/layui-vue')['LayProgress']
LayQuote: typeof import('@layui/layui-vue')['LayQuote']
LayRadio: typeof import('@layui/layui-vue')['LayRadio']
LayRow: typeof import('@layui/layui-vue')['LayRow']
LayScroll: typeof import('@layui/layui-vue')['LayScroll']
@ -46,7 +44,6 @@ declare module '@vue/runtime-core' {
LayTab: typeof import('@layui/layui-vue')['LayTab']
LayTabItem: typeof import('@layui/layui-vue')['LayTabItem']
LayTable: typeof import('@layui/layui-vue')['LayTable']
LayTooltip: typeof import('@layui/layui-vue')['LayTooltip']
LightIcon: typeof import('./src/components/LightIcon.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']

@ -121,3 +121,16 @@
.layui-table-main td{
white-space: pre-line!important;
}
.one{
background: #00B0F0 !important;;
}
.twe{
background: #00FF00!important;
}
.three{
background:#FF6464!important;
}
.four{
background: #FF64FF!important;
}

@ -12,14 +12,14 @@
</lay-input>
</template>
<template v-if="dataList == undefined || !dataList.FID" v-slot:operator="{ data }">
<lay-button size="xs" type="primary" @click="openConfirm2(data)"></lay-button>
<lay-button size="xs" type="primary" @click="changeVisible2(data)"></lay-button>
</template>
</lay-table>
<OperateLog v-if="dataInfoObj.FTeamID" ref="OperateLog" :dataInfoObj="dataInfoObj"></OperateLog>
</lay-container>
<template>
<lay-button type="primary" @click="openConfirm2"></lay-button>
</template>
</template>
</template>
<style scoped>
@ -177,9 +177,7 @@ export default {
const inputDescValue = ref("");
const visible2 = ref(false);
const openConfirm2 = function(data) {
layer.confirm("是否选择替代料", {btn: [{text:'选择'},{text:'不选择'}]})
}
return {
dataColumn,
@ -194,8 +192,8 @@ export default {
inputDescValue,
isShow: false,
isBomShow: false,
visible2,
openConfirm2
visible2
};
},
props: {
@ -235,8 +233,21 @@ export default {
}, 500);
},
changeVisible2(data) {
this.$emit('cancelClick', true, false);
this.$emit("getData", data);
let $this = this;
layer.confirm("是否选择替代料", {
btn: [{
text: '选择',
callback: function (id) {
layer.close(id);
$this.$emit('cancelClick', true, false);
$this.$emit("getData", data);
}
},
{
text: '不选择'
}]
})
},
cancelClick(isRefresh) {

@ -2,12 +2,13 @@
<lay-container fluid="true" class="content-box">
<FormulaView :teamId="dataInfoObj.FTeamID" :halfId="dataInfoObj.FMaterialHalfIDs"></FormulaView>
<lay-layer area="90%" v-model="showFreezingColumnSettingBox" title="固定列设置" :end="closeFreezingSetting">
<FreezingColumnSetting v-if="showFreezingColumnSettingBox" :columns="originalColumns" :freezingColumns="freezingColumnSetting" @cancelClick="setFreezingColumnsSetting"></FreezingColumnSetting>
<FreezingColumnSetting v-if="showFreezingColumnSettingBox" :columns="originalColumns"
:freezingColumns="freezingColumnSetting" @cancelClick="setFreezingColumnsSetting"></FreezingColumnSetting>
</lay-layer>
<lay-table id="dataTable" v-if="dataColumn.length>0" height="320px" :columns="dataColumn"
:data-source="dataList" :cellStyle="cellStyle" :cellClassName="cellClassName">
<template v-slot:toolbar v-if="dataInfoObj.FCanEdit!=2">
<lay-button size="sm" @click="saveBatch" type="primary" :disabled="editColumn.length===0">保存
<lay-table id="dataTable" v-if="dataColumn.length > 0" height="320px" :columns="dataColumn" :data-source="dataList"
:cellStyle="cellStyle" :cellClassName="cellClassName">
<template v-slot:toolbar v-if="dataInfoObj.FCanEdit != 2">
<lay-button size="sm" @click="saveBatch" type="primary" :disabled="editColumn.length === 0">保存
</lay-button>
<lay-input :class="this.isShow ? 'isShow' : 'isHidden'" v-model="inputCodeValue" :readonly="true">
<template #prepend>半成品编号</template>
@ -15,22 +16,23 @@
<lay-input :class="this.isShow ? 'isShow' : 'isHidden'" v-model="inputDescValue" :readonly="true">
<template #prepend>描述</template>
</lay-input>
<lay-button size="sm" type="primary" style="float:right;" :disabled="editColumn.length===0" @click="_clickFreezingColumnSetting()">
<lay-button size="sm" type="primary" style="float:right;" :disabled="editColumn.length === 0"
@click="_clickFreezingColumnSetting()">固定项
</lay-button>
</template>
<template v-for="item in editColumn" v-slot:[item.key]="{ data }">
<lay-select v-if="item.key=='FTypeID1'" size="sm" v-model="data['FTypeID1']"
@change="_changeType(data,1)" :showEmpty="false">
<lay-select-option v-for="(tIdv,tIdx) in typeList[0]" :key="tIdx" :value="tIdv.FID"
<lay-select v-if="item.key == 'FTypeID1'" size="sm" v-model="data['FTypeID1']"
@change="_changeType(data, 1)" :showEmpty="false">
<lay-select-option v-for="(tIdv, tIdx) in typeList[0]" :key="tIdx" :value="tIdv.FID"
:label="tIdv.FName"></lay-select-option>
</lay-select>
<lay-select v-else-if="item.key=='FTypeID2'" size="sm" v-model="data['FTypeID2']"
@change="_changeType(data,2)" :showEmpty="false">
<lay-select-option v-show="data.FTypeID1==tIdv.FParentID" v-for="(tIdv,tIdx) in typeList[1]"
<lay-select v-else-if="item.key == 'FTypeID2'" size="sm" v-model="data['FTypeID2']"
@change="_changeType(data, 2)" :showEmpty="false">
<lay-select-option v-show="data.FTypeID1 == tIdv.FParentID" v-for="(tIdv, tIdx) in typeList[1]"
:key="tIdx" :value="tIdv.FID" :label="tIdv.FName"></lay-select-option>
</lay-select>
<lay-select v-else-if="item.selectType" size="sm" v-model="data[item.key]" :showEmpty="false">
<lay-select-option v-for="(tIdv,tIdx) in selectDataMap['FType'+item.selectTypeId]" :key="tIdx"
<lay-select-option v-for="(tIdv, tIdx) in selectDataMap['FType' + item.selectTypeId]" :key="tIdx"
:value="tIdv.FValue" :label="tIdv.FName"></lay-select-option>
</lay-select>
<lay-input v-else-if="!item.dataType" size="sm" v-model="data[item.key]"></lay-input>
@ -41,72 +43,76 @@
</template>
<style scoped>
.content-box {
.content-box {
margin: 30px 10px;
display: block;
position: relative;
clear: both;
float: none;
min-height: 740px;
}
}
.row-select td {
.row-select td {
overflow: inherit;
}
}
.layui-select {
.layui-select {
width: 100%;
}
}
.edit {
.edit {
color: green;
}
}
:deep(.edit-item .layui-input) {
:deep(.edit-item .layui-input) {
border-color: #5FB878 !important;
}
}
:deep(.edit-item .layui-input:hover) {
:deep(.edit-item .layui-input:hover) {
border-color: #009688 !important;
color: #009688;
}
.isShow{
}
.isShow {
width: 370px;
height:30px;
height: 30px;
border: none;
}
.isHidden{
}
.isHidden {
display: none;
}
.isBomHidden{
}
.isBomHidden {
display: none;
}
}
</style>
<script>
import {
import {
ref
} from 'vue';
import {
} from 'vue';
import {
getListByTeamId,
updateBatchById2
} from "/src/api/api/view";
import {
} from "/src/api/api/view";
import {
getBasicRoleList
} from "/src/api/api/user";
import {
} from "/src/api/api/user";
import {
getDataCode,
commonSave
} from "/src/api/api/common";
} from "/src/api/api/common";
import {
import {
getInfoData,
changeInfoData
} from "/src/api/api/materialType";
import OperateLog from "./OperateLog.vue";
import FormulaView from "./FormulaView.vue";
import FreezingColumnSetting from './FreezingColumnSetting.vue';
} from "/src/api/api/materialType";
import OperateLog from "./OperateLog.vue";
import FormulaView from "./FormulaView.vue";
import FreezingColumnSetting from './FreezingColumnSetting.vue';
export default {
export default {
components: {
OperateLog,
FormulaView,
@ -125,17 +131,17 @@
[],
[]
]);
const cellStyle = function(row, column, rowIndex, columnIndex) {
let back = column.table == "TFS_ViewMaterial" ? "background:rgb(246, 246, 246) !important;" : ""
const cellStyle = function (row, column, rowIndex, columnIndex) {
let back = column.table == "TFS_ViewMaterial" ? "background:rgb(246, 246, 246)" : ""
return back;
}
const cellClassName = function(row, column, rowIndex, columnIndex) {
const cellClassName = function (row, column, rowIndex, columnIndex) {
return column.cellClass || "";
}
const inputCodeValue = ref("");
const inputDescValue = ref("");
const visible2 = ref(false)
const changeVisible2 = function() {
const changeVisible2 = function () {
visible2.value = !visible2.value
};
const showFreezingColumnSettingBox = ref(false);
@ -154,7 +160,7 @@
inputCodeValue,
inputDescValue,
isShow: false,
isBomShow :false,
isBomShow: false,
visible2,
changeVisible2,
showFreezingColumnSettingBox,
@ -166,7 +172,7 @@
props: {
dataInfoObj: {
type: Object,
default: () => {},
default: () => { },
},
viewDataList: {
type: Object,
@ -195,12 +201,11 @@
teamId: this.dataInfoObj.FTeamID,
viewType: this.dataInfoObj.FViewType
});
if(this.dataInfoObj.FViewType == 1){
if (this.dataInfoObj.FViewType == 1) {
this.inputCodeValue = _data.rows[0].HalfCode;
this.inputDescValue = _data.rows[0].HalfDesc;
this.isShow = true;
}else if(this.dataInfoObj.FViewType == 2 || this.dataInfoObj.FViewType == 3 || this.dataInfoObj.FViewType == 4){
} else if (this.dataInfoObj.FViewType == 2 || this.dataInfoObj.FViewType == 3 || this.dataInfoObj.FViewType == 4) {
this.isBomShow = true;
}
@ -208,6 +213,7 @@
this.typeList[1] = _data.types.filter(s => s.FDepth != 1) || [];
let dataColumn = _data.columns || [];
let editColumn = dataColumn.filter(it => {
let b = false;
if (this.dataInfoObj.FCanEdit != 2) {
if (it.fieldType == 7) b = this.userPower[1].indexOf(it.id) >= 0;
@ -241,19 +247,40 @@
// dataColumn = [...tempColumn1, ...tempColumn2];
// }
}
let columnsList = [];
let col7 = dataColumn.filter(s => s.fieldType == 7) || [];
_data.rows.forEach((item) => {
debugger
_data.rows.forEach((item, i) => {
columnsList = _data.columns.map(function (items) {
let str = _data.infos[i][items.key + "Type"];
if (typeof (str) != "undefined") {
switch (str) {
case "1":
return items.cellClass = items.cellClass + " one";
case "2":
return items.cellClass = items.cellClass + " twe";
case "3":
return items.cellClass = items.cellClass + " three";
case "4":
return items.cellClass = items.cellClass + " four";
}
}
return items;
})
let k3Code = item.FBaseMaterialDesc;
if(k3Code.indexOf("@") > 0){
if (k3Code.indexOf("@") > 0) {
item.FK3Code = k3Code.substr(0, k3Code.indexOf("@"));
item.FK3Name = k3Code.substr(k3Code.indexOf("@") +1);
}else{
item.FK3Name = k3Code.substr(k3Code.indexOf("@") + 1);
} else {
item.FK3Code = "";
item.FK3Name = "";
}
if(k3Code.lastIndexOf(".") > 0){
item.FK3ShortCode = item.FK3Code.substr(item.FK3Code.lastIndexOf(".")+1);
}else{
if (k3Code.lastIndexOf(".") > 0) {
item.FK3ShortCode = item.FK3Code.substr(item.FK3Code.lastIndexOf(".") + 1);
} else {
item.FK3ShortCode = "";
}
let info = _data.infos.find(s => s.FDataID == item.FMaterialID) || null;
@ -267,12 +294,16 @@
});
let saveId = this.dataInfoObj.FViewType + "_" + this.dataInfoObj.FID;
localStorage.setItem('EditView' + saveId, JSON.stringify(_data.rows));
this.editColumn = editColumn;
this.dataList = _data.rows;
this.dataColumn = dataColumn;
this.originalColumns = this.deepCopy(dataColumn);
debugger
setTimeout(function() {
setTimeout(function () {
layer.close(idx);
}, 500);
},
@ -289,6 +320,7 @@
"FDataID": data.FTypeID2,
"FType": 1
}) || null;
if (result != null && result.FID) {
let col7 = this.dataColumn.filter(s => s.fieldType == 7) || [];
col7.forEach((item) => {
@ -296,6 +328,26 @@
data[item.key] = result[item.key] || data[item.key] || "";
}
});
this.dataColumn.map(function (item) {
debugger
let str = result[item.key + "Type"];
if (typeof (str) != "undefined") {
switch (str) {
case "1":
return item.cellClass = item.cellClass.split(" ")[0] + " one";
case "2":
return item.cellClass = item.cellClass.split(" ")[0] + " twe";
case "3":
return item.cellClass = item.cellClass.split(" ")[0] + " three";
case "4":
return item.cellClass = item.cellClass.split(" ")[0] + " four";
}
}
return item;
})
}
}
}
@ -347,7 +399,7 @@
let $this = this;
//$this.initPage();
localStorage.setItem('EditView' + saveId, JSON.stringify(this.dataList));
setTimeout(function() {
setTimeout(function () {
layer.close(idx);
layer.msg('保存成功');
$this.$emit('cancelClick', true, true);
@ -398,5 +450,5 @@
return JSON.parse(JSON.stringify(arr))
}
}
}
}
</script>

@ -139,11 +139,12 @@ export default {
});
}
});
debugger
this.dataColumn = dataColumn;
let result2 = await getPageList({
FPageSize: 99,
FDataId: this.objInfoObj.FID
}, "View2") || {};
}, "View") || {};
@ -154,6 +155,7 @@ export default {
this.dataList = result2.Data.List.map(function(item){
item["FTypeName1"]=materialType.Data.List.find(m=>m.FID==item.FTypeID1)?materialType.Data.List.find(m=>m.FID==item.FTypeID1).FName:"";
item["FTypeName2"]=materialType.Data.List.find(m=>m.FID==item.FTypeID2)?materialType.Data.List.find(m=>m.FID==item.FTypeID2).FName:"";
debugger
item.FType=materialType.Data.List.find(m=>m.FID==item.FType)?materialType.Data.List.find(m=>m.FID==item.FType).FName:"";
item["FSAPCode"]=item.FCode;
item["FSAPDescription"]=item.FName;
@ -165,6 +167,7 @@ export default {
item["FBaseWeightUnit"]=item.FBaseUnit;
item["FCraftExplain"]=item.FCraftDesc;
return item;
}) || [];
},
cancelClick() {

@ -1293,10 +1293,10 @@ error-ex@^1.3.1:
dependencies:
is-arrayish "^0.2.1"
esbuild-windows-64@0.14.39:
esbuild-windows-32@0.14.39:
version "0.14.39"
resolved "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.39.tgz"
integrity sha512-E2wm+5FwCcLpKsBHRw28bSYQw0Ikxb7zIMxw3OPAkiaQhLVr3dnVO8DofmbWhhf6b97bWzg37iSZ45ZDpLw7Ow==
resolved "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.39.tgz"
integrity sha512-XPjwp2OgtEX0JnOlTgT6E5txbRp6Uw54Isorm3CwOtloJazeIWXuiwK0ONJBVb/CGbiCpS7iP2UahGgd2p1x+Q==
esbuild@^0.14.27, esbuild@>=0.13:
version "0.14.39"

Loading…
Cancel
Save