Pārlūkot izejas kodu

Merge branch 'master' of http://47.100.37.243:10191/wutt/manHourHousekeeper

Min 1 gadu atpakaļ
vecāks
revīzija
0bcc0f2c2c

+ 50 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ProjectAuditorController.java

@@ -2,8 +2,8 @@ package com.management.platform.controller;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.management.platform.entity.ProjectAuditor;
-import com.management.platform.mapper.ProjectAuditorMapper;
+import com.management.platform.entity.*;
+import com.management.platform.mapper.*;
 import com.management.platform.service.ProjectAuditorService;
 import com.management.platform.util.HttpRespMsg;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -11,6 +11,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -29,11 +31,55 @@ public class ProjectAuditorController {
     @Resource
     private ProjectAuditorMapper projectAuditorMapper;
 
+    @Resource
+    private CompanyMapper companyMapper;
+    @Resource
+    private UserMapper userMapper;
+    @Resource
+    private ProjectMapper projectMapper;
+    @Resource
+    private DepartmentMapper departmentMapper;
+    @Resource
+    HttpServletRequest request;
+
     @RequestMapping("/getList")
     private HttpRespMsg getList(Integer projectId) {
-        List<ProjectAuditor> auditorList = projectAuditorMapper.selectList(new QueryWrapper<ProjectAuditor>().eq("project_id", projectId));
+        String token = request.getHeader("TOKEN");
         HttpRespMsg msg = new HttpRespMsg();
-        msg.data = auditorList;
+        User user = userMapper.selectById(token);
+        Company company = companyMapper.selectById(user.getCompanyId());
+        int mode = 0;
+        if (company.getNonProjectSimple() == 1) {
+            //启用了简易模式
+            Project project = projectMapper.selectById(projectId);
+            List<ProjectAuditor> auditorList = new ArrayList<>();
+            if (project.getIsPublic() == 1) {
+                //非项目,该员工的部门主要负责人审核
+                mode = 1;
+                String superiorId = null;
+                Integer departmentId = user.getDepartmentId();
+                Department department = departmentMapper.selectById(departmentId);
+                if (department != null) {
+                    superiorId = department.getManagerId();
+                }
+                if (superiorId != null) {
+                    User superior = userMapper.selectById(superiorId);
+                    if (superior != null) {
+                        ProjectAuditor auditor = new ProjectAuditor();
+                        auditor.setAuditorId(superiorId);
+                        auditor.setAuditorName(superior.getName());
+                        auditorList.add(auditor);
+
+                    }
+                }
+                msg.data = auditorList;
+            }
+        }
+        if (mode == 0) {
+            List<ProjectAuditor> auditorList = projectAuditorMapper.selectList(new QueryWrapper<ProjectAuditor>().eq("project_id", projectId));
+            msg.data = auditorList;
+        }
+
         return msg;
     }
 }

+ 8 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/Company.java

@@ -16,7 +16,7 @@ import lombok.experimental.Accessors;
  * </p>
  *
  * @author Seyason
