255], ]; } public function attributeLabels() { return [ 'customer_name' => '电子面单客户账号', 'customer_pwd' => '电子面单密码', 'month_code' => '月结密码', 'send_site' => '网点编码', 'send_name' => '网点名称', 'template_size' => '面单模板规格', 'company' => '发件人公司', 'name' => '发件人名称', 'tel' => '电话', 'mobile' => '手机号', 'post_code' => '发件人邮编', 'address' => '详细地址', 'province' => '省', 'city' => '市', 'exp_area' => '区' ]; } /** * 保存运费规则 * @return array */ public function save() { if(!$this->validate()) { return [ 'code' => 1, 'msg' => $this->getErrorSummary(false)[0], ]; } $t = \Yii::$app->db->beginTransaction(); $delivery = Delivery::findOne($this->id)?: new Delivery(); if (get_supplier_id()) { $delivery->store_id = 0; $delivery->type = 1; $delivery->supplier_id = get_supplier_id(); } else { $delivery->store_id = get_store_id(); $delivery->type = 0; } $delivery->express_id = $this->express_id; $delivery->customer_name = $this->customer_name ?: ''; $delivery->customer_pwd = $this->customer_pwd ?: ''; $delivery->month_code = $this->month_code ?: ''; $delivery->send_site = $this->send_site ?: ''; $delivery->send_name = $this->send_name ?: ''; $delivery->template_size = $this->template_size ?: ''; if ($delivery->save()) { $sender = Sender::findOne(['delivery_id' => $delivery->id])?: new Sender(); if (get_supplier_id()) { $sender->store_id = 0; $sender->supplier_id = get_supplier_id(); } else { $sender->store_id = get_store_id(); } $sender->company = $this->company ?: ''; $sender->name = $this->name ?: ''; $sender->tel = $this->tel ?: ''; $sender->mobile = $this->mobile ?: ''; $sender->post_code = $this->post_code ?: ''; $sender->province = $this->province ?: ''; $sender->city = $this->city ?: ''; $sender->exp_area = $this->exp_area ?: ''; $sender->address = $this->address ?: ''; $sender->delivery_id = $delivery->id ?: 0; if ($sender->save()) { $t->commit(); return [ 'code' => 0, 'msg' => '保存成功' ]; } else { $t->rollBack(); return [ 'code' => 1, 'msg' => '保存失败' ]; } } else { $t->rollBack(); return [ 'code' => 1, 'msg' => '保存失败' ]; } } public static function del($id) { $delivery = Delivery::findOne(['id' => $id, 'store_id' => get_store_id()]); $t = \Yii::$app->db->beginTransaction(); if (empty($delivery)) { return ['code' => 1, 'msg' => '参数错误']; } else { $delivery->is_delete = 1; $sender = Sender::findOne(['delivery_id' => $id]); if ($delivery->save()) { if ($sender) { $sender->is_delete = 1; if ($sender->save()) { $t->commit(); return [ 'code' => 0, 'msg' => '保存成功' ]; } else { $t->rollBack(); return [ 'code' => 1, 'msg' => '保存失败' ]; } } else { $t->commit(); return [ 'code' => 0, 'msg' => '删除成功' ]; } } else { $t->rollBack(); return [ 'code' => 1, 'msg' => '删除失败' ]; } } } }