Esempio n. 1
0
    //##############################################################################################
    // Get the lookup data for the given material, then build a list of the sounds based on the
    // type. Use the fallback if indicated.
    //
    // This value should be cached by the callee, and only re-evaluated when materials change.
    //##############################################################################################
    public static List <AudioClip> GetMaterialSounds(MaterialName materialName, MaterialSoundType soundType, bool useFallbackIfNotFound = false)
    {
        List <AudioClip> data = new List <AudioClip>();

        if (instance.lookupDataDictionary.ContainsKey(materialName))
        {
            MaterialLookupEntry lookup = instance.lookupDataDictionary[materialName];

            foreach (MaterialSound materialSound in lookup.sounds)
            {
                if (materialSound.type == soundType)
                {
                    data.Add(materialSound.sound);
                }
            }
        }

        if ((materialName == MaterialName.Fallback || (data.Count == 0 && useFallbackIfNotFound)) && instance.fallback != null)
        {
            foreach (MaterialSound materialSound in instance.fallback.sounds)
            {
                if (materialSound.type == soundType)
                {
                    data.Add(materialSound.sound);
                }
            }
        }

        return(data);
    }
Esempio n. 2
0
 /// <summary>
 /// Konstruktor pro nově vzniklý materiál
 /// </summary>
 /// <param name="materialNames">Jméno materiálu</param>
 /// <param name="price">Cena za kus</param>
 /// <param name="materialQuantity">Množství materiálu</param>
 public Material(MaterialName materialNames, double price, int materialQuantity)
 {
     MaterialNames    = materialNames;
     MaterialPrice    = price;
     MaterialQuantity = materialQuantity;
     PurchaseDateTime = DateTime.Now;
 }
Esempio n. 3
0
        //method to update submission of material
        private async void OpenUpdateSubmissionExecute(object obj)
        {
            UpdateStatus = string.Empty;
            Material material = new Material();

            if (MaterialName.ToLower() == Material.MaterialName.ToLower())
            {
                material = await MaterialAuth.GetMaterialByName(MaterialName);
            }
            if (material != null)
            {
                if (CollectorVM.Collector.MaterialCollection.Contains(material.MaterialID))
                {
                    Material = material;
                    UpdateAllSub();
                    await Application.Current.MainPage.DisplayAlert("Record Submitted Material", "Submission Approved!.", "OK");

                    await Application.Current.MainPage.Navigation.PopAsync();
                }
                else
                {
                    UpdateStatus = "This material does not belong in your collection";
                }
            }
            else
            {
                UpdateStatus = "Material for recycling not found!";
            }
        }
Esempio n. 4
0
    //##############################################################################################
    // Get the lookup data for the given material, then build a list of the spawnables based on the
    // type. Use the fallback if indicated.
    //
    // This value should be cached by the callee, and only re-evaluated when materials change.
    //##############################################################################################
    public static List <GameObject> GetMaterialSpawnables(MaterialName materialName, MaterialSpawnableType spawnableType, bool useFallbackIfNotFound = false)
    {
        List <GameObject> data = new List <GameObject>();

        if (instance.lookupDataDictionary.ContainsKey(materialName))
        {
            MaterialLookupEntry lookup = instance.lookupDataDictionary[materialName];

            foreach (MaterialSpawnable materialSpawnable in lookup.spawnables)
            {
                if (materialSpawnable.type == spawnableType)
                {
                    data.Add(materialSpawnable.spawnable);
                }
            }
        }

        if ((materialName == MaterialName.Fallback || (data.Count == 0 && useFallbackIfNotFound)) && instance.fallback != null)
        {
            foreach (MaterialSpawnable materialSpawnable in instance.fallback.spawnables)
            {
                if (materialSpawnable.type == spawnableType)
                {
                    data.Add(materialSpawnable.spawnable);
                }
            }
        }

        return(data);
    }
Esempio n. 5
0
 /// <summary>
 /// Konstruktor pro materiál vzniklí tříděním kolekcí
 /// </summary>
 /// <param name="materialNames">Jméno materiálu</param>
 /// <param name="price">Cena za kus</param>
 /// <param name="materialQuantity">Množství materiálu</param>
 /// <param name="purchaseDateTime">Datum nákupu materiálu</param>
 public Material(MaterialName materialNames, double price, int materialQuantity, DateTime purchaseDateTime)
 {
     MaterialNames    = materialNames;
     MaterialPrice    = price;
     MaterialQuantity = materialQuantity;
     PurchaseDateTime = purchaseDateTime;
 }
Esempio n. 6
0
 private void Awake()
 {
     GetEWScriptableObject();
     matSearch        = (MaterialSearch)eWSettings.materialSearch;
     matName          = (MaterialName)eWSettings.materialName;
     moveMaterials    = eWSettings.moveMaterials;
     assignmentMethod = (AssignmentMethod)eWSettings.assignmentMethod;
 }
Esempio n. 7
0
 public static dynamic GetTSObject(MaterialName dynObject)
 {
     if (dynObject is null)
     {
         return(null);
     }
     return(dynObject.teklaObject);
 }
        public async Task <ActionResult> EditAddUnit(MaterialBuyData materialBuyData)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (ModelState.IsValid)
            {
                //                db.Entry(materialBuyData).State = EntityState.Modified;
                MaterialName mName = db.MaterialNames.FirstOrDefault(m => m.NameVn.Equals(materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn) ||
                                                                     m.NameVn.Equals(materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameKr));
                if (mName != null)
                {
                    materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialNameID = mName.ID;
                    materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName   = mName;
                }
                else
                {
                    if (materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameKr == null)
                    {
                        materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameKr = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn;
                    }

                    db.MaterialNames.Add(materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName);
                }
                MaterialBuy materialBuy = db.MaterialBuys.FirstOrDefault(m => m.ID == materialBuyData.MaterialBuy.ID);
                materialBuyData.MaterialBuyUnit.MaterialUnitPrice.CompanyID = materialBuy.CompanyID;
                materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Date      = materialBuy.Date;

                MaterialUnitPrice muPrice = db.MaterialUnitPrices.OrderBy(m => m.Date)
                                            .FirstOrDefault(m => m.MaterialName.NameVn.Equals(materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn));

                if (muPrice == null || muPrice.Price != materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Price)
                {
                    db.MaterialUnitPrices.Add(materialBuyData.MaterialBuyUnit.MaterialUnitPrice);
                }
                else
                {
                    materialBuyData.MaterialBuyUnit.MaterialUnitPrice   = muPrice;
                    materialBuyData.MaterialBuyUnit.MaterialUnitPriceID = muPrice.ID;
                }

                db.MaterialBuyUnits.Add(materialBuyData.MaterialBuyUnit);
                materialBuy.MaterialBuyUnits.Add(materialBuyData.MaterialBuyUnit);

                await db.SaveChangesAsync();

                return(RedirectToAction("EditAddUnit", new { id = materialBuyData.MaterialBuy.ID }));
            }
            return(View(materialBuyData));
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            MaterialName materialName = await db.MaterialNames.FindAsync(id);

            db.MaterialNames.Remove(materialName);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Esempio n. 10
0
 public MaterialEntity(
     string materialManagementCode,
     string materialCode,
     string materialName,
     float materialQuantity,
     string materialUnit,
     DateTime materialExpirationDate)
 {
     MaterialManagementCode = new MaterialManagementCode(materialManagementCode);
     MaterialCode           = new MaterialCode(materialCode);
     MaterialName           = new MaterialName(materialName);
     MaterialQuantity       = new MaterialQuantity(materialQuantity);
     MaterialUnit           = new MaterialUnit(materialUnit);
     MaterialExpirationDate = new MaterialExpirationDate(materialExpirationDate);//SL
 }
        public async Task <ActionResult> Edit([Bind(Include = "ID,NameVn,NameKr,Sort,Translate")] MaterialName materialName)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (ModelState.IsValid)
            {
                db.Entry(materialName).State = EntityState.Modified;
                await db.SaveChangesAsync();

//                return RedirectToAction("Index");
                return(RedirectToAction("Index", new { translate = Session["Translate"] }));
            }
            return(View(materialName));
        }
        public async Task <ActionResult> Create([Bind(Include = "ID,NameVn,NameKr,Sort")] MaterialName materialName)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (ModelState.IsValid)
            {
                db.MaterialNames.Add(materialName);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(materialName));
        }
Esempio n. 13
0
 IEnumerator UpdateHighlightedMaterialNameCoroutine()
 {
     while (true)
     {
         if (RecipeManager.Instance.RecipeNameList.Count != 0)
         {
             if (!IsClickedRightMaterial)
             {
                 HighlightedMaterialName = RecipeManager.Instance.RecipeNameList[0];
             }
             else
             {
                 HighlightedMaterialName = RecipeManager.Instance.RecipeNameList[MaterialChain.Count + 1];
             }
         }
         yield return(new WaitForEndOfFrame());
     }
 }
        // GET: MaterialName/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            MaterialName materialName = await db.MaterialNames.FindAsync(id);

            if (materialName == null)
            {
                return(HttpNotFound());
            }
            return(View(materialName));
        }
Esempio n. 15
0
        public void RainbowColorBall()
        {
            int             index        = Random.Range(0, StageManager.Instance.stageInfos[Data.DataManager.Instance.selected_stage].materials.Length);
            MaterialName    materialName = StageManager.Instance.stageInfos[Data.DataManager.Instance.selected_stage].materials[index].GetComponent <Material>().materialName;
            List <Material> materials    = new List <Material>();

            foreach (var item in MaterialManager.Instance.Objects)
            {
                Material material = item.GetComponent <Material>();
                if (material.materialName == materialName)
                {
                    materials.Add(material);
                }
            }

            foreach (var item in materials)
            {
                MaterialManager.Instance.RespawnMaterial(item);
                GameManager.Instance.GainScore(ScoreType.TouchRightRecipe);
                GameUI.Instance.UpdateGage(Gages.PURIFY, 2.5f);
            }
        }
Esempio n. 16
0
        public void 部材の名称を変更する()
        {
            var app      = new MaterialApplicationService(repository);
            var material = app.Find("12345678");

            // 変更前
            Assert.Equal("mat1", material.Name.Value);

            var name = new MaterialName("BUZAI1");

            material.ChangeName(name);
            app.Modify(material.Id.Value,
                       "BUZAI1",
                       material.Type.Id,
                       material.TypeAndSize.Type.Value,
                       material.TypeAndSize.Size.Value,
                       material.Consumption.Value,
                       material.Length.Value,
                       material.Weight.Value);

            // 変更後
            Assert.Equal("BUZAI1", app.Find("12345678").Name.Value);
        }
Esempio n. 17
0
 public static void ChangeSkybox(MaterialName Mat)
 {
     Camera.main.GetComponent <Skybox>().material = _material[Mat];
 }
Esempio n. 18
0
 /// <summary>
 /// 根据名称获取材质
 /// </summary>
 /// <param name="name"></param>
 /// <returns></returns>
 public Material GetMaterialByName(MaterialName name)
 {
     return(materialDic [name.ToString()]);
 }
