瀏覽代碼

Merge branch 'master' of http://git.huaml.com/zhh/front-end

wangning 5 年之前
父節點
當前提交
e30e15d64e

+ 88 - 49
ghsApp/src/admin/billing/affirm.vue

@@ -6,17 +6,8 @@
         <view class="module-com">
         <view class="module-com">
           <view class="commodity-view">
           <view class="commodity-view">
             <view class="commodity-list">
             <view class="commodity-list">
-              <view
-                class="commodity-item"
-                v-for="(item, index) in selectList"
-                :key="index"
-              >
-                <image
-                  class="item-icon"
-                  :src="item.cover"
-                  alt="商品图"
-                />
-
+              <view class="commodity-item" v-for="(item, index) in selectList" :key="index">
+                <image class="item-icon" :src="item.cover" alt="商品图" />
                 <view class="item-info">
                 <view class="item-info">
                   <view class="info-line">
                   <view class="info-line">
                     <text class="item-name">{{ item.itemName }}</text>
                     <text class="item-name">{{ item.itemName }}</text>
@@ -44,10 +35,7 @@
               </view>
               </view>
             </view>
             </view>
             <view class="summary-bar">
             <view class="summary-bar">
-              <view
-                class="operate-view"
-                @click="gobackEvent"
-              >
+              <view class="operate-view" @click="gobackEvent">
                 <text class="iconfont icongouwuche"></text>
                 <text class="iconfont icongouwuche"></text>
                 重选花材
                 重选花材
               </view>
               </view>
@@ -61,6 +49,11 @@
         </view>
         </view>
         <!-- 登录信息 -->
         <!-- 登录信息 -->
         <view class="module-com input-line-wrap">
         <view class="module-com input-line-wrap">
+									<view class="tab-box flex-space">
+										<view class="flex-center tab" :class="isBilling?'active':''" @tap="isBilling=true">开单</view>
+										<view class="flex-center tab" :class="isBilling?'':'active'" @tap="isBilling=false">损耗登记</view>
+									</view>
+									<view class="" v-if="isBilling">
           <tui-list-cell class="line-cell" :hover="false" :arrow="true" @click="showCustomer = true">
           <tui-list-cell class="line-cell" :hover="false" :arrow="true" @click="showCustomer = true">
             <view class="tui-title">客户</view>
             <view class="tui-title">客户</view>
             <view class="tui-input" v-if="form.customId" >{{ form.customName }}</view>
             <view class="tui-input" v-if="form.customId" >{{ form.customName }}</view>
@@ -97,25 +90,25 @@
 
 
 									<tui-list-cell class="line-cell" :hover="false" :arrow="false" >
 									<tui-list-cell class="line-cell" :hover="false" :arrow="false" >
 										<view class="tui-title">实收金额</view>
 										<view class="tui-title">实收金额</view>
-										<input style="border: 1px solid #eee;color: #3385FF;width: calc(100%);" type="number" @focus="realMoney=''" v-model="realMoney" placeholder-class="tui-placeholder"/>
+										<input style="border: 1px solid #eee;color: #3385FF;width: calc(100%);" type="number" @focus="modifyPrice=''" v-model="modifyPrice" placeholder-class="tui-placeholder"/>
 									</tui-list-cell>
 									</tui-list-cell>
 
 
 									<tui-list-cell class="line-cell" :hover="false" :arrow="false" >
 									<tui-list-cell class="line-cell" :hover="false" :arrow="false" >
 										<view class="tui-title">优惠</view>
 										<view class="tui-title">优惠</view>
-										<text style="color: #3385FF">{{	(allPrice.toFixed(2) - realMoney + Number(this.form.sendCost)).toFixed(2) }}</text>
+										<text style="color: #3385FF">{{	(allPrice.toFixed(2) - modifyPrice + Number(this.form.sendCost)).toFixed(2) }}</text>
 									</tui-list-cell>
 									</tui-list-cell>
