Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
X
xffruit
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张杰
xffruit
Commits
7cd4ec37
Commit
7cd4ec37
authored
8 years ago
by
Sandy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
发运单库存校验
parent
2a743b25
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
170 additions
and
10 deletions
+170
-10
project.pbxproj
XFFruit.xcodeproj/project.pbxproj
+8
-0
ICRHTTPController.h
XFFruit/Controllers/HTTPController/ICRHTTPController.h
+10
-0
ICRHTTPController.m
XFFruit/Controllers/HTTPController/ICRHTTPController.m
+40
-0
TransportPurchaseViewController.m
...s/Transport/Controllers/TransportPurchaseViewController.m
+70
-8
ProductStockModel.h
XFFruit/ViewControllers/Transport/Models/ProductStockModel.h
+14
-0
ProductStockModel.m
XFFruit/ViewControllers/Transport/Models/ProductStockModel.m
+13
-0
TransportPurchaseCell.m
...t/ViewControllers/Transport/Views/TransportPurchaseCell.m
+15
-2
No files found.
XFFruit.xcodeproj/project.pbxproj
View file @
7cd4ec37
...
...
@@ -217,6 +217,8 @@
871F9F047CDDAC523E4358DC
/* libPods.a in Frameworks */
=
{
isa
=
PBXBuildFile
;
fileRef
=
86D33EC280C440156ED1B976
/* libPods.a */
;
};
8F67988A1DB8CC9400348267
/* WebKit.framework in Frameworks */
=
{
isa
=
PBXBuildFile
;
fileRef
=
8F6798891DB8CC9400348267
/* WebKit.framework */
;
};
8F67988C1DB8CC9E00348267
/* WebKit.framework in Frameworks */
=
{
isa
=
PBXBuildFile
;
fileRef
=
8F67988B1DB8CC9E00348267
/* WebKit.framework */
;
};
8FD12B531EC4737200845F9B
/* ProductStockModel.m in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
8FD12B521EC4737200845F9B
/* ProductStockModel.m */
;
};
8FD12B541EC4737200845F9B
/* ProductStockModel.m in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
8FD12B521EC4737200845F9B
/* ProductStockModel.m */
;
};
8FEE25DB1DB60B570099B596
/* GXFFunctionDB.m in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
35A1C3571B8F09D2004AC9F7
/* GXFFunctionDB.m */
;
};
8FEE25DC1DB60B570099B596
/* IBTTableViewSectionInfo.m in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
C15918251AC062460013B391
/* IBTTableViewSectionInfo.m */
;
};
8FEE25DD1DB60B570099B596
/* ICRAppViewControllerManager.m in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
C15918841AC460BC0013B391
/* ICRAppViewControllerManager.m */
;
};
...
...
@@ -1232,6 +1234,8 @@
86D33EC280C440156ED1B976
/* libPods.a */
=
{
isa
=
PBXFileReference
;
explicitFileType
=
archive.ar
;
includeInIndex
=
0
;
path
=
libPods.a
;
sourceTree
=
BUILT_PRODUCTS_DIR
;
};
8F6798891DB8CC9400348267
/* WebKit.framework */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
wrapper.framework
;
name
=
WebKit.framework
;
path
=
System/Library/PrivateFrameworks/WebKit.framework
;
sourceTree
=
SDKROOT
;
};
8F67988B1DB8CC9E00348267
/* WebKit.framework */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
wrapper.framework
;
name
=
WebKit.framework
;
path
=
System/Library/Frameworks/WebKit.framework
;
sourceTree
=
SDKROOT
;
};
8FD12B511EC4737200845F9B
/* ProductStockModel.h */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.c.h
;
path
=
ProductStockModel.h
;
sourceTree
=
"<group>"
;
};
8FD12B521EC4737200845F9B
/* ProductStockModel.m */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.c.objc
;
path
=
ProductStockModel.m
;
sourceTree
=
"<group>"
;
};
8FEE27391DB60B570099B596
/* XFFruit copy.app */
=
{
isa
=
PBXFileReference
;
explicitFileType
=
wrapper.application
;
includeInIndex
=
0
;
path
=
"XFFruit copy.app"
;
sourceTree
=
BUILT_PRODUCTS_DIR
;
};
8FEE273A1DB60B570099B596
/* XFFruit copy-Info.plist */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
text.plist.xml
;
name
=
"XFFruit copy-Info.plist"
;
path
=
"/Users/Javen/Documents/MyProject/xffruit/XFFruit copy-Info.plist"
;
sourceTree
=
"<absolute>"
;
};
ABFA26041C87D38800274481
/* JavenImages.h */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.c.h
;
path
=
JavenImages.h
;
sourceTree
=
"<group>"
;
};
...
...
@@ -2263,6 +2267,8 @@
72B3C0D21B9D72C600025D81
/* TransportPdtDetail.m */
,
7285402E1BDDC69100C7F139
/* Accounttitle.h */
,
7285402F1BDDC69100C7F139
/* Accounttitle.m */
,
8FD12B511EC4737200845F9B
/* ProductStockModel.h */
,
8FD12B521EC4737200845F9B
/* ProductStockModel.m */
,
);
path
=
Models
;
sourceTree
=
"<group>"
;
...
...
@@ -3681,6 +3687,7 @@
8FEE26CA1DB60B570099B596
/* ICRModifyPwdViewController.m in Sources */
,
8FEE26CB1DB60B570099B596
/* ICRStoreDetailViewController.m in Sources */
,
8FEE26CC1DB60B570099B596
/* UIResponder+FirstResponder.m in Sources */
,
8FD12B541EC4737200845F9B
/* ProductStockModel.m in Sources */
,
8FEE26CD1DB60B570099B596
/* ICRAnnouncementDetailContentView.m in Sources */
,
8FEE26CE1DB60B570099B596
/* ResultView.m in Sources */
,
8FEE26CF1DB60B570099B596
/* SaleHeaderView.m in Sources */
,
...
...
@@ -4006,6 +4013,7 @@
30D7494C1ACE340D00C63BA1
/* ICRModifyPwdViewController.m in Sources */
,
C10214CD1AD8FE200024637E
/* ICRStoreDetailViewController.m in Sources */
,
C142D2B81AC3A155000109A7
/* UIResponder+FirstResponder.m in Sources */
,
8FD12B531EC4737200845F9B
/* ProductStockModel.m in Sources */
,
30D3C1251ADF6451004AC54E
/* ICRAnnouncementDetailContentView.m in Sources */
,
FEAE16E91B79C9F9009D9E01
/* ResultView.m in Sources */
,
728899E51BEF3609003CC41E
/* SaleHeaderView.m in Sources */
,
...
...
This diff is collapsed.
Click to expand it.
XFFruit/Controllers/HTTPController/ICRHTTPController.h
View file @
7cd4ec37
...
...
@@ -358,6 +358,16 @@ typedef NS_ENUM(NSUInteger, ICRAttachmentType) {
-
(
void
)
recievePurchase
:(
id
)
data
success
:(
void
(
^
)(
id
))
succ
failure
:(
void
(
^
)(
id
))
fail
;
/**
* 获取采购单库存库存
*
* @param PurchaseUuid PurchaseUuid description
* @param succ succ description
* @param fail fail description
*/
-
(
void
)
purchaseStockWithPurchaseUuid
:(
NSString
*
)
PurchaseUuid
success
:(
void
(
^
)(
id
))
succ
failure
:(
void
(
^
)(
id
))
fail
;
/**
* 是否wms仓库
...
...
This diff is collapsed.
Click to expand it.
XFFruit/Controllers/HTTPController/ICRHTTPController.m
View file @
7cd4ec37
...
...
@@ -2386,6 +2386,46 @@ acceptTypeJson:YES
success
:
success
failure
:
failure
];
}
/**
* 获取采购单库存库存
*
* @param PurchaseUuid PurchaseUuid description
* @param succ succ description
* @param fail fail description
*/
-
(
void
)
purchaseStockWithPurchaseUuid
:
(
NSString
*
)
PurchaseUuid
success
:
(
void
(
^
)(
id
))
succ
failure
:
(
void
(
^
)(
id
))
fail
{
if
(
!
PurchaseUuid
)
{
if
(
fail
)
{
fail
(
[[
self
class
]
ErrorWithMsg
:
ERROR_PARAMETER
code
:
0
]
);
}
return
;
}
void
(
^
success
)(
AFHTTPRequestOperation
*
operation
,
id
responseObject
)
=
^
(
AFHTTPRequestOperation
*
operation
,
id
responseObject
)
{
CLog
(
@"%@"
,
responseObject
);
if
(
succ
)
{
succ
(
responseObject
);
}
};
void
(
^
failure
)(
AFHTTPRequestOperation
*
operation
,
NSError
*
error
)
=
^
(
AFHTTPRequestOperation
*
operation
,
NSError
*
error
)
{
CLog
(
@"%@"
,
error
);
if
(
fail
)
{
fail
(
error
);
}
};
NSString
*
url
=
[
NSString
stringWithFormat
:
@"%@/mdata/inv/gets/%@"
,
HTTP_REST_API_BASE_URL
,
PurchaseUuid
];
NSString
*
encodeUrlStr
=
[
url
stringByAddingPercentEscapesUsingEncoding
:
NSUTF8StringEncoding
];
[
self
GET
:
encodeUrlStr
parameters
:
nil
needToken
:
NO
acceptTypeJson
:
YES
success
:
success
failure
:
failure
];
}
/**
* 是否wms仓库
...
...
This diff is collapsed.
Click to expand it.
XFFruit/ViewControllers/Transport/Controllers/TransportPurchaseViewController.m
View file @
7cd4ec37
...
...
@@ -11,8 +11,10 @@
#import "QueryOrder.h"
#import "TransportPdtDetail.h"
#import "MJRefresh.h"
#import "ProductStockModel.h"
#define TopMargin 50
#define TableHeight 50
NSInteger
purchaseStockCheckNumber
=
0
;
@interface
TransportPurchaseViewController
()
<
UITextFieldDelegate
,
UITableViewDataSource
,
UITableViewDelegate
>
{
BOOL
_isRefresh
;
...
...
@@ -85,6 +87,7 @@
@"userUuid"
:
userUtil
.
userId
,
@"billNumberProductLike"
:
billNumberObject
,
@"fetchParts"
:
@"products"
,
@"isProductCenter"
:
@
(
1
),
@"pageNumber"
:
@
(
_currentPage
),
@"pageSize"
:
@
(
20
)};
[[
ICRHTTPController
sharedController
]
queryPurchaseWithData
:
dict
success
:
succ
failure
:
fail
];
...
...
@@ -262,17 +265,76 @@
}
#pragma mark - 按钮确定
-
(
void
)
sureClick
{
[
self
PopViewControllerAnimated
:
YES
];
if
(
self
.
indexArr
.
count
>
0
)
{
NSMutableDictionary
*
dicProduct
=
[
NSMutableDictionary
dictionary
];
//把选中的商品和采购单对应
for
(
PurchaseBill
*
bill
in
self
.
dataArr
)
{
for
(
TransportPdtDetail
*
detail
in
bill
.
products
)
{
if
([
self
.
indexArr
containsObject
:
detail
])
{
NSMutableArray
*
arrProduct
=
[
dicProduct
objectForKey
:
bill
.
billNumber
];
if
(
!
arrProduct
)
{
arrProduct
=
[
NSMutableArray
array
];
[
dicProduct
setObject
:
arrProduct
forKey
:
bill
.
billNumber
];
}
[
arrProduct
addObject
:
detail
];
}
}
}
NSArray
*
array
=
dicProduct
.
allKeys
;
__weak
TransportPurchaseViewController
*
weakSelf
=
self
;
[
self
stockValidWithDic
:
dicProduct
billNumbers
:
array
complete
:^
{
[
weakSelf
PopViewControllerAnimated
:
YES
];
if
(
weakSelf
.
indexArr
.
count
>
0
)
{
NSMutableArray
*
arr
=
[
NSMutableArray
array
];
for
(
TransportPdtDetail
*
detail
in
s
elf
.
indexArr
)
{
for
(
TransportPdtDetail
*
detail
in
weakS
elf
.
indexArr
)
{
detail
.
purchasePdtDetail
=
detail
.
uuid
;
detail
.
uuid
=
nil
;
[
arr
addObject
:
detail
];
}
self
.
getProchaseProduct
(
arr
);
weakSelf
.
getProchaseProduct
(
arr
);
}
}];
}
-
(
void
)
stockValidWithDic
:
(
NSMutableDictionary
*
)
dic
billNumbers
:
(
NSArray
*
)
billNumbers
complete
:
(
void
(
^
)(
void
))
complete
{
NSString
*
billNum
=
billNumbers
[
purchaseStockCheckNumber
];
NSMutableArray
*
arrProducts
=
[
dic
objectForKey
:
billNum
];
__weak
TransportPurchaseViewController
*
weakSelf
=
self
;
[
HTTP
purchaseStockWithPurchaseUuid
:
billNum
success
:
^
(
id
succ
)
{
for
(
NSDictionary
*
dict
in
succ
[
@"data"
])
{
ProductStockModel
*
model
=
[
ProductStockModel
new
];
[
model
setValuesForKeysWithDictionary
:
dict
];
for
(
TransportPdtDetail
*
detail
in
arrProducts
)
{
if
(
detail
.
qty
.
floatValue
>
model
.
qty
.
floatValue
)
{
CLog
(
@"库存不足"
);
purchaseStockCheckNumber
=
0
;
NSString
*
msg
=
[
NSString
stringWithFormat
:
@"%@库存不足!"
,
detail
.
productName
];
ShowMessage
(
msg
);
return
;
}
}
}
purchaseStockCheckNumber
+=
1
;
if
(
purchaseStockCheckNumber
==
billNumbers
.
count
)
{
purchaseStockCheckNumber
=
0
;
complete
();
}
else
{
[
weakSelf
stockValidWithDic
:
dic
billNumbers
:
billNumbers
complete
:
complete
];
}
}
failure
:^
(
id
fail
)
{
purchaseStockCheckNumber
=
0
;
}];
}
-
(
void
)
didReceiveMemoryWarning
{
[
super
didReceiveMemoryWarning
];
// Dispose of any resources that can be recreated.
...
...
This diff is collapsed.
Click to expand it.
XFFruit/ViewControllers/Transport/Models/ProductStockModel.h
0 → 100644
View file @
7cd4ec37
//
// ProductStockModel.h
// XFFruit
//
// Created by Javen on 2017/5/11.
// Copyright © 2017年 Xummer. All rights reserved.
//
#import "IBTModel.h"
@interface
ProductStockModel
:
IBTModel
@property
(
strong
,
nonatomic
)
NSString
*
productCode
;
@property
(
strong
,
nonatomic
)
NSNumber
*
qty
;
@end
This diff is collapsed.
Click to expand it.
XFFruit/ViewControllers/Transport/Models/ProductStockModel.m
0 → 100644
View file @
7cd4ec37
//
// ProductStockModel.m
// XFFruit
//
// Created by Javen on 2017/5/11.
// Copyright © 2017年 Xummer. All rights reserved.
//
#import "ProductStockModel.h"
@implementation
ProductStockModel
@end
This diff is collapsed.
Click to expand it.
XFFruit/ViewControllers/Transport/Views/TransportPurchaseCell.m
View file @
7cd4ec37
...
...
@@ -73,9 +73,11 @@
}
-
(
void
)
setPurchaseBill
:
(
PurchaseBill
*
)
bill
selectArr
:
(
NSMutableArray
*
)
selectArr
{
self
.
bill
=
bill
;
self
.
bgView
.
height
=
92
+
bill
.
products
.
count
*
44
;
self
.
secondTable
.
height
=
self
.
bgView
.
height
-
45
;
self
.
titleLabel
.
text
=
[
NSString
stringWithFormat
:
@"采购单:%@"
,
bill
.
billNumber
];
self
.
titleLabel
.
text
=
[
NSString
stringWithFormat
:
@"采购单:%@ 创建人:%@"
,
bill
.
billNumber
,
bill
.
create_operName
];
self
.
secondArr
=
[
NSMutableArray
array
];
self
.
selectArr
=
selectArr
;
[
self
.
secondArr
addObjectsFromArray
:
bill
.
products
];
...
...
@@ -109,7 +111,7 @@
static
NSString
*
cellID
=
@"TransportPurductCell"
;
TransportPurductCell
*
cell
=
[
tableView
dequeueReusableCellWithIdentifier
:
cellID
];
cell
.
editBtn
.
enabled
=
NO
;
self
.
headCell
.
checkBox
.
isSelected
=
self
.
selectArr
.
count
==
self
.
secondArr
.
count
;
[
self
checkIsSelectAll
]
;
if
(
cell
==
nil
)
{
cell
=
[[
TransportPurductCell
alloc
]
initWithStyle
:
UITableViewCellStyleDefault
reuseIdentifier
:
cellID
withImageName
:
@"selected"
];
cell
.
editBtn
.
hidden
=
YES
;
...
...
@@ -137,6 +139,17 @@
return
cell
;
}
-
(
void
)
checkIsSelectAll
{
BOOL
isHasAll
=
YES
;
for
(
TransportPdtDetail
*
detail
in
self
.
bill
.
products
)
{
if
(
!
[
self
.
selectArr
containsObject
:
detail
])
{
isHasAll
=
NO
;
}
}
self
.
headCell
.
checkBox
.
isSelected
=
isHasAll
;
}
-
(
CGFloat
)
tableView
:
(
UITableView
*
)
tableView
heightForRowAtIndexPath
:
(
NSIndexPath
*
)
indexPath
{
// TransportPdtDetail * billProduct = self.secondArr[indexPath.row];
// if ([self isHaveIndexPath:billProduct]) {
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment