using System; using System.Collections.Generic; using System.Data; using SuperMap.RealEstate.ServiceModel; using Business = SuperMap.RealEstate.ReportDataAnalysis.Business; using GSYWApi.Helper; namespace GSYWApi.GeneralMethod { /// /// 收银员交班表相关方法 /// public class PERSONSELLHelper { #region 获取收银员交班表列表 /// /// 获取收银员交班表列表 /// /// 事务管理器 /// 查询结果总数 /// 查询条件对象 public static List GetPERSONSELLList(Transaction transaction, ref int TotalCount, Models.SearchModel searchModel) { List PERSONSELLList = new List(); string WhereSQL = "", RowFilterSQL = ""; if (searchModel.SearchParameter != null) { WhereSQL = OperationDataHelper.GetWhereSQL( searchModel.SearchParameter, searchModel.QueryType, "", "SELL_ENDDATE", "SELL_STARTDATE"); if (WhereSQL != "") { WhereSQL = "WHERE " + WhereSQL; } //查询开始时间 if (searchModel.SearchParameter.SELL_STARTDATE != null) { WhereSQL += (WhereSQL == "" ? "WHERE " : " AND ") + "SELL_ENDDATE >= TO_DATE('" + searchModel.SearchParameter.SELL_STARTDATE.ToString().Split(' ')[0] + "','YYYY/MM/DD')"; } //查询结束时间 if (searchModel.SearchParameter.SELL_ENDDATE != null) { WhereSQL += (WhereSQL == "" ? "WHERE " : " AND ") + "SELL_ENDDATE < TO_DATE('" + searchModel.SearchParameter.SELL_ENDDATE.ToString().Split(' ')[0] + "','YYYY/MM/DD') + 1"; } } DataTable dtPERSONSELL = new Business.PERSONSELL(transaction).FillDataTable(WhereSQL); //增加组合查询条件 if (searchModel.keyWord != null && !string.IsNullOrWhiteSpace(searchModel.keyWord.Key)) { foreach (string KeyName in searchModel.keyWord.Key.Split(',')) { RowFilterSQL += (RowFilterSQL == "" ? "" : " or ") + KeyName + " like '%" + searchModel.keyWord.Value + "%'"; } } if (RowFilterSQL != "") { dtPERSONSELL.DefaultView.RowFilter = RowFilterSQL; } //排序: dtPERSONSELL.DefaultView.Sort = searchModel.SortStr; dtPERSONSELL = dtPERSONSELL.DefaultView.ToTable(); //获取查询结果总记录条数 TotalCount = dtPERSONSELL.Rows.Count; //根据传入的页码和每页显示条数返回结果 if (searchModel.PageSize > 0) { dtPERSONSELL = CommonHelper.GetDataTableWithPageSize(dtPERSONSELL, searchModel.PageSize, searchModel.PageIndex); } else { searchModel.PageSize = TotalCount; if (searchModel.PageIndex == 0) { searchModel.PageIndex = 1; } } foreach (DataRow drPERSONSELL in dtPERSONSELL.Rows) { Model.PERSONSELLModel personsellModel = new Model.PERSONSELLModel(); personsellModel.PERSONSELL_ID = drPERSONSELL["PERSONSELL_ID"].TryParseToInt(); //内码 personsellModel.SERVERPART_ID = drPERSONSELL["SERVERPART_ID"].TryParseToInt(); //服务区内码 personsellModel.SERVERPARTCODE = drPERSONSELL["SERVERPARTCODE"].ToString(); //服务区编码 personsellModel.SERVERPART_NAME = drPERSONSELL["SERVERPART_NAME"].ToString(); //服务区名称 personsellModel.PROVINCE_CODE = drPERSONSELL["PROVINCE_CODE"].TryParseToInt(); //省份编码 personsellModel.SELL_ENDDATE = drPERSONSELL["SELL_ENDDATE"].TryParseToDateTime(); //交班时间 personsellModel.SELL_STARTDATE = drPERSONSELL["SELL_STARTDATE"].TryParseToDateTime(); //销售开始时间 personsellModel.SHOPCODE = drPERSONSELL["SHOPCODE"].ToString(); //门店编码 personsellModel.SHOPNAME = drPERSONSELL["SHOPNAME"].ToString(); //门店名称 personsellModel.MACHINECODE = drPERSONSELL["MACHINECODE"].ToString(); //机器名 personsellModel.CASHWORKER_CODE = drPERSONSELL["CASHWORKER_CODE"].ToString(); //员工编码 personsellModel.CASHIER_NAME = drPERSONSELL["CASHIER_NAME"].ToString(); //员工名称 personsellModel.TICKETCOUNT = drPERSONSELL["TICKETCOUNT"].TryParseToDouble(); //TICKETCOUNT personsellModel.TOTALCOUNT = drPERSONSELL["TOTALCOUNT"].TryParseToDouble(); //TOTALCOUNT personsellModel.TOTALSELLAMOUNT = drPERSONSELL["TOTALSELLAMOUNT"].TryParseToDouble(); //销售金额 personsellModel.TOTALOFFAMOUNT = drPERSONSELL["TOTALOFFAMOUNT"].TryParseToDouble(); //TOTALOFFAMOUNT personsellModel.CASH = drPERSONSELL["CASH"].TryParseToDouble(); //CASH personsellModel.CREDITCARD = drPERSONSELL["CREDITCARD"].TryParseToDouble(); //CREDITCARD personsellModel.TICKETBILL = drPERSONSELL["TICKETBILL"].TryParseToDouble(); //TICKETBILL personsellModel.VIPPERSON = drPERSONSELL["VIPPERSON"].TryParseToDouble(); //VIPPERSON personsellModel.COSTBILL = drPERSONSELL["COSTBILL"].TryParseToDouble(); //COSTBILL personsellModel.OTHERPAY = drPERSONSELL["OTHERPAY"].TryParseToDouble(); //OTHERPAY personsellModel.CASHPAY = drPERSONSELL["CASHPAY"].TryParseToDouble(); //缴款金额 personsellModel.DIFFERENT_PRICE = drPERSONSELL["DIFFERENT_PRICE"].TryParseToDouble(); //长短款 personsellModel.DOWNLOAD_DATE = drPERSONSELL["DOWNLOAD_DATE"].TryParseToDateTime(); //DOWNLOAD_DATE personsellModel.VALID = drPERSONSELL["VALID"].TryParseToShort(); //VALID personsellModel.PERSONSELL_DESC = drPERSONSELL["PERSONSELL_DESC"].ToString(); //PERSONSELL_DESC personsellModel.OPERATE_TYPE = drPERSONSELL["OPERATE_TYPE"].TryParseToShort(); //OPERATE_TYPE personsellModel.ACTUAL_CASHPAY = drPERSONSELL["ACTUAL_CASHPAY"].TryParseToDouble(); //ACTUAL_CASHPAY personsellModel.CORRECT_PRICE = drPERSONSELL["CORRECT_PRICE"].TryParseToDouble(); //CORRECT_PRICE PERSONSELLList.Add(personsellModel); } return PERSONSELLList; } #endregion #region 获取收银员交班表明细 /// /// 获取收银员交班表明细 /// /// 事务管理器 /// 收银员交班表内码 public static Model.PERSONSELLModel GetPERSONSELLDetail(Transaction transaction, int PERSONSELLId) { Model.PERSONSELLModel personsellModel = new Model.PERSONSELLModel(); Business.PERSONSELL _PERSONSELL = new Business.PERSONSELL(transaction); _PERSONSELL.PERSONSELL_ID = PERSONSELLId; if (_PERSONSELL.Select()) { personsellModel.PERSONSELL_ID = _PERSONSELL.PERSONSELL_ID; //内码 personsellModel.SERVERPART_ID = _PERSONSELL.SERVERPART_ID; //服务区内码 personsellModel.SERVERPARTCODE = _PERSONSELL.SERVERPARTCODE; //服务区编码 personsellModel.SERVERPART_NAME = _PERSONSELL.SERVERPART_NAME; //服务区名称 personsellModel.PROVINCE_CODE = _PERSONSELL.PROVINCE_CODE; //省份编码 personsellModel.SELL_ENDDATE = _PERSONSELL.SELL_ENDDATE; //交班时间 personsellModel.SELL_STARTDATE = _PERSONSELL.SELL_STARTDATE; //销售开始时间 personsellModel.SHOPCODE = _PERSONSELL.SHOPCODE; //门店编码 personsellModel.SHOPNAME = _PERSONSELL.SHOPNAME; //门店名称 personsellModel.MACHINECODE = _PERSONSELL.MACHINECODE; //机器名 personsellModel.CASHWORKER_CODE = _PERSONSELL.CASHWORKER_CODE; //员工编码 personsellModel.CASHIER_NAME = _PERSONSELL.CASHIER_NAME; //员工名称 personsellModel.TICKETCOUNT = _PERSONSELL.TICKETCOUNT; //TICKETCOUNT personsellModel.TOTALCOUNT = _PERSONSELL.TOTALCOUNT; //TOTALCOUNT personsellModel.TOTALSELLAMOUNT = _PERSONSELL.TOTALSELLAMOUNT; //销售金额 personsellModel.TOTALOFFAMOUNT = _PERSONSELL.TOTALOFFAMOUNT; //TOTALOFFAMOUNT personsellModel.CASH = _PERSONSELL.CASH; //CASH personsellModel.CREDITCARD = _PERSONSELL.CREDITCARD; //CREDITCARD personsellModel.TICKETBILL = _PERSONSELL.TICKETBILL; //TICKETBILL personsellModel.VIPPERSON = _PERSONSELL.VIPPERSON; //VIPPERSON personsellModel.COSTBILL = _PERSONSELL.COSTBILL; //COSTBILL personsellModel.OTHERPAY = _PERSONSELL.OTHERPAY; //OTHERPAY personsellModel.CASHPAY = _PERSONSELL.CASHPAY; //缴款金额 personsellModel.DIFFERENT_PRICE = _PERSONSELL.DIFFERENT_PRICE; //长短款 personsellModel.DOWNLOAD_DATE = _PERSONSELL.DOWNLOAD_DATE; //DOWNLOAD_DATE personsellModel.VALID = _PERSONSELL.VALID; //VALID personsellModel.PERSONSELL_DESC = _PERSONSELL.PERSONSELL_DESC; //PERSONSELL_DESC personsellModel.OPERATE_TYPE = _PERSONSELL.OPERATE_TYPE; //OPERATE_TYPE personsellModel.ACTUAL_CASHPAY = _PERSONSELL.ACTUAL_CASHPAY; //ACTUAL_CASHPAY personsellModel.CORRECT_PRICE = _PERSONSELL.CORRECT_PRICE; //CORRECT_PRICE } return personsellModel; } #endregion #region 同步收银员交班表 /// /// 赋值收银员交班表数据对象 /// /// 事务管理器 /// 收银员交班表数据对象 public static bool SynchroPERSONSELL(Transaction transaction, Model.PERSONSELLModel personsellModel) { bool SynchroFlag = true; Business.PERSONSELL _PERSONSELL = new Business.PERSONSELL(transaction); if (personsellModel.PERSONSELL_ID != null) { _PERSONSELL.PERSONSELL_ID = personsellModel.PERSONSELL_ID; if (_PERSONSELL.Select()) { SynchroModelToObject(_PERSONSELL, personsellModel); _PERSONSELL.Update(); } else { SynchroFlag = false; } } else { SynchroModelToObject(_PERSONSELL, personsellModel); _PERSONSELL.Insert(); } return SynchroFlag; } #region 赋值收银员交班表数据对象 /// /// 赋值收银员交班表数据对象 /// /// /// public static void SynchroModelToObject(Business.PERSONSELL _PERSONSELL, Model.PERSONSELLModel personsellModel) { _PERSONSELL.SERVERPART_ID = personsellModel.SERVERPART_ID; //服务区内码 _PERSONSELL.SERVERPARTCODE = personsellModel.SERVERPARTCODE; //服务区编码 _PERSONSELL.SERVERPART_NAME = personsellModel.SERVERPART_NAME; //服务区名称 _PERSONSELL.PROVINCE_CODE = personsellModel.PROVINCE_CODE; //省份编码 _PERSONSELL.SELL_ENDDATE = personsellModel.SELL_ENDDATE; //交班时间 _PERSONSELL.SELL_STARTDATE = personsellModel.SELL_STARTDATE; //销售开始时间 _PERSONSELL.SHOPCODE = personsellModel.SHOPCODE; //门店编码 _PERSONSELL.SHOPNAME = personsellModel.SHOPNAME; //门店名称 _PERSONSELL.MACHINECODE = personsellModel.MACHINECODE; //机器名 _PERSONSELL.CASHWORKER_CODE = personsellModel.CASHWORKER_CODE; //员工编码 _PERSONSELL.CASHIER_NAME = personsellModel.CASHIER_NAME; //员工名称 _PERSONSELL.TICKETCOUNT = personsellModel.TICKETCOUNT; //TICKETCOUNT _PERSONSELL.TOTALCOUNT = personsellModel.TOTALCOUNT; //TOTALCOUNT _PERSONSELL.TOTALSELLAMOUNT = personsellModel.TOTALSELLAMOUNT; //销售金额 _PERSONSELL.TOTALOFFAMOUNT = personsellModel.TOTALOFFAMOUNT; //TOTALOFFAMOUNT _PERSONSELL.CASH = personsellModel.CASH; //CASH _PERSONSELL.CREDITCARD = personsellModel.CREDITCARD; //CREDITCARD _PERSONSELL.TICKETBILL = personsellModel.TICKETBILL; //TICKETBILL _PERSONSELL.VIPPERSON = personsellModel.VIPPERSON; //VIPPERSON _PERSONSELL.COSTBILL = personsellModel.COSTBILL; //COSTBILL _PERSONSELL.OTHERPAY = personsellModel.OTHERPAY; //OTHERPAY _PERSONSELL.CASHPAY = personsellModel.CASHPAY; //缴款金额 _PERSONSELL.DIFFERENT_PRICE = personsellModel.DIFFERENT_PRICE; //长短款 _PERSONSELL.DOWNLOAD_DATE = personsellModel.DOWNLOAD_DATE; //DOWNLOAD_DATE _PERSONSELL.VALID = personsellModel.VALID; //VALID _PERSONSELL.PERSONSELL_DESC = personsellModel.PERSONSELL_DESC; //PERSONSELL_DESC _PERSONSELL.OPERATE_TYPE = personsellModel.OPERATE_TYPE; //OPERATE_TYPE _PERSONSELL.ACTUAL_CASHPAY = personsellModel.ACTUAL_CASHPAY; //ACTUAL_CASHPAY _PERSONSELL.CORRECT_PRICE = personsellModel.CORRECT_PRICE; //CORRECT_PRICE } #endregion #endregion #region 删除收银员交班表 /// /// 删除收银员交班表 /// /// 事务管理器 /// 收银员交班表内码 public static bool DeletePERSONSELL(Transaction transaction, int? PERSONSELLId) { bool DeleteFlag = false; if (PERSONSELLId != null) { Business.PERSONSELL _PERSONSELL = new Business.PERSONSELL(transaction); _PERSONSELL.PERSONSELL_ID = PERSONSELLId; if (_PERSONSELL.Select()) { _PERSONSELL.VALID = 0; DeleteFlag = _PERSONSELL.Update(); } } return DeleteFlag; } #endregion } }