-
+									</view>
         </view>
         </view>
       </form>
       </form>
     </view>
     </view>
     <view class="under-bar">
     <view class="under-bar">
       <view class="price-view">
       <view class="price-view">
-        <text class="price-title">{{form.debt == 1 ? "欠款" : "已收款"}}</text>
+        <text class="price-title" v-if="isBilling">{{form.debt == 1 ? "欠款" : "已收款"}}</text>
+        <text class="price-title" v-else>金额</text>
         <text class="price-number">
         <text class="price-number">
           ¥
           ¥
-          <!--<text class="large" v-if="form.sendType == 1">{{	(allPrice + Number(form.sendCost)).toFixed(2) }}</text>-->
-          <!--<text class="large" v-else >{{ allPrice.toFixed(2) }}</text>-->
-          <text class="large" >{{ realMoney?realMoney:0 }}</text>
+									<text class="large" v-if="isBilling">{{ modifyPrice?modifyPrice:0 }}</text>
+									<text class="large" v-else>{{ allPrice.toFixed(2) }}</text>
         </text>
         </text>
       </view>
       </view>
       <button class="admin-button-com blue middle" @click="affirmFormSubmit">
       <button class="admin-button-com blue middle" @click="affirmFormSubmit">
@@ -139,7 +132,7 @@ import appAddressGroup from "@/components/app-address-group";
 import appSendTime from "@/components/app-send-time";
 import appSendTime from "@/components/app-send-time";
 import appFormSend from "@/components/app-form-send";
 import appFormSend from "@/components/app-form-send";
 const formUtil = require("@/utils/formValidation.js");
 const formUtil = require("@/utils/formValidation.js");
-import { createOrder, freight } from "@/api/order/index";
+import { createOrder, freight,wastage } from "@/api/order/index";
 import { mapActions, mapGetters } from "vuex";
 import { mapActions, mapGetters } from "vuex";
 export default {
 export default {
   name: "BillingAffirm", // 开单确认
   name: "BillingAffirm", // 开单确认
@@ -158,6 +151,7 @@ export default {
   data () {
   data () {
     return {
     return {
       autoLoad: false,
       autoLoad: false,
+      isBilling: true,
       form: {
       form: {
         debt: 1, //付款方式 1欠款订单 0正常订单
         debt: 1, //付款方式 1欠款订单 0正常订单
         shopId: "",
         shopId: "",
@@ -177,7 +171,7 @@ export default {
         product: "",
         product: "",
       },
       },
       money: "",
       money: "",
-						realMoney: 0,
+      modifyPrice: 0,
       showCustomer: false
       showCustomer: false
     };
     };
   },
   },
@@ -193,7 +187,7 @@ export default {
         title: this.getMerchantInfo.name,
         title: this.getMerchantInfo.name,
       });
       });
     }
     }
