Commit 8e65a429 authored by lujunye's avatar lujunye

打印待调整

parent 5aadd0f4
{ {
"images" : [ "images" : [
{ {
"filename" : "rukushenqing.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "1x" "scale" : "1x"
}, },
......
{ {
"images" : [ "images" : [
{ {
"filename" : "chukushenqing.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "1x" "scale" : "1x"
}, },
......
{ {
"images" : [ "images" : [
{ {
"filename" : "daiquerendingdan.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "1x" "scale" : "1x"
}, },
......
{ {
"images" : [ "images" : [
{ {
"filename" : "weifahuodingdan.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "1x" "scale" : "1x"
}, },
......
{ {
"images" : [ "images" : [
{ {
"filename" : "caigouruku.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "1x" "scale" : "1x"
}, },
......
...@@ -322,5 +322,7 @@ ...@@ -322,5 +322,7 @@
<string>Distribution/stopDbtCooperation</string> <string>Distribution/stopDbtCooperation</string>
<key>订单打印信息</key> <key>订单打印信息</key>
<string>Order/printOrder</string> <string>Order/printOrder</string>
<key>打印订单链接</key>
<string>Order/printUrl</string>
</dict> </dict>
</plist> </plist>
...@@ -21,3 +21,23 @@ func printOrder(_ params:[String:Any],success:@escaping (_ res:Any)->(),failture ...@@ -21,3 +21,23 @@ func printOrder(_ params:[String:Any],success:@escaping (_ res:Any)->(),failture
failture(error) failture(error)
} }
} }
//MARK:--打印订单链接
/*params-key
user_token
order_id 订单id
remittance_account 汇款账户
province_id 省Id
city_id 市id
district_id 区id
mobile 手机
consignee 联系人
*/
func printUrl(_ params:[String:Any],success:@escaping (_ res:Any)->(),failture:@escaping(_ error:Error)->()) {
NetworkRequest.sharedInstance.postRequest("打印订单链接", params, { (rep:DataResponse<printUrl_Model>) in
}, success: { (data) in
success(data)
}) { (error) in
failture(error)
}
}
...@@ -68,3 +68,19 @@ class printOrder_data_res_model: Mappable { ...@@ -68,3 +68,19 @@ class printOrder_data_res_model: Mappable {
consignee <- map["consignee"] consignee <- map["consignee"]
} }
} }
class printUrl_Model: Mappable {
var code:Int?
var message : String?
var data :String?
required init?( map: Map) {
}
func mapping(map: Map) {
code <- map["code"]
message <- map["message"]
data <- map["data"]
}
}
...@@ -444,8 +444,8 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD ...@@ -444,8 +444,8 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
self.navigationController?.pushViewController(vc, animated: true) self.navigationController?.pushViewController(vc, animated: true)
return return
case 53: //销售下单-代客下单 case 53: //销售下单-代客下单
// let vc = DaiKeXiaDanGouWuViewController() let vc = DaiKeXiaDanGouWuViewController()
let vc = PrintListMgVc() // let vc = PrintListMgVc()
self.navigationController?.pushViewController(vc, animated: true) self.navigationController?.pushViewController(vc, animated: true)
return return
case 54: //扫码下单 case 54: //扫码下单
......
...@@ -9,8 +9,9 @@ ...@@ -9,8 +9,9 @@
import UIKit import UIKit
import Parchment import Parchment
import LGButton import LGButton
import WebKit
class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInteractionControllerDelegate { class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInteractionControllerDelegate,WKNavigationDelegate {
let web_vc = WebViewController() let web_vc = WebViewController()
@IBAction func check_detail(_ sender: UIButton) { @IBAction func check_detail(_ sender: UIButton) {
web_vc.titleStr = "打印预览" web_vc.titleStr = "打印预览"
...@@ -18,9 +19,10 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt ...@@ -18,9 +19,10 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt
self.navigationController?.pushViewController(web_vc, animated: true) self.navigationController?.pushViewController(web_vc, animated: true)
} }
let pc = UIPrintInteractionController.shared
@IBAction func print_action(_ sender: LGButton) { @IBAction func print_action(_ sender: LGButton) {
let pc = UIPrintInteractionController.shared
// 打印任务相关信息 // 打印任务相关信息
let printInfo = UIPrintInfo(dictionary:nil) let printInfo = UIPrintInfo(dictionary:nil)
printInfo.outputType = UIPrintInfo.OutputType.general printInfo.outputType = UIPrintInfo.OutputType.general
...@@ -29,21 +31,62 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt ...@@ -29,21 +31,62 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt
pc.delegate = self pc.delegate = self
if userName != "不二制油" { //普通 if userName != "不二制油" { //普通
let formatter = web_vc.wkWebView.viewPrintFormatter() let dic = ["user_token":UserToken as Any,
pc.printFormatter = formatter "order_id":order_id as Any,
formatter.startPage = 0 "remittance_account":"" as Any,
pc.present(animated: true) { (printer, result, err) in "province_id":"" as Any,
print(result) "city_id":"" as Any,
"district_id":"" as Any,
"mobile":"" as Any,
"consignee":"" as Any
]
printUrl(dic) { (data) in
let d = data as! printUrl_Model
let url = URL(string: d.data!)
let request = URLRequest.init(url: url!, cachePolicy: .reloadRevalidatingCacheData, timeoutInterval: 10)
self.web_vc.wkWebView.load(request)
HUD.flash(.progress)
} failture: { (err) in
} }
}else{//不二 }else{//不二
let vc = viewControllers[selectIndex] let vc = viewControllers[selectIndex]
if selectIndex != 0 {
print(vc.FM_str,vc.detail_adr_str,vc.phone_str,vc.contect_str) let dic = ["user_token":UserToken as Any,
"order_id":order_id as Any,
"remittance_account":vc.FM_str as Any,
"province_id":vc.provinceIndex as Any,
"city_id":vc.cityIndex as Any,
"district_id":vc.areaIndex as Any,
"mobile":vc.phone_str as Any,
"consignee":vc.consignee_str as Any
]
printUrl(dic) { (data) in
let d = data as! printUrl_Model
let url = URL(string: d.data!)
let request = URLRequest.init(url: url!, cachePolicy: .reloadRevalidatingCacheData, timeoutInterval: 10)
self.web_vc.wkWebView.load(request)
HUD.flash(.progress)
} failture: { (err) in
}
} }
} }
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!){
// Log4jMessage(message: "页面加载完成...")
print("页面加载完成...")
HUD.hide()
let formatter = webView.viewPrintFormatter()
pc.printFormatter = formatter
formatter.startPage = 0
pc.present(animated: true) { (printer, result, err) in
print(result)
} }
}
@IBOutlet weak var contentV: UIView! @IBOutlet weak var contentV: UIView!
var printData:printOrder_data_res_model?{ var printData:printOrder_data_res_model?{
didSet{ didSet{
...@@ -55,7 +98,7 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt ...@@ -55,7 +98,7 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt
} }
vc.FM_str = (printData?.remittance_account)! vc.FM_str = (printData?.remittance_account)!
vc.phone_str = (printData?.mobile)! vc.phone_str = (printData?.mobile)!
vc.contect_str = (printData?.consignee)! vc.consignee_str = (printData?.consignee)!
} }
} }
...@@ -80,10 +123,18 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt ...@@ -80,10 +123,18 @@ class PrintListMgVc: BaseViewController, PagingViewControllerDelegate,UIPrintInt
@IBOutlet weak var holder_img: UIImageView! @IBOutlet weak var holder_img: UIImageView!
let UserToken = UserDefaults.standard.value(forKey: "user_token") let UserToken = UserDefaults.standard.value(forKey: "user_token")
let userName = UserDefaults.standard.string(forKey: "userName") let userName = UserDefaults.standard.string(forKey: "userName")
var order_id = 0 {
didSet {
viewControllers.forEach { (vc) in
vc.order_id = order_id
}
}
}
@IBOutlet weak var normal_type_btn: UIButton! @IBOutlet weak var normal_type_btn: UIButton!
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
web_vc.wkWebView.navigationDelegate = self
navbar.title = "打印模版确认" navbar.title = "打印模版确认"
navbar.lineView.isHidden = true navbar.lineView.isHidden = true
self.view.addSubview(navbar) self.view.addSubview(navbar)
......
...@@ -10,7 +10,9 @@ import UIKit ...@@ -10,7 +10,9 @@ import UIKit
import SwiftyJSON import SwiftyJSON
class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDataSource,print_bottom_cellDelegate, UIPickerViewDataSource, UIPickerViewDelegate{ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDataSource,print_bottom_cellDelegate, UIPickerViewDataSource, UIPickerViewDelegate{
let UserToken = UserDefaults.standard.value(forKey: "user_token")
var order_id = 0
let web_vc = WebViewController()
//MARK: - 地址选择 //MARK: - 地址选择
//选择的省索引 //选择的省索引
var provinceIndex = 0 var provinceIndex = 0
...@@ -295,7 +297,7 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat ...@@ -295,7 +297,7 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat
var FM_str = "" var FM_str = ""
var detail_adr_str = "" var detail_adr_str = ""
var phone_str = "" var phone_str = ""
var contect_str = "" var consignee_str = ""
func print_bottom_cell_text_respose(tag: Int, text: String) { func print_bottom_cell_text_respose(tag: Int, text: String) {
print(tag,text) print(tag,text)
...@@ -310,7 +312,7 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat ...@@ -310,7 +312,7 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat
phone_str = text phone_str = text
break break
default: default:
contect_str = text consignee_str = text
break break
} }
} }
...@@ -343,6 +345,26 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat ...@@ -343,6 +345,26 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.row == 0 { if indexPath.row == 0 {
print("check print") print("check print")
print("ck = ",order_id)
let dic = ["user_token":UserToken as Any,
"order_id":order_id as Any,
"remittance_account":FM_str as Any,
"province_id":provinceIndex as Any,
"city_id":cityIndex as Any,
"district_id":areaIndex as Any,
"mobile":phone_str as Any,
"consignee":consignee_str as Any
]
printUrl(dic) { (data) in
let d = data as! printUrl_Model
self.web_vc.titleStr = "打印预览"
self.web_vc.urlStr = d.data
self.navigationController?.pushViewController(self.web_vc, animated: true)
} failture: { (err) in
}
} }
} }
...@@ -371,7 +393,7 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat ...@@ -371,7 +393,7 @@ class PrintViewController: BaseViewController,UITableViewDelegate,UITableViewDat
cell.payer_tf.text = FM_str cell.payer_tf.text = FM_str
cell.adr_tf.text = detail_adr_str cell.adr_tf.text = detail_adr_str
cell.phone_tf.text = phone_str cell.phone_tf.text = phone_str
cell.connect_tf.text = contect_str cell.consignee_tf.text = consignee_str
return cell return cell
} }
......
...@@ -15,7 +15,7 @@ class print_bottom_cell: UITableViewCell { ...@@ -15,7 +15,7 @@ class print_bottom_cell: UITableViewCell {
var delegate:print_bottom_cellDelegate? var delegate:print_bottom_cellDelegate?
@IBOutlet weak var adr_lbl: UILabel! @IBOutlet weak var adr_lbl: UILabel!
@IBOutlet weak var connect_tf: UITextField! @IBOutlet weak var consignee_tf: UITextField!
@IBOutlet weak var phone_tf: UITextField! @IBOutlet weak var phone_tf: UITextField!
@IBOutlet weak var payer_tf: UITextField! @IBOutlet weak var payer_tf: UITextField!
@IBOutlet weak var adr_tf: UITextField! @IBOutlet weak var adr_tf: UITextField!
...@@ -33,12 +33,12 @@ class print_bottom_cell: UITableViewCell { ...@@ -33,12 +33,12 @@ class print_bottom_cell: UITableViewCell {
payer_tf.tag = 0 payer_tf.tag = 0
adr_tf.tag = 1 adr_tf.tag = 1
phone_tf.tag = 2 phone_tf.tag = 2
connect_tf.tag = 3 consignee_tf.tag = 3
payer_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents) payer_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents)
adr_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents) adr_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents)
phone_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents) phone_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents)
connect_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents) consignee_tf.addTarget(self, action: #selector(textChange(tf:)), for: .allEditingEvents)
} }
@objc func textChange(tf:UITextField){ @objc func textChange(tf:UITextField){
......
...@@ -359,7 +359,7 @@ ...@@ -359,7 +359,7 @@
<outlet property="adr_lbl" destination="5gO-KT-url" id="Gof-9A-hSh"/> <outlet property="adr_lbl" destination="5gO-KT-url" id="Gof-9A-hSh"/>
<outlet property="adr_tf" destination="jiF-F7-HDQ" id="EKO-dE-F6M"/> <outlet property="adr_tf" destination="jiF-F7-HDQ" id="EKO-dE-F6M"/>
<outlet property="btm_bg" destination="H9o-Fl-UmR" id="NKR-ur-O5q"/> <outlet property="btm_bg" destination="H9o-Fl-UmR" id="NKR-ur-O5q"/>
<outlet property="connect_tf" destination="SHz-wb-OzF" id="EhO-Dh-mgr"/> <outlet property="consignee_tf" destination="SHz-wb-OzF" id="OOx-5t-DuY"/>
<outlet property="payer_tf" destination="wL5-Yr-Phn" id="f83-HW-0zy"/> <outlet property="payer_tf" destination="wL5-Yr-Phn" id="f83-HW-0zy"/>
<outlet property="phone_tf" destination="1EG-8Y-For" id="D9Y-cJ-4xS"/> <outlet property="phone_tf" destination="1EG-8Y-For" id="D9Y-cJ-4xS"/>
<outlet property="top_bg" destination="SAd-bP-2BG" id="Tpm-AX-ZUM"/> <outlet property="top_bg" destination="SAd-bP-2BG" id="Tpm-AX-ZUM"/>
......
...@@ -1368,13 +1368,12 @@ class OrderDViewController: BaseViewController,UITableViewDelegate,UITableViewDa ...@@ -1368,13 +1368,12 @@ class OrderDViewController: BaseViewController,UITableViewDelegate,UITableViewDa
} }
break break
case "打印": case "打印":
//暂无 // dataMdoel?.order_res?.order_id
// print("暂无") printOrder(["user_token":UserToken as Any,"order_id":12445 as Any]) { (data) in
// HUD.flash(.label("打印功能开发中"),delay: 1.2)
printOrder(["user_token":UserToken as Any,"order_id":dataMdoel?.order_res?.order_id as Any]) { (data) in
let d = data as! printOrder_model let d = data as! printOrder_model
let vc = PrintListMgVc() let vc = PrintListMgVc()
vc.printData = d.data?.order_res vc.printData = d.data?.order_res
vc.order_id = 12445
self.navigationController?.pushViewController(vc, animated: true) self.navigationController?.pushViewController(vc, animated: true)
} failture: { (err) in } failture: { (err) in
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment