|
@@ -1,187 +1,90 @@
|
|
|
<template>
|
|
<template>
|
|
|
- <div class="app-content">
|
|
|
|
|
- <!-- 花材基本信息 -->
|
|
|
|
|
- <form @submit="formSubmit">
|
|
|
|
|
- <div class="module-com input-line-wrap">
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">名称</div>
|
|
|
|
|
- <input v-model="form.name" placeholder-class="phcolor" class="tui-input" name="name" placeholder="请填写名称" @input="fillName($event)" maxlength="50" type="text" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">初始名称</div>
|
|
|
|
|
- <view style="color:#CCCCCC;width:450upx;height:45upx;" @click.stop="notModify">
|
|
|
|
|
- {{form.name}}
|
|
|
|
|
- </view>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">拼音缩写</div>
|
|
|
|
|
- <input v-model="form.py" placeholder-class="phcolor" class="tui-input" name="py" placeholder="请填写拼音首字母缩写" maxlength="50" type="text" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <view class="tui-title">价格</view>
|
|
|
|
|
- <input v-model="form.hjPrice" style="width:130upx;border:1upx solid #CCCCCC;text-align:center;height:50upx;" placeholder-class="phcolor"
|
|
|
|
|
- class="tui-input" name="hjPrice" @focus="form.hjPrice=''" placeholder="大客价" type="digit" />
|
|
|
|
|
- <input v-model="form.price" style="width:130upx;border:1upx solid #3385FF;text-align:center;height:50upx;color:#3385FF;margin-left:30upx;" placeholder-class="phcolor"
|
|
|
|
|
- class="tui-input" name="price" @focus="form.price=''" placeholder="批发价" type="digit" @input="priceLinkage()" />
|
|
|
|
|
- <input v-model="form.skPrice" style="width:130upx;border:1upx solid #CCCCCC;text-align:center;height:50upx;margin-left:30upx;" placeholder-class="phcolor"
|
|
|
|
|
- class="tui-input" name="skPrice" @focus="form.skPrice=''" placeholder="零售价" type="digit" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <view class="tui-title">特价</view>
|
|
|
|
|
- <input v-model="form.hjDiscountPrice" style="width:130upx;border:1upx solid #CCCCCC;text-align:center;height:50upx;" placeholder-class="phcolor"
|
|
|
|
|
- class="tui-input" name="hjDiscountPrice" @focus="form.hjDiscountPrice=''" placeholder="会员特价" type="digit" />
|
|
|
|
|
- <input v-model="form.discountPrice" style="width:130upx;border:1upx solid #3385FF;margin-left:30upx;color:#3385FF;text-align:center;height:50upx;" placeholder-class="phcolor" @input="tjLinkage()"
|
|
|
|
|
- class="tui-input" name="discountPrice" @focus="form.discountPrice=''" placeholder="无特价填0" maxlength="50" type="digit" />
|
|
|
|
|
- <input v-model="form.skDiscountPrice" style="width:130upx;border:1upx solid #CCCCCC;text-align:center;height:50upx;margin-left:30upx;" placeholder-class="phcolor"
|
|
|
|
|
- class="tui-input" name="skDiscountPrice" @focus="form.skDiscountPrice=''" placeholder="零售特价" type="digit" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <view class="tui-title">成本</view>
|
|
|
|
|
- <input v-model="form.cost" style="width:340upx;" placeholder-class="phcolor" @focus="form.cost=''" class="tui-input" name="cost" placeholder="请输入" type="digit"/>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">库存</div>
|
|
|
|
|
- <input v-model="form.stock" style="width:340upx;" placeholder-class="phcolor" @focus="form.stock=''" @input="changeStock($event)" class="tui-input" name="stock" placeholder="请输入" type="digit"/>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :arrow="true">
|
|
|
|
|
- <div class="tui-title">分类</div>
|
|
|
|
|
- <picker mode="selector" :value="form.classId" :range="itemClassData" range-key="name" @change="changeItemClassFn" class="tui-input" >
|
|
|
|
|
- <input v-model="form.classId" name="classId" type="text" hidden />
|
|
|
|
|
- <div v-if="form.classId" style="height:45upx;" >{{ itemClassSelectedData.name }}</div>
|
|
|
|
|
- <div class="tui-placeholder" style="height:45upx;" v-else>请选择</div>
|
|
|
|
|
- </picker>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">比例类型</div>
|
|
|
|
|
- <radio-group class="tui-input" @change="ratioTypeChange">
|
|
|
|
|
- <label class="list" for="fixedLink">
|
|
|
|
|
- <radio id="fixedLink" value="0" :checked="form.ratioType == 0" style="transform: scale(0.7,0.7);" />
|
|
|
|
|
- <span class="checkbox-text" style="font-size:30upx;">固定</span>
|
|
|
|
|
- </label>
|
|
|
|
|
- <label class="list" for="dimLink">
|
|
|
|
|
- <radio id="dimLink" value="1" :checked="form.ratioType == 1" style="transform: scale(0.7,0.7);" />
|
|
|
|
|
- <span class="checkbox-text" style="font-size:30upx;">模糊(若干支)</span>
|
|
|
|
|
- </label>
|
|
|
|
|
- </radio-group>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :arrow="true">
|
|
|
|
|
- <div class="tui-title">大单位</div>
|
|
|
|
|
- <picker mode="selector" :value="form.bigUnitId" :range="unitData" range-key="name" @change="changeBigUnitFn" class="tui-input" >
|
|
|
|
|
- <input v-model="form.bigUnitId" name="bigUnitId" type="text" hidden />
|
|
|
|
|
- <div v-if="form.bigUnitId">{{ bigUnitSelectedData.name }}</div>
|
|
|
|
|
- <div class="tui-placeholder" style="height:45upx;" v-else>请选择</div>
|
|
|
|
|
- </picker>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :arrow="true">
|
|
|
|
|
- <div class="tui-title">小单位</div>
|
|
|
|
|
- <picker mode="selector" :value="form.smallUnitId" :range="unitData" range-key="name" @change="changeSmallUnitFn" class="tui-input" >
|
|
|
|
|
- <input v-model="form.smallUnitId" name="smallUnitId" type="text" hidden />
|
|
|
|
|
- <div v-if="form.smallUnitId">{{ smallUnitSelectedData.name }}</div>
|
|
|
|
|
- <div class="tui-placeholder" v-else>请选择</div>
|
|
|
|
|
- </picker>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false" v-if="form.ratioType == 0">
|
|
|
|
|
- <div class="tui-title">单位比</div>
|
|
|
|
|
- <input v-model="form.ratio" placeholder-class="phcolor" class="tui-input" name="ratio" placeholder="1扎=20支,请填写20" maxlength="50" type="number" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">每扎重量</div>
|
|
|
|
|
- <input v-model="form.weight" placeholder-class="phcolor" class="tui-input" name="weight" placeholder="单位为公斤,参考红玫每扎1.2公斤" maxlength="50" type="digit" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">库存预警</div>
|
|
|
|
|
- <input v-model="form.stockWarning" placeholder-class="phcolor" class="tui-input" name="stockWarning" placeholder="请填写" maxlength="50" type="number" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">花材状态</div>
|
|
|
|
|
- <div class="switch_bx">
|
|
|
|
|
- <text v-if="form.status == 1">上架</text>
|
|
|
|
|
- <text v-else>下架</text>
|
|
|
|
|
- </div>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- </div>
|
|
|
|
|
-
|
|
|
|
|
- <div class="module-com input-line-wrap goods-wrap">
|
|
|
|
|
- <div class="module-tit">
|
|
|
|
|
- <span>花材图片</span>
|
|
|
|
|
- <span class="app-color-3"></span>
|
|
|
|
|
- </div>
|
|
|
|
|
- <view class="module-det">
|
|
|
|
|
- <htz-image-upload :max="1" :compress="true" v-model="currentImgData" :headers="headers"
|
|
|
|
|
- @uploadSuccess="imgUploadSuccess" @imgDelete="imgDeleteFn" :action="getLoginInfo.imgUploadApi">
|
|
|
|
|
- </htz-image-upload>
|
|
|
|
|
|
|
+ <view class="app-content">
|
|
|
|
|
+ <form @submit="formSubmit">
|
|
|
|
|
+ <div class="module-com input-line-wrap">
|
|
|
|
|
+
|
|
|
|
|
+ <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
+ <div class="tui-title">名称</div>
|
|
|
|
|
+ <input v-model="form.name" placeholder-class="phcolor" class="tui-input" name="name" placeholder="产品名称" @input="fillName($event)" maxlength="50" type="text" />
|
|
|
|
|
+ </tui-list-cell>
|
|
|
|
|
+
|
|
|
|
|
+ <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
+ <div class="tui-title">初始名称</div>
|
|
|
|
|
+ <view style="color:#CCCCCC;width:450upx;height:45upx;" @click.stop="notModify">
|
|
|
|
|
+ {{form.name}}
|
|
|
</view>
|
|
</view>
|
|
|
|
|
+ </tui-list-cell>
|
|
|
|
|
+
|
|
|
|
|
+ <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
+ <div class="tui-title">拼音缩写</div>
|
|
|
|
|
+ <input v-model="form.py" placeholder-class="phcolor" class="tui-input" name="py" placeholder="拼音首字母组合" maxlength="50" type="text" />
|
|
|
|
|
+ </tui-list-cell>
|
|
|
|
|
+
|
|
|
|
|
+ <tui-list-cell class="line-cell" :arrow="true">
|
|
|
|
|
+ <div class="tui-title">分类</div>
|
|
|
|
|
+ <input v-model="form.classId" name="classId" type="text" hidden />
|
|
|
|
|
+ <view style="color:#CCCCCC;width:450upx;height:45upx;" @click.stop="changeClass()" v-if="form.classId == 0">
|
|
|
|
|
+ 请选择分类
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view @click.stop="changeClass()" style="width:450upx;height:45upx;" v-else>
|
|
|
|
|
+ {{form.className}}
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </tui-list-cell>
|
|
|
|
|
+
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
|
|
+ <div class="module-com input-line-wrap goods-wrap">
|
|
|
|
|
+ <div class="module-tit">
|
|
|
|
|
+ <span>产品图片</span>
|
|
|
|
|
+ <span class="app-color-3"></span>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
- <view class="module-com input-line-wrap">
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <view class="tui-title">大客价加价</view>
|
|
|
|
|
- <input v-model="form.hjAddPrice" placeholder-class="phcolor" class="tui-input" name="hjAddPrice" placeholder="在成本价基础上多卖的金额" maxlength="50" type="digit" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <div class="tui-title">批发价加价</div>
|
|
|
|
|
- <input v-model="form.addPrice" placeholder-class="phcolor" class="tui-input" name="addPrice" @focus="form.addPrice=''" placeholder="在成本价基础上多卖的金额" maxlength="50" type="digit" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <view class="tui-title">零售价加价</view>
|
|
|
|
|
- <input v-model="form.skMore" placeholder-class="phcolor" class="tui-input" name="skMore" @focus="form.skMore=''" placeholder="在成本价基础上多卖的金额" maxlength="50" type="digit" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <view class="tui-title">顺序值</view>
|
|
|
|
|
- <input v-model="form.inTurn" placeholder-class="phcolor" class="tui-input" name="inTurn" @focus="form.inTurn=''" placeholder="请填写金额" type="number" />
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
- <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
- <view class="tui-title">拆散单价</view>
|
|
|
|
|
- <input v-model="form.smallRatio" @focus="form.smallRatio=''" placeholder-class="phcolor" class="tui-input" name="smallRatio" placeholder="请填写" maxlength="50"
|
|
|
|
|
- type="number" style="width:160upx;border:1upx solid #cccccc;text-align:center;" />
|
|
|
|
|
- <text style="margin-left:12upx;" v-if="Number(form.ratio)>0">X ¥{{parseFloat((Number(form.price)/Number(form.ratio)).toFixed(2))}} = ¥{{parseFloat((Number(form.smallRatio)*((Number(form.price)/Number(form.ratio)).toFixed(2))).toFixed(2))}}</text>
|
|
|
|
|
- </tui-list-cell>
|
|
|
|
|
-
|
|
|
|
|
|
|
+ <view class="module-det">
|
|
|
|
|
+ <htz-image-upload :max="1" :compress="true" v-model="currentImgData" :headers="headers"
|
|
|
|
|
+ @uploadSuccess="imgUploadSuccess" @imgDelete="imgDeleteFn" :action="getLoginInfo.imgUploadApi">
|
|
|
|
|
+ </htz-image-upload>
|
|
|
</view>
|
|
</view>
|
|
|
-
|
|
|
|
|
- <view class="app-footer">
|
|
|
|
|
- <button class="admin-button-com big default" @click="goBack()">取消</button>
|
|
|
|
|
- <button v-if="option.ptItemId" class="admin-button-com big blue" formType="submit" @click="status = 1">添加</button>
|
|
|
|
|
- <button v-else class="admin-button-com big blue" formType="submit" @click="status = 1">确认</button>
|
|
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
|
|
+ <view class="module-com input-line-wrap">
|
|
|
|
|
+ <tui-list-cell class="line-cell" :hover="false">
|
|
|
|
|
+ <view class="tui-title">顺序值</view>
|
|
|
|
|
+ <input v-model="form.inTurn" placeholder-class="phcolor" class="tui-input" name="inTurn" @focus="form.inTurn=''" placeholder="请填写数字" type="number" />
|
|
|
|
|
+ </tui-list-cell>
|
|
|
|
|
+ </view>
|
|
|
|
|
+
|
|
|
|
|
+ <view class="app-footer">
|
|
|
|
|
+ <button class="admin-button-com big default" @click="goBack()">取消</button>
|
|
|
|
|
+ <button v-if="option.ptItemId" class="admin-button-com big blue" formType="submit" @click="status = 1">添加</button>
|
|
|
|
|
+ <button v-else class="admin-button-com big blue" formType="submit" @click="status = 1">确认</button>
|
|
|
|
|
+ </view>
|
|
|
|
|
+
|
|
|
|
|
+ </form>
|
|
|
|
|
+
|
|
|
|
|
+ <uni-popup ref="classRef" background-color="#fff" type="center" :animation="false" class="class-popup-style">
|
|
|
|
|
+ <view style="margin-left:30upx;margin-top:15upx;font-size:26upx;font-weight:bold;">请选择分类:</view>
|
|
|
|
|
+ <view style="display:flex;padding:20upx;height:auto;justify-content: space-between;align-items:center;flex-wrap:wrap;max-height:100vh;overflow:auto;">
|
|
|
|
|
+ <view v-for="(item, index) in cpClassList" :key="index" @tap.stop="setThisClass(item)" style="margin-bottom:20upx;margin-left:3upx;">
|
|
|
|
|
+ <image :src="item.cover" style="width:120upx;height:120upx;border-radius:10upx;"></image>
|
|
|
|
|
+ <view style="margin-top:5upx;overflow: hidden;white-space: nowrap;width:120upx;text-align:center;">{{item.name}}</view>
|
|
|
</view>
|
|
</view>
|
|
|
-
|
|
|
|
|
- </form>
|
|
|
|
|
- </div>
|
|
|
|
|
- </template>
|
|
|
|
|
-
|
|
|
|
|
- <script>
|
|
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </uni-popup>
|
|
|
|
|
+
|
|
|
|
|
+ </view>
|
|
|
|
|
+</template>
|
|
|
|
|
+<script>
|
|
|
import TuiListCell from "@/components/plugin/list-cell";
|
|
import TuiListCell from "@/components/plugin/list-cell";
|
|
|
const form = require("@/utils/formValidation.js");
|
|
const form = require("@/utils/formValidation.js");
|
|
|
import { getAllItemClass } from "@/api/item-class";
|
|
import { getAllItemClass } from "@/api/item-class";
|
|
|
import { getAllUnit } from "@/api/unit";
|
|
import { getAllUnit } from "@/api/unit";
|
|
|
|
|
+ import { getAllCpClass,addCpFn,updateCpFn } from "@/api/cp"
|
|
|
import { addProduct,updateProduct,getProductDetail,py } from "@/api/product";
|
|
import { addProduct,updateProduct,getProductDetail,py } from "@/api/product";
|
|
|
import { getPtItemDetail } from "@/api/pt-item";
|
|
import { getPtItemDetail } from "@/api/pt-item";
|
|
|
import { mapGetters } from "vuex"
|
|
import { mapGetters } from "vuex"
|
|
|
//图片上传插件来源:https://ext.dcloud.net.cn/plugin?id=2922 已改造,不能再升级 shish 20211228
|
|
//图片上传插件来源:https://ext.dcloud.net.cn/plugin?id=2922 已改造,不能再升级 shish 20211228
|
|
|
import htzImageUpload from '@/components/htz-image-upload/htz-image-upload.vue'
|
|
import htzImageUpload from '@/components/htz-image-upload/htz-image-upload.vue'
|
|
|
export default {
|
|
export default {
|
|
|
- name: "item-detail",
|
|
|
|
|
|
|
+ name: "addCp",
|
|
|
components: {
|
|
components: {
|
|
|
TuiListCell,
|
|
TuiListCell,
|
|
|
htzImageUpload
|
|
htzImageUpload
|
|
@@ -189,33 +92,16 @@
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
status: 1,
|
|
status: 1,
|
|
|
|
|
+ pcClassList:[],
|
|
|
currentImgData: [],
|
|
currentImgData: [],
|
|
|
|
|
+ cpClassList:[],
|
|
|
form: {
|
|
form: {
|
|
|
id:0,
|
|
id:0,
|
|
|
name:"",
|
|
name:"",
|
|
|
py:"",
|
|
py:"",
|
|
|
- stock:0,
|
|
|
|
|
- ratio:'',
|
|
|
|
|
- bigUnitId:1,
|
|
|
|
|
- smallUnitId:2,
|
|
|
|
|
- classId:'',
|
|
|
|
|
- price:'',
|
|
|
|
|
- skPrice:'',
|
|
|
|
|
- hjPrice:'',
|
|
|
|
|
- skMore:6,
|
|
|
|
|
- addPrice:3,
|
|
|
|
|
- hjAddPrice:2,
|
|
|
|
|
- hjDiscountPrice:0,
|
|
|
|
|
- discountPrice:0,
|
|
|
|
|
- skDiscountPrice:0,
|
|
|
|
|
- cost:0,
|
|
|
|
|
- weight:1.5,
|
|
|
|
|
|
|
+ classId:0,
|
|
|
|
|
+ className:'',
|
|
|
cover:[],
|
|
cover:[],
|
|
|
- stockWarning:5,
|
|
|
|
|
- status:2,
|
|
|
|
|
- itemId:0,
|
|
|
|
|
- smallRatio:1,
|
|
|
|
|
- ratioType:0,
|
|
|
|
|
inTurn:100
|
|
inTurn:100
|
|
|
},
|
|
},
|
|
|
itemClassSelectedData:{},
|
|
itemClassSelectedData:{},
|
|
@@ -228,9 +114,9 @@
|
|
|
headers:{token:''}
|
|
headers:{token:''}
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
- computed:{
|
|
|
|
|
- ...mapGetters(["getLoginInfo","getDictionariesInfo"])
|
|
|
|
|
- },
|
|
|
|
|
|
|
+ computed:{
|
|
|
|
|
+ ...mapGetters(["getLoginInfo","getDictionariesInfo"])
|
|
|
|
|
+ },
|
|
|
onLoad(option) {
|
|
onLoad(option) {
|
|
|
if(option.id){
|
|
if(option.id){
|
|
|
this.form.id = this.option.id
|
|
this.form.id = this.option.id
|
|
@@ -241,86 +127,25 @@
|
|
|
watch:{
|
|
watch:{
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
- tjLinkage(){
|
|
|
|
|
- if(this.form.discountPrice && Number(this.form.discountPrice)>0){
|
|
|
|
|
- let skMore = this.form.skMore ? Number(this.form.skMore) : 0
|
|
|
|
|
- let hjAddPrice = this.form.hjAddPrice ? Number(this.form.hjAddPrice) : 0
|
|
|
|
|
- let addPrice = this.form.addPrice ? Number(this.form.addPrice) : 0
|
|
|
|
|
-
|
|
|
|
|
- let skAddNum = Number(skMore) - Number(addPrice)
|
|
|
|
|
- skAddNum = skAddNum.toFixed(2)
|
|
|
|
|
- let skAmount = Number(skAddNum) + Number(this.form.discountPrice)
|
|
|
|
|
- if(skAmount>0){
|
|
|
|
|
- skAmount = skAmount.toFixed(2)
|
|
|
|
|
- skAmount = parseFloat(skAmount)
|
|
|
|
|
- this.form.skDiscountPrice = skAmount
|
|
|
|
|
- }else{
|
|
|
|
|
- this.form.skDiscountPrice = 0.01
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- let hjSubNum = Number(addPrice) - Number(hjAddPrice)
|
|
|
|
|
- hjSubNum = hjSubNum.toFixed(2)
|
|
|
|
|
- let hjAmount = Number(this.form.discountPrice) - Number(hjSubNum)
|
|
|
|
|
- if(hjAmount > 0){
|
|
|
|
|
- hjAmount = hjAmount.toFixed(2)
|
|
|
|
|
- hjAmount = parseFloat(hjAmount)
|
|
|
|
|
- this.form.hjDiscountPrice = hjAmount
|
|
|
|
|
- }else{
|
|
|
|
|
- this.form.hjDiscountPrice = 0.01
|
|
|
|
|
- }
|
|
|
|
|
- }else{
|
|
|
|
|
- this.form.skDiscountPrice = 0
|
|
|
|
|
- this.form.hjDiscountPrice = 0
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ changeClass(item){
|
|
|
|
|
+ this.$refs.classRef.open('center')
|
|
|
|
|
+ },
|
|
|
|
|
+ setThisClass(info){
|
|
|
|
|
+ this.$refs.classRef.close()
|
|
|
|
|
+ this.form.classId = info.id ? info.id : 0
|
|
|
|
|
+ this.form.className = info.name ? info.name : ''
|
|
|
|
|
+ console.log(this.form)
|
|
|
|
|
+ this.$forceUpdate()
|
|
|
},
|
|
},
|
|
|
- priceLinkage(){
|
|
|
|
|
- if(this.form.price && Number(this.form.price)>0){
|
|
|
|
|
- let skMore = this.form.skMore ? Number(this.form.skMore) : 0
|
|
|
|
|
- let hjAddPrice = this.form.hjAddPrice ? Number(this.form.hjAddPrice) : 0
|
|
|
|
|
- let addPrice = this.form.addPrice ? Number(this.form.addPrice) : 0
|
|
|
|
|
-
|
|
|
|
|
- let skAddNum = Number(skMore) - Number(addPrice)
|
|
|
|
|
- skAddNum = skAddNum.toFixed(2)
|
|
|
|
|
- let skAmount = Number(skAddNum) + Number(this.form.price)
|
|
|
|
|
- if(skAmount>0){
|
|
|
|
|
- skAmount = skAmount.toFixed(2)
|
|
|
|
|
- skAmount = parseFloat(skAmount)
|
|
|
|
|
- this.form.skPrice = skAmount
|
|
|
|
|
- }else{
|
|
|
|
|
- this.form.skPrice = ''
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- let hjSubNum = Number(addPrice) - Number(hjAddPrice)
|
|
|
|
|
- hjSubNum = hjSubNum.toFixed(2)
|
|
|
|
|
- let hjAmount = Number(this.form.price) - Number(hjSubNum)
|
|
|
|
|
- if(hjAmount > 0){
|
|
|
|
|
- hjAmount = hjAmount.toFixed(2)
|
|
|
|
|
- hjAmount = parseFloat(hjAmount)
|
|
|
|
|
- this.form.hjPrice = hjAmount
|
|
|
|
|
- }else{
|
|
|
|
|
- this.form.hjPrice = ''
|
|
|
|
|
- }
|
|
|
|
|
- }else{
|
|
|
|
|
- this.form.skPrice = ''
|
|
|
|
|
- this.form.hjPrice = ''
|
|
|
|
|
- this.form.discountPrice = 0
|
|
|
|
|
- this.form.skDiscountPrice = 0
|
|
|
|
|
- this.form.hjDiscountPrice = 0
|
|
|
|
|
- }
|
|
|
|
|
- },
|
|
|
|
|
notModify(){
|
|
notModify(){
|
|
|
this.$msg('不可修改')
|
|
this.$msg('不可修改')
|
|
|
},
|
|
},
|
|
|
goStockDetail(item){
|
|
goStockDetail(item){
|
|
|
- this.$util.pageTo({url: "/pagesStorehouse/stockWarn/detailed?id="+item.id+'&name='+item.name})
|
|
|
|
|
- },
|
|
|
|
|
|
|
+ this.$util.pageTo({url: "/pagesStorehouse/stockWarn/detailed?id="+item.id+'&name='+item.name})
|
|
|
|
|
+ },
|
|
|
statusChange(e){
|
|
statusChange(e){
|
|
|
this.form.status = e.detail.value ? 1 : 2;
|
|
this.form.status = e.detail.value ? 1 : 2;
|
|
|
},
|
|
},
|
|
|
- ratioTypeChange(e){
|
|
|
|
|
- this.form.ratioType = e.detail.value
|
|
|
|
|
- },
|
|
|
|
|
- //如果库存被修改则花材状态变化
|
|
|
|
|
changeStock(event){
|
|
changeStock(event){
|
|
|
let num = Number(event.target.value)
|
|
let num = Number(event.target.value)
|
|
|
if(num > 0){
|
|
if(num > 0){
|
|
@@ -329,38 +154,19 @@
|
|
|
this.form.status = 2
|
|
this.form.status = 2
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
- //获取拼音首字母 shish 20210707
|
|
|
|
|
fillName(event){
|
|
fillName(event){
|
|
|
let val = event.target.value
|
|
let val = event.target.value
|
|
|
- py({
|
|
|
|
|
- name:val
|
|
|
|
|
- }).then(res => {
|
|
|
|
|
|
|
+ py({ name:val }).then(res => {
|
|
|
if(res.data.py){
|
|
if(res.data.py){
|
|
|
this.form.py = res.data.py
|
|
this.form.py = res.data.py
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
goBack(){
|
|
goBack(){
|
|
|
- uni.navigateBack({
|
|
|
|
|
- delta: 1
|
|
|
|
|
- });
|
|
|
|
|
- },
|
|
|
|
|
- changeBigUnitFn(e){
|
|
|
|
|
- this.bigUnitSelectedData = this.unitData[e.detail.value];
|
|
|
|
|
- this.form.bigUnitId = this.bigUnitSelectedData.id;
|
|
|
|
|
- },
|
|
|
|
|
- changeSmallUnitFn(e){
|
|
|
|
|
- this.smallUnitSelectedData = this.unitData[e.detail.value];
|
|
|
|
|
- this.form.smallUnitId = this.smallUnitSelectedData.id;
|
|
|
|
|
|
|
+ uni.navigateBack({ delta: 1 })
|
|
|
},
|
|
},
|
|
|
- changeItemClassFn(e) {
|
|
|
|
|
- this.itemClassSelectedData = this.itemClassData[e.detail.value];
|
|
|
|
|
- this.form.classId = this.itemClassSelectedData.id;
|
|
|
|
|
- },
|
|
|
|
|
- //从平台选择花材 shish 20210826
|
|
|
|
|
getPtItemInfo(ptItemId){
|
|
getPtItemInfo(ptItemId){
|
|
|
getPtItemDetail({id:ptItemId}).then(res=>{
|
|
getPtItemDetail({id:ptItemId}).then(res=>{
|
|
|
-
|
|
|
|
|
if (this.$util.isEmpty(res.data)) {
|
|
if (this.$util.isEmpty(res.data)) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
@@ -370,18 +176,8 @@
|
|
|
|
|
|
|
|
this.currentImgData.push(res.data.cover)
|
|
this.currentImgData.push(res.data.cover)
|
|
|
this.form.cover = [res.data.shortCover]
|
|
this.form.cover = [res.data.shortCover]
|
|
|
-
|
|
|
|
|
- this.form.stock = ''
|
|
|
|
|
- this.form.itemId = ptItemId
|
|
|
|
|
this.form.classId = ''
|
|
this.form.classId = ''
|
|
|
- this.form.status = 1
|
|
|
|
|
this.form.id = 0
|
|
this.form.id = 0
|
|
|
- this.form.price = ''
|
|
|
|
|
- this.form.skMore = 6
|
|
|
|
|
- this.form.addPrice = 3
|
|
|
|
|
- this.form.hjAddPrice = 3
|
|
|
|
|
- this.form.discountPrice = 0
|
|
|
|
|
- this.form.cost = 0
|
|
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
getDetail() {
|
|
getDetail() {
|
|
@@ -422,20 +218,18 @@
|
|
|
this.form.cover.splice(index,1)
|
|
this.form.cover.splice(index,1)
|
|
|
},
|
|
},
|
|
|
init() {
|
|
init() {
|
|
|
- //从平台选择花材
|
|
|
|
|
|
|
+ let that = this
|
|
|
if(!this.$util.isEmpty(this.option.ptItemId)){
|
|
if(!this.$util.isEmpty(this.option.ptItemId)){
|
|
|
- uni.setNavigationBarTitle({title: "确认花材信息"})
|
|
|
|
|
|
|
+ uni.setNavigationBarTitle({title: "确认产品信息"})
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
if(this.hasRequest == 1){
|
|
if(this.hasRequest == 1){
|
|
|
- return
|
|
|
|
|
|
|
+ return
|
|
|
}
|
|
}
|
|
|
this._getAllUnit().then(res=>{
|
|
this._getAllUnit().then(res=>{
|
|
|
this._getAllItemClass().then(res => {
|
|
this._getAllItemClass().then(res => {
|
|
|
if(this.form.id == 0){
|
|
if(this.form.id == 0){
|
|
|
this.smallUnitSelectedData = this.unitData.filter(e => 2 == e.id)[0];
|
|
this.smallUnitSelectedData = this.unitData.filter(e => 2 == e.id)[0];
|
|
|
this.bigUnitSelectedData = this.unitData.filter(e => 1 == e.id)[0];
|
|
this.bigUnitSelectedData = this.unitData.filter(e => 1 == e.id)[0];
|
|
|
- //从平台选择花材
|
|
|
|
|
if(!this.$util.isEmpty(this.option.ptItemId)){
|
|
if(!this.$util.isEmpty(this.option.ptItemId)){
|
|
|
this.getPtItemInfo(this.option.ptItemId)
|
|
this.getPtItemInfo(this.option.ptItemId)
|
|
|
}
|
|
}
|
|
@@ -445,6 +239,11 @@
|
|
|
});
|
|
});
|
|
|
})
|
|
})
|
|
|
this.hasRequest = 1
|
|
this.hasRequest = 1
|
|
|
|
|
+
|
|
|
|
|
+ getAllCpClass().then(res => {
|
|
|
|
|
+ that.cpClassList = res.data.list ? res.data.list : []
|
|
|
|
|
+ })
|
|
|
|
|
+
|
|
|
},
|
|
},
|
|
|
async _getAllUnit() {
|
|
async _getAllUnit() {
|
|
|
await getAllUnit().then(res => {
|
|
await getAllUnit().then(res => {
|
|
@@ -462,76 +261,28 @@
|
|
|
this.itemClassData = res.data;
|
|
this.itemClassData = res.data;
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
- // 确认
|
|
|
|
|
confirmFn() {
|
|
confirmFn() {
|
|
|
if (this.$util.isEmpty(this.form.cover)) {
|
|
if (this.$util.isEmpty(this.form.cover)) {
|
|
|
this.$msg("请上传图片")
|
|
this.$msg("请上传图片")
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
|
- let requestHost = addProduct
|
|
|
|
|
|
|
+ let requestHost = addCpFn
|
|
|
if(this.form.id && this.form.id != 0){
|
|
if(this.form.id && this.form.id != 0){
|
|
|
- requestHost = updateProduct;
|
|
|
|
|
|
|
+ requestHost = updateCpFn;
|
|
|
}else{
|
|
}else{
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.stock) == false){
|
|
|
|
|
- uni.showToast({title:"请填写库存,没库存填0",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.discountPrice) == false){
|
|
|
|
|
- uni.showToast({title:"请填写特价,没特价填0",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.cost) == false){
|
|
|
|
|
- uni.showToast({title:"请填写成本",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.price) == false){
|
|
|
|
|
- uni.showToast({title:"请填写批发价",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.skPrice) == false){
|
|
|
|
|
- uni.showToast({title:"请填写零售价",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.hjPrice) == false){
|
|
|
|
|
- uni.showToast({title:"请填写大客价",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.addPrice) == false){
|
|
|
|
|
- uni.showToast({title:"请填写批发价加价",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.skMore) == false){
|
|
|
|
|
- uni.showToast({title:"请填写零售价加价",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
- if(/(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/.test(this.form.hjAddPrice) == false){
|
|
|
|
|
- uni.showToast({title:"请填写大客价加价",icon:"none"})
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
let form = JSON.parse(JSON.stringify(this.form))
|
|
let form = JSON.parse(JSON.stringify(this.form))
|
|
|
uni.showLoading({mask:true})
|
|
uni.showLoading({mask:true})
|
|
|
- requestHost({...form,cover:this.form.cover[0],appVersion:1}).then(res => {
|
|
|
|
|
|
|
+ requestHost({...form,cover:this.form.cover[0]}).then(res => {
|
|
|
uni.hideLoading()
|
|
uni.hideLoading()
|
|
|
if(res.code == 1){
|
|
if(res.code == 1){
|
|
|
- this.$msg("操作成功!");
|
|
|
|
|
-
|
|
|
|
|
- //返回上一页带参数
|
|
|
|
|
- let pages = getCurrentPages();
|
|
|
|
|
- let prevPage = pages[ pages.length - 2 ];
|
|
|
|
|
- let hidden = 0
|
|
|
|
|
- if(this.form.stock > this.form.stockWarning){
|
|
|
|
|
- hidden = 1
|
|
|
|
|
- }
|
|
|
|
|
- prevPage.$vm.modifyStock = {id:this.form.id,stock:this.form.stock,hidden:hidden};
|
|
|
|
|
-
|
|
|
|
|
|
|
+ this.$msg(res.msg)
|
|
|
uni.navigateBack({})
|
|
uni.navigateBack({})
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
- // 表单验证
|
|
|
|
|
formSubmit(e) {
|
|
formSubmit(e) {
|
|
|
- // 表单规则
|
|
|
|
|
let rules = [
|
|
let rules = [
|
|
|
{
|
|
{
|
|
|
name: "name",
|
|
name: "name",
|
|
@@ -542,81 +293,15 @@
|
|
|
name: "py",
|
|
name: "py",
|
|
|
rule: ["required"],
|
|
rule: ["required"],
|
|
|
msg: ["请填写拼音缩写"]
|
|
msg: ["请填写拼音缩写"]
|
|
|
- },{
|
|
|
|
|
- name: "stock",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写库存,没有填0"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "bigUnitId",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请选择大单位"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "smallUnitId",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请选择小单位"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "price",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写批发价"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "skPrice",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写零售价"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "hjPrice",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写大客价"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "skMore",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写零售价加价"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "addPrice",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写批发价加价"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "hjAddPrice",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写大客价加价"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "discountPrice",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["没特价请填0"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "cost",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写成本"]
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "weight",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写重量"]
|
|
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
name: "classId",
|
|
name: "classId",
|
|
|
rule: ["required"],
|
|
rule: ["required"],
|
|
|
msg: ["请选择分类"]
|
|
msg: ["请选择分类"]
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: "stockWarning",
|
|
|
|
|
- rule: ["required"],
|
|
|
|
|
- msg: ["请填写库存预警"]
|
|
|
|
|
}
|
|
}
|
|
|
];
|
|
];
|
|
|
- // 进行表单检查
|
|
|
|
|
let formData = e.detail.value;
|
|
let formData = e.detail.value;
|
|
|
let checkRes = form.validation(formData, rules);
|
|
let checkRes = form.validation(formData, rules);
|
|
|
- // 验证通过!
|
|
|
|
|
if (!checkRes) {
|
|
if (!checkRes) {
|
|
|
this.confirmFn()
|
|
this.confirmFn()
|
|
|
} else {
|
|
} else {
|
|
@@ -631,7 +316,6 @@
|
|
|
min-height: calc(100vh - 100upx);
|
|
min-height: calc(100vh - 100upx);
|
|
|
padding-bottom: 150upx;
|
|
padding-bottom: 150upx;
|
|
|
}
|
|
}
|
|
|
- // 公共模块
|
|
|
|
|
.module-com {
|
|
.module-com {
|
|
|
margin-bottom: 20upx;
|
|
margin-bottom: 20upx;
|
|
|
background-color: #fff;
|
|
background-color: #fff;
|
|
@@ -665,9 +349,12 @@
|
|
|
}
|
|
}
|
|
|
.app-footer {
|
|
.app-footer {
|
|
|
justify-content: space-evenly;
|
|
justify-content: space-evenly;
|
|
|
- z-index: 9999;
|
|
|
|
|
|
|
+ z-index: 95;
|
|
|
.admin-button-com {
|
|
.admin-button-com {
|
|
|
width: 46%;
|
|
width: 46%;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ .class-popup-style{
|
|
|
|
|
+ z-index:9999;
|
|
|
|
|
+ }
|
|
|
</style>
|
|
</style>
|