-    this.realMoney = this.allPrice.toFixed(2);
+    this.modifyPrice = this.allPrice.toFixed(2);
   },
   },
 	onShow(){
 	onShow(){
 		if(!this.$util.isEmpty(uni.getStorageSync("newClient"))){
 		if(!this.$util.isEmpty(uni.getStorageSync("newClient"))){
@@ -214,7 +208,7 @@ export default {
     countAllPrices (e) {
     countAllPrices (e) {
       this.allPrices = this.allPrices + Number(this.form.sendCost);
       this.allPrices = this.allPrices + Number(this.form.sendCost);
       let allPrices = this.allPrice.toFixed(2)
       let allPrices = this.allPrice.toFixed(2)
-      this.realMoney = (Number(allPrices) + Number(this.form.sendCost)).toFixed(2);
+      this.modifyPrice = (Number(allPrices) + Number(this.form.sendCost)).toFixed(2);
 
 
     },
     },
     courier (type) {
     courier (type) {
@@ -270,7 +264,7 @@ export default {
         options.sendCost = "";
         options.sendCost = "";
       }
       }
 
 
-      createOrder({...options,realPrice: this.realMoney,}).then((res) => {
+      createOrder({...options,modifyPrice: this.modifyPrice,}).then((res) => {
         this.resetSelectInfoByType(this.pageType);
         this.resetSelectInfoByType(this.pageType);
         const {
         const {
           data: { id, orderSn },
           data: { id, orderSn },
@@ -285,29 +279,58 @@ export default {
       });
       });
     },
     },
     affirmFormSubmit () {
     affirmFormSubmit () {
-      let rules = [
-        {
-          name: "customId",
-          rule: ["required"],
-          msg: ["请选择客户"],
-        },
-      ];
-      let checkRes = formUtil.validation(this.form, rules);
-      if (checkRes) {
-        this.$msg(checkRes);
-        return false;
-      }
+					let self = this;
+    	if(this.isBilling){
+						let rules = [
+							{
+								name: "customId",
+								rule: ["required"],
+								msg: ["请选择客户"],
+							},
+						];
+						let checkRes = formUtil.validation(this.form, rules);
+						if (checkRes) {
+							this.$msg(checkRes);
+							return false;
+						}
+						uni.showModal({
+							title: "提示",
+							content: "确认开单?",
+							success: function (res) {
+								if (res.confirm) {
+									self.formSubmit();
+								}
+							},
+						});
+					}else{
+						let product = this.selectList.map((ele) => {
+							return {
+								productId: ele.id,
+								bigNum: ele.bigCount,
+								smallNum: ele.smallCount,
+								classId: ele.classId,
+								itemId: ele.itemId,
+							};
+						});
+						console.log(product)
+						// formData.product = JSON.stringify(product);
+						uni.showModal({
+							title: "提示",
+							content: "损耗登记?",
+							success: function (res) {
+								if (res.confirm) {
+									wastage({product:JSON.stringify(product)}).then((res) => {
+										self.resetSelectInfoByType(self.pageType);
+										const {data: { id, orderSn },} = res;
+										let url = `/admin/billing/result?orderId=${id}&orderSn=${orderSn}`;
+										uni.redirectTo({url: url,success: (result) => { },fail: () => { },complete: () => { },
+										});
+									});
+								}
+							},
+						});
+					}
 
 
-      let self = this;
-      uni.showModal({
-        title: "提示",
-        content: "确认开单?",
-        success: function (res) {
-          if (res.confirm) {
-            self.formSubmit();
-          }
-        },
-      });
     },
     },
     // 表单验证
     // 表单验证
     async formSubmit (e) {
     async formSubmit (e) {
@@ -452,6 +475,22 @@ export default {
 
 
       border-radius: 10px;
       border-radius: 10px;
       overflow: hidden;
       overflow: hidden;
+					.tab-box{
+						padding: 10rpx 30rpx 30rpx;
+						.tab{
+							width: 45%;
+							height: 80rpx;
+							color: #a2a2a2;
+							border: 1px solid #dcdcdc;
+							border-radius: 10rpx;
+							font-size: 28rpx;
+							font-weight: 700;
+							&.active{
+								color: #ff4d4d;
+								border: 1px solid #ff4d4d;
+							}
+						}
+					}
       .member-wrap {
       .member-wrap {
         .member-det {
         .member-det {
           font-size: 24px;
           font-size: 24px;

+ 7 - 0
ghsApp/src/api/order/index.js

@@ -13,6 +13,13 @@ export const getDetail = data => {
 	return https.get("/order/detail", data);
 	return https.get("/order/detail", data);
 };
 };
 
 
+/** *
+	* 损耗生成订单
+	*/
+export const wastage = data => {
+	return https.post("/order/wastage", data);
+};
+
 /** *
 /** *
  * 订单评价 m
  * 订单评价 m
  */
  */

+ 1 - 1
ghsApp/src/components/app-customer-sel.vue

@@ -32,7 +32,7 @@
 						<view class="item-avatar">
 						<view class="item-avatar">
 							<image :src="item.smallAvatar" alt="商品图" />
 							<image :src="item.smallAvatar" alt="商品图" />
 						</view>
 						</view>
-						<view class="item-name"> {{ item.name || "" }} <text v-if="newClientId==item.id">新客户</text></view>
+						<view class="item-name"> {{ item.name || "" }} <text v-if="newClientId==item.id">新</text></view>
 						<view class="item-level">{{ getCustomerLevelName(item) }}</view>
 						<view class="item-level">{{ getCustomerLevelName(item) }}</view>
 						<!-- <view class="item-tag">NEW</view> -->
 						<!-- <view class="item-tag">NEW</view> -->
 					</view>
 					</view>

+ 2 - 2
ghsApp/src/components/app-supplier-sel.vue

@@ -37,13 +37,13 @@
 						<view class="item-avatar">
 						<view class="item-avatar">
 							<image :src="item.smallAvatar" alt="商品图" />
 							<image :src="item.smallAvatar" alt="商品图" />
 						</view>
 						</view>
-						<view class="item-name"> {{ item.name || "" }} <text v-if="newGhsId==item.id">新供货商</text></view>
+						<view class="item-name"> {{ item.name || "" }} <text v-if="newGhsId==item.id">新</text></view>
 						<view class="item-level">{{ getCustomerLevelName(item) }}</view>
 						<view class="item-level">{{ getCustomerLevelName(item) }}</view>
 						<!-- <view class="item-tag">NEW</view> -->
 						<!-- <view class="item-tag">NEW</view> -->
 					</view>
 					</view>
 				</scroll-view>
 				</scroll-view>
 				<view class="add-customer-bar" @click="gotoAddCustomer">
 				<view class="add-customer-bar" @click="gotoAddCustomer">
-					没有找到供商?新增
+					没有找到供商?新增
 				</view>
 				</view>
 			</div>
 			</div>
 		</bottom-popup>
 		</bottom-popup>

+ 10 - 2
ghsApp/src/pagesOrder/detail.vue

@@ -111,11 +111,19 @@
 				<div class="module-com input-line-wrap">
 				<div class="module-com input-line-wrap">
 					<tui-list-cell class="line-cell" :hover="false">
 					<tui-list-cell class="line-cell" :hover="false">
 						<div class="tui-title">运费</div>
 						<div class="tui-title">运费</div>
-						<div class="detail-price_box" style="font-size: 35rpx">¥{{ detailInfo.sendCost }}</div>
+						<div class="detail-price_box" style="font-size: 28rpx">¥{{ detailInfo.sendCost }}</div>
 					</tui-list-cell>
 					</tui-list-cell>
 					<tui-list-cell class="line-cell" :hover="false">
 					<tui-list-cell class="line-cell" :hover="false">
 						<div class="tui-title">总金额</div>
 						<div class="tui-title">总金额</div>
-						<div class="detail-price_box red" style="font-size: 36rpx;font-weight:bold;">¥{{ detailInfo.actPrice}}</div>
+						<div class="detail-price_box" style="font-size: 28rpx;">¥{{ detailInfo.prePrice}}</div>
+					</tui-list-cell>
+					<tui-list-cell if="detailInfo.discountAmount > 0" class="line-cell" :hover="false">
+						<div class="tui-title">优惠</div>
+						<div class="detail-price_box" style="font-size: 28rpx">¥{{ detailInfo.discountAmount }}</div>
+					</tui-list-cell>
+					<tui-list-cell class="line-cell" :hover="false">
+						<div class="tui-title">实付金额</div>
+						<div class="detail-price_box red" style="font-size: 32rpx;font-weight:bold;">¥{{ detailInfo.realPrice}}</div>
 					</tui-list-cell>
 					</tui-list-cell>
 				</div>
 				</div>
 			</view>
 			</view>