- * @since 2023-04-10
+ * @since 2023-12-28
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -140,6 +140,13 @@ public class Company extends Model<Company> {
     private String regFrom;
 
 
+    /**
+     * 非项目采用简易模式,非项目工时由部门主要负责人审核
+     */
+    @TableField("non_project_simple")
+    private Integer nonProjectSimple;
+
+
     @Override
     protected Serializable pkVal() {
         return this.id;

+ 2 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/CompanyMapper.xml

@@ -23,11 +23,12 @@
         <result column="is_international" property="isInternational" />
         <result column="create_date" property="createDate" />
         <result column="reg_from" property="regFrom" />
+        <result column="non_project_simple" property="nonProjectSimple" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, company_name, staff_count_max, expiration_date, set_meal, package_worktime, package_project, package_contract, package_oa, package_etimecard, package_expense, package_customer, package_engineering, package_simple, package_finance, package_provider, is_international, create_date, reg_from
+        id, company_name, staff_count_max, expiration_date, set_meal, package_worktime, package_project, package_contract, package_oa, package_etimecard, package_expense, package_customer, package_engineering, package_simple, package_finance, package_provider, is_international, create_date, reg_from, non_project_simple
     </sql>
 
 </mapper>

+ 36 - 23
fhKeeper/formulahousekeeper/management-workshop/src/main/java/com/management/platform/service/impl/PlanServiceImpl.java

@@ -523,6 +523,9 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
             List<Product> productList = productMapper.selectList(new QueryWrapper<Product>().eq("company_id", companyId));
             List<ProdProcedure> allProcedureList = prodProcedureMapper.selectList(new QueryWrapper<ProdProcedure>().eq("company_id", companyId).orderByDesc("id"));
             List<Plan> needInsertList=new ArrayList<>();
+            XSSFRow row0 = sheet.getRow(0);
+            XSSFCell cell0 = row0.getCell(0);
+            if (cell0 != null) cell0.setCellType(CellType.STRING);
             List<PlanSteelStampNumber> allPlanSteelStampNumberList=new ArrayList<>();
             for (int rowIndex = 1; rowIndex <= rowNum; rowIndex++) {
                 XSSFRow row = sheet.getRow(rowIndex);
@@ -536,24 +539,28 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                 Plan plan=new Plan();
                 plan.setCompanyId(companyId);
                 List<PlanSteelStampNumber> planSteelStampNumberList=new ArrayList<>();
-                if(planType!=1){
+                if(planType!=2){
+                    if(!StringUtils.isEmpty(cell0.getStringCellValue())){
+                        if(cell0.getStringCellValue().equals("任务变更通知号")){
+                            msg.setError("导入模板为插单计划模板,请重新下载模板");
+                            return  msg;
+                        }
+                    }
                     plan.setPlanType(0);
                     //排产工单号 产品名称 钢印号 数量 主工序 工位 开工时间 完工时间 描述
                     XSSFCell productSchedulingNumCell = row.getCell(0);
                     XSSFCell productNameCell = row.getCell(1);
                     XSSFCell steelStampNumberCell = row.getCell(2);
-                    XSSFCell vehiclSerialNumberCell = row.getCell(3);
-                    XSSFCell numCell = row.getCell(4);
-                    XSSFCell mainProcessCell = row.getCell(5);
-                    XSSFCell stationNameCell = row.getCell(6);
-                    XSSFCell startDateCell = row.getCell(7);
-                    XSSFCell endDateCell = row.getCell(8);
-                    XSSFCell describtionCell = row.getCell(9);
+                    XSSFCell numCell = row.getCell(3);
+                    XSSFCell mainProcessCell = row.getCell(4);
+                    XSSFCell stationNameCell = row.getCell(5);
+                    XSSFCell startDateCell = row.getCell(6);
+                    XSSFCell endDateCell = row.getCell(7);
+                    XSSFCell describtionCell = row.getCell(8);
 
                     if (productSchedulingNumCell != null) productSchedulingNumCell.setCellType(CellType.STRING);
                     if (productNameCell != null) productNameCell.setCellType(CellType.STRING);
                     if (steelStampNumberCell != null) steelStampNumberCell.setCellType(CellType.STRING);
-                    if (vehiclSerialNumberCell != null) vehiclSerialNumberCell.setCellType(CellType.STRING);
                     if (numCell != null) numCell.setCellType(CellType.NUMERIC);
                     if (mainProcessCell != null) mainProcessCell.setCellType(CellType.STRING);
                     if (stationNameCell != null) stationNameCell.setCellType(CellType.STRING);
@@ -575,15 +582,15 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                     }
                     if(steelStampNumberCell!=null){
                         String stringCellValue = steelStampNumberCell.getStringCellValue();
-                        String[] split = stringCellValue.split("[|\\,\\,]");
+                        String[] split = stringCellValue.split("\\|");
                         for (String s : split) {
                             String[] targetSplit = s.split(",");
                             if(targetSplit.length!=2){
                                 msg.setError("数据["+s+"]钢印号数组及下标错误");
                                 return msg;
                             }
-                            String steelStampNum=split[0];
-                            String indexNum=split[1];
+                            String steelStampNum=targetSplit[0];
+                            String indexNum=targetSplit[1];
                             PlanSteelStampNumber p=new PlanSteelStampNumber();
                             if(steelStampNum.contains("-")){
                                 String[] split1 = steelStampNum.split("-");
@@ -595,8 +602,9 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                             }
                             if(indexNum.contains("-")){
                                 String[] split2 = indexNum.split("-");
-                                if(Integer.valueOf(split2[1])>Integer.valueOf(split2[0])){
-                                    msg.setError("钢印号数组["+s+"]下标异常,第二下标不能大于第一下标");
+                                if(Integer.valueOf(split2[0])>Integer.valueOf(split2[1])){
+                                    msg.setError("钢印号数组["+s+"]下标异常,第一下标不能大于第二下标");
+                                    return msg;
                                 }
                                 p.setRuleIndexStart(Integer.valueOf(split2[0]));
                                 p.setRuleIndexEnd(Integer.valueOf(split2[1]));
@@ -621,11 +629,6 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                         msg.setError("产品名称不能为空");
                         return msg;
                     }
-                    if(vehiclSerialNumberCell!=null){
-                        String[] split = vehiclSerialNumberCell.getStringCellValue().split("-");
-                        plan.setVehicleNumStart(Integer.valueOf(split[0]));
-                        plan.setVehicleNumEnd(split.length>1?Integer.valueOf(split[1]):Integer.valueOf(split[0]));
-                    }
                     plan.setNum(numCell==null?0:Double.valueOf(numCell.getNumericCellValue()).intValue());
                     plan.setMainProcess(mainProcessCell==null?"":mainProcessCell.getStringCellValue());
                     if(stationNameCell!=null){
@@ -646,14 +649,22 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                         msg.setError("工位不能为空");
                         return msg;
                     }
-                    if(startDateCell!=null){
+                    if(startDateCell!=null&&!StringUtils.isEmpty(startDateCell.getDateCellValue())){
+                        plan.setStartDate(LocalDate.parse(sdf.format(startDateCell.getDateCellValue()),df));
+                    }else {
                         plan.setStartDate(planType==0?LocalDate.now():LocalDate.now().plusDays(1));
                     }
-                    if(endDateCell!=null){
+                    if(endDateCell!=null&&!StringUtils.isEmpty(endDateCell.getDateCellValue())){
                         plan.setEndDate(LocalDate.parse(sdf.format(endDateCell.getDateCellValue()),df));
                     }
                     plan.setDescribtion(describtionCell==null?"":describtionCell.getStringCellValue());
                 }else {
+                    if(!StringUtils.isEmpty(cell0.getStringCellValue())){
+                        if(cell0.getStringCellValue().equals("排产工单号")){
+                            msg.setError("导入模板为排产计划模板,请重新下载模板");
+                            return  msg;
+                        }
+                    }
                     plan.setPlanType(1);
                     /*插单计划*/
                     //任务变更通知号 任务名称 任务类型 计划人数 数量 计划工时 单价 质检类型 工位 开工时间 完工时间 描述
@@ -745,10 +756,12 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
                         msg.setError("工位不能为空");
                         return msg;
                     }
-                    if(startDateCell!=null){
+                    if(startDateCell!=null&&!StringUtils.isEmpty(startDateCell.getDateCellValue())){
                         plan.setStartDate(LocalDate.parse(sdf.format(startDateCell.getDateCellValue()),df));
+                    }else {
+                        plan.setStartDate(LocalDate.now());
                     }
-                    if(endDateCell!=null){
+                    if(endDateCell!=null&&!StringUtils.isEmpty(endDateCell.getDateCellValue())){
                         plan.setEndDate(LocalDate.parse(sdf.format(endDateCell.getDateCellValue()),df));
                     }
                     plan.setDescribtion(describtionCell==null?"":describtionCell.getStringCellValue());

+ 11 - 14
fhKeeper/formulahousekeeper/timesheet/src/views/project/list.vue

@@ -222,9 +222,9 @@
                          <el-link type="primary" v-if="user.company.packageProject==1" :underline="false" :href="'#/projectInside/'+scope.row.id">{{scope.row.projectName}}</el-link>
                             <span v-if="user.company.packageProject==0" >{{scope.row.projectName}}</span>
                      </div> -->
-                     <div>
-                         <el-link type="primary" v-if="user.company.packageProject==1" :underline="false" :href="'#/projectInside/'+scope.row.id">{{scope.row.projectName}}</el-link>
-                            <span v-if="user.company.packageProject==0" >{{scope.row.projectName}}</span>
+                     <div> 
+                         <el-link type="primary" v-if="user.company.packageProject==1 && (user.company.nonProjectSimple==0 || (user.company.nonProjectSimple==1&&scope.row.isPublic==0))" :underline="false" :href="'#/projectInside/'+scope.row.id">{{scope.row.projectName}}</el-link>
+                         <span v-else>{{scope.row.projectName}}</span>
                      </div>
                 </template>
             </el-table-column>
@@ -484,10 +484,7 @@
                         <el-input v-model="addForm.projectDesc" :placeholder="$t('peaseenterthe')" clearable maxlength="4000" :disabled="canOnlyModParticipator" show-word-limit></el-input>
                     </el-form-item>
                     <el-form-item :label="$t('projecttype')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" prop="isPublic">
-                        <!-- <el-select v-model="addForm.isPublic" style="width:32%;" @change="selectPublic" :disabled="!permissions.projectManagement && addForm.creatorId != user.id"> -->
                         <el-select v-model="addForm.isPublic" style="width:32%;" @change="selectPublic" :disabled="canOnlyModParticipator">
-                            <!-- <el-option :value="0" :label="$t('commonproject')"></el-option>
-                            <el-option :value="1" :label="$t('publicprojects')"></el-option> -->
                             <el-option :value="0" :label="$t('zheng-shi-xiang-mu')"></el-option>
                             <el-option :value="1" :label="$t('fei-xiang-mu')"></el-option>
                         </el-select>
@@ -559,7 +556,7 @@
                             </div>
                         </el-tooltip>
                     </el-form-item>
-                    <el-form-item :label="$t('projectmanager')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
+                    <el-form-item :label="$t('projectmanager')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0)">
                        <el-select v-if="user.userNameNeedTranslate != 1" v-model="addForm.inchargerId" filterable :placeholder="$t('defaultText.pleaseChoose')" style="width:32%;" :disabled="canOnlyModParticipator || projectManagerEdit">
                             <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id">
                                 <span style="float: left">{{ item.name }}</span>
@@ -568,20 +565,20 @@
                         </el-select>
                         <selectCat v-if="user.userNameNeedTranslate == 1" :size="'medium'" :subject="participator" :subjectId="addForm.inchargerId" :distinction="'3'" @selectCal="selectCal" :disabled="canOnlyModParticipator || projectManagerEdit || isShowProjectName"></selectCat>
                     </el-form-item>
-                    <el-form-item :label="$t('newspaperauditor')" v-show="user.timeType.reportAuditType == 0 || user.timeType.reportAuditType == 4 || user.timeType.reportAuditType == 6">
+                    <el-form-item :label="$t('newspaperauditor')" v-show="user.timeType.reportAuditType == 0 || user.timeType.reportAuditType == 4 || user.timeType.reportAuditType == 6" v-if="user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0)">
                         <el-select v-if="user.userNameNeedTranslate != '1'" @change="$forceUpdate()" v-model="addForm.auditUserIds"  :disabled="!(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" filterable :placeholder="$t('defaultistheprojectleader')" style="width:100%;" :multiple="user.timeType.reportAuditType != 6" >
                             <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
                         </el-select>
                         <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'medium'" :tile="true" :widthStr="'800'" :disabled="!(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" :subjectId="addForm.auditUserIds" :subject="participator" :clearable="false" :distinction="'10'"  :multiSelect="user.timeType.reportAuditType != 6" @selectCal="selectCal"></selectCat>
                     </el-form-item>
-                    <el-form-item v-if="user.timeType.reportCc == 1" label="日报抄送人" >
+                    <el-form-item v-if="user.timeType.reportCc == 1 && (user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0))" label="日报抄送人" >
                         <el-select v-if="user.userNameNeedTranslate != '1'" v-model="addForm.ccUserIds" multiple="true" :disabled="!(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" filterable placeholder="请选择抄送人" style="width:100%;" >
                             <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
                         </el-select>
                         <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'medium'" :tile="true" :widthStr="'800'" :disabled="!(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" :subjectId="addForm.ccUserIds" :subject="participator" :clearable="false" :distinction="'10'"  :multiSelect="true" @selectCal="selectCal"></selectCat>
                     </el-form-item>
                     <!--专业项目协作版本功能 -->
-                    <el-form-item :label="$t('ji-bie')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.company.packageProject==1">
+                    <el-form-item :label="$t('ji-bie')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.company.packageProject==1 && (user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0))">
                         <el-select v-model="addForm.level"  :placeholder="$t('defaultText.pleaseChoose')" style="width:32%;" v-if="user.timeType.projectLevelState == 1" :disabled="canOnlyModParticipator || isShowProjectName">
                             <el-option v-for="item in levelList" :key="item.id" :label="item.projectLevelName" :value="item.id"></el-option>
                         </el-select>
@@ -594,7 +591,7 @@
                             placeholder="整数" clearable  @keyup.native="restrictNumber('contractAmount')" :disabled="title == '新增项目' ? false : false"></el-input><span style="margin-left:10px;">元</span> -->
                     </el-form-item>
                     <!-- 增加合同金额字段 -->
-                    <el-form-item  :label="$t('contractamount')" v-if="user.company.packageProject==1">
+                    <el-form-item  :label="$t('contractamount')" v-if="user.company.packageProject==1 && (user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0))">
                         <el-input id="contractAmount" v-model="addForm.contractAmount" :disabled="canOnlyModParticipator" style="width:32%;" @input="contractAmountChange(addForm.contractAmount)" :placeholder="$t('zheng-shu')" clearable  @keyup.native="restrictNumber('contractAmount')"></el-input><span style="margin-left:10px;position:absolute;">{{ $t('yuan') }}</span>
                         <template v-if="title == $t('modifytheproject') && contractAmountReasonShow">
                             <span style="margin-left:63px;margin-right:10px;">{{ $t('modifythereason') }}</span>
@@ -603,7 +600,7 @@
                     </el-form-item>
 
 
-                    <el-form-item :label="$t('ommencementDate')" prop="planStartDate"  >
+                    <el-form-item :label="$t('ommencementDate')" prop="planStartDate"  v-if="(user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0))">
                         <el-date-picker v-model="addForm.planStartDate" :disabled="canOnlyModParticipator"
                         :editable="false" style="width:32%;" 
                         format="yyyy-MM-dd" 
@@ -628,7 +625,7 @@
                     </el-form-item>
 
                     <!-- 增加项目人天字段 绎维固定字段 -->
-                    <el-form-item  v-if="user.timeType.projectManDay == 1">
+                    <el-form-item  v-if="user.timeType.projectManDay == 1 && (user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0))">
                         <template slot="label"><span v-if="manDaySetting.projectManDayFillMode == 2 || (manDaySetting.projectManDayFillMode == 1 && addForm.fromOutside == 0)" style="padding:5px;color:red;">*</span>项目人天</template>
                         <el-input v-model.number="addForm.manDay" :placeholder="$t('peaseenterthe')" @input="jisuanEstimatedWorkTime(addForm.manDay)"  style="width: 100px"></el-input><span style="margin-left:10px;position:absolute;">人天(预估工时:{{this.estimatedWorkTime}}h)</span>
                         <el-tooltip effect="dark" :content="$t('根据系统基础设置每日正常工作时长计算,1人天为一个每日正常工作时长')" placement="top-start" style="margin-left:180px">
@@ -739,7 +736,7 @@
                         </el-form-item>
                     </div> -->
                     <!-- 项目基线 -->
-                    <div style="margin: 10px 0 30px 0;min-height:200px;" v-if="user.company.packageProject == 1 && !canOnlyModParticipator">
+                    <div style="margin: 10px 0 30px 0;min-height:200px;" v-if="user.company.packageProject == 1 && !canOnlyModParticipator && (user.company.nonProjectSimple == 0 || (user.company.nonProjectSimple == 1 && addForm.isPublic == 0))">
                         <el-tabs v-model="activeName" @tab-click="handleClick">
                         <el-tab-pane :label="$t('costbaseline')" name="baseCostPanel"  >
                             <div style="padding-top:10px;">

+ 4 - 3
fhKeeper/formulahousekeeper/timesheet/src/views/workReport/daily.vue

@@ -527,7 +527,7 @@
                                 <el-option v-for="item in timeBasecostList" :label="item.name" :value="item.id" :key="item.id"></el-option>
                             </el-select>
                         </el-form-item>
-                        <el-form-item v-if="user.company.packageProject == 1">
+                        <el-form-item v-if="user.company.packageProject == 1&& (user.company.nonProjectSimple==0 || (user.company.nonProjectSimple==1&&domain.isPublic != 1))">
                             <template slot="label">
                                 <span style="color:#FF0000;" v-if="user.timeType.reportAuditType == 1 ||user.timeType.reportAuditType == 2">*</span>
                                 <span >{{$t('lable.taskGrouping')}}</span>
@@ -665,7 +665,7 @@
                             </span>
                         </el-form-item>
                         <!--项目管理专业版模式下,项目下的近期执行的任务 -->
-                        <el-form-item :label="$t('other.task')+' / '+$t('other.milestone')" :prop="'domains.' + index + '.taskId'" v-if="user.company.packageProject==1" >
+                        <el-form-item :label="$t('other.task')+' / '+$t('other.milestone')" :prop="'domains.' + index + '.taskId'" v-if="user.company.packageProject==1&& (user.company.nonProjectSimple==0 || (user.company.nonProjectSimple==1&&domain.isPublic!=1))" >
                             <template slot="label" v-if="user.companyId == 3092">
                                 <span style="color:#FF0000;">*</span>
                                 <span >任务</span>
@@ -2409,7 +2409,7 @@
                 domainItem.extraField3 = null;
                 if (selectPid && domainItem.extraField1) {
                     //是否非项目
-                    var isPublic = this.fillProjectList.filter(p=>p.id == selectPid)[0].isPublic;
+                    var isPublic = domainItem.isPublic;//this.fillProjectList.filter(p=>p.id == selectPid)[0].isPublic;
                     console.log('==========','isPublic=='+isPublic);
                     var filteredRespList = this.jobResponseList.filter(j=>j.timeType == (isPublic?'非项目工时':'项目工时') && j.role == (this.roleList.filter(r=>r.value==domainItem.extraField1)[0].label));
                     console.log(filteredRespList);
@@ -4185,6 +4185,7 @@
                 }
                 // console.log('projectId===',domain.projectId);
                 domain.projectName = this.fillProjectList.filter(p=>p.id == domain.projectId)[0].projectName;
+                domain.isPublic = this.fillProjectList.filter(p=>p.id == domain.projectId)[0].isPublic;
                 this.http.post('/sub-project/list',{
                     projectId: domain.projectId,
                     isReport: true