using System;
using System.Collections.Generic;
using System.Data;
using SuperMap.RealEstate.ServiceModel;
using Business = SuperMap.RealEstate.BasicArchives.Storage.Business;
namespace GSYWApi.Helper
{
///
/// 收银人员表相关方法
///
public class CASHWORKERHelper
{
#region 获取收银人员表列表
///
/// 获取收银人员表列表
///
///
///
///
///
///
///
///
/// 排序字段
///
public static List GetCASHWORKERList(Transaction transaction, int? ServerpartId,
int? CashWorker_Type, int? Worker_Valid, ref int TotalCount, int PageIndex = 1, int PageSize = 10, string SortStr = "")
{
List CASHWORKERList = new List();
string WhereSQL = "", RowFilterSQL = "";
//查询服务区内码
if (ServerpartId != null)
{
WhereSQL += (WhereSQL == "" ? "WHERE " : " AND ") + "SERVERPART_ID = " + ServerpartId;
}
//查询人员类型
if (CashWorker_Type != null)
{
WhereSQL += (WhereSQL == "" ? "WHERE " : " AND ") + "CASHWORKER_TYPE = " + CashWorker_Type;
}
//查询有效状态
if (Worker_Valid != null)
{
WhereSQL += (WhereSQL == "" ? "WHERE " : " AND ") + "WORKER_VALID = " + Worker_Valid;
}
DataTable dtCASHWORKER = new Business.CASHWORKER(transaction).FillDataTable(WhereSQL);
if (RowFilterSQL != "")
{
dtCASHWORKER.DefaultView.RowFilter = RowFilterSQL;
}
//排序:
dtCASHWORKER.DefaultView.Sort = SortStr;
dtCASHWORKER = dtCASHWORKER.DefaultView.ToTable();
//获取查询结果总记录条数
TotalCount = dtCASHWORKER.Rows.Count;
//根据传入的页码和每页显示条数返回结果
dtCASHWORKER = CommonHelper.GetDataTableWithPageSize(dtCASHWORKER, PageSize, PageIndex);
foreach (DataRow drCASHWORKER in dtCASHWORKER.Rows)
{
Model.CASHWORKERModel cashworkerModel = new Model.CASHWORKERModel();
cashworkerModel.CASHWORKER_ID = drCASHWORKER["CASHWORKER_ID"].TryParseToInt(); //员工内码
cashworkerModel.SERVERPART_ID = drCASHWORKER["SERVERPART_ID"].TryParseToInt(); //服务区内码
cashworkerModel.CASHWORKER_NAME = drCASHWORKER["CASHWORKER_NAME"].ToString(); //人员名称
cashworkerModel.CASHWORKER_LOGINNAME = drCASHWORKER["CASHWORKER_LOGINNAME"].ToString(); //人员账号
cashworkerModel.CASHWORKER_LOGINPWD = drCASHWORKER["CASHWORKER_LOGINPWD"].ToString(); //人员密码
cashworkerModel.WORK_OLD = drCASHWORKER["WORK_OLD"].ToString(); //人员工作年龄
cashworkerModel.LINKTEL = drCASHWORKER["LINKTEL"].ToString(); //人员联系方式
cashworkerModel.WORKER_ADDRESS = drCASHWORKER["WORKER_ADDRESS"].ToString(); //人员住址
cashworkerModel.WORKER_OTHER = drCASHWORKER["WORKER_OTHER"].ToString(); //员工收银权限
cashworkerModel.WORKER_CODE = drCASHWORKER["WORKER_CODE"].ToString(); //员工编号
cashworkerModel.WORKER_VALID = drCASHWORKER["WORKER_VALID"].TryParseToShort(); //有效状态
cashworkerModel.BIRTH = drCASHWORKER["BIRTH"].TryParseToDateTime(); //员工生日
cashworkerModel.HEALTHCERT = drCASHWORKER["HEALTHCERT"].TryParseToShort(); //健康证
cashworkerModel.POST = drCASHWORKER["POST"].ToString(); //岗位(用于判断稽核人员类型)
cashworkerModel.PERSONCERT = drCASHWORKER["PERSONCERT"].ToString(); //证件号码
cashworkerModel.EDUCATIONAL = drCASHWORKER["EDUCATIONAL"].TryParseToShort(); //教育情况
cashworkerModel.CASHWORKER_TYPE = drCASHWORKER["CASHWORKER_TYPE"].TryParseToShort(); //员工类型
cashworkerModel.DISCOUNT_RATE = drCASHWORKER["DISCOUNT_RATE"].TryParseToDouble(); //折扣率
cashworkerModel.OPERATE_DATE = drCASHWORKER["OPERATE_DATE"].TryParseToDateTime(); //添加时间
cashworkerModel.OPERATE_ID = drCASHWORKER["OPERATE_ID"].TryParseToInt(); //添加人内码
cashworkerModel.OPERATE_NAME = drCASHWORKER["OPERATE_NAME"].ToString(); //添加人名称
cashworkerModel.SERVERPART_CODE = drCASHWORKER["SERVERPART_CODE"].ToString(); //服务区编码
CASHWORKERList.Add(cashworkerModel);
}
return CASHWORKERList;
}
#endregion
#region 获取收银人员表明细
public static Model.CASHWORKERModel GetCASHWORKERDetail(Transaction transaction, int CASHWORKERId)
{
Model.CASHWORKERModel cashworkerModel = new Model.CASHWORKERModel();
Business.CASHWORKER _CASHWORKER = new Business.CASHWORKER(transaction);
_CASHWORKER.CASHWORKER_ID = CASHWORKERId;
if (_CASHWORKER.Select())
{
cashworkerModel.CASHWORKER_ID = _CASHWORKER.CASHWORKER_ID; //员工内码
cashworkerModel.SERVERPART_ID = _CASHWORKER.SERVERPART_ID; //服务区内码
cashworkerModel.CASHWORKER_NAME = _CASHWORKER.CASHWORKER_NAME; //人员名称
cashworkerModel.CASHWORKER_LOGINNAME = _CASHWORKER.CASHWORKER_LOGINNAME; //人员账号
cashworkerModel.CASHWORKER_LOGINPWD = _CASHWORKER.CASHWORKER_LOGINPWD; //人员密码
cashworkerModel.WORK_OLD = _CASHWORKER.WORK_OLD; //人员工作年龄
cashworkerModel.LINKTEL = _CASHWORKER.LINKTEL; //人员联系方式
cashworkerModel.WORKER_ADDRESS = _CASHWORKER.WORKER_ADDRESS; //人员住址
cashworkerModel.WORKER_OTHER = _CASHWORKER.WORKER_OTHER; //员工收银权限
cashworkerModel.WORKER_CODE = _CASHWORKER.WORKER_CODE; //员工编号
cashworkerModel.WORKER_VALID = _CASHWORKER.WORKER_VALID; //有效状态
cashworkerModel.BIRTH = _CASHWORKER.BIRTH; //员工生日
cashworkerModel.HEALTHCERT = _CASHWORKER.HEALTHCERT; //健康证
cashworkerModel.POST = _CASHWORKER.POST; //岗位(用于判断稽核人员类型)
cashworkerModel.PERSONCERT = _CASHWORKER.PERSONCERT; //证件号码
cashworkerModel.EDUCATIONAL = _CASHWORKER.EDUCATIONAL; //教育情况
cashworkerModel.CASHWORKER_TYPE = _CASHWORKER.CASHWORKER_TYPE; //员工类型
cashworkerModel.DISCOUNT_RATE = _CASHWORKER.DISCOUNT_RATE; //折扣率
cashworkerModel.OPERATE_DATE = _CASHWORKER.OPERATE_DATE; //添加时间
cashworkerModel.OPERATE_ID = _CASHWORKER.OPERATE_ID; //添加人内码
cashworkerModel.OPERATE_NAME = _CASHWORKER.OPERATE_NAME; //添加人名称
cashworkerModel.SERVERPART_CODE = _CASHWORKER.SERVERPART_CODE; //服务区编码
}
return cashworkerModel;
}
#endregion
#region 同步收银人员表
public static bool SynchroCASHWORKER(Transaction transaction, Model.CASHWORKERModel cashworkerModel)
{
bool SynchroFlag = true;
if (string.IsNullOrWhiteSpace(cashworkerModel.SERVERPART_CODE) && cashworkerModel.SERVERPART_ID != null)
{
Business.SERVERPART _SERVERPART = new Business.SERVERPART(transaction);
_SERVERPART.SERVERPART_ID = cashworkerModel.SERVERPART_ID;
if (_SERVERPART.Select())
{
cashworkerModel.SERVERPART_CODE = _SERVERPART.SERVERPART_CODE;
}
}
switch (cashworkerModel.CASHWORKER_TYPE)
{
case 1:
cashworkerModel.WORKER_OTHER = "100010010000101000000000000000000000000000000010000110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
break;
case 2:
cashworkerModel.WORKER_OTHER = "011101000000000001000000000000000011000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
break;
case 25:
cashworkerModel.WORKER_OTHER = "000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
break;
}
Business.CASHWORKER _CASHWORKER = new Business.CASHWORKER(transaction);
if (cashworkerModel.CASHWORKER_ID != null)
{
_CASHWORKER.CASHWORKER_ID = cashworkerModel.CASHWORKER_ID;
if (_CASHWORKER.Select())
{
SynchroModelToObject(_CASHWORKER, cashworkerModel);
_CASHWORKER.Update();
}
else
{
SynchroFlag = false;
}
}
else
{
SynchroModelToObject(_CASHWORKER, cashworkerModel);
_CASHWORKER.Insert();
}
return SynchroFlag;
}
#region 赋值收银人员表数据对象
public static void SynchroModelToObject(Business.CASHWORKER _CASHWORKER, Model.CASHWORKERModel cashworkerModel)
{
_CASHWORKER.SERVERPART_ID = cashworkerModel.SERVERPART_ID; //服务区内码
_CASHWORKER.CASHWORKER_NAME = cashworkerModel.CASHWORKER_NAME; //人员名称
_CASHWORKER.CASHWORKER_LOGINNAME = cashworkerModel.CASHWORKER_LOGINNAME; //人员账号
_CASHWORKER.CASHWORKER_LOGINPWD = cashworkerModel.CASHWORKER_LOGINPWD; //人员密码
_CASHWORKER.WORK_OLD = cashworkerModel.WORK_OLD; //人员工作年龄
_CASHWORKER.LINKTEL = cashworkerModel.LINKTEL; //人员联系方式
_CASHWORKER.WORKER_ADDRESS = cashworkerModel.WORKER_ADDRESS; //人员住址
_CASHWORKER.WORKER_OTHER = cashworkerModel.WORKER_OTHER; //员工收银权限
_CASHWORKER.WORKER_CODE = cashworkerModel.WORKER_CODE; //员工编号
_CASHWORKER.WORKER_VALID = cashworkerModel.WORKER_VALID; //有效状态
_CASHWORKER.BIRTH = cashworkerModel.BIRTH; //员工生日
_CASHWORKER.HEALTHCERT = cashworkerModel.HEALTHCERT; //健康证
_CASHWORKER.POST = cashworkerModel.POST; //岗位(用于判断稽核人员类型)
_CASHWORKER.PERSONCERT = cashworkerModel.PERSONCERT; //证件号码
_CASHWORKER.EDUCATIONAL = cashworkerModel.EDUCATIONAL; //教育情况
_CASHWORKER.CASHWORKER_TYPE = cashworkerModel.CASHWORKER_TYPE; //员工类型
_CASHWORKER.DISCOUNT_RATE = cashworkerModel.DISCOUNT_RATE; //折扣率
_CASHWORKER.OPERATE_DATE = cashworkerModel.OPERATE_DATE; //添加时间
_CASHWORKER.OPERATE_ID = cashworkerModel.OPERATE_ID; //添加人内码
_CASHWORKER.OPERATE_NAME = cashworkerModel.OPERATE_NAME; //添加人名称
_CASHWORKER.SERVERPART_CODE = cashworkerModel.SERVERPART_CODE; //服务区编码
}
#endregion
#endregion
#region 删除收银人员表
public static bool DeleteCASHWORKER(Transaction transaction, int CASHWORKERId)
{
bool DeleteFlag = false;
if (CASHWORKERId != null)
{
Business.CASHWORKER _CASHWORKER = new Business.CASHWORKER(transaction);
_CASHWORKER.CASHWORKER_ID = CASHWORKERId;
if (_CASHWORKER.Select())
{
_CASHWORKER.Delete();
DeleteFlag = true;
}
}
return DeleteFlag;
}
#endregion
}
}