123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611 |
- angular.module('push')
- .controller('publicResourceCtrl', function ($scope, $ionicActionSheet, $ionicSlideBoxDelegate, ResourceLibraryService, $stateParams, $timeout, $ionicScrollDelegate,
- UtilService, $ionicPopup, resourceLibraryTempData, ShareService, $ionicListDelegate, AuthorityService, UserService) {
- if($scope.app){
- $scope.setStatusBar(0);
- }
- //1:需求,2:成果,6:企业,8:人才
- var libtype = $stateParams.libtype;
- var modlibid = $stateParams.modlibid;
- $scope.libtype = libtype;
- $scope.name = $stateParams.name;
- var checkedresource = {};//单个分享时选中的资源
- var checkedindex = -1;//多个分享时第一个选择的索引
- $scope.checkedresourcelist = [];//多个分享时选中的资源
- $scope.tabs = [];
- var chooseIndex = resourceLibraryTempData.getCategoryIndex();//当前频道索引
- $scope.index = chooseIndex;
- $scope.checked = resourceLibraryTempData.getChecked();
- $scope.checked.classificationType = libtype;
- //排序初始化
- $scope.sorts = [
- {name: "热门", type: 0, value: "popular,DESC"},
- {name: "最新", type: 1, value: "time,DESC"},
- {name: "综合", type: 2, value: "complex,DESC"}
- ];
- var checkedsort = $scope.sorts[0].value;
- //地区初始化
- /*$scope.checkedlocationtype = 1;
- $scope.chooeslocation = [
- {name: "不限"},
- {name: "常州"},
- {name: "定位"}
- ];*/
- if (libtype == 2) {
- // $scope.contentlist = resourceLibraryTempData.getAchievementList();
- //成熟度初始化
- $scope.chooesMaturity = [
- {name: "不限", type: 0},
- {name: "正在研发", type: 1},
- {name: "已有小样", type: 2},
- {name: "通过小试", type: 3},
- {name: "通过中试", type: 4},
- {name: "可以量产", type: 5}
- ];
- //知识产权初始化
- $scope.chooesRight = [
- {name: "不限", type: 0},
- {name: "有", type: 1},
- {name: "无", type: 2}
- ];
- //合作模式初始化
- $scope.chooesModel = [
- {name: "不限", type: 0},
- {name: "委托开发", type: 1},
- {name: "合作研发", type: 2},
- {name: "成果转让", type: 3},
- {name: "技术入股", type: 4},
- {name: "技术咨询", type: 5},
- {name: "其他", type: 6}
- ];
- } else if (libtype == 1) {
- // $scope.contentlist = resourceLibraryTempData.getRequirementList();
- //合作模式初始化
- $scope.chooesModel = [
- {name: "不限", type: 0},
- {name: "委托开发", type: 1},
- {name: "合作研发", type: 2},
- {name: "成果转让", type: 3},
- {name: "技术入股", type: 4},
- {name: "技术咨询", type: 5},
- {name: "其他", type: 6}
- ];
- //投入预算
- $scope.inputBudget = [
- {name: "不限", type: 0},
- {name: "1000万以上", type: 9},
- {name: "500万-1000万", type: 8},
- {name: "200万-500万", type: 7},
- {name: "100万-200万", type: 6},
- {name: "50万-100万", type: 5},
- {name: "10万-50万", type: 4},
- {name: "10万以下", type: 3},
- {name: "面议", type: 2}
- ]
- } else if (libtype == 6) {
- // $scope.contentlist = resourceLibraryTempData.getEenterpriseList();
- //企业规模
- $scope.enterpriseScale = [
- {name: "不限", type: 0},
- {name: "少于50人", type: 1},
- {name: "50-150人", type: 2},
- {name: "150-500人", type: 3},
- {name: "500-1000人", type: 4},
- {name: "1000-5000人", type: 5},
- {name: "5000-10000人", type: 6},
- {name: "10000人以上", type: 7}
- ];
- //企业类型
- $scope.enterpriseType = [
- {name: "不限", type: 0},
- {name: "国有企业", type: 1},
- {name: "集体所有制企业", type: 2},
- {name: "私营企业", type: 3},
- {name: "股份制企业", type: 4},
- {name: "联营企业", type: 5},
- {name: "外商投资企业", type: 6},
- {name: "港澳台企业", type: 7},
- {name: "股份合作企业", type: 8}
- ];
- } else if (libtype == 8) {
- // $scope.contentlist = resourceLibraryTempData.getPersonnelList();
- //学位
- $scope.academicDegree = [
- {name: "不限", type: 0},
- {name: "博士后", type: 7},
- {name: "博士", type: 6},
- {name: "硕士", type: 5},
- {name: "学士", type: 4},
- {name: "其他", type: 8}
- ];
- //职称
- $scope.occupationalTitle = [
- {name: "不限", type: 0},
- {name: "正高", type: 1},
- {name: "副高", type: 2},
- {name: "中级", type: 3},
- {name: "副级", type: 4},
- {name: "无", type: 5}
- ];
- } else if (libtype == 7) {
- //学校类别
- $scope.universitytype = [
- {name: "不限", type: 0},
- {name: "985工程院校暨211工程院校", type: 600},
- {name: "985工程院校", type: 601},
- {name: "211工程院校", type: 602},
- {name: "普通本科院校", type: 604},
- {name: "高职专科院校", type: 606}
- ];
- }
- $scope.contentlist = [];
- // 获取资源库下行业分类列表
- var getCategoryList = function () {
- ResourceLibraryService.getCategoryList(libtype, $stateParams.reclibid, modlibid).then(function (response) {
- // console.log(response);
- $scope.categorylist = response.channelList;
- // resourceLibraryTempData.setCategoryList(response.channelList);
- angular.forEach(response.channelList, function (value, index) {
- $scope.contentlist.push({isload: false, currentPage: 1, reslist: []});
- });
- // resourceLibraryTempData.initContent(libtype, response.channelList);
- if ($scope.categorylist.length > 0) {
- $timeout(function () {
- $ionicSlideBoxDelegate.slide(chooseIndex);
- $scope.getPublicResourceList();
- }, 100);
- }
- }, function () {
- UtilService.showMess("网络不给力,请重试");
- })
- };
- //获取资源列表
- $scope.getPublicResourceList = function () {
- $scope.showLoadingToast();
- var category = "";
- if (libtype != 7) {
- category = $scope.categorylist[chooseIndex].by1
- }
- ResourceLibraryService.getFirstResourceList(libtype, $scope.checked, checkedsort, category, "", 0, 0).then(function (response) {
- // console.log(response);
- var tempreslib = angular.fromJson(response.resourcelibrary);
- // console.log(tempreslib);
- var temppage = angular.fromJson(response.page);
- var totalPage = Math.ceil(temppage.totalCount / 10);
- $scope.contentlist[chooseIndex].reslist = tempreslib;
- var trHtml = "<div class='refresh_tip_div'>更新了" + $scope.contentlist[chooseIndex].reslist.length + "条内容</div>";
- $timeout(function () {
- $(".resourcelistDiv .list").prepend(trHtml);
- $(".refresh_tip_div").animate({width: 100 + "%"}, 150);
- }, 800);
- $timeout(function () {
- $(".refresh_tip_div").slideUp();
- }, 1200);
- //判断是否有下一页
- $timeout(function () {
- $timeout(function () {
- if ($scope.contentlist[chooseIndex].currentPage >= totalPage) {
- $scope.contentlist[chooseIndex].isload = false;
- } else {
- $scope.contentlist[chooseIndex].isload = true;
- }
- $scope.contentlist[chooseIndex].currentPage = 2;
- }, 1000);
- $scope.hideLoadingToast();
- $ionicSlideBoxDelegate.update();
- $ionicScrollDelegate.$getByHandle("resourceContent").scrollTo(0, 0);
- }, 50);
- }, function () {
- $scope.hideLoadingToast();
- }).finally(function () {
- $scope.$broadcast('scroll.refreshComplete');
- });
- };
- //加载更多资源列表
- $scope.loadMore = function () {
- $scope.contentlist[chooseIndex].isload = false;
- $scope.loadmore = true;
- // $scope.showLoadingToast();
- var category = "";
- if (libtype != 7) {
- category = $scope.categorylist[chooseIndex].by1
- }
- ResourceLibraryService.getSecondResourceList(libtype, $scope.checked, checkedsort, category, "", $scope.contentlist[chooseIndex].currentPage, 0, 0).then(function (response) {
- // console.log(response);
- var tempreslib = angular.fromJson(response.resourcelibrary);
- var temppage = angular.fromJson(response.page);
- var totalPage = Math.ceil(temppage.totalCount / 10);
- //加载数据,更新当前页数
- $timeout(function () {
- if (tempreslib.length > 0) {
- $scope.contentlist[chooseIndex].reslist = $scope.contentlist[chooseIndex].reslist.concat(tempreslib);
- }
- $scope.loadmore = false;
- }, 2000);
- // $scope.hideLoadingToast();
- //判断是否有下一页
- $timeout(function () {
- if ($scope.contentlist[chooseIndex].currentPage >= totalPage) {
- $scope.contentlist[chooseIndex].isload = false;
- } else {
- $scope.contentlist[chooseIndex].isload = true;
- }
- $scope.contentlist[chooseIndex].currentPage++;
- }, 2000);
- if (selectflg) {
- $timeout(function () {
- $(".item-options").addClass("invisible");
- $(".resource_wrap").css("left", "10%");
- $(".pay_list_c2").css("left", "4%");
- $(".item-content").css("transform", "translate3d(0px, 0px, 0px)");
- $("#collect-bottom").css("display", "block");
- }, 20);
- }
- }, function () {
- // $scope.hideLoadingToast();
- $scope.loadmore = false;
- }).finally(function () {
- $scope.$broadcast('scroll.infiniteScrollComplete');
- });
- };
- if (libtype == 7) {
- $scope.listtop = "0px";
- $scope.contentlist = [{isload: false, currentPage: 1, reslist: []}];
- $scope.getPublicResourceList();
- } else {
- $scope.listtop = "33px";
- getCategoryList();
- }
- $scope.goResourceDetail = function (resource, ind) {
- if (selectflg) {
- selectResource(resource, ind);
- } else {
- resourceLibraryTempData.setCategoryIndex(chooseIndex);
- resourceLibraryTempData.setChecked($scope.checked);
- var category = "";
- if (libtype != 7) {
- category = $scope.categorylist[chooseIndex].by1
- }
- $scope.go('resourceDetails', {
- recourceid: resource.unique,
- recourcetype: resource.type,
- recourcecomefrom: resource.source,
- categorylabel: category
- });
- }
- };
- var editSlide = function (index) {
- var tablength = $scope.categorylist.length;//标题个数
- var middlewidth = $(window).width() / 2;//获取当前手机屏幕宽度一般
- var OffLeft = $(".Chanel_scroll_a").eq(index).offset().left;//获取当前点击标题距离父容器左边框的距离
- var SelfWidth = $(".Chanel_scroll_a").eq(index).width();//获取当前点击标题宽度
- var startTranform = $("#p_Chanel .scroll").offset().left;
- var movewidth = OffLeft - middlewidth + SelfWidth / 2;
- startTranform -= movewidth;
- if (startTranform <= 0) {
- if (index < tablength - 2) {
- $('#p_Chanel .scroll').css({
- 'transform': 'translate3d(' + startTranform + 'px,0,0)'
- });
- }
- } else if (index < 4) {
- $('#p_Chanel .scroll').css({
- 'transform': 'translate3d(0,0,0)'
- });
- }
- $(".Chanel_scroll_a").eq(index).addClass("scroll_a_on").siblings().removeClass("scroll_a_on");
- };
- $scope.selectCategory = function (index) {
- if (selectflg) {
- UtilService.showMess("当前处于编辑状态,无法切换行业");
- return;
- }
- editSlide(index);
- $(".Chanel_scroll_a").eq(index).addClass("scroll_a_on").siblings().removeClass("scroll_a_on");
- if (index == chooseIndex) {
- return;
- }
- chooseIndex = index;
- editSlide(index);
- // $(".Chanel_scroll_a").eq(index).addClass("scroll_a_on").siblings().removeClass("scroll_a_on");
- $scope.index = chooseIndex;
- $scope.getPublicResourceList();
- // $ionicSlideBoxDelegate.slide(index);
- };
- //资源库搜索
- $scope.goResourceSearch = function () {
- resourceLibraryTempData.setCategoryIndex(chooseIndex);
- resourceLibraryTempData.setChecked($scope.checked);
- //1:需求,2:成果,6:企业,8:人才
- var tabindex = 3;
- if (libtype == 1) {
- tabindex = 4;
- } else if (libtype == 2) {
- tabindex = 3;
- } else if (libtype == 6) {
- tabindex = 5;
- } else if (libtype == 8) {
- tabindex = 6;
- }
- $timeout(function () {
- $scope.go('resourceSearch', {resourcetype: libtype, tabindex: tabindex});
- }, 350);
- };
- $scope.shareflg = false;
- $scope.openShare = function (tempobj, ind) {
- $scope.go('chooseShareResource', {
- chereslist: angular.toJson([tempobj.unique]),
- folderid: $stateParams.reclibid,
- isCloud: 1,
- recourcetype: tempobj.type,
- recourcecomefrom: tempobj.source
- });
- /*$scope.shareflg = true;
- $(".resource_wrap").css("left", "0%");
- $(".pay_list_c2").css("left", "-35px");
- $("#collect-bottom").css("display", "none");
- checkedresource = tempobj;
- checkedindex = ind;*/
- };
- $scope.closeShare = function () {
- $timeout(function () {
- $ionicListDelegate.closeOptionButtons();
- }, 10);
- $scope.shareflg = false;
- };
- //选择排序
- $scope.chooseSort = function (b) {
- $scope.checked.SortType = b.type;
- checkedsort = b.value;
- };
- //地区
- /*$scope.chooseActionlocation = function (index) {
- $(".locationclassfile ul li").eq(index).addClass("specialSpan").siblings().removeClass("specialSpan");
- if (index != 0) {
- $(".locationclassfile ul li:first-child").css({"color": "#000", "border": "none"});
- } else {
- $(".locationclassfile ul li:first-child").css({"color": "#3385ff", "border": "#3385ff .5px solid"});
- $(".locationclassfile ul li").removeClass("specialSpan");
- }
- };*/
- //选择成熟度
- $scope.chooseActionMaturity = function (s) {
- $scope.checked.MaturityType = s.type;
- };
- //选择知识产产权
- $scope.chooseActionRight = function (r) {
- $scope.checked.RightType = r.type;
- };
- //选择合作模式
- $scope.chooseActionModel = function (m) {
- $scope.checked.ModelType = m.type;
- };
- //选择投入预算
- $scope.chooseInputBudget = function (budget) {
- $scope.checked.BudgetType = budget.type;
- };
- //选择企业规模
- $scope.chooseEenterpriseScale = function (scale) {
- $scope.checked.ScaleType = scale.type;
- };
- //选择企业类型
- $scope.chooseEnterpriseType = function (enterprise) {
- $scope.checked.EnterpriseType = enterprise.type;
- };
- //选择学位
- $scope.chooseAcademicDegree = function (degree) {
- $scope.checked.DegreeType = degree.type;
- };
- //选择职称
- $scope.chooseOccupationalTitle = function (title) {
- $scope.checked.TitleType = title.type;
- };
- //选择学校类别
- $scope.chooseUniversityType = function (university) {
- $scope.checked.UniversityType = university.type;
- };
- //展开/收起排序
- $scope.toggleSort = function () {
- $(".sort ul").toggle();
- $(".sort h3 i").toggleClass("transformArrow");
- };
- //展开/收起地区
- /*$scope.toggleClassfilelocation = function () {
- $(".locationclassfile ul").toggle();
- $(".locationclassfile h3 i").toggleClass("transformArrow");
- };*/
- //展开/收起成熟度
- $scope.toggleClassfileMaturity = function () {
- $(".Maturityclassfile ul").toggle();
- $(".Maturityclassfile h3 i").toggleClass("transformArrow");
- };
- //展开/收起知识产权
- $scope.toggleClassfileRight = function () {
- $(".Rightclassfile ul").toggle();
- $(".Rightclassfile h3 i").toggleClass("transformArrow");
- };
- //展开/收起合作模式
- $scope.toggleClassfileModel = function () {
- $(".Modelclassfile ul").toggle();
- $(".Modelclassfile h3 i").toggleClass("transformArrow");
- };
- //展开/收起投入预算
- $scope.toggleInputBudget = function () {
- $(".InputBudget ul").toggle();
- $(".InputBudget h3 i").toggleClass("transformArrow");
- };
- //展开/收起企业规模
- $scope.toggleEenterpriseScale = function () {
- $(".EenterpriseScale ul").toggle();
- $(".EenterpriseScale h3 i").toggleClass("transformArrow");
- };
- //展开/收起企业类型
- $scope.toggleEnterpriseType = function () {
- $(".EnterpriseType ul").toggle();
- $(".EnterpriseType h3 i").toggleClass("transformArrow");
- };
- //展开/收起学位
- $scope.toggleAcademicDegree = function () {
- $(".AcademicDegree ul").toggle();
- $(".AcademicDegree h3 i").toggleClass("transformArrow");
- };
- //展开/收起职称
- $scope.toggleOccupationalTitle = function () {
- $(".OccupationalTitle ul").toggle();
- $(".OccupationalTitle h3 i").toggleClass("transformArrow");
- };
- //展开/收起学校类别
- $scope.toggleUniversityType = function () {
- $(".UniversityType ul").toggle();
- $(".UniversityType h3 i").toggleClass("transformArrow");
- };
- $scope.finishShow = false;
- //展开筛选
- $scope.menueFilter = function () {
- $scope.finishShow = true;
- };
- //完成选择,刷新数据
- $scope.finishDone = function () {
- $scope.finishShow = false;
- $scope.getPublicResourceList();
- };
- //重置选择数据
- $scope.reseChecked = function () {
- $scope.checked = {
- SortType: 0,
- classificationType: libtype,
- starType: 0,
- MaturityType: 0,
- RightType: 0,
- ModelType: 0,
- BudgetType: 0,
- ScaleType: 0,
- EnterpriseType: 0,
- DegreeType: 0,
- sexType: 0,
- TitleType: 0,
- UniversityType: 0
- };
- checkedsort = $scope.sorts[0].value;
- };
- //点击空白灰色选择条件隐藏
- $scope.hideSortDiv = function () {
- $scope.finishShow = false;
- $scope.getPublicResourceList();
- };
- //分享选择操作表
- var selectflg = false;//列表选择打开标志
- $scope.openCollectShare = function () {
- selectflg = true;
- $scope.contentlist[$scope.index].reslist[checkedindex].value = true;
- var tempres = {
- infoid: checkedresource.unique,
- infocomefrom: checkedresource.source,
- infoType: checkedresource.type
- };
- $scope.checkedresourcelist.push(tempres);
- $(".item-options").addClass("invisible");
- $(".resource_wrap").css("left", "10%");
- $(".pay_list_c2").css("left", "4%");
- $(".item-content").css("transform", "translate3d(0px, 0px, 0px)");
- $("#collect-bottom").css("display", "block");
- $scope.closeShare();
- };
- //取消分享
- $scope.cancelShare = function () {
- angular.forEach($scope.contentlist[$scope.index].reslist, function (value, ind) {
- $scope.contentlist[$scope.index].reslist[ind].value = false;
- });
- $scope.checkedresourcelist = [];
- $(".resource_wrap").css("left", "0%");
- $(".pay_list_c2").css("left", "-35px");
- $("#collect-bottom").css("display", "none");
- selectflg = false;
- };
- var selectResource = function (resource, ind) {
- var tempres = {
- infoid: resource.unique,
- infocomefrom: resource.source,
- infoType: resource.type
- };
- var chind = -1;
- angular.forEach($scope.checkedresourcelist, function (value, index) {
- if (value.infoid == resource.unique) {
- chind = index;
- }
- });
- if (chind == -1) {
- $scope.contentlist[$scope.index].reslist[ind].value = true;
- $scope.checkedresourcelist.unshift(tempres);
- } else {
- $scope.contentlist[$scope.index].reslist[ind].value = false;
- $scope.checkedresourcelist.splice(chind, 1);
- }
- // console.log($scope.checkedresourcelist);
- };
- $scope.shareResourceToPrilib = function () {
- $scope.go('chooseShareResource', {chereslist: angular.toJson($scope.checkedresourcelist)});
- };
- //0:QQ,1:QQ空间,2:微信,3:微信朋友圈,4:新浪微博
- $scope.shareMessage = function (type) {
- $scope.shareflg = false;
- $scope.showLoadingToast();
- var message = {
- title: checkedresource.title,
- description: checkedresource.title.substring(0, 19),
- url: checkedresource.sharelink,
- imageurl: $scope.imgUrl + checkedresource.logo
- };
- switch (type) {
- case 0:
- case 1:
- ShareService.shareToQQ(type, message).then(function () {
- UtilService.showMess("QQ分享成功");
- $scope.hideLoadingToast();
- }, function (error) {
- UtilService.showMess(error);
- $scope.hideLoadingToast();
- });
- break;
- case 2:
- case 3:
- ShareService.shareToWechat(0, message).then(function () {
- UtilService.showMess("微信分享成功");
- $scope.hideLoadingToast();
- }, function (error) {
- UtilService.showMess(error);
- $scope.hideLoadingToast();
- });
- break;
- default:
- break;
- }
- $timeout(function () {
- $scope.hideLoadingToast();
- }, 10000);
- };
- });
|