最近开发了亿点点小项目

大家好,我是小孟!

最近忙的一头雾水,一边是家庭,一边是工作。

前端时间小孩手指腱鞘炎,做了个小手术,我跑了很多的医院,最终确认在妇女儿童医院做的小手术,前后还比较顺利。

看到孩子从手术间推出来的那一刻,我真的绷不住了,这是可能是近几年来第一次流泪。

上次流泪是爷爷走的时候。

图片

在这里插入图片描述

小孩很坚强,就哭了一次。旁边做一样手术小孩一直嚎啕大哭。

小孩越听话,我心里更难受。

白天一直在前前后后跑手术的手续,中间有2个开发的客户也挺着急,我说明天系统一定给你。

幸运的是甲方通情达理!

小孩晚上睡得很晚,在医院走廊我码起了代码,熬了个通宵弄完了三个模块的开发!护士过来查房,问我:

都三点半了,你咋还不睡觉?

成年人的世界,没有谁是容易的。

后来小孩出院后,我爸过来照顾,然后我就投入到开发中,然后和小伙伴们开发了很多的项目!

这些小伙伴都是前面私活VIP进入的小伙伴,独乐乐不如众乐乐!我希望能帮助一些小伙伴多些收入。有些小伙伴技术很好,却不知如何变现,太可惜了!

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

更多的项目,我们会不断的开发,有一些小伙伴已经起飞了:

图片

前面有很多的粉丝,技术非常的不错,但是不懂商业本质,空有一身武艺,没用。带了一些小伙伴,他们做的真的还不错!

方向对了,事半功倍!有个小伙伴搞的:

在这里插入图片描述

下一步他的计划:

加粗样式

核心代码分享:

@RestController
public class AccountController {
    
    

    @Value("${authority.info}")
    private String authorityStr;
  //我的vx:codemeng
	@Resource
	private AdminInfoService adminInfoService;
	@Resource
	private SallerInfoService sallerInfoService;
	@Resource
	private UserInfoService userInfoService;


    @PostMapping("/login")
    public Result<Account> login(@RequestBody Account account, HttpServletRequest request) {
    
    
        if (StrUtil.isBlank(account.getName()) || StrUtil.isBlank(account.getPassword()) || account.getLevel() == null) {
    
    
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        String imgCode = (String) request.getSession().getAttribute("imgCode");
        if(!account.getCode().equalsIgnoreCase(imgCode)){
    
    
            throw new CustomException(ResultCode.CODE_ERROR);
        }
        Integer level = account.getLevel();
        Account login = new Account();
		if (1 == level) {
    
    
			login = adminInfoService.login(account.getName(), account.getPassword());
		}
		if (2 == level) {
    
    
			login = sallerInfoService.login(account.getName(), account.getPassword());
		}
		if (3 == level) {
    
    
			login = userInfoService.login(account.getName(), account.getPassword());
		}

        request.getSession().setAttribute("user", login);
        return Result.success(login);
    }

    @PostMapping("/register")
    public Result<Account> register(@RequestBody Account account) {
    
    
        Integer level = account.getLevel();
        Account login = new Account();
		if (1 == level) {
    
    
			AdminInfo info = new AdminInfo();
			BeanUtils.copyProperties(account, info);
			login = adminInfoService.add(info);
		}
		if (2 == level) {
    
    
			SallerInfo info = new SallerInfo();
			BeanUtils.copyProperties(account, info);
			login = sallerInfoService.add(info);
		}
		if (3 == level) {
    
    
			UserInfo info = new UserInfo();
			BeanUtils.copyProperties(account, info);
			login = userInfoService.add(info);
		}

        return Result.success(login);
    }

    @GetMapping("/logout")
    public Result logout(HttpServletRequest request) {
    
    
        request.getSession().setAttribute("user", null);
        return Result.success();
    }

    @GetMapping("/auth")
    public Result getAuth(HttpServletRequest request) {
    
    
        Object user = request.getSession().getAttribute("user");
        if(user == null) {
    
    
            return Result.error("401", "未登录");
        }
        return Result.success(user);
    }

    @GetMapping("/getAccountInfo")
    public Result<Object> getAccountInfo(HttpServletRequest request) {
    
    
        Account account = (Account) request.getSession().getAttribute("user");
        if (account == null) {
    
    
            return Result.success(new Object());
        }
        Integer level = account.getLevel();
		if (1 == level) {
    
    
			return Result.success(adminInfoService.findById(account.getId()));
		}
		if (2 == level) {
    
    
			return Result.success(sallerInfoService.findById(account.getId()));
		}
		if (3 == level) {
    
    
			return Result.success(userInfoService.findById(account.getId()));
		}

        return Result.success(new Object());
    }

    @GetMapping("/getSession")
    public Result<Map<String, String>> getSession(HttpServletRequest request) {
    
    
        Account account = (Account) request.getSession().getAttribute("user");
        if (account == null) {
    
    
            return Result.success(new HashMap<>(1));
        }
        Map<String, String> map = new HashMap<>(1);
        map.put("username", account.getName());
        return Result.success(map);
    }

    @GetMapping("/getAuthority")
    public Result<List<AuthorityInfo>> getAuthorityInfo() {
    
    
        List<AuthorityInfo> authorityInfoList = JSONUtil.toList(JSONUtil.parseArray(authorityStr), AuthorityInfo.class);
        return Result.success(authorityInfoList);
    }

    /**
    * 获取当前用户所能看到的模块信息
    * @param request
    * @return
    */
    @GetMapping("/authority")
    public Result<List<Integer>> getAuthorityInfo(HttpServletRequest request) {
    
    
        Account user = (Account) request.getSession().getAttribute("user");
        if (user == null) {
    
    
            return Result.success(new ArrayList<>());
        }
        JSONArray objects = JSONUtil.parseArray(authorityStr);
        for (Object object : objects) {
    
    
            JSONObject jsonObject = (JSONObject) object;
            if (user.getLevel().equals(jsonObject.getInt("level"))) {
    
    
                JSONArray array = JSONUtil.parseArray(jsonObject.getStr("models"));
                List<Integer> modelIdList = array.stream().map((o -> {
    
    
                    JSONObject obj = (JSONObject) o;
                    return obj.getInt("modelId");
                    })).collect(Collectors.toList());
                return Result.success(modelIdList);
            }
        }
        return Result.success(new ArrayList<>());
    }

    @GetMapping("/permission/{modelId}")
    public Result<List<Integer>> getPermission(@PathVariable Integer modelId, HttpServletRequest request) {
    
    
        List<AuthorityInfo> authorityInfoList = JSONUtil.toList(JSONUtil.parseArray(authorityStr), AuthorityInfo.class);
        Account user = (Account) request.getSession().getAttribute("user");
        if (user == null) {
    
    
            return Result.success(new ArrayList<>());
        }
        Optional<AuthorityInfo> optional = authorityInfoList.stream().filter(x -> x.getLevel().equals(user.getLevel())).findFirst();
        if (optional.isPresent()) {
    
    
            Optional<AuthorityInfo.Model> firstOption = optional.get().getModels().stream().filter(x -> x.getModelId().equals(modelId)).findFirst();
            if (firstOption.isPresent()) {
    
    
                List<Integer> info = firstOption.get().getOperation();
                return Result.success(info);
            }
        }
        return Result.success(new ArrayList<>());
    }

    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Account info, HttpServletRequest request) {
    
    
        Account account = (Account) request.getSession().getAttribute("user");
        if (account == null) {
    
    
            return Result.error(ResultCode.USER_NOT_EXIST_ERROR.code, ResultCode.USER_NOT_EXIST_ERROR.msg);
        }
        String oldPassword = SecureUtil.md5(info.getPassword());
        if (!oldPassword.equals(account.getPassword())) {
    
    
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setPassword(SecureUtil.md5(info.getNewPassword()));
        Integer level = account.getLevel();
		if (1 == level) {
    
    
			AdminInfo adminInfo = new AdminInfo();
			BeanUtils.copyProperties(info, adminInfo);
			adminInfoService.update(adminInfo);
		}
		if (2 == level) {
    
    
			SallerInfo sallerInfo = new SallerInfo();
			BeanUtils.copyProperties(info, sallerInfo);
			sallerInfoService.update(sallerInfo);
		}
		if (3 == level) {
    
    
			UserInfo userInfo = new UserInfo();
			BeanUtils.copyProperties(info, userInfo);
			userInfoService.update(userInfo);
		}

        info.setLevel(level);
        info.setName(account.getName());
        // 清空session,让用户重新登录
        request.getSession().setAttribute("user", null);
        return Result.success();
    }

    @PostMapping("/resetPassword")
    public Result resetPassword(@RequestBody Account account) {
    
    
        Integer level = account.getLevel();
		if (1 == level) {
    
    
			AdminInfo info = adminInfoService.findByUserName(account.getName());
			if (info == null) {
    
    
				return Result.error(ResultCode.USER_NOT_EXIST_ERROR.code, ResultCode.USER_NOT_EXIST_ERROR.msg);
			}
			info.setPassword(SecureUtil.md5("123456"));
			adminInfoService.update(info);
		}
		if (2 == level) {
    
    
			SallerInfo info = sallerInfoService.findByUserName(account.getName());
			if (info == null) {
    
    
				return Result.error(ResultCode.USER_NOT_EXIST_ERROR.code, ResultCode.USER_NOT_EXIST_ERROR.msg);
			}
			info.setPassword(SecureUtil.md5("123456"));
			sallerInfoService.update(info);
		}
		if (3 == level) {
    
    
			UserInfo info = userInfoService.findByUserName(account.getName());
			if (info == null) {
    
    
				return Result.error(ResultCode.USER_NOT_EXIST_ERROR.code, ResultCode.USER_NOT_EXIST_ERROR.msg);
			}
			info.setPassword(SecureUtil.md5("123456"));
			userInfoService.update(info);
		}

        return Result.success();
    }
@RestController
@RequestMapping(value = "/addressInfo")
public class AddressInfoController {
    
    
    @Resource
    private AddressInfoService addressInfoService;

    @PostMapping
    public Result<AddressInfo> add(@RequestBody AddressInfoVo addressInfo, HttpServletRequest request) {
    
    
        Account account = (Account) request.getSession().getAttribute("user");
        addressInfo.setUserId(account.getId());
        addressInfoService.add(addressInfo);
        return Result.success(addressInfo);
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
    
    
        addressInfoService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody AddressInfoVo addressInfo) {
    
    
        addressInfoService.update(addressInfo);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<AddressInfo> detail(@PathVariable Long id) {
    
    
        AddressInfo addressInfo = addressInfoService.findById(id);
        return Result.success(addressInfo);
    }

    @GetMapping
    public Result<List<AddressInfoVo>> all() {
    
    
        return Result.success(addressInfoService.findAll());
    }

    @GetMapping("/user/{userId}")
    public Result<List<AddressInfoVo>> findByUserId(@PathVariable Long userId, HttpServletRequest request) {
    
    
        Account account = (Account) request.getSession().getAttribute("user");
        if(account.getLevel() == 1 || account.getLevel() == 2) {
    
    
            return Result.success(new ArrayList<>());
        }
        return Result.success(addressInfoService.findByUserId(userId));
    }

    @GetMapping("/page/{name}")
    public Result<PageInfo<AddressInfoVo>> page(@PathVariable String name,
                                                @RequestParam(defaultValue = "1") Integer pageNum,
                                                @RequestParam(defaultValue = "5") Integer pageSize,
                                                HttpServletRequest request) {
    
    
        return Result.success(addressInfoService.findPage(name, pageNum, pageSize, request));
    }

    /**
    * 批量通过excel添加信息
    * @param file excel文件
    * @throws IOException
    */
    @PostMapping("/upload")
    public Result upload(MultipartFile file) throws IOException {
    
    

        List<AddressInfo> infoList = ExcelUtil.getReader(file.getInputStream()).readAll(AddressInfo.class);
        if (!CollectionUtil.isEmpty(infoList)) {
    
    
            // 处理一下空数据
            List<AddressInfo> resultList = infoList.stream().filter(x -> ObjectUtil.isNotEmpty(x.getName())).collect(Collectors.toList());
            for (AddressInfo info : resultList) {
    
    
                addressInfoService.add(info);
            }
        }
        return Result.success();
    }

    @GetMapping("/getExcelModel")
    public void getExcelModel(HttpServletResponse response) throws IOException {
    
    
        // 1. 生成excel
        Map<String, Object> row = new LinkedHashMap<>();
		row.put("name", "");
		row.put("phone", "");
		row.put("man", "");

        List<Map<String, Object>> list = CollUtil.newArrayList(row);

        // 2. 写excel
        ExcelWriter writer = ExcelUtil.getWriter(true);
        writer.write(list, true);

        response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8");
        response.setHeader("Content-Disposition","attachment;filename=addressInfoModel.xlsx");

        ServletOutputStream out = response.getOutputStream();
        writer.flush(out, true);
        writer.close();
        IoUtil.close(System.out);
    }
}

还有其他的几个小伙伴做的也不错,就不一一截图了,后面看我们的成果!

但是这个招募是需要有技术经验的,如果没有2年以上技术经验,想学习的话,可以先努力努力学习技术:

在这里插入图片描述

这是个伟大的时代,别再抱怨职场PUA、程序员35岁了,为什么某皮一年星球可以几百w,为什么人家开软件公司可以一年几百w,要找对方向!

学习、模仿、执行,谁都可以!

我们要提高自己的学习能力、执行能力!

我搞过大量的项目,最高也搞过七位数的。所以只要渠道对了,开发的项目没问题了。收入肯定很nice。

当然我还有个想法:

以后我们项目共享,这样就可以更强,走地更远!现在有几个小伙伴已经开发了10套系统,如果10个人,就是100套。

我现在手里已经积累到了万套,所以我开发这么快!很多都是封装好的!

大家抱团,直接爽到爆!一群人才能走得更远!

图片

当然我也会给大家一些我的东西,去运营我的东西,去搞钱,因为我自己的精力实在有限,例如网站、公众号、小程序,都放在那里,属实浪费!

来面试吧!

当然关于程序员的出路,都可以随时交流。做技术、管理哪个更好?

副业是做自媒体还是接开发私活更香?

总之大家要提前做好规划,就会避免即使被裁也不会陷入没收入的地步。

工作并不是生活的全部,工作只是更好的生活。

我是程序员小孟。码字不易,欢迎点赞关注,谢谢您!下方也可以联系我!

猜你喜欢

转载自blog.csdn.net/mengchuan6666/article/details/130123643
今日推荐