예제 #1
0
파일: KcpdController.cs 프로젝트: 17/YunPos
        public ActionResult Edit(KspdModel model)
        {
            var res = HandleResult(() =>
            {
                model.id_masteruser = id_user_master;
                model.id_edit       = id_user;
                return(BusinessFactory.Td_Kc_Kspd_1.Update(model));
            });

            return(JsonString(res, 1));
        }
예제 #2
0
파일: KcpdController.cs 프로젝트: 17/YunPos
        public ActionResult Copy(KspdModel model)
        {
            var res = HandleResult(() =>
            {
                model.id_masteruser = id_user_master;
                model.id_create     = id_user;
                model.AutoAudit     = AutoAudit();
                return(BusinessFactory.Td_Kc_Kspd_1.Add(model));
            });

            return(JsonString(res, 1));
        }
예제 #3
0
        private void AdminAdd(BaseResult br, KspdModel model)
        {
            #region 参数验证
            if (model == null || string.IsNullOrEmpty(model.id_masteruser))
            {
                br.Success = false;
                br.Message.Add("参数有误!");
                return;
            }
            if (string.IsNullOrEmpty(model.dh))
            {
                br.Success = false;
                br.Message.Add("单号不能为空!");
                return;
            }
            if (string.IsNullOrEmpty(model.id_shop))
            {
                br.Success = false;
                br.Message.Add("请选择制单门店!");
                return;
            }
            if (string.IsNullOrEmpty(model.id_jbr))
            {
                br.Success = false;
                br.Message.Add("请选择经办人!");
                return;
            }
            if (string.IsNullOrWhiteSpace(model.json_data))
            {
                br.Success = false;
                br.Message.Add("请选择商品!");
                return;
            }
            #endregion
            Td_Kc_Kspd_1 entity = new Td_Kc_Kspd_1();
            #region
            entity.id_masteruser = model.id_masteruser;
            entity.id            = GetGuid;
            entity.dh            = model.dh;
            entity.rq            = model.rq;
            entity.id_shop       = model.id_shop;
            entity.bm_djlx       = Enums.Kspd.KC010.ToString();
            entity.id_jbr        = model.id_jbr;
            entity.flag_sh       = (byte)Enums.FlagSh.UnSh;
            entity.flag_cancel   = (byte)Enums.FlagCancel.NoCancel;
            entity.je_yk_mxtotal = model.je_yk_mxtotal;
            entity.bz            = model.bz;
            entity.id_create     = model.id_create;
            entity.rq_create     = DateTime.Now;
            entity.flag_delete   = (byte)Enums.FlagDelete.NoDelete;
            #endregion

            var kspdList2 = JSON.Deserialize <List <Td_Kc_Kspd_2> >(model.json_data);
            #region 验证表体数据
            if (!kspdList2.Any())
            {
                br.Success = false;
                br.Message.Add("请选择商品!");
                return;
            }
            var sort_id = 1;
            kspdList2.ForEach(a =>
            {
                a.id_masteruser = entity.id_masteruser;
                a.id_bill       = entity.id;
                a.id            = GetGuid;
                a.sort_id       = sort_id;
                a.rq_create     = entity.rq_create;
                CheckKspd2(a, br);
                sort_id++;
            });
            if (br.Message.Any())
            {
                var firstError = br.Message.FirstOrDefault();
                br.Message.Clear();
                br.Message.Add(firstError);
                return;
            }
            var groupList = kspdList2.GroupBy(a => a.id_kcsp, a => a).ToList();
            if (groupList.Any())
            {
                var item = groupList.FirstOrDefault(a => a.Count() > 1);
                if (item != null)
                {
                    var sameSpList = kspdList2.Where(k => k.id_kcsp == item.Key).ToList();
                    br.Success = false;
                    br.Message.Clear();
                    br.Message.Add(string.Format("第{0}行商品与第{1}行商品是同一库存商品,不能重复盘点!", sameSpList[0].sort_id, sameSpList[1].sort_id));
                    return;
                }
            }
            Hashtable param = new Hashtable();
            param.Add("id_masteruser", model.id_masteruser);
            param.Add("id_shop", model.id_shop);
            var id_kcsp_list = (from k in kspdList2 select k.id_kcsp).ToArray();
            param.Add("id_kcsp_list", id_kcsp_list);
            var list = Td_Kc_Kspd_2DAL.QureyKspd2LeftJoinKspd1(typeof(Td_Kc_Kspd_2), param);
            if (list.Any())
            {
                var first = list.FirstOrDefault();
                if (first != null)
                {
                    var hadsp = kspdList2.FirstOrDefault(k => k.id_kcsp == first.id_kcsp);
                    if (hadsp != null)
                    {
                        br.Success = false;
                        br.Message.Clear();
                        br.Message.Add(string.Format("在其他未审核盘点单中已存在第{0}行商品!", hadsp.sort_id));
                        return;
                    }
                }
            }
            #endregion
            DAL.Add(entity);
            DAL.AddRange(kspdList2);
            if (model.AutoAudit)
            {
                param.Clear();
                param.Add("id_masteruser", model.id_masteruser);
                param.Add("id_user", model.id_create);
                param.Add("id", entity.id);
                Sh <Td_Kc_Kspd_1>(br, param, "p_kc_kspd_sh");
            }
            br.Success = true;
        }