diff --git a/SAS/TMSS/frontend/tmss_webapp/src/App.css b/SAS/TMSS/frontend/tmss_webapp/src/App.css
index 57436fb5f7b3851b83865c344b7a9897dbf20123..522607ca9efeba809d9f5a4fe499012cd067eb8a 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/App.css
+++ b/SAS/TMSS/frontend/tmss_webapp/src/App.css
@@ -250,4 +250,8 @@ div[data-schemapath='root.$schema'] {
 .workflow-header a span {
   display: block !important;
   height: auto !important;
+}
+
+.hide-tab {
+  display: none !important;
 }
\ No newline at end of file
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/decide.acceptance.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/decide.acceptance.js
index 23318bf02603536f8ed64da37d65e55ddd3ae0e4..e3d1748671b425164a8f74d120000b83fa3c7f95 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/decide.acceptance.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/decide.acceptance.js
@@ -15,8 +15,7 @@ class DecideAcceptance extends Component {
             showEditor: false,           
             sos_accept_after_pi: true,
             pi_accept: true,
-            quality_within_policy: true,
-            sos_accept_show_pi: true
+            quality_within_policy: true,        
         };
         this.Next = this.Next.bind(this);
         this.handleChange = this.handleChange.bind(this);
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js
index 57fc73c9715821f72d280fbb319caaf014062584..22db7eb947ac89bd97abe44332952710de37378f 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js
@@ -39,8 +39,9 @@ export default (props) => {
     // const [disableNextButton, setDisableNextButton] = useState(false);
     const [loader, setLoader] = useState(false);
     const [state, setState] = useState({});
-    const [currentProcessStep, setCurrentProcessStep] = useState();
+    const [currentView, setcurrentView] = useState();
     const [tasks, setTasks] = useState([]);
+    const [showIngestTab, setShowIngestTab] = useState(false);
     const [QASUProcess, setQASUProcess] = useState();
     const [currentStep, setCurrentStep] = useState();
     const [schedulingUnit, setSchedulingUnit] = useState();
@@ -58,6 +59,7 @@ export default (props) => {
             setSchedulingUnit(responses[0]);
             setTasks(SUB.task_blueprints);
             getStatusUpdate(SUB.task_blueprints);
+            setShowIngestTab(SUB.task_blueprints.filter(i => i.specifications_template.name === 'ingest').length ? true : false);
         });
     }, []);
 
@@ -110,11 +112,11 @@ export default (props) => {
             // const workflowLastTask = responses[1].find(task => task.process === suQAProcess.id);
             const workflowLastTask = (_.orderBy(suQAProcessTasks, ['id'], ['desc']))[0];
             setCurrentStep(RedirectionMap[workflowLastTask.flow_task.toLowerCase()]);
-            setCurrentProcessStep(RedirectionMap[workflowLastTask.flow_task.toLowerCase()]);
+            setcurrentView(RedirectionMap[workflowLastTask.flow_task.toLowerCase()]);
             // Need to cross check below if condition if it fails in next click
             if (workflowLastTask.status === 'NEW') {
                 setCurrentStep(RedirectionMap[workflowLastTask.flow_task.toLowerCase()]);
-                setCurrentProcessStep(RedirectionMap[workflowLastTask.flow_task.toLowerCase()]);
+                setcurrentView(RedirectionMap[workflowLastTask.flow_task.toLowerCase()]);
             } //else {
             //     setCurrentStep(3);
             // }
@@ -122,7 +124,7 @@ export default (props) => {
                 await getDataProductDetails(taskList);
                 // setDisableNextButton(true);
                 setCurrentStep(9);
-                setCurrentProcessStep(9);
+                setcurrentView(9);
             }
             
             setLoader(false); 
@@ -191,45 +193,45 @@ export default (props) => {
                             </div>
                         </div>}
                         <TabView activeIndex={currentStep - 1} key={currentStep}>
-                            <TabPanel header="Waiting To Be Scheduled" disabled={currentStep < 1} headerClassName="workflow-header">
-                            <Scheduled onNext={onNext} onCancel={onCancel} readOnly={ currentProcessStep !== 1 }
+                            <TabPanel header="Waiting To Be Scheduled" disabled={currentView < 1} headerClassName="workflow-header">
+                            <Scheduled onNext={onNext} onCancel={onCancel} readOnly={ currentView !== 1 }
                                     schedulingUnit={schedulingUnit} /*disableNextButton={disableNextButton}*/ />
                             </TabPanel>
-                            <TabPanel header="Scheduled" disabled={currentStep < 2} headerClassName="workflow-header">
-                            <ProcessingDone onNext={onNext} onCancel={onCancel} readOnly={ currentProcessStep !== 2 }
+                            <TabPanel header="Scheduled" disabled={currentView < 2} headerClassName="workflow-header">
+                            <ProcessingDone onNext={onNext} onCancel={onCancel} readOnly={ currentView !== 2 }
                                     schedulingUnit={schedulingUnit}  />
                             </TabPanel>
-                            <TabPanel header="QA Reporting (TO)" disabled={currentStep < 3} headerClassName="workflow-header">
-                            <QAreporting onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentProcessStep !== 3 } 
+                            <TabPanel header="QA Reporting (TO)" disabled={currentView < 3} headerClassName="workflow-header">
+                            <QAreporting onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentView !== 3 } 
                                                 process={QASUProcess} getCurrentTaskDetails={getCurrentTaskDetails}
                                                 onError={showMessage} />
                             </TabPanel>
-                            <TabPanel header="QA Reporting (SDCO)" disabled={currentStep < 4} headerClassName="workflow-header">
-                            <QAsos onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentProcessStep !== 4 }
+                            <TabPanel header="QA Reporting (SDCO)" disabled={currentView < 4} headerClassName="workflow-header">
+                            <QAsos onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentView !== 4 }
                                                 process={QASUProcess} getCurrentTaskDetails={getCurrentTaskDetails} 
                                                 onError={showMessage} />
                             </TabPanel>
-                            <TabPanel header="PI Verification" disabled={currentStep < 5} headerClassName="workflow-header">
-                            <PIverification onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentProcessStep !== 5 } 
+                            <TabPanel header="PI Verification" disabled={currentView < 5} headerClassName="workflow-header">
+                            <PIverification onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentView !== 5 } 
                                                 process={QASUProcess} getCurrentTaskDetails={getCurrentTaskDetails} 
                                                 onError={showMessage} />
                             </TabPanel>
-                            <TabPanel header="Decide Acceptance" disabled={currentStep < 6} headerClassName="workflow-header">
-                            <DecideAcceptance onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentProcessStep !== 6 }
+                            <TabPanel header="Decide Acceptance" disabled={currentView < 6} headerClassName="workflow-header">
+                            <DecideAcceptance onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentView !== 6 }
                                                 process={QASUProcess} getCurrentTaskDetails={getCurrentTaskDetails} 
                                                 onError={showMessage} />
                             </TabPanel>
-                            <TabPanel header="Ingesting" disabled={currentStep < 7} headerClassName="workflow-header">
-                            <Ingesting onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentProcessStep !== 7 } 
+                            <TabPanel header="Ingesting" disabled={currentView < 7} headerClassName={`workflow-header ${!showIngestTab && 'hide-tab'}`}>
+                            <Ingesting onNext={onNext} onCancel={onCancel} id={QASUProcess.id} readOnly={ currentView !== 7 } 
                                                  onError={showMessage} task={getIngestTask()} />
                             </TabPanel>
-                            <TabPanel header="Unpin Data" disabled={currentStep < 8} headerClassName="workflow-header">
-                            <DataProduct onNext={onNext} onCancel={onCancel} id={QASUProcess.id} onError={showMessage} readOnly={ currentProcessStep !== 8 } 
+                            <TabPanel header="Unpin Data" disabled={currentView < 8} headerClassName="workflow-header">
+                                <DataProduct onNext={onNext} onCancel={onCancel} id={QASUProcess.id} onError={showMessage} readOnly={ currentView !== 8 }  
                                                 tasks={tasks} getCurrentTaskDetails={getCurrentTaskDetails}  onError={showMessage} 
                                                 schedulingUnit={schedulingUnit} />
                             </TabPanel>
-                            <TabPanel header="Done" disabled={currentStep < 9} headerClassName="workflow-header">
-                             <Done onNext={onNext} onCancel={onCancel} onError={showMessage} reportingPage={qaReporting} readOnly={ currentProcessStep !== 9 } />
+                            <TabPanel header="Done" disabled={currentView < 9} headerClassName="workflow-header">
+                             <Done onNext={onNext} onCancel={onCancel} onError={showMessage} reportingPage={qaReporting} readOnly={ currentView !== 9 } />
                             </TabPanel>
                         </TabView>
                     </div>
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/ingesting.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/ingesting.js
index d94fd3939031ab80948bec6308faf9113e818cb9..6a2225fa238e3e59be344822c0eae8743e59fc81 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/ingesting.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/ingesting.js
@@ -14,9 +14,8 @@ class Ingesting extends Component {
 
     render(){
         return(
-               <>
-                   
-                    <div className={`p-fluid-grid ${this.props.readOnly ? 'disableContainer' : ''}`}>
+               <>                   
+                    <div className={`p-fluid-grid`}>
                             <label htmlFor="ingestTaskStatus" className="col-lg-2 col-md-2 col-sm-12">Ingest Task Status</label>
                             <div className="col-lg-2 col-md-2 col-sm-12">
                              <span>{this.props.task.status}</span>
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/pi.verification.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/pi.verification.js
index 8f0ab3fbbed02060e69abaeed85975d6886e2e37..e462b9737f652b073ee3809075bc6b2651c0605b 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/pi.verification.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/pi.verification.js
@@ -71,7 +71,7 @@ class PIverification extends Component {
         promise.push(WorkflowService.updateQA_Perform(this.props.id,{"pi_report": this.state.comment, "pi_accept": this.state.pi_accept}));
         Promise.all(promise).then((responses) => {
             if (responses.indexOf(null)<0) {
-                this.props.onNext({ report:this.state.content, pireport: this.state.comment});
+                this.props.onNext({ report:this.state.content, pireport: this.state.comment, pi_accept: this.state.pi_accept});
             }   else {
                 this.props.onError();
             }
@@ -93,7 +93,7 @@ class PIverification extends Component {
         return (
             <>
              <div>
-                  <div className={`p-fluid-grid ${this.props.readOnly ? 'disableContainer' : ''}`}>
+                  <div className={`p-fluid-grid`}>
                         <div className="p-fluid-grid">
                             <label htmlFor="operatorReport" style={{ padding: '2px' }} >Operator Report</label>
                             <div className="col-lg-12 col-md-12 col-sm-12"></div>
@@ -114,6 +114,7 @@ class PIverification extends Component {
                             <div className="col-lg-12 col-md-12 col-sm-12"></div>
                             <SunEditor setDefaultStyle="min-height: 150px; height: auto;" enableToolbar={true}
                                 setContents={this.state.comment}
+                                disable={this.props.readOnly}
                                 onChange={this.onChangePIComment}
                                 setOptions={{
                                     buttonList: [
@@ -128,7 +129,7 @@ class PIverification extends Component {
                             <Checkbox disabled inputId="sos_accept_show_pi" checked={this.state.sos_accept_show_pi} onChange={e => this.setState({ sos_accept_show_pi: e.checked })} />
                             <label htmlFor="sdcoAccept" style={{paddingLeft:"5px"}}>The data quality adheres to policy (SDCO evaluation)</label>
                             <div className="col-lg-1 col-md-1 col-sm-12"></div>
-                            <Checkbox inputId="binary" checked={this.state.pi_accept} onChange={e => this.setState({ pi_accept: e.checked })} />
+                            <Checkbox disabled = {this.props.readOnly} inputId="binary" checked={this.state.pi_accept} onChange={e => this.setState({ pi_accept: e.checked })} />
                             <label htmlFor="piAccept" style={{paddingLeft:"5px"}} >As PI / contact author I accept this data</label>
                             {!this.props.readOnly && <div className="p-grid" style={{ marginTop: '20px' }}>
                                 <div className="p-col-1">
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.reporting.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.reporting.js
index cc92c73b6e6fb6f4644e275592053d77b5a7f927..d73fe01a16f7043620af88358f629822ef99adfa 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.reporting.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.reporting.js
@@ -67,11 +67,11 @@ class QAreporting extends Component{
         return (
         <>
            <div>
-            <div className={`p-fluid-grid ${this.props.readOnly ? 'disableContainer' : ''}`}>
+            <div className={`p-fluid-grid`}>
                 <div className="p-field p-grid" style={{ paddingLeft: '-10px' }}>
                     <label htmlFor="assignTo" className="col-lg-2 col-md-2 col-sm-12">Assign To</label>
                     <div className="col-lg-3 col-md-3 col-sm-12" data-testid="assignTo" >
-                    <Dropdown inputId="assignToValue" value={this.state.assignTo} optionLabel="value" optionValue="id" onChange={(e) => this.setState({assignTo: e.value})}
+                    <Dropdown disable={this.props.readOnly} inputId="assignToValue" value={this.state.assignTo} optionLabel="value" optionValue="id" onChange={(e) => this.setState({assignTo: e.value})}
                             options={[{ value: 'User 1', id: 1 }, { value: 'User 2', id: 2 }, { value: 'User 3', id: 3 }]}
                             placeholder="Assign To" />
                     </div>
@@ -91,7 +91,7 @@ class QAreporting extends Component{
                         }} />
                 </div>            
                 <div className="p-col-12">
-                    <Checkbox inputId="operator_accept" onChange={e => this.setState({operator_accept: e.checked})} checked={this.state.operator_accept}></Checkbox>
+                    <Checkbox disable={this.props.readOnly} inputId="operator_accept" onChange={e => this.setState({operator_accept: e.checked})} checked={this.state.operator_accept}></Checkbox>
                     <label htmlFor="operator_accept " style={{paddingLeft:"5px"}}>The data quality adheres to policy (Operator evaluation)</label>
                 </div>            
             </div>
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.sos.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.sos.js
index e4bed7fcd12c0511e87d188759fd29a9a5fc6da1..5c3ed2a4eb02d814de414a30136c25ebfa5612ac 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.sos.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/qa.sos.js
@@ -12,7 +12,8 @@ class QAreportingSDCO extends Component {
             content: '',
             showEditor: false,
             quality_within_policy: true,
-            sos_accept_show_pi: true
+            sos_accept_show_pi: true,
+            operator_accept: true
         };
         this.Next = this.Next.bind(this);
         this.handleChange = this.handleChange.bind(this);
@@ -25,7 +26,8 @@ class QAreportingSDCO extends Component {
         } else {
             const response = await WorkflowService.getQAReportingTo(this.props.process.qa_reporting_to);
             this.setState({
-                content: response.operator_report
+                content: response.operator_report,
+                operator_accept: response.operator_accept
             });
         }
     }
@@ -35,7 +37,7 @@ class QAreportingSDCO extends Component {
         this.setState({
             content: QASOSresponse.sos_report,
             quality_within_policy: QASOSresponse.operator_report,
-            sos_accept_show_pi: QASOSresponse.sos_accept_show_pi
+            sos_accept_show_pi: QASOSresponse.sos_accept_show_pi            
         });
     }
 
@@ -60,7 +62,7 @@ class QAreportingSDCO extends Component {
         if (currentWorkflowTask && !currentWorkflowTask.fields.owner) {
             promise.push(WorkflowService.updateAssignTo(currentWorkflowTask.pk, { owner: this.state.assignTo }));
         }
-        promise.push(WorkflowService.updateQA_Perform(this.props.id, {"sos_report": this.state.content, "sos_accept_show_pi": this.state.sos_accept_show_pi, "quality_within_policy": this.state.quality_within_policy}));
+        promise.push(WorkflowService.updateQA_Perform(this.props.id, {"sos_report": this.state.content, "sos_accept_show_pi": this.state.sos_accept_show_pi, "quality_within_policy": this.state.quality_within_policy, "operator_accept": this.state.operator_accept}));
         Promise.all(promise).then((responses) => {
             if (responses.indexOf(null)<0) {
                 this.props.onNext({ report: this.state.content });
@@ -79,13 +81,16 @@ class QAreportingSDCO extends Component {
         return (
             <>
                 <div>                    
-                    <div className={`p-fluid-grid ${this.props.readOnly ? 'disableContainer' : ''}`}>
-                        <Checkbox inputId="quality_within_policy" checked={this.state.quality_within_policy} onChange={e => this.setState({quality_within_policy: e.checked})} />
-                        <label htmlFor="qualityPolicy"  style={{paddingLeft:"5px"}}>The data quality adheres to policy (Operator evaluation)</label>
-                        <div className="col-lg-1 col-md-1 col-sm-12"></div>
-                        <Checkbox inputId="sos_accept_show_pi" checked={this.state.sos_accept_show_pi} onChange={e => this.setState({ sos_accept_show_pi: e.checked })} />
-                        <label htmlFor="sdcoAccept" style={{paddingLeft:"5px"}}>The data quality adheres to policy (SDCO evaluation)</label>                                            
-                        <div className="p-grid" style={{ padding: '10px' }}>
+                        <div className={`p-fluid-grid`}>
+                        <Checkbox inputId="operator_accept" checked={this.state.operator_accept} disable={this.props.readOnly} />
+                        <label htmlFor="operator_accept" style={{paddingLeft:"5px"}}>The data quality adheres to policy (Operator evaluation)</label>
+                        <div className="col-lg-1 col-md-1 col-sm-12"></div>   
+                        <Checkbox inputId="quality_within_policy" disabled={this.props.readOnly} checked={this.state.quality_within_policy} onChange={e => this.setState({quality_within_policy: e.checked})} />
+                        <label htmlFor="qualityPolicy"  style={{paddingLeft:"5px"}}>The data quality adheres to policy (Operator evaluation(dummy))</label>
+                        <div className="col-lg-1 col-md-1 col-sm-12"></div>      
+                        <Checkbox inputId="sos_accept_show_pi" disabled={this.props.readOnly} checked={this.state.sos_accept_show_pi} onChange={e => this.setState({ sos_accept_show_pi: e.checked })} />
+                        <label htmlFor="sdcoAccept" style={{paddingLeft:"5px"}}>The data quality adheres to policy (SDCO evaluation)</label>
+                         <div className="p-grid" style={{ padding: '10px' }}>
                             <label htmlFor="operatorReport">Operator Report {!this.state.showEditor && <span className="con-edit">(Click content to edit)</span>}<span style={{color:'red'}}>*</span></label>
                             <div className="col-lg-12 col-md-12 col-sm-12"></div>
                             {this.state.showEditor && <SunEditor setDefaultStyle="min-height: 250px; height: auto" enableToolbar={true}
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/unpin.data.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/unpin.data.js
index 2c661cad855287aceb5f892f85c4103b50008fbc..4a436c06fee0466a8f52de6f1242acff61015127 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/unpin.data.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/unpin.data.js
@@ -62,9 +62,9 @@ export default ({ tasks, schedulingUnit, onCancel, ...props }) => {
                 defaultpagesize={tasks.length}
              />
            <div className="p-grid p-justify-start mt-2">
-                <div className="p-col-1">
+           {!props.readOnly && <div className="p-col-1">
                     <Button label="Delete" className="p-button-primary" icon="pi pi-trash" onClick={toggleDialog} />
-                </div>
+                </div>}
                 <div className="p-col-1">
                     <Button label="Cancel" className="p-button-danger" icon="pi pi-times" style={{ width: '90px' }}
                             onClick={(e) => { onCancel()}} />