リソース管理システム

リマインダー:いいえ

目次

序文

1. 2021-3-22インターフェースドキュメント(会社)

URL:/ system / dept / company

引数:入力引数なし

1.データを入力します

2.SQLステートメント

 

2. 2021-3-22インターフェースドキュメント(ユーザー部門)

URL:/ system / dept / department / {deptId}(注:{deptld}は会社IDタイプLongです)リクエストメソッド:[GET]安らかなスタイル

引数:deptld、タイプLong、chinse company id

1.データを入力します

2.SQLステートメント

3. 2021-3-22インターフェースドキュメント(ユーザー)

URL:/ system / user / list

引数:UserObjct

1.データを入力します

 

第4に、2021-3-23インターフェイスドキュメント(ライブラリへのリソースのインポート)

URL:/ assets / assets / inputData(注:)リクエストメソッド:[投稿]    

引数:file:file、boolean(boolean):updateSupport。(注:booleanタイプの値:tureおよびfalse。trueの場合、インポートされたアセット番号が更新されます。falseの場合、既存のアセットを持つアセット番号は更新されます。追加されません) 

1.データを入力します

2.implステートメント

5. 2021-3-23インターフェースドキュメント(画像アップロード)このインターフェースは一般的なインターフェースです

URL:/ system / pictures / inputImage(注:ファイルファイル)リクエスト方法:[投稿]    

引数:ファイル:ファイル、文字列:useType  

1.データを入力します

2.implステートメント

6. 2021-3-29インターフェースドキュメント(オペレーター)このインターフェースは一般的なインターフェースです

URL:/ system / user / locahostPhoneAndNameリクエストメソッド:[取得]     

1.データを入力します

2.implステートメント

7. 2021-3-29インターフェイスドキュメント(クエリ状態のリソース)このインターフェイスは一般的なインターフェイスです

URL:/ assets / assets / selectAssetsStateパラメーター:assetsState:アイドル 

       リクエスト方法:[Get]     

1.データを入力します

2.sqlステートメント

8. 2021-3-29インターフェースのドキュメント(リソース取得のために新しく追加されました)   

URL:/ getassets / getassetsパラメーター:AddGetAssetsオブジェクトとlong [] AssetsIdアセットID配列リクエストメソッド:[Post]     

1.データを入力します

2.implステートメント

9、2021-3-29インターフェースドキュメント(資産スケジューリングが追加された場合、会社の下のすべてのアイドル状態のリソースを検索します)   

URL:/ assets / assets / companyResourcesパラメーター:会社IDを所有する長いcompanyIdリクエストメソッド:[取得]     

1.データを入力します

2.implステートメント

X. 2021-3-29インターフェイスドキュメント(現在の会社で使用されているすべてのリソース)   

URL:/ assets / assets / usecompanyResourcesパラメーター:なしリクエストメソッド:[取得]     

1.データを入力します

2.implステートメント

総括する



序文

リマインダー:いいえ
など


ヒント:returnが宣言されている場所がない場合、オブジェクトはデフォルトで返されます。対応する値を自分で確認する必要があります。オブジェクトのプロパティは多数あるため、すべてをリストするわけではありません。

1. 2021-3-22インターフェースドキュメント(会社)

例:

URL:/ system / dept / company

引数:入力引数なし

1.データを入力します

コードは次のとおりです(例):

    /**
     * 获取所有公司
     */
    @ApiOperation("获取所有公司")
    @GetMapping("company")
    public AjaxResult selectCompany(){
        SysDept sysDept = new SysDept();
        sysDept.setAncestors(Depts.getName("公司"));
        System.out.println(Depts.getName("公司"));
        return AjaxResult.success(deptService.selectCompany(sysDept));
    }

2.SQLステートメント

