亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        同城快遞iOS-App系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

        2018-11-03 06:04:06曾志歐陽(yáng)承
        現(xiàn)代計(jì)算機(jī) 2018年28期
        關(guān)鍵詞:下單快件后臺(tái)

        曾志,歐陽(yáng)承

        (惠州學(xué)院信息科學(xué)技術(shù)學(xué)院,惠州 516007)

        0 引言

        隨著我國(guó)經(jīng)濟(jì)崛起以及與國(guó)際交流日益頻繁,人們對(duì)物資與信息流通產(chǎn)生了更大、更多元化、更個(gè)性化的需求,快遞服務(wù)迎來(lái)了飛速的發(fā)展,形成了國(guó)際、國(guó)內(nèi)與同城三種模式[1]。同城快遞是快遞企業(yè)為處在同一城市不同轄區(qū)的發(fā)件人和收件人所進(jìn)行的快件收發(fā)活動(dòng),是國(guó)際快遞和國(guó)內(nèi)異地快遞的有力補(bǔ)充。其重點(diǎn)是“同城”,因此更突出配送效率和個(gè)性化服務(wù)。在當(dāng)前同城共同配送體系不健全的環(huán)境下,同城快遞主要抓住了用戶對(duì)“末端快遞配送”的服務(wù)需求點(diǎn):時(shí)效性強(qiáng)、個(gè)性化明顯、安全性高和服務(wù)靈活??梢源蟠蠊?jié)省收發(fā)快遞的時(shí)間,凸顯了App帶來(lái)的成本與效率的雙重增長(zhǎng)。與一般的快遞App不同[2-4],首先,同城快遞iOS-App使用范圍為同一城市,避免了同一城市快遞分揀而導(dǎo)致隔日遞送的缺點(diǎn),使得快遞在數(shù)小時(shí)內(nèi)完成送達(dá);其次,吸引大眾參與模式,所有經(jīng)過(guò)審核認(rèn)證的人員,均可以參與到派送快件這項(xiàng)工作中來(lái),舉手之勞創(chuàng)造價(jià)值。對(duì)于參與派件的人員,提出采納支付保證金的方法,同時(shí)對(duì)發(fā)送的物品進(jìn)行前后拍照比較認(rèn)證的方法確??爝f物品的安全。一旦完成交易,系統(tǒng)將自動(dòng)將費(fèi)用轉(zhuǎn)入派送員賬戶。綜上,同城快遞iOSApp系統(tǒng)將快遞物流與移動(dòng)電子商務(wù)更加緊密地結(jié)合,一方面在于加速物品在同城范圍內(nèi)的遞送,同時(shí)也為大眾的參與提供了平臺(tái),解決了“最后一公里”高效快速的快件遞送問(wèn)題。

        “互聯(lián)網(wǎng)+”利用信息通信技術(shù)與各行業(yè)的深度融合,為經(jīng)濟(jì)社會(huì)的創(chuàng)新發(fā)展提供了便捷、高效的解決方案。基于App的移動(dòng)計(jì)算技術(shù)正在成為實(shí)現(xiàn)“互聯(lián)網(wǎng)+”創(chuàng)造新業(yè)務(wù)與新服務(wù)模式的基礎(chǔ)。同城快遞App采用目前較為新近的技術(shù)框架,分析各業(yè)務(wù)流程(如圖1所示),完善和添加有利于用戶體驗(yàn)的模塊,從技術(shù)上以及產(chǎn)品上均有一定的創(chuàng)新。

        圖1 同城快遞App系統(tǒng)的業(yè)務(wù)流程

        1 同城快遞iOS-App系統(tǒng)架構(gòu)體系

        從系統(tǒng)架構(gòu)可知,同城快遞iOS-App系統(tǒng)是一款雙App系統(tǒng),包括用戶端與快遞員派送端兩部分。系統(tǒng)iOS客戶端使用Apple官方IDE Xcode,以及蘋果最穩(wěn)定的Objective-C編程語(yǔ)言進(jìn)行代碼編寫,并用iOS數(shù)據(jù)格式Plist,NSUserdefault單例進(jìn)行數(shù)據(jù)歸檔,使用AFNetworking與服務(wù)器端進(jìn)行數(shù)據(jù)交互。整個(gè)項(xiàng)目采用了MVVM架構(gòu),很好地解決Massive View Controller的問(wèn)題。在該項(xiàng)目中將Controller中的展示邏輯抽取出來(lái),放置到ViewModel。MVVM衍生于MVC,是對(duì)MVC的一種演進(jìn),它促進(jìn)了UI代碼與業(yè)務(wù)邏輯的分離。它正式規(guī)范了視圖和控制器緊耦合的性質(zhì),并引入新的組件。各組件間的結(jié)構(gòu)關(guān)系如圖2所示。

        其次,整個(gè)項(xiàng)目圖片都采用異步加載保證界面流暢度,在圖片呈現(xiàn)前顯示占位圖,當(dāng)圖片加載后再予以替換占位圖,加載后的圖片采用緩存機(jī)制,亦或多級(jí)緩存機(jī)制,用以提升客戶端界面的流暢度。此外,界面組件還采用了預(yù)排版技術(shù),將每條Cell需要的數(shù)據(jù)都在后臺(tái)線程計(jì)算并封裝為一個(gè)布局對(duì)象CellLayout,避免Cell內(nèi)部的重計(jì)算,增加了UITableView列表的加載速度,增加了用戶體驗(yàn)。最后,項(xiàng)目實(shí)踐過(guò)程采用了全局并發(fā)控制技術(shù),App內(nèi)所有異步操作,包括圖像解碼、對(duì)象釋放、異步繪制等,均已按優(yōu)先級(jí)放入了全局的serial queue中執(zhí)行,從而避免了過(guò)多線程影響計(jì)算性能的問(wèn)題。

        2 iOS-App功能模塊的實(shí)現(xiàn)

        依據(jù)同城快遞App系統(tǒng)業(yè)務(wù)流程,用戶App前端模塊共包含7大模塊,而快遞員派送端App主要包含接單模塊。用戶App端的幾大模塊描述見(jiàn)圖3所示。用戶首先是注冊(cè)、認(rèn)證與個(gè)人信息的完善,接著就是下單、支付、查詢與評(píng)價(jià);而快遞員端App主要有接/搶單、派送、簽收幾大功能。以下為iOS-App端所涉及的下單、接單、查詢與支付幾大模塊的實(shí)現(xiàn)。

        圖3 iOS-App用戶端功能模塊

        2.1 用戶下單模塊

        在用戶注冊(cè)并經(jīng)過(guò)認(rèn)證后,用戶就具有發(fā)貨位置,物品信息,包括物品照片,訂單發(fā)布時(shí)間,聯(lián)系方式等。用戶在手機(jī)端完成訂單的填寫,將數(shù)據(jù)打包成JSON格式傳遞到后臺(tái)處理,代碼實(shí)現(xiàn)如下:

        //用戶下單模塊

        - (void)completeInputInfomationWithJSON:(NSDictionary *)json{

        AFHTTPSessionManager*manager=[AFHTTPSession?Manager manager];

        圖2 iOS-App系統(tǒng)架構(gòu)體系

        //申明請(qǐng)求的數(shù)據(jù)是json類型

        manager.requestSerializer=[AFJSONRequestSerializer se?rializer];

        manager.responseSerializer=[AFHTTPResponseSerializer serializer];

        manager.requestSerializer.timeoutInterval=10;

        manager.responseSerializer.acceptableContentTypes=[NS?Set setWithObjects:@"text/plain", @"multipart/form- data",@"application/json",@"text/html",@"image/jpeg",@"image/png",@"application/octet-stream",@"text/json",nil];

        NSString*createNewOrderurl=[NSString stringWithFor?mat:@"% @/Express/order/Order_createOrder.action", server?URL];

        [manager POST:createNewOrderurl parameters:json con?structingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData){

        //formData:專門用于拼接需要上傳的數(shù)據(jù),在此位置生成一個(gè)要上傳的數(shù)據(jù)體

        for(int i=0;i<self.imagesM.count;i++){

        UIImage*image=self.imagesM[i];

        NSData*imageData=UIImageJPEGRepresen?tation(image,0.5);

        //使用當(dāng)前的系統(tǒng)事件作為文件名

        NSDateFormatter*formatter=[[NSDateFormat?ter alloc]init];

        //設(shè)置時(shí)間格式

        [formatter setDateFormat:@"yyyyMMddHHmmss"];

        NSString*dateString=[formatter stringFrom?Date:[NSDate date]];

        NSString*fileName=[NSString stringWithFor?mat:@"%@.jpg",dateString];

        [formData appendPartWithFileData:imageData name:@"upload"fileName:fileName mimeType:@"image/jpeg"];///jpg/png

        }

        }

        }

        2.2 快遞員接單模塊

        快遞員派送端可以在App完成訂單的查詢、接單與派送的過(guò)程。其中接單也被認(rèn)為是搶單,系統(tǒng)完成手機(jī)端數(shù)據(jù)的拼接,并通過(guò)序列化的方式對(duì)數(shù)據(jù)完成傳輸操作,代碼略。

        2.3 支付模塊

        支付主要實(shí)現(xiàn)錢包的功能,包括支付寶、微信和銀行卡的支付與提現(xiàn)。根據(jù)用戶ID列出訂單的明細(xì)列表,而后提交后臺(tái)進(jìn)行支付相關(guān)的處理。代碼實(shí)現(xiàn)如下:

        //支付模塊

        -(void)walletInstruction{

        UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"說(shuō)明"message:@" 1、余額可提現(xiàn)至支付寶、微信和銀行卡(銀聯(lián))等平臺(tái)。 2、提交提現(xiàn)申請(qǐng)后,需要2~3個(gè)工作日到賬。 3、提現(xiàn)或充值后,如遇到金額長(zhǎng)時(shí)間沒(méi)有到賬,請(qǐng)及時(shí)聯(lián)系客服。"preferredStyle:UI?AlertControllerStyleAlert];

        UIAlertAction*canelAction=[UIAlertAction actionWith?Title:@"知道了"style:UIAlertActionStyleDefault handler:nil];UIAlertAction*callAction=[UIAlertAction actionWithTitle:@"聯(lián)系客服"style:UIAlertActionStyleDefault handler:^(UIAlertAc?tion*_Nonnull action){

        //通過(guò)UIWebView實(shí)現(xiàn)

        UIWebView*phoneWV=[[UIWebView alloc]init?WithFrame:CGRectZero];

        [self.view addSubview:phoneWV];

        //讀入電話號(hào)碼

        NSString *urlStr= [NSString stringWithFormat:@"tel:%@",@"0752-8884788"];

        NSURL*url=[NSURL URLWithString:urlStr];

        NSURLRequest*request=[NSURLRequest request?WithURL:url];

        //加載請(qǐng)求

        [phoneWV loadRequest:request];

        }];

        [alertController addAction:canelAction];

        [alertController addAction:callAction];

        [self presentViewController:alertController animated:YES completion:nil];

        }

        //請(qǐng)求賬戶明細(xì)數(shù)據(jù)

        -(void)requestDataFromServer{

        //請(qǐng)求的參數(shù)

        NSUserDefaults*userDefaults=[NSUserDefaults standar?dUserDefaults];

        NSString*userID=[[userDefaults objectForKey:@"userIn?formation"]objectForKey:@"userID"];

        NSDictionary*dic=[NSDictionary dictionaryWithObject?sAndKeys:@“0”,@“first”,userID,@“userId”,nil];

        NSString*uploadAddressUrl=[NSString stringWithFor?mat:@"%@%@",serverURL,@"/Express/user/User_findEx?pense.action"];

        AFHTTPSessionManager*manager=[AFHTTPSession?Manager manager];

        manager.responseSerializer=[AFHTTPResponseSerializer serializer];

        [managerPOST:uploadAddressUrlparameters:dic con?structingBodyWithBlock:^(id_Nonnull formData){

        //拼接data到請(qǐng)求體

        }progress:^(NSProgress*_Nonnull uploadProgress){[SVProgressHUD show];

        [SVProgressHUD setDefaultStyle:SVProgressHUDStyle?Dark];

        } success:^(NSURLSessionDataTask * _Nonnull task, id_Nullable responseObject){

        ……

        }failure:^(NSURLSessionDataTask*_Nullable task,NSError*_Nonnull error){

        ……

        }

        3 后臺(tái)數(shù)據(jù)管理系統(tǒng)的實(shí)現(xiàn)

        后臺(tái)管理系統(tǒng)實(shí)現(xiàn)了用戶認(rèn)證管理、下單、接單、查詢、支付以及評(píng)價(jià)管理等,其中查詢模塊調(diào)用了百度地圖API實(shí)現(xiàn)[5]。后臺(tái)數(shù)據(jù)管理頁(yè)面效果如圖4所示。

        圖4 iOS-App后臺(tái)管理系統(tǒng)功能示例

        手機(jī)App端各頁(yè)面效果展示如圖5所示。

        圖5 iOS-App手機(jī)端頁(yè)面效果示例

        4 系統(tǒng)評(píng)測(cè)

        使用Instruments進(jìn)行內(nèi)存測(cè)試,根據(jù)需求分析的要求重復(fù)測(cè)試3次以上,Instruments并沒(méi)有發(fā)出警報(bào),在測(cè)試的過(guò)程中并沒(méi)有發(fā)生內(nèi)存暴漲的情況。綜上,軟件并沒(méi)有明顯的內(nèi)存泄漏,不影響功能和使用,符合需求分析的要求。Instruments內(nèi)存泄漏測(cè)試如圖6所示。

        圖6 iOS-App內(nèi)測(cè)效果

        5 結(jié)語(yǔ)

        綜上,同城快遞App系統(tǒng)將快遞物流與同城內(nèi)的移動(dòng)電子商務(wù)更加緊密地結(jié)合,屬于C2C模式的一種實(shí)現(xiàn)。一方面在于加速物品同城快遞的遞送,同時(shí)為大眾參與提供了平臺(tái),解決了“最后一公里”高效快速的快件遞送問(wèn)題。

        猜你喜歡
        下單快件后臺(tái)
        基于聯(lián)邦學(xué)習(xí)的自助取貨機(jī)遠(yuǎn)程下單數(shù)據(jù)共享方法
        快件丟失該如何保價(jià)理賠?
        幫爸爸取快件
        歐洲最大罐車企業(yè)FFB:如果你現(xiàn)在下單2020年才能提車
        專用汽車(2018年10期)2018-11-02 05:32:30
        后臺(tái)暗戀
        你有快件
        喜劇世界(2017年24期)2017-12-06 05:49:53
        前臺(tái)、后臺(tái)精彩花絮停不了
        聯(lián)發(fā)科傳下單中芯不利臺(tái)積
        電子世界(2015年22期)2015-12-29 02:49:41
        規(guī)范無(wú)著快件管理細(xì)則出臺(tái)
        電力調(diào)度中后臺(tái)監(jiān)控系統(tǒng)的應(yīng)用
        河南科技(2014年11期)2014-02-27 14:10:03
        少妇爽到高潮免费视频| 亚洲成AⅤ人在线观看无码| 尤物蜜芽福利国产污在线观看| 麻豆国产精品伦理视频| 红桃av一区二区三区在线无码av| 暖暖视频在线观看免费| 亚洲国产成人AV人片久久网站| 天堂av一区一区一区| 国产一区二区视频在线免费观看| 无码任你躁久久久久久老妇| 国产精品刺激好大好爽视频| 国产一区二区三区资源在线观看| 国产成人精品人人做人人爽97 | 一个人午夜观看在线中文字幕| 摸丰满大乳奶水www免费| 中文字幕熟妇人妻在线视频| 亚洲中文无码精品久久不卡| 亚洲国产精品日韩av专区| 亚洲av永久无码天堂网小说区| 亚洲另类自拍丝袜第五页 | 7878成人国产在线观看| 久久精品国产亚洲av麻豆四虎| 人妻少妇猛烈井进入中文字幕| 久久国产亚洲高清观看| 国产成人精品精品欧美| 久久夜色精品国产亚洲av老牛| 麻豆亚洲一区| 爱情岛永久地址www成人| 999久久久免费精品国产牛牛| 激情五月开心五月啪啪| 国产精品久线在线观看| 二区三区视频| 亚洲视一区二区三区四区| 青青草原综合久久大伊人精品| 免费无码又爽又刺激聊天app| 在线亚洲AV不卡一区二区| 女同恋性吃奶舌吻完整版| 免费看av在线网站网址| 久久这里只精品国产99热| 91青青草视频在线播放| 日韩欧美在线综合网另类 |