public function Create() { $this->LogInfo("APP create order..."); //验证APP是否登录 $this->DoAuth(); $req = $this->GetReqObj(); //创建订单 $order = $req->order; $orderData = $this->objectToArray($order); $orderDao = $this->GetModel(); do { $orderData['order_code'] = date('ymdHis', time()) . rand(1000, 9999); } while ($orderDao->where('order_code=' . $orderData['order_code'])->count()); if (OrderEnum::OnlinePay == $orderData['pay_option']) { $orderData['order_status'] = OrderEnum::WaitBuyerPay; } else { $orderData['order_status'] = OrderEnum::OrderSubmit; } $orderData['create_time'] = date('Y-m-d H:i:s', time()); $orderData['company_id'] = $req->app_id; $this->LogInfo("order info is " . json_encode($orderData)); try { $result = MispCommonService::Create($orderDao, $orderData); } catch (FuegoException $e) { $this->errorCode = $e->getCode(); $this->ReturnJson(); return; } //正常下单创建订单详情 if ($orderData['order_type'] == OrderEnum::NormalOrder) { //创建订单详情 $orderDetailDao = LaundryDaoContext::OrderDetail(); $orderDetailList = $req->orderDetailList; for ($i = 0; $i < count($orderDetailList); $i++) { $orderDetailList[$i] = $this->objectToArray($orderDetailList[$i]); $orderDetailList[$i]['order_id'] = $result; } $this->LogInfo("order type is " . OrderEnum::NormalOrder); $this->LogInfo("order detail is " . json_encode($orderDetailList)); try { $detailResult = MispCommonService::CreateList($orderDetailDao, $orderDetailList); } catch (FuegoException $e) { $this->errorCode = $e->getCode(); $this->ReturnJson(); return; } } //直接下单 if (OrderEnum::DirectOrder == $orderData['order_type']) { $this->LogInfo("order type is " . OrderEnum::DirectOrder); } //发出订单邮件通知 $adminDao = LaundryDaoContext::administrators(); $CompanyCondition['company_id'] = $req->app_id; $Email = $adminDao->where($CompanyCondition)->getField('email'); $this->LogInfo("admin email is " . $Email); if (false == SendMail($Email, OrderEnum::EMAIL_TITLE, "会员:" . $orderData['user_name'] . " 已成功提交订单,订单号为:" . $orderData['order_code'] . "。请及时处理!")) { $this->LogErr("Order has create,But send mail failed."); } //获取订单信息返回 $orderCondition['order_code'] = $orderData['order_code']; try { $object = MispCommonService::GetUniRecord($orderDao, $orderCondition); } catch (FuegoException $e) { $this->errorCode = $e->getCode(); $this->ReturnJson(); return; } $data['obj'] = $object; $this->ReturnJson($data); }
public function CreateBasicRole($companyID) { //创建公司基本角色 $roleDao = MispDaoContext::SystemRole(); //创建管理员角色 $role['role_name'] = "管理员"; $role['user_type_id'] = UserTypeEnum::ADMIN; $role['user_type_name'] = "ADMIN"; $role['company_id'] = $companyID; $adminRoleID = MispCommonService::Create($roleDao, $role); //创建管理员权限 $privilegeDao = MispDaoContext::Privilege(); $privilegeList = array(); for ($i = 1; $i < 5; $i++) { $privilege['master_type'] = PrivilegeEnum::MASTER_TYPE_ROLE; $privilege['master_value'] = $adminRoleID; $privilege['access_obj_type'] = PrivilegeEnum::ACCESS_TYPE_MENU; $privilege['access_obj_value'] = $i; array_push($privilegeList, $privilege); } $loginPrivilege['master_type'] = PrivilegeEnum::MASTER_TYPE_ROLE; $loginPrivilege['master_value'] = $adminRoleID; $loginPrivilege['access_obj_type'] = PrivilegeEnum::ACCESS_TYPE_LOGIN; $loginPrivilege['access_obj_value'] = PrivilegeEnum::ACCESS_VALUE_WEB_LOGIN; array_push($privilegeList, $loginPrivilege); $result = MispCommonService::CreateList($privilegeDao, $privilegeList); //创建消费者角色 $role['role_name'] = "消费者"; $role['user_type_id'] = UserTypeEnum::CUSTOMER; $role['user_type_name'] = "CUSTOMER"; $role['company_id'] = $companyID; $sellerRoleID = MispCommonService::Create($roleDao, $role); //创建消费者权限 $loginPrivilege['master_type'] = PrivilegeEnum::MASTER_TYPE_ROLE; $loginPrivilege['master_value'] = $sellerRoleID; $loginPrivilege['access_obj_type'] = PrivilegeEnum::ACCESS_TYPE_LOGIN; $loginPrivilege['access_obj_value'] = PrivilegeEnum::ACCESS_VALUE_APP_LOGIN; $result = MispCommonService::Create($privilegeDao, $loginPrivilege); return $adminRoleID; }