| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873 |
- <template>
- <div>
- <el-button type="primary" size="mini" :disabled="data.status !== '新建'" @click="onShow(dialogFormVisible=true)" >{{$t('编 辑')}}</el-button>
- <el-drawer append-to-body :title="$t(`编辑产品`)" :visible.sync="dialogFormVisible" :wrapperClosable="false" size="900px" @close="onCancel">
- <div class="drawer__panel" >
- <el-row :gutter="10">
- <el-form label-position="right" :label-width="tool.onlyZh('90px')" :model="form" :rules="rules" ref="form" size="small">
- <el-col :span="12">
- <el-form-item :label="$t('产品编号')" prop="itemno">
- <el-input :disabled="calcDisabled" v-model="form.itemno" :placeholder="$t(`输入产品编号`)" @change="itemnoChange"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`产品名称`)" prop="itemname">
- <el-input :disabled="calcDisabled" v-model="form.itemname" :placeholder="$t(`输入产品名称`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`erp品号`)" prop="erpitemno">
- <el-input :disabled="calcDisabled" v-model="form.erpitemno" :placeholder="$t(`输入erp品号`)" @change="erpitemnoChange"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`erp品名`)" prop="erpitemname">
- <el-input :disabled="calcDisabled" v-model="form.erpitemname" :placeholder="$t(`请输入erp品名`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t('型号')" prop="model">
- <el-input v-model="form.model" :placeholder="$t(`输入产品型号`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t('规格')" prop="spec">
- <el-input v-model="form.spec" :placeholder="$t(`输入产品规格`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`装箱数`)" prop="packqty">
- <el-input type="number" v-model="form.packqty" :placeholder="$t(`输入装箱数`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12" v-if="siteid === 'HY' || siteid === 'YOSTEST1' || siteid === 'TZ'">
- <el-form-item :label="$t(`商品大类`)" prop="categories">
- <el-select v-model="form.categories" style="width:100%">
- <el-option v-for="item in categoriesList" :key="item.index" :value="item.value" :label="$t(item.remarks)"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12" v-if="siteid === 'HY' || siteid === 'YOSTEST1'">
- <el-form-item :label="$t(`公称通径`)" prop="caliber">
- <el-input v-model="form.caliber" :placeholder="$t(`输入公称通径`)" :disabled="form.itemtype == '成品'"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12" v-if="siteid === 'HY' || siteid === 'YOSTEST1'">
- <el-form-item :label="$t(`公称压力`)" prop="nominalpressure">
- <el-select v-model="form.nominalpressure" style="width:100%" @focus="pressureChange" multiple :disabled="form.itemtype == '成品'">
- <el-option v-for="item in nominalpressure" :key="item.index" :value="item.value" :label="$t(item.value)"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item :label="$t(`辅助单位`)">
- <el-checkbox :true-label="1" :false-label="0" v-model="form.isauxunit" @change="isauxunitChange">{{$t(`是否需要辅助单位`)}}</el-checkbox>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`主单位`)" prop="unitid">
- <el-select style="width:100%" v-model="form.unitid" :placeholder="$t('请选择')" @change="unitChange">
- <el-option
- v-for="item in unitData"
- :key="item.unitid"
- :label="$t(item.unitname)"
- :value="item.unitid">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`辅助单位`)">
- <el-select style="width:100%" v-model="form.unitgroupid" :disabled="form.isauxunit === 0" :placeholder="$t('请选择')">
- <el-option
- v-for="item in unitGroupData"
- :key="item.unitgroupid"
- :label="$t(item.unitgroupname)"
- :value="item.unitgroupid">
- <p style="float: left">{{ item.unitgroupname }}</p>
- <p style="float:right;color: #8492a6; font-size: 13px">{{ item.conversionrate }}{{item.unitname}}/{{item.auxunitname}},{{$t(`换算率`)}}:{{'1:'+ item.conversionrate}}</p>
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`领域`)" prop="tradefields">
- <el-select style="width:100%" v-model="form.tradefields" multiple :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in tradefield"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`产品标准`)">
- <el-select style="width:100%" v-model="form.standards" :placeholder="$t('请选择')" clearable @change="standardChange">
- <el-option
- v-for="item in standards"
- :key="item.value"
- :label="$t(item.value)"
- :value="item">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item :label="$t(`标准明细`)">
- <el-select style="width:43.5%" v-model="form.standardsmx" :placeholder="$t('请选择')" clearable >
- <el-option
- v-for="item in standardsmx"
- :key="item.index"
- :label="$t(item)"
- :value="item">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`起订量`)" prop="orderminqty">
- <el-input :placeholder="$t(`起订量`)" v-model="form.orderminqty" class="input-with-select">
- <el-select style="width:100px" v-model="form.orderminqty_auxunit" slot="prepend" :placeholder="$t('请选择')">
- <el-option :label="$t(`主单位`)" :value="0"></el-option>
- <el-option :disabled="form.isauxunit === 0" :label="$t(`辅助单位`)" :value="1"></el-option>
- </el-select>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`增量`)" prop="orderaddqty">
- <el-input :placeholder="$t(`增量`)" v-model="form.orderaddqty" class="input-with-select">
- <el-select style="width:100px" v-model="form.orderaddqty_auxunit" slot="prepend" :placeholder="$t('请选择')">
- <el-option :label="$t(`主单位`)" :value="0"></el-option>
- <el-option :disabled="form.isauxunit === 0" :label="$t(`辅助单位`)" :value="1"></el-option>
- </el-select>
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t('材质')" >
- <el-select style="width:100%" v-model="form.material" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in itemmaterial"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`重量(kg)`)" prop="weight">
- <el-input v-model="form.weight" :placeholder="$t(`重量(kg)`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`交期`)" prop="delivery">
- <el-input v-model="form.delivery" :placeholder="$t(`输入交期`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`保修期限`)" prop="warrantyday">
- <el-input v-model="form.warrantyday" :placeholder="$t(`输入保修期限`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`满库存量`)" prop="stockstatus1">
- <el-input v-model="form.stockstatus1" :placeholder="$t(`满库存量`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`缺货提醒`)" prop="stockstatus2">
- <el-input v-model="form.stockstatus2" :placeholder="$t(`缺货提醒`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`工具`)">
- <el-checkbox :true-label="1" :false-label="0" v-model="form.istool">{{$t(`是否工具`)}}</el-checkbox>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`营销物料`)">
- <el-checkbox :true-label="1" :false-label="0" v-model="form.iswuliao">{{$t(`是否物料`)}}</el-checkbox>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t('产线')">
- <el-select style="width:100%" v-model="form.prodline" :placeholder="$t('请选择')" clearable @focus="lineData">
- <el-option
- v-for="item in prodlines"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- <span style="float: left">{{ $t(item.value) }}</span>
- <span
- style="float: right; color: #8492a6; font-size: 12px"
- >{{ item.remarks ? $t(item.remarks) : "暂无描述" }}</span
- >
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t('装置')">
- <el-input v-model="form.device" :placeholder="$t(`输入装置`)"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item :label="$t('备注')">
- <el-input v-model="form.specalnote" type="textarea" :placeholder="$t(`输入备注`)"></el-input>
- </el-form-item>
- </el-col>
- <!-- <el-col :span="8">
- <el-form-item :label="$t(`单品管理`)">
- <el-checkbox :true-label="1" :false-label="0" v-model="form.skucontrol" @change="isauxunitChange">是否需要单品管理</el-checkbox>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item :label="$t(`批次管理`)">
- <el-checkbox :true-label="1" :false-label="0" v-model="form.batchcontrol" @change="isauxunitChange">是否需要批次管理</el-checkbox>
- </el-form-item>
- </el-col>-->
- <el-col :span="12">
- <el-form-item :label="$t(`服务物料`)">
- <el-checkbox :true-label="1" :false-label="0" v-model="form.isservice">{{$t(`是否服务物料`)}}</el-checkbox>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`中线蝶阀`)">
- <el-checkbox :true-label="1" :false-label="0" v-model="form.isbutterfly">{{$t(`是否中线蝶阀`)}}</el-checkbox>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`压力等级`)" >
- <el-select :disabled="calcDisabled" style="width:100%" v-model="form.pressure" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in pressures"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`蝶板驱动`)" >
- <el-select :disabled="calcDisabled" style="width:100%" v-model="form.butterflyplatedrive" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in butterflyplatedrive"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`连接形式`)" >
- <el-select :disabled="calcDisabled" style="width:100%" v-model="form.connection" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in connectionmode"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`阀板材质`)" >
- <el-select :disabled="calcDisabled" style="width:100%" v-model="form.valveplatematerial" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in valveplatematerial"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`阀体材质`)" >
- <el-select :disabled="calcDisabled" style="width:100%" v-model="form.bodymaterial" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in bodymaterial"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`执行器类型`)" >
- <el-select :disabled="calcDisabled" style="width:100%" v-model="form.actuatortype" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in actuatortype"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item :label="$t(`执行器品牌`)">
- <el-select :disabled="calcDisabled" style="width:100%" v-model="form.actuatorbrand" :placeholder="$t('请选择')" clearable>
- <el-option
- v-for="item in actuatorbrand"
- :key="item.value"
- :label="$t(item.value)"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="20">
- <el-form-item :label="$t('产品图')">
- <div class="flex-align-center" style="flex-wrap:wrap">
- <uploadFile
- style="margin:10px 10px 10px 0;"
- ref="upload"
- :folderid="folderid"
- accept=".JPG,.PNG,.jpg,.png"
- btntype="image"
- :bindData="bindData"
- @onSuccess="uploadSuccess">
- </uploadFile>
- <previewImage style="margin-right: 10px;margin-bottom:10px" v-for="image in form.attinfos" :key="image.index" :image="image" :deletebtn="true"
- @onSuccess="clearCover"></previewImage>
- </div>
- <small style="display:block;margin-top:20px" class="info">{{$t(`注:建议上传图片大小`)}}1024x1024px,{{$t('大小不超过')}}2M,{{$t('格式为')}}JPG/PNG</small>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- </div>
- <div class="fixed__btn__panel">
- <el-button size="small" @click="onCancel" class="normal-btn-width">{{$t('取 消')}}</el-button>
- <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">{{$t('确 定')}}</el-button>
- </div>
- </el-drawer>
- </div>
- </template>
- <script>
- import uploadFile from '@/components/upload/preview_upload.vue'
- import previewImage from '@/components/previewImage/index.vue'
- export default {
- props:['data'],
- components:{uploadFile,previewImage},
- data () {
- return {
- dialogFormVisible:false,
- folderid:JSON.parse(sessionStorage.getItem('folderid')).appfolderid,
- form:{
- "attinfos":[],
- "itemid":0,
- "isauxunit":0,
- "unitid":'',
- "unitgroupid":'',
- "itemno":'',
- "itemname":'',
- "model": "",
- "spec": "",
- "orderminqty": '', //订单起订量
- "orderaddqty": '', //订单增量
- "orderminqty_auxunit": 0, //订单起订量控制单位(0:主单位;1:辅助单位)
- "orderaddqty_auxunit": 0, //订单增量控制单位(0:主单位;1:辅助单位
- "remarks": "", //可选
- "barcode": "", //可选
- "skucontrol": 0, //可选
- "batchcontrol": 1, //可选
- "grossweight": '', //可选
- "weight": '', //可选
- "height": '', //可选
- "width": '', //可选
- "length": '', //可选
- "caliber": "", //可选,口径
- "pressure": "", //可选,压力
- "material": "", //可选,材质
- "standards": "", //可选,产品标准
- "tradefields": [], //可选,领域
- "stockstatus2": '', //可选,库存缺货标准
- "stockstatus1": '', //可选,库存充足标准
- "warrantyday": '', //可选,保修期(年)
- "iswuliao": 0, //可选,是否营销物料
- "isservice": 0, //可选,是否服务物料
- "butterflyplatedrive": "",
- "connection": "",
- "valveplatematerial": "",
- "bodymaterial": "",
- "actuatortype": "",
- "actuatorbrand": "",
- "isbutterfly": 0,
- "erpitemno": "",
- "erpitemname": "",
- "specalnote": "",
- "prodline": "",
- "device": "",
- "tags":"",
- "categories":"",
- "standardsmx":""
- },
- rules:{
- itemno: [
- { required: true, message: this.$t('请输入输入产品编号'), trigger: 'blur' },
- ],
- itemname: [
- { required: true, message: this.$t('请输入输入产品名称'), trigger: 'blur' },
- ],
- model: [
- { required: true, message: this.$t('输入产品型号'), trigger: 'blur' },
- ],
- isauxunit: [
- { type: 'number', required: true, message: this.$t('辅助单位管理不可为空'), trigger: 'change' },
- ],
- batchcontrol: [
- { required: true,message:this.$t('批次管理不可为空'), trigger:'change'}
- ],
- skucontrol: [
- { required: true,message:this.$t('单品管理不可为空'), trigger:'change'}
- ],
- unitid: [
- { required: true,message:this.$t('请输入主单位'), trigger:'change'}
- ],
- tradefields: [
- { required: true,message:this.$t('请选择领域'), trigger:'change'}
- ],
- categories: [
- { required: true,message:this.$t('请选择商品大类'), trigger:'change'}
- ],
- weight:[
- // { required: false,message:this.$t('不可输入空格'), trigger:'blur'}
- {
- validator: (rule, value, callback) => {
- if (value == null || value === '') {
- return callback(); // 允许为空
- }
- // 去掉前后空格后判断是否为空(可选)
- // if (value.trim() === '') return callback(new Error(self.$t('不可全为空格')));
- // 检查是否包含任何空格字符(包括全角空格)
- const hasSpace = /[\s\u3000]/.test(value);
- if (hasSpace) {
- callback(new Error(this.$t('不可输入空格')));
- } else {
- callback();
- }
- },
- trigger: 'change'
- }
- ],
- delivery:[
- // { required: false,message:this.$t('不可输入空格'), trigger:'blur'}
- {
- validator: (rule, value, callback) => {
- if (value == null || value === '') {
- return callback(); // 允许为空
- }
- // 去掉前后空格后判断是否为空(可选)
- // if (value.trim() === '') return callback(new Error(self.$t('不可全为空格')));
- // 检查是否包含任何空格字符(包括全角空格)
- const hasSpace = /[\s\u3000]/.test(value);
- if (hasSpace) {
- callback(new Error(this.$t('不可输入空格')));
- } else {
- callback();
- }
- },
- trigger: 'change'
- }
- ],
- warrantyday:[
- // { required: false,message:this.$t('不可输入空格'), trigger:'blur'}
- {
- validator: (rule, value, callback) => {
- if (value == null || value === '') {
- return callback(); // 允许为空
- }
- // 去掉前后空格后判断是否为空(可选)
- // if (value.trim() === '') return callback(new Error(self.$t('不可全为空格')));
- // 检查是否包含任何空格字符(包括全角空格)
- const hasSpace = /[\s\u3000]/.test(value);
- if (hasSpace) {
- callback(new Error(this.$t('不可输入空格')));
- } else {
- callback();
- }
- },
- trigger: 'change'
- }
- ],
- stockstatus1:[
- // { required: false,message:this.$t('不可输入空格'), trigger:'blur'}
- {
- validator: (rule, value, callback) => {
- if (value == null || value === '') {
- return callback(); // 允许为空
- }
- // 去掉前后空格后判断是否为空(可选)
- // if (value.trim() === '') return callback(new Error(self.$t('不可全为空格')));
- // 检查是否包含任何空格字符(包括全角空格)
- const hasSpace = /[\s\u3000]/.test(value);
- if (hasSpace) {
- callback(new Error(this.$t('不可输入空格')));
- } else {
- callback();
- }
- },
- trigger: 'change'
- }
- ],
- stockstatus2:[
- // { required: false,message:this.$t('不可输入空格'), trigger:'blur'}
- {
- validator: (rule, value, callback) => {
- if (value == null || value === '') {
- return callback(); // 允许为空
- }
- // 去掉前后空格后判断是否为空(可选)
- // if (value.trim() === '') return callback(new Error(self.$t('不可全为空格')));
- // 检查是否包含任何空格字符(包括全角空格)
- const hasSpace = /[\s\u3000]/.test(value);
- if (hasSpace) {
- callback(new Error(this.$t('不可输入空格')));
- } else {
- callback();
- }
- },
- trigger: 'change'
- }
- ]
- },
- unitGroupData:[],
- unitData:[],
- bindData:{},
- tradefield:[],// 领域
- standards:[],// 产品标准
- pressures:[],// 压力等级
- itemmaterial:[], // 材质
- butterflyplatedrive:[],// 蝶板驱动
- valveplatematerial:[],// 阀板材质
- bodymaterial:[],// 阀体材质
- actuatortype:[], // 执行器类型
- actuatorbrand:[],// 执行器品牌
- connectionmode:[],// 连接形式
- tagList:[],
- siteid:JSON.parse(sessionStorage.getItem('active_account')).siteid,
- categoriesList:[],
- prodlines:[],
- standardsmx:[],
- nominalpressure:[]
- }
- },
- computed: {
- calcDisabled () {
- return !!this.data.itemtype
- }
- },
- methods:{
- onShow () {
- this.queryMain()
- this.unitlist()
- this.unitGrouplist()
- this.fieldData()
- this.standardData()
- this.pressureData()
- this.itemmaterialData()
- this.butterflyplatedriveData()
- this.valveplatematerialData()
- this.bodymaterialData()
- this.actuatortypeData()
- this.actuatorbrandData()
- this.connectionmodeData()
- this.getCategoriesList()
- },
- async queryMain(fn) {
- const res = await this.$api.requested({
- "id": 20220923155302,
- "content": {
- "itemid": this.data.itemid
- },
- })
- this.form = Object.assign({},this.form,res.data)
- this.form.categories = this.form.categories?this.form.categories:this.categoriesList.length > 0?this.categoriesList[0].remarks:''
- this.form.tradefields = this.form.tradefield.map(e=>{
- return e.tradefield
- })
- fn?fn():''
- },
- // 查询领域
- async fieldData () {
- const res = await this.$store.dispatch('optiontypeselect','tradefield')
- this.tradefield = res.data
- },
- // 查询产品标准
- async standardData () {
- const res = await this.$store.dispatch('optiontypeselect','itemstandards')
- this.standards = res.data
- },
- standardChange(val){
- this.form.standards = val.value
- this.form.standardsmx = ''
- this.standardsmx = val.subvalues
- },
- // 查询压力等级
- async pressureData () {
- const res = await this.$store.dispatch('optiontypeselect','pressurelevel')
- this.pressures = res.data
- },
- // 查询材质
- async itemmaterialData () {
- const res = await this.$store.dispatch('optiontypeselect','itemmaterial')
- this.itemmaterial = res.data
- },
- // 查询蝶板驱动
- async butterflyplatedriveData () {
- const res = await this.$store.dispatch('optiontypeselect','butterflyplatedrive')
- this.butterflyplatedrive = res.data
- },
- // 阀板材质
- async valveplatematerialData () {
- const res = await this.$store.dispatch('optiontypeselect','valveplatematerial')
- this.valveplatematerial = res.data
- },
- // 阀体材质
- async bodymaterialData () {
- const res = await this.$store.dispatch('optiontypeselect','bodymaterial')
- this.bodymaterial = res.data
- },
- // 执行器类型
- async actuatortypeData () {
- const res = await this.$store.dispatch('optiontypeselect','actuatortype')
- this.actuatortype = res.data
- },
- // 执行器品牌
- async actuatorbrandData () {
- const res = await this.$store.dispatch('optiontypeselect','actuatorbrand')
- this.actuatorbrand = res.data
- },
- // 连接形式
- async connectionmodeData () {
- const res = await this.$store.dispatch('optiontypeselect','connectionmode')
- this.connectionmode = res.data
- },
- async unitlist () {
- const res = await this.$api.requested({
- "id": "20220922084803",
- "version":1,
- "nocache": true,
- "content": {
- "pageSize":1000,
- "where":{
- "condition":""
- }
- }
- })
- this.unitData = res.data
- },
- async unitGrouplist () {
- const res = await this.$api.requested({
- "id": "20220922084503",
- "version":1,
- "nocache": true,
- "content": {
- "pageSize":1000,
- "where":{
- "condition":"",
- "unitid":this.form.unitid
- }
- }
- })
- this.unitGroupData = res.data
- },
- /*公称压力*/
- async pressureChange(){
- if (this.nominalpressure.length < 1){
- let res = await this.$store.dispatch('optiontypeselect','nominalpressure')
- this.nominalpressure = res.data
- }
- },
- onSubmit () {
- this.$refs['form'].validate(async (valid) => {
- if (!valid) return false
- this.form.nominalpressure = this.form.nominalpressure?typeof (this.form.nominalpressure) == 'object'?this.form.nominalpressure:[this.form.nominalpressure]:''
- const res = await this.$api.requested({
- "id": 20220923141502,
- "content": this.form
- })
- this.tool.showMessage(res,()=>{
- this.bindData = {
- ownertable:'plm_item',
- ownerid:res.data.itemid,
- usetype:'default'
- }
- this.setTag(this.$route.query.id)
- this.$refs['form'].resetFields();
- this.$refs['upload'].toUpload()
- this.$emit('onSuccess')
- this.refresh()
- this.dialogFormVisible = false
- })
- })
- },
- async setTag(id,rowindex){
- const res = await this.$api.requested({
- "id": 20220929090901,
- "content": {
- "ownertable":"plm_item",
- "ownerid":id,
- "datatag":[this.form.tags]
- }
- })
- console.log(res.data,'标签设置结果')
- this.$refs['form'].resetFields();
- this.$refs['upload'].toUpload()
- this.$emit('onSuccess')
- this.refresh()
- },
- onCancel(){
- this.dialogFormVisible = false
- this.$refs['form'].resetFields();
- this.form={
- "attinfos":[],
- "itemid":0,
- "isauxunit":0,
- "unitid":'',
- "unitgroupid":'',
- "itemno":'',
- "itemname":'',
- "model": "",
- "spec": "",
- "orderminqty": '', //订单起订量
- "orderaddqty": '', //订单增量
- "orderminqty_auxunit": 0, //订单起订量控制单位(0:主单位;1:辅助单位)
- "orderaddqty_auxunit": 0, //订单增量控制单位(0:主单位;1:辅助单位
- "remarks": "", //可选
- "barcode": "", //可选
- "skucontrol": 0, //可选
- "batchcontrol": 1, //可选
- "grossweight": '', //可选
- "weight": '', //可选
- "height": '', //可选
- "width": '', //可选
- "length": '' //可选
- }
- },
- unitChange () {
- this.unitGrouplist()
- },
- isauxunitChange (val) {
- if (val === 0) {
- this.form.orderminqty_auxunit = this.form.orderaddqty_auxunit = 0
- this.form.unitgroupid = ''
- }
- },
- uploadSuccess(res){
- this.$emit('onSuccess')
- },
- refresh () {
- this.form = {
- "attinfos":[],
- "itemid":0,
- "isauxunit":0,
- "unitid":'',
- "unitgroupid":'',
- "itemno":'',
- "itemname":'',
- "model": "",
- "spec": "",
- "orderminqty": '', //订单起订量
- "orderaddqty": '', //订单增量
- "orderminqty_auxunit": 0, //订单起订量控制单位(0:主单位;1:辅助单位)
- "orderaddqty_auxunit": 0, //订单增量控制单位(0:主单位;1:辅助单位
- "remarks": "", //可选
- "barcode": "", //可选
- "skucontrol": 0, //可选
- "batchcontrol": 1, //可选
- "grossweight": '', //可选
- "weight": '', //可选
- "height": '', //可选
- "width": '', //可选
- "length": '', //可选
- "caliber": "", //可选,口径
- "pressure": "", //可选,压力
- "material": "", //可选,材质
- "standards": "", //可选,产品标准
- "tradefields": [], //可选,领域
- "stockstatus2": 0, //可选,库存缺货标准
- "stockstatus1": 100, //可选,库存充足标准
- "warrantyday": 1, //可选,保修期(年)
- "iswuliao": 0, //可选,是否营销物料
- "isservice": 0, //可选,是否服务物料
- "butterflyplatedrive": "",
- "connection": "",
- "valveplatematerial": "",
- "bodymaterial": "",
- "actuatortype": "",
- "actuatorbrand": "",
- "isbutterfly": 0,
- "erpitemno": "",
- "erpitemname": "",
- "specalnote": "",
- "prodline": "",
- "device": "",
- "categories":""
- }
- },
- clearCover () {
- this.queryMain()
- },
- itemnoChange(){
- this.form.itemno=this.form.itemno.replace(/^\s+|\s+$/g,'')
- },
- erpitemnoChange(){
- this.form.erpitemno = this.form.erpitemno.replace(/^\s+|\s+$/g,'')
- },
- /*获取可选商品大类*/
- async getCategoriesList () {
- let res = await this.$store.dispatch('optiontypeselect','categories')
- this.categoriesList= res.data
- },
- /*获取产线数据*/
- async lineData(){
- if (this.prodlines){
- let res = await this.$store.dispatch('optiontypeselect','productline')
- this.prodlines= res.data
- }
- }
- },
- mounted () {
- }
- }
- </script>
- <style>
- </style>
|