feat(jcsz/productDetail): 移除商品基本信息字段

This commit is contained in:
woody 2025-04-29 13:51:30 +08:00
parent b20b62c668
commit 26dfd0e636
3 changed files with 219 additions and 429 deletions

View File

@ -9,56 +9,56 @@ import request from '@/utils/request'
export function findAll() {
return request({
url: '/sale/manage/specsType/find-all',
method: 'get',
method: 'get'
})
}
// 查询所有规格jxc
export function findAllJxc() {
return request({
url: 'scm/manage/product-bas/find-all',
method: 'get',
method: 'get'
})
}
// 产品属性枚举
export function productType() {
return request({
url: '/system/pub/enums/get-product-attr-type',
method: 'get',
method: 'get'
})
}
// 发货类型
export function getShipping() {
return request({
url: '/system/pub/enums/get-shipping-channel',
method: 'get',
method: 'get'
})
}
// 单位
export function getUnit() {
return request({
url: '/system/pub/enums/get-unit',
method: 'get',
method: 'get'
})
}
// 销售模式
export function saleModel() {
return request({
url: 'system/pub/enums/sale-model',
method: 'get',
method: 'get'
})
}
// 所属分类
export function classifyAll() {
return request({
url: '/sale/manage/classify/find-all',
method: 'get',
method: 'get'
})
}
// 运输方式
export function transportType() {
return request({
url: '/system/pub/enums/manager-transport-type',
method: 'get',
method: 'get'
})
}
// 产品新增
@ -129,14 +129,14 @@ export function productListJxc(params) {
export function productDel(id) {
return request({
url: '/sale/manage/product/' + id,
method: 'delete',
method: 'delete'
})
}
// 删除产品jxc
export function productDelJxc(id) {
return request({
url: 'scm/manage/product-bas/' + id,
method: 'delete',
method: 'delete'
})
}
// 产品详情
@ -215,7 +215,7 @@ export function classifyUpdate(data) {
export function classifyDel(id) {
return request({
url: '/sale/manage/classify/' + id,
method: 'delete',
method: 'delete'
})
}
// 规格类型列表
@ -254,7 +254,7 @@ export function specsTypeUpdate(data) {
export function specsTypeDel(id) {
return request({
url: '/sale/manage/specsType/' + id,
method: 'delete',
method: 'delete'
})
}
// 导出产品分类
@ -285,7 +285,7 @@ export function areaClassIfyList(params) {
export function areaClassifyDel(id) {
return request({
url: '/sale/manage/area-classify/' + id,
method: 'delete',
method: 'delete'
})
}
@ -325,7 +325,7 @@ export function getAreaClassify(params) {
export function getEWaresPermissionTypeList() {
return request({
url: '/system/pub/enums/getEWaresPermissionTypeList',
method: 'get',
method: 'get'
})
}
// 根据id查询商品规格
@ -364,14 +364,14 @@ export function get_hierarchy_list(params) {
export function presale_status() {
return request({
url: '/system/pub/enums/presale-status',
method: 'get',
method: 'get'
})
}
// 查询供应方式
export function supply_way() {
return request({
url: '/system/pub/enums/supply-way',
method: 'get',
method: 'get'
})
}
// 标签分类
@ -424,7 +424,7 @@ export function waresList(params) {
export function waresDel(id) {
return request({
url: '/sale/manage/wares/' + id,
method: 'delete',
method: 'delete'
})
}
// 商品新增
@ -489,7 +489,7 @@ export function postageList(params) {
export function postageDel(id) {
return request({
url: '/sale/manage/postage/' + id,
method: 'delete',
method: 'delete'
})
}
// 计费方式
@ -520,7 +520,7 @@ export function findAllArea(params) {
export function orderType() {
return request({
url: '/system/pub/enums/special-area',
method: 'get',
method: 'get'
})
}
@ -548,7 +548,7 @@ export function postageDetail(params) {
params
})
}
//获取产品编号
// 获取产品编号
export function getProductCode(params) {
return request({
url: '/sale/manage/product/create-product-code',
@ -556,7 +556,7 @@ export function getProductCode(params) {
params
})
}
//获取产品编号
// 获取产品编号
export function getWaresCode(params) {
return request({
url: '/sale/manage/wares/create-wares-code',
@ -564,7 +564,7 @@ export function getWaresCode(params) {
params
})
}
//获取最大排序
// 获取最大排序
export function getMaxSort(params) {
return request({
url: '/sale/manage/product/get-max-sort',
@ -572,7 +572,7 @@ export function getMaxSort(params) {
params
})
}
//单位列表
// 单位列表
export function unitList(params) {
return request({
url: '/sale/manage/unit/list',
@ -580,7 +580,7 @@ export function unitList(params) {
params
})
}
//单位新增
// 单位新增
export function unitSave(data) {
return request({
url: '/sale/manage/unit/save',
@ -588,7 +588,7 @@ export function unitSave(data) {
data
})
}
//单位编辑
// 单位编辑
export function unitUpdate(data) {
return request({
url: '/sale/manage/unit/update',
@ -596,7 +596,7 @@ export function unitUpdate(data) {
data
})
}
//单位详情
// 单位详情
export function unitDetail(params) {
return request({
url: '/sale/manage/unit/detail',
@ -608,11 +608,11 @@ export function unitDetail(params) {
export function unitDel(id) {
return request({
url: '/sale/manage/unit/' + id,
method: 'delete',
method: 'delete'
})
}
//单位data
// 单位data
export function unitAll(params) {
return request({
url: '/sale/manage/unit/find-all',
@ -734,14 +734,7 @@ export function productFind(params) {
params
})
}
// 产品基本信息1
export function productFind1(params) {
return request({
url: 'scm/manage/product-bas/find-by-bas-all',
method: 'get',
params
})
}
// 供应商商品列表
export function thProductList(params) {
return request({

View File

@ -8,10 +8,10 @@
<div class="page">
<div class="topbox">
<div
class="levelList_i"
:class="tabActive == item.id ? 'act' : ''"
v-for="(item, index) in topList"
:key="index"
class="levelList_i"
:class="tabActive == item.id ? 'act' : ''"
@click.prevent="handleLink(item.id)"
>
{{ item.name }}
@ -25,49 +25,49 @@
<el-col class="el-col-40">
<el-form-item :label="'产品名称'" prop="productName">
<el-input
clearable
v-model="form.productName"
clearable
:placeholder="'请输入'"
></el-input>
/>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'产品编码'" prop="productCode">
<el-input
clearable
v-model="form.productCode"
clearable
:placeholder="'请输入'"
></el-input>
/>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'划线价'" prop="retailPrice">
<el-input
v-model="form.retailPrice"
clearable
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="form.retailPrice"
:placeholder="'请输入'"
></el-input>
/>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'发货类型'" prop="shippingChannel">
<el-select clearable v-model="form.shippingChannel">
<el-select v-model="form.shippingChannel" clearable>
<el-option
v-for="item in fhTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'保质期'" prop="shelfLife">
<el-input
v-model="form.shelfLife"
clearable
oninput="value=value.replace(/[^\d]/g,'')"
v-model="form.shelfLife"
:placeholder="'请输入'"
>
<i slot="suffix" class="neibu">{{ '天' }} </i>
@ -76,22 +76,22 @@
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'单位'" prop="unit">
<el-select clearable v-model="form.unit">
<el-select v-model="form.unit" clearable>
<el-option
v-for="item in dwList"
:key="item.pkId"
:label="item.name"
:value="item.pkId"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'重量'" prop="weight">
<el-input
v-model="form.weight"
clearable
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="form.weight"
:placeholder="'请输入'"
>
<i slot="suffix" class="neibu">KG </i>
@ -101,9 +101,9 @@
<el-col class="el-col-20">
<el-form-item :label="'邮费重量'" prop="postageWeight">
<el-input
v-model="form.postageWeight"
clearable
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="form.postageWeight"
:placeholder="'请输入'"
>
<i slot="suffix" class="neibu">KG </i>
@ -112,45 +112,44 @@
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'产品属性'" prop="productAttr">
<el-select clearable v-model="form.productAttr">
<el-select v-model="form.productAttr" clearable>
<el-option
v-for="item in productTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'所属分类'" prop="pkClassify">
<el-select clearable v-model="form.pkClassify">
<el-select v-model="form.pkClassify" clearable>
<el-option
v-for="item in classifyList"
:key="item.pkId"
:label="item.name"
:value="item.pkId"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'排列序号'" prop="sort">
<el-input
v-model="form.sort"
clearable
oninput="value = value.replace(/[^\d]/g,'')"
v-model="form.sort"
:placeholder="'请输入'"
>
</el-input>
/>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'长'" prop="length">
<el-input
v-model="form.length"
clearable
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="form.length"
:placeholder="'请输入'"
>
<i slot="suffix" class="neibu">CM </i>
@ -160,9 +159,9 @@
<el-col class="el-col-20">
<el-form-item :label="'宽'" prop="width">
<el-input
v-model="form.width"
clearable
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="form.width"
:placeholder="'请输入'"
>
<i slot="suffix" class="neibu">CM </i>
@ -172,9 +171,9 @@
<el-col class="el-col-20">
<el-form-item :label="'高'" prop="height">
<el-input
v-model="form.height"
clearable
oninput="value=value.replace(/[^\d.]/g,'')"
v-model="form.height"
:placeholder="'请输入'"
>
<i slot="suffix" class="neibu">CM </i>
@ -183,60 +182,41 @@
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'复购类型'">
<el-select clearable v-model="form.repurchaseType">
<el-select v-model="form.repurchaseType" clearable>
<el-option
v-for="item in repurchaseTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'上架状态'" prop="isPutOn">
<el-select clearable v-model="form.isPutOn">
<el-select v-model="form.isPutOn" clearable>
<el-option
v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item label="产品基本信息" prop="productBasName">
<el-input
clearable
v-model="form.productBasName"
@focus="opProduct"
></el-input>
</el-form-item>
<!-- <el-form-item label="产品基本信息" prop="pkProductBas">
<el-select clearable v-model="form.pkProductBas" filterable>
<el-option
v-for="item in productList"
:key="item.pkId"
:label="item.productName"
:value="item.pkId"
></el-option>
</el-select>
</el-form-item> -->
</el-col>
<el-col class="el-col-20">
<el-form-item label="供应商" prop="pkCubasdoc">
<el-select
v-model="form.pkCubasdoc"
clearable
:placeholder="'请选择'"
v-model="form.pkCubasdoc"
>
<el-option
v-for="item in supplierList"
:key="item.pkId"
:label="item.custName"
:value="item.pkId"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
@ -261,11 +241,11 @@
<div v-show="tabActive == 1">
<el-form-item :label="'规格'" prop="pkSpecsType">
<el-tag
:key="item.pkId"
v-for="(item, index) in ggList"
v-show="item.checked"
:key="item.pkId"
closable
class="elTag"
v-show="item.checked"
:disable-transitions="false"
@close="handleClose(item.pkId)"
>
@ -275,81 +255,80 @@
class="button-new-tag"
size="small"
@click="openDiag = true"
>{{ '添加' }}</el-button
>
>{{ '添加' }}</el-button>
</el-form-item>
</div>
<div v-show="tabActive == 2">
<el-row>
<el-col class="el-col-20">
<el-form-item :label="'抽奖礼品'" prop="isPrize">
<el-select clearable v-model="form.isPrize">
<el-select v-model="form.isPrize" clearable>
<el-option
v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'特惠礼品'" prop="isGift">
<el-select clearable v-model="form.isGift">
<el-select v-model="form.isGift" clearable>
<el-option
v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'提货商品'" prop="isPickUp">
<el-select clearable v-model="form.isPickUp">
<el-select v-model="form.isPickUp" clearable>
<el-option
v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'合并发货'" prop="isMerge">
<el-select clearable v-model="form.isMerge">
<el-select v-model="form.isMerge" clearable>
<el-option
v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'冷链运输'" prop="isFresh">
<el-select clearable v-model="form.isFresh">
<el-select v-model="form.isFresh" clearable>
<el-option
v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item :label="'追溯编号'" prop="isBarCode">
<el-select clearable v-model="form.isBarCode">
<el-select v-model="form.isBarCode" clearable>
<el-option
v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
></el-option>
/>
</el-select>
</el-form-item>
</el-col>
@ -360,8 +339,7 @@
v-for="(item, index) in transportTypeList"
:key="item.value"
:label="item.value"
>{{ item.label }}</el-checkbox
>
>{{ item.label }}</el-checkbox>
</el-checkbox-group>
</el-form-item>
</el-col>
@ -371,88 +349,18 @@
</div>
<div class="footer">
<el-button size="small" class="cancelBtn">
{{ '取消' }}</el-button
>
{{ '取消' }}</el-button>
<el-button
size="small"
v-hasButtons="['ProductReleaseConfirm']"
@click="submit('form')"
size="small"
style="background: #c8161d; border: none"
class="sureBtn"
@click="submit('form')"
>
{{ '确认' }}</el-button
>
{{ '确认' }}</el-button>
</div>
</div>
<!-- 产品弹框 -->
<el-dialog
:title="'添加'"
:visible.sync="dialogVisible"
:close-on-click-modal="false"
width="50%"
center
:before-close="handleClose1"
>
<div class="cpHeight">
<el-row>
<el-col :span="22">
<el-input
v-model="select.query"
clearable
:placeholder="'请输入'"
@keyup.enter.native="getProduct"
prefix-icon="el-icon-search"
></el-input>
</el-col>
<el-col :span="2">
<el-button type="primary" size="small" @click="getProduct">
{{ '搜索' }}</el-button
>
</el-col>
</el-row>
<div style="height: 10px"></div>
<el-table
:data="productList"
ref="multipleTable"
height="500px"
style="width: 100%"
@select-all="onSelectAll"
@select="selected"
:header-cell-style="{ background: '#EEEEEE' }"
:row-class-name="tableRowClassName"
>
<el-table-column type="selection" width="55">
</el-table-column>
<el-table-column
align="center"
prop="productName"
:label="'产品名称'"
>
</el-table-column>
<el-table-column
align="center"
prop="productCode"
:label="'产品编号'"
>
</el-table-column>
<el-table-column align="center" prop="unitStr" :label="'单位'">
</el-table-column>
</el-table>
</div>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getProduct"
/>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose1">{{ '取消' }}</el-button>
<el-button type="primary" @click="sureProduct">{{
'确认'
}}</el-button>
</span>
</el-dialog>
<!-- 规格 -->
<el-dialog
:title="'添加'"
@ -465,11 +373,10 @@
<el-checkbox-group v-model="form.checkList" class="check">
<el-checkbox
v-for="(item, index) in ggList"
class="check_i"
:key="item.pkId"
class="check_i"
:label="item.pkId"
>{{ item.typeName }}</el-checkbox
>
>{{ item.typeName }}</el-checkbox>
</el-checkbox-group>
</div>
<span slot="footer" class="dialog-footer">
@ -482,172 +389,164 @@
</div>
</template>
<script>
import { getToken } from "@/utils/auth";
import * as api from "@/api/product.js";
import ImageUpload from "@/components/ImageUpload";
import * as supply from "@/api/supply.js";
import { getToken } from '@/utils/auth'
import * as api from '@/api/product.js'
import ImageUpload from '@/components/ImageUpload'
import * as supply from '@/api/supply.js'
export default {
name: "jcsz",
name: 'Jcsz',
components: {
ImageUpload,
ImageUpload
},
data() {
return {
selectData:{},
select:{},
queryParams: {
pageNum: 1,
pageSize: 50,
},
selectData: {},
select: {},
total: 0,
dialogVisible:false,
dialogVisible: false,
rules: {
shippingChannel: [
{
required: true,
message: '请输入发货类型',
trigger: "change",
},
trigger: 'change'
}
],
unit: [{ required: true, message: "请选择单位", trigger: "change" }],
unit: [{ required: true, message: '请选择单位', trigger: 'change' }],
productName: [
{ required: true, message: "请输入产品名称", trigger: "blur" },
{ required: true, message: '请输入产品名称', trigger: 'blur' }
],
retailPrice: [
{ required: true, message: '请输入划线价', trigger: "blur" },
{ required: true, message: '请输入划线价', trigger: 'blur' }
],
shelfLife: [
{ required: true, message: '请输入保质期', trigger: "blur" },
{ required: true, message: '请输入保质期', trigger: 'blur' }
],
weight: [{ required: true, message: "请输入重量", trigger: "blur" }],
weight: [{ required: true, message: '请输入重量', trigger: 'blur' }],
productCode: [
{ required: true, message: "请输入产品编号", trigger: "blur" },
{ required: true, message: '请输入产品编号', trigger: 'blur' }
],
postageWeight: [
{ required: true, message: '请输入邮费重量', trigger: "blur" },
{ required: true, message: '请输入邮费重量', trigger: 'blur' }
],
productAttr: [
{
required: true,
message: '请选择产品属性',
trigger: "change",
},
trigger: 'change'
}
],
isPutOn: [
{ required: true, message: '请选择', trigger: "change" },
],
productBasName: [
{ required: true, message: '请选择', trigger: "change" },
{ required: true, message: '请选择', trigger: 'change' }
],
pkClassify: [
{
required: true,
message: '请选择所属分类',
trigger: "change",
},
trigger: 'change'
}
],
sort: [
{ required: true, message: '请输入排列序号', trigger: "blur" },
{ required: true, message: '请输入排列序号', trigger: 'blur' }
],
length: [{ required: true, message: "请输入长", trigger: "blur" }],
width: [{ required: true, message: "请输入宽", trigger: "blur" }],
height: [{ required: true, message: "请输入高", trigger: "blur" }],
length: [{ required: true, message: '请输入长', trigger: 'blur' }],
width: [{ required: true, message: '请输入宽', trigger: 'blur' }],
height: [{ required: true, message: '请输入高', trigger: 'blur' }],
cover: [
{ required: true, message: "请上传产品主图", trigger: "change" },
{ required: true, message: '请上传产品主图', trigger: 'change' }
],
pkSpecsType: [
{ required: true, message: "请选择规格", trigger: "change" },
{ required: true, message: '请选择规格', trigger: 'change' }
],
isPrize: [
{
required: true,
message: '抽奖礼品',
trigger: "change",
},
trigger: 'change'
}
],
isGift: [
{ required: true, message: "请选择特惠礼品", trigger: "change" },
{ required: true, message: '请选择特惠礼品', trigger: 'change' }
],
isPickUp: [
{ required: true, message: "请选择提货商品", trigger: "change" },
{ required: true, message: '请选择提货商品', trigger: 'change' }
],
isMerge: [
{
required: true,
message: '请选择合并发货',
trigger: "change",
},
trigger: 'change'
}
],
isFresh: [
{
required: true,
message: '请选择冷链运输',
trigger: "change",
},
trigger: 'change'
}
],
pkCubasdoc: [
{
required: true,
message: '请选择',
trigger: "change",
},
trigger: 'change'
}
],
isBarCode: [
{ required: true, message: "请选择条码管理", trigger: "change" },
{ required: true, message: '请选择条码管理', trigger: 'change' }
],
ysList: [
{ required: true, message: '请选择运输方式', trigger: "change" },
],
{ required: true, message: '请选择运输方式', trigger: 'change' }
]
},
ggList: [],
//
openDiag: false,
showImg: true, //
showImg: true, //
noneUploadImg: false, //
uploadImgUrl: process.env.VUE_APP_BASE_API + "/system/upload",
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
headers: {
Authorization: getToken(),
Authorization: getToken()
},
form: {
productBasName:'',
productCode: "",
sptw: "",
productCode: '',
sptw: '',
checkList: [],
ysList: [],
sort: "",
postageWeight: "",
height: "",
width: "",
length: "",
weight: "",
shelfLife: "",
retailPrice: "",
sort: '',
postageWeight: '',
height: '',
width: '',
length: '',
weight: '',
shelfLife: '',
retailPrice: ''
},
tabActive: 0,
agreeList: [
{
text: '允许',
val: 0,
val: 0
},
{
text: '禁止',
val: 1,
},
val: 1
}
],
topList: [
{
name: '基础设置',
id: 0,
id: 0
},
{
name: '规格明细',
id: 1,
id: 1
},
{
name: '拓展设置',
id: 2,
},
id: 2
}
],
productTypeList: [],
fhTypeList: [],
@ -656,191 +555,177 @@ export default {
transportTypeList: [],
repurchaseTypeList: [],
productList: [],
supplierList: [],
};
supplierList: []
}
},
mounted() {
// list
this.getGg();
this.getGg()
// //
this.getProductType();
this.getProductType()
//
this.getShipping();
this.getShipping()
//
this.getUnit();
this.getUnit()
//
this.getRepurchaseType();
this.getRepurchaseType()
//
this.getClassifyAll();
this.getClassifyAll()
//
this.getTransportType();
this.getTransportType()
//
this.getProductCode();
this.getProductCode()
//
this.getSort();
//
this.getProduct();
this.getSort()
},
methods: {
sureProduct(){
this.form.productBasName = this.selectData.productName
sureProduct() {
this.form.pkProductBas = this.selectData.pkId
this.dialogVisible = false
},
onSelectAll() {
this.$refs.multipleTable.clearSelection();
this.$refs.multipleTable.clearSelection()
},
selected(selection, row) {
this.$refs.multipleTable.clearSelection();
if (selection.length == 0) return;
this.$refs.multipleTable.toggleRowSelection(row, true);
this.selectData = row;
},
handleClose1() {
this.dialogVisible = false
},
opProduct(){
this.dialogVisible = true
},
getProduct() {
api.productFind1(Object.assign({}, this.queryParams, this.select)).then((res) => {
this.productList = res.rows;
this.total = res.total
});
this.$refs.multipleTable.clearSelection()
if (selection.length == 0) return
this.$refs.multipleTable.toggleRowSelection(row, true)
this.selectData = row
},
getRepurchaseType() {
api.repurchaseType().then((res) => {
this.repurchaseTypeList = res.data;
});
this.repurchaseTypeList = res.data
})
supply.supplierList().then((res) => {
this.supplierList = res.rows;
});
this.supplierList = res.rows
})
},
getSort() {
api.getMaxSort().then((res) => {
this.form.sort = res.data;
});
this.form.sort = res.data
})
},
getProductCode() {
api.getProductCode().then((res) => {
this.form.productCode = res.msg;
});
this.form.productCode = res.msg
})
},
//
changeYsfs(val) {
//
if (val.indexOf(1) > -1) {
this.form.isLandTrans = 0;
this.form.isLandTrans = 0
} else {
this.form.isLandTrans = 1;
this.form.isLandTrans = 1
}
//
if (val.indexOf(2) > -1) {
this.form.isAirTrans = 0;
this.form.isAirTrans = 0
} else {
this.form.isAirTrans = 1;
this.form.isAirTrans = 1
}
//
if (val.indexOf(3) > -1) {
this.form.isOceanTrans = 0;
this.form.isOceanTrans = 0
} else {
this.form.isOceanTrans = 1;
this.form.isOceanTrans = 1
}
},
//
getTransportType() {
api.transportType().then((res) => {
this.transportTypeList = res.data;
});
this.transportTypeList = res.data
})
},
//
getClassifyAll() {
api.classifyAll().then((res) => {
this.classifyList = res.data;
});
this.classifyList = res.data
})
},
//
checkTrue() {
this.ggList.forEach((item) => {
item.checked = false;
});
item.checked = false
})
this.ggList.forEach((item) => {
this.form.checkList.forEach((child) => {
if (item.pkId == child) {
item.checked = true;
item.checked = true
}
});
});
this.openDiag = false;
this.form.pkSpecsType = this.form.checkList;
})
})
this.openDiag = false
this.form.pkSpecsType = this.form.checkList
},
//
getGg() {
api.findAll().then((res) => {
res.data.forEach((item) => {
item.checked = false;
});
this.ggList = res.data;
});
item.checked = false
})
this.ggList = res.data
})
},
//
getProductType() {
api.productType().then((res) => {
this.productTypeList = res.data;
});
this.productTypeList = res.data
})
},
//
getShipping() {
api.getShipping().then((res) => {
this.fhTypeList = res.data;
});
this.fhTypeList = res.data
})
},
//
getUnit() {
api.unitAll().then((res) => {
this.dwList = res.data;
});
this.dwList = res.data
})
},
//
handleClose(pkId) {
//
this.ggList.forEach((item) => {
if (item.pkId == pkId) {
item.checked = false;
item.checked = false
}
});
})
//
this.form.checkList.splice(this.form.checkList.indexOf(pkId), 1);
this.$forceUpdate();
this.form.checkList.splice(this.form.checkList.indexOf(pkId), 1)
this.$forceUpdate()
},
submit(form) {
this.$refs[form].validate((valid) => {
console.log(valid, '....valid')
if (valid) {
api.productSave(this.form).then((res) => {
if (res.code == 200) {
this.$message({
message: '添加成功',
type: "success",
});
type: 'success'
})
this.$router.replace({
path: "/goodsManage/productList",
});
path: '/goodsManage/productList'
})
} else {
this.$message({
message: res.msg,
type: "warning",
duration: 3000,
});
type: 'warning',
duration: 3000
})
}
});
})
} else {
return false;
return false
}
});
})
},
// tab
handleLink(id) {
this.tabActive = id;
this.tabActive = id
},
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) {
@ -849,22 +734,22 @@ export default {
return 'success-row'
}
return ''
},
}
// uploadImgChange(file, fileList) {
// this.noneUploadImg = fileList.length > 0
// this.$refs.form.clearValidate('cover')
// },
//
//
// handlePictureSuccess(res, file) {
// this.form.cover = res.data.url
// },
//
//
// handleRemove(file, fileList) {
// this.form.cover = ''
// this.noneUploadImg = fileList.length > 0
// },
},
};
}
}
</script>
<style scoped lang="scss">
::v-deep .el-select {

View File

@ -298,25 +298,7 @@
</el-select>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<!-- <el-form-item label="产品基本信息" prop="pkProductBas">
<el-select clearable v-model="form.pkProductBas" filterable>
<el-option
v-for="item in productList"
:key="item.pkId"
:label="item.productName"
:value="item.pkId"
></el-option>
</el-select>
</el-form-item> -->
<el-form-item label="产品基本信息" prop="productBasName">
<el-input
v-model="form.productBasName"
clearable
@focus="opProduct"
/>
</el-form-item>
</el-col>
<el-col class="el-col-20">
<el-form-item label="供应商" prop="pkCubasdoc">
<el-select
@ -533,70 +515,7 @@
> {{ '确认' }}</el-button>
</div>
</div>
<!-- 产品弹框 -->
<el-dialog
:title="'添加'"
:visible.sync="dialogVisible"
:close-on-click-modal="false"
width="50%"
center
:before-close="handleClose1"
>
<div class="cpHeight">
<el-row>
<el-col :span="22">
<el-input
v-model="select.query"
clearable
:placeholder="'请输入'"
prefix-icon="el-icon-search"
@keyup.enter.native="getProduct"
/>
</el-col>
<el-col :span="2">
<el-button type="primary" size="small" @click="getProduct">
{{ '搜索' }}</el-button>
</el-col>
</el-row>
<div style="height: 10px" />
<el-table
ref="multipleTable"
:data="productList"
height="500px"
style="width: 100%"
:header-cell-style="{ background: '#EEEEEE' }"
:row-class-name="tableRowClassName"
@select-all="onSelectAll"
@select="selected"
>
<el-table-column type="selection" width="55" />
<el-table-column
align="center"
prop="productName"
:label="'产品名称'"
/>
<el-table-column
align="center"
prop="productCode"
:label="'产品编号'"
/>
<el-table-column align="center" prop="unitStr" :label="'单位'" />
</el-table>
</div>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getProduct"
/>
<span slot="footer" class="dialog-footer">
<el-button @click="handleClose1">{{ '取消' }}</el-button>
<el-button type="primary" @click="sureProduct">{{
'确认'
}}</el-button>
</span>
</el-dialog>
<!-- 规格 -->
<el-dialog
:title="'添加'"
@ -834,7 +753,6 @@ export default {
this.getTransportType()
//
this.getRepurchaseType()
this.getProduct()
},
methods: {
sureProduct() {
@ -857,12 +775,6 @@ export default {
opProduct() {
this.dialogVisible = true
},
getProduct() {
api.productFind1(Object.assign({}, this.queryParams, this.select)).then((res) => {
this.productList = res.rows
this.total = res.total
})
},
getRepurchaseType() {
api.repurchaseType().then((res) => {
this.repurchaseTypeList = res.data