public async Task <Result> GetOrderList(In inData) { DBHelper db = new DBHelper(); List <int> position_list = await PositionDao.GetChildId(db, inData.user.position_id); position_list.Add(inData.user.position_id); position_list = position_list.Distinct().ToList(); List <t_procurement> order_list = await ProcurementDao.GetList(db, position_list.ToArray()); List <OrderItemResult> order_result_list = new List <OrderItemResult>(); foreach (var item in order_list) { order_result_list.Add(new OrderItemResult { add_time = item.add_time.ToString("yyyy-MM-dd HH:mm:ss"), department_name = await DepartmentDao.GetDepartmentName(db, item.department_id), position_name = await Dao.User.PositionDao.GetPositionName(db, item.position_id), name = await UserDao.GetUserRealName(db, item.id), order_sn = item.order_sn, remark = item.remark, status = item.status }); } Result <List <OrderItemResult> > result = new Result <List <OrderItemResult> > { result = true, msg = "OK", data = order_result_list }; return(result); }
public IHttpActionResult deletePositions(Position c) { // Position c1 = new Position(Convert.ToInt32(d),"ztt", "ztt", 0, "1975-06-04 00:00:00.000"); int changeLine = PositionDao.deletePositions(c); return(Ok(changeLine)); }
public IHttpActionResult Updatestockprice(dynamic price) { PriceHistory history = new PriceHistory(); history.Isin = price.isin; history.OfferPrice = price.OfferPrice; history.Type = "Stock"; history.BidPrice = price.BidPrice; history.Date = DateTime.Now; int changeline = PriceHistoryDao.setPriceHistory(history); List <Position> positions = PositionDao.getPositionsByIsin(history.Isin); Portfolio portfolio = new Portfolio(); int changline = 0; foreach (Position p in positions) { portfolio = PortfolioDao.getPortfoliosById(p.PortfolioId); double pnl = Getportfoliopnl(portfolio.PortfolioId); PortfolioHistory porthistory = new PortfolioHistory(); porthistory.PNL = pnl; porthistory.Date = DateTime.Now; porthistory.PortfolioId = portfolio.PortfolioId; int line = PortfolioHistoryDao.setPortfolioHistory(porthistory); changline++; } return(Ok("success")); }
public IHttpActionResult updatePositionById(Position c) { Position c1 = new Position { PositionId = 1, Quantity = 12, Price = 21, Isin = 1, Type = "not" }; int changeLine = PositionDao.updatePositions(c1); return(Ok(changeLine)); }
public ActionResult <Response> GetPositions() { PositionDao position = new PositionDao(); return(new Response() { data = position.getPositionList(), message = "Ok" }); }
public ActionResult Delete(string ma) { if (!new PermissionAttribute().PermissionAuthorization("Delete", "POSITION")) { return(Json(false, JsonRequestBehavior.AllowGet)); } bool status = new PositionDao().Delete(ma); return(Json(new { status = status }, JsonRequestBehavior.AllowGet)); }
public IHttpActionResult Get(int id) { Position p = PositionDao.getPositionsById(id); if (p != null) { return(Ok(p)); } else { return(NotFound()); } }
public IHttpActionResult GetPositionsbyPortID(int portfolioid) { List <Position> positionlist = PositionDao.getPositionsByPortfolioId(portfolioid); List <Positionlist> returnlist = new List <Positionlist>(); foreach (Position p in positionlist) { double porfit = 0; porfit = Convert.ToDouble((PriceHistoryDao.getLastPriceHistorysByisin(p.Isin).OfferPrice - p.Price) / p.Price); returnlist.Add(new Positionlist(p.PositionId, getSecurityname(p.Isin, p.Type), p.Price, p.Quantity, PriceHistoryDao.getLastPriceHistorysByisin(p.Isin).OfferPrice, porfit.ToString("P"), p.Type, p.Isin)); } return(Ok(returnlist)); }
public IHttpActionResult GetPositionsbyPortID(int portfolioid) { List <Position> positionlist = PositionDao.getPositionsByPortfolioId(portfolioid); List <Positionlist> returnlist = new List <Positionlist>(); foreach (Position p in positionlist) { double porfit = 0; porfit = Convert.ToDouble((PriceHistoryDao.getLastPriceHistorysByisin(p.Isin).Price - p.Price) / p.Price); returnlist.Add(new Positionlist(p.PositionId, StockDao.getStocksById(p.Isin).Name, p.Quantity, porfit)); } return(Ok(returnlist)); }
public IHttpActionResult GetPercentage(int portid) { List <Position> list = PositionDao.getPositionsByPortfolioId(portid); List <PositionPercentage> returnlist = new List <PositionPercentage>(); var query = from p in list orderby p.Price * p.Quantity select p; foreach (Position p in query) { returnlist.Add(new PositionPercentage(p.Price * p.Quantity, getSecurityname(p.Isin, p.Type))); } return(Ok(returnlist)); }
public static double Getportfoliopnl(int portid) { decimal amountbefore = 0; decimal amountafter = 0; double pnl = 0; List <Position> posilist = PositionDao.getPositionsByPortfolioId(portid); foreach (Position p in posilist) { string isin = p.Isin; amountbefore += p.Quantity * p.Price; amountafter += p.Quantity * PriceHistoryDao.getLastPriceHistorysByisin(isin).OfferPrice; } pnl = Convert.ToDouble((amountafter - amountbefore) / amountbefore); return(pnl); }
public ActionResult Save(PositionModel model) { if (ModelState.IsValid) { bool status = false; if (model.isUpdate) { status = new PositionDao().Update(model); } else { status = new PositionDao().Save(model); } return(Json(new { status = status }, JsonRequestBehavior.AllowGet)); } return(PartialView("_DetailPosition", model)); }
public IHttpActionResult addPositionlist(dynamic c) { int changeline = 0; Position position = new Position(); foreach (var p in c) { position.Quantity = p.Quantity; position.PortfolioId = p.PortfolioId; position.Isin = p.Isin; position.Type = p.Type; position.Price = PriceHistoryDao.getLastPriceHistorysByisin(position.Isin).BidPrice; int line = PositionDao.setPosition(position); changeline += line; } return(Ok(changeline)); }
public IHttpActionResult addPositions(dynamic c) { Portfolio p = PortfolioDao.getPortfolioBySomething(new Portfolio { Name = c.Name, UserId = c.UserId }); Position position = new Position(); position.Isin = c.Isin; position.PortfolioId = p.PortfolioId; position.Price = PriceHistoryDao.getLastPriceHistorysByisin(position.Isin).BidPrice; position.Quantity = c.Quantity; position.Type = c.Type; int changeLine = PositionDao.setPosition(c); return(Ok(changeLine)); }
public async Task <Result> Login(In <LoginIn> inData) { Result result = await VerifyLogin(inData.data); if (!result.result) { return(result); } DBHelper db = new DBHelper(); t_user user = await UserDao.GetUser(db, inData.data.user_name); bool password_flag = VerifyCommon.VerifyPassword(user.id, user.salt, user.password, inData.data.password); if (!password_flag) { db.Close(); result.msg = "用户名或密码错误"; return(result); } LoginResult loginResult = new LoginResult { user_id = user.id, department_name = await DepartmentDao.GetDepartmentName(db, user.department_id), position_name = await PositionDao.GetPositionName(db, user.position_id), department_id = user.department_id, position_id = user.position_id, name = user.real_name, token = ConcealCommon.EncryptDES(user.id + DateTime.Now.ToString("yyy-MM-dd HH:mm:ss:ms")), user_name = user.user_name, }; db.Close(); await RedisHelper.Instance.SetStringKeyAsync($"user-multi-token:{loginResult.token}", loginResult, TimeSpan.FromHours(4)); Result <LoginResult> result1 = new Result <LoginResult> { data = loginResult, result = true, msg = "登录成功" }; return(result1); }
public async Task <Result> AddUser(In <AddUserIn> inData) { Result result = await VerifyAddUser(inData.data); if (!result.result) { return(result); } DBHelper db = new DBHelper(); try { db.BeginTransaction(); int position_id = int.Parse(inData.data.position_id); int department_id = await PositionDao.GetDepartmentId(db, position_id); int user_id = await UserDao.AddUser(db, inData.data, department_id); if (user_id <= 0) { db.Rollback(); result.msg = "用户添加失败[1]"; return(result); } bool update_user_pwd_flag = await UserDao.UpdatePassword(db, user_id, inData.data.password); if (!update_user_pwd_flag) { db.Rollback(); result.msg = "用户添加失败[2]"; return(result); } db.Commit(); result.msg = "添加成功"; result.result = true; } catch (Exception e) { db.Rollback(); result.msg = "用户添加失败[3]"; } return(result); }
public static double Caculatepnl(int portfolitid) { decimal amountbefore = 0; decimal amountafter = 0; double pnl = 0; List <Position> posilist = PositionDao.getPositionsByPortfolioId(portfolitid); foreach (Position p in posilist) { if (p.Type == "Stock") { int isin = p.Isin; amountafter += p.Quantity * p.Price; amountbefore += p.Quantity * PriceHistoryDao.getLastPriceHistorysByisin(isin).Price; } else { } } pnl = Convert.ToDouble((amountafter - amountbefore) / amountbefore); return(pnl); }
public ActionResult Detail(string ma) { PositionModel model = new PositionModel(); if (!string.IsNullOrWhiteSpace(ma)) { if (!new PermissionAttribute().PermissionAuthorization("Update", "POSITION")) { return(Json(false, JsonRequestBehavior.AllowGet)); } model = new PositionDao().detail(ma); model.isUpdate = true; } else { if (!new PermissionAttribute().PermissionAuthorization("Create", "POSITION")) { return(Json(false, JsonRequestBehavior.AllowGet)); } } return(PartialView("_DetailPosition", model)); }
public List <Application> GetApplicationsByPosition(int positionID) { Position position = new PositionDao().GetById(positionID, false); return(GetApplicationsByPosition(position)); }
/// <summary> /// 验证添加用户数据 /// </summary> /// <param name="data"></param> /// <returns></returns> private async Task <Result> VerifyAddUser(AddUserIn data) { Result result = new Result(); if (data == null) { result.msg = "参数错误"; return(result); } if (string.IsNullOrWhiteSpace(data.name?.Trim())) { result.msg = "姓名不能为空"; return(result); } data.name = data.name?.Trim(); if (!VerifyCommon.Name(data.name)) { result.msg = "姓名只能为中文"; return(result); } if (data.name.Length < 2 || data.name.Length > 4) { result.msg = "姓名只能为2-4个字符"; return(result); } if (string.IsNullOrWhiteSpace(data.user_name?.Trim())) { result.msg = "用户名不能为空"; return(result); } data.user_name = data.user_name?.Trim(); if (!VerifyCommon.UserName(data.user_name)) { result.msg = "用户名只能由英文、数字、下划线组成"; return(result); } if (data.user_name.Length < 5 || data.user_name.Length > 12) { result.msg = "用户名只能为5-12个字符"; return(result); } if (string.IsNullOrWhiteSpace(data.password?.Trim())) { result.msg = "密码不能为空"; return(result); } data.password = data.password?.Trim(); if (!VerifyCommon.Password(data.password)) { result.msg = "密码只能由英文、数字、下划线组成"; return(result); } if (data.password.Length < 6 || data.password.Length > 18) { result.msg = "密码只能为6-18个字符"; return(result); } if (string.IsNullOrWhiteSpace(data.position_id?.Trim())) { result.msg = "请填写职位"; return(result); } if (!int.TryParse(data.position_id, out int position_id) || position_id <= 0) { result.msg = "职位信息错误"; return(result); } DBHelper db = new DBHelper(); bool position_exist_flag = await PositionDao.IsExist(db, position_id); db.Close(); if (!position_exist_flag) { result.msg = "职位不存在"; return(result); } result.result = true; return(result); }
public IHttpActionResult Get() { return(Ok(PositionDao.getPositions())); }
public IHttpActionResult addPositions(Position c) { int changeLine = PositionDao.setPosition(c); return Ok(changeLine); }
public IHttpActionResult updatePositionById(Position c) { int changeLine = PositionDao.updatePositions(c); return(Ok(changeLine)); }
public ActionResult Load() { var data = new PositionDao().load(); return(Json(new { data = data }, JsonRequestBehavior.AllowGet)); }