Merge branch 'master' of http://222.71.245.114:9086/r/HIA24016N_PipeLineDemo
已添加14个文件
已重命名6个文件
已修改30个文件
已删除2个文件
| | |
| | | /// å端çæä»¶å¤¹åç§° |
| | | /// </summary> |
| | | public const string web_FolerName = @"\web\"; |
| | | |
| | | |
| | | /// <summary> |
| | | /// ç¹æ®å段-æ©å±å段 |
| | | /// </summary> |
| | | public const string pro_ExtraProperties = "ExtraProperties"; |
| | | } |
| | | } |
| | |
| | | model.Description = dt.Rows[n]["Description"].ToString(); |
| | | if (dt.Rows[n]["IsNullable"].ToString() != "") |
| | | { |
| | | if ((dt.Rows[n]["IsNullable"].ToString() == "1") || (dt.Rows[n]["IsNullable"].ToString().ToLower() == "true")) |
| | | if ((dt.Rows[n]["IsNullable"].ToString() == "1") || (dt.Rows[n]["IsNullable"].ToString().ToLower() == "true") || (dt.Rows[n]["IsNullable"].ToString().ToLower() == "yes")) |
| | | { |
| | | model.IsNullable = true; |
| | | } |
| | |
| | | CommonHelper.CommonReplaceStr(param, ref str); |
| | | |
| | | string attrString = ""; |
| | | List<ColumnModel> newColumnNameList = ListHelper.RemoveAttrForExport(param.ColumnNameList); |
| | | List<ColumnModel> newColumnNameList = ListHelper.RemoveAttrForUpdateMode(param.ColumnNameList); |
| | | for (int i = 0; i < newColumnNameList.Count; ++i) |
| | | { |
| | | attrString += StructStrHelper.GenerateAttributeForUpdateModel(newColumnNameList[i], param); |
¶Ô±ÈÐÂÎļþ |
| | |
| | |  |
| | | |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | |
| | | namespace GenerateCode_GEBrilliantFactory |
| | | { |
| | | /// <summary> |
| | | /// çææ¥è¯¢å®ä½ç±» |
| | | /// </summary> |
| | | public class IRepository_Generate : BaseGenerate |
| | | { |
| | | public static string CreateText(GenerateCodeParam param) |
| | | { |
| | | var str = TextHelper.ReadText(@"Templete\Domain\IRepository模æ¿.txt"); |
| | | CommonReplace(ref str); |
| | | |
| | | CommonHelper.CommonReplaceStr(param, ref str); |
| | | |
| | | |
| | | return str; |
| | | } |
| | | } |
| | | } |
ÎļþÃû´Ó Weben_CMSרÓôúÂëÉú³ÉÆ÷/Code/Generate/Entity/InputModel_Generate.cs ÐÞ¸Ä |
| | |
| | | /// <summary> |
| | | /// çææ¥è¯¢å®ä½ç±» |
| | | /// </summary> |
| | | public class InputModel_Generate : BaseGenerate |
| | | public class InputQueryModel_Generate : BaseGenerate |
| | | { |
| | | public static string CreateQueryModelLText(GenerateCodeParam param) |
| | | { |
¶Ô±ÈÐÂÎļþ |
| | |
| | |  |
| | | |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | |
| | | namespace GenerateCode_GEBrilliantFactory |
| | | { |
| | | /// <summary> |
| | | /// çææ¥è¯¢å®ä½ç±» |
| | | /// </summary> |
| | | public class EfCoreRepository_Generate : BaseGenerate |
| | | { |
| | | public static string CreateText(GenerateCodeParam param) |
| | | { |
| | | var str = TextHelper.ReadText(@"Templete\EntityFrameworkCore\EfCoreRepository模æ¿.txt"); |
| | | CommonReplace(ref str); |
| | | |
| | | CommonHelper.CommonReplaceStr(param, ref str); |
| | | |
| | | |
| | | return str; |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | |  |
| | | |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | |
| | | namespace GenerateCode_GEBrilliantFactory |
| | | { |
| | | /// <summary> |
| | | /// çææ¥è¯¢å®ä½ç±» |
| | | /// </summary> |
| | | public class EntityMode_Generate : BaseGenerate |
| | | { |
| | | public static string CreateText(GenerateCodeParam param) |
| | | { |
| | | var str = TextHelper.ReadText(@"Templete\Web\Controllers\EntityMode模æ¿.txt"); |
| | | CommonReplace(ref str); |
| | | |
| | | CommonHelper.CommonReplaceStr(param, ref str); |
| | | |
| | | |
| | | return str; |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | |  |
| | | |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | |
| | | namespace GenerateCode_GEBrilliantFactory |
| | | { |
| | | /// <summary> |
| | | /// çææ¥è¯¢å®ä½ç±» |
| | | /// </summary> |
| | | public class File_Generate : BaseGenerate |
| | | { |
| | | public static string CreateText(GenerateCodeParam param) |
| | | { |
| | | var str = TextHelper.ReadText(@"Templete\Web\Controllers\File模æ¿.txt"); |
| | | CommonReplace(ref str); |
| | | |
| | | CommonHelper.CommonReplaceStr(param, ref str); |
| | | |
| | | |
| | | return str; |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | |  |
| | | |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | |
| | | namespace GenerateCode_GEBrilliantFactory |
| | | { |
| | | /// <summary> |
| | | /// çææ¥è¯¢å®ä½ç±» |
| | | /// </summary> |
| | | public class Index_Generate : BaseGenerate |
| | | { |
| | | public static string CreateText(GenerateCodeParam param) |
| | | { |
| | | var str = TextHelper.ReadText(@"Templete\Web\index模æ¿.txt"); |
| | | CommonReplace(ref str); |
| | | |
| | | CommonHelper.CommonReplaceStr(param, ref str); |
| | | |
| | | |
| | | return str; |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | |  |
| | | |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | |
| | | namespace GenerateCode_GEBrilliantFactory |
| | | { |
| | | /// <summary> |
| | | /// çææ¥è¯¢å®ä½ç±» |
| | | /// </summary> |
| | | public class enum_Generate : BaseGenerate |
| | | { |
| | | public static string CreateText(GenerateCodeParam param) |
| | | { |
| | | var str = TextHelper.ReadText(@"Templete\Web\enum模æ¿.txt"); |
| | | CommonReplace(ref str); |
| | | |
| | | CommonHelper.CommonReplaceStr(param, ref str); |
| | | |
| | | |
| | | return str; |
| | | } |
| | | } |
| | | } |
| | |
| | | <Compile Include="Generate\AppService\IAppService_Generate.cs" /> |
| | | <Compile Include="Generate\BaseGenerate.cs" /> |
| | | <Compile Include="Generate\Controller\Controller_Generate.cs" /> |
| | | <Compile Include="Generate\Entity\AddModel_Generate.cs" /> |
| | | <Compile Include="Generate\Domain\IRepository_Generate.cs" /> |
| | | <Compile Include="Generate\EntityFrameworkCore\EfCoreRepository_Generate.cs" /> |
| | | <Compile Include="Generate\Entity\ImportModel_Generate.cs" /> |
| | | <Compile Include="Generate\Entity\ExportModel_Generate.cs" /> |
| | | <Compile Include="Generate\Entity\Dto_Generate.cs" /> |
| | |
| | | <Compile Include="Generate\Services_InterfaceRealize_Generate.cs" /> |
| | | <Compile Include="Generate\VUE\VUE_FunConfig_Generate.cs" /> |
| | | <Compile Include="Generate\Services_Interface_Generate.cs" /> |
| | | <Compile Include="Generate\Entity\InputModel_Generate.cs" /> |
| | | <Compile Include="Generate\Entity\InputQueryModel_Generate.cs" /> |
| | | <Compile Include="Generate\BLL_Generate.cs" /> |
| | | <Compile Include="Generate\DAL_Generate.cs" /> |
| | | <Compile Include="Generate\Procedure_Generate.cs" /> |
| | | <Compile Include="Generate\Web\Controllers\EntityMode_Generate.cs" /> |
| | | <Compile Include="Generate\Web\Controllers\File_Generate.cs" /> |
| | | <Compile Include="Generate\Web\enum_Generate.cs" /> |
| | | <Compile Include="Generate\Web\Index_Generate.cs" /> |
| | | <Compile Include="Model\GenerateCodeParam.cs" /> |
| | | <Compile Include="Model\Enum\DataBaseEnum.cs" /> |
| | | <Compile Include="Model\Enum\DataTypeEnum.cs" /> |
| | |
| | | <Content Include="Templete\Controller模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="Templete\Domain\IRepository模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="Templete\EntityFrameworkCore\EfCoreRepository模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="Templete\Entity\AddModel模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | |
| | | <Content Include="Templete\InitSQL模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="Templete\Web\Controllers\EntityMode模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="Templete\Web\Controllers\File模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="Templete\Web\enum模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="Templete\Web\index模æ¿.txt"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="常ç¨.txt" /> |
| | | </ItemGroup> |
| | | <ItemGroup /> |
| | |
| | | this.lbl_DataSource = new System.Windows.Forms.Label(); |
| | | this.cmb_DataSource = new System.Windows.Forms.ComboBox(); |
| | | this.groupBox2 = new System.Windows.Forms.GroupBox(); |
| | | this.label19 = new System.Windows.Forms.Label(); |
| | | this.label18 = new System.Windows.Forms.Label(); |
| | | this.tb_EnumList = new System.Windows.Forms.TextBox(); |
| | | this.tb_GroupName = new System.Windows.Forms.TextBox(); |
| | | this.label16 = new System.Windows.Forms.Label(); |
| | | this.label15 = new System.Windows.Forms.Label(); |
| | |
| | | this.label12 = new System.Windows.Forms.Label(); |
| | | this.tb_templeteFileDownName = new System.Windows.Forms.TextBox(); |
| | | this.label14 = new System.Windows.Forms.Label(); |
| | | this.tb_EnumList = new System.Windows.Forms.TextBox(); |
| | | this.label18 = new System.Windows.Forms.Label(); |
| | | this.label19 = new System.Windows.Forms.Label(); |
| | | this.label20 = new System.Windows.Forms.Label(); |
| | | this.tb_MenuName = new System.Windows.Forms.TextBox(); |
| | | this.label21 = new System.Windows.Forms.Label(); |
| | | this.tb_PageMenuInstanceName = new System.Windows.Forms.TextBox(); |
| | | this.groupBox1.SuspendLayout(); |
| | | this.groupBox2.SuspendLayout(); |
| | | this.groupBox3.SuspendLayout(); |
| | |
| | | // |
| | | // tb_WCF_NameSpacePath |
| | | // |
| | | this.tb_WCF_NameSpacePath.Location = new System.Drawing.Point(751, 309); |
| | | this.tb_WCF_NameSpacePath.Location = new System.Drawing.Point(983, 358); |
| | | this.tb_WCF_NameSpacePath.Margin = new System.Windows.Forms.Padding(4); |
| | | this.tb_WCF_NameSpacePath.Name = "tb_WCF_NameSpacePath"; |
| | | this.tb_WCF_NameSpacePath.Size = new System.Drawing.Size(261, 25); |
| | |
| | | // label2 |
| | | // |
| | | this.label2.AutoSize = true; |
| | | this.label2.Location = new System.Drawing.Point(607, 311); |
| | | this.label2.Location = new System.Drawing.Point(862, 368); |
| | | this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label2.Name = "label2"; |
| | | this.label2.Size = new System.Drawing.Size(105, 15); |
| | |
| | | // label9 |
| | | // |
| | | this.label9.AutoSize = true; |
| | | this.label9.Location = new System.Drawing.Point(617, 262); |
| | | this.label9.Location = new System.Drawing.Point(682, 47); |
| | | this.label9.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label9.Name = "label9"; |
| | | this.label9.Size = new System.Drawing.Size(45, 15); |
| | |
| | | // |
| | | // tb_OrderBy |
| | | // |
| | | this.tb_OrderBy.Location = new System.Drawing.Point(671, 259); |
| | | this.tb_OrderBy.Location = new System.Drawing.Point(736, 44); |
| | | this.tb_OrderBy.Margin = new System.Windows.Forms.Padding(4); |
| | | this.tb_OrderBy.Name = "tb_OrderBy"; |
| | | this.tb_OrderBy.Size = new System.Drawing.Size(192, 25); |
| | |
| | | // label10 |
| | | // |
| | | this.label10.AutoSize = true; |
| | | this.label10.Location = new System.Drawing.Point(891, 262); |
| | | this.label10.Location = new System.Drawing.Point(956, 47); |
| | | this.label10.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label10.Name = "label10"; |
| | | this.label10.Size = new System.Drawing.Size(83, 15); |
| | |
| | | // |
| | | // tb_RoutePrefix |
| | | // |
| | | this.tb_RoutePrefix.Location = new System.Drawing.Point(717, 345); |
| | | this.tb_RoutePrefix.Location = new System.Drawing.Point(983, 395); |
| | | this.tb_RoutePrefix.Margin = new System.Windows.Forms.Padding(4); |
| | | this.tb_RoutePrefix.Name = "tb_RoutePrefix"; |
| | | this.tb_RoutePrefix.Size = new System.Drawing.Size(192, 25); |
| | |
| | | // label13 |
| | | // |
| | | this.label13.AutoSize = true; |
| | | this.label13.Location = new System.Drawing.Point(617, 352); |
| | | this.label13.Location = new System.Drawing.Point(862, 398); |
| | | this.label13.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label13.Name = "label13"; |
| | | this.label13.Size = new System.Drawing.Size(99, 15); |
| | |
| | | // |
| | | // groupBox2 |
| | | // |
| | | this.groupBox2.Controls.Add(this.tb_PageMenuInstanceName); |
| | | this.groupBox2.Controls.Add(this.label21); |
| | | this.groupBox2.Controls.Add(this.tb_MenuName); |
| | | this.groupBox2.Controls.Add(this.label20); |
| | | this.groupBox2.Controls.Add(this.label19); |
| | | this.groupBox2.Controls.Add(this.label18); |
| | | this.groupBox2.Controls.Add(this.tb_EnumList); |
| | |
| | | this.groupBox2.TabIndex = 46; |
| | | this.groupBox2.TabStop = false; |
| | | this.groupBox2.Text = "èªå®ä¹é
ç½®"; |
| | | // |
| | | // label19 |
| | | // |
| | | this.label19.AutoSize = true; |
| | | this.label19.Location = new System.Drawing.Point(424, 432); |
| | | this.label19.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label19.Name = "label19"; |
| | | this.label19.Size = new System.Drawing.Size(751, 15); |
| | | this.label19.TabIndex = 53; |
| | | this.label19.Text = "PurchaseType|PurchaseTypeEnum|PurchaseTypeDesc,MaterialType|MaterialTypeEnum|Mate" + |
| | | "rialTypeDesc"; |
| | | // |
| | | // label18 |
| | | // |
| | | this.label18.AutoSize = true; |
| | | this.label18.Location = new System.Drawing.Point(424, 488); |
| | | this.label18.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label18.Name = "label18"; |
| | | this.label18.Size = new System.Drawing.Size(135, 15); |
| | | this.label18.TabIndex = 52; |
| | | this.label18.Text = "æä¸¾ç±»ååæ®µéå:"; |
| | | // |
| | | // tb_EnumList |
| | | // |
| | | this.tb_EnumList.Location = new System.Drawing.Point(557, 451); |
| | | this.tb_EnumList.Margin = new System.Windows.Forms.Padding(4); |
| | | this.tb_EnumList.Multiline = true; |
| | | this.tb_EnumList.Name = "tb_EnumList"; |
| | | this.tb_EnumList.Size = new System.Drawing.Size(491, 129); |
| | | this.tb_EnumList.TabIndex = 51; |
| | | // |
| | | // tb_GroupName |
| | | // |
| | |
| | | this.label14.TabIndex = 47; |
| | | this.label14.Text = "æä»¶ä¸è½½åå:"; |
| | | // |
| | | // tb_EnumList |
| | | // label20 |
| | | // |
| | | this.tb_EnumList.Location = new System.Drawing.Point(557, 451); |
| | | this.tb_EnumList.Margin = new System.Windows.Forms.Padding(4); |
| | | this.tb_EnumList.Multiline = true; |
| | | this.tb_EnumList.Name = "tb_EnumList"; |
| | | this.tb_EnumList.Size = new System.Drawing.Size(491, 129); |
| | | this.tb_EnumList.TabIndex = 51; |
| | | this.label20.AutoSize = true; |
| | | this.label20.Location = new System.Drawing.Point(600, 239); |
| | | this.label20.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label20.Name = "label20"; |
| | | this.label20.Size = new System.Drawing.Size(90, 15); |
| | | this.label20.TabIndex = 54; |
| | | this.label20.Text = "页é¢èåå:"; |
| | | // |
| | | // label18 |
| | | // tb_MenuName |
| | | // |
| | | this.label18.AutoSize = true; |
| | | this.label18.Location = new System.Drawing.Point(424, 488); |
| | | this.label18.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label18.Name = "label18"; |
| | | this.label18.Size = new System.Drawing.Size(135, 15); |
| | | this.label18.TabIndex = 52; |
| | | this.label18.Text = "æä¸¾ç±»ååæ®µéå:"; |
| | | this.tb_MenuName.Location = new System.Drawing.Point(700, 229); |
| | | this.tb_MenuName.Margin = new System.Windows.Forms.Padding(4); |
| | | this.tb_MenuName.Name = "tb_MenuName"; |
| | | this.tb_MenuName.Size = new System.Drawing.Size(261, 25); |
| | | this.tb_MenuName.TabIndex = 55; |
| | | // |
| | | // label19 |
| | | // label21 |
| | | // |
| | | this.label19.AutoSize = true; |
| | | this.label19.Location = new System.Drawing.Point(424, 432); |
| | | this.label19.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label19.Name = "label19"; |
| | | this.label19.Size = new System.Drawing.Size(751, 15); |
| | | this.label19.TabIndex = 53; |
| | | this.label19.Text = "PurchaseType|PurchaseTypeEnum|PurchaseTypeDesc,MaterialType|MaterialTypeEnum|Mate" + |
| | | "rialTypeDesc"; |
| | | this.label21.AutoSize = true; |
| | | this.label21.Location = new System.Drawing.Point(600, 275); |
| | | this.label21.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); |
| | | this.label21.Name = "label21"; |
| | | this.label21.Size = new System.Drawing.Size(135, 15); |
| | | this.label21.TabIndex = 56; |
| | | this.label21.Text = "页é¢èå对象缩å:"; |
| | | // |
| | | // tb_PageMenuInstanceName |
| | | // |
| | | this.tb_PageMenuInstanceName.Location = new System.Drawing.Point(736, 265); |
| | | this.tb_PageMenuInstanceName.Margin = new System.Windows.Forms.Padding(4); |
| | | this.tb_PageMenuInstanceName.Name = "tb_PageMenuInstanceName"; |
| | | this.tb_PageMenuInstanceName.Size = new System.Drawing.Size(261, 25); |
| | | this.tb_PageMenuInstanceName.TabIndex = 57; |
| | | // |
| | | // MainForm |
| | | // |
| | |
| | | private System.Windows.Forms.Label label18; |
| | | private System.Windows.Forms.TextBox tb_EnumList; |
| | | private System.Windows.Forms.Label label19; |
| | | private System.Windows.Forms.Label label20; |
| | | private System.Windows.Forms.TextBox tb_MenuName; |
| | | private System.Windows.Forms.TextBox tb_PageMenuInstanceName; |
| | | private System.Windows.Forms.Label label21; |
| | | } |
| | | } |
| | | |
| | |
| | | this.tb_WCF_NameSpacePath.Text = "HIAWms";//WCF项ç®å½åç©ºé´ |
| | | this.tb_FileName.Text = "Xiangzi";//æä»¶åç¼å |
| | | this.tb_ChinaComment.Text = "ç©æåºç¡ä¿¡æ¯è¡¨";//ä¸ææ³¨é |
| | | this.tb_MenuName.Text = "ç©æä¿¡æ¯";//ä¸ææ³¨é |
| | | this.tb_PageMenuInstanceName.Text = "wmsMaterial"; |
| | | this.tb_CreatePerson.Text = "shaocx";//å建人 |
| | | this.tb_EntityName.Text = "WmsMaterial";//å®ä½ç±»å |
| | | //this.tb_EntityProName.Text = "wmsMaterial";//å®ä½ç±»å¯¹è±¡å |
| | |
| | | string filePrefixName = this.tb_FileName.Text.Trim();//æä»¶åç¼å |
| | | string modulelogo = this.tb_Modulelogo.Text.Trim();//模åç®å |
| | | string chinaComment = this.tb_ChinaComment.Text.Trim();//ä¸ææ³¨é |
| | | if (chinaComment == "") |
| | | { |
| | | MessageBox.Show("请è¾å
¥ 表çä¸ææ³¨è§£ï¼"); |
| | | this.tb_ChinaComment.Focus(); |
| | | return; |
| | | } |
| | | string menuName = this.tb_MenuName.Text.Trim();//ä¸ææ³¨é |
| | | if (menuName == "") |
| | | { |
| | | MessageBox.Show("请è¾å
¥ 页é¢èååï¼"); |
| | | this.tb_MenuName.Focus(); |
| | | return; |
| | | } |
| | | string _tb_PageMenuInstanceName = this.tb_PageMenuInstanceName.Text.Trim();//ä¸ææ³¨é |
| | | if (_tb_PageMenuInstanceName == "") |
| | | { |
| | | MessageBox.Show("请è¾å
¥ 页é¢èå对象缩åï¼"); |
| | | this.tb_PageMenuInstanceName.Focus(); |
| | | return; |
| | | } |
| | | string createPerson = this.tb_CreatePerson.Text.Trim();//å建人 |
| | | string entityName = this.tb_EntityName.Text.Trim();//å®ä½ç±»å |
| | | string tableAlias = this.tb_EntityProName.Text.Trim();//å®ä½ç±»å¯¹è±¡å/表å«å |
| | |
| | | { |
| | | Modulelogo = modulelogo, |
| | | ChinaComment = chinaComment, |
| | | PageMenuName = menuName, |
| | | PageMenuInstanceName = _tb_PageMenuInstanceName, |
| | | NameSpacePath = wcf_NameSpacePath, |
| | | ColumnNameList = columnList, |
| | | EntityName = entityName, |
| | |
| | | #region å®ä½ç±» |
| | | var entityFilePath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Application.Contracts\Dtos\" + tb_EntityName.Text.Trim(); |
| | | //1ãçæ å页æ¥è¯¢å®ä½ æä»¶ |
| | | str_generate = InputModel_Generate.CreateQueryModelLText(param); |
| | | str_generate = InputQueryModel_Generate.CreateQueryModelLText(param); |
| | | tf = TextHelper.Export2File_V2(entityFilePath, $"Get{param.EntityName}Input.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | //2ãçæ CreateDto æä»¶ |
| | |
| | | #region Contorller |
| | | |
| | | //10ãçæ Contorller æä»¶ |
| | | var continerlllePath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Controller"; |
| | | var continerlllePath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @"\Controller"; |
| | | str_generate = Controller_Generate.CreateText(param); |
| | | tf = TextHelper.Export2File_V2(continerlllePath, $"{param.EntityName}Controller.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | |
| | | #endregion |
| | | |
| | | #region Domain |
| | | |
| | | //11ãçæ IRepository æä»¶ |
| | | var iRepositoryPath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".Domain\" + tb_EntityName.Text.Trim(); ; |
| | | str_generate = IRepository_Generate.CreateText(param); |
| | | tf = TextHelper.Export2File_V2(iRepositoryPath, $"I{param.EntityName}Repository.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | |
| | | #endregion |
| | | |
| | | #region EntityFrameworkCore |
| | | |
| | | //12ãçæ EfCoreRepository æä»¶ |
| | | var efCoreRepositoryPath = tbPath.Text + @"\server\src\CMS.Plugin." + tb_WCF_NameSpacePath.Text.Trim() + @".EntityFrameworkCore\Repositories"; |
| | | str_generate = EfCoreRepository_Generate.CreateText(param); |
| | | tf = TextHelper.Export2File_V2(efCoreRepositoryPath, $"EfCore{param.EntityName}Repository.cs", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | |
| | | #endregion |
| | | |
| | | #region Web |
| | | var webRootPath = tbPath.Text + @"\web\src\widgets\" + tb_EntityName.Text.Trim(); |
| | | |
| | | //13ãçæ Index æä»¶ |
| | | str_generate = Index_Generate.CreateText(param); |
| | | tf = TextHelper.Export2File_V2(webRootPath, $"index.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | //14ãçæ enum æä»¶ |
| | | str_generate = enum_Generate.CreateText(param); |
| | | tf = TextHelper.Export2File_V2(webRootPath, $"enum.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | |
| | | //15ãçæ Controllers\File æä»¶ |
| | | str_generate = File_Generate.CreateText(param); |
| | | tf = TextHelper.Export2File_V2(webRootPath+ @"\Controllers", $"File.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | //16ãçæ Controllers\EntityMode æä»¶ |
| | | str_generate = EntityMode_Generate.CreateText(param); |
| | | tf = TextHelper.Export2File_V2(webRootPath + @"\Controllers", $"{tb_EntityName.Text.Trim()}.ts", tableName, str_generate, FileType.InputModel, filePrefixName, entityName, modulelogo); |
| | | |
| | | #endregion |
| | | |
| | | |
| | | |
| | | ////çæ OutputModel æä»¶ |
| | |
| | | |
| | | private void MainForm_Load(object sender, EventArgs e) |
| | | { |
| | | tb_EntityProName.Enabled = false; |
| | | //tb_EntityProName.Enabled = false; |
| | | tb_FileName.Enabled = false; |
| | | tb_Modulelogo.Enabled = false; |
| | | tb_WCF_NameSpacePath.Enabled = true; |
| | |
| | | public string ChinaComment { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 页é¢èåå |
| | | /// </summary> |
| | | public string PageMenuName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 页é¢èå对象缩å |
| | | /// </summary> |
| | | public string PageMenuInstanceName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ååå表 |
| | | /// </summary> |
| | | public List<ColumnModel> ColumnNameList { get; set; } = new List<ColumnModel>(); |
| | |
| | | |
| | | public const string c_ConcurrencyStamp = "ConcurrencyStamp"; |
| | | |
| | | public const string c_Sort = "Sort"; |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | using CMS.Plugin.$NameSpacePath$.Application.Contracts.Dtos.$EntityInstanceName$s; |
| | | using CMS.Plugin.$NameSpacePath$.Application.Contracts.Dtos.$EntityName$; |
| | | using CMS.Plugin.$NameSpacePath$.Application.Contracts.Services; |
| | | using CMS.Plugin.$NameSpacePath$.Domain.Shared; |
| | | using CMS.Plugin.$NameSpacePath$.Domain.Shared.Util; |
| | | using CMS.Plugin.$NameSpacePath$.Domain.Shared.$EntityInstanceName$s; |
| | | using CMS.Plugin.$NameSpacePath$.Domain.$EntityInstanceName$s; |
| | | using CMS.Plugin.$NameSpacePath$.Domain.Shared.$EntityName$; |
| | | using CMS.Plugin.$NameSpacePath$.Domain.$EntityName$; |
| | | using CmsQueryExtensions.Extension; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp; |
| | |
| | | |
| | | var $EntityInstanceName$CreateDtos = new List<(int RowIndex, $EntityName$CreateDto Item)>(); |
| | | var $EntityInstanceName$UpdateDtos = new List<(int RowIndex, Guid Id, $EntityName$UpdateDto Item)>(); |
| | | var $EntityInstanceName$s = input.$EntityInstanceName$s; |
| | | var importItems = input.$EntityName$s; |
| | | |
| | | if ($EntityInstanceName$s != null && $EntityInstanceName$s.Any()) |
| | | if (importItems != null && importItems.Any()) |
| | | { |
| | | #region 导å
¥æ ¡éª |
| | | |
| | | // 夿åç§°æ¯å¦éå¤ï¼å¹¶è¾åºç¬¬å è¡éå¤ |
| | | var duplicate$EntityName$s = $EntityInstanceName$s.GroupBy(x => x.MaterialCode).Where(x => x.Count() > 1).ToList(); |
| | | var duplicate$EntityName$s = importItems.GroupBy(x => x.MaterialCode).Where(x => x.Count() > 1).ToList(); |
| | | if (duplicate$EntityName$s?.Any() == true) |
| | | { |
| | | var duplicate$EntityName$Msgs = duplicate$EntityName$s.Select(x => $"第 {string.Join(",", x.Select(x => x.RowIndex))} è¡ï¼{x.Key} åç§°éå¤"); |
| | |
| | | |
| | | #endregion |
| | | |
| | | foreach (var $EntityInstanceName$ in $EntityInstanceName$s) |
| | | foreach (var impItem in importItems) |
| | | { |
| | | if ($EntityInstanceName$.MaterialCode.IsNullOrWhiteSpace() && $EntityInstanceName$.MaterialName.IsNullOrWhiteSpace()) |
| | | if (impItem.MaterialCode.IsNullOrWhiteSpace() && impItem.MaterialName.IsNullOrWhiteSpace()) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | if ($EntityInstanceName$.MaterialCode.IsNullOrWhiteSpace()) |
| | | if (impItem.MaterialCode.IsNullOrWhiteSpace()) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{$EntityInstanceName$.RowIndex}è¡ï¼$EntityInstanceName$åç§°ä¸è½ä¸ºç©º"; |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{impItem.RowIndex}è¡ï¼$EntityName$åç§°ä¸è½ä¸ºç©º"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | |
| | | var old$EntityName$ = await $EntityInstanceName$Repository.FindByNameAsync($EntityName$.MaterialCode); |
| | | var old$EntityName$ = await $EntityInstanceName$Repository.FindByNameAsync(impItem.MaterialCode); |
| | | if (old$EntityName$ != null) |
| | | { |
| | | var $EntityInstanceName$UpdateDto = new $EntityName$UpdateDto |
| | | { |
| | | $UpdateAttributesForImport$ |
| | | MaterialCode = impItem.MaterialCode, |
| | | MaterialName = impItem.MaterialName, |
| | | PurchaseType = impItem.PurchaseType, |
| | | MaterialType = impItem.MaterialType, |
| | | PrimaryUnit = impItem.PrimaryUnit, |
| | | Standard = impItem.Standard, |
| | | OuterDiameter = impItem.OuterDiameter, |
| | | WallThickness = impItem.WallThickness, |
| | | MaterialQuality = impItem.MaterialQuality, |
| | | Length = impItem.Length, |
| | | IsMainBranch = impItem.IsMainBranch, |
| | | Factory = impItem.Factory, |
| | | Certification = impItem.Certification, |
| | | Remark = impItem.Remark, |
| | | }; |
| | | |
| | | $EntityInstanceName$UpdateDtos.Add(($EntityName$.RowIndex, old$EntityName$.Id, $EntityInstanceName$UpdateDto)); |
| | | $EntityInstanceName$UpdateDtos.Add((impItem.RowIndex, old$EntityName$.Id, $EntityInstanceName$UpdateDto)); |
| | | } |
| | | else |
| | | { |
| | | var $EntityName$CreateDto = new $EntityName$CreateDto |
| | | var $EntityInstanceName$CreateDto = new $EntityName$CreateDto |
| | | { |
| | | $UpdateAttributesForImport$ |
| | | MaterialCode = impItem.MaterialCode, |
| | | MaterialName = impItem.MaterialName, |
| | | PurchaseType = impItem.PurchaseType, |
| | | MaterialType = impItem.MaterialType, |
| | | PrimaryUnit = impItem.PrimaryUnit, |
| | | Standard = impItem.Standard, |
| | | OuterDiameter = impItem.OuterDiameter, |
| | | WallThickness = impItem.WallThickness, |
| | | MaterialQuality = impItem.MaterialQuality, |
| | | Length = impItem.Length, |
| | | IsMainBranch = impItem.IsMainBranch, |
| | | Factory = impItem.Factory, |
| | | Certification = impItem.Certification, |
| | | Remark = impItem.Remark, |
| | | }; |
| | | |
| | | $EntityInstanceName$CreateDtos.Add(($EntityName$.RowIndex, $EntityName$CreateDto)); |
| | | $EntityInstanceName$CreateDtos.Add((impItem.RowIndex, $EntityInstanceName$CreateDto)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // æ°å¢ |
| | | foreach (var $EntityName$Dto in $EntityInstanceName$CreateDtos) |
| | | foreach (var $EntityInstanceName$Dto in $EntityInstanceName$CreateDtos) |
| | | { |
| | | try |
| | | { |
| | | await CreateAsync($EntityName$Dto.Item); |
| | | await CreateAsync($EntityInstanceName$Dto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{$EntityName$Dto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{$EntityInstanceName$Dto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | | |
| | | // æ´æ° |
| | | foreach (var $EntityName$Dto in $EntityInstanceName$UpdateDtos) |
| | | foreach (var $EntityInstanceName$Dto in $EntityInstanceName$UpdateDtos) |
| | | { |
| | | try |
| | | { |
| | | await UpdateAsync($EntityName$Dto.Id, $EntityName$Dto.Item); |
| | | await UpdateAsync($EntityInstanceName$Dto.Id, $EntityInstanceName$Dto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{$EntityName$Dto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{$EntityInstanceName$Dto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | |
| | | using CMS.Plugin.$NameSpacePath$.Application.Contracts.Dtos.$EntityName$s; |
| | | using CMS.Plugin.$NameSpacePath$.Application.Contracts.Dtos.$EntityName$; |
| | | using Volo.Abp.Application.Services; |
| | | |
| | | namespace CMS.Plugin.$NameSpacePath$.Application.Contracts.Services; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CmsQueryExtensions.Extension; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp.Domain.Repositories; |
| | | |
| | | namespace CMS.Plugin.$NameSpacePath$.Domain.$EntityName$; |
| | | |
| | | /// <summary> |
| | | /// $ChinaComment$ä»å¨ |
| | | /// </summary> |
| | | public interface I$EntityName$Repository : IBasicRepository<$EntityName$, Guid> |
| | | { |
| | | /// <summary> |
| | | /// æç
§åç§°æ¥æ¾$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<$EntityName$> FindByNameAsync(string name, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// éªè¯åç§°æ¯å¦åå¨$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | Task<bool> NameExistAsync(string name, Guid? id = null); |
| | | |
| | | /// <summary> |
| | | /// è·åæå¤§æåº$ChinaComment$ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<int> GetMaxSortAsync(); |
| | | |
| | | /// <summary> |
| | | /// è·åå页å表$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="sorting"></param> |
| | | /// <param name="maxResultCount"></param> |
| | | /// <param name="skipCount"></param> |
| | | /// <param name="includeDetails"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<List<$EntityName$>> GetListAsync(FunReturnResultModel<Expression<Func<$EntityName$, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// è·åæ»æ°$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<$EntityName$, bool>>> whereConditions, CancellationToken cancellationToken = default); |
| | | } |
| | |
| | | using CMS.Plugin.$NameSpacePath$.Domain.Shared.Enums; |
| | | using Volo.Abp.Application.Dtos; |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.Domain.Entities; |
| | | |
| | | |
| | | namespace CMS.Plugin.$NameSpacePath$.Application.Contracts.Dtos.$EntityName$; |
| | | |
| | |
| | | public class $EntityName$Dto: ExtensibleEntityDto<Guid>, IHasConcurrencyStamp |
| | | { |
| | | $AddAttributesForDto$ |
| | | |
| | | /// <summary> |
| | | /// å¹¶åæ³ |
| | | /// </summary> |
| | | public string ConcurrencyStamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// Gets the export data. |
| | |
| | | /// <summary> |
| | | /// $ChinaComment$导å
¥æ¨¡å |
| | | /// </summary> |
| | | public class $EntityName$ImportModel : MaterialExportModel |
| | | public class $EntityName$ImportModel : $EntityName$ExportModel |
| | | { |
| | | /// <summary> |
| | | /// è¡å· |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.$NameSpacePath$.Domain.$EntityName$; |
| | | using CMS.Plugin.$NameSpacePath$.EntityFrameworkCore.Extensions; |
| | | using CmsQueryExtensions.Extension; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using System.Linq.Dynamic.Core; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp.Domain.Repositories.EntityFrameworkCore; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | |
| | | |
| | | namespace CMS.Plugin.$NameSpacePath$.EntityFrameworkCore.Repositories; |
| | | |
| | | /// <summary> |
| | | /// $ChinaComment$ä»å¨å®ç° |
| | | /// </summary> |
| | | public class EfCore$EntityName$Repository : EfCoreRepository<ICMSPluginDbContext, $EntityName$, Guid>, I$EntityName$Repository |
| | | { |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="EfCore$EntityName$Repository"/> class. |
| | | /// </summary> |
| | | /// <param name="dbContextProvider">The database context provider.</param> |
| | | public EfCore$EntityName$Repository(IDbContextProvider<ICMSPluginDbContext> dbContextProvider) |
| | | : base(dbContextProvider) |
| | | { |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æç
§åç§°æ¥æ¾$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<$EntityName$> FindByNameAsync(string name, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .Where(x => !x.IsDeleted) |
| | | .OrderBy(t => t.Sort) |
| | | .FirstOrDefaultAsync(t => t.MaterialCode == name, GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// éªè¯åç§°æ¯å¦åå¨$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="materialCode"></param> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public async Task<bool> NameExistAsync(string materialCode, Guid? id = null) |
| | | { |
| | | return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).Where(x => !x.IsDeleted).AnyAsync(x => x.MaterialCode == materialCode); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åæå¤§æåº$ChinaComment$ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public async Task<int> GetMaxSortAsync() |
| | | { |
| | | var hasAny = await (await GetQueryableAsync()) |
| | | .Where(x => !x.IsDeleted).AnyAsync(); |
| | | if (!hasAny) |
| | | { |
| | | return 1; |
| | | } |
| | | |
| | | var sort = await (await GetQueryableAsync()) |
| | | .Where(x => !x.IsDeleted).MaxAsync(x => x.Sort); |
| | | return sort + 1; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åå页å表$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="sorting"></param> |
| | | /// <param name="maxResultCount"></param> |
| | | /// <param name="skipCount"></param> |
| | | /// <param name="includeDetails"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<List<$EntityName$>> GetListAsync(FunReturnResultModel<Expression<Func<$EntityName$, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails(includeDetails) |
| | | .WhereIf(whereConditions != null, whereConditions.data) |
| | | .Where(x => !x.IsDeleted) |
| | | .OrderBy(sorting.IsNullOrEmpty() ? nameof($EntityName$.Sort) : sorting) |
| | | .PageBy(skipCount, maxResultCount) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åæ»æ°$ChinaComment$ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<$EntityName$, bool>>> whereConditions, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetQueryableAsync()) |
| | | .WhereIf(whereConditions != null, whereConditions.data) |
| | | .Where(x => !x.IsDeleted) |
| | | .CountAsync(cancellationToken: GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | |
| | | /// <inheritdoc /> |
| | | public override async Task<IQueryable<$EntityName$>> WithDetailsAsync() |
| | | { |
| | | return (await GetQueryableAsync()) |
| | | .Where(x => !x.IsDeleted).IncludeDetails(); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { ref, onMounted, reactive, Ref, nextTick, computed } from 'vue' |
| | | import { injectModel } from '@/libs/Provider/Provider' |
| | | import { $EntityName$ } from '../Models/$EntityName$' |
| | | import { ElMessage } from 'element-plus' |
| | | import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' |
| | | import { useFile } from './File' |
| | | |
| | | interface CurrentType { |
| | | row: any |
| | | index: number |
| | | } |
| | | export const use$EntityName$ = (props: any, ctx?: any) => { |
| | | const $PageMenuInstanceName$ = injectModel<$EntityName$>('$PageMenuInstanceName$') |
| | | const { exportFile } = useFile() |
| | | /** |
| | | * 头é¨é
ç½® |
| | | */ |
| | | const headers = ref({}) |
| | | /** |
| | | * 卿åé
ç½® |
| | | */ |
| | | const $PageMenuInstanceName$Columns = ref<Record<string, any>>([]) |
| | | /** |
| | | * æç´¢å¼ |
| | | */ |
| | | const search = ref('') |
| | | |
| | | /** |
| | | * æåº |
| | | */ |
| | | const sort = ref(0) |
| | | /** |
| | | * 鿩项 |
| | | */ |
| | | const selection = ref([]) |
| | | /** |
| | | * å½åéä¸çè¡ |
| | | */ |
| | | const current = ref<any>(null) |
| | | /** |
| | | * æ°æ®æº |
| | | */ |
| | | const dataSource: Ref<any[]> = ref([]) |
| | | |
| | | /** |
| | | * è¡¨æ ¼ |
| | | */ |
| | | const tableRef = ref() |
| | | const dialogConfig = reactive({ |
| | | visible: false, |
| | | title: '', |
| | | isAdd: false, |
| | | }) |
| | | const dialogConfigForQuery = reactive({ |
| | | visible: false, |
| | | title: '', |
| | | isAdd: false, |
| | | }) |
| | | |
| | | |
| | | const dialogSettingConfig = reactive({ |
| | | visible: false, |
| | | title: '', |
| | | }) |
| | | |
| | | /** |
| | | * åé¡µæ°æ® |
| | | */ |
| | | const paginationParams = ref({}) |
| | | |
| | | /** |
| | | * æå¼è¯¦æ
|
| | | * @param row |
| | | */ |
| | | const openDetail = (row: any) => { |
| | | current.value = row |
| | | dialogConfig.visible = true |
| | | dialogConfig.title = row.name |
| | | dialogConfig.isAdd = false |
| | | sort.value = row.sort |
| | | } |
| | | |
| | | const contextMenu = [ |
| | | { |
| | | label: 'å±å¼è¯¦æ
', |
| | | fn: (c: CurrentType) => { |
| | | current.value = null |
| | | sort.value = c.row.sort |
| | | nextTick(() => openDetail(c.row)) |
| | | }, |
| | | divided: true, |
| | | icon: 'o', |
| | | }, |
| | | // { |
| | | // label: 'å䏿·»å ', |
| | | // fn: (c: CurrentType, pageNum: number) => { |
| | | // current.value = null |
| | | // sort.value = c.index + 1 + (pageNum - 1) * 50 |
| | | // dialogConfig.visible = true |
| | | // dialogConfig.title = 'æ·»å ' |
| | | // dialogConfig.isAdd = false |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'up', |
| | | // }, |
| | | // { |
| | | // label: 'å䏿·»å ', |
| | | // fn: (c: CurrentType, pageNum: number) => { |
| | | // current.value = null |
| | | // sort.value = c.index + 2 + (pageNum - 1) * 50 |
| | | // dialogConfig.visible = true |
| | | // dialogConfig.title = 'æ·»å ' |
| | | // dialogConfig.isAdd = false |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'down', |
| | | // }, |
| | | // { |
| | | // label: 'åå»ºå¯æ¬', |
| | | // fn: async ({ row }: CurrentType) => { |
| | | // await $PageMenuInstanceName$.cloneData([row.id]) |
| | | // ElMessage.success('åå»ºå¯æ¬æå') |
| | | // tableRef.value?.getList() |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'copy', |
| | | // }, |
| | | { |
| | | label: 'å é¤', |
| | | fn: async (c: CurrentType) => { |
| | | const names = selection.value.map((item: { name: string }) => item.name) |
| | | ConfirmBox( |
| | | `æ¯å¦å é¤${names.length ? names.join(',') : c.row.name}` |
| | | ).then(async () => { |
| | | const ids = selection.value.map((item: { id: string }) => item.id) |
| | | await $PageMenuInstanceName$.delete$EntityName$s(ids.length ? ids : [c.row.id]) |
| | | ElMessage.success('å 餿å') |
| | | tableRef.value.getList() |
| | | }) |
| | | }, |
| | | icon: 'close', |
| | | }, |
| | | ] |
| | | |
| | | const onCheck = (records: any) => { |
| | | selection.value = records |
| | | } |
| | | |
| | | const onAdd$EntityName$ = () => { |
| | | const params = tableRef.value?.getPaginationParams() |
| | | current.value = null |
| | | dialogConfig.visible = true |
| | | dialogConfig.isAdd = true |
| | | dialogConfig.title = 'æ·»å ' |
| | | sort.value = params.totalCount + 1 |
| | | } |
| | | |
| | | //ç¹å»æé®ãé«çº§æ¥è¯¢ã |
| | | const onAdvancedQuery = () => { |
| | | const params = tableRef.value?.getPaginationParams() |
| | | current.value = null |
| | | dialogConfigForQuery.visible = true |
| | | dialogConfigForQuery.isAdd = true |
| | | dialogConfigForQuery.title = 'é«çº§æ¥è¯¢' |
| | | } |
| | | |
| | | const onConfirm$EntityName$ = async () => { |
| | | dialogConfig.visible = false |
| | | if (dialogConfig.isAdd) { |
| | | tableRef.value?.scrollToRow({ |
| | | skip: true, |
| | | }) |
| | | } else { |
| | | await tableRef.value?.getList() |
| | | } |
| | | } |
| | | /** |
| | | * è¡ç¹å»æ¶æ´æ°current |
| | | */ |
| | | const onRowClick = ({ row }: any) => { |
| | | if (dialogConfig.visible && current.value) { |
| | | current.value = row |
| | | } |
| | | } |
| | | /** |
| | | * å¯¼åº |
| | | */ |
| | | const onExport = (data={}) => { |
| | | //const params = tableRef.value?.getParams() |
| | | exportFile('/api/v1/hIAWms/$PageMenuInstanceName$/export', data, 'hIAWms') |
| | | } |
| | | |
| | | /** |
| | | * å
³é®åæç´¢ |
| | | */ |
| | | const onSearch = () => { |
| | | tableRef.value?.getList({ |
| | | Filter: search.value, |
| | | }) |
| | | } |
| | | |
| | | /** |
| | | * éç½®è¡¨æ ¼æ°æ® |
| | | */ |
| | | const reloadList = () => { |
| | | tableRef.value?.getList() |
| | | } |
| | | /** |
| | | * ä¸ä¼ æå |
| | | */ |
| | | const onSuccess = () => { |
| | | tableRef.value?.getList() |
| | | ElMessage.success('导å
¥æå') |
| | | } |
| | | /** |
| | | * 失败 |
| | | * @param err |
| | | */ |
| | | const onError = (err: any) => { |
| | | try { |
| | | const message = JSON.parse(err.message) |
| | | ElMessage.error(message.msg) |
| | | } catch (error) { |
| | | ElMessage.error('导å
¥å¤±è´¥') |
| | | } |
| | | } |
| | | /** |
| | | * ä¸ä¼ é©å |
| | | */ |
| | | const onBeforeUpload = (file: File) => { |
| | | const format = ['xlsx', 'xls', 'csv'] |
| | | if (!format.includes(file.name.split('.')[1])) { |
| | | ElMessage.error('导å
¥æä»¶æ ¼å¼ä¸æ£ç¡®ï¼è¯·å¯¼å
¥.xlsx/.xlsä¸.csvæ ¼å¼çæä»¶') |
| | | return false |
| | | } |
| | | return true |
| | | } |
| | | |
| | | onMounted(() => { |
| | | headers.value = { |
| | | Authorization: `Bearer ${sessionStorage.getItem('Token')}`, |
| | | 'X-Project': sessionStorage.getItem('X-Project'), |
| | | } |
| | | }) |
| | | |
| | | ctx.expose({ |
| | | reloadList, |
| | | }) |
| | | |
| | | return { |
| | | dataSource, |
| | | contextMenu, |
| | | dialogConfig, |
| | | dialogConfigForQuery, |
| | | dialogSettingConfig, |
| | | tableRef, |
| | | current, |
| | | search, |
| | | sort, |
| | | $PageMenuInstanceName$Columns, |
| | | paginationParams, |
| | | headers, |
| | | onBeforeUpload, |
| | | onError, |
| | | onSuccess, |
| | | openDetail, |
| | | onSearch, |
| | | onExport, |
| | | onRowClick, |
| | | onConfirm$EntityName$, |
| | | onCheck, |
| | | onAdd$EntityName$, |
| | | onAdvancedQuery |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { importFileToService, exportFileToClient } from '@/api/file' |
| | | import { ElMessage } from 'element-plus' |
| | | import { downloadFile } from '@/utils' |
| | | import dayjs from 'dayjs' |
| | | |
| | | export const useFile = () => { |
| | | /** |
| | | * 导å
¥æä»¶ |
| | | * @param url |
| | | */ |
| | | const importFile = async (url: string, file: File) => { |
| | | const formData = new FormData() |
| | | formData.append('file', file) |
| | | await importFileToService(url, formData) |
| | | ElMessage('导å
¥æå') |
| | | } |
| | | /** |
| | | * å¯¼åºæä»¶ |
| | | * @param url |
| | | */ |
| | | const exportFile = async (url: string, params: any, name: string) => { |
| | | const res = await exportFileToClient(url, params) |
| | | downloadFile(res, `${name}_${dayjs().format('YYYYMMDDHHMMss')}.xlsx`) |
| | | ElMessage.success('å¯¼åºæå') |
| | | } |
| | | |
| | | return { |
| | | importFile, |
| | | exportFile, |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | export interface TabType { |
| | | label: string |
| | | name: string |
| | | columns?: any[] |
| | | data?: any[] |
| | | isFooter: boolean |
| | | [key: string]: any |
| | | } |
| | | |
| | | export const permissionCodes = { |
| | | '$PageMenuInstanceName$-list': 'å表-å表', |
| | | '$PageMenuInstanceName$-add': 'å表-æ·»å ', |
| | | '$PageMenuInstanceName$-import': 'å表-导å
¥', |
| | | '$PageMenuInstanceName$-output': 'å表-è¾åº', |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import $NameSpacePath$ from './Views/$NameSpacePath$' |
| | | import Setting from '@/components/Setting/Setting' |
| | | import { provider } from '@/provider/index' |
| | | import p from '../../assets/svg/p.svg' |
| | | |
| | | export default { |
| | | is: '$NameSpacePath$', |
| | | name: '$PageMenuName$', |
| | | category: 'run', |
| | | icon: p, |
| | | authorizationRequired: false, |
| | | canvasView: provider($NameSpacePath$), |
| | | settingsView: Setting, |
| | | } |
| | |
| | | { |
| | | str = str.Replace("$NameSpacePath$", param.NameSpacePath);//å½åç©ºé´ |
| | | str = str.Replace("$ChinaComment$", param.ChinaComment);//ä¸ææ³¨é |
| | | str = str.Replace("$PageMenuName$", param.PageMenuName);//ä¸ææ³¨é |
| | | str = str.Replace("$PageMenuInstanceName$", param.PageMenuInstanceName);//ä¸ææ³¨é |
| | | str = str.Replace("$EntityName$", param.EntityName);//å®ä½ç±»å |
| | | str = str.Replace("$Modulelogo$", param.Modulelogo);//模åç®å |
| | | str = str.Replace("$EntityInstanceName$", param.EntityInstanceName);//å®ä¾å |
| | |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_CreateId.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_ModifyId.ToUpper() |
| | | |
| | | ) |
| | | { |
| | | continue; |
| | | } |
| | | newList.Add(columnModel); |
| | | } |
| | | return newList; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è¿æ»¤ï¼æ´æ°å®ä½ç±»æ¶ä¸ç¨ |
| | | /// </summary> |
| | | /// <param name="columnNameList"></param> |
| | | /// <returns></returns> |
| | | public static List<ColumnModel> RemoveAttrForUpdateMode(List<ColumnModel> columnNameList) |
| | | { |
| | | List<ColumnModel> newList = new List<ColumnModel>(); |
| | | ColumnModel columnModel = null; |
| | | for (int i = 0; i < columnNameList.Count; i++) |
| | | { |
| | | columnModel = columnNameList[i]; |
| | | if (columnModel.ColumnName.ToUpper() == SystemCommonVar.c_creator.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_createTime.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_lastModifier.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_lastModifyTime.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_ModifyTime.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_Id.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_ExtraProperties.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_ConcurrencyStamp.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_DeleterId.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_delFlag.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_CreateId.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_ModifyId.ToUpper() |
| | | || columnModel.ColumnName.ToUpper() == SystemCommonVar.c_Sort.ToUpper() |
| | | |
| | | ) |
| | | { |
| | | continue; |
| | |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using GenerateCode_WeiBen_WMS.Const; |
| | | using GenerateCode_WeiBen_WMS.Model; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Configuration; |
| | |
| | | attrStr += " public float" + str_NullFlag + attr + " { get; set; }\n"; |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public bool" + str_NullFlag + attr + " { get; set; }\n"; |
| | | break; |
| | |
| | | // var bb = ""; |
| | | //} |
| | | string str_NullFlag = " "; |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | |
| | | string attrStr = ""; |
| | | attrStr += " /// <summary>\n"; |
| | |
| | | case DataTypeEnum.dt_bigint: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public long" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_decimal: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public decimal" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_tinyint: |
| | | case DataTypeEnum.dt_bit: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public bool" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_int: |
| | |
| | | string attr = columnModel.ColumnName; |
| | | |
| | | string attrStr = ""; |
| | | attrStr += $" {attr} = {param.EntityInstanceName}.{attr};\n"; |
| | | attrStr += $" {attr} = {param.EntityInstanceName}.{attr},\n"; |
| | | |
| | | |
| | | return attrStr; |
| | |
| | | } |
| | | break; |
| | | case DataTypeEnum.dt_bigint: |
| | | if (isHaveMaxLength) |
| | | { |
| | | attrStr += $" Check.NotNull(input.{attr}, \"{columnModel.Description}\", {columnModel.DataLength});\n"; |
| | | } |
| | | else |
| | | { |
| | | attrStr += $" Check.NotNull(input.{attr}, \"{columnModel.Description}\");\n"; |
| | | } |
| | | break; |
| | | case DataTypeEnum.dt_int: |
| | | case DataTypeEnum.dt_decimal: |
| | | case DataTypeEnum.dt_tinyint: |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_int: |
| | | if (isHaveMaxLength) |
| | | { |
| | | attrStr += $" Check.NotNull(input.{attr}, \"{columnModel.Description}\", {columnModel.DataLength});\n"; |
| | |
| | | // var bb = ""; |
| | | //} |
| | | string str_NullFlag = " "; |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | |
| | | string attrStr = ""; |
| | | attrStr += " /// <summary>\n"; |
| | |
| | | case DataTypeEnum.dt_datetime: |
| | | case DataTypeEnum.dt_datetime2: |
| | | case DataTypeEnum.dt_datetimeoffset: |
| | | attrStr += " public datetime" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += " public DateTime" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_bigint: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public long" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_decimal: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public decimal" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_tinyint: |
| | | case DataTypeEnum.dt_bit: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public bool" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_int: |
| | |
| | | |
| | | break; |
| | | default: |
| | | //ç¹æ®å¤ç åæ®µ ExtraProperties |
| | | if (columnModel.ColumnName.ToUpper() == SystemConst.pro_ExtraProperties.ToUpper()) |
| | | { |
| | | attrStr += " public ExtraPropertyDictionary" + str_NullFlag + attr + " { get; set; }\n"; |
| | | } |
| | | else |
| | | { |
| | | attrStr += " public string" + str_NullFlag + attr + " { get; set; }\n"; |
| | | } |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | } |
| | |
| | | attrStr += " /// <summary>\n"; |
| | | attrStr += " /// " + columnModel.Description + "\n"; |
| | | attrStr += " /// </summary>\n"; |
| | | attrStr += " public string" + str_NullFlag + findEnumObj.EnumTypeDesc + " { get; set; }\n"; |
| | | attrStr += " public string" + str_NullFlag + findEnumObj.EnumTypeDesc + "\n"; |
| | | attrStr += " { \n"; |
| | | attrStr += " get \n"; |
| | | attrStr += " { \n"; |
| | |
| | | case DataTypeEnum.dt_bigint: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public long" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_decimal: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public decimal" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_tinyint: |
| | | case DataTypeEnum.dt_bit: |
| | | if (columnModel.IsNullable) { str_NullFlag = "? "; } |
| | | attrStr += " public bool" + str_NullFlag + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_int: |
| | |
| | | attrStr += " public long" + str_NullFlag + emptyStr + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_decimal: |
| | | attrStr += " public decimal" + str_NullFlag + emptyStr + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_int: |
| | | attrStr += " public int" + str_NullFlag + emptyStr + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | attrStr += " public bool" + str_NullFlag + emptyStr + attr + " { get; set; }\n"; |
| | | attrStr += "\n";//æåæ¯å ä¸ä¸ªç©ºæ ¼ |
| | |
| | | case DataTypeEnum.dt_datetimeoffset: |
| | | return "\n"; |
| | | case DataTypeEnum.dt_bigint: |
| | | case DataTypeEnum.dt_decimal: |
| | | case DataTypeEnum.dt_int: |
| | | case DataTypeEnum.dt_tinyint: |
| | | attrStr += " public SearchFilterModeEnum " + attr + highSearchModeSuffix + " { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢;\n"; |
| | |
| | | defaultValue = "getdate()"; |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | defaultValue = "0"; |
| | | break; |
| | | default: |
| | |
| | | case DataTypeEnum.dt_datetime2: |
| | | case DataTypeEnum.dt_datetimeoffset: |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sql.Append("@" + attrColumnName + " " + columnModel.DataType + " " + fuhao + "\n"); |
| | | break; |
| | | case DataTypeEnum.dt_decimal: |
| | |
| | | case DataTypeEnum.dt_datetime2: |
| | | case DataTypeEnum.dt_datetimeoffset: |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sql.Append("@" + attrColumnName + " " + columnModel.DataType + " " + fuhao + "\n"); |
| | | break; |
| | | case DataTypeEnum.dt_decimal: |
| | |
| | | case DataTypeEnum.dt_datetime2: |
| | | case DataTypeEnum.dt_datetimeoffset: |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sql.Append("@" + attrColumnName + " " + columnModel.DataType + " " + fuhao); |
| | | break; |
| | | case DataTypeEnum.dt_decimal: |
| | |
| | | case DataTypeEnum.dt_datetime2: |
| | | case DataTypeEnum.dt_datetimeoffset: |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | updateSql = " " + attrColumnName + "= case @" + attrColumnName + " when NULL then " + attrColumnName + " else @" + attrColumnName + " end "; |
| | | break; |
| | | default: |
| | |
| | | str += "SqlDbType.Float," + columnModel.DataLength.ToString(); |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | str += "SqlDbType.Bit," + columnModel.DataLength.ToString(); |
| | | break; |
| | | } |
| | |
| | | sb.Append("} \n"); |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sb.Append("if (dataRow[\"" + columnModel.ColumnName.ToString() + "\"].ToString() != \"\") \n"); |
| | | sb.Append("{ \n"); |
| | | |
| | |
| | | sb.Append(" </el-table-column> \n"); |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sb.Append(" <el-table-column prop=\"" + columnModel.ColumnName + "\" label=\"" + columnModel.Description + "\" align=\"center\" > \n"); |
| | | sb.Append("<template slot-scope=\"scope\">"); |
| | | sb.Append("<el-tag :type=\"scope.row." + columnModel.ColumnName + " ? 'danger' : 'success'\""); |
| | |
| | | switch (enumDT) |
| | | { |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sb.Append(" <el-switch v-model=\"addForm." + columnModel.ColumnName + "\"></el-switch> \n"); |
| | | break; |
| | | case DataTypeEnum.dt_datetime: |
| | |
| | | switch (enumDT) |
| | | { |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sb.Append(" <el-switch v-model=\"viewDetailForm." + columnModel.ColumnName + "\"></el-switch> \n"); |
| | | break; |
| | | case DataTypeEnum.dt_datetime: |
| | |
| | | elment = "el-date-picker"; |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | elment = "el-select"; |
| | | break; |
| | | default: |
| | |
| | | switch (enumDT) |
| | | { |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sb.Append(" options: [{label: 'æ¯',value: 'true'}, {label: 'å¦',value: 'false'}] \n"); |
| | | break; |
| | | default: |
| | |
| | | sb.Append("<el-input v-model=\"serachObj." + columnModel.ColumnName + "\" placeholder=\"请è¾å
¥" + columnModel.Description + "\"></el-input> \n"); |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sb.Append("<el-checkbox-group v-model=\"ck_delflag\" @change=\"ckDelFlag\">\n"); |
| | | sb.Append(" <el-checkbox-button label=\"å¯ç¨\" name=\"ck_delflag\"></el-checkbox-button>\n"); |
| | | sb.Append(" <el-checkbox-button label=\"ç¦ç¨\" name=\"ck_delflag\"></el-checkbox-button>\n"); |
| | |
| | | switch (enumDT) |
| | | { |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | case DataTypeEnum.dt_datetime: |
| | | case DataTypeEnum.dt_datetime2: |
| | | case DataTypeEnum.dt_datetimeoffset: |
| | |
| | | sb.Append(" } \n"); |
| | | break; |
| | | case DataTypeEnum.dt_bit: |
| | | case DataTypeEnum.dt_tinyint: |
| | | sb.Append(" if (!string.IsNullOrEmpty(queryModel." + columnModel.ColumnName + ")) \n"); |
| | | sb.Append(" { \n"); |
| | | sb.Append(" strWhere += \" AND $TableAlias$." + columnModel.ColumnName + " = '\" + queryModel." + columnModel.ColumnName + " + \"'\"; \n"); |
| | |
| | |  |
| | | $ChinaComment$ |
| | | |
| | | $PageMenuName$ |
| | | |
| | | $EntityName$ |
| | | |
| | | $NameSpacePath$ |
| | | |
| | | $EntityInstanceName$ |
| | | |
| | | |
| | | $PageMenuInstanceName$ |
| | |
| | | using CmsQueryExtensions.Extension; |
| | | using CmsQueryExtensions.Extension; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | |
| | | /// <summary> |
| | | /// å¤å¾ï¼åä½ï¼mmï¼ |
| | | /// </summary> |
| | | public string OuterDiameter { get; set; } |
| | | public decimal? OuterDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾ï¼åä½ï¼mmï¼-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum OuterDiameter_FilterMode { get; set; } = SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | public SearchFilterModeEnum OuterDiameter_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å£åï¼åä½ï¼mmï¼ |
| | | /// </summary> |
| | | public string WallThickness { get; set; } |
| | | public decimal? WallThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å£åï¼åä½ï¼mmï¼-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum WallThickness_FilterMode { get; set; } = SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | public SearchFilterModeEnum WallThickness_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æè´¨ï¼å¦ï¼304ä¸éé¢ï¼ |
| | |
| | | /// <summary> |
| | | /// é¿åº¦ï¼åä½ï¼mï¼ |
| | | /// </summary> |
| | | public string Length { get; set; } |
| | | public decimal? Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦ï¼åä½ï¼mï¼-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Length_FilterMode { get; set; } = SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | public SearchFilterModeEnum Length_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ä¸ºä¸»æ¯ç®¡ |
| | |
| | | /// æ¯å¦ç¦ç¨-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum IsDisabled_FilterMode { get; set; } = SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string ConcurrencyStamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ConcurrencyStamp_FilterMode { get; set; } = SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// |
| | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialåå»ºåæ°å¯¹è±¡ |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨åå»ºåæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WmsMaterialCreateDto : WmsMaterialCreateOrUpdateDtoBase |
| | | { |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// ç©æåºç¡ä¿¡æ¯åå»ºææ´æ°åºç±» |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨åå»ºææ´æ°åºç±» |
| | | /// </summary> |
| | | public abstract class WmsMaterialCreateOrUpdateDtoBase : ExtensibleEntityDto |
| | | { |
| | |
| | | /// <summary> |
| | | /// 主åä½ï¼å¦ï¼kgãmãä¸ªï¼ |
| | | /// </summary> |
| | | public string PrimaryUnit { get; set; } |
| | | public string? PrimaryUnit { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è§æ ¼/æ åï¼å¦ï¼GB/T 8163-2018ï¼ |
| | | /// </summary> |
| | | public string Standard { get; set; } |
| | | public string? Standard { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾ï¼åä½ï¼mmï¼ |
| | |
| | | /// <summary> |
| | | /// æè´¨ï¼å¦ï¼304ä¸éé¢ï¼ |
| | | /// </summary> |
| | | public string MaterialQuality { get; set; } |
| | | public string? MaterialQuality { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦ï¼åä½ï¼mï¼ |
| | |
| | | public decimal Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ä¸ºä¸»æ¯ç®¡ï¼true: 主æ¯ç®¡, false: é主æ¯ç®¡ï¼ |
| | | /// æ¯å¦ä¸ºä¸»æ¯ç®¡ |
| | | /// </summary> |
| | | public YesNoEnum IsMainBranch { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç产工å |
| | | /// </summary> |
| | | public string Factory { get; set; } |
| | | public string? Factory { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è¯ä¹¦ç¼å·ï¼å¦ï¼åå容å¨è®¤è¯ï¼ |
| | | /// è¯ä¹¦ç¼å· |
| | | /// </summary> |
| | | public string Certification { get; set; } |
| | | public string? Certification { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段1 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField1 { get; set; } |
| | | public string? RedundantField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段2 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField2 { get; set; } |
| | | public string? RedundantField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段3 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField3 { get; set; } |
| | | public string? RedundantField3 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public int Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public virtual string Remark { get; set; } |
| | | public string? Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public bool? IsDisabled { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string? CreatorId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string? LastModifierId { get; set; } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialCreateOrUpdateDtoBase"/> class. |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using Volo.Abp.Application.Dtos; |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.Domain.Entities; |
| | | |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialæ°æ®åæ°å¯¹è±¡ |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨æ°æ®åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WmsMaterialDto : ExtensibleEntityDto<Guid>, IHasConcurrencyStamp |
| | | { |
| | |
| | | return GetEnumDescriptionUtil.GetEnumDescription(PurchaseType); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç©æç±»åï¼æä¸¾å¼ï¼ |
| | | /// </summary> |
| | |
| | | return GetEnumDescriptionUtil.GetEnumDescription(MaterialType); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 主åä½ï¼å¦ï¼kgãmãä¸ªï¼ |
| | | /// </summary> |
| | | public string PrimaryUnit { get; set; } |
| | | public string? PrimaryUnit { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è§æ ¼/æ åï¼å¦ï¼GB/T 8163-2018ï¼ |
| | | /// </summary> |
| | | public string Standard { get; set; } |
| | | public string? Standard { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾ï¼åä½ï¼mmï¼ |
| | |
| | | /// <summary> |
| | | /// æè´¨ï¼å¦ï¼304ä¸éé¢ï¼ |
| | | /// </summary> |
| | | public string MaterialQuality { get; set; } |
| | | public string? MaterialQuality { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦ï¼åä½ï¼mï¼ |
| | |
| | | public decimal Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ä¸ºä¸»æ¯ç®¡ï¼1: 主æ¯ç®¡, 2: é主æ¯ç®¡ï¼ |
| | | /// æ¯å¦ä¸ºä¸»æ¯ç®¡ |
| | | /// </summary> |
| | | public YesNoEnum IsMainBranch { get; set; } |
| | | |
| | |
| | | return GetEnumDescriptionUtil.GetEnumDescription(IsMainBranch); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç产工å |
| | | /// </summary> |
| | | public string Factory { get; set; } |
| | | public string? Factory { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è¯ä¹¦ç¼å·ï¼å¦ï¼åå容å¨è®¤è¯ï¼ |
| | | /// è¯ä¹¦ç¼å· |
| | | /// </summary> |
| | | public string Certification { get; set; } |
| | | public string? Certification { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段1 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField1 { get; set; } |
| | | public string? RedundantField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段2 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField2 { get; set; } |
| | | public string? RedundantField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段3 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField3 { get; set; } |
| | | public string? RedundantField3 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public virtual int Sort { get; set; } |
| | | public int Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public virtual string Remark { get; set; } |
| | | public string? Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public virtual bool? IsDisabled { get; set; } |
| | | public bool? IsDisabled { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¹¶åæ³ |
| | | /// |
| | | /// </summary> |
| | | public string ConcurrencyStamp { get; set; } |
| | | public ExtraPropertyDictionary? ExtraProperties { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string? ConcurrencyStamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public DateTime CreationTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string? CreatorId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public DateTime? LastModificationTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string? LastModifierId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public bool IsDeleted { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public string? DeleterId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | public DateTime? DeletionTime { get; set; } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// Gets the export data. |
| | |
| | | using MiniExcelLibs.Attributes; |
| | | using MiniExcelLibs.Attributes; |
| | | using System.ComponentModel.DataAnnotations; |
| | | using System.ComponentModel; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial |
| | | { |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialå¯¼åºæ¨¡å |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨å¯¼åºæ¨¡å |
| | | /// </summary> |
| | | public class MaterialExportModel |
| | | public class WmsMaterialExportModel |
| | | { |
| | | /// <summary> |
| | | /// ç©æç¼ç ï¼å¯ä¸æ è¯ï¼ |
| | | /// </summary> |
| | | /// <example>MAT-2023-001</example> |
| | | [ExcelColumn(Name = "ç©æç¼ç ", Width = 25)] |
| | | [ExcelColumn(Name = "ç©æç¼ç ï¼å¯ä¸æ è¯ï¼", Width = 25)] |
| | | public string MaterialCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | /// <example>304ä¸éé¢ç®¡</example> |
| | | [ExcelColumn(Name = "ç©æåç§°", Width = 25)] |
| | | public string MaterialName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// éè´ç±»å |
| | | /// éè´ç±»åï¼æä¸¾å¼ï¼ |
| | | /// </summary> |
| | | /// <remarks> |
| | | /// 0:æ åéè´ 1:ç´§æ¥éè´ 2:åè®®éè´ |
| | | /// </remarks> |
| | | /// <example>0</example> |
| | | [ExcelColumn(Name = "éè´ç±»å", Width = 25)] |
| | | [ExcelColumn(Name = "éè´ç±»åï¼æä¸¾å¼ï¼", Width = 25)] |
| | | public PurchaseTypeEnum PurchaseType { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æç±»å |
| | | /// ç©æç±»åï¼æä¸¾å¼ï¼ |
| | | /// </summary> |
| | | /// <remarks> |
| | | /// 1:åææ 2:åæå 3:æå |
| | | /// </remarks> |
| | | /// <example>1</example> |
| | | [ExcelColumn(Name = "ç©æç±»å", Width = 25)] |
| | | [ExcelColumn(Name = "ç©æç±»åï¼æä¸¾å¼ï¼", Width = 25)] |
| | | public MaterialTypeEnum MaterialType { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 主计éåä½ |
| | | /// 主åä½ï¼å¦ï¼kgãmãä¸ªï¼ |
| | | /// </summary> |
| | | /// <example>kg</example> |
| | | [ExcelColumn(Name = "主åä½", Width = 25)] |
| | | [ExcelColumn(Name = "主åä½ï¼å¦ï¼kgãmã个ï¼", Width = 25)] |
| | | public string PrimaryUnit { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è§æ ¼/ææ¯æ å |
| | | /// è§æ ¼/æ åï¼å¦ï¼GB/T 8163-2018ï¼ |
| | | /// </summary> |
| | | /// <example>GB/T 8163-2018</example> |
| | | [ExcelColumn(Name = "è§æ ¼/æ å", Width = 25)] |
| | | [ExcelColumn(Name = "è§æ ¼/æ åï¼å¦ï¼GB/T 8163-2018ï¼", Width = 25)] |
| | | public string Standard { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾ï¼åä½ï¼æ¯«ç±³ï¼ |
| | | /// å¤å¾ï¼åä½ï¼mmï¼ |
| | | /// </summary> |
| | | /// <example>50.5</example> |
| | | [ExcelColumn(Name = "å¤å¾(mm)", Width = 25)] |
| | | [ExcelColumn(Name = "å¤å¾ï¼åä½ï¼mmï¼", Width = 25)] |
| | | public decimal OuterDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å£åï¼åä½ï¼æ¯«ç±³ï¼ |
| | | /// å£åï¼åä½ï¼mmï¼ |
| | | /// </summary> |
| | | /// <example>2.5</example> |
| | | [ExcelColumn(Name = "å£å(mm)", Width = 25)] |
| | | [ExcelColumn(Name = "å£åï¼åä½ï¼mmï¼", Width = 25)] |
| | | public decimal WallThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æè´¨è¯´æ |
| | | /// æè´¨ï¼å¦ï¼304ä¸éé¢ï¼ |
| | | /// </summary> |
| | | /// <example>304ä¸éé¢</example> |
| | | [ExcelColumn(Name = "æè´¨", Width = 25)] |
| | | [ExcelColumn(Name = "æè´¨ï¼å¦ï¼304ä¸éé¢ï¼", Width = 25)] |
| | | public string MaterialQuality { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦ï¼åä½ï¼ç±³ï¼ |
| | | /// é¿åº¦ï¼åä½ï¼mï¼ |
| | | /// </summary> |
| | | /// <example>6.0</example> |
| | | [ExcelColumn(Name = "é¿åº¦(m)", Width = 25)] |
| | | [ExcelColumn(Name = "é¿åº¦ï¼åä½ï¼mï¼", Width = 25)] |
| | | public decimal Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ä¸»æ¯ç®¡æ è¯ |
| | | /// æ¯å¦ä¸ºä¸»æ¯ç®¡ |
| | | /// </summary> |
| | | /// <example>true</example> |
| | | [ExcelColumn(Name = "æ¯å¦ä¸»æ¯ç®¡", Width = 25)] |
| | | [Description("æ¯/å¦")] |
| | | [ExcelColumn(Name = "æ¯å¦ä¸ºä¸»æ¯ç®¡", Width = 25)] |
| | | public YesNoEnum IsMainBranch { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç产工ååç§° |
| | | /// ç产工å |
| | | /// </summary> |
| | | /// <example>䏿µ·ç¬¬ä¸å·¥å</example> |
| | | [ExcelColumn(Name = "ç产工å", Width = 25)] |
| | | public string Factory { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 认è¯è¯ä¹¦ç¼å· |
| | | /// è¯ä¹¦ç¼å· |
| | | /// </summary> |
| | | /// <example>CER-2023-001</example> |
| | | [ExcelColumn(Name = "è¯ä¹¦ç¼å·", Width = 25)] |
| | | public string Certification { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¢çæ©å±å段1 |
| | | /// åä½å段1 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | /// <remarks> |
| | | /// å¯ç¨äºä¸´æ¶åå¨ä¾åºåç¼ç çæ©å±ä¿¡æ¯ |
| | | /// </remarks> |
| | | [ExcelColumn(Name = "æ©å±å段1", Width = 25)] |
| | | [ExcelColumn(Name = "åä½å段1 - é¢çæ©å±ç¨é", Width = 25)] |
| | | public string RedundantField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¢çæ©å±å段2 |
| | | /// åä½å段2 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | /// <remarks> |
| | | /// å¯ç¨äºä¸´æ¶å卿¹æ¬¡å·çæ©å±ä¿¡æ¯ |
| | | /// </remarks> |
| | | [ExcelColumn(Name = "æ©å±å段2", Width = 25)] |
| | | [ExcelColumn(Name = "åä½å段2 - é¢çæ©å±ç¨é", Width = 25)] |
| | | public string RedundantField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¢çæ©å±å段3 |
| | | /// åä½å段3 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | /// <remarks> |
| | | /// å¯ç¨äºä¸´æ¶åå¨èªå®ä¹åç±»çæ©å±ä¿¡æ¯ |
| | | /// </remarks> |
| | | [ExcelColumn(Name = "æ©å±å段3", Width = 25)] |
| | | [ExcelColumn(Name = "åä½å段3 - é¢çæ©å±ç¨é", Width = 25)] |
| | | public string RedundantField3 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æåº", Width = 25)] |
| | | public int Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "夿³¨",Width = 25)] |
| | | public string Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ¯å¦ç¦ç¨", Width = 25)] |
| | | public bool? IsDisabled { get; set; } |
| | | |
| | | |
| | | |
| | | public Dictionary<string, object> GetExportData() |
| | | { |
| | |
| | | return exportData; |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | using Volo.Abp.Domain.Entities; |
| | | |
| | | using Volo.Abp.Domain.Entities; |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialæ´æ°åæ°å¯¹è±¡ |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨æ´æ°åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WmsMaterialUpdateDto : WmsMaterialCreateOrUpdateDtoBase, IHasConcurrencyStamp |
| | | { |
| | |
| | | |
| | |  |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterials导å
¥æ¨¡å |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨å¯¼å
¥æ¨¡å |
| | | /// </summary> |
| | | public class WmsMaterialsImportModel |
| | | { |
| | | private List<WmsMaterialImportModel> _wmsmaterials = new(); |
| | | private List<WmsMaterialImportModel> _WmsMaterials = new(); |
| | | |
| | | public List<WmsMaterialImportModel> WmsMaterials |
| | | { |
| | | get => _wmsmaterials; |
| | | get => _WmsMaterials; |
| | | set |
| | | { |
| | | _wmsmaterials = value; |
| | | _WmsMaterials = value; |
| | | var rowIndex = 2; |
| | | _wmsmaterials?.ForEach(x => x.RowIndex = rowIndex++); |
| | | _WmsMaterials?.ForEach(x => x.RowIndex = rowIndex++); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// WmsMaterial导å
¥æ¨¡å |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨å¯¼å
¥æ¨¡å |
| | | /// </summary> |
| | | public class WmsMaterialImportModel : MaterialExportModel |
| | | public class WmsMaterialImportModel : WmsMaterialExportModel |
| | | { |
| | | /// <summary> |
| | | /// è¡å· |
| | |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | using Volo.Abp.Application.Services; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Services; |
| | | |
| | | /// <summary> |
| | | /// ç©æåºç¡ä¿¡æ¯åºç¨æå¡æ¥å£ |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨åºç¨æå¡æ¥å£ |
| | | /// </summary> |
| | | public interface IWmsMaterialAppService : ICrudAppService<WmsMaterialDto, Guid, GetWmsMaterialInput, WmsMaterialCreateDto, WmsMaterialUpdateDto> |
| | | { |
| | | /// <summary> |
| | | /// å
éç©æåºç¡ä¿¡æ¯ |
| | | /// å
éç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | Task<List<WmsMaterialDto>> CloneAsync(IEnumerable<Guid> ids); |
| | | |
| | | /// <summary> |
| | | /// å é¤ç©æåºç¡ä¿¡æ¯ |
| | | /// å é¤ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | Task DeleteManyAsync(IEnumerable<Guid> ids); |
| | | |
| | | /// <summary> |
| | | /// è°æ´æåºç©æåºç¡ä¿¡æ¯ |
| | | /// è°æ´æåºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <param name="sort"></param> |
| | |
| | | Task AdjustSortAsync(Guid id, int sort); |
| | | |
| | | /// <summary> |
| | | /// 导å
¥ç©æåºç¡ä¿¡æ¯ |
| | | /// 导å
¥ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | Task ImportAsync(WmsMaterialsImportModel input); |
| | | |
| | | /// <summary> |
| | | /// 导åºç©æåºç¡ä¿¡æ¯ |
| | | /// 导åºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Services; |
| | | using CMS.Plugin.HIAWms.Domain.Shared; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Util; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterial; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterial; |
| | | using CmsQueryExtensions.Extension; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp; |
| | |
| | | namespace CMS.Plugin.HIAWms.Application.Implements; |
| | | |
| | | /// <summary> |
| | | /// ç©æåºç¡ä¿¡æ¯åºç¨æå¡ |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨åºç¨æå¡ |
| | | /// </summary> |
| | | public class WmsMaterialAppService : CMSPluginAppService, IWmsMaterialAppService |
| | | { |
| | | private readonly IWmsMaterialRepository _wmsmaterialRepository; |
| | | private readonly IWmsMaterialRepository wmsmaterialsRepository; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialAppService"/> class. |
| | | /// </summary> |
| | | /// <param name="wmsmaterialRepository">The task job repository.</param> |
| | | public WmsMaterialAppService(IWmsMaterialRepository wmsmaterialRepository) |
| | | /// <param name="WmsMaterialRepository">The task job repository.</param> |
| | | public WmsMaterialAppService(IWmsMaterialRepository WmsMaterialRepository) |
| | | { |
| | | _wmsmaterialRepository = wmsmaterialRepository; |
| | | wmsmaterialsRepository = WmsMaterialRepository; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åæå®ç©æåºç¡ä¿¡æ¯ |
| | | /// è·åæå®ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<WmsMaterialDto> GetAsync(Guid id) |
| | | { |
| | | return ObjectMapper.Map<WmsMaterial, WmsMaterialDto>(await _wmsmaterialRepository.GetAsync(id)); |
| | | return ObjectMapper.Map<WmsMaterial, WmsMaterialDto>(await wmsmaterialsRepository.GetAsync(id)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å页è·åç©æåºç¡ä¿¡æ¯ |
| | | /// å页è·åç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | |
| | | |
| | | #endregion |
| | | |
| | | var count = await _wmsmaterialRepository.GetCountAsync(whereConditions); |
| | | var list = await _wmsmaterialRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount); |
| | | var count = await wmsmaterialsRepository.GetCountAsync(whereConditions); |
| | | var list = await wmsmaterialsRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount); |
| | | |
| | | return new PagedResultDto<WmsMaterialDto>(count, ObjectMapper.Map<List<WmsMaterial>, List<WmsMaterialDto>>(list)); |
| | | } |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ°å»ºç©æåºç¡ä¿¡æ¯ |
| | | /// æ°å»ºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | |
| | | { |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var exist = await _wmsmaterialRepository.NameExistAsync(input.MaterialCode); |
| | | var exist = await wmsmaterialsRepository.NameExistAsync(input.MaterialCode); |
| | | if (exist) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialCode]); |
| | | } |
| | | |
| | | var maxSort = await _wmsmaterialRepository.GetMaxSortAsync(); |
| | | var maxSort = await wmsmaterialsRepository.GetMaxSortAsync(); |
| | | var sort = input.Sort ?? maxSort; |
| | | |
| | | var wmsmaterial = ObjectMapper.Map<WmsMaterialCreateDto, WmsMaterial>(input); |
| | | wmsmaterial.Sort = sort; |
| | | input.MapExtraPropertiesTo(wmsmaterial, MappingPropertyDefinitionChecks.None); |
| | | var insertObj = ObjectMapper.Map<WmsMaterialCreateDto, WmsMaterial>(input); |
| | | insertObj.Sort = sort; |
| | | input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None); |
| | | |
| | | await _wmsmaterialRepository.InsertAsync(wmsmaterial); |
| | | await wmsmaterialsRepository.InsertAsync(insertObj); |
| | | |
| | | if (input.Sort.HasValue && wmsmaterial.Sort != maxSort) |
| | | if (input.Sort.HasValue && insertObj.Sort != maxSort) |
| | | { |
| | | await AdjustSortAsync(wmsmaterial.Id, wmsmaterial.Sort); |
| | | await AdjustSortAsync(insertObj.Id, insertObj.Sort); |
| | | } |
| | | |
| | | return ObjectMapper.Map<WmsMaterial, WmsMaterialDto>(wmsmaterial); |
| | | return ObjectMapper.Map<WmsMaterial, WmsMaterialDto>(insertObj); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°ç©æåºç¡ä¿¡æ¯ |
| | | /// æ´æ°ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <param name="input"></param> |
| | |
| | | { |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var wmsmaterial = await _wmsmaterialRepository.GetAsync(id); |
| | | var exist = await _wmsmaterialRepository.NameExistAsync(input.MaterialCode, wmsmaterial.Id); |
| | | var updateObj = await wmsmaterialsRepository.GetAsync(id); |
| | | var exist = await wmsmaterialsRepository.NameExistAsync(input.MaterialCode, updateObj.Id); |
| | | if (exist) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialCode]); |
| | | } |
| | | |
| | | wmsmaterial.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); |
| | | input.MapExtraPropertiesTo(wmsmaterial, MappingPropertyDefinitionChecks.None); |
| | | updateObj.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); |
| | | input.MapExtraPropertiesTo(updateObj, MappingPropertyDefinitionChecks.None); |
| | | |
| | | wmsmaterial.MaterialName = input.MaterialName; |
| | | wmsmaterial.PurchaseType = input.PurchaseType; |
| | | wmsmaterial.MaterialType = input.MaterialType; |
| | | wmsmaterial.PrimaryUnit = input.PrimaryUnit; |
| | | wmsmaterial.Standard = input.Standard; |
| | | wmsmaterial.OuterDiameter = input.OuterDiameter; |
| | | wmsmaterial.WallThickness = input.WallThickness; |
| | | wmsmaterial.MaterialQuality = input.MaterialQuality; |
| | | wmsmaterial.Length = input.Length; |
| | | wmsmaterial.IsMainBranch = input.IsMainBranch; |
| | | wmsmaterial.Factory = input.Factory; |
| | | wmsmaterial.Certification = input.Certification; |
| | | updateObj.MaterialCode = input.MaterialCode; |
| | | updateObj.MaterialName = input.MaterialName; |
| | | updateObj.PurchaseType = input.PurchaseType; |
| | | updateObj.MaterialType = input.MaterialType; |
| | | updateObj.PrimaryUnit = input.PrimaryUnit; |
| | | updateObj.Standard = input.Standard; |
| | | updateObj.OuterDiameter = input.OuterDiameter; |
| | | updateObj.WallThickness = input.WallThickness; |
| | | updateObj.MaterialQuality = input.MaterialQuality; |
| | | updateObj.Length = input.Length; |
| | | updateObj.IsMainBranch = input.IsMainBranch; |
| | | updateObj.Factory = input.Factory; |
| | | updateObj.Certification = input.Certification; |
| | | updateObj.RedundantField1 = input.RedundantField1; |
| | | updateObj.RedundantField2 = input.RedundantField2; |
| | | updateObj.RedundantField3 = input.RedundantField3; |
| | | updateObj.Remark = input.Remark; |
| | | updateObj.IsDisabled = input.IsDisabled; |
| | | |
| | | await _wmsmaterialRepository.UpdateAsync(wmsmaterial); |
| | | |
| | | return ObjectMapper.Map<WmsMaterial, WmsMaterialDto>(wmsmaterial); |
| | | await wmsmaterialsRepository.UpdateAsync(updateObj); |
| | | |
| | | return ObjectMapper.Map<WmsMaterial, WmsMaterialDto>(updateObj); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
éç©æåºç¡ä¿¡æ¯ |
| | | /// å
éç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | public async Task<List<WmsMaterialDto>> CloneAsync(IEnumerable<Guid> ids) |
| | | { |
| | | //var wmsmaterials = new List<WmsMaterial>(); |
| | | //var wmsmaterialss = new List<WmsMaterial>(); |
| | | //if (ids != null) |
| | | //{ |
| | | // var sort = await _wmsmaterialRepository.GetMaxSortAsync(); |
| | | // var sort = await wmsmaterialsRepository.GetMaxSortAsync(); |
| | | // foreach (var id in ids) |
| | | // { |
| | | // var wmsmaterial = await _wmsmaterialRepository.FindAsync(id); |
| | | // if (wmsmaterial != null) |
| | | // var WmsMaterial = await wmsmaterialsRepository.FindAsync(id); |
| | | // if (WmsMaterial != null) |
| | | // { |
| | | // var name = wmsmaterial.Name + WmsMaterialConsts.CloneTag; |
| | | // var name = WmsMaterial.Name + WmsMaterialConsts.CloneTag; |
| | | // var notExist = false; |
| | | // while (!notExist) |
| | | // { |
| | | // var exist = await _wmsmaterialRepository.NameExistAsync(name); |
| | | // if (exist || wmsmaterials.Any(x => x.Name == name)) |
| | | // var exist = await wmsmaterialsRepository.NameExistAsync(name); |
| | | // if (exist || wmsmaterialss.Any(x => x.Name == name)) |
| | | // { |
| | | // name += WmsMaterialConsts.CloneTag; |
| | | // continue; |
| | |
| | | // notExist = true; |
| | | // } |
| | | |
| | | // //wmsmaterial = await _wmsmaterialRepository.InsertAsync(wmsmaterial.Clone(GuidGenerator.Create(), name, sort++)); |
| | | // wmsmaterials.Add(wmsmaterial); |
| | | // //WmsMaterial = await wmsmaterialsRepository.InsertAsync(WmsMaterial.Clone(GuidGenerator.Create(), name, sort++)); |
| | | // wmsmaterialss.Add(WmsMaterial); |
| | | // } |
| | | // } |
| | | //} |
| | | |
| | | //return ObjectMapper.Map<List<WmsMaterial>, List<WmsMaterialDto>>(wmsmaterials); |
| | | //return ObjectMapper.Map<List<WmsMaterial>, List<WmsMaterialDto>>(wmsmaterialss); |
| | | return new List<WmsMaterialDto>(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å é¤åä¸ªç©æåºç¡ä¿¡æ¯ |
| | | /// å é¤åä¸ªç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public virtual Task DeleteAsync(Guid id) |
| | | { |
| | | return _wmsmaterialRepository.DeleteAsync(id); |
| | | return wmsmaterialsRepository.DeleteAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å é¤å¤ä¸ªç©æåºç¡ä¿¡æ¯ |
| | | /// å é¤å¤ä¸ªç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è°æ´æåºç©æåºç¡ä¿¡æ¯ |
| | | /// è°æ´æåºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <param name="sort"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task AdjustSortAsync(Guid id, int sort) |
| | | { |
| | | var list = await _wmsmaterialRepository.GetListAsync(null, nameof(WmsMaterial.Sort)); |
| | | var list = await wmsmaterialsRepository.GetListAsync(null, nameof(WmsMaterial.Sort)); |
| | | if (list != null && list.Any()) |
| | | { |
| | | var initSort = 1; |
| | |
| | | } |
| | | } |
| | | |
| | | await _wmsmaterialRepository.UpdateManyAsync(list); |
| | | await wmsmaterialsRepository.UpdateManyAsync(list); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导å
¥ç©æåºç¡ä¿¡æ¯ |
| | | /// 导å
¥ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | var wmsmaterialCreateDtos = new List<(int RowIndex, WmsMaterialCreateDto Item)>(); |
| | | var wmsmaterialUpdateDtos = new List<(int RowIndex, Guid Id, WmsMaterialUpdateDto Item)>(); |
| | | var wmsmaterials = input.WmsMaterials; |
| | | var wmsmaterialsCreateDtos = new List<(int RowIndex, WmsMaterialCreateDto Item)>(); |
| | | var wmsmaterialsUpdateDtos = new List<(int RowIndex, Guid Id, WmsMaterialUpdateDto Item)>(); |
| | | var importItems = input.WmsMaterials; |
| | | |
| | | if (wmsmaterials != null && wmsmaterials.Any()) |
| | | if (importItems != null && importItems.Any()) |
| | | { |
| | | #region 导å
¥æ ¡éª |
| | | |
| | | // 夿åç§°æ¯å¦éå¤ï¼å¹¶è¾åºç¬¬å è¡éå¤ |
| | | var duplicateWmsMaterials = wmsmaterials.GroupBy(x => x.MaterialCode).Where(x => x.Count() > 1).ToList(); |
| | | var duplicateWmsMaterials = importItems.GroupBy(x => x.MaterialCode).Where(x => x.Count() > 1).ToList(); |
| | | if (duplicateWmsMaterials?.Any() == true) |
| | | { |
| | | var duplicateWmsMaterialMsgs = duplicateWmsMaterials.Select(x => $"第 {string.Join(",", x.Select(x => x.RowIndex))} è¡ï¼{x.Key} åç§°éå¤"); |
| | |
| | | |
| | | #endregion |
| | | |
| | | foreach (var wmsmaterial in wmsmaterials) |
| | | foreach (var impItem in importItems) |
| | | { |
| | | if (wmsmaterial.MaterialCode.IsNullOrWhiteSpace() && wmsmaterial.MaterialName.IsNullOrWhiteSpace()) |
| | | if (impItem.MaterialCode.IsNullOrWhiteSpace() && impItem.MaterialName.IsNullOrWhiteSpace()) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | if (wmsmaterial.MaterialCode.IsNullOrWhiteSpace()) |
| | | if (impItem.MaterialCode.IsNullOrWhiteSpace()) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterial.RowIndex}è¡ï¼WmsMaterialåç§°ä¸è½ä¸ºç©º"; |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{impItem.RowIndex}è¡ï¼WmsMaterialåç§°ä¸è½ä¸ºç©º"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | |
| | | var oldWmsMaterial = await _wmsmaterialRepository.FindByNameAsync(wmsmaterial.MaterialCode); |
| | | var oldWmsMaterial = await wmsmaterialsRepository.FindByNameAsync(impItem.MaterialCode); |
| | | if (oldWmsMaterial != null) |
| | | { |
| | | var wmsmaterialUpdateDto = new WmsMaterialUpdateDto |
| | | var wmsmaterialsUpdateDto = new WmsMaterialUpdateDto |
| | | { |
| | | MaterialCode = wmsmaterial.MaterialCode, |
| | | MaterialName = wmsmaterial.MaterialName, |
| | | PurchaseType = wmsmaterial.PurchaseType, |
| | | MaterialType = wmsmaterial.MaterialType, |
| | | PrimaryUnit = wmsmaterial.PrimaryUnit, |
| | | Standard = wmsmaterial.Standard, |
| | | OuterDiameter = wmsmaterial.OuterDiameter, |
| | | WallThickness = wmsmaterial.WallThickness, |
| | | MaterialQuality = wmsmaterial.MaterialQuality, |
| | | Length = wmsmaterial.Length, |
| | | IsMainBranch = wmsmaterial.IsMainBranch, |
| | | Factory = wmsmaterial.Factory, |
| | | Certification = wmsmaterial.Certification, |
| | | Remark = wmsmaterial.Remark, |
| | | MaterialCode = impItem.MaterialCode, |
| | | MaterialName = impItem.MaterialName, |
| | | PurchaseType = impItem.PurchaseType, |
| | | MaterialType = impItem.MaterialType, |
| | | PrimaryUnit = impItem.PrimaryUnit, |
| | | Standard = impItem.Standard, |
| | | OuterDiameter = impItem.OuterDiameter, |
| | | WallThickness = impItem.WallThickness, |
| | | MaterialQuality = impItem.MaterialQuality, |
| | | Length = impItem.Length, |
| | | IsMainBranch = impItem.IsMainBranch, |
| | | Factory = impItem.Factory, |
| | | Certification = impItem.Certification, |
| | | Remark = impItem.Remark, |
| | | }; |
| | | |
| | | wmsmaterialUpdateDtos.Add((wmsmaterial.RowIndex, oldWmsMaterial.Id, wmsmaterialUpdateDto)); |
| | | wmsmaterialsUpdateDtos.Add((impItem.RowIndex, oldWmsMaterial.Id, wmsmaterialsUpdateDto)); |
| | | } |
| | | else |
| | | { |
| | | var wmsmaterialCreateDto = new WmsMaterialCreateDto |
| | | var wmsmaterialsCreateDto = new WmsMaterialCreateDto |
| | | { |
| | | MaterialCode = wmsmaterial.MaterialCode, |
| | | MaterialName = wmsmaterial.MaterialName, |
| | | PurchaseType = wmsmaterial.PurchaseType, |
| | | MaterialType = wmsmaterial.MaterialType, |
| | | PrimaryUnit = wmsmaterial.PrimaryUnit, |
| | | Standard = wmsmaterial.Standard, |
| | | OuterDiameter = wmsmaterial.OuterDiameter, |
| | | WallThickness = wmsmaterial.WallThickness, |
| | | MaterialQuality = wmsmaterial.MaterialQuality, |
| | | Length = wmsmaterial.Length, |
| | | IsMainBranch = wmsmaterial.IsMainBranch, |
| | | Factory = wmsmaterial.Factory, |
| | | Certification = wmsmaterial.Certification, |
| | | Remark = wmsmaterial.Remark, |
| | | MaterialCode = impItem.MaterialCode, |
| | | MaterialName = impItem.MaterialName, |
| | | PurchaseType = impItem.PurchaseType, |
| | | MaterialType = impItem.MaterialType, |
| | | PrimaryUnit = impItem.PrimaryUnit, |
| | | Standard = impItem.Standard, |
| | | OuterDiameter = impItem.OuterDiameter, |
| | | WallThickness = impItem.WallThickness, |
| | | MaterialQuality = impItem.MaterialQuality, |
| | | Length = impItem.Length, |
| | | IsMainBranch = impItem.IsMainBranch, |
| | | Factory = impItem.Factory, |
| | | Certification = impItem.Certification, |
| | | Remark = impItem.Remark, |
| | | }; |
| | | |
| | | wmsmaterialCreateDtos.Add((wmsmaterial.RowIndex, wmsmaterialCreateDto)); |
| | | wmsmaterialsCreateDtos.Add((impItem.RowIndex, wmsmaterialsCreateDto)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // æ°å¢ |
| | | foreach (var wmsmaterialDto in wmsmaterialCreateDtos) |
| | | foreach (var wmsmaterialsDto in wmsmaterialsCreateDtos) |
| | | { |
| | | try |
| | | { |
| | | await CreateAsync(wmsmaterialDto.Item); |
| | | await CreateAsync(wmsmaterialsDto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterialDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterialsDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | | |
| | | // æ´æ° |
| | | foreach (var wmsmaterialDto in wmsmaterialUpdateDtos) |
| | | foreach (var wmsmaterialsDto in wmsmaterialsUpdateDtos) |
| | | { |
| | | try |
| | | { |
| | | await UpdateAsync(wmsmaterialDto.Id, wmsmaterialDto.Item); |
| | | await UpdateAsync(wmsmaterialsDto.Id, wmsmaterialsDto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterialDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterialsDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导åºç©æåºç¡ä¿¡æ¯ |
| | | /// 导åºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | |
| | | #endregion |
| | | |
| | | |
| | | var list = await _wmsmaterialRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true); |
| | | var list = await wmsmaterialsRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true); |
| | | var result = ObjectMapper.Map<List<WmsMaterial>, List<WmsMaterialDto>>(list); |
| | | |
| | | var sheets = new Dictionary<string, object> |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¡éªç©æåºç¡ä¿¡æ¯ï¼å½æ°å»ºææ´æ°æ¶ |
| | | /// æ ¡éªç©æåºç¡ä¿¡æ¯è¡¨ï¼å½æ°å»ºææ´æ°æ¶ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | protected Task CheckCreateOrUpdateDtoAsync(WmsMaterialCreateOrUpdateDtoBase input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | Check.NotNullOrWhiteSpace(input.MaterialCode, "ç¼å·", WmsMaterialConsts.MaxCodeLength); |
| | | Check.NotNullOrWhiteSpace(input.MaterialName, "åç§°", WmsMaterialConsts.MaxNameLength); |
| | | Check.Length(input.Remark, "夿³¨", WmsMaterialConsts.MaxRemarkLength); |
| | | Check.NotNullOrWhiteSpace(input.MaterialCode, "ç©æç¼ç ï¼å¯ä¸æ è¯ï¼", 64); |
| | | Check.NotNullOrWhiteSpace(input.MaterialName, "ç©æåç§°", 128); |
| | | Check.NotNull(input.PurchaseType, "éè´ç±»åï¼æä¸¾å¼ï¼"); |
| | | Check.NotNull(input.MaterialType, "ç©æç±»åï¼æä¸¾å¼ï¼"); |
| | | Check.NotNull(input.OuterDiameter, "å¤å¾ï¼åä½ï¼mmï¼"); |
| | | Check.NotNull(input.WallThickness, "å£åï¼åä½ï¼mmï¼"); |
| | | Check.NotNull(input.Length, "é¿åº¦ï¼åä½ï¼mï¼"); |
| | | Check.NotNull(input.IsMainBranch, "æ¯å¦ä¸ºä¸»æ¯ç®¡"); |
| | | |
| | | return Task.CompletedTask; |
| | | } |
| | | } |
| | |
| | | using AutoMapper; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterial; |
| | | using Volo.Abp.ObjectExtending; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.MapperProfiles; |
ÎļþÃû´Ó Weben_CMSרÓôúÂëÉú³ÉÆ÷/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/WmsMaterials/WmsMaterialConsts.cs ÐÞ¸Ä |
| | |
| | | namespace CMS.Plugin.HIAWms.Domain.Shared.WmsMaterials; |
| | | namespace CMS.Plugin.HIAWms.Domain.Shared.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterial常éå®ä¹ |
ÎļþÃû´Ó Weben_CMSרÓôúÂëÉú³ÉÆ÷/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain.Shared/WmsMaterials/WmsMaterialEto.cs ÐÞ¸Ä |
| | |
| | | namespace CMS.Plugin.HIAWms.Domain.Shared.WmsMaterials; |
| | | namespace CMS.Plugin.HIAWms.Domain.Shared.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialäºä»¶åæ°å¯¹è±¡ |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterial; |
| | | using Volo.Abp.DependencyInjection; |
| | | using Volo.Abp.EventBus.Distributed; |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CmsQueryExtensions.Extension; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp.Domain.Repositories; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterial; |
| | | |
| | | /// <summary> |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨ä»å¨ |
| | | /// </summary> |
| | | public interface IWmsMaterialRepository : IBasicRepository<WmsMaterial, Guid> |
| | | { |
| | | /// <summary> |
| | | /// æç
§åç§°æ¥æ¾ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<WmsMaterial> FindByNameAsync(string name, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// éªè¯åç§°æ¯å¦åå¨ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | Task<bool> NameExistAsync(string name, Guid? id = null); |
| | | |
| | | /// <summary> |
| | | /// è·åæå¤§æåºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<int> GetMaxSortAsync(); |
| | | |
| | | /// <summary> |
| | | /// è·åå页åè¡¨ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="sorting"></param> |
| | | /// <param name="maxResultCount"></param> |
| | | /// <param name="skipCount"></param> |
| | | /// <param name="includeDetails"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<List<WmsMaterial>> GetListAsync(FunReturnResultModel<Expression<Func<WmsMaterial, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// è·åæ»æ°ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WmsMaterial, bool>>> whereConditions, CancellationToken cancellationToken = default); |
| | | } |
ÎļþÃû´Ó Weben_CMSרÓôúÂëÉú³ÉÆ÷/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterials/WmsMaterial.cs ÐÞ¸Ä |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterial; |
| | | using MathNet.Numerics; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Domain.Entities.Auditing; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterials |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterial |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterial |
ÎļþÃû´Ó Weben_CMSרÓôúÂëÉú³ÉÆ÷/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Domain/WmsMaterials/WmsMaterialDataSeedContributor.cs ÐÞ¸Ä |
| | |
| | | using Volo.Abp.Guids; |
| | | using Volo.Abp.Uow; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterials |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterial |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialç§åæ°æ®æä¾ç¨åº |
| | |
| | | using CMS.Plugin.HIAWms.Domain; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterial; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using Volo.Abp; |
| | | using Volo.Abp.EntityFrameworkCore.Modeling; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | |
| | | namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions; |
| | | |
| | |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Linq.Dynamic.Core; |
| | | using System.Linq.Expressions; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterial; |
| | | using CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions; |
| | | using CmsQueryExtensions.Extension; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using System.Linq.Dynamic.Core; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp.Domain.Repositories.EntityFrameworkCore; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | using Volo.Abp.Specifications; |
| | | |
| | | |
| | | namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Repositories; |
| | | |
| | | /// <inheritdoc /> |
| | | /// <summary> |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨ä»å¨å®ç° |
| | | /// </summary> |
| | | public class EfCoreWmsMaterialRepository : EfCoreRepository<ICMSPluginDbContext, WmsMaterial, Guid>, IWmsMaterialRepository |
| | | { |
| | | /// <summary> |
| | |
| | | { |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | /// <summary> |
| | | /// æç
§åç§°æ¥æ¾ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<WmsMaterial> FindByNameAsync(string name, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | |
| | | .FirstOrDefaultAsync(t => t.MaterialCode == name, GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | /// <summary> |
| | | /// éªè¯åç§°æ¯å¦åå¨ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="materialCode"></param> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public async Task<bool> NameExistAsync(string materialCode, Guid? id = null) |
| | | { |
| | | return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).Where(x => !x.IsDeleted).AnyAsync(x => x.MaterialCode == materialCode); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | /// <summary> |
| | | /// è·åæå¤§æåºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public async Task<int> GetMaxSortAsync() |
| | | { |
| | | var hasAny = await (await GetQueryableAsync()) |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åå页å表 |
| | | /// è·åå页åè¡¨ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="sorting"></param> |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åæ»æ° |
| | | /// è·åæ»æ°ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | |
| | | using Ao.Lang; |
| | | using Ao.Lang; |
| | | using CMS.Extensions.Abp.AspNetCore.Mvc.Filters; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Services; |
| | |
| | | namespace CMS.Plugin.HIAWms.Controller |
| | | { |
| | | /// <summary> |
| | | /// ç©æåºç¡ä¿¡æ¯æå¡ |
| | | /// ç©æåºç¡ä¿¡æ¯è¡¨æå¡ |
| | | /// </summary> |
| | | [ApiController] |
| | | [TypeFilter(typeof(CMSLanguageFilter))] |
| | |
| | | [Route("api/v{version:apiVersion}/HIAWms/[controller]")] |
| | | public class WmsMaterialController : ControllerBase |
| | | { |
| | | private readonly IWmsMaterialAppService _wmsmaterialAppService; |
| | | private readonly IWmsMaterialAppService _wmsmaterialsAppService; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialController"/> class. |
| | | /// </summary> |
| | | /// <param name="wmsmaterialAppService">The wmsmaterial application service.</param> |
| | | public WmsMaterialController(IWmsMaterialAppService wmsmaterialAppService) |
| | | /// <param name="wmsmaterialsAppService">The wmsmaterials application service.</param> |
| | | public WmsMaterialController(IWmsMaterialAppService wmsmaterialsAppService) |
| | | { |
| | | _wmsmaterialAppService = wmsmaterialAppService; |
| | | _wmsmaterialsAppService = wmsmaterialsAppService; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åç©æåºç¡ä¿¡æ¯ |
| | | /// è·åç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <returns></returns> |
| | |
| | | [Route("{id}")] |
| | | public virtual Task<WmsMaterialDto> GetAsync(Guid id) |
| | | { |
| | | return _wmsmaterialAppService.GetAsync(id); |
| | | return _wmsmaterialsAppService.GetAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å页è·åç©æåºç¡ä¿¡æ¯çå表. |
| | | /// å页è·åç©æåºç¡ä¿¡æ¯è¡¨çå表. |
| | | /// </summary> |
| | | /// <param name="input">è¾å
¥.</param> |
| | | /// <returns></returns> |
| | |
| | | [Route("Page")] |
| | | public virtual Task<PagedResultDto<WmsMaterialDto>> GetListAsync([FromQuery] GetWmsMaterialInput input) |
| | | { |
| | | return _wmsmaterialAppService.GetListAsync(input); |
| | | return _wmsmaterialsAppService.GetListAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åå»ºç©æåºç¡ä¿¡æ¯ |
| | | /// åå»ºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="input">è¾å
¥.</param> |
| | | /// <returns></returns> |
| | |
| | | [HttpPost] |
| | | public virtual Task<WmsMaterialDto> CreateAsync(WmsMaterialCreateDto input) |
| | | { |
| | | return _wmsmaterialAppService.CreateAsync(input); |
| | | return _wmsmaterialsAppService.CreateAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°ç©æåºç¡ä¿¡æ¯ |
| | | /// æ´æ°ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <param name="input">è¾å
¥.</param> |
| | |
| | | [Route("{id}")] |
| | | public virtual Task<WmsMaterialDto> UpdateAsync(Guid id, WmsMaterialUpdateDto input) |
| | | { |
| | | return _wmsmaterialAppService.UpdateAsync(id, input); |
| | | return _wmsmaterialsAppService.UpdateAsync(id, input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
éç©æåºç¡ä¿¡æ¯ |
| | | /// å
éç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids">Idéå.</param> |
| | | /// <returns></returns> |
| | |
| | | [Route("Clone")] |
| | | public virtual Task<List<WmsMaterialDto>> CloneAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | return _wmsmaterialAppService.CloneAsync(ids); |
| | | return _wmsmaterialsAppService.CloneAsync(ids); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å é¤ç©æåºç¡ä¿¡æ¯ |
| | | /// å é¤ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <returns></returns> |
| | |
| | | [Route("{id}")] |
| | | public virtual Task DeleteAsync(Guid id) |
| | | { |
| | | return _wmsmaterialAppService.DeleteAsync(id); |
| | | return _wmsmaterialsAppService.DeleteAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¹éå é¤ç©æåºç¡ä¿¡æ¯ |
| | | /// æ¹éå é¤ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids">The ids.</param> |
| | | /// <returns></returns> |
| | |
| | | [HttpDelete] |
| | | public virtual Task DeleteAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | return _wmsmaterialAppService.DeleteManyAsync(ids); |
| | | return _wmsmaterialsAppService.DeleteManyAsync(ids); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è°æ´æåºç©æåºç¡ä¿¡æ¯ |
| | | /// è°æ´æåºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <returns></returns> |
| | |
| | | [Route("{id}/AdjustSort/{sort}")] |
| | | public virtual Task AdjustSortAsync(Guid id, int sort) |
| | | { |
| | | return _wmsmaterialAppService.AdjustSortAsync(id, sort); |
| | | return _wmsmaterialsAppService.AdjustSortAsync(id, sort); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导å
¥ç©æåºç¡ä¿¡æ¯ |
| | | /// 导å
¥ç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | |
| | | stream.Seek(0L, SeekOrigin.Begin); |
| | | |
| | | var sheetNames = stream.GetSheetNames(); |
| | | var wmsmaterialRows = sheetNames.Contains("é
ç½®") ? MiniExcel.Query<WmsMaterialsImportModel.WmsMaterialImportModel>(stream, sheetName: "é
ç½®").ToList() : new(); |
| | | var wmsmaterialsRows = sheetNames.Contains("é
ç½®") ? MiniExcel.Query<WmsMaterialsImportModel.WmsMaterialImportModel>(stream, sheetName: "é
ç½®").ToList() : new(); |
| | | |
| | | if (!wmsmaterialRows.Any()) |
| | | if (!wmsmaterialsRows.Any()) |
| | | { |
| | | throw new UserFriendlyException("è¯·æ£æ¥å¯¼å
¥çè¡¨æ ¼"); |
| | | } |
| | | |
| | | await _wmsmaterialAppService.ImportAsync(new WmsMaterialsImportModel |
| | | await _wmsmaterialsAppService.ImportAsync(new WmsMaterialsImportModel |
| | | { |
| | | WmsMaterials = wmsmaterialRows, |
| | | WmsMaterials = wmsmaterialsRows, |
| | | }); |
| | | |
| | | return Ok(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导åºç©æåºç¡ä¿¡æ¯ |
| | | /// 导åºç©æåºç¡ä¿¡æ¯è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | |
| | | public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWmsMaterialInput input) |
| | | { |
| | | input.MaxResultCount = int.MaxValue; |
| | | var exportData = await _wmsmaterialAppService.ExportAsync(input); |
| | | var exportData = await _wmsmaterialsAppService.ExportAsync(input); |
| | | var templatePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Resources/Templates/WmsMaterialå¯¼åºæ¨¡æ¿.xlsx"); |
| | | if (!System.IO.File.Exists(templatePath)) |
| | | { |