lilei vor 2 Jahren
Ursprung
Commit
4748d100b6

+ 15 - 0
api/shelfReplenish.js

@@ -45,6 +45,21 @@ export const shelfReplenishConfirm = (params) => {
     method: 'post'
   })
 }
+//  补货单 取消补货单
+export const shelfReplenishCancel = (params) => {
+  return axios.request({
+    url: 'shelfReplenish/cancel',
+    data: params,
+    method: 'post'
+  })
+}
+// 删除补货单
+export const shelfReplenishDelete = (params) => {
+  return axios.request({
+    url: `shelfReplenish/delete/${params.replenishBillSn}`,
+    method: 'get'
+  })
+}
 //  补货单 确认签收
 export const shelfReplenishPutStock = (params) => {
   return axios.request({

+ 0 - 1
components/kk-printer/index.vue

@@ -79,7 +79,6 @@
 					<p>1、连接打印机之前,先打开手机蓝牙开关</p>
 					<p>2、如果已有其它手机连接,请手动断开或重启打印机</p>
 					<p>3、如果连接打印机没有任何反应或需要切换连接其它打印机,请在“我的”页面点击“重置打印机”后再试</p>
-					<p>4、目前仅支持“得力(DL-886BW(NEW))”、“新北洋(BTP-P39)”蓝牙打印机</p>
 					</div>
 				`,
 				//是否正在打印

+ 7 - 0
main.js

@@ -52,6 +52,13 @@ Vue.prototype.toashMsg = function (title) {
 		duration: 4000
 	})
 }
+Vue.prototype.showLoading = function (title) {
+	title = title == undefined ? "正在加载..." : title;
+	uni.showLoading({
+		title:title,
+		mask: true
+	})
+}
 
 const app = new Vue({
 	store,

+ 3 - 7
manifest.json

@@ -2,8 +2,8 @@
     "name" : "iSCM智慧供应链",
     "appid" : "__UNI__5B57B68",
     "description" : "iSCM智慧供应链系统",
-    "versionName" : "1.1.9",
-    "versionCode" : 119,
+    "versionName" : "1.2.0",
+    "versionCode" : 120,
     "transformPx" : false,
     /* 5+App特有相关 */
     "app-plus" : {
@@ -54,8 +54,7 @@
         },
         /* 模块配置 */
         "modules" : {
-            "Bluetooth" : {},
-            "Push" : {}
+            "Bluetooth" : {}
         },
         /* 应用发布信息 */
         "distribute" : {
@@ -114,9 +113,6 @@
                     "system" : {
                         "__platform__" : [ "ios", "android" ]
                     }
-                },
-                "push" : {
-                    "unipush" : null
                 }
             },
             "icons" : {

+ 35 - 8
pages.json

@@ -161,7 +161,21 @@
 			"style" :
 			{
 				"navigationBarTitleText": "补货出库",
-				"enablePullDownRefresh": false
+				"navigationStyle":"custom",
+				"app-plus":{
+					"titleNView": {
+						"titleAlign": "left",
+						"buttons": [ //原生标题栏按钮配置,
+							{
+								"text": "\ue603 生成销售单" ,//原生标题栏增加分享按钮,点击事件可通过页面的 onNavigationBarButtonTap 函数进行监听u
+								"fontSrc": "/static/iconfont/iconfont.ttf",
+								"fontSize": "14",
+								"color": "#ffffff",
+								"width":"120px"
+							}
+						]
+					}
+				}
 			}
 		},
 		{
@@ -184,7 +198,7 @@
 			"path" : "pages/replenishmentManage/sendOutGoods",
 			"style" :
 			{
-				"navigationBarTitleText": "发货出库",
+				"navigationBarTitleText": "扫码出库",
 				"enablePullDownRefresh": false
 			}
 		},
@@ -193,16 +207,29 @@
 			"style" :
 			{
 				"navigationBarTitleText": "补货签收",
-				"enablePullDownRefresh": false
+				"navigationStyle":"custom",
+				"app-plus":{
+					"titleNView": {
+						"titleAlign": "left",
+						"buttons": [ //原生标题栏按钮配置,
+							{
+								"text": "\ue603 生成销售单" ,//原生标题栏增加分享按钮,点击事件可通过页面的 onNavigationBarButtonTap 函数进行监听u
+								"fontSrc": "/static/iconfont/iconfont.ttf",
+								"fontSize": "14",
+								"color": "#ffffff",
+								"width":"120px"
+							}
+						]
+					}
+				}
 			}
 		},
 		{
 			"path" : "pages/replenishmentManage/detail",
-			"style" :
-			{
-				"navigationBarTitleText": "补货单详情",
-				"enablePullDownRefresh": false
-			}
+			"style": {
+						"navigationStyle": "custom" ,// 隐藏系统导航栏
+						"navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一
+					}
 		}
         ,{
             "path" : "pages/common/printTag/printTag",

+ 1 - 0
pages/batchShelves/scanProduct.vue

@@ -51,6 +51,7 @@
 		<!-- 确认弹框 -->
 		<u-popup v-model="confirmModal" closeable mode="bottom" border-radius="14" width="80%" @close="modalConfirm">
 			<view style="display: flex;flex-direction:column;justify-content: center;padding: 30rpx 30rpx 120rpx;">
+				<view style="margin-top: 40rpx;text-align: center;">扫描结果:{{qrCode}}</view>
 				<view style="margin-top: 40rpx;text-align: center;">没有找到该产品,请重新扫描</view>
 				<view style="color: #999;padding: 30upx 30upx 50upx;text-align: center;">试一试</view>
 				<view style="text-align: center;display: flex;justify-content: space-between;">

+ 4 - 1
pages/common/commonModal.vue

@@ -3,7 +3,10 @@
 		<view class="modal-con">
 			<u-icon v-if="isClose" @click="isShow=false" class="close-icon" name="close-circle" size="40" color="#999"></u-icon>
 			<view class="modal-title">{{title}}</view>
-			<view class="modal-main">{{content}}</view>
+			<view class="modal-main">
+			{{content}}
+			<slot></slot>
+			</view>
 			<view class="modal-footer">
 				<view class="button-cancel" v-if="isCancel" @click="handleCancel">{{cancelText}}</view>
 				<view class="button-confirm" @click="handleConfirm">{{confirmText}}</view>

+ 1 - 1
pages/common/partList.vue

@@ -131,7 +131,7 @@
 				newValue.map(item => {
 					if(_this.pageType=='replenishmentSign'){  // 补货签收
 						this.totalNums = this.totalNums + item.confirmQty
-					}else if(_this.pageType=='replenishmentOut'){  // 补货出库
+					}else if(_this.pageType=='replenishmentOut'||_this.pageType=='sendOutGoods'){  // 补货出库
 						this.totalNums = this.totalNums + item.confirmQty
 					}else if(_this.pageType=='manualPrint'){  // 补货-手动打印
 						this.totalNums = this.totalNums + item.confirmQty

+ 1 - 1
pages/replenishmentManage/chooseTypeModal.vue

@@ -7,7 +7,7 @@
 					<u-radio v-for="(item, index) in dispatchTypeList" :key="index" :name="item.code">{{item.dispName}}</u-radio>
 				</u-radio-group> -->
 				<view style="padding: 20upx 0 16upx;">备注</view>
-				<u-input v-model="form.remarks" placeholder="请输入出库备注(最多500字符)" type="textarea" :maxlength="500" :border="true" :auto-height="false" :custom-style="{height: '100upx'}" />
+				<u-input v-model="form.remarks" placeholder="请输入出库备注(最多100字符)" type="textarea" :maxlength="100" :border="true" :auto-height="false" :custom-style="{height: '100upx'}" />
 			</view>
 			<view class="modal-footer">
 				<view class="button-cancel" @click="isShow=false">取消</view>

+ 10 - 4
pages/replenishmentManage/detail.vue

@@ -1,6 +1,12 @@
 <template>
-	<view class="replenishment-detail-wrap" :style="`backgroundImage:linear-gradient(180deg, ${$config('primaryColor')}, #F5F6F7 12%)`">
-		<view class="replenishment-detail-body">
+	<view class="replenishment-detail-wrap">
+		<u-navbar back-text="补货单详情" :border-bottom="false" :background="{backgroundColor: $config('primaryColor')}" back-icon-color="#fff" :back-text-style="{ color: '#fff' }">
+			<view slot='right' style="padding: 0 30upx;color: #ffffff;" v-if="pageType=='success'">
+				<u-icon name="chuangjiandingdan" custom-prefix="iscm-icon"></u-icon>
+				<text style="margin-left: 6rpx;">生成销售单</text>
+			</view>
+		</u-navbar>
+		<view class="replenishment-detail-body" :style="`backgroundImage:linear-gradient(180deg, ${$config('primaryColor')}, #F5F6F7 12%)`">
 			<view class="head-info" v-if="basicInfoData">
 				<view class="states">
 					<view>
@@ -9,7 +15,7 @@
 					</view>
 				</view>
 				<view>
-					<view class="label"><u-icon name="icon_order" custom-prefix="iscm-icon" size="32"></u-icon><text>补货单号</text></view>
+					<view class="label"><u-icon name="dingdanhao" custom-prefix="iscm-icon" size="32"></u-icon><text>补货单号</text></view>
 					<view class="info-txt">{{basicInfoData.replenishBillNo || '--'}}</view>
 				</view>
 				<view>
@@ -21,7 +27,7 @@
 					<view class="info-txt">{{basicInfoData.dispatchTypeDictValue || '--'}}</view>
 				</view> -->
 				<view v-if="pageType=='success'">
-					<view class="label"><u-icon name="icon_remark" custom-prefix="iscm-icon" size="32"></u-icon><text>出库备注</text></view>
+					<view class="label"><u-icon name="xinxi" custom-prefix="iscm-icon" size="32"></u-icon><text>出库备注</text></view>
 					<view class="info-txt">{{basicInfoData.remarks || '--'}}</view>
 				</view>
 			</view>

+ 40 - 15
pages/replenishmentManage/outWarehousing.vue

@@ -23,20 +23,22 @@
 			</view>
 		</view>
 		<view class="replenishment-outWarehousing-footer">
-			<u-button class="button" @click="printModal=true" :custom-style="customDefalutStyle" hover-class="none" shape="circle">打印标签</u-button>
-			<u-button class="button" @click="goSendOutGoods" :loading="loading" type="success" :custom-style="customStyle" hover-class="none" shape="circle">发货出库</u-button>
+			<u-button class="button" @click="goSendOutGoods" :custom-style="customDefalutStyle" hover-class="none" shape="circle">扫码出库</u-button>
+			<u-button class="button" @click="confirmModal=true" :loading="loading" type="success" :custom-style="customStyle" hover-class="none" shape="circle">一键出库</u-button>
 		</view>
-		<!-- 打印贴签 -->
-		<print-sticker-modal :openModal="printModal" @confirm="modalPrint" @close="printModal=false" />
+		<!-- 一键出库弹框 -->
+		<common-modal :openModal="confirmModal" title="确认信息无误并进行出库吗?" confirmText="确认" @confirm="modalConfirm" @close="confirmModal=false">
+			<u-input type='textarea' v-model="remarks" :maxlength="100" placeholder="请输入出库备注(最多100字符)" border :height="100"></u-input>
+		</common-modal>
 	</view>
 </template>
 
 <script>
-	import printStickerModal from './printStickerModal.vue'
-	import { shelfReplenishDetail, shelfReplenishDetailList } from '@/api/shelfReplenish'
+	import commonModal from '@/pages/common/commonModal.vue'
+	import { shelfReplenishDetail, shelfReplenishDetailList, shelfReplenishOutStock } from '@/api/shelfReplenish'
 	import partList from '@/pages/common/partList.vue'
 	export default {
-		components: { partList, printStickerModal },
+		components: { partList, commonModal },
 		data() {
 			return {
 				loading: false,
@@ -54,7 +56,8 @@
 					color: this.$config('primaryColor'),
 					background: '#fff'
 				},
-				printModal: false
+				confirmModal: false,
+				remarks: ''
 			}
 		},
 		onReady() {
@@ -93,14 +96,36 @@
 					}
 				})
 			},
-			// 打印贴签 confirm
-			modalPrint(type){
-				this.printModal = false
-				if(type == 'manual'){  // 手动打印
-					uni.navigateTo({ url: "/pages/replenishmentManage/manualPrint?sn="+this.replenishBillSn })
-				}else if(type == 'scan'){  // 扫码打印
-					uni.navigateTo({ url: "/pages/replenishmentManage/scanCodePrint?sn="+this.replenishBillSn })
+			// 一键出库
+			modalConfirm(){
+				const arr = []
+				const _this = this
+				_this.partList.map((item, index) => {
+				  arr.push({
+				    productSn: item.productSn,
+				    confirmQty: item.confirmQty,
+				    replenishBillDetailSn: item.replenishBillDetailSn,
+					id: item.id
+				  })
+				})
+				const params = {
+				  replenishBillSn: _this.replenishBillSn,
+				  detailList: arr,
+				  remarks: _this.remarks,
+				  shelfSn: _this.basicInfoData && _this.basicInfoData.shelfSn
 				}
+				_this.showLoading('正在出库...')
+				shelfReplenishOutStock(params).then(res => {
+					console.log(res)
+				  if (res.status == 200) {
+					_this.remarks = ''
+					uni.$emit('refreshBL')
+					uni.$emit("refreshBhList",'WAIT_CHECK')
+					uni.navigateBack()
+				  }
+				   _this.toashMsg(res.message)
+				   uni.hideLoading()
+				})
 			},
 			// 发货出库
 			goSendOutGoods(){

+ 29 - 4
pages/replenishmentManage/replenishmentList.vue

@@ -28,8 +28,13 @@
 						</view>
 						<view class="ptools flex align_center justify_between">
 							<view><text>{{item.createDate}}</text></view>
-							<view class="print" v-if="item.billState!='CANCEL'&&item.billState!='WAIT_CONFIRM'" @click.stop="print(item)">
-								<u-image :src="`/static/${$config('themePath')}/icon_printer@3x.png`" width="48" height="48"></u-image>
+							<view class="flex align_center justify_between">
+								<!-- <view v-if="item.billState=='WAIT_CONFIRM'||item.billState=='WAIT_OUT_STOCK'">
+									<u-button shape="circle" size="mini" @click.stop="handleCancelOrder(item)" type="primary" plain>取消补货单</u-button>
+								</view> -->
+								<view class="print" v-if="item.billState!='CANCEL'&&item.billState!='WAIT_CONFIRM'" @click.stop="print(item)">
+									<u-image :src="`/static/${$config('themePath')}/icon_printer@3x.png`" width="48" height="48"></u-image>
+								</view>
 							</view>
 						</view>
 					 </view>
@@ -47,7 +52,8 @@
 
 <script>
 	import printStickerModal from './printStickerModal.vue'
-	import { shelfReplenishList, shelfReplenishStateCount } from '@/api/shelfReplenish'
+	import { clzConfirm } from '@/libs/tools';
+	import { shelfReplenishList, shelfReplenishStateCount, shelfReplenishCancel, shelfReplenishDelete } from '@/api/shelfReplenish'
 	export default {
 		components: {printStickerModal},
 		data() {
@@ -206,6 +212,25 @@
 					uni.navigateTo({ url: "/pages/replenishmentManage/detail?sn="+item.replenishBillSn+"&type=cancel" })
 				}
 			},
+			// 取消补货单
+			handleCancelOrder (row) {
+				const _this = this;
+				clzConfirm({
+					title: '提示',
+					content: '确认取消补货单吗?',
+					success: function(res) {
+						if (res.confirm || res.index == 0) {
+							_this.showLoading('正在取消...')
+							shelfReplenishCancel({ replenishBillSn: row.replenishBillSn }).then(res => {
+							  if (res.status == 200) {
+							    _this.toashMsg(res.message)
+							  }
+							  uni.hideLoading()
+							})
+						}
+					}
+				});
+			},
 			// 查询每个状态的数据条数
 			queryByTypeSum (flag) {
 				shelfReplenishStateCount({}).then(res => {
@@ -303,7 +328,7 @@
 			.ptools{
 				color: #707070;
 				.print{
-					padding: 0 10rpx;
+					padding: 0 10rpx 0 30rpx;
 				}
 			}
 		}

+ 5 - 1
pages/replenishmentManage/signWarehousing.vue

@@ -13,7 +13,11 @@
 					<view class="info-txt">{{basicInfoData.dispatchTypeDictValue || '--'}}</view>
 				</view> -->
 				<view>
-					<view class="label"><u-icon name="icon_remark" custom-prefix="iscm-icon" size="32"></u-icon><text>出库备注</text></view>
+					<view class="label"><u-icon name="ison_shelf" custom-prefix="iscm-icon" size="32"></u-icon><text>货架名称</text></view>
+					<view class="info-txt">{{basicInfoData.shelfInfo&&basicInfoData.shelfInfo.shelfName || '--'}}</view>
+				</view>
+				<view>
+					<view class="label"><u-icon name="xinxi" custom-prefix="iscm-icon" size="32"></u-icon><text>出库备注</text></view>
 					<view class="info-txt">{{basicInfoData.remarks || '--'}}</view>
 				</view>
 			</view>

Datei-Diff unterdrückt, da er zu groß ist
+ 0 - 0
static/iconfont/iconfont.css


BIN
static/iconfont/iconfont.ttf


Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.