编辑 | blame | 历史 | 原始文档

Repository Guidelines

ÏîÄ¿½á¹¹ÓëÄ£¿é×éÖ¯

²Ö¿âÓÉÁ½¸öÖ÷ÏîÄ¿×é³É£º
- WIDESEA_WMSServer/£ºASP.NET Core ºó¶Ë£¨½â¾ö·½°¸£ºWIDESEA_WMSServer.sln£©¡£
- WIDESEA_WMSClient/£ºVue 3 ǰ¶Ë£¨Vite + Yarn£©¡£

ºó¶Ë°´Ö°Ôð²ð·Ö£ºWIDESEA_WMSServer/£¨API Æô¶¯ÏîÄ¿£©¡¢WIDESEA_Core/£¨»ù´¡ÉèÊ©/»ùÀàÄÜÁ¦£©¡¢WIDESEA_Model/£¨ÊµÌåÄ£ÐÍ£©¡¢WIDESEA_DTO/£¨Êý¾Ý´«Êä¶ÔÏ󣩡¢WIDESEA_I*Service/£¨·þÎñ½Ó¿Ú£©¡¢WIDESEA_*Service/£¨·þÎñʵÏÖ£©¡£Ç°¶ËÔ´ÂëλÓÚ WIDESEA_WMSClient/src/£¬µ¥Ôª²âÊÔλÓÚ WIDESEA_WMSClient/tests/unit/¡£

¹¹½¨¡¢²âÊÔÓ뿪·¢ÃüÁî

ºó¶Ë£¨ÔÚ WIDESEA_WMSServer Ŀ¼ִÐУ©£º
- dotnet restore WIDESEA_WMSServer.sln£º»¹Ô­ NuGet ÒÀÀµ¡£
- dotnet build WIDESEA_WMSServer.sln£º¹¹½¨È«²¿ºó¶ËÏîÄ¿¡£
- dotnet run --project WIDESEA_WMSServer/WIDESEA_WMSServer.csproj£º±¾µØÆô¶¯ API¡£

ǰ¶Ë£¨ÔÚ WIDESEA_WMSClient Ŀ¼ִÐУ©£º
- yarn install£º°²×°ÒÀÀµ¡£
- yarn dev£ºÆô¶¯ Vite ¿ª·¢·þÎñ¡£
- yarn build£º¹¹½¨Éú²ú°ü¡£
- yarn preview£ºÔ¤ÀÀÉú²ú¹¹½¨½á¹û¡£
- yarn test:unit£ºÔËÐе¥Ôª²âÊÔ¡£
- yarn lint£ºÖ´ÐдúÂë¼ì²é¡£

¿ª·¢Á÷³ÌÇ¿ÖÆ¹æ·¶

  • ËùÓÐÈÎÎñ±ØÐëÔÚ Code/WMS/.worktrees/<task-name> ¶ÀÁ¢ worktree Öпª·¢£¬²»Ö±½ÓÔÚÖ÷¹¤×÷Çø¸Ä¶¯¡£
  • ·ÖÖ§ÃüÃûͳһ£ºfeat/<Ä£¿é>-<Ö÷Ìâ>¡¢fix/<Ä£¿é>-<ÎÊÌâ>¡¢refactor/<Ä£¿é>-<Ö÷Ìâ>¡¢docs/<Ö÷Ìâ>¡£
  • ÿ´ÎÌύǰÖÁÉÙÖ´ÐÐÓë¸Ä¶¯Ïà¹ØµÄ×îСÑéÖ¤£¨Ç°¶Ë¸Ä¶¯ÅÜ npm run lint£»ºó¶Ë¸Ä¶¯ÅÜ dotnet test »ò×îС¿ÉÔËÐÐÑéÖ¤£©¡£
  • ½ûÖ¹Ò»´ÎÌá½»»ìÈëÎÞ¹ØÖع¹¡¢¸ñʽ»¯ÔëÉù»ò´óÃæ»ýÎļþÒÆ¶¯¡£

´úÂë·ç¸ñÓëÃüÃûÔ¼¶¨

ǰ¶ËʹÓà Vue Standard ESLint ¹æÔò£¬Ëõ½øÎª 4 ¿Õ¸ñ£¨¼û package.json£©¡£Vue ×é¼þ²ÉÓà PascalCase£»À©Õ¹ÅäÖý¨Òé·ÅÔÚ src/extension/{domain}/{entity}.js¡£

ºó¶Ë×ñÑ­ÏÖÓзֲãÓëÃüÃû£ºI{Entity}Service£¨½Ó¿Ú£©¡¢{Entity}Service£¨ÊµÏÖ£©¡¢{Entity}Controller£¨¿ØÖÆÆ÷£©¡£ÐÂÔö´úÂëÓ¦±£³ÖÓëÏÖÓÐ Autofac ×¢²á¡¢»ù´¡ Controller/Service ģʽһÖ¡£

ĬÈÏÒªÇ󣺶ÔÐÂÔö»òÐ޸ĵĴúÂëÌí¼ÓÏêϸÖÐÎÄ×¢ÊÍ£¬ÖÁÉÙ°üº¬·½·¨Ä¿µÄ¡¢²ÎÊýº¬Òå¡¢·µ»ØÖµ¡¢¹Ø¼üÂß¼­²½ÖèºÍÒì³£´¦Àí˵Ã÷¡£

×¢ÊÍÒªÇó¿É¶Á¡¢¿Éά»¤£¬½ûÖ¹¡°Öظ´´úÂë×ÖÃæÒâ˼¡±µÄÎÞЧעÊÍ¡£

Êý¾ÝÒ»ÖÂÐÔÓëÊÂÎñ¹æ·¶

  • ͬһҵÎñ²Ù×÷Éæ¼°¶à¸öÊý¾Ý¶ÔÏ󣨶à±í¡¢¶à²Ö´¢¡¢¿ç·þÎñдÈ룩ͬʱ¸Ä¶¯Ê±£¬±ØÐëʹÓÃÊý¾Ý¿âÊÂÎñ£¨Transaction£©±£Ö¤Ô­×ÓÐÔ¡£
  • ÊÂÎñ·¶Î§Ö»¸²¸Ç±ØÒªÐ´²Ù×÷£¬½ûÖ¹½«³¤ºÄʱ IO/ÍøÂçµ÷Ó÷ÅÈëÊÂÎñÄÚ£¬±ÜÃⳤÊÂÎñËø±í¡£
  • ·¢ÉúÒ쳣ʱ±ØÐë»Ø¹öÊÂÎñ£¬²¢¼Ç¼ÊÂÎñÉÏÏÂÎÄ£¨ÒµÎñµ¥ºÅ¡¢¹Ø¼üÖ÷¼ü¡¢µ÷ÓÃÁ´±êʶ£©¡£
  • ÈôÉæ¼°·Ö²¼Ê½»ò¿ç±ß½çдÈ룬ÐèÔÚ PR ÖÐÃ÷È·Ò»ÖÂÐÔ²ßÂÔ£¨²¹³¥¡¢ÖØÊÔ¡¢Ãݵȼü£©¡£

½Ó¿Ú¡¢ÈÕÖ¾ÓëÒì³£¹æ·¶

  • API ·µ»Ø½á¹¹±£³Öͳһ£¬×Ö¶ÎÃüÃûÓëÏÖÓкó¶ËÐòÁл¯²ßÂÔÒ»Ö£¬±ÜÃâËæÒâ±ä¸üÏìÓ¦×ֶΡ£
  • Service ²ãÅ׳öµÄÒµÎñÒì³£Ðè°üº¬¿É¶¨Î»ÉÏÏÂÎÄ£¨ÈÎÎñºÅ¡¢É豸ºÅ¡¢¹Ø¼ü²ÎÊý£©¡£
  • ÈÕÖ¾¼¶±ð¹æ·¶£ºµ÷ÊÔϸ½ÚÓà Debug£¬ÒµÎñ¹Ø¼ü·¾¶Óà Information£¬¿É»Ö¸´Òì³£Óà Warning£¬²»¿É»Ö¸´´íÎóÓà Error¡£
  • ÑϽûÍÌÒì³££»²¶»ñºó±ØÐë¼Ç¼ÉÏÏÂÎIJ¢¾ö¶¨ÖØÅ×»òת»»ÎªÒµÎñ´íÎó¡£
  • Éæ¼°Íⲿϵͳµ÷Óá¢IO¡¢ÍøÂçͨÐÅ¡¢É豸ͨÐÅ¡¢Êý¾Ý¿â·ÃÎʵĹؼü·¾¶±ØÐëʹÓà try-catch£»catch ÖÐÖÁÉټǼ´íÎóÐÅÏ¢Óë¹Ø¼ü²ÎÊý£¬²¢±£Áôԭʼ¶ÑÕ»£¨throw;£©£¬½ûÖ¹½ö throw ex;¡£

²âÊÔÖ¸ÄÏ

ǰ¶Ë²âÊÔ²ÉÓà Vue µ¥Ôª²âÊÔ£¨tests/unit/*.spec.js£©¡£Éæ¼° UI Âß¼­»ò½Ó¿Ú½»»¥±ä¸üʱ£¬Ó¦²¹³ä»ò¸üвâÊÔ£¬²¢Ö´ÐÐ yarn test:unit¡£

µ±Ç°½â¾ö·½°¸ÖÐδ°üº¬¶ÀÁ¢ºó¶Ë²âÊÔÏîÄ¿¡£ºó¶Ë¸Ä¶¯ÖÁÉÙÐèÍê³É¹¹½¨Óë¹Ø¼ü API ÊÖ¹¤ÑéÖ¤£»¸´ÔÓÒµÎñÂß¼­½¨ÒéÐÂÔö²âÊÔÏîÄ¿£¨Èç xUnit£©²¢ÄÉÈë½â¾ö·½°¸¡£

Ìá½»ÓëºÏ²¢ÇëÇ󹿷¶

×î½üÌá½»ÆÕ±é²ÉÓà Conventional Commit ǰ׺£ºfeat:¡¢fix:¡¢refactor:¡¢docs:¡¢chore:£¨ÖÐÎÄÃèÊö£©¡£½¨ÒéÒ»´ÎÌá½»¾Û½¹Ò»¸öÃ÷È·¸Ä¶¯µã¡£

PR ½¨Òé°üº¬£º
- ±ä¸üÄ¿µÄÓëÒµÎñÓ°Ïì˵Ã÷£»
- Éæ¼°Ä£¿éÓëĿ¼·¶Î§£¨Ç°¶Ë/ºó¶Ë£©£»
- ÑéÖ¤Ö¤¾Ý£¨ÒÑÖ´ÐÐÃüÁîÓë½á¹û£©£»
- UI ±ä¸ü½ØÍ¼»ò¼ÆÁ£»
- ¹ØÁªÈÎÎñ»òÎÊÌâ±àºÅ£¨ÈçÓУ©¡£