예제 #1
0
        /// <summary>
        /// 根据ID获取会员实体
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public M_Member Get_MemberById(string id)
        {
            var sql = @"select ID,UserName,WeChatID=WeiXinID,Unionid from MemberLogin where ID=@ID";

            SqlParameter[] parameters = new SqlParameter[]
            {
                new SqlParameter("@ID", id)
            };
            var dt = DbHelperSQL.Query(sql, parameters).Tables[0];

            return(CommonTool.DataTableConvertToModel <M_Member>(dt));
        }
예제 #2
0
        /// <summary>
        /// 是否已经参与过项目
        /// </summary>
        /// <param name="pid"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public M_ProjectJoin GetProjectJoinModel(string pid, string userId)
        {
            var sql = @"select Top 1 * from dbo.ProjectJoin where [ProjectId]=@ProjectId and [MemberId]=@MemberId";

            SqlParameter[] parameters = new SqlParameter[] {
                new SqlParameter("@ProjectId", pid),
                new SqlParameter("@MemberId", userId),
            };
            var dt = DbHelperSQL.Query(sql, parameters).Tables[0];

            return(CommonTool.DataTableConvertToModel <M_ProjectJoin>(dt));
        }
예제 #3
0
        /// <summary>
        /// 根据ID获取参数Model
        /// </summary>
        /// <param name="ID"></param>
        /// <returns></returns>
        public M_ProjectPara GetProjectParaModel(int ID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 ID,ProjectID,ParaS,ParaMark,ParaUse from ProjectPara ");
            strSql.Append(" where ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ID", ID)
            };
            var dt = DbHelperSQL.Query(strSql.ToString(), parameters).Tables[0];

            return(CommonTool.DataTableConvertToModel <M_ProjectPara>(dt));
        }
예제 #4
0
        /// <summary>
        /// 答问卷,分配参数
        /// </summary>
        /// <param name="model"></param>
        /// <param name="joinLink"></param>
        /// <returns></returns>
        public bool JoinSurvey(M_ProjectJoin model, out string joinLink)
        {
            /*
             * 参与流程
             * 1.分配参数
             * 2.更新参数
             * 3.添加参与记录
             * 4.更新抽样
             */
            lock (_lock)
            {
                var res = false;
                joinLink = "";

                //获取一个未使用的参数
                string         query      = "select top 1 * from dbo.ProjectPara where [ProjectID]=@ProjectID and [ParaUse]=@ParaUse Order By ID";
                SqlParameter[] parameters =
                {
                    new SqlParameter("@ProjectID", model.ProjectId),
                    new SqlParameter("@ParaUse",   "0"),
                };
                var dt       = DbHelperSQL.Query(query.ToString(), parameters).Tables[0];
                var paraInfo = CommonTool.DataTableConvertToModel <M_ProjectPara>(dt);
                if (paraInfo == null)
                {
                    joinLink = "参数已分配完";
                    return(res);
                }

                //更新参数使用状态
                string         update1     = "update dbo.ProjectPara set [ParaUse]=@ParaUseNew where ID=@ID and ParaUse=@ParaUseOld";
                SqlParameter[] parameters1 =
                {
                    new SqlParameter("@ParaUseNew", "1"),
                    new SqlParameter("@ID",         paraInfo.ID),
                    new SqlParameter("@ParaUseOld", "0"),
                };

                //添加参与记录
                string         add1        = "insert into ProjectJoin(ProjectId,MemberId,JoinTime,Integral,State,ParaID,JoinType,IsJoin,ReturnTime,IsCheck) values (@ProjectId,@MemberId,@JoinTime,@Integral,@State,@ParaID,@JoinType,@IsJoin,@ReturnTime,@IsCheck);";
                SqlParameter[] parameters2 =
                {
                    new SqlParameter("@ProjectId",  model.ProjectId),
                    new SqlParameter("@MemberId",   model.MemberId),
                    new SqlParameter("@JoinTime",   model.JoinTime),
                    new SqlParameter("@Integral",   model.Integral),
                    new SqlParameter("@State",      model.State),
                    new SqlParameter("@ParaID",     paraInfo.ID),
                    new SqlParameter("@JoinType",   model.JoinType),
                    new SqlParameter("@IsJoin",     model.IsJoin),
                    new SqlParameter("@ReturnTime", model.ReturnTime),
                    new SqlParameter("@IsCheck",    model.IsCheck),
                };

                //更新抽样信息
                string         update2     = "update dbo.ProjectSample set [ParaID]=@ParaID,[IsJoin]=@IsJoin where [ProjectID]=@ProjectID and [MemberID]=@MemberID";
                SqlParameter[] parameters3 =
                {
                    new SqlParameter("@ParaID",    paraInfo.ID),
                    new SqlParameter("@IsJoin",                  1),
                    new SqlParameter("@ProjectID", model.ProjectId),
                    new SqlParameter("@MemberID",  model.MemberId),
                };

                List <string>         sqlList = new List <string>();
                List <SqlParameter[]> spaList = new List <SqlParameter[]>();
                sqlList.AddRange(new string[] { update1, add1, update2 });
                spaList.AddRange(new List <SqlParameter[]> {
                    parameters1, parameters2, parameters3
                });

                var msg = "";
                var num = DbHelperSQL.ExecuteSqlTran(sqlList, spaList, out msg);
                if (num > 0)
                {
                    res      = true;
                    joinLink = paraInfo.ParaS;
                }
                else
                {
                    joinLink = msg;
                }
                return(res);
            }
        }