Esempio n. 19
0
    void OnGUI()
    {
        float windowWidth = position.width - 25;

        scrollPos = EditorGUILayout.BeginScrollView(scrollPos);

        if (eWSettings == null)
        {
            GetEWScriptableObject();
        }


        //------------------------------------ Extract Materials -----------------------------------------
        EditorGUILayout.Space();
        EditorGUILayout.LabelField("Extract Materials from Models", EditorStyles.boldLabel, GUILayout.Width(windowWidth));

        EditorGUILayout.Space();
        matSearch = (MaterialSearch)EditorGUILayout.EnumPopup("Material Search:", (MaterialSearch)eWSettings.materialSearch, GUILayout.Width(windowWidth));
        matName   = (MaterialName)EditorGUILayout.EnumPopup("Material Name:", (MaterialName)eWSettings.materialName, GUILayout.Width(windowWidth));


        if (eWSettings.materialSearch != (int)matSearch || eWSettings.materialName != (int)matName)
        {
            eWSettings.materialSearch = (int)matSearch;
            eWSettings.materialName   = (int)matName;
            SaveSettings();
        }


        EditorGUILayout.Space();
        moveMaterials = GUILayout.Toggle(eWSettings.moveMaterials, "Move Extracted Materials to Folder", GUILayout.Width(windowWidth));
        if (eWSettings.moveMaterials != moveMaterials)
        {
            eWSettings.moveMaterials = moveMaterials;
            SaveSettings();
        }

        if (moveMaterials)
        {
            EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
            EditorGUILayout.TextField(eWSettings.materialFolderPath, GUILayout.ExpandWidth(true));
            if (GUILayout.Button("Browse", GUILayout.ExpandWidth(false)))
            {
                eWSettings.materialFolderPath = EditorUtility.SaveFolderPanel("Material Folder", eWSettings.materialFolderPath, Application.dataPath);
                SaveSettings();
            }
            EditorGUILayout.EndHorizontal();

            if (!eWSettings.materialFolderPath.Contains(Application.dataPath))
            {
                EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
                EditorGUILayout.HelpBox("Choose the folder in Project", MessageType.Error);
                EditorGUILayout.EndHorizontal();
            }
            EditorGUILayout.Space();
        }

        //------------------------------------ Texture Assignment Tool -----------------------------------------
        EditorGUILayout.Space();

        EditorGUILayout.LabelField("Texture Assignment Tool", EditorStyles.boldLabel, GUILayout.Width(windowWidth));

        EditorGUILayout.Space();

        assignmentMethod = (AssignmentMethod)EditorGUILayout.EnumPopup("Texture Search Method:", (AssignmentMethod)eWSettings.assignmentMethod, GUILayout.Width(windowWidth));


        if (eWSettings.assignmentMethod != (int)assignmentMethod)
        {
            eWSettings.assignmentMethod = (int)assignmentMethod;
            SaveSettings();
        }

        assignmentProfileIndex = EditorGUILayout.Popup("Assignment Profiles:", assignmentProfileIndex, assignmentProfiles, GUILayout.Width(windowWidth));

        if (assignmentProfileIndex < assignmentProfiles.Length - 1)
        {
            EditorGUILayout.Space();

            EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
            EditorGUILayout.LabelField("Shader Full Name:", EditorStyles.boldLabel, GUILayout.Width(windowWidth / 2));
            EditorGUILayout.LabelField(eWSettings.assignmentProfilesList[assignmentProfileIndex].shaderName, GUILayout.Width(windowWidth / 2));
            EditorGUILayout.EndHorizontal();
        }
        else
        {
            EditorGUILayout.Space();

            EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
            EditorGUILayout.LabelField("Profile Name:", GUILayout.Width(windowWidth / 2));
            newProfile.profileName = EditorGUILayout.TextField(newProfile.profileName, GUILayout.Width(windowWidth / 2));
            EditorGUILayout.EndHorizontal();

            EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
            EditorGUILayout.LabelField("Shader Full Name:", GUILayout.Width(windowWidth / 2));
            newProfile.shaderName = EditorGUILayout.TextField(newProfile.shaderName, GUILayout.Width(windowWidth / 2));
            EditorGUILayout.EndHorizontal();
        }

        EditorGUILayout.Space();

        EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
        EditorGUILayout.LabelField("Material Slot:", EditorStyles.boldLabel, GUILayout.Width(windowWidth / 2));
        EditorGUILayout.LabelField("Texture Name:", EditorStyles.boldLabel, GUILayout.Width(windowWidth / 2));
        EditorGUILayout.EndHorizontal();

        if (assignmentProfileIndex < assignmentProfiles.Length - 1)
        {
            showProfile = EditorGUILayout.Foldout(showProfile, "Profile");
            if (showProfile)
            {
                foreach (var assignmentProfileItem in eWSettings.assignmentProfilesList[assignmentProfileIndex].assignmentProfileItems)
                {
                    string[] textureNames = assignmentProfileItem.textureName.Split(',');
                    EditorGUILayout.Space();

                    EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
                    EditorGUILayout.LabelField(assignmentProfileItem.materialSlot);
                    EditorGUILayout.EndHorizontal();
                    foreach (string textureName in textureNames)
                    {
                        if (textureName.Trim(' ').Length > 0)
                        {
                            EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
                            EditorGUILayout.LabelField(" ", GUILayout.Width(windowWidth / 2));
                            EditorGUILayout.LabelField(textureName.Trim(' '), GUILayout.Width(windowWidth / 2));
                            EditorGUILayout.EndHorizontal();
                        }
                    }
                }
            }


            EditorGUILayout.Space();

            if (GUILayout.Button("Delete This Profile", GUILayout.Width(windowWidth)))
            {
                eWSettings.assignmentProfilesList.Remove(eWSettings.assignmentProfilesList[assignmentProfileIndex]);
                SaveSettings();
                GetExistingAssignmentProfiles();
                assignmentProfileIndex = 0;
            }

            EditorGUILayout.Space();
        }
        else
        {
            EditorGUILayout.Space();

            for (int index = 0; index < newProfileItems.Count; index++)
            {
                var tempProfileItem = newProfileItems[index];
                EditorGUILayout.BeginHorizontal(GUILayout.Width(windowWidth));
                tempProfileItem.materialSlot = EditorGUILayout.TextField(newProfileItems[index].materialSlot, GUILayout.Width(windowWidth / 2));
                tempProfileItem.textureName  = EditorGUILayout.TextField(newProfileItems[index].textureName, GUILayout.Width(windowWidth / 2));
                EditorGUILayout.EndHorizontal();

                newProfileItems[index] = tempProfileItem;
            }

            EditorGUILayout.Space();

            if (GUILayout.Button("Add New Material Slot", GUILayout.Width(windowWidth)))
            {
                newProfileItems.Add(new EWScriptableObject.AssignmentProfile.AssignmentProfileItem {
                    textureName = "", materialSlot = ""
                });
            }

            if (GUILayout.Button("Delete Last Material Slot", GUILayout.Width(windowWidth)))
            {
                if (newProfileItems.Count > 0)
                {
                    newProfileItems.Remove(newProfileItems[newProfileItems.Count - 1]);
                }
            }

            if (GUILayout.Button("Clear All Material Slots", GUILayout.Width(windowWidth)))
            {
                newProfileItems.Clear();
            }

            if (GUILayout.Button("Save New Profile", GUILayout.Width(windowWidth)))
            {
                List <EWScriptableObject.AssignmentProfile.AssignmentProfileItem> filteredNewProfileItems = new List <EWScriptableObject.AssignmentProfile.AssignmentProfileItem>();

                foreach (var newProfileItem in newProfileItems)
                {
                    if (newProfileItem.materialSlot.Trim(' ').Length > 0 && newProfileItem.textureName.Trim(' ').Length > 0)
                    {
                        filteredNewProfileItems.Add(newProfileItem);
                    }
                }

                newProfile.assignmentProfileItems = filteredNewProfileItems.ToArray();

                if (newProfile.profileName.Length > 0 && newProfile.shaderName.Length > 0)
                {
                    eWSettings.assignmentProfilesList.Add(newProfile);
                    SaveSettings();
                    GetExistingAssignmentProfiles();
                    assignmentProfileIndex = eWSettings.assignmentProfilesList.Count - 1;
                    newProfile.profileName = "";
                    newProfile.shaderName  = "";
                    newProfileItems.Clear();
                }
                else
                {
                    Debug.Log("Profile not Saved. Profile Name and/or Shader Name are Empty");
                    EditorGUILayout.EndHorizontal();
                }
            }

            EditorGUILayout.Space();
        }

        //------------------------------------------------------Version----------------------------------

        EditorGUILayout.Space();
        EditorGUILayout.LabelField("Version", EditorStyles.boldLabel, GUILayout.Width(windowWidth));
        EditorGUILayout.LabelField(version, GUILayout.Width(windowWidth));
        EditorGUILayout.Space();

        EditorGUILayout.EndScrollView();
    }
        public Sprite GetMaterialSprite(MaterialName materialName)
        {
            int index = MaterialNameIndex[materialName];

            return(MaterialSprites[index]);
        }
Esempio n. 21
0
 public void SetName(string name)
 {
     MaterialName.Set(name);
 }
        public Sprite GetHighlightedMaterialSprite(MaterialName materialName)
        {
            int index = MaterialNameIndex[materialName];

            return(HighlightedMaterialSprites[index]);
        }
Esempio n. 23
0
 public override string ToString()
 {
     return(string.Format("{0}", MaterialName.ToString()));
 }
Esempio n. 24
0
        public async Task <ActionResult> EditAddMakeReceipt(ProjectMakeReceiptData projectMakeReceiptData)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (ModelState.IsValid)
            {
                //                db.Entry(materialBuyData).State = EntityState.Modified;
                Project project = db.Projects.FirstOrDefault(m => m.ID == projectMakeReceiptData.Porject.ID);

                MaterialBuy receipt = new MaterialBuy();
                receipt.Company         = project.Company;
                receipt.CompanyID       = project.CompanyID;
                receipt.Date            = projectMakeReceiptData.Date;
                receipt.EmployeeID      = Convert.ToInt32(Session["LoginUserEmployeeID"]);
                receipt.Employee        = db.Employees.FirstOrDefault(e => e.ID == receipt.EmployeeID);
                receipt.MaterialBuyType = MaterialBuyType.MakeReceipt;
                receipt.NoteVn          = projectMakeReceiptData.NoteVn;
                receipt.NoteKr          = projectMakeReceiptData.NoteVn;
                receipt.Project         = project;
                receipt.ProjectID       = project.ID;
                receipt.VATPer          = projectMakeReceiptData.VATPer;

                MaterialBuyUnit unit = new MaterialBuyUnit();
                unit.MaterialBuy = receipt;
                unit.Quantity    = 1;


                MaterialName mName = db.MaterialNames.FirstOrDefault(m => m.NameVn.Equals(projectMakeReceiptData.NameVn) ||
                                                                     m.NameKr.Equals(projectMakeReceiptData.NameVn));
                if (mName == null)
                {
                    mName        = new MaterialName();
                    mName.NameKr = projectMakeReceiptData.NameVn;
                    mName.NameVn = projectMakeReceiptData.NameVn;
                    db.MaterialNames.Add(mName);
                }

                MaterialUnitPrice muPrice = db.MaterialUnitPrices.OrderBy(m => m.Date)
                                            .FirstOrDefault(mp => mp.MaterialName.NameVn.Equals(projectMakeReceiptData.NameVn) ||
                                                            mp.MaterialName.NameKr.Equals(projectMakeReceiptData.NameVn));

                if (muPrice == null || muPrice.Price != projectMakeReceiptData.Price)
                {
                    muPrice            = new MaterialUnitPrice();
                    muPrice.Company    = project.Company;
                    muPrice.CompanyID  = project.CompanyID;
                    muPrice.Date       = projectMakeReceiptData.Date;
                    muPrice.UnitString = "Set";
                    muPrice.Price      = projectMakeReceiptData.Price;
                    muPrice.Currency   = projectMakeReceiptData.Currency;

                    db.MaterialUnitPrices.Add(muPrice);
                }

                muPrice.MaterialName     = mName;
                unit.MaterialUnitPrice   = muPrice;
                receipt.MaterialBuyUnits = new List <MaterialBuyUnit>();
                receipt.MaterialBuyUnits.Add(unit);

                db.MaterialBuys.Add(receipt);
                db.MaterialBuyUnits.Add(unit);
                project.MaterialBuys.Add(receipt);

//                db.Payments.Add(projectDepositData.Deposit);
//                project.Deposits.Add(projectDepositData.Deposit);

                await db.SaveChangesAsync();

                return(RedirectToAction("EditAddMakeReceipt", new { id = projectMakeReceiptData.Porject.ID }));
            }
            return(View(projectMakeReceiptData));
        }
Esempio n. 25
0
 public static MaterialName CreateMaterialName(int materialNameID, string name)
 {
     MaterialName materialName = new MaterialName();
     materialName.MaterialNameID = materialNameID;
     materialName.Name = name;
     return materialName;
 }
Esempio n. 26
0
 public void AddToMaterialNames(MaterialName materialName)
 {
     base.AddObject("MaterialNames", materialName);
 }
        public async Task <ActionResult> EditEditUnit(int id, int unitid, MaterialBuyData materialBuyData)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (ModelState.IsValid)
            {
                //                db.Entry(materialBuyData).State = EntityState.Modified;
                MaterialBuyUnit sUnit = db.MaterialBuyUnits.FirstOrDefault(mbu => mbu.ID == unitid);
                MaterialName    sName = db.MaterialNames.FirstOrDefault(m => m.NameVn.Equals(sUnit.MaterialUnitPrice.MaterialName.NameVn));

                int nameCount  = db.MaterialUnitPrices.Where(m => m.MaterialName.NameVn.Equals(sUnit.MaterialUnitPrice.MaterialName.NameVn)).Count();
                int sunitCount = db.MaterialBuyUnits.Where(u => u.MaterialUnitPriceID == sUnit.MaterialUnitPriceID).Count();

                if (materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Price != sUnit.MaterialUnitPrice.Price ||
                    materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Currency != sUnit.MaterialUnitPrice.Currency ||
                    !materialBuyData.MaterialBuyUnit.MaterialUnitPrice.UnitString.Equals(sUnit.MaterialUnitPrice.UnitString))
                {
                    if (sunitCount == 1)
                    {
                        sUnit.MaterialUnitPrice.UnitString = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.UnitString;
                        sUnit.MaterialUnitPrice.Price      = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Price;
                        sUnit.MaterialUnitPrice.Currency   = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Currency;
                        sUnit.MaterialUnitPrice.Date       = DateTime.Today;
                    }
                    else
                    {
                        MaterialUnitPrice muPrice = new MaterialUnitPrice();
                        muPrice.MaterialName   = sUnit.MaterialUnitPrice.MaterialName;
                        muPrice.MaterialNameID = sUnit.MaterialUnitPrice.MaterialNameID;
                        muPrice.Company        = sUnit.MaterialUnitPrice.Company;
                        muPrice.CompanyID      = sUnit.MaterialUnitPrice.CompanyID;
                        muPrice.UnitString     = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.UnitString;
                        muPrice.Price          = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Price;
                        muPrice.Currency       = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.Currency;
                        muPrice.Date           = DateTime.Today;

                        db.MaterialUnitPrices.Add(muPrice);
                        sUnit.MaterialUnitPrice = muPrice;
                    }
                }

                MaterialName newName = db.MaterialNames.FirstOrDefault(m => m.NameVn.Equals(materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn));

                if (!materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn.Equals(sName.NameVn))
                {
                    if (nameCount == 1)
                    {
                        if (newName == null)
                        {
                            newName = new MaterialName();
                            sUnit.MaterialUnitPrice.MaterialName.NameVn = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn;
                            sUnit.MaterialUnitPrice.MaterialName.NameKr = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn;
                            materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.Translate = false;
                        }
                        else
                        {
                            db.MaterialNames.Remove(sUnit.MaterialUnitPrice.MaterialName);
                            sUnit.MaterialUnitPrice.MaterialName = newName;
                        }
                    }
                    else
                    {
                        if (newName == null)
                        {
                            if (materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameKr == null)
                            {
                                materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameKr = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn;
                            }
                            else if (materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn == null)
                            {
                                materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameVn = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName.NameKr;
                            }

                            sUnit.MaterialUnitPrice.MaterialName = materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName;
                            db.MaterialNames.Add(materialBuyData.MaterialBuyUnit.MaterialUnitPrice.MaterialName);
                        }
                        else
                        {
                            sUnit.MaterialUnitPrice.MaterialName = newName;
                        }
                    }
                }

                MaterialBuy materialBuy = db.MaterialBuys.FirstOrDefault(m => m.ID == materialBuyData.MaterialBuy.ID);
                sUnit.Quantity = materialBuyData.MaterialBuyUnit.Quantity;

                await db.SaveChangesAsync();

                return(RedirectToAction("EditAddUnit", new { id = id }));
            }
            return(View(materialBuyData));
        }
Esempio n. 28
0
File: Res.cs Progetto: thurn/sagan
 public Material GetMaterial(MaterialName materialName)
 {
     throw Errors.UnknownEnumValue(materialName);
 }
Esempio n. 29
0
        public async Task <ActionResult> EditEditMakeReceipt(int id, int makereceiptid, ProjectMakeReceiptData projectMakeReceiptData)
        {
            if (Session["LoginUserID"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (ModelState.IsValid)
            {
                //                db.Entry(materialBuyData).State = EntityState.Modified;
                Project     project     = db.Projects.FirstOrDefault(m => m.ID == projectMakeReceiptData.Porject.ID);
                MaterialBuy makeReceipt = await db.MaterialBuys.FindAsync(makereceiptid);


                if (makeReceipt.Date != projectMakeReceiptData.Date)
                {
                    makeReceipt.Date = projectMakeReceiptData.Date;
                    makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.Date = projectMakeReceiptData.Date;
                }

                if (makeReceipt.VATPer != projectMakeReceiptData.VATPer)
                {
                    makeReceipt.VATPer = projectMakeReceiptData.VATPer;
                }

                if ((makeReceipt.NoteVn != null && !makeReceipt.NoteVn.Equals(projectMakeReceiptData.NoteVn)) ||
                    (makeReceipt.NoteVn == null && projectMakeReceiptData.NoteVn != null))
                {
                    makeReceipt.NoteVn    = projectMakeReceiptData.NoteVn;
                    makeReceipt.NoteKr    = projectMakeReceiptData.NoteVn;
                    makeReceipt.Translate = false;
                }

                if (makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.Price != projectMakeReceiptData.Price ||
                    makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.Currency != projectMakeReceiptData.Currency)
                {
                    makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.Price = projectMakeReceiptData.Price;
                    makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.Currency = projectMakeReceiptData.Currency;
                }

                if ((projectMakeReceiptData.NameVn != null && !projectMakeReceiptData.NameVn.Equals(makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.MaterialName.NameVn)) ||
                    (projectMakeReceiptData.NameVn == null && makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.MaterialName.NameVn != null))
                {
                    int          nameCount = db.MaterialUnitPrices.Where(m => m.MaterialName.NameVn.Equals(makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.MaterialName.NameVn)).Count();
                    MaterialName oldName   = db.MaterialNames.FirstOrDefault(m => m.NameVn.Equals(makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.MaterialName.NameVn) ||
                                                                             m.NameKr.Equals(makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.MaterialName.NameVn));
                    MaterialName mName = db.MaterialNames.FirstOrDefault(m => m.NameVn.Equals(projectMakeReceiptData.NameVn) ||
                                                                         m.NameKr.Equals(projectMakeReceiptData.NameVn));
                    if (mName == null)
                    {
                        mName        = new MaterialName();
                        mName.NameKr = projectMakeReceiptData.NameVn;
                        mName.NameVn = projectMakeReceiptData.NameVn;
                        makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.MaterialName = mName;
                        db.MaterialNames.Add(mName);
                    }
                    else
                    {
                        makeReceipt.MaterialBuyUnits.FirstOrDefault().MaterialUnitPrice.MaterialName = mName;
                    }

                    if (nameCount == 1)
                    {
                        db.MaterialNames.Remove(oldName);
                    }
                }

                await db.SaveChangesAsync();

                return(RedirectToAction("EditAddMakeReceipt", new { id = projectMakeReceiptData.Porject.ID }));
            }
            return(View(projectMakeReceiptData));
        }
Esempio n. 30
0
 public virtual void GetMaterialMessage(MaterialName materialName)
 {
     //Debug.Log("GetMaterialMessage: " + materialName);
 }