コードは次のとおりです(例):

	<!-- 查询所有公司 -->
	<select id="selectCompany"  resultMap="SysDeptResult">
		<include refid="selectDeptVo"/>
		where d.del_flag = '0'
		and  ancestors like concat('%', #{ancestors}, '%')
	</select>

ここで使用されるURLネットワークによって要求されたデータ。

例:

 

2. 2021-3-22インターフェースドキュメント(ユーザー部門)

例:

URL:/ system / dept / department / {deptId}(注:{deptld}は会社IDタイプLongです)リクエストメソッド:[GET]安らかなスタイル

引数:deptld、タイプLong、chinse company id

1.データを入力します

コードは次のとおりです(例):

    /**
     * 查看已选择公司下的所有部门
     */
    @ApiOperation("查看已选择公司下的所有部门")
    @GetMapping(value = "/department/{deptId}")
    public AjaxResult selectDeptId(@PathVariable("deptId") long deptId){
        SysDept sysDept = new SysDept();
        sysDept.setAncestors(deptId+"");
        return AjaxResult.success(deptService.selectDeptList(sysDept));
    }

2.SQLステートメント

コードは次のとおりです(例):

	<!-- 查询所有公司 或者 部门 -->
	<select id="selectDepartment"  resultMap="SysDeptResult">
		<include refid="selectDeptVo"/>
		where d.del_flag = '0'
		and  ancestors like concat('%', #{ancestors}, '%')
		and  dept_id != #{ancestors}
	</select>

ここで使用されるURLネットワークによって要求されたデータ。

例:

3. 2021-3-22インターフェースドキュメント(ユーザー)

例:

URL:/ system / user / list

引数:UserObjct

1.データを入力します

コードは次のとおりです(例):

    /**
     * 获取用户列表
     */
    @ApiOperation("获取用户列表")
    @PreAuthorize("@ss.hasPermi('system:user:list')")
    @GetMapping("/list")
    public TableDataInfo list(SysUser user)
    {
        startPage();
        List<SysUser> list = userService.selectUserList(user);
        return getDataTable(list);
    }

 

例:

 

 

第4に、2021-3-23インターフェイスドキュメント(ライブラリへのリソースのインポート)

例:

URL:/ assets / assets / inputData(注:)リクエストメソッド:[投稿]    

引数:file:file、boolean(boolean):updateSupport。(注:booleanタイプの値:tureおよびfalse。trueの場合、インポートされたアセット番号が更新されます。falseの場合、既存のアセットを持つアセット番号は更新されます。追加されません) 

1.データを入力します

コードは次のとおりです(例):

    /**
     * 导入资源入库
     */
    @ApiOperation("查询资源入库列表")
    @Log(title = "导入资源入库",businessType = BusinessType.INSERT)
    @PostMapping("/inputData")
    public AjaxResult inputData(MultipartFile file, boolean updateSupport) throws Exception {
        LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
        loginUser.getUser().getUserId();

        ExcelUtil<AddAssets> util = new ExcelUtil<AddAssets>(AddAssets.class);
        List<AddAssets> assets = util.importExcel(file.getInputStream());
        String msg = addAssetsService.inputAssets(assets, updateSupport);
        return AjaxResult.success(msg);
    }

2.implステートメント

コードは次のとおりです(例):

    /**
     * 资源导入
     * @param addAssets  资源list
     * @param isUpdateSupport   是否允许修改原有对象(ture:可以修改 false:不可以修改)
     * @return
     */
    @Override
    public String inputAssets(List<AddAssets> addAssets, Boolean isUpdateSupport) {
        if (StringUtils.isNull(addAssets) || addAssets.size() == 0)
            throw new CustomException("导入用户数据不能为空");
        int successNum = 0;
        int failureNum = 0;
        StringBuilder successMsg = new StringBuilder();
        StringBuilder failureMsg = new StringBuilder();
        //不知道代码作用
        String password = configService.selectConfigByKey("sys.user.initPassword");
        for (AddAssets addAsset : addAssets) {
            try{
                //判定订单编码是否存在
                AddAssets asset = new AddAssets();
                asset.setAssetsCoding(addAsset.getAssetsCoding());
                List<AddAssets> addAssets1 = addAssetsMapper.selectAddAssetsList(asset);
                if (addAssets1.size() == 0 || addAssets1.size() > 1) {
                    successMsg.append("<br/>" + successNum + "、资产编号: " + addAsset.getAssetsCoding() + " 导入成功");
                    addAssetsMapper.insertAddAssets(addAsset);
                    successNum++;
                } else if (isUpdateSupport) {
                    successMsg.append("<br/>" + successNum + "、资产编号: " + addAsset.getAssetsCoding() + " 更新成功");
                    addAssetsMapper.updateAddAssetsCoding(addAsset);
                    successNum++;
                } else {
                    failureMsg.append("<br/>" + failureNum + "、资产编号 " + addAsset.getAssetsCoding() + " 已存在");
                    failureNum++;
                }
            }catch (Exception e)
            {
                failureNum++;
                String msg = "<br/>" + failureNum + "、账号 " +  addAsset.getAssetsCoding() + " 导入失败:";
                failureMsg.append(msg + e.getMessage());
                log.error(msg, e);
            }
        }
        if (failureNum > 0)
        {
            failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
            throw new CustomException(failureMsg.toString());
        }
        else
        {
            successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:");
        }
        return successMsg.toString();
    }

ここで使用されるURLネットワークによって要求されたデータ。

例:

 

 

 

5. 2021-3-23インターフェースドキュメント(画像アップロード)このインターフェースは一般的なインターフェースです

例:

URL:/ system / pictures / inputImage(注:ファイルファイル)リクエスト方法:[投稿]    

引数:ファイル:ファイル、文字列:useType  

1.データを入力します

コードは次のとおりです(例):

    @ApiOperation("查询资源入库列表")
    @Log(title = "图片上传", businessType = BusinessType.UPDATE)
    @PostMapping("/inputImage")
    public AjaxResult inputImages(@RequestParam("avatarfile") MultipartFile file)throws IOException {
        //文件相对路径
        String avatar = FileUploadUtils.upload(RuoYiConfig.getAvatarPath(), file);
        SysPictures pictures = new SysPictures();
        pictures.setUrl(avatar);
        sysPicturesService.insertSysPictures(pictures);
        //可优化
        List<SysPictures> sysPictures = sysPicturesService.selectSysPicturesList(pictures);
        return AjaxResult.success(sysPictures.get(sysPictures.size()-1).getId());
    }

2.implステートメント

コードは次のとおりです(例):

//过于简单不做演示

ここで使用されるURLネットワークによって要求されたデータ。

例:

6. 2021-3-29インターフェースドキュメント(オペレーター)このインターフェースは一般的なインターフェースです

例:

URL:/ system / user / locahostPhoneAndNameリクエストメソッド:[取得]     

1.データを入力します

コードは次のとおりです(例):

    /**
     * 获取当前操作人名称
     */
    @ApiOperation("获取当前操作人姓名电话")
    @GetMapping("/locahostPhoneAndName")
    public AjaxResult locahostPhoneAndName(){
        LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
        Map<String,String> map = new HashMap<>();
        map.put("name",loginUser.getUser().getUserName());
        map.put("phone",loginUser.getUser().getPhonenumber());
        map.put("id",loginUser.getUser().getUserId()+"");
        return AjaxResult.success(map);
    }

2.implステートメント

コードは次のとおりです(例):

ここで使用されるURLネットワークによって要求されたデータ。

例:

 

 

7. 2021-3-29インターフェイスドキュメント(クエリ状態のリソース)このインターフェイスは一般的なインターフェイスです

例:

URL:/ assets / assets / selectAssetsStateパラメーター:assetsState:アイドル 

       リクエスト方法:[Get]     

1.データを入力します

コードは次のとおりです(例):

    /**
     * 查询某一个状态下的资源
     */
    @ApiOperation("查询某一个状态下的资源")
    @PreAuthorize("@ss.hasPermi('assets:assets:list')")
    @GetMapping("/selectAssetsState")
    public AjaxResult selectAssetsState(String assetsState){
        //验证资源领用是否关闭 并且获取到资源领用的value
        Map<String, String> map = VerifyUtil.verifySysFunction(assetsState, sysDictDataService);
        Set<String> strings = map.keySet();
        String key ="";
        String value = "";
        for (String mapString : strings) {
            value = map.get(mapString);
            key = mapString;
        }
        if (key.equals("错误信息"))
            return AjaxResult.error(HttpStatus.CLOSED_FUNCTION,map.get("错误信息"));
        return AjaxResult.success(addAssetsService.selectAssetsState(assetsState));
    };

2.sqlステートメント

コードは次のとおりです(例):

    <!-- 资产状态 -->
    <select id="selectAssetsState" parameterType="java.lang.String" resultMap="AddAssetsResult">
        <include refid="selectAddAssetsVoTableS"/>
        <where>
            <if test="assetsState != null  and assetsState != ''"> and a.assets_state = #{assetsState}</if>
        </where>
    </select>

ここで使用されるURLネットワークによって要求されたデータ。

例:

 

8. 2021-3-29インターフェースのドキュメント(リソース取得のために新しく追加されました)   

例:

URL:/ getassets / getassetsパラメーター:AddGetAssetsオブジェクトとlong [] AssetsIdアセットID配列リクエストメソッド:[Post]     

1.データを入力します

コードは次のとおりです(例):

    /**
     * 新增资源领用
     */
    @ApiOperation("新增资源领用")
    @PreAuthorize("@ss.hasPermi('getassets:getassets:add')")
    @Log(title = "资源领用", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody AddGetAssets addGetAssets,@RequestBody long[] assetsId)
    {
        String sysType = Verify();
        if(sysType.equals("0"))
            AjaxResult.error("数据字典可能停用,请启用数据字典!!!");
        if (assetsId.length>=0)
            return toAjax(addGetAssetsService.insertAddGetAssets(addGetAssets,assetsId,sysType));
        else
            return AjaxResult.error("请添加资产");
    }

2.implステートメント

コードは次のとおりです(例):


    /**
     * 新增资源领用
     *
     * @param addGetAssets 资源领用
     * @return 结果
     */
    @Override
    public int insertAddGetAssets(AddGetAssets addGetAssets,long[] assetsId,String sysType)
    {
        //所有资产id
        for (int i = 0; i < assetsId.length; i++) {
            AddAssetsRelevance relevance = new AddAssetsRelevance();
            relevance.setSysDisposeType(sysType);
            relevance.setAsstsId(assetsId[i]);
            relevance.setTaskId(addGetAssets.getGetId());
            addAssetsRelevanceMapper.insertAddAssetsRelevance(relevance);
            AddAssets assets = new AddAssets();
            assets.setAssetsId(assetsId[i]);
            assets.setAssetsState("1");
            addAssetsMapper.updateAddAssets(assets);
        }
            addGetAssets.setCreateTime(DateUtils.getNowDate());
            return addGetAssetsMapper.insertAddGetAssets(addGetAssets);
    }

ここで使用されるURLネットワークによって要求されたデータ。

例:

 

 

9、2021-3-29インターフェースドキュメント(資産スケジューリングが追加された場合、会社の下のすべてのアイドル状態のリソースを検索します)   

例:

URL:/ assets / assets / companyResourcesパラメーター:会社IDを所有する長いcompanyIdリクエストメソッド:[取得]     

1.データを入力します

コードは次のとおりです(例):

    /**
     * 当前所在公司下所有的闲置资源
     */
    @ApiOperation("当前所在公司下所有的闲置资源")
    @PreAuthorize("@ss.hasPermi('assets:assets:list')")
    @GetMapping("/companyResources")
    public TableDataInfo companyResources(Long companyId)
    {
        Map<String, String> map = VerifyUtil.verifySysFunction("闲置", dictDataService);
        Set<String> strings = map.keySet();
        String key ="";
        String value = "";
        for (String mapString : strings) {
            value = map.get(mapString);
            key = mapString;
        }
        if (key.equals("错误信息"))
            return getCustomDataTable(new ArrayList<>(), HttpStatus.CLOSED_FUNCTION,map.get("错误信息"));

        SysDept sysDept = sysDeptService.selectDeptById(companyId);
        AddAssets addAssets = new AddAssets();
        addAssets.setCompanyId(companyId);
        addAssets.setAssetsState(value);
        startPage();
        List<AddAssets> list = addAssetsService.selectAddAssetsList(addAssets);
        return getDataTable(list);
    }

2.implステートメント

コードは次のとおりです(例):

暂时没有

ここで使用されるURLネットワークによって要求されたデータ。

例:

 

X. 2021-3-29インターフェイスドキュメント(現在の会社で使用されているすべてのリソース)   

例:

URL:/ assets / assets / usecompanyResourcesパラメーター:なしリクエストメソッド:[取得]     

1.データを入力します

コードは次のとおりです(例):


    /**
     * 当前所在公司下所有的再用资源
     */
    @ApiOperation("当前所在公司下所有的闲置资源")
    @PreAuthorize("@ss.hasPermi('assets:assets:list')")
    @GetMapping("/usecompanyResources")
    public TableDataInfo usecompanyResources()
    {
        Map<String, String> map = VerifyUtil.verifySysFunction("在用", dictDataService);
        Set<String> strings = map.keySet();
        String key ="";
        String value = "";
        for (String mapString : strings) {
            value = map.get(mapString);
            key = mapString;
        }
        if (key.equals("错误信息"))
            return getCustomDataTable(new ArrayList<>(), HttpStatus.CLOSED_FUNCTION,map.get("错误信息"));
        AddAssets addAssets = new AddAssets();
        addAssets.setAssetsState(value);
        startPage();
        List<AddAssets> list = addAssetsService.selectAddAssetsList(addAssets);
        return getDataTable(list);
    }

2.implステートメント

コードは次のとおりです(例):

暂时没有

ここで使用されるURLネットワークによって要求されたデータ。

例:

 

 



総括する

ヒント:記事の概要は次の
とおりですたとえば、上記は本日お話しする内容です。この記事では、パンダの使用法について簡単に紹介します。パンダには、処理を可能にする多数の関数とメソッドが用意されています。データをすばやく便利に。

おすすめ

転載: blog.csdn.net/c_v_sCtrl/article/